\HeaderA{gModel-class}{Class "gModel": A virtual class for models}{gModel.Rdash.class}
\aliasA{gModel}{gModel-class}{gModel}
\aliasA{linkData}{gModel-class}{linkData}
\aliasA{linkData,gModel-method}{gModel-class}{linkData,gModel.Rdash.method}
\aliasA{linkData<\Rdash}{gModel-class}{linkData<.Rdash.}
\aliasA{linkData<-,gModel-method}{gModel-class}{linkData<.Rdash.,gModel.Rdash.method}
\aliasA{modelData}{gModel-class}{modelData}
\aliasA{modelData,gModel-method}{gModel-class}{modelData,gModel.Rdash.method}
\aliasA{modelData<\Rdash}{gModel-class}{modelData<.Rdash.}
\aliasA{modelData<-,gModel-method}{gModel-class}{modelData<.Rdash.,gModel.Rdash.method}
\aliasA{modelName}{gModel-class}{modelName}
\aliasA{modelName,gModel-method}{gModel-class}{modelName,gModel.Rdash.method}
\aliasA{modelName<\Rdash}{gModel-class}{modelName<.Rdash.}
\aliasA{modelName<-,gModel-method}{gModel-class}{modelName<.Rdash.,gModel.Rdash.method}
\aliasA{modelVar}{gModel-class}{modelVar}
\aliasA{modelVar,gModel-method}{gModel-class}{modelVar,gModel.Rdash.method}
\aliasA{modelVar<\Rdash}{gModel-class}{modelVar<.Rdash.}
\aliasA{modelVar<-,gModel-method}{gModel-class}{modelVar<.Rdash.,gModel.Rdash.method}
\aliasA{provideInfo}{gModel-class}{provideInfo}
\aliasA{updateModel}{gModel-class}{updateModel}
\aliasA{virtualData}{gModel-class}{virtualData}
\aliasA{virtualData,gModel-method}{gModel-class}{virtualData,gModel.Rdash.method}
\aliasA{virtualData<\Rdash}{gModel-class}{virtualData<.Rdash.}
\aliasA{virtualData<-,gModel-method}{gModel-class}{virtualData<.Rdash.,gModel.Rdash.method}
\keyword{classes}{gModel-class}
\begin{Description}\relax
gModel is a virtual class from which all other model classes will inherit.
Model objects will be responsible for storing and updating the data sets.
\end{Description}
\begin{Section}{Objects from the Class}
A virtual Class: No objects may be created from it.
\end{Section}
\begin{Section}{Slots}
\describe{
\item[\code{modelData}:] the actual model data 
\item[\code{linkData}:] a list of the functions to link this data to its
parent and child models (if it has any) 
\item[\code{virtualData}:] data that pertains to the views of this model 
\item[\code{modelName}:] the name of the model (will be the same name as
the MVC) 
\item[\code{modelVar}:] a list of variables that refer to the modelData
(for instance this may be t-test values that were calculated from the
modelData) 
}
\end{Section}
\begin{Section}{Methods}
\describe{
\item[linkData<-] Sets the \code{linkData} slot 
\item[linkData] Returns the \code{linkData} slot 
\item[modelData<-] Sets the \code{modelData} slot 
\item[modelData] Returns the \code{modelData} slot 
\item[modelName<-] Sets the \code{modelName} slot 
\item[modelName] Returns the \code{modelName} slot 
\item[virtualData<-] Sets the \code{virtualData} slot 
\item[virtualData] Returns the \code{virtualData} slot 
\item[modelVar<-] Sets the \code{modelVar} slot 
\item[modelVar] Returns the \code{modelVar} slot 
}
Also, all models will have an updateModel method that will be defined in the
packages that use this package (for example, iSPlot and iSNetwork).  The
updateModel method will be called by a gUpdateDataMessage object when the data
needs to be updated.  Another method that may be defined for certain models is
the provideInfo method that will return model information when it is asked for
by a gAskAncestorMessage object.
\end{Section}
\begin{Author}\relax
Elizabeth Whalen
\end{Author}
\begin{SeeAlso}\relax
\code{\LinkA{dfModel-class}{dfModel.Rdash.class}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
\end{ExampleCode}
\end{Examples}

