Namespaces | |
namespace | detail |
Classes | |
struct | ArrayPromote |
Class to promote array types. More... | |
struct | assignable_tag |
Marker for assignable types. More... | |
struct | binary_expression |
Marker for biary expression ops. More... | |
class | BinaryMatrixOp |
A binary matrix expression. More... | |
class | BinaryQuaternionOp |
A binary quaternion expression. More... | |
class | BinaryVectorOp |
A binary vector expression. More... | |
class | ConjugateOp |
An expression node for conjugating a quaternion. More... | |
struct | expr_leaf_tag |
Marker for expression tree terminals (leaves). More... | |
struct | expr_node_tag |
Marker for expression tree operator nodes. More... | |
struct | ExprTraits |
The expression traits class. More... | |
struct | ExprTraits< BinaryMatrixOp< LeftT, RightT, OpT > > |
Expression traits for BinaryMatrixOp<>. More... | |
struct | ExprTraits< BinaryQuaternionOp< LeftT, RightT, OpT > > |
Expression traits class for BinaryQuaternionOp<>. More... | |
struct | ExprTraits< BinaryVectorOp< LeftT, RightT, OpT > > |
Expression traits class for BinaryVectorOp<>. More... | |
struct | ExprTraits< cml::matrix< E, AT, BO, L > > |
struct | ExprTraits< cml::quaternion< E, AT, OT, CT > > |
Expression traits for a quaternion<> type. More... | |
struct | ExprTraits< cml::vector< E, AT > > |
Expression traits for a vector<> type. More... | |
struct | ExprTraits< ConjugateOp< ExprT > > |
Expression traits class for ConjugateOp<>. More... | |
struct | ExprTraits< MatrixColOp< ExprT > > |
Expression traits class for MatrixColOp<>. More... | |
struct | ExprTraits< MatrixRowOp< ExprT > > |
Expression traits class for MatrixRowOp<>. More... | |
struct | ExprTraits< MatrixTransposeOp< ExprT > > |
Expression traits class for VectorTransposeOp<>. More... | |
struct | ExprTraits< MatrixXpr< ExprT > > |
Expression traits for MatrixXpr<>. More... | |
struct | ExprTraits< QuaternionInverseOp< ExprT > > |
Expression traits class for QuaternionInverseOp<>. More... | |
struct | ExprTraits< QuaternionXpr< ExprT > > |
Expression traits class for QuaternionXpr<>. More... | |
struct | ExprTraits< UnaryMatrixOp< ExprT, OpT > > |
Expression traits for UnaryMatrixOp<>. More... | |
struct | ExprTraits< UnaryQuaternionOp< ExprT, OpT > > |
Expression traits class for UnaryQuaternionOp<>. More... | |
struct | ExprTraits< UnaryVectorOp< ExprT, OpT > > |
Expression traits class for UnaryVectorOp<>. More... | |
struct | ExprTraits< VectorXpr< ExprT > > |
Expression traits class for VectorXpr<>. More... | |
struct | GetCheckedSize< LeftT, RightT, dynamic_size_tag > |
struct | GetCheckedSize< LeftT, RightT, fixed_size_tag > |
struct | matrix_result_tag |
Tag an expression as returning a matrix. More... | |
class | MatrixColOp |
struct | MatrixExpressions |
struct | MatrixPromote |
Promote two types to a matrixt type. More... | |
struct | MatrixPromote2 |
NOTE: MatrixPromote* are somewhat ad hoc, and were added to simplify the code for matrix slerp/squad/etc. More... | |
struct | MatrixPromote3 |
Type promotion for three matrix types. More... | |
struct | MatrixPromote4 |
Type promotion for four matrix types. More... | |
class | MatrixRowOp |
class | MatrixTransposeOp |
"Transpose" the given matrix expression. More... | |
class | MatrixXpr |
A placeholder for a matrix expression in the expression tree. More... | |
struct | MatVecPromote< cml::matrix< E1, AT1, BO, L >, cml::vector< E2, AT2 > > |
Type promotion for a matrix and a vector. More... | |
struct | MatVecPromote< cml::vector< E1, AT1 >, cml::matrix< E2, AT2, BO, L > > |
Type promotion for a vector and a matrix. More... | |
struct | not_assignable_tag |
Marker for assignable types. More... | |
struct | quaternion_result_tag |
Tag an expression as returning a quaternion. More... | |
struct | QuaternionExpressions |
class | QuaternionInverseOp |
An expression node for inverting a quaternion. More... | |
struct | QuaternionPromote2 |
NOTE: QuaternionPromote* are somewhat ad hoc, and were added to simplify the code for quaternion slerp/squad/etc. More... | |
struct | QuaternionPromote3 |
Type promotion for three quaternion types. More... | |
struct | QuaternionPromote4 |
Type promotion for four quaternion types. More... | |
struct | QuaternionPromote< cml::quaternion< E, AT, OT, CT >, S > |
Type promotion for a quaternion and a scalar. More... | |
struct | quaternion< E2, AT2, OT, CT >> |
Type promotion for two quaternion types. More... | |
struct | QuaternionPromote< S, cml::quaternion< E, AT, OT, CT > > |
Type promotion for a scalar and a quaternion. More... | |
class | QuaternionXpr |
A placeholder for a quaternion expression in an expression tree. More... | |
struct | scalar_result_tag |
Tag an expression as returning a scalar. More... | |
struct | ScalarPromote |
Defers to detail::promote_trait<>. More... | |
struct | unary_expression |
Marker for unary expression ops. More... | |
class | UnaryMatrixOp |
A unary matrix expression operating on matrix elements as a list. More... | |
class | UnaryQuaternionOp |
A unary quaternion expression. More... | |
class | UnaryVectorOp |
A unary vector expression. More... | |
struct | vector_result_tag |
Tag an expression as returning a vector. More... | |
struct | VectorExpressions |
struct | VectorPromote< cml::vector< E, AT >, S > |
Type promotion for a vector and a scalar. More... | |
struct | VectorPromote< cml::vector< E1, AT1 >, cml::vector< E2, AT2 > > |
Type promotion for two vector types. More... | |
struct | VectorPromote< S, cml::vector< E, AT > > |
Type promotion for a scalar and a vector. More... | |
class | VectorXpr |
A placeholder for a vector expression in an expression tree. More... | |
Functions | |
template<typename LeftT , typename RightT , typename SizeTag > | |
et::GetCheckedSize< LeftT, RightT, SizeTag >::size_type | CheckedSize (const LeftT &left, const RightT &right, SizeTag) |
Generator for GetCheckedSize. | |
template<typename MatT > | |
size_t | CheckedSquare (const MatT &m, dynamic_size_tag) |
Verify the sizes of the argument matrices for matrix multiplication. | |
template<typename MatT > | |
size_t | CheckedSquare (const MatT &, fixed_size_tag) |
Verify the sizes of the argument matrices for matrix multiplication. | |
template<class OpT , class SrcT , typename E , class AT > | |
void | UnrollAssignment (cml::vector< E, AT > &dest, const SrcT &src) |
Construct an assignment unroller. | |
template<class OpT , class SrcT , typename E , class AT , typename BO , typename L > | |
void | UnrollAssignment (cml::matrix< E, AT, BO, L > &dest, const SrcT &src) |
This constructs an assignment unroller for fixed-size arrays. |
et::GetCheckedSize<LeftT,RightT,SizeTag>::size_type cml::et::CheckedSize | ( | const LeftT & | left, | |
const RightT & | right, | |||
SizeTag | ||||
) | [inline] |
Generator for GetCheckedSize.
Definition at line 385 of file size_checking.h.
Referenced by cml::et::detail::VectorAssignmentUnroller< OpT, E, AT, SrcT >::CheckOrResize(), cml::et::detail::MatrixAssignmentUnroller< OpT, E, AT, BO, L, SrcT >::CheckOrResize(), cml::lu_solve(), cml::detail::matrix_total_order(), cml::detail::matrix_weak_order(), cml::detail::mul(), cml::et::detail::VectorAssignmentUnroller< OpT, E, AT, SrcT >::operator()(), cml::et::detail::MatrixAssignmentUnroller< OpT, E, AT, BO, L, SrcT >::operator()(), cml::et::BinaryVectorOp< LeftT, RightT, OpT >::size(), cml::et::BinaryQuaternionOp< LeftT, RightT, OpT >::size(), cml::et::BinaryMatrixOp< LeftT, RightT, OpT >::size(), cml::detail::UnrollDot(), cml::detail::vector_total_order(), and cml::detail::vector_weak_order().
size_t cml::et::CheckedSquare | ( | const MatT & | m, | |
dynamic_size_tag | ||||
) | [inline] |
Verify the sizes of the argument matrices for matrix multiplication.
Definition at line 408 of file size_checking.h.
size_t cml::et::CheckedSquare | ( | const MatT & | , | |
fixed_size_tag | ||||
) | [inline] |
Verify the sizes of the argument matrices for matrix multiplication.
Definition at line 395 of file size_checking.h.
References CML_STATIC_REQUIRE_M.
Referenced by cml::detail::determinant(), cml::detail::inverse(), cml::detail::lu_inplace(), and cml::lu_solve().
void cml::et::UnrollAssignment | ( | cml::vector< E, AT > & | dest, | |
const SrcT & | src | |||
) | [inline] |
Construct an assignment unroller.
The operator must be an assignment op, otherwise, this doesn't make any sense.
Definition at line 240 of file vector_unroller.h.
void cml::et::UnrollAssignment | ( | cml::matrix< E, AT, BO, L > & | dest, | |
const SrcT & | src | |||
) | [inline] |
This constructs an assignment unroller for fixed-size arrays.
The operator must be an assignment op (otherwise, this doesn't make any sense). Also, automatic unrolling is only performed for fixed-size matrices; a loop is used for dynamic-sized matrices.
cml::et::OpAssign
Definition at line 274 of file matrix_unroller.h.