10 #ifndef EIGEN_INVERSE_H 11 #define EIGEN_INVERSE_H 15 template<
typename XprType,
typename StorageKind>
class InverseImpl;
19 template<
typename XprType>
21 :
traits<typename XprType::PlainObject>
42 template<
typename XprType>
54 explicit EIGEN_DEVICE_FUNC
Inverse(
const XprType &xpr)
58 EIGEN_DEVICE_FUNC
Index rows()
const {
return m_xpr.rows(); }
59 EIGEN_DEVICE_FUNC
Index cols()
const {
return m_xpr.cols(); }
61 EIGEN_DEVICE_FUNC
const XprTypeNestedCleaned&
nestedExpression()
const {
return m_xpr; }
68 template<
typename XprType,
typename StorageKind>
78 Scalar coeff(
Index i)
const;
93 template<
typename ArgType>
95 :
public evaluator<typename Inverse<ArgType>::PlainObject>
104 : m_result(inv_xpr.
rows(), inv_xpr.
cols())
106 ::new (static_cast<Base*>(
this)) Base(m_result);
118 #endif // EIGEN_INVERSE_H
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void call_assignment_no_alias(Dst &dst, const Src &src, const Func &func)
EIGEN_DEVICE_FUNC Index rows() const
XprType::StorageIndex StorageIndex
InverseType::PlainObject PlainObject
Namespace containing all symbols from the Eigen library.
const unsigned int RowMajorBit
EIGEN_DEVICE_FUNC Inverse(const XprType &xpr)
Inverse< ArgType > InverseType
evaluator< PlainObject > Base
Expression of the inverse of another expression.
internal::remove_all< XprTypeNested >::type XprTypeNestedCleaned
XprType::PlainObject PlainObject
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
EIGEN_DEVICE_FUNC Index cols() const
internal::remove_all< XprType >::type NestedExpression
internal::generic_xpr_base< Inverse< XprType > >::type Base
internal::ref_selector< XprType >::type XprTypeNested
traits< PlainObject > BaseTraits
internal::ref_selector< Inverse >::type Nested
XprType::PlainObject PlainObject
const unsigned int EvalBeforeNestingBit
unary_evaluator(const InverseType &inv_xpr)
EIGEN_DEVICE_FUNC const XprTypeNestedCleaned & nestedExpression() const