\name{"checkvars-methods"}
\docType{methods}
\alias{"checkvars-methods"} 
\alias{checkvars-methods}
\alias{checkvars}

\title{Checks the ranges, dimensions, and names of the metadata based on the
  current data of an FCS R-object. }
\description{
  Any discrepancy between the metadata
  and the data of the FCS object is considered as a failure to pass the
  check.  The following is a description of the checks:
  \describe{
  \item{1. Dimension check}{We always check the dimensions (ie, if the data
    dimensions match with size ("\$TOT") and
    nparam ("\$PAR") that are specified in the metadata).   
  }
  \item{2. Parameter Name check}{We check the names of the metadata with the
    names of the data column parameters.  Either only the longnames ("\$PnS")
    or the shortnames ("\$PnN") of the metadata are checked against the
    names of the data.  Please take note that
    both ("\$PnS") and ("\$PnN") ARE NOT BOTH checked. 
  }
  \item{3. Column Variable Range Check}{We check the paramranges
    ("\$PnR") specified in the metadata with the column parameter ranges of the
    data; if the paramranges
    do not exist in the metadata, then it is noted in the debugging
    statements.
  }
  }

  Please note that if the metadata@original is FALSE, then the metadata
  slotNames have a 
  "RFACSadd$>>\$" suffix and are located
  in metadata@fcsinfo in order to store the current data descriptives.
  The original data descriptives can be retrieved/checked
  when metadata@original is set to TRUE; otherwise the current metadata
  information about the data is retrieved/checked even when the "RFACSadd$>>\$"
  suffix is not noted in the character index.

  (ie) If metadata@original
  is FALSE, then metadata[["size"]] will return
  metadata[["RFACSadd\$>>\$\$TOT"]], the current row length of the data,
  while metadata@size will return the number of rows for the original
  data.

  Note that metadata@original is changed only when a parameter column is
  added to the data using \code{\link{addParameter-methods}}, when rows of the data are
  extracted using \code{\link{extractGatedData}} or if the user decides to
  change the value metadata@original.  Using \code{\link{"["-methods}} and
  \code{\link{"[<-"-methods}} on a "FCS" object
  will not change the value of metadata@original.
  
  
}
\section{Methods}{
\describe{

  \item{x = "FCS"}{boolean value is returned; TRUE if the check passes
    and FALSE if it does not pass the check.}

  
  \item{x = "FCS", MY.DEBUG=TRUE, range.max=NULL}{
    Other options in the signature include:

    (1) MY.DEBUG : boolean value; if TRUE, then the output statements
    are printed, otherwise if FALSE, then the statements are surpressed;
    default is TRUE.

    (2) range.max : numeric value describing the true maximum of the
    data that the checks on the ranges will be compared; default is NULL
    (ie, the maximum of each column variable in
    the data is the truth)}
}}
\keyword{methods}
\keyword{data}