template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
class Array< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols >
General-purpose arrays with easy API for coefficient-wise operations.
The Array class is very similar to the Matrix class. It provides general-purpose one- and two-dimensional arrays. The difference between the Array and the Matrix class is primarily in the API: the API for the Array class provides easy access to coefficient-wise operations, while the API for the Matrix class provides easy access to linear-algebra operations.
This class can be extended with the help of the plugin mechanism described on the page Customizing/Extending Eigen by defining the preprocessor symbol EIGEN_ARRAY_PLUGIN
.
- See also:
- Tutorial page 3 - The Array class and coefficient-wise operations, The class hierarchy
Definition at line 55 of file Array.h.
template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
Default constructor.
For fixed-size matrices, does nothing.
For dynamic-size matrices, creates an empty matrix of size 0. Does not allocate any array. Such a matrix is called a null matrix. This constructor is the unique way to create null matrices: resizing a matrix to 0 is not supported.
- See also:
- resize(Index,Index)
Definition at line 125 of file Array.h.
template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
Constructs a vector or row-vector with given dimension.
Note that this is only useful for dynamic-size vectors. For fixed-size vectors, it is redundant to pass the dimension here, so it makes more sense to use the default constructor Matrix() instead.
Definition at line 148 of file Array.h.
template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
template<typename T0 , typename T1 >
template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
template<typename OtherDerived >
Constructor copying the value of the expression other
Definition at line 200 of file Array.h.
template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
template<typename OtherDerived >
Copy constructor with in-place evaluation
Definition at line 215 of file Array.h.
template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
template<typename OtherDerived >
template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
template<typename OtherDerived >
Copies the value of the expression other into *this
with automatic resizing.
*this might be resized to match the dimensions of other. If *this was a null matrix (not already initialized), it will be initialized.
Note that copying a row-vector into a vector (and conversely) is allowed. The resizing, if any, is then done in the appropriate way so that row-vectors remain row-vectors and vectors remain vectors.
Definition at line 102 of file Array.h.
template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
EIGEN_STRONG_INLINE Array& Array< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols >::operator= |
( |
const Array< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > & |
other | ) |
[inline] |
This is a special case of the templated operator=. Its purpose is to prevent a default operator= from hiding the templated operator=.
Definition at line 110 of file Array.h.
template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
template<typename OtherDerived >
void Array< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols >::swap |
( |
ArrayBase< OtherDerived > const & |
other | ) |
[inline] |
Override MatrixBase::swap() since for dynamic-sized matrices of same type it is enough to swap the data pointers.
Definition at line 236 of file Array.h.