STK++ 0.9.13
STK::hidden::VisitorSelectorHelper< Visitor, Derived, Structure_ > Struct Template Reference

Helper for the Visitor selector: allow to select the correct implementation to instantiate for arrays and square arrays when only one dimension (rows or columns but not both). More...

#include <STK_VisitorSelector.h>

Public Types

enum  {
  orient_ = hidden::Traits<Derived>::orient_ , sizeRows_ = hidden::Traits<Derived>::sizeRows_ , sizeCols_ = hidden::Traits<Derived>::sizeCols_ , unrollRows_ = (sizeRows_ < MaxUnroll) ,
  unrollCols_ = (sizeCols_ < MaxUnroll)
}
 
typedef VisitorArrayImpl< Visitor, Derived, sizeRows_, UnknownSizeRowUnrollImpl
 
typedef VisitorArrayImpl< Visitor, Derived, UnknownSize, sizeCols_ColUnrollImpl
 
typedef VisitorArrayNoUnrollImpl< Visitor, Derived, orient_, UnknownSize, UnknownSizeNoUnrollImpl
 
typedef If< unrollCols_, ColUnrollImpl, typenameIf< unrollRows_, RowUnrollImpl, NoUnrollImpl >::Result >::Result Impl
 

Detailed Description

template<typename Visitor, typename Derived, int Structure_>
struct STK::hidden::VisitorSelectorHelper< Visitor, Derived, Structure_ >

Helper for the Visitor selector: allow to select the correct implementation to instantiate for arrays and square arrays when only one dimension (rows or columns but not both).

This selector will select the visitor method to use for 2D arrays (arrays_ and square_).

Definition at line 86 of file STK_VisitorSelector.h.

Member Typedef Documentation

◆ ColUnrollImpl

template<typename Visitor , typename Derived , int Structure_>
typedef VisitorArrayImpl<Visitor, Derived, UnknownSize, sizeCols_> STK::hidden::VisitorSelectorHelper< Visitor, Derived, Structure_ >::ColUnrollImpl

Definition at line 97 of file STK_VisitorSelector.h.

◆ Impl

◆ NoUnrollImpl

Definition at line 98 of file STK_VisitorSelector.h.

◆ RowUnrollImpl

template<typename Visitor , typename Derived , int Structure_>
typedef VisitorArrayImpl<Visitor, Derived, sizeRows_, UnknownSize> STK::hidden::VisitorSelectorHelper< Visitor, Derived, Structure_ >::RowUnrollImpl

Definition at line 96 of file STK_VisitorSelector.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename Visitor , typename Derived , int Structure_>
anonymous enum
Enumerator
orient_ 
sizeRows_ 
sizeCols_ 
unrollRows_ 
unrollCols_ 

Definition at line 88 of file STK_VisitorSelector.h.

89 {
90 orient_ = hidden::Traits<Derived>::orient_,
91 sizeRows_ = hidden::Traits<Derived>::sizeRows_,
92 sizeCols_ = hidden::Traits<Derived>::sizeCols_,
95 };
const int MaxUnroll
When don't unroll loops on fixed size containers if fixed size is greater than this value.

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