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.
1.5.9