FreePOOMA
2.4.1
|
DomainMapNode is a node in a tree, where each Node has a list of domains and a left and right branch. More...
#include <DomainMap.h>
Public Types | |
typedef Dom | Domain_t |
typedef T | Data_t |
typedef std::pair< Domain_t, Data_t > | Value_t |
typedef std::list< Value_t > | List_t |
typedef DomainMapNode< Dom, T > | Node_t |
typedef List_t::iterator | iterator |
Public Member Functions | |
DomainMapNode (const Domain_t &d, Node_t *p=0) | |
~DomainMapNode () | |
const Domain_t & | domain () const |
iterator | begin () |
iterator | end () |
void | insert (const Value_t &v) |
Node_t * | nextRightNode () |
Node_t * | nextRightTouchNode (const Domain_t &d) |
Node_t * | findLeftNode () |
Node_t * | findLeftTouchNode (const Domain_t &d) |
DomainMapNode is a node in a tree, where each Node has a list of domains and a left and right branch.
This class is pooled since it will be created and deleted often. It contains methods for finding the left and right nodes in its leaves.
typedef Dom DomainMapNode< Dom, T >::Domain_t |
typedef T DomainMapNode< Dom, T >::Data_t |
typedef std::pair<Domain_t,Data_t> DomainMapNode< Dom, T >::Value_t |
typedef std::list<Value_t> DomainMapNode< Dom, T >::List_t |
typedef DomainMapNode<Dom,T> DomainMapNode< Dom, T >::Node_t |
typedef List_t::iterator DomainMapNode< Dom, T >::iterator |
DomainMapNode< Dom, T >::DomainMapNode | ( | const Domain_t & | d, |
Node_t * | p = 0 |
||
) | [inline] |
DomainMapNode< Dom, T >::~DomainMapNode | ( | ) | [inline] |
const Domain_t& DomainMapNode< Dom, T >::domain | ( | ) | const [inline] |
Referenced by DomainMap< Interval< 1 >, AxisIndex_t >::clear().
iterator DomainMapNode< Dom, T >::begin | ( | ) | [inline] |
Referenced by DomainMapNode< Dom, T >::findLeftNode(), DomainMapIterator< Domain_t, Data_t >::operator++(), DomainMapConstIterator< Dom, T >::operator++(), DomainMapTouchIterator< Dom, T >::operator++(), DomainMap< Interval< 1 >, AxisIndex_t >::touch(), and DomainMap< Interval< 1 >, AxisIndex_t >::update().
iterator DomainMapNode< Dom, T >::end | ( | ) | [inline] |
void DomainMapNode< Dom, T >::insert | ( | const Value_t & | v | ) | [inline] |
References contains(), DomainMapNode< Dom, T >::insert(), PAssert, and split().
Referenced by DomainMapNode< Dom, T >::insert(), and DomainMap< Interval< 1 >, AxisIndex_t >::insert().
Node_t* DomainMapNode< Dom, T >::nextRightNode | ( | ) | [inline] |
Node_t* DomainMapNode< Dom, T >::nextRightTouchNode | ( | const Domain_t & | d | ) | [inline] |
References touches().
Referenced by DomainMapTouchIterator< Dom, T >::operator++(), and DomainMap< Interval< 1 >, AxisIndex_t >::touch().
Node_t* DomainMapNode< Dom, T >::findLeftNode | ( | ) | [inline] |
Node_t* DomainMapNode< Dom, T >::findLeftTouchNode | ( | const Domain_t & | d | ) | [inline] |
References touches().
Referenced by DomainMap< Interval< 1 >, AxisIndex_t >::touch().