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

A policy class for sets with array-based indirection. More...

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

Public Types

using IndirectionResult = ElementType &
 
using ConstIndirectionResult = const ElementType &
 
using IndirectionBufferType = ElementType
 

Public Member Functions

 ArrayIndirection (IndirectionBufferType *buf=nullptr)
 
IndirectionBufferType *& data ()
 
ConstIndirectionResult indirection (PositionType pos) const
 
IndirectionResult indirection (PositionType pos)
 
ConstIndirectionResult operator() (PositionType pos) const
 
IndirectionResult operator() (PositionType pos)
 
bool hasIndirection () const
 
bool isValid (PositionType size, PositionType offset, PositionType stride, bool verboseOutput=false) const
 

Detailed Description

template<typename PositionType, typename ElementType>
struct axom::slam::policies::ArrayIndirection< PositionType, ElementType >

A policy class for sets with array-based indirection.

Member Typedef Documentation

◆ IndirectionResult

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

◆ ConstIndirectionResult

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

◆ IndirectionBufferType

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

Constructor & Destructor Documentation

◆ ArrayIndirection()

template<typename PositionType , typename ElementType >
axom::slam::policies::ArrayIndirection< PositionType, ElementType >::ArrayIndirection ( IndirectionBufferType buf = nullptr)
inline

Member Function Documentation

◆ data()

template<typename PositionType , typename ElementType >
IndirectionBufferType*& axom::slam::policies::ArrayIndirection< PositionType, ElementType >::data ( )
inline

◆ indirection() [1/2]

template<typename PositionType , typename ElementType >
ConstIndirectionResult axom::slam::policies::ArrayIndirection< PositionType, ElementType >::indirection ( PositionType  pos) const
inline

◆ indirection() [2/2]

template<typename PositionType , typename ElementType >
IndirectionResult axom::slam::policies::ArrayIndirection< PositionType, ElementType >::indirection ( PositionType  pos)
inline

◆ operator()() [1/2]

template<typename PositionType , typename ElementType >
ConstIndirectionResult axom::slam::policies::ArrayIndirection< PositionType, ElementType >::operator() ( PositionType  pos) const
inline

◆ operator()() [2/2]

template<typename PositionType , typename ElementType >
IndirectionResult axom::slam::policies::ArrayIndirection< PositionType, ElementType >::operator() ( PositionType  pos)
inline

◆ hasIndirection()

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

◆ isValid()

template<typename PositionType , typename ElementType >
bool axom::slam::policies::ArrayIndirection< PosType, ElemType >::isValid ( PositionType  size,
PositionType  offset,
PositionType  stride,
bool  verboseOutput = false 
) const
inline

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