Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
Eigen::internal::const_blas_data_mapper< Scalar, Index, StorageOrder > Class Template Reference

#include <src/eigen/Eigen/src/Core/util/BlasUtil.h>

+ Inheritance diagram for Eigen::internal::const_blas_data_mapper< Scalar, Index, StorageOrder >:
+ Collaboration diagram for Eigen::internal::const_blas_data_mapper< Scalar, Index, StorageOrder >:

Public Types

typedef packet_traits< const Scalar >::type Packet
 
typedef packet_traits< const Scalar >::half HalfPacket
 
typedef BlasLinearMapper< const Scalar, Index, UnalignedLinearMapper
 
typedef BlasVectorMapper< const Scalar, IndexVectorMapper
 

Public Member Functions

EIGEN_ALWAYS_INLINE const_blas_data_mapper (const Scalar *data, Index stride)
 
EIGEN_ALWAYS_INLINE const_blas_data_mapper< Scalar, Index, StorageOrder > getSubMapper (Index i, Index j) const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE LinearMapper getLinearMapper (Index i, Index j) const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE VectorMapper getVectorMapper (Index i, Index j) const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE const Scalar & operator() (Index i, Index j) const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet loadPacket (Index i, Index j) const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE HalfPacket loadHalfPacket (Index i, Index j) const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void scatterPacket (Index i, Index j, const SubPacket &p) const
 
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE SubPacket gatherPacket (Index i, Index j) const
 
EIGEN_DEVICE_FUNC const Index stride () const
 
EIGEN_DEVICE_FUNC const const Scalar * data () const
 
EIGEN_DEVICE_FUNC Index firstAligned (Index size) const
 

Protected Attributes

const Scalar *EIGEN_RESTRICT m_data
 
const Index m_stride
 

Detailed Description

template<typename Scalar, typename Index, int StorageOrder>
class Eigen::internal::const_blas_data_mapper< Scalar, Index, StorageOrder >

Member Typedef Documentation

◆ HalfPacket

typedef packet_traits<const Scalar >::half Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::HalfPacket
inherited

◆ LinearMapper

typedef BlasLinearMapper<const Scalar , Index, Unaligned > Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::LinearMapper
inherited

◆ Packet

typedef packet_traits<const Scalar >::type Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::Packet
inherited

◆ VectorMapper

typedef BlasVectorMapper<const Scalar , Index> Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::VectorMapper
inherited

Constructor & Destructor Documentation

◆ const_blas_data_mapper()

template<typename Scalar , typename Index , int StorageOrder>
EIGEN_ALWAYS_INLINE Eigen::internal::const_blas_data_mapper< Scalar, Index, StorageOrder >::const_blas_data_mapper ( const Scalar *  data,
Index  stride 
)
inline
258: blas_data_mapper<const Scalar, Index, StorageOrder>(data, stride) {}
EIGEN_DEVICE_FUNC const Index stride() const
Definition BlasUtil.h:239
EIGEN_DEVICE_FUNC const const Scalar * data() const
Definition BlasUtil.h:240

Member Function Documentation

◆ data()

EIGEN_DEVICE_FUNC const const Scalar * Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::data ( ) const
inlineinherited
240{ return m_data; }
const Scalar *EIGEN_RESTRICT m_data
Definition BlasUtil.h:250

◆ firstAligned()

EIGEN_DEVICE_FUNC Index Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::firstAligned ( Index  size) const
inlineinherited
242 {
243 if (UIntPtr(m_data)%sizeof(Scalar)) {
244 return -1;
245 }
246 return internal::first_default_aligned(m_data, size);
247 }
std::size_t UIntPtr
Definition Meta.h:51

◆ gatherPacket()

EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE SubPacket Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::gatherPacket ( Index  i,
Index  j 
) const
inlineinherited
235 {
236 return pgather<Scalar, SubPacket>(&operator()(i, j), m_stride);
237 }

◆ getLinearMapper()

EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE LinearMapper Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::getLinearMapper ( Index  i,
Index  j 
) const
inlineinherited
207 {
208 return LinearMapper(&operator()(i, j));
209 }
BlasLinearMapper< const Scalar, Index, Unaligned > LinearMapper
Definition BlasUtil.h:197

◆ getSubMapper()

template<typename Scalar , typename Index , int StorageOrder>
EIGEN_ALWAYS_INLINE const_blas_data_mapper< Scalar, Index, StorageOrder > Eigen::internal::const_blas_data_mapper< Scalar, Index, StorageOrder >::getSubMapper ( Index  i,
Index  j 
) const
inline
260 {
261 return const_blas_data_mapper<Scalar, Index, StorageOrder>(&(this->operator()(i, j)), this->m_stride);
262 }

References Eigen::internal::blas_data_mapper< const Scalar, Index, StorageOrder >::m_stride.

◆ getVectorMapper()

EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE VectorMapper Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::getVectorMapper ( Index  i,
Index  j 
) const
inlineinherited
211 {
212 return VectorMapper(&operator()(i, j));
213 }
BlasVectorMapper< const Scalar, Index > VectorMapper
Definition BlasUtil.h:198

◆ loadHalfPacket()

EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE HalfPacket Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::loadHalfPacket ( Index  i,
Index  j 
) const
inlineinherited
225 {
226 return ploadt<HalfPacket, AlignmentType>(&operator()(i, j));
227 }

◆ loadPacket()

EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::loadPacket ( Index  i,
Index  j 
) const
inlineinherited
221 {
222 return ploadt<Packet, AlignmentType>(&operator()(i, j));
223 }

◆ operator()()

EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE const Scalar & Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::operator() ( Index  i,
Index  j 
) const
inlineinherited
217 {
218 return m_data[StorageOrder==RowMajor ? j + i*m_stride : i + j*m_stride];
219 }
@ RowMajor
Definition Constants.h:322

◆ scatterPacket()

EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::scatterPacket ( Index  i,
Index  j,
const SubPacket &  p 
) const
inlineinherited
230 {
231 pscatter<Scalar, SubPacket>(&operator()(i, j), p, m_stride);
232 }

◆ stride()

EIGEN_DEVICE_FUNC const Index Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::stride ( ) const
inlineinherited
239{ return m_stride; }

Member Data Documentation

◆ m_data

const Scalar * EIGEN_RESTRICT Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::m_data
protectedinherited

◆ m_stride

const Index Eigen::internal::blas_data_mapper< const Scalar , Index, StorageOrder, Unaligned >::m_stride
protectedinherited

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