Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
Eigen::internal::vml_assign_traits< Dst, Src > Class Template Reference

#include <src/eigen/Eigen/src/Core/Assign_MKL.h>

Public Types

enum  { EnableVml = MightEnableVml && LargeEnough , Traversal = MightLinearize ? LinearTraversal : DefaultTraversal }
 

Private Types

enum  {
  DstHasDirectAccess = Dst::Flags & DirectAccessBit , SrcHasDirectAccess = Src::Flags & DirectAccessBit , StorageOrdersAgree = (int(Dst::IsRowMajor) == int(Src::IsRowMajor)) , InnerSize ,
  InnerMaxSize , MaxSizeAtCompileTime = Dst::SizeAtCompileTime , MightEnableVml = StorageOrdersAgree && DstHasDirectAccess && SrcHasDirectAccess && Src::InnerStrideAtCompileTime==1 && Dst::InnerStrideAtCompileTime==1 , MightLinearize = MightEnableVml && (int(Dst::Flags) & int(Src::Flags) & LinearAccessBit) ,
  VmlSize = MightLinearize ? MaxSizeAtCompileTime : InnerMaxSize
}
 

Detailed Description

template<typename Dst, typename Src>
class Eigen::internal::vml_assign_traits< Dst, Src >

Member Enumeration Documentation

◆ anonymous enum

template<typename Dst , typename Src >
anonymous enum
private
Enumerator
DstHasDirectAccess 
SrcHasDirectAccess 
StorageOrdersAgree 
InnerSize 
InnerMaxSize 
MaxSizeAtCompileTime 
MightEnableVml 
MightLinearize 
VmlSize 
45 {
48 StorageOrdersAgree = (int(Dst::IsRowMajor) == int(Src::IsRowMajor)),
49 InnerSize = int(Dst::IsVectorAtCompileTime) ? int(Dst::SizeAtCompileTime)
50 : int(Dst::Flags)&RowMajorBit ? int(Dst::ColsAtCompileTime)
51 : int(Dst::RowsAtCompileTime),
52 InnerMaxSize = int(Dst::IsVectorAtCompileTime) ? int(Dst::MaxSizeAtCompileTime)
53 : int(Dst::Flags)&RowMajorBit ? int(Dst::MaxColsAtCompileTime)
54 : int(Dst::MaxRowsAtCompileTime),
55 MaxSizeAtCompileTime = Dst::SizeAtCompileTime,
56
57 MightEnableVml = StorageOrdersAgree && DstHasDirectAccess && SrcHasDirectAccess && Src::InnerStrideAtCompileTime==1 && Dst::InnerStrideAtCompileTime==1,
58 MightLinearize = MightEnableVml && (int(Dst::Flags) & int(Src::Flags) & LinearAccessBit),
60 LargeEnough = VmlSize==Dynamic || VmlSize>=EIGEN_MKL_VML_THRESHOLD
61 };
@ SrcHasDirectAccess
Definition Assign_MKL.h:47
@ InnerSize
Definition Assign_MKL.h:49
@ StorageOrdersAgree
Definition Assign_MKL.h:48
@ MaxSizeAtCompileTime
Definition Assign_MKL.h:55
@ InnerMaxSize
Definition Assign_MKL.h:52
@ MightEnableVml
Definition Assign_MKL.h:57
@ DstHasDirectAccess
Definition Assign_MKL.h:46
@ MightLinearize
Definition Assign_MKL.h:58
@ VmlSize
Definition Assign_MKL.h:59
const unsigned int LinearAccessBit
Definition Constants.h:125
const unsigned int DirectAccessBit
Definition Constants.h:150
const unsigned int RowMajorBit
Definition Constants.h:61
#define Dst
Definition mesh.h:153
const int Dynamic
Definition Constants.h:21

◆ anonymous enum

template<typename Dst , typename Src >
anonymous enum
Enumerator
EnableVml 
Traversal 
63 {
64 EnableVml = MightEnableVml && LargeEnough,
66 };
@ EnableVml
Definition Assign_MKL.h:64
@ Traversal
Definition Assign_MKL.h:65
@ DefaultTraversal
Definition Constants.h:278
@ LinearTraversal
Definition Constants.h:280

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