AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType > Struct Template Reference

#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/latest/src/axom/slam/policies/IndirectionPolicies.hpp>

Public Types

using PosType = PositionType
 
using ElemType = ElementType
 
using IndirectionResult = ElementType &
 
using ConstIndirectionResult = ElementType &
 
using IndirectionBufferType = axom::ArrayView< ElementType >
 
using IndirectionPtrType = IndirectionBufferType
 
using IndirectionRefType = IndirectionBufferType
 
using IndirectionConstRefType = const IndirectionBufferType
 

Public Member Functions

AXOM_HOST_DEVICE ArrayViewIndirectionBase (IndirectionBufferType buf={})
 
 ArrayViewIndirectionBase (ArrayIndirection< PositionType, ElementType > ind)
 
 ArrayViewIndirectionBase (STLVectorIndirection< PositionType, ElementType > ind)
 
AXOM_HOST_DEVICE IndirectionBufferType data ()
 
AXOM_HOST_DEVICE const IndirectionBufferType data () const
 
AXOM_HOST_DEVICE IndirectionBufferTypeptr ()
 
AXOM_HOST_DEVICE const IndirectionBufferTypeptr () const
 
bool hasIndirection () const
 
PositionType size () const
 

Static Public Attributes

static constexpr bool DeviceAccessible = true
 
static constexpr bool IsMutableBuffer = false
 
static constexpr const char * Name = "SLAM::ArrayViewIndirection"
 

Member Typedef Documentation

◆ PosType

template<typename PositionType , typename ElementType >
using axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::PosType = PositionType

◆ ElemType

template<typename PositionType , typename ElementType >
using axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::ElemType = ElementType

◆ IndirectionResult

template<typename PositionType , typename ElementType >
using axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::IndirectionResult = ElementType&

◆ ConstIndirectionResult

template<typename PositionType , typename ElementType >
using axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::ConstIndirectionResult = ElementType&

◆ IndirectionBufferType

template<typename PositionType , typename ElementType >
using axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::IndirectionBufferType = axom::ArrayView<ElementType>

◆ IndirectionPtrType

template<typename PositionType , typename ElementType >
using axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::IndirectionPtrType = IndirectionBufferType

◆ IndirectionRefType

template<typename PositionType , typename ElementType >
using axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::IndirectionRefType = IndirectionBufferType

◆ IndirectionConstRefType

template<typename PositionType , typename ElementType >
using axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::IndirectionConstRefType = const IndirectionBufferType

Constructor & Destructor Documentation

◆ ArrayViewIndirectionBase() [1/3]

template<typename PositionType , typename ElementType >
AXOM_HOST_DEVICE axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::ArrayViewIndirectionBase ( IndirectionBufferType  buf = {})
inline

◆ ArrayViewIndirectionBase() [2/3]

template<typename PositionType , typename ElementType >
axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::ArrayViewIndirectionBase ( ArrayIndirection< PositionType, ElementType >  ind)
inline

◆ ArrayViewIndirectionBase() [3/3]

template<typename PositionType , typename ElementType >
axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::ArrayViewIndirectionBase ( STLVectorIndirection< PositionType, ElementType >  ind)
inline

Member Function Documentation

◆ data() [1/2]

template<typename PositionType , typename ElementType >
AXOM_HOST_DEVICE IndirectionBufferType axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::data ( )
inline

◆ data() [2/2]

template<typename PositionType , typename ElementType >
AXOM_HOST_DEVICE const IndirectionBufferType axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::data ( ) const
inline

◆ ptr() [1/2]

template<typename PositionType , typename ElementType >
AXOM_HOST_DEVICE IndirectionBufferType& axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::ptr ( )
inline

◆ ptr() [2/2]

template<typename PositionType , typename ElementType >
AXOM_HOST_DEVICE const IndirectionBufferType& axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::ptr ( ) const
inline

◆ hasIndirection()

template<typename PositionType , typename ElementType >
bool axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::hasIndirection ( ) const
inline

◆ size()

template<typename PositionType , typename ElementType >
PositionType axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::size ( ) const
inline

Member Data Documentation

◆ DeviceAccessible

template<typename PositionType , typename ElementType >
constexpr bool axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::DeviceAccessible = true
staticconstexpr

◆ IsMutableBuffer

template<typename PositionType , typename ElementType >
constexpr bool axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::IsMutableBuffer = false
staticconstexpr

◆ Name

template<typename PositionType , typename ElementType >
constexpr const char* axom::slam::policies::ArrayViewIndirectionBase< PositionType, ElementType >::Name = "SLAM::ArrayViewIndirection"
staticconstexpr

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