AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
axom::slam::Relation< PosType, ElemType > Class Template Referenceabstract

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

Inheritance diagram for axom::slam::Relation< PosType, ElemType >:

Public Types

using SetPosition = typename Set< PosType, ElemType >::PositionType
 
using SetElement = typename Set< PosType, ElemType >::ElementType
 
using RelationVec = std::vector< SetPosition >
 
using RelationVecIterator = typename RelationVec::iterator
 
using RelationVecIteratorPair = std::pair< RelationVecIterator, RelationVecIterator >
 
using RelationVecConstIterator = typename RelationVec::const_iterator
 
using RelationVecConstIteratorPair = std::pair< RelationVecConstIterator, RelationVecConstIterator >
 

Public Member Functions

virtual ~Relation ()
 
virtual RelationVecConstIterator begin (SetPosition fromSetIndex) const =0
 
virtual RelationVecConstIterator end (SetPosition fromSetIndex) const =0
 
virtual RelationVecConstIteratorPair range (SetPosition fromSetIndex) const =0
 
virtual SetPosition size (SetPosition fromSetIndex) const =0
 
virtual bool isValid (bool verboseOutput=false) const =0
 

Static Public Attributes

static NullSet< PosType, ElemType > s_nullSet
 Definition of static instance of nullSet for all relations. More...
 

Member Typedef Documentation

◆ SetPosition

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
using axom::slam::Relation< PosType, ElemType >::SetPosition = typename Set<PosType, ElemType>::PositionType

◆ SetElement

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
using axom::slam::Relation< PosType, ElemType >::SetElement = typename Set<PosType, ElemType>::ElementType

◆ RelationVec

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
using axom::slam::Relation< PosType, ElemType >::RelationVec = std::vector<SetPosition>

◆ RelationVecIterator

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
using axom::slam::Relation< PosType, ElemType >::RelationVecIterator = typename RelationVec::iterator

◆ RelationVecIteratorPair

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
using axom::slam::Relation< PosType, ElemType >::RelationVecIteratorPair = std::pair<RelationVecIterator, RelationVecIterator>

◆ RelationVecConstIterator

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
using axom::slam::Relation< PosType, ElemType >::RelationVecConstIterator = typename RelationVec::const_iterator

◆ RelationVecConstIteratorPair

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
using axom::slam::Relation< PosType, ElemType >::RelationVecConstIteratorPair = std::pair<RelationVecConstIterator, RelationVecConstIterator>

Constructor & Destructor Documentation

◆ ~Relation()

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
virtual axom::slam::Relation< PosType, ElemType >::~Relation ( )
inlinevirtual

Member Function Documentation

◆ begin()

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
virtual RelationVecConstIterator axom::slam::Relation< PosType, ElemType >::begin ( SetPosition  fromSetIndex) const
pure virtual

◆ end()

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
virtual RelationVecConstIterator axom::slam::Relation< PosType, ElemType >::end ( SetPosition  fromSetIndex) const
pure virtual

◆ range()

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
virtual RelationVecConstIteratorPair axom::slam::Relation< PosType, ElemType >::range ( SetPosition  fromSetIndex) const
pure virtual

◆ size()

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
virtual SetPosition axom::slam::Relation< PosType, ElemType >::size ( SetPosition  fromSetIndex) const
pure virtual

◆ isValid()

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
virtual bool axom::slam::Relation< PosType, ElemType >::isValid ( bool  verboseOutput = false) const
pure virtual

Member Data Documentation

◆ s_nullSet

template<typename PosType = slam::DefaultPositionType, typename ElemType = slam::DefaultElementType>
NullSet< PosType, ElemType > axom::slam::Relation< PosType, ElemType >::s_nullSet
static

Definition of static instance of nullSet for all relations.

Note
Should this be a singleton or a global object? Should the scope be public?

Referenced by axom::slam::DynamicVariableRelation< PosType, ElemType >::isValid().


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