Public Types | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device > Struct Template Reference

#include <TensorConvolution.h>

Public Types

enum  {
  IsAligned = TensorEvaluator<InputArgType, Device>::IsAligned & TensorEvaluator<KernelArgType, Device>::IsAligned, PacketAccess = TensorEvaluator<InputArgType, Device>::PacketAccess & TensorEvaluator<KernelArgType, Device>::PacketAccess, Layout = TensorEvaluator<InputArgType, Device>::Layout, CoordAccess = false,
  RawAccess = false
}
 
typedef XprType::CoeffReturnType CoeffReturnType
 
typedef DSizes< Index, NumDimsDimensions
 
typedef XprType::Index Index
 
typedef PacketType< CoeffReturnType, Device >::type PacketReturnType
 
typedef XprType::Scalar Scalar
 
typedef TensorConvolutionOp< Indices, InputArgType, KernelArgType > XprType
 

Public Member Functions

EIGEN_DEVICE_FUNC 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 Scalardata () const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Dimensionsdimensions () const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE bool evalSubExprsIfNeeded (Scalar *)
 
void evalTo (typename XprType::Scalar *buffer)
 
template<int LoadMode>
EIGEN_DEVICE_FUNC PacketReturnType packet (const Index index) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorEvaluator (const XprType &op, const Device &device)
 

Static Public Attributes

static const int NumDims = internal::array_size<typename TensorEvaluator<InputArgType, Device>::Dimensions>::value
 
static const int NumKernelDims = internal::array_size<Indices>::value
 
static const int PacketSize = internal::unpacket_traits<PacketReturnType>::size
 

Private Member Functions

EIGEN_DEVICE_FUNC void convolve (Index firstIndex, Index firstKernel, int DimIndex, CoeffReturnType &accum) const
 
template<typename Packet >
EIGEN_DEVICE_FUNC void convolvePacket (Index firstIndex, Index firstKernel, int DimIndex, Packet &accum) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index firstInput (Index index) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void preloadKernel ()
 

Private Attributes

const Device & m_device
 
Dimensions m_dimensions
 
array< Index, NumKernelDimsm_indexStride
 
TensorEvaluator< InputArgType, Device > m_inputImpl
 
array< Index, NumDimsm_inputStride
 
const Scalarm_kernel
 
KernelArgType m_kernelArg
 
TensorEvaluator< KernelArgType, Device > m_kernelImpl
 
array< Index, NumKernelDimsm_kernelStride
 
bool m_local_kernel
 
array< Index, NumDimsm_outputStride
 

Detailed Description

template<typename Indices, typename InputArgType, typename KernelArgType, typename Device>
struct Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >

Definition at line 291 of file TensorConvolution.h.

Member Typedef Documentation

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
typedef XprType::CoeffReturnType Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::CoeffReturnType

Definition at line 301 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
typedef DSizes<Index, NumDims> Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::Dimensions

Definition at line 298 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
typedef XprType::Index Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::Index

Definition at line 297 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
typedef PacketType<CoeffReturnType, Device>::type Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::PacketReturnType

Definition at line 302 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
typedef XprType::Scalar Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::Scalar

Definition at line 300 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
typedef TensorConvolutionOp<Indices, InputArgType, KernelArgType> Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::XprType

Definition at line 293 of file TensorConvolution.h.

Member Enumeration Documentation

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
anonymous enum
Enumerator
IsAligned 
PacketAccess 
Layout 
CoordAccess 
RawAccess 

Definition at line 305 of file TensorConvolution.h.

Constructor & Destructor Documentation

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::TensorEvaluator ( const XprType op,
const Device &  device 
)
inline

Definition at line 313 of file TensorConvolution.h.

Member Function Documentation

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::cleanup ( )
inline

Definition at line 382 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::coeff ( Index  index) const
inline

Definition at line 399 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC void Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::convolve ( Index  firstIndex,
Index  firstKernel,
int  DimIndex,
CoeffReturnType accum 
) const
inlineprivate

Definition at line 490 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
template<typename Packet >
EIGEN_DEVICE_FUNC void Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::convolvePacket ( Index  firstIndex,
Index  firstKernel,
int  DimIndex,
Packet &  accum 
) const
inlineprivate

Definition at line 503 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorOpCost Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::costPerCoeff ( bool  vectorized) const
inline

Definition at line 452 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC Scalar* Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::data ( ) const
inline

Definition at line 468 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Dimensions& Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::dimensions ( ) const
inline

Definition at line 375 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE bool Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::evalSubExprsIfNeeded ( Scalar )
inline

Definition at line 377 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
void Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::evalTo ( typename XprType::Scalar buffer)
inline

Definition at line 391 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::firstInput ( Index  index) const
inlineprivate

Definition at line 471 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
template<int LoadMode>
EIGEN_DEVICE_FUNC PacketReturnType Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::packet ( const Index  index) const
inline

Definition at line 407 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::preloadKernel ( )
inlineprivate

Definition at line 515 of file TensorConvolution.h.

Member Data Documentation

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
const Device& Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_device
private

Definition at line 547 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
Dimensions Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_dimensions
private

Definition at line 542 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
array<Index, NumKernelDims> Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_indexStride
private

Definition at line 538 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
TensorEvaluator<InputArgType, Device> Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_inputImpl
private

Definition at line 540 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
array<Index, NumDims> Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_inputStride
private

Definition at line 535 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
const Scalar* Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_kernel
private

Definition at line 545 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
KernelArgType Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_kernelArg
private

Definition at line 544 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
TensorEvaluator<KernelArgType, Device> Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_kernelImpl
private

Definition at line 541 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
array<Index, NumKernelDims> Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_kernelStride
private

Definition at line 539 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
bool Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_local_kernel
private

Definition at line 546 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
array<Index, NumDims> Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::m_outputStride
private

Definition at line 536 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
const int Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::NumDims = internal::array_size<typename TensorEvaluator<InputArgType, Device>::Dimensions>::value
static

Definition at line 295 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
const int Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::NumKernelDims = internal::array_size<Indices>::value
static

Definition at line 296 of file TensorConvolution.h.

template<typename Indices , typename InputArgType , typename KernelArgType , typename Device >
const int Eigen::TensorEvaluator< const TensorConvolutionOp< Indices, InputArgType, KernelArgType >, Device >::PacketSize = internal::unpacket_traits<PacketReturnType>::size
static

Definition at line 303 of file TensorConvolution.h.


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


hebiros
Author(s): Xavier Artache , Matthew Tesch
autogenerated on Thu Sep 3 2020 04:10:24