\HeaderA{LumiBatch-class}{Class LumiBatch: contain and describe Illumina microarray data}{LumiBatch.Rdash.class}
\aliasA{beadNum}{LumiBatch-class}{beadNum}
\aliasA{beadNum,ExpressionSet-method}{LumiBatch-class}{beadNum,ExpressionSet.Rdash.method}
\aliasA{beadNum<\Rdash}{LumiBatch-class}{beadNum<.Rdash.}
\aliasA{beadNum<-,ExpressionSet-method}{LumiBatch-class}{beadNum<.Rdash.,ExpressionSet.Rdash.method}
\aliasA{class:LumiBatch}{LumiBatch-class}{class:LumiBatch}
\aliasA{combine,ExpressionSet,LumiBatch-method}{LumiBatch-class}{combine,ExpressionSet,LumiBatch.Rdash.method}
\aliasA{combine,LumiBatch,ExpressionSet-method}{LumiBatch-class}{combine,LumiBatch,ExpressionSet.Rdash.method}
\aliasA{combine,LumiBatch,LumiBatch-method}{LumiBatch-class}{combine,LumiBatch,LumiBatch.Rdash.method}
\aliasA{detection}{LumiBatch-class}{detection}
\aliasA{detection,ExpressionSet-method}{LumiBatch-class}{detection,ExpressionSet.Rdash.method}
\aliasA{detection<\Rdash}{LumiBatch-class}{detection<.Rdash.}
\aliasA{detection<-,ExpressionSet-method}{LumiBatch-class}{detection<.Rdash.,ExpressionSet.Rdash.method}
\aliasA{getHistory}{LumiBatch-class}{getHistory}
\aliasA{getHistory,LumiBatch-method}{LumiBatch-class}{getHistory,LumiBatch.Rdash.method}
\aliasA{initialize,LumiBatch-method}{LumiBatch-class}{initialize,LumiBatch.Rdash.method}
\aliasA{LumiBatch}{LumiBatch-class}{LumiBatch}
\aliasA{sampleNames<-,LumiBatch,ANY-method}{LumiBatch-class}{sampleNames<.Rdash.,LumiBatch,ANY.Rdash.method}
\aliasA{se.exprs}{LumiBatch-class}{se.exprs}
\aliasA{se.exprs,ExpressionSet-method}{LumiBatch-class}{se.exprs,ExpressionSet.Rdash.method}
\aliasA{se.exprs<\Rdash}{LumiBatch-class}{se.exprs<.Rdash.}
\aliasA{se.exprs<-,ExpressionSet-method}{LumiBatch-class}{se.exprs<.Rdash.,ExpressionSet.Rdash.method}
\aliasA{show,LumiBatch-method}{LumiBatch-class}{show,LumiBatch.Rdash.method}
\aliasA{summary,LumiBatch-method}{LumiBatch-class}{summary,LumiBatch.Rdash.method}
\aliasA{[,LumiBatch-method}{LumiBatch-class}{[,LumiBatch.Rdash.method}
\keyword{classes}{LumiBatch-class}
\begin{Description}\relax
This is a class representation for Illumina microarray data. It extends \code{\LinkA{ExpressionSet}{ExpressionSet}}.
\end{Description}
\begin{Section}{Extends}
Directly extends class \code{\LinkA{ExpressionSet}{ExpressionSet}}.
\end{Section}
\begin{Section}{Creating Objects}
\code{new('LumiBatch',
    exprs = [matrix],
        se.exprs = [matrix],
        beadNum = [matrix],
        detection = [matrix],
    phenoData = [AnnotatedDataFrame],
    history = [data.frame],
    ...)
  }

\code{LumiBatch} instances are usually created through
\code{new("LumiBatch", ...)}. The arguments to \code{new}
should include \code{exprs} and \code{se.exprs}, others can be 
missing, in which case they are assigned default values.

Objects can be created using the function \code{\LinkA{lumiR}{lumiR}}.
\end{Section}
\begin{Section}{Slots}
Slot specific to \code{LumiBatch}:
\describe{
\item[\code{history}:] a data.frame recording the operation history of the LumiBatch object.
\item[\code{controlData}:] a data.frame with first two columns as "controlType" and "ProbeID". The rest columns are the control probe expression amplitudes for individual samples.
\item[\code{QC}:] a the quality control information of the LumiBatch object, returned by lumiQ function.
}

Slots inherited from \code{ExpressionSet}:
\describe{
\item[\code{assayData}] contains equal dimensional matrices:
\code{\bsl{}bf exprs} (contains gene expression level, which is the mean of its bead replicates.),
\code{\bsl{}bf se.exprs} (contains gene expression standard error, which is the standard error of its bead replicates.), 
\code{\bsl{}bf beadNum} (records the number of beads for the probe.),
\code{\bsl{}bf detection} (records the detection p-value of the probe. The number is from [0,1]. By default, \textless{} 0.01 indicates good detection.). 
For more details of \code{assayData}, please see \code{\LinkA{ExpressionSet}{ExpressionSet}}  
\item[\code{phenoData}:] See \code{\LinkA{eSet}{eSet}}
\item[\code{experimentData}:] See \code{\LinkA{eSet}{eSet}}
\item[\code{annotation}:] See \code{\LinkA{eSet}{eSet}}
}
\end{Section}
\begin{Section}{Methods}
\bold{Class-specific methods:}
\describe{
\item[\code{se.exprs(LumiBatch)}, \code{se.exprs(LumiBatch,matrix)<-}:] Access and
set elements named \code{se.exprs} in the \code{AssayData-class} slot.
\item[\code{beadNum(LumiBatch)}, \code{beadNum(LumiBatch)<-}:] Access and
set elements named \code{beadNum} in the \code{AssayData-class} slot. Use "beadNum(LumiBatch) \textless{}- NULL" to remove the beadNum element.
\item[\code{detection(LumiBatch)}, \code{detection(LumiBatch)<-}:] Access and
set elements named \code{detection} in the \code{AssayData-class} slot. Use "detection(LumiBatch) \textless{}- NULL" to remove the detection element.
\item[\code{getHistory(LumiBatch)}:] Access the operation history of \code{LumiBatch} object.
}

\bold{Derived from \code{\LinkA{ExpressionSet}{ExpressionSet}}} (For the directly inherited methods, 
please see \code{\LinkA{ExpressionSet}{ExpressionSet}} and \code{\LinkA{eSet}{eSet}}):
\describe{
\item[\code{combine(LumiBatch,missing)}:] Combine two LumiBatch objects, including \code{history} slot. See \code{\LinkA{eSet}{eSet}}
\item[\code{exprs(LumiBatch)}, \code{exprs(LumiBatch,matrix)<-}:] Access and
set elements named \code{exprs} in the \code{AssayData-class} slot.
\item[\code{object[(i,j)}:] Conduct subsetting of the data in a LumiBatch object 
}

\bold{Standard generic methods} (For the directly inherited methods, 
please see \code{\LinkA{ExpressionSet}{ExpressionSet}} and \code{\LinkA{eSet}{eSet}}):
\describe{
\item[\code{initialize(LumiBatch)}:] Object instantiation, used
by \code{new}; not to be called directly by the user.
\item[\code{validObject(LumiBatch)}:] Validity-checking method, ensuring that \code{exprs} and \code{se.exprs} 
is a member of \code{assayData}. Other validity check is the same as \code{checkValidity(ExpressionSet)}.
\item[\code{show(LumiBatch)}] A summary of the \code{LumiBatch} object.
}
\end{Section}
\begin{Author}\relax
Pan Du, Simon Lin
\end{Author}
\begin{SeeAlso}\relax
\code{\LinkA{lumiR}{lumiR}}, \code{\LinkA{lumiT}{lumiT}}, \code{\LinkA{lumiN}{lumiN}},
\code{\LinkA{boxplot-methods}{boxplot.Rdash.methods}}, \code{\LinkA{pairs-methods}{pairs.Rdash.methods}}, \code{\LinkA{MAplot-methods}{MAplot.Rdash.methods}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
## load example data
data(example.lumi)

## show the summary of the data
# summary(example.lumi)
example.lumi    

## get express matrix
temp <- exprs(example.lumi)

## get a subset
temp <- example.lumi[,1]        ## retrieve the first sample

## get the probe id
featureNames(example.lumi)[1:3]

## combine LumiBatch objects
temp <- combine(example.lumi[,1], example.lumi[,3])
temp

\end{ExampleCode}
\end{Examples}

