Shapeworks Studio  2.1
Shape analysis software suite
List of all members | Public Types | Public Member Functions | Protected Member Functions
Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors > Class Template Reference

Base class providing read-only coefficient access to matrices and arrays. More...

#include <DenseCoeffsBase.h>

+ Inheritance diagram for Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >:
+ Collaboration diagram for Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >:

Public Types

typedef internal::traits< Derived >::StorageKind StorageKind
 
typedef internal::traits< Derived >::Index Index
 
typedef internal::traits< Derived >::Scalar Scalar
 
typedef internal::packet_traits< Scalar >::type PacketScalar
 
typedef internal::conditional< bool(internal::traits< Derived >::Flags &LvalueBit), const Scalar &, typename internal::conditional< internal::is_arithmetic< Scalar >::value, Scalar, const Scalar >::type >::type CoeffReturnType
 
typedef internal::add_const_on_value_type_if_arithmetic< typename internal::packet_traits< Scalar >::type >::type PacketReturnType
 
typedef EigenBase< Derived > Base
 
- Public Types inherited from Eigen::EigenBase< Derived >
typedef internal::traits< Derived >::StorageKind StorageKind
 
typedef internal::traits< Derived >::Index Index
 

Public Member Functions

EIGEN_STRONG_INLINE Index rowIndexByOuterInner (Index outer, Index inner) const
 
EIGEN_STRONG_INLINE Index colIndexByOuterInner (Index outer, Index inner) const
 
EIGEN_STRONG_INLINE CoeffReturnType coeff (Index row, Index col) const
 
EIGEN_STRONG_INLINE CoeffReturnType coeffByOuterInner (Index outer, Index inner) const
 
EIGEN_STRONG_INLINE CoeffReturnType operator() (Index row, Index col) const
 
EIGEN_STRONG_INLINE CoeffReturnType coeff (Index index) const
 
EIGEN_STRONG_INLINE CoeffReturnType operator[] (Index index) const
 
EIGEN_STRONG_INLINE CoeffReturnType operator() (Index index) const
 
EIGEN_STRONG_INLINE CoeffReturnType x () const
 
EIGEN_STRONG_INLINE CoeffReturnType y () const
 
EIGEN_STRONG_INLINE CoeffReturnType z () const
 
EIGEN_STRONG_INLINE CoeffReturnType w () const
 
template<int LoadMode>
EIGEN_STRONG_INLINE PacketReturnType packet (Index row, Index col) const
 
template<int LoadMode>
EIGEN_STRONG_INLINE PacketReturnType packetByOuterInner (Index outer, Index inner) const
 
template<int LoadMode>
EIGEN_STRONG_INLINE PacketReturnType packet (Index index) const
 
- Public Member Functions inherited from Eigen::EigenBase< Derived >
Derived & derived ()
 
const Derived & derived () const
 
Derived & const_cast_derived () const
 
const Derived & const_derived () const
 
Index rows () const
 
Index cols () const
 
Index size () const
 
template<typename Dest >
void evalTo (Dest &dst) const
 
template<typename Dest >
void addTo (Dest &dst) const
 
template<typename Dest >
void subTo (Dest &dst) const
 
template<typename Dest >
void applyThisOnTheRight (Dest &dst) const
 
template<typename Dest >
void applyThisOnTheLeft (Dest &dst) const
 

Protected Member Functions

void coeffRef ()
 
void coeffRefByOuterInner ()
 
void writePacket ()
 
void writePacketByOuterInner ()
 
void copyCoeff ()
 
void copyCoeffByOuterInner ()
 
void copyPacket ()
 
void copyPacketByOuterInner ()
 
void stride ()
 
void innerStride ()
 
void outerStride ()
 
void rowStride ()
 
void colStride ()
 

Detailed Description

template<typename Derived>
class Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >

Base class providing read-only coefficient access to matrices and arrays.

Template Parameters
DerivedType of the derived class
#ReadOnlyAccessorsConstant indicating read-only access

This class defines the operator() const function and friends, which can be used to read specific entries of a matrix or array.

See also
DenseCoeffsBase<Derived, WriteAccessors>, DenseCoeffsBase<Derived, DirectAccessors>, TopicClassHierarchy

Definition at line 34 of file DenseCoeffsBase.h.

Member Function Documentation

template<typename Derived >
EIGEN_STRONG_INLINE CoeffReturnType Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >::coeff ( Index  row,
Index  col 
) const
inline

Short version: don't use this function, use operator()(Index,Index) const instead.

Long version: this function is similar to operator()(Index,Index) const , but without the assertion. Use this for limiting the performance cost of debugging code when doing repeated coefficient access. Only use this when it is guaranteed that the parameters row and col are in range.

If EIGEN_INTERNAL_DEBUGGING is defined, an assertion will be made, making this function equivalent to operator()(Index,Index) const .

See also
operator()(Index,Index) const, coeffRef(Index,Index), coeff(Index) const

Definition at line 94 of file DenseCoeffsBase.h.

95  {
96  eigen_internal_assert(row >= 0 && row < rows()
97  && col >= 0 && col < cols());
98  return derived().coeff(row, col);
99  }
Index cols() const
Definition: EigenBase.h:46
Index rows() const
Definition: EigenBase.h:44
Derived & derived()
Definition: EigenBase.h:34
template<typename Derived >
EIGEN_STRONG_INLINE CoeffReturnType Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >::coeff ( Index  index) const
inline

Short version: don't use this function, use operator[](Index) const instead.

Long version: this function is similar to operator[](Index) const , but without the assertion. Use this for limiting the performance cost of debugging code when doing repeated coefficient access. Only use this when it is guaranteed that the parameter index is in range.

If EIGEN_INTERNAL_DEBUGGING is defined, an assertion will be made, making this function equivalent to operator[](Index) const .

See also
operator[](Index) const, coeffRef(Index), coeff(Index,Index) const

Definition at line 134 of file DenseCoeffsBase.h.

135  {
136  eigen_internal_assert(index >= 0 && index < size());
137  return derived().coeff(index);
138  }
Derived & derived()
Definition: EigenBase.h:34
Index size() const
Definition: EigenBase.h:49
template<typename Derived >
EIGEN_STRONG_INLINE CoeffReturnType Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >::operator() ( Index  row,
Index  col 
) const
inline
Returns
the coefficient at given the given row and column.
See also
operator()(Index,Index), operator[](Index)

Definition at line 111 of file DenseCoeffsBase.h.

112  {
113  eigen_assert(row >= 0 && row < rows()
114  && col >= 0 && col < cols());
115  return derived().coeff(row, col);
116  }
Index cols() const
Definition: EigenBase.h:46
Index rows() const
Definition: EigenBase.h:44
Derived & derived()
Definition: EigenBase.h:34
template<typename Derived >
EIGEN_STRONG_INLINE CoeffReturnType Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >::operator() ( Index  index) const
inline
Returns
the coefficient at given index.

This is synonymous to operator[](Index) const.

This method is allowed only for vector expressions, and for matrix expressions having the LinearAccessBit.

See also
operator[](Index), operator()(Index,Index) const, x() const, y() const, z() const, w() const

Definition at line 171 of file DenseCoeffsBase.h.

172  {
173  eigen_assert(index >= 0 && index < size());
174  return derived().coeff(index);
175  }
Derived & derived()
Definition: EigenBase.h:34
Index size() const
Definition: EigenBase.h:49
template<typename Derived >
EIGEN_STRONG_INLINE CoeffReturnType Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >::operator[] ( Index  index) const
inline
Returns
the coefficient at given index.

This method is allowed only for vector expressions, and for matrix expressions having the LinearAccessBit.

See also
operator[](Index), operator()(Index,Index) const, x() const, y() const, z() const, w() const

Definition at line 150 of file DenseCoeffsBase.h.

151  {
152  #ifndef EIGEN2_SUPPORT
153  EIGEN_STATIC_ASSERT(Derived::IsVectorAtCompileTime,
154  THE_BRACKET_OPERATOR_IS_ONLY_FOR_VECTORS__USE_THE_PARENTHESIS_OPERATOR_INSTEAD)
155  #endif
156  eigen_assert(index >= 0 && index < size());
157  return derived().coeff(index);
158  }
Derived & derived()
Definition: EigenBase.h:34
Index size() const
Definition: EigenBase.h:49
template<typename Derived >
EIGEN_STRONG_INLINE CoeffReturnType Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >::w ( ) const
inline

equivalent to operator[](3).

Definition at line 195 of file DenseCoeffsBase.h.

195 { return (*this)[3]; }
template<typename Derived >
EIGEN_STRONG_INLINE CoeffReturnType Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >::x ( ) const
inline

equivalent to operator[](0).

Definition at line 180 of file DenseCoeffsBase.h.

180 { return (*this)[0]; }
template<typename Derived >
EIGEN_STRONG_INLINE CoeffReturnType Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >::y ( ) const
inline

equivalent to operator[](1).

Definition at line 185 of file DenseCoeffsBase.h.

185 { return (*this)[1]; }
template<typename Derived >
EIGEN_STRONG_INLINE CoeffReturnType Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >::z ( ) const
inline

equivalent to operator[](2).

Definition at line 190 of file DenseCoeffsBase.h.

190 { return (*this)[2]; }

The documentation for this class was generated from the following file: