#include <EigenTransforms.hpp>
Inherits transform_impl< ExprT, StateT, DataT >.
|
typedef boost::proto::result_of::left< ExprT >::type | LeftExprT |
|
typedef boost::remove_reference< typename boost::result_of< GrammarT(LeftExprT, StateT, DataT)>::type >::type | LeftT |
|
typedef boost::proto::result_of::right< ExprT >::type | IdxExprT |
|
typedef boost::proto::matches< IdxExprT, boost::proto::terminal< IndexTag< boost::proto::_ > > > | IsLoopingIdxT |
|
typedef boost::mpl::if_< typename boost::is_const< LeftT >::type, Real, Real & >::type | ScalarTypeT |
|
typedef boost::mpl::if_c< is_vector, ScalarTypeT, typename LeftT::ConstRowXpr >::type | subscript_result_type |
|
typedef boost::mpl::and_< IsLoopingIdxT, boost::mpl::bool_< boost::remove_reference< DataT >::type::dimension==1 &&(LeftT::MaxRowsAtCompileTime > 1||LeftT::MaxColsAtCompileTime > 1)> >::type | IgnoreLoopingT |
|
typedef boost::mpl::if_< IgnoreLoopingT, typename boost::result_of< GrammarT(LeftExprT, StateT, DataT)>::type, subscript_result_type >::type | result_type |
|
|
template<typename MatrixT , typename IndexT > |
ScalarTypeT | do_eval (boost::mpl::true_, typename MatrixRef< MatrixT >::type matrix, const IndexT idx) const |
| Static dispatch through 2 versions of do_eval, in order to avoid compile errors. More...
|
|
template<typename MatrixT , typename IndexT > |
LeftT::ConstRowXpr | do_eval (boost::mpl::false_, typename MatrixRef< MatrixT >::type matrix, const IndexT idx) const |
|
template<typename MatrixT , typename IndexT > |
result_type | apply (boost::mpl::false_, typename MatrixRef< MatrixT >::type matrix, const IndexT idx) const |
|
template<typename MatrixT , typename IndexT > |
result_type | apply (boost::mpl::true_, typename MatrixRef< MatrixT >::type matrix, const IndexT idx) const |
|
result_type | operator() (typename impl::expr_param expr, typename impl::state_param state, typename impl::data_param data) const |
|
|
static const bool | is_vector = LeftT::IsVectorAtCompileTime |
|
template<typename GrammarT, typename IntegersT>
template<typename ExprT, typename StateT, typename DataT>
struct cf3::solver::actions::Proto::MatrixSubscript< GrammarT, IntegersT >::impl< ExprT, StateT, DataT >
Definition at line 341 of file EigenTransforms.hpp.
typedef boost::proto::result_of::right<ExprT>::type IdxExprT |
typedef boost::mpl::and_<IsLoopingIdxT, boost::mpl::bool_<boost::remove_reference<DataT>::type::dimension == 1 && (LeftT::MaxRowsAtCompileTime > 1 || LeftT::MaxColsAtCompileTime > 1)> >::type IgnoreLoopingT |
typedef boost::proto::result_of::left<ExprT>::type LeftExprT |
typedef boost::remove_reference<typename boost::result_of<GrammarT(LeftExprT, StateT, DataT)>::type>::type LeftT |
typedef boost::mpl::if_<typename boost::is_const<LeftT>::type, Real, Real&>::type ScalarTypeT |
result_type apply |
( |
boost::mpl::false_ |
, |
|
|
typename MatrixRef< MatrixT >::type |
matrix, |
|
|
const IndexT |
idx |
|
) |
| const |
|
inline |
result_type apply |
( |
boost::mpl::true_ |
, |
|
|
typename MatrixRef< MatrixT >::type |
matrix, |
|
|
const IndexT |
idx |
|
) |
| const |
|
inline |
ScalarTypeT do_eval |
( |
boost::mpl::true_ |
, |
|
|
typename MatrixRef< MatrixT >::type |
matrix, |
|
|
const IndexT |
idx |
|
) |
| const |
|
inline |
Static dispatch through 2 versions of do_eval, in order to avoid compile errors.
Definition at line 375 of file EigenTransforms.hpp.
LeftT::ConstRowXpr do_eval |
( |
boost::mpl::false_ |
, |
|
|
typename MatrixRef< MatrixT >::type |
matrix, |
|
|
const IndexT |
idx |
|
) |
| const |
|
inline |
result_type operator() |
( |
typename impl< ExprT, StateT, DataT >::expr_param |
expr, |
|
|
typename impl< ExprT, StateT, DataT >::state_param |
state, |
|
|
typename impl< ExprT, StateT, DataT >::data_param |
data |
|
) |
| const |
|
inline |
const bool is_vector = LeftT::IsVectorAtCompileTime |
|
static |
The documentation for this struct was generated from the following file: