Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device > Struct Template Reference

#include <TensorPadding.h>

Classes

struct  BlockIteratorState
 

Public Types

enum  {
  IsAligned = true, PacketAccess = TensorEvaluator<ArgType, Device>::PacketAccess, BlockAccess = TensorEvaluator<ArgType, Device>::RawAccess, PreferBlockAccess = true,
  Layout = TensorEvaluator<ArgType, Device>::Layout, CoordAccess = true, RawAccess = false
}
 
typedef XprType::CoeffReturnType CoeffReturnType
 
typedef DSizes< Index, NumDimsDimensions
 
typedef Storage::Type EvaluatorPointerType
 
typedef XprType::Index Index
 
typedef PacketType< CoeffReturnType, Device >::type PacketReturnType
 
typedef XprType::Scalar Scalar
 
typedef internal::remove_const< Scalar >::type ScalarNoConst
 
typedef StorageMemory< CoeffReturnType, Device > Storage
 
typedef internal::TensorMaterializedBlock< ScalarNoConst, NumDims, Layout, IndexTensorBlock
 
typedef internal::TensorBlockDescriptor< NumDims, IndexTensorBlockDesc
 
typedef internal::TensorBlockScratchAllocator< Device > TensorBlockScratch
 
typedef TensorPaddingOp< PaddingDimensions, ArgType > XprType
 

Public Member Functions

EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorBlock block (TensorBlockDesc &desc, TensorBlockScratch &scratch, bool=false) const
 
EIGEN_STRONG_INLINE void cleanup ()
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType coeff (Index index) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorOpCost costPerCoeff (bool vectorized) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EvaluatorPointerType data () const
 
EIGEN_DEVICE_FUNC const EIGEN_STRONG_INLINE Dimensionsdimensions () const
 
EIGEN_STRONG_INLINE bool evalSubExprsIfNeeded (EvaluatorPointerType)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE internal::TensorBlockResourceRequirements getResourceRequirements () const
 
template<int LoadMode>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType packet (Index index) const
 
EIGEN_STRONG_INLINE TensorEvaluator (const XprType &op, const Device &device)
 

Static Public Attributes

static const int NumDims = internal::array_size<PaddingDimensions>::value
 
static const int PacketSize = PacketType<CoeffReturnType, Device>::size
 

Protected Member Functions

EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType packetColMajor (Index index) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType packetRowMajor (Index index) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType packetWithPossibleZero (Index index) const
 

Protected Attributes

const Device EIGEN_DEVICE_REF m_device
 
Dimensions m_dimensions
 
TensorEvaluator< ArgType, Device > m_impl
 
array< Index, NumDimsm_inputStrides
 
array< Index, NumDims+1 > m_outputStrides
 
PaddingDimensions m_padding
 
Scalar m_paddingValue
 

Private Member Functions

EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE bool isLeftPaddingCompileTimeZero (int dim_index) const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE bool isPaddingAtIndexForDim (Index index, int dim_index) const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE bool isRightPaddingCompileTimeZero (int dim_index) const
 
void updateCostPerDimension (TensorOpCost &cost, int i, bool first) const
 

Detailed Description

template<typename PaddingDimensions, typename ArgType, typename Device>
struct Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >

Definition at line 85 of file TensorPadding.h.

Member Typedef Documentation

◆ CoeffReturnType

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef XprType::CoeffReturnType Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::CoeffReturnType

Definition at line 92 of file TensorPadding.h.

◆ Dimensions

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef DSizes<Index, NumDims> Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::Dimensions

Definition at line 90 of file TensorPadding.h.

◆ EvaluatorPointerType

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef Storage::Type Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::EvaluatorPointerType

Definition at line 96 of file TensorPadding.h.

◆ Index

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef XprType::Index Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::Index

Definition at line 88 of file TensorPadding.h.

◆ PacketReturnType

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef PacketType<CoeffReturnType, Device>::type Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::PacketReturnType

Definition at line 93 of file TensorPadding.h.

◆ Scalar

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef XprType::Scalar Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::Scalar

Definition at line 91 of file TensorPadding.h.

◆ ScalarNoConst

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef internal::remove_const<Scalar>::type Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::ScalarNoConst

Definition at line 108 of file TensorPadding.h.

◆ Storage

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef StorageMemory<CoeffReturnType, Device> Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::Storage

Definition at line 95 of file TensorPadding.h.

◆ TensorBlock

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef internal::TensorMaterializedBlock<ScalarNoConst, NumDims, Layout, Index> Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::TensorBlock

Definition at line 116 of file TensorPadding.h.

◆ TensorBlockDesc

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef internal::TensorBlockDescriptor<NumDims, Index> Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::TensorBlockDesc

Definition at line 111 of file TensorPadding.h.

◆ TensorBlockScratch

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef internal::TensorBlockScratchAllocator<Device> Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::TensorBlockScratch

Definition at line 112 of file TensorPadding.h.

◆ XprType

template<typename PaddingDimensions , typename ArgType , typename Device >
typedef TensorPaddingOp<PaddingDimensions, ArgType> Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::XprType

Definition at line 87 of file TensorPadding.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename PaddingDimensions , typename ArgType , typename Device >
anonymous enum
Enumerator
IsAligned 
PacketAccess 
BlockAccess 
PreferBlockAccess 
Layout 
CoordAccess 
RawAccess 

Definition at line 98 of file TensorPadding.h.

Constructor & Destructor Documentation

◆ TensorEvaluator()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_STRONG_INLINE Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::TensorEvaluator ( const XprType op,
const Device &  device 
)
inline

Definition at line 119 of file TensorPadding.h.

Member Function Documentation

◆ block()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorBlock Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::block ( TensorBlockDesc desc,
TensorBlockScratch scratch,
bool  = false 
) const
inline

Definition at line 239 of file TensorPadding.h.

◆ cleanup()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_STRONG_INLINE void Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::cleanup ( )
inline

Definition at line 167 of file TensorPadding.h.

◆ coeff()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::coeff ( Index  index) const
inline

Definition at line 171 of file TensorPadding.h.

◆ costPerCoeff()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorOpCost Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::costPerCoeff ( bool  vectorized) const
inline

Definition at line 216 of file TensorPadding.h.

◆ data()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EvaluatorPointerType Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::data ( ) const
inline

Definition at line 484 of file TensorPadding.h.

◆ dimensions()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC const EIGEN_STRONG_INLINE Dimensions& Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::dimensions ( ) const
inline

Definition at line 152 of file TensorPadding.h.

◆ evalSubExprsIfNeeded()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_STRONG_INLINE bool Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::evalSubExprsIfNeeded ( EvaluatorPointerType  )
inline

Definition at line 154 of file TensorPadding.h.

◆ getResourceRequirements()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE internal::TensorBlockResourceRequirements Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::getResourceRequirements ( ) const
inline

Definition at line 231 of file TensorPadding.h.

◆ isLeftPaddingCompileTimeZero()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE bool Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::isLeftPaddingCompileTimeZero ( int  dim_index) const
inlineprivate

Definition at line 524 of file TensorPadding.h.

◆ isPaddingAtIndexForDim()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE bool Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::isPaddingAtIndexForDim ( Index  index,
int  dim_index 
) const
inlineprivate

Definition at line 511 of file TensorPadding.h.

◆ isRightPaddingCompileTimeZero()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE bool Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::isRightPaddingCompileTimeZero ( int  dim_index) const
inlineprivate

Definition at line 534 of file TensorPadding.h.

◆ packet()

template<typename PaddingDimensions , typename ArgType , typename Device >
template<int LoadMode>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::packet ( Index  index) const
inline

Definition at line 208 of file TensorPadding.h.

◆ packetColMajor()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::packetColMajor ( Index  index) const
inlineprotected

Definition at line 565 of file TensorPadding.h.

◆ packetRowMajor()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::packetRowMajor ( Index  index) const
inlineprotected

Definition at line 623 of file TensorPadding.h.

◆ packetWithPossibleZero()

template<typename PaddingDimensions , typename ArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::packetWithPossibleZero ( Index  index) const
inlineprotected

Definition at line 681 of file TensorPadding.h.

◆ updateCostPerDimension()

template<typename PaddingDimensions , typename ArgType , typename Device >
void Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::updateCostPerDimension ( TensorOpCost cost,
int  i,
bool  first 
) const
inlineprivate

Definition at line 545 of file TensorPadding.h.

Member Data Documentation

◆ m_device

template<typename PaddingDimensions , typename ArgType , typename Device >
const Device EIGEN_DEVICE_REF Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::m_device
protected

Definition at line 700 of file TensorPadding.h.

◆ m_dimensions

template<typename PaddingDimensions , typename ArgType , typename Device >
Dimensions Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::m_dimensions
protected

Definition at line 692 of file TensorPadding.h.

◆ m_impl

template<typename PaddingDimensions , typename ArgType , typename Device >
TensorEvaluator<ArgType, Device> Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::m_impl
protected

Definition at line 695 of file TensorPadding.h.

◆ m_inputStrides

template<typename PaddingDimensions , typename ArgType , typename Device >
array<Index, NumDims> Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::m_inputStrides
protected

Definition at line 694 of file TensorPadding.h.

◆ m_outputStrides

template<typename PaddingDimensions , typename ArgType , typename Device >
array<Index, NumDims+1> Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::m_outputStrides
protected

Definition at line 693 of file TensorPadding.h.

◆ m_padding

template<typename PaddingDimensions , typename ArgType , typename Device >
PaddingDimensions Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::m_padding
protected

Definition at line 696 of file TensorPadding.h.

◆ m_paddingValue

template<typename PaddingDimensions , typename ArgType , typename Device >
Scalar Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::m_paddingValue
protected

Definition at line 698 of file TensorPadding.h.

◆ NumDims

template<typename PaddingDimensions , typename ArgType , typename Device >
const int Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::NumDims = internal::array_size<PaddingDimensions>::value
static

Definition at line 89 of file TensorPadding.h.

◆ PacketSize

template<typename PaddingDimensions , typename ArgType , typename Device >
const int Eigen::TensorEvaluator< const TensorPaddingOp< PaddingDimensions, ArgType >, Device >::PacketSize = PacketType<CoeffReturnType, Device>::size
static

Definition at line 94 of file TensorPadding.h.


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


gtsam
Author(s):
autogenerated on Wed May 15 2024 15:29:51