\name{indirectExternalMatrix-class}
\docType{class}
\alias{indirectExternalMatrix-class}
\alias{as.Rvector,indirectExternalMatrix-method}
\alias{Arith,ANY,indirectExternalMatrix-method}
\alias{Arith,indirectExternalVector,indirectExternalMatrix-method}
\alias{Arith,indirectExternalMatrix,ANY-method}
\alias{Arith,indirectExternalMatrix,indirectExternalMatrix-method}
\alias{Arith,indirectExternalMatrix,indirectExternalVector-method}
\alias{Compare,ANY,indirectExternalMatrix-method}
\alias{Compare,indirectExternalVector,indirectExternalMatrix-method}
\alias{Compare,indirectExternalMatrix,ANY-method}
\alias{Compare,indirectExternalMatrix,indirectExternalMatrix-method}
\alias{Compare,indirectExternalMatrix,indirectExternalVector-method}
\alias{Complex,indirectExternalMatrix-method}
\alias{Math,indirectExternalMatrix-method}
\alias{Ops,ANY,indirectExternalMatrix-method}
\alias{Ops,indirectExternalVector,indirectExternalMatrix-method}
\alias{Ops,indirectExternalMatrix,ANY-method}
\alias{Ops,indirectExternalMatrix,indirectExternalMatrix-method}
\alias{Ops,indirectExternalMatrix,indirectExternalVector-method}
\alias{Summary,indirectExternalMatrix-method}
\alias{Summary,indirectExternalMatrix,ANY-method}
\alias{[,indirectExternalMatrix,missing,missing,missing-method}
\alias{[,indirectExternalMatrix,missing,missing,logical-method}
\alias{[,indirectExternalMatrix,missing,ANY,missing-method}
\alias{[,indirectExternalMatrix,missing,ANY,logical-method}
\alias{[,indirectExternalMatrix,ANY,missing,missing-method}
\alias{[,indirectExternalMatrix,ANY,missing,logical-method}
\alias{[,indirectExternalMatrix,ANY,ANY,missing-method}
\alias{[,indirectExternalMatrix,ANY,ANY,ANY-method}
\alias{[<-,indirectExternalMatrix,missing,missing,ANY-method}
\alias{[<-,indirectExternalMatrix,ANY,ANY,ANY-method}
\alias{allNA,indirectExternalMatrix-method}
\alias{anyNA,indirectExternalMatrix-method}
\alias{as.matrix,indirectExternalMatrix-method}
\alias{as.vector,indirectExternalMatrix,missing-method}
\alias{as.vector,indirectExternalMatrix,ANY-method}
\alias{coerce,externalVector,indirectExternalMatrix-method}
\alias{coerce,vector,indirectExternalMatrix-method}
\alias{coerce,matrix,indirectExternalMatrix-method}
\alias{coerce,indirectExternalMatrix,vector-method}
\alias{coerce,indirectExternalMatrix,matrix-method}
\alias{dim,indirectExternalMatrix-method}
\alias{dim<-,indirectExternalMatrix,NULL-method}
\alias{dim<-,indirectExternalMatrix,ANY-method}
\alias{dimnames,indirectExternalMatrix-method}
\alias{dimnames<-,indirectExternalMatrix,ANY-method}
\alias{force,indirectExternalMatrix-method}
\alias{getExternalStorage,indirectExternalMatrix-method}
\alias{is.finite,indirectExternalMatrix-method}
\alias{is.infinite,indirectExternalMatrix-method}
\alias{is.na,indirectExternalMatrix-method}
\alias{is.nan,indirectExternalMatrix-method}
\alias{length,indirectExternalMatrix-method}
\alias{length<-,indirectExternalMatrix-method}
\alias{log,indirectExternalMatrix-method}
\alias{names,indirectExternalMatrix-method}
\alias{names<-,indirectExternalMatrix,ANY-method}

\title{Class "indirectExternalMatrix", class for indirect matrix subset of an
  externalVector object. }
\description{ Objects from this class store an object of class
  \code{"externalVector"}  and a matrix subscript for that object and
  behaves as if this is an object created by applying that subscript. }
\section{Objects from the Class}{
Objects can be created by calls of the form
\code{as("indirectExternalMatrix", vec)} where \code{vec} is an object
of class \code{"externalVector"}.
}
\section{Slots}{
  \describe{
    \item{\code{actual}:}{Object of class \code{"externalVector"}, the
      actual object of which this is a subset }
    \item{\code{index}:}{Object of class \code{"matrixIndex"}, the
      vector subscript to get the subset. }
  }
}
\section{Extends}{
Class \code{"externalVector"}, directly.
}
\section{Methods}{
  \describe{
    \item{e1 op e2}{ For any arithmetic or comparison operation \code{op}
      this returns the result of the operation. Either (or both) of
      \code{e1} and \code{e2} are of class
      \code{"indirectExternalMatrix"}. }
    \item{Complex(z)}{ Return the result of an operation in the
      \code{Complex} group generic. }
    \item{Math(x)}{ Return the result of an operation in the
      \code{Math} group generic. }
    \item{Summary(x)}{ Return the result of an operation in the
      \code{Summary} group generic. }
    \item{log(x)}{ Return natural logarithm of \code{x}. }
    \item{log(x, base)}{ Return logarithm of \code{x} with base
      \code{base}. }
    \item{x[i, j, \dots, drop=FALSE]}{ Extract a subset of \code{x}
      according to the given subscripts. }
    \item{x[i, j, \dots] <- value}{ Subassign of \code{x} by \code{value}
      according to the given subscripts. This assigns to the correct
      elements of \code{x@actual}. }
    \item{as.Rvector(x)}{ Coerce \code{x} to a basic R vector with same
      names, dimension and dimnames (if any of these are present in
      \code{x}). }
    \item{as.vector(x, mode)}{ Return an R basic vector with mode
      \code{mode}. }
    \item{as.matrix}{ Return a matrix of appropriate mode }.
    \item{length(x)}{ Return the length of \code{x}. }
    \item{length(x) <- value}{ Set the length of \code{x} to \code{value}. }
    \item{dim(x)}{ Return the dimension of \code{x}. }
    \item{dim(x) <- value}{ Set the dimension of \code{x} to \code{value}. }
    \item{dimnames(x)}{ Return the dimnames of \code{x}. }
    \item{dimnames(x) <- value}{ Set the dimnames of \code{x} to \code{value}. }
    \item{getExternalStorage(x)}{ Return the \code{storage} slot of
      associated with \code{x@actual}. }
    \item{is.finite(x)}{ Return a vector of logicals with same
      length as \code{x} indicating if an element of \code{x} is finite. }
    \item{is.infinite(x)}{ Return a vector of logicals with same
      length as \code{x} indicating if an element of \code{x} is infinite. }
    \item{is.na(x)}{ Return a vector of logicals with same
      length as \code{x} indicating if an element of \code{x} is \code{NA}. }
    \item{is.nan(x)}{ Return a vector of logicals with same
      length as \code{x} indicating if an element of \code{x} is \code{NaN}. }
    \item{force}{ return the result of \code{force(x@actual)[x@index]}. }
  }
}
\seealso{
  \code{\link{indirectExternalVector-class}} for the matrix class
  corresponding to this.
}
\keyword{classes}