SUMO - Simulation of Urban MObility
RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator Class Reference

Iterator is not remove safe. More...

#include <RTree.h>

Collaboration diagram for RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator:
Collaboration graph

Data Structures

struct  StackElement
 

Public Member Functions

bool IsNotNull ()
 Is iterator pointing to valid data. More...
 
bool IsNull ()
 Is iterator invalid. More...
 
 Iterator ()
 
DATATYPE & operator* ()
 Access the current data element. Caller must be sure iterator is not NULL first. More...
 
const DATATYPE & operator* () const
 Access the current data element. Caller must be sure iterator is not NULL first. More...
 
bool operator++ ()
 Find the next data element. More...
 
 ~Iterator ()
 

Private Types

enum  { MAX_STACK = 32 }
 

Private Member Functions

bool FindNextData ()
 Find the next data element in the tree (For internal use only) More...
 
void Init ()
 Reset iterator. More...
 
StackElement & Pop ()
 Pop element off iteration stack (For internal use only) More...
 
void Push (Node *a_node, int a_branchIndex)
 Push node and branch onto iteration stack (For internal use only) More...
 

Private Attributes

StackElement m_stack [MAX_STACK]
 Stack as we are doing iteration instead of recursion. More...
 
int m_tos
 Top Of Stack index. More...
 

Friends

class RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >
 

Detailed Description

template<class DATATYPE, class DATATYPENP, class ELEMTYPE, int NUMDIMS, class CONTEXT, class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
class RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator

Iterator is not remove safe.

Definition at line 131 of file RTree.h.

Member Enumeration Documentation

◆ anonymous enum

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
anonymous enum
private
Enumerator
MAX_STACK 

Definition at line 135 of file RTree.h.

Constructor & Destructor Documentation

◆ Iterator()

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::Iterator ( )
inline

◆ ~Iterator()

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::~Iterator ( )
inline

Definition at line 147 of file RTree.h.

Member Function Documentation

◆ FindNextData()

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
bool RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::FindNextData ( )
inlineprivate

◆ Init()

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
void RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::Init ( )
inlineprivate

◆ IsNotNull()

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
bool RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::IsNotNull ( )
inline

◆ IsNull()

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
bool RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::IsNull ( )
inline

◆ operator*() [1/2]

◆ operator*() [2/2]

◆ operator++()

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
bool RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::operator++ ( )
inline

◆ Pop()

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
StackElement& RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::Pop ( )
inlineprivate

◆ Push()

Friends And Related Function Documentation

◆ RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
friend class RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >
friend

Definition at line 242 of file RTree.h.

Field Documentation

◆ m_stack

template<class DATATYPE , class DATATYPENP , class ELEMTYPE , int NUMDIMS, class CONTEXT , class ELEMTYPEREAL = ELEMTYPE, int TMAXNODES = 8, int TMINNODES = TMAXNODES / 2>
StackElement RTree< DATATYPE, DATATYPENP, ELEMTYPE, NUMDIMS, CONTEXT, ELEMTYPEREAL, TMAXNODES, TMINNODES >::Iterator::m_stack[MAX_STACK]
private

◆ m_tos


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