hpp-constraints: include/hpp/constraints/impl/matrix-view-operation.hh File Reference

hpp-constraints 9.0.2 Definition of basic geometric constraints for motion planning

Loading...
Searching...
No Matches
Namespaces | Macros | Typedefs | Functions | Variables
matrix-view-operation.hh File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Namespaces
namespace | Eigen
namespace | Eigen::internal

## Macros
#define | HPP_EIGEN_DECLARE_TEMPLATE_ARGS_MATRIX_BLOCK_VIEW typename _ArgType, int _Rows, int _Cols, bool _allRows, bool _allCols
#define | HPP_EIGEN_MATRIX_BLOCK_VIEW MatrixBlockView<_ArgType, _Rows, _Cols, _allRows, _allCols>
#define | HPP_EIGEN_SPECIALIZE_CwiseBinaryOpImpl(LHS_TPL, LHS_TYPE, RHS_TPL, RHS_TYPE)
#define | HPP_EIGEN_DEFINE_CwiseBinaryOpImpl_evalTo(LHS_TPL, LHS_TYPE, RHS_TPL, RHS_TYPE)
#define | HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR_IMPL( LHS_TPL, LHS_TYPE, RHS_TPL, RHS_TYPE, need_to_transpose, EVAL_TO_BODY)
#define | HPP_EIGEN_EVAL_TO_BODY_NORMAL other.evalTo(dst);
#define | HPP_EIGEN_EVAL_TO_BODY_TRANSPOSE
#define | HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR(LHS_TPL, LHS_TYPE, RHS_TPL, RHS_TYPE)
#define | HPP_EIGEN_LHS_TPL typename Lhs
#define | HPP_EIGEN_LHS_TYPE Lhs
#define | HPP_EIGEN_RHS_TPL HPP_EIGEN_DECLARE_TEMPLATE_ARGS_MATRIX_BLOCK_VIEW
#define | HPP_EIGEN_RHS_TYPE const HPP_EIGEN_MATRIX_BLOCK_VIEW
#define | HPP_EIGEN_LHS_TPL HPP_EIGEN_DECLARE_TEMPLATE_ARGS_MATRIX_BLOCK_VIEW
#define | HPP_EIGEN_LHS_TYPE const HPP_EIGEN_MATRIX_BLOCK_VIEW
#define | HPP_EIGEN_RHS_TPL typename Rhs
#define | HPP_EIGEN_RHS_TYPE Rhs
#define | HPP_EIGEN_LHS_TPL HPP_EIGEN_DECLARE_TEMPLATE_ARGS_MATRIX_BLOCK_VIEW
#define | HPP_EIGEN_LHS_TYPE const HPP_EIGEN_MATRIX_BLOCK_VIEW
#define | HPP_EIGEN_RHS_TPL typename _ArgType2, int _Rows2, int _Cols2, bool _allRows2, bool _allCols2
#define | HPP_EIGEN_RHS_TYPE const MatrixBlockView<_ArgType2, _Rows2, _Cols2, _allRows2, _allCols2>

## Typedefs
typedef const Rhs_t::template block_t< typenameRhs_t::ArgType >::type | Eigen::BlockRhs
typedef CwiseBinaryOp< BinaryOp, BlockLhs, BlockRhs > | Eigen::BlockCwiseBOp

## Functions
| Eigen::HPP_EIGEN_SPECIALIZE_CwiseBinaryOpImpl (HPP_EIGEN_LHS_TPL, HPP_EIGEN_LHS_TYPE, HPP_EIGEN_RHS_TPL, HPP_EIGEN_RHS_TYPE) HPP_EIGEN_DEFINE_CwiseBinaryOpImpl_evalTo(HPP_EIGEN_LHS_TPL
| Eigen::for (typename Rhs_t::block_iterator block(d.rhs());block.valid();++block)
| Eigen::for (typename Lhs_t::block_iterator block(d.lhs());block.valid();++block)
| Eigen::assert (d.lhs()._blocks()==d.rhs()._blocks())
Lhs_t::block_iterator | Eigen::lblock (d.lhs())
Rhs_t::block_iterator | Eigen::rblock (d.rhs())
| Eigen::while (lblock.valid())
| Eigen::assert (!lblock.valid() &&!rblock.valid())

## Variables
| Eigen::HPP_EIGEN_LHS_TYPE
| Eigen::HPP_EIGEN_RHS_TPL
| Eigen::HPP_EIGEN_RHS_TYPE
const Derived & | Eigen::d = derived()

## Macro Definition Documentation

## ◆ HPP_EIGEN_DECLARE_TEMPLATE_ARGS_MATRIX_BLOCK_VIEW

#define HPP_EIGEN_DECLARE_TEMPLATE_ARGS_MATRIX_BLOCK_VIEW typename _ArgType, int _Rows, int _Cols, bool _allRows, bool _allCols

Support for CwiseBinaryOp 3 possible cases:

- view op view
- matrix op view
- view op matrix

## ◆ HPP_EIGEN_DEFINE_CwiseBinaryOpImpl_evalTo

#define HPP_EIGEN_DEFINE_CwiseBinaryOpImpl_evalTo | ( |  | LHS_TPL,
|  |  | LHS_TYPE,
|  |  | RHS_TPL,
|  |  | RHS_TYPE )

Value:
template <typename BinaryOp, LHS_TPL, RHS_TPL> \
template <typename OtherDerived> \
void CwiseBinaryOpImpl<BinaryOp, LHS_TYPE, RHS_TYPE, Dense>::evalTo( \
MatrixBase<OtherDerived>& other) const

## ◆ HPP_EIGEN_EVAL_TO_BODY_NORMAL

#define HPP_EIGEN_EVAL_TO_BODY_NORMAL other.evalTo(dst);

## ◆ HPP_EIGEN_EVAL_TO_BODY_TRANSPOSE

#define HPP_EIGEN_EVAL_TO_BODY_TRANSPOSE

Value:
Transpose<ActualDerived> dstTrans(dst); \
other.evalTo(dstTrans);

## ◆ HPP_EIGEN_LHS_TPL [1/3]

#define HPP_EIGEN_LHS_TPL typename Lhs

## ◆ HPP_EIGEN_LHS_TPL [2/3]

#define HPP_EIGEN_LHS_TPL HPP_EIGEN_DECLARE_TEMPLATE_ARGS_MATRIX_BLOCK_VIEW

## ◆ HPP_EIGEN_LHS_TPL [3/3]

#define HPP_EIGEN_LHS_TPL HPP_EIGEN_DECLARE_TEMPLATE_ARGS_MATRIX_BLOCK_VIEW

## ◆ HPP_EIGEN_LHS_TYPE [1/3]

#define HPP_EIGEN_LHS_TYPE Lhs

## ◆ HPP_EIGEN_LHS_TYPE [2/3]

#define HPP_EIGEN_LHS_TYPE const HPP_EIGEN_MATRIX_BLOCK_VIEW

## ◆ HPP_EIGEN_LHS_TYPE [3/3]

#define HPP_EIGEN_LHS_TYPE const HPP_EIGEN_MATRIX_BLOCK_VIEW

## ◆ HPP_EIGEN_MATRIX_BLOCK_VIEW

#define HPP_EIGEN_MATRIX_BLOCK_VIEW MatrixBlockView<_ArgType, _Rows, _Cols, _allRows, _allCols>

## ◆ HPP_EIGEN_RHS_TPL [1/3]

#define HPP_EIGEN_RHS_TPL HPP_EIGEN_DECLARE_TEMPLATE_ARGS_MATRIX_BLOCK_VIEW

## ◆ HPP_EIGEN_RHS_TPL [2/3]

#define HPP_EIGEN_RHS_TPL typename Rhs

## ◆ HPP_EIGEN_RHS_TPL [3/3]

#define HPP_EIGEN_RHS_TPL typename _ArgType2, int _Rows2, int _Cols2, bool _allRows2, bool _allCols2

## ◆ HPP_EIGEN_RHS_TYPE [1/3]

#define HPP_EIGEN_RHS_TYPE const HPP_EIGEN_MATRIX_BLOCK_VIEW

## ◆ HPP_EIGEN_RHS_TYPE [2/3]

#define HPP_EIGEN_RHS_TYPE Rhs

## ◆ HPP_EIGEN_RHS_TYPE [3/3]

#define HPP_EIGEN_RHS_TYPE const MatrixBlockView<_ArgType2, _Rows2, _Cols2, _allRows2, _allCols2>

## ◆ HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR

#define HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR | ( |  | LHS_TPL,
|  |  | LHS_TYPE,
|  |  | RHS_TPL,
|  |  | RHS_TYPE )

Value:
HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR_IMPL( \
HPP_EIGEN_LHS_TPL, HPP_EIGEN_LHS_TYPE, HPP_EIGEN_RHS_TPL, \
HPP_EIGEN_RHS_TYPE, false, HPP_EIGEN_EVAL_TO_BODY_NORMAL) \
HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR_IMPL( \
HPP_EIGEN_LHS_TPL, HPP_EIGEN_LHS_TYPE, HPP_EIGEN_RHS_TPL, \
HPP_EIGEN_RHS_TYPE, true, HPP_EIGEN_EVAL_TO_BODY_TRANSPOSE)
HPP_EIGEN_EVAL_TO_BODY_TRANSPOSE
#define HPP_EIGEN_EVAL_TO_BODY_TRANSPOSE
Definition matrix-view-operation.hh:106
HPP_EIGEN_LHS_TYPE
#define HPP_EIGEN_LHS_TYPE
Definition matrix-view-operation.hh:123
HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR_IMPL
#define HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR_IMPL( LHS_TPL, LHS_TYPE, RHS_TPL, RHS_TYPE, need_to_transpose, EVAL_TO_BODY)
Definition matrix-view-operation.hh:86
HPP_EIGEN_RHS_TPL
#define HPP_EIGEN_RHS_TPL
Definition matrix-view-operation.hh:124
HPP_EIGEN_EVAL_TO_BODY_NORMAL
#define HPP_EIGEN_EVAL_TO_BODY_NORMAL
Definition matrix-view-operation.hh:105
HPP_EIGEN_LHS_TPL
#define HPP_EIGEN_LHS_TPL
Definition matrix-view-operation.hh:122
HPP_EIGEN_RHS_TYPE
#define HPP_EIGEN_RHS_TYPE
Definition matrix-view-operation.hh:125

## ◆ HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR_IMPL

#define HPP_EIGEN_SPECIALIZE_ASSIGN_SELECTOR_IMPL | ( |  | LHS_TPL,
|  |  | LHS_TYPE,
|  |  | RHS_TPL,
|  |  | RHS_TYPE,
|  |  | need_to_transpose,
|  |  | EVAL_TO_BODY )

Value:
template <typename Derived, typename BinaryOp, LHS_TPL, RHS_TPL> \
struct assign_selector<Derived, CwiseBinaryOp<BinaryOp, LHS_TYPE, RHS_TYPE>, \
false, need_to_transpose> { \
typedef CwiseBinaryOp<BinaryOp, LHS_TYPE, RHS_TYPE> CwiseDerived; \
static EIGEN_STRONG_INLINE Derived& run(Derived& dst, \
const CwiseDerived& o) { \
dst.resize(o.rows(), o.cols()); \
o.evalTo(dst); \
return dst; \
} \
template <typename ActualDerived, typename ActualOtherDerived> \
static EIGEN_STRONG_INLINE Derived& evalTo( \
ActualDerived& dst, const ActualOtherDerived& other) { \
EVAL_TO_BODY return dst; \
} \
};

## ◆ HPP_EIGEN_SPECIALIZE_CwiseBinaryOpImpl

#define HPP_EIGEN_SPECIALIZE_CwiseBinaryOpImpl | ( |  | LHS_TPL,
|  |  | LHS_TYPE,
|  |  | RHS_TPL,
|  |  | RHS_TYPE )

Value:
template <typename BinaryOp, LHS_TPL, RHS_TPL> \
class CwiseBinaryOpImpl<BinaryOp, LHS_TYPE, RHS_TYPE, Dense> \
: public internal::dense_xpr_base< \
CwiseBinaryOp<BinaryOp, LHS_TYPE, RHS_TYPE> >::type { \
typedef LHS_TYPE Lhs_t; \
typedef RHS_TYPE Rhs_t; \
typedef CwiseBinaryOp<BinaryOp, LHS_TYPE, RHS_TYPE> Derived; \
\
public: \
typedef typename internal::dense_xpr_base<Derived>::type Base; \
EIGEN_DENSE_PUBLIC_INTERFACE(Derived) \
\
template <typename OtherDerived> \
void evalTo(MatrixBase<OtherDerived>& other) const; \
};