Eigen::internal::visitor_evaluator< XprType > Class Template Reference

#include <Visitor.h>

Public Types

typedef evaluator< XprTypeEvaluator
 
typedef XprType::Scalar Scalar
 
using Packet = typename packet_traits< Scalar >::type
 
typedef std::remove_const_t< typename XprType::CoeffReturnType > CoeffReturnType
 

Public Member Functions

EIGEN_DEVICE_FUNC visitor_evaluator (const XprType &xpr)
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType coeff (Index row, Index col) const
 
template<typename Packet , int Alignment = Unaligned>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet packet (Index row, Index col) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType coeff (Index index) const
 
template<typename Packet , int Alignment = XprAlignment>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet packet (Index index) const
 

Static Public Attributes

static constexpr bool PacketAccess = static_cast<bool>(Evaluator::Flags & PacketAccessBit)
 
static constexpr bool LinearAccess = static_cast<bool>(Evaluator::Flags & LinearAccessBit)
 
static constexpr bool IsRowMajor = static_cast<bool>(XprType::IsRowMajor)
 
static constexpr int RowsAtCompileTime = XprType::RowsAtCompileTime
 
static constexpr int ColsAtCompileTime = XprType::ColsAtCompileTime
 
static constexpr int XprAlignment = Evaluator::Alignment
 
static constexpr int CoeffReadCost = Evaluator::CoeffReadCost
 

Protected Attributes

Evaluator m_evaluator
 
const XprTypem_xpr
 

Member Typedef Documentation

◆ CoeffReturnType

template<typename XprType >
typedef std::remove_const_t<typename XprType::CoeffReturnType> Eigen::internal::visitor_evaluator< XprType >::CoeffReturnType

◆ Evaluator

template<typename XprType >
typedef evaluator<XprType> Eigen::internal::visitor_evaluator< XprType >::Evaluator

◆ Packet

template<typename XprType >
using Eigen::internal::visitor_evaluator< XprType >::Packet = typename packet_traits<Scalar>::type

◆ Scalar

template<typename XprType >
typedef XprType::Scalar Eigen::internal::visitor_evaluator< XprType >::Scalar

Constructor & Destructor Documentation

◆ visitor_evaluator()

template<typename XprType >
EIGEN_DEVICE_FUNC Eigen::internal::visitor_evaluator< XprType >::visitor_evaluator ( const XprType xpr)
inlineexplicit
297 : m_evaluator(xpr), m_xpr(xpr) {}
const XprType & m_xpr
Definition: Visitor.h:319
Evaluator m_evaluator
Definition: Visitor.h:318

Member Function Documentation

◆ coeff() [1/2]

template<typename XprType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType Eigen::internal::visitor_evaluator< XprType >::coeff ( Index  index) const
inline

◆ coeff() [2/2]

template<typename XprType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType Eigen::internal::visitor_evaluator< XprType >::coeff ( Index  row,
Index  col 
) const
inline
303  {
304  return m_evaluator.coeff(row, col);
305  }
m col(1)
m row(1)

References col(), Eigen::internal::visitor_evaluator< XprType >::m_evaluator, and row().

◆ cols()

◆ packet() [1/2]

template<typename XprType >
template<typename Packet , int Alignment = XprAlignment>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet Eigen::internal::visitor_evaluator< XprType >::packet ( Index  index) const
inline
313  {
314  return m_evaluator.template packet<Alignment, Packet>(index);
315  }

References Eigen::internal::visitor_evaluator< XprType >::m_evaluator.

◆ packet() [2/2]

template<typename XprType >
template<typename Packet , int Alignment = Unaligned>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet Eigen::internal::visitor_evaluator< XprType >::packet ( Index  row,
Index  col 
) const
inline
307  {
308  return m_evaluator.template packet<Alignment, Packet>(row, col);
309  }

References col(), Eigen::internal::visitor_evaluator< XprType >::m_evaluator, and row().

◆ rows()

◆ size()

template<typename XprType >
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index Eigen::internal::visitor_evaluator< XprType >::size ( ) const
inline
301 { return m_xpr.size(); }

References Eigen::internal::visitor_evaluator< XprType >::m_xpr.

Member Data Documentation

◆ CoeffReadCost

template<typename XprType >
constexpr int Eigen::internal::visitor_evaluator< XprType >::CoeffReadCost = Evaluator::CoeffReadCost
staticconstexpr

◆ ColsAtCompileTime

template<typename XprType >
constexpr int Eigen::internal::visitor_evaluator< XprType >::ColsAtCompileTime = XprType::ColsAtCompileTime
staticconstexpr

◆ IsRowMajor

template<typename XprType >
constexpr bool Eigen::internal::visitor_evaluator< XprType >::IsRowMajor = static_cast<bool>(XprType::IsRowMajor)
staticconstexpr

◆ LinearAccess

template<typename XprType >
constexpr bool Eigen::internal::visitor_evaluator< XprType >::LinearAccess = static_cast<bool>(Evaluator::Flags & LinearAccessBit)
staticconstexpr

◆ m_evaluator

◆ m_xpr

◆ PacketAccess

template<typename XprType >
constexpr bool Eigen::internal::visitor_evaluator< XprType >::PacketAccess = static_cast<bool>(Evaluator::Flags & PacketAccessBit)
staticconstexpr

◆ RowsAtCompileTime

template<typename XprType >
constexpr int Eigen::internal::visitor_evaluator< XprType >::RowsAtCompileTime = XprType::RowsAtCompileTime
staticconstexpr

◆ XprAlignment

template<typename XprType >
constexpr int Eigen::internal::visitor_evaluator< XprType >::XprAlignment = Evaluator::Alignment
staticconstexpr

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