11 #ifndef EIGEN_FORWARDDECLARATIONS_H 12 #define EIGEN_FORWARDDECLARATIONS_H 47 template<
typename Derived>
struct EigenBase;
48 template<
typename Derived>
class DenseBase;
52 template<
typename _Scalar,
int _Rows,
int _Cols,
54 #if EIGEN_GNUC_AT(3,4) 73 template<
typename Derived>
class ArrayBase;
75 template<
typename ExpressionType,
unsigned int Added,
unsigned int Removed>
class Flagged;
76 template<
typename ExpressionType,
template <
typename>
class StorageBase >
class NoAlias;
77 template<
typename ExpressionType>
class NestByValue;
81 template<
typename XprType,
int BlockRows=Dynamic,
int BlockCols=Dynamic,
bool InnerPanel = false>
class Block;
82 template<
typename XprType,
typename RowIndices,
typename ColIndices>
class IndexedView;
83 template<
typename XprType,
int Rows=Dynamic,
int Cols=Dynamic,
int Order=0>
class Reshaped;
85 template<
typename MatrixType,
int Size=Dynamic>
class VectorBlock;
86 template<
typename MatrixType>
class Transpose;
88 template<
typename NullaryOp,
typename MatrixType>
class CwiseNullaryOp;
89 template<
typename UnaryOp,
typename MatrixType>
class CwiseUnaryOp;
90 template<
typename ViewOp,
typename MatrixType>
class CwiseUnaryView;
91 template<
typename BinaryOp,
typename Lhs,
typename Rhs>
class CwiseBinaryOp;
92 template<
typename TernaryOp,
typename Arg1,
typename Arg2,
typename Arg3>
class CwiseTernaryOp;
93 template<
typename Decomposition,
typename Rhstype>
class Solve;
94 template<
typename XprType>
class Inverse;
96 template<
typename Lhs,
typename Rhs,
int Option = DefaultProduct>
class Product;
100 template<
typename _Scalar,
int SizeAtCompileTime,
int MaxSizeAtCompileTime=SizeAtCompileTime>
class DiagonalMatrix;
101 template<
typename MatrixType,
typename DiagonalType,
int ProductOrder>
class DiagonalProduct;
102 template<
typename MatrixType,
int Index = 0>
class Diagonal;
103 template<
int SizeAtCompileTime,
int MaxSizeAtCompileTime = SizeAtCompileTime,
typename IndexType=
int>
class PermutationMatrix;
104 template<
int SizeAtCompileTime,
int MaxSizeAtCompileTime = SizeAtCompileTime,
typename IndexType=
int>
class Transpositions;
110 template<
typename Derived,
113 template<
int OuterStr
ideAtCompileTime,
int InnerStr
ideAtCompileTime>
class Stride;
116 template<
typename MatrixType,
int MapOptions=Unaligned,
typename Str
ideType = Str
ide<0,0> >
class Map;
117 template<
typename Derived>
class RefBase;
118 template<
typename PlainObjectType,
int Options = 0,
122 template<
typename MatrixType,
unsigned int Mode>
class TriangularView;
123 template<
typename MatrixType,
unsigned int Mode>
class SelfAdjointView;
125 template<
typename ExpressionType>
class WithFormat;
134 template<
typename XprType>
class generic_randaccess_stl_iterator;
135 template<
typename XprType>
class pointer_based_stl_iterator;
136 template<
typename XprType, DirectionType Direction>
class subvector_stl_iterator;
137 template<
typename XprType, DirectionType Direction>
class subvector_stl_reverse_iterator;
145 template<
typename _Scalar,
int Rows=Dynamic,
int Cols=Dynamic,
int Supers=Dynamic,
int Subs=Dynamic,
int Options=0>
class BandMatrix;
149 template<
typename Lhs,
typename Rhs>
struct product_type;
158 template<
typename T,
167 template<
typename Lhs,
typename Rhs,
178 template<
typename LhsScalar,
typename RhsScalar,
bool ConjLhs=false,
bool ConjRhs=false>
struct conj_helper;
180 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_sum_op;
181 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_difference_op;
182 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_conj_product_op;
183 template<
typename LhsScalar,
typename RhsScalar=LhsScalar,
int NaNPropagation=PropagateFast>
struct scalar_min_op;
184 template<
typename LhsScalar,
typename RhsScalar=LhsScalar,
int NaNPropagation=PropagateFast>
struct scalar_max_op;
185 template<
typename Scalar>
struct scalar_opposite_op;
186 template<
typename Scalar>
struct scalar_conjugate_op;
187 template<
typename Scalar>
struct scalar_real_op;
188 template<
typename Scalar>
struct scalar_imag_op;
189 template<
typename Scalar>
struct scalar_abs_op;
190 template<
typename Scalar>
struct scalar_abs2_op;
191 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_absolute_difference_op;
192 template<
typename Scalar>
struct scalar_sqrt_op;
193 template<
typename Scalar>
struct scalar_rsqrt_op;
194 template<
typename Scalar>
struct scalar_exp_op;
195 template<
typename Scalar>
struct scalar_log_op;
196 template<
typename Scalar>
struct scalar_cos_op;
197 template<
typename Scalar>
struct scalar_sin_op;
198 template<
typename Scalar>
struct scalar_acos_op;
199 template<
typename Scalar>
struct scalar_asin_op;
200 template<
typename Scalar>
struct scalar_tan_op;
201 template<
typename Scalar>
struct scalar_inverse_op;
202 template<
typename Scalar>
struct scalar_square_op;
203 template<
typename Scalar>
struct scalar_cube_op;
204 template<
typename Scalar,
typename NewType>
struct scalar_cast_op;
205 template<
typename Scalar>
struct scalar_random_op;
206 template<
typename Scalar>
struct scalar_constant_op;
207 template<
typename Scalar>
struct scalar_identity_op;
208 template<
typename Scalar,
bool is_complex,
bool is_
integer>
struct scalar_sign_op;
209 template<
typename Scalar,
typename ScalarExponent>
struct scalar_pow_op;
211 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_product_op;
245 template<
typename _Scalar,
int _Rows,
int _Cols,
247 #if EIGEN_GNUC_AT(3,4) 259 : EIGEN_DEFAULT_MATRIX_STORAGE_ORDER_OPTION ),
261 int _MaxRows = _Rows,
int _MaxCols = _Cols>
class Array;
262 template<
typename ConditionMatrixType,
typename ThenMatrixType,
typename ElseMatrixType>
class Select;
265 template<
typename MatrixType,
int RowFactor,
int ColFactor>
class Replicate;
266 template<
typename MatrixType,
int Direction = BothDirections>
class Reverse;
278 template<
typename MatrixType,
int QRPreconditioner = ColPivHouseholderQRPreconditioner>
class JacobiSVD;
279 template<
typename MatrixType>
class BDCSVD;
280 template<
typename MatrixType,
int UpLo = Lower>
class LLT;
281 template<
typename MatrixType,
int UpLo = Lower>
class LDLT;
287 template<
typename Lhs,
typename Rhs>
class Cross;
293 template<
typename Scalar,
int Options = AutoAlign>
class Quaternion;
294 template<
typename Scalar,
int Dim,
int Mode,
int _Options=AutoAlign>
class Transform;
295 template <
typename _Scalar,
int _AmbientDim,
int Options=AutoAlign>
class ParametrizedLine;
296 template <
typename _Scalar,
int _AmbientDim,
int Options=AutoAlign>
class Hyperplane;
312 template <
typename Scalar>
316 typedef ComplexScalar
type(ComplexScalar,
int);
322 #endif // EIGEN_FORWARDDECLARATIONS_H
Generic expression of a matrix where all coefficients are defined by a functor.
Robust Cholesky decomposition of a matrix with pivoting.
std::complex< typename NumTraits< Scalar >::Real > ComplexScalar
Enforce aligned packet loads and stores regardless of what is requested.
Expression of the product of two arbitrary matrices or vectors.
Expression of a mathematical vector or matrix as an array object.
Householder rank-revealing QR decomposition of a matrix with full pivoting.
Pseudo expression providing an operator = assuming no aliasing.
A matrix or vector expression mapping an existing array of data.
Proxy for the matrix square root of some matrix (expression).
Base class for triangular part in a matrix.
Expression of the transpose of a matrix.
const unsigned int DirectAccessBit
const unsigned int LvalueBit
Represents a rectangular matrix with a banded storage.
Represents a diagonal matrix with its storage.
LU decomposition of a matrix with partial pivoting, and related features.
Namespace containing all symbols from the Eigen library.
Holds strides information for Map.
Rotation given by a cosine-sine pair.
Generic expression of a partially reduxed matrix.
Holds information about the various numeric (i.e. scalar) types allowed by Eigen. ...
Pseudo expression providing broadcasting and partial reduction operations.
Complete orthogonal decomposition (COD) of a matrix.
Base class for all dense matrices, vectors, and arrays.
Proxy for the matrix function of some matrix (expression).
Proxy for the matrix power of some matrix (expression).
Base class for permutations.
Helper class used by the comma initializer operator.
Sequence of Householder reflections acting on subspaces with decreasing size.
Represents a translation transformation.
Expression of the inverse of another expression.
Generic lvalue expression of a coefficient-wise unary operator of a matrix or a vector.
Expression of an array as a mathematical vector or matrix.
Expression of a fixed-size or dynamic-size sub-vector.
Generic expression where a coefficient-wise binary operator is applied to two expressions.
Base class of any sparse matrices or sparse expressions.
Base class of SVD algorithms.
Householder rank-revealing QR decomposition of a matrix with column-pivoting.
Standard Cholesky decomposition (LL^T) of a matrix and associated features.
Convenience specialization of Stride to specify only an inner stride See class Map for some examples...
Eigen::Triplet< double > T
Generic expression where a coefficient-wise ternary operator is applied to two expressions.
Expression of the multiple replication of a matrix or vector.
Common base class for compact rotation representations.
Expression of a selfadjoint matrix from a triangular part of a dense matrix.
Expression of a dense or sparse matrix with zero or too small values removed.
Base class for all 1D and 2D array, and related expressions.
Class to view a vector of integers as a permutation matrix.
Base class for quaternion expressions.
Expression which must be nested by value.
class Bidiagonal Divide and Conquer SVD
A matrix or vector expression mapping an existing expression.
mp::number< mp::cpp_dec_float< 100 >, mp::et_on > Real
ComplexScalar type(ComplexScalar, int)
Represents a rotation/orientation in a 2 dimensional space.
Expression of a fixed-size or dynamic-size block.
The quaternion class used to represent 3D orientations and rotations.
LU decomposition of a matrix with complete pivoting, and related features.
storage_kind_to_shape< typename traits< T >::StorageKind >::Shape Shape
Householder QR decomposition of a matrix.
General-purpose arrays with easy API for coefficient-wise operations.
Two-sided Jacobi SVD decomposition of a rectangular matrix.
Expression of a triangular part in a matrix.
Expression of a diagonal matrix.
Expression of a non-sequential sub-matrix defined by arbitrary sequences of row and column indices...
Proxy for the matrix exponential of some matrix (expression).
Expression of a fixed-size or dynamic-size reshape.
Expression of a diagonal/subdiagonal/superdiagonal in a matrix.
Pseudo expression representing a solving operation.
Generic expression where a coefficient-wise unary operator is applied to an expression.
The matrix class, also used for vectors and row-vectors.
Convenience specialization of Stride to specify only an outer stride See class Map for some examples...
Expression of the reverse of a vector or matrix.
A base class for matrix decomposition and solvers.
Proxy for the matrix power of some matrix (expression).
Base class for all dense matrices, vectors, and expressions.
Represents a 3D rotation as a rotation angle around an arbitrary 3D axis.
Represents a sequence of transpositions (row/column interchange)
Proxy for the matrix logarithm of some matrix (expression).
#define EIGEN_DEFAULT_MATRIX_STORAGE_ORDER_OPTION
Expression of one (or a set of) homogeneous vector(s)
Expression of a coefficient wise version of the C++ ternary operator ?:
An InnerIterator allows to loop over the element of any matrix expression.