Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ > Struct Template Reference

#include <TensorContractionMapper.h>

Public Types

enum  { DirectOffsets = false }
 

Public Member Functions

EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE CoeffLoader (const Tensor &tensor)
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void offsetBuffer (typename Tensor::Index)
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE const MakePointer_< const typename Tensor::Scalar >::Type data () const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Tensor::Scalar coeff (typename Tensor::Index index) const
 
template<int LoadMode>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Tensor::PacketReturnType packet (typename Tensor::Index index) const
 

Private Attributes

const Tensor m_tensor
 

Detailed Description

template<typename Tensor, bool HasRawAccess, template< class > class MakePointer_>
struct Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ >

The make pointer class is used by sycl in order to build the mapper class on the device. For other platform the default make pointer is used which is scalar * for CoeffLoader.

Member Enumeration Documentation

◆ anonymous enum

template<typename Tensor , bool HasRawAccess, template< class > class MakePointer_>
anonymous enum
Enumerator
DirectOffsets 
37 { DirectOffsets = false };
@ DirectOffsets
Definition: TensorContractionMapper.h:37

Constructor & Destructor Documentation

◆ CoeffLoader()

template<typename Tensor , bool HasRawAccess, template< class > class MakePointer_>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ >::CoeffLoader ( const Tensor tensor)
inline
39 : m_tensor(tensor) {}
const Tensor m_tensor
Definition: TensorContractionMapper.h:60

Member Function Documentation

◆ coeff()

template<typename Tensor , bool HasRawAccess, template< class > class MakePointer_>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Tensor::Scalar Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ >::coeff ( typename Tensor::Index  index) const
inline
50  {
51  return m_tensor.coeff(index);
52  }
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Scalar & coeff(Index firstIndex, Index secondIndex, IndexTypes... otherIndices) const
Definition: Tensor.h:112

References Eigen::Tensor< Scalar_, NumIndices_, Options_, IndexType_ >::coeff(), and Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ >::m_tensor.

◆ data()

template<typename Tensor , bool HasRawAccess, template< class > class MakePointer_>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE const MakePointer_<const typename Tensor::Scalar>::Type Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ >::data ( ) const
inline

◆ offsetBuffer()

template<typename Tensor , bool HasRawAccess, template< class > class MakePointer_>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ >::offsetBuffer ( typename Tensor::Index  )
inline
41  {
42  eigen_assert(false && "unsupported");
43  }

References eigen_assert.

◆ packet()

template<typename Tensor , bool HasRawAccess, template< class > class MakePointer_>
template<int LoadMode>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Tensor::PacketReturnType Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ >::packet ( typename Tensor::Index  index) const
inline
55  {
56  return m_tensor.template packet<LoadMode>(index);
57  }

References Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ >::m_tensor.

Member Data Documentation

◆ m_tensor

template<typename Tensor , bool HasRawAccess, template< class > class MakePointer_>
const Tensor Eigen::internal::CoeffLoader< Tensor, HasRawAccess, MakePointer_ >::m_tensor
private

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