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

A policy class for sets with axom::ArrayView-based indirection. More...

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

Public Types

using IndirectionResult = ElementType &
 
using ConstIndirectionResult = const ElementType &
 
using VectorType = axom::ArrayView< ElementType >
 
using IndirectionBufferType = VectorType
 
using IndirectionPtrType = IndirectionBufferType
 

Public Member Functions

 ArrayViewIndirection (IndirectionBufferType buf={})
 
IndirectionBufferTypedata ()
 
const IndirectionBufferTypedata () const
 
ConstIndirectionResult indirection (PositionType pos) const
 
IndirectionResult indirection (PositionType pos)
 
IndirectionResult operator() (PositionType pos)
 
ConstIndirectionResult operator() (PositionType pos) const
 
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::ArrayViewIndirection< PositionType, ElementType >

A policy class for sets with axom::ArrayView-based indirection.

Member Typedef Documentation

◆ IndirectionResult

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

◆ ConstIndirectionResult

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

◆ VectorType

template<typename PositionType , typename ElementType >
using axom::slam::policies::ArrayViewIndirection< PositionType, ElementType >::VectorType = axom::ArrayView<ElementType>

◆ IndirectionBufferType

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

◆ IndirectionPtrType

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

Constructor & Destructor Documentation

◆ ArrayViewIndirection()

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

Member Function Documentation

◆ data() [1/2]

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

◆ data() [2/2]

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

◆ indirection() [1/2]

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

◆ indirection() [2/2]

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

◆ operator()() [1/2]

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

◆ operator()() [2/2]

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

◆ hasIndirection()

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

◆ isValid()

template<typename PositionType , typename ElementType >
bool axom::slam::policies::ArrayViewIndirection< 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: