ATLAS Offline Software
Loading...
Searching...
No Matches
NavigableIterator< CONT, RPAR, COLL > Class Template Reference

#include <NavigableIterator.h>

Collaboration diagram for NavigableIterator< CONT, RPAR, COLL >:

Public Types

typedef COLL::const_iterator::iterator_category iterator_category
typedef const CONT::base_value_type * value_type
typedef COLL::const_iterator::difference_type difference_type
typedef value_typepointer
typedef value_type reference
typedef CONT::base_value_type child_type
typedef NavigationDefaults::DefaultChildColl< CONT, RPAR > helper_type

Public Member Functions

 NavigableIterator ()
 NavigableIterator (const COLL &theCollection)
NavigableIteratoroperator++ ()
NavigableIterator operator++ (int)
NavigableIteratoroperator-- ()
NavigableIterator operator-- (int)
NavigableIteratoroperator+= (difference_type n)
NavigableIteratoroperator-= (difference_type n)
NavigableIterator operator+ (difference_type n) const
NavigableIterator operator- (difference_type n) const
difference_type operator- (const NavigableIterator &other) const
const child_typeoperator* () const
const child_typeoperator-> () const
const child_typeoperator[] (difference_type n) const
const ElementLink< CONT > & getElement () const
bool operator== (const NavigableIterator &other) const
bool operator!= (const NavigableIterator &other) const
bool operator< (const NavigableIterator &other) const
bool operator> (const NavigableIterator &other) const
bool operator<= (const NavigableIterator &other) const
bool operator>= (const NavigableIterator &other) const
NavigableIterator begin ()
NavigableIterator end ()
NavigableIterator next ()
NavigableIterator previous ()
RPAR getParameter () const
COLL::const_iterator getInternalIterator () const

Protected Attributes

COLL::const_iterator m_actual
const COLL * m_collection

Detailed Description

template<typename CONT, typename RPAR, typename COLL>
class NavigableIterator< CONT, RPAR, COLL >

Definition at line 23 of file NavigableIterator.h.

Member Typedef Documentation

◆ child_type

template<typename CONT, typename RPAR, typename COLL>
typedef CONT::base_value_type NavigableIterator< CONT, RPAR, COLL >::child_type

Definition at line 33 of file NavigableIterator.h.

◆ difference_type

template<typename CONT, typename RPAR, typename COLL>
typedef COLL::const_iterator::difference_type NavigableIterator< CONT, RPAR, COLL >::difference_type

Definition at line 29 of file NavigableIterator.h.

◆ helper_type

template<typename CONT, typename RPAR, typename COLL>
typedef NavigationDefaults::DefaultChildColl<CONT,RPAR> NavigableIterator< CONT, RPAR, COLL >::helper_type

Definition at line 34 of file NavigableIterator.h.

◆ iterator_category

template<typename CONT, typename RPAR, typename COLL>
typedef COLL::const_iterator::iterator_category NavigableIterator< CONT, RPAR, COLL >::iterator_category

Definition at line 27 of file NavigableIterator.h.

◆ pointer

template<typename CONT, typename RPAR, typename COLL>
typedef value_type* NavigableIterator< CONT, RPAR, COLL >::pointer

Definition at line 30 of file NavigableIterator.h.

◆ reference

template<typename CONT, typename RPAR, typename COLL>
typedef value_type NavigableIterator< CONT, RPAR, COLL >::reference

Definition at line 31 of file NavigableIterator.h.

◆ value_type

template<typename CONT, typename RPAR, typename COLL>
typedef const CONT::base_value_type* NavigableIterator< CONT, RPAR, COLL >::value_type

Definition at line 28 of file NavigableIterator.h.

Constructor & Destructor Documentation

◆ NavigableIterator() [1/2]

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator< CONT, RPAR, COLL >::NavigableIterator ( )
inline

Definition at line 42 of file NavigableIterator.h.

43 : m_collection (0)
44 {}
const COLL * m_collection

◆ NavigableIterator() [2/2]

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator< CONT, RPAR, COLL >::NavigableIterator ( const COLL & theCollection)
inline

Definition at line 46 of file NavigableIterator.h.

Member Function Documentation

◆ begin()

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator NavigableIterator< CONT, RPAR, COLL >::begin ( )
inline

Definition at line 173 of file NavigableIterator.h.

174 {
175 m_actual = m_collection->begin();
176 return *this;
177 }

◆ end()

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator NavigableIterator< CONT, RPAR, COLL >::end ( )
inline

Definition at line 179 of file NavigableIterator.h.

180 {
181 m_actual = m_collection->end();
182 return *this;
183 }

◆ getElement()

template<typename CONT, typename RPAR, typename COLL>
const ElementLink< CONT > & NavigableIterator< CONT, RPAR, COLL >::getElement ( ) const
inline

Definition at line 132 of file NavigableIterator.h.

133 {
135 }
static const ElementLink< CONT > * getElementPtr(type_const_iterator thisIter)

◆ getInternalIterator()

template<typename CONT, typename RPAR, typename COLL>
COLL::const_iterator NavigableIterator< CONT, RPAR, COLL >::getInternalIterator ( ) const
inline

Definition at line 203 of file NavigableIterator.h.

204 {
205 return m_actual;
206 }

◆ getParameter()

template<typename CONT, typename RPAR, typename COLL>
RPAR NavigableIterator< CONT, RPAR, COLL >::getParameter ( ) const
inline

Definition at line 197 of file NavigableIterator.h.

198 {
200 }
static RPAR getChildPar(type_const_iterator thisIter)

◆ next()

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator NavigableIterator< CONT, RPAR, COLL >::next ( )
inline

Definition at line 185 of file NavigableIterator.h.

186 {
187 ++m_actual;
188 return *this;
189 }

◆ operator!=()

template<typename CONT, typename RPAR, typename COLL>
bool NavigableIterator< CONT, RPAR, COLL >::operator!= ( const NavigableIterator< CONT, RPAR, COLL > & other) const
inline

Definition at line 145 of file NavigableIterator.h.

146 {
147 return m_actual != other.m_actual;
148 }

◆ operator*()

template<typename CONT, typename RPAR, typename COLL>
const child_type * NavigableIterator< CONT, RPAR, COLL >::operator* ( ) const
inline

Definition at line 117 of file NavigableIterator.h.

118 {
120 }
static const_child_ptr getChildPtr(type_const_iterator thisIter)

◆ operator+()

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator NavigableIterator< CONT, RPAR, COLL >::operator+ ( difference_type n) const
inline

Definition at line 95 of file NavigableIterator.h.

96 {
97 NavigableIterator tmp = *this;
98 tmp += n;
99 return tmp;
100 }

◆ operator++() [1/2]

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator & NavigableIterator< CONT, RPAR, COLL >::operator++ ( )
inline

Definition at line 57 of file NavigableIterator.h.

58 {
59 ++m_actual;
60 return *this;
61 }

◆ operator++() [2/2]

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator NavigableIterator< CONT, RPAR, COLL >::operator++ ( int )
inline

Definition at line 63 of file NavigableIterator.h.

64 {
65 NavigableIterator tmp = *this;
66 ++m_actual;
67 return tmp;
68 }

◆ operator+=()

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator & NavigableIterator< CONT, RPAR, COLL >::operator+= ( difference_type n)
inline

Definition at line 83 of file NavigableIterator.h.

84 {
85 m_actual += n;
86 return *this;
87 }

◆ operator-() [1/2]

template<typename CONT, typename RPAR, typename COLL>
difference_type NavigableIterator< CONT, RPAR, COLL >::operator- ( const NavigableIterator< CONT, RPAR, COLL > & other) const
inline

Definition at line 109 of file NavigableIterator.h.

110 {
111 return m_actual - other.m_actual;
112 }

◆ operator-() [2/2]

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator NavigableIterator< CONT, RPAR, COLL >::operator- ( difference_type n) const
inline

Definition at line 102 of file NavigableIterator.h.

103 {
104 NavigableIterator tmp = *this;
105 tmp -= n;
106 return tmp;
107 }

◆ operator--() [1/2]

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator & NavigableIterator< CONT, RPAR, COLL >::operator-- ( )
inline

Definition at line 70 of file NavigableIterator.h.

71 {
72 --m_actual;
73 return *this;
74 }

◆ operator--() [2/2]

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator NavigableIterator< CONT, RPAR, COLL >::operator-- ( int )
inline

Definition at line 76 of file NavigableIterator.h.

77 {
78 NavigableIterator tmp = *this;
79 --m_actual;
80 return tmp;
81 }

◆ operator-=()

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator & NavigableIterator< CONT, RPAR, COLL >::operator-= ( difference_type n)
inline

Definition at line 89 of file NavigableIterator.h.

90 {
91 m_actual -= n;
92 return *this;
93 }

◆ operator->()

template<typename CONT, typename RPAR, typename COLL>
const child_type * NavigableIterator< CONT, RPAR, COLL >::operator-> ( ) const
inline

Definition at line 122 of file NavigableIterator.h.

123 {
125 }

◆ operator<()

template<typename CONT, typename RPAR, typename COLL>
bool NavigableIterator< CONT, RPAR, COLL >::operator< ( const NavigableIterator< CONT, RPAR, COLL > & other) const
inline

Definition at line 150 of file NavigableIterator.h.

151 {
152 return m_actual < other.m_actual;
153 }

◆ operator<=()

template<typename CONT, typename RPAR, typename COLL>
bool NavigableIterator< CONT, RPAR, COLL >::operator<= ( const NavigableIterator< CONT, RPAR, COLL > & other) const
inline

Definition at line 160 of file NavigableIterator.h.

161 {
162 return m_actual <= other.m_actual;
163 }

◆ operator==()

template<typename CONT, typename RPAR, typename COLL>
bool NavigableIterator< CONT, RPAR, COLL >::operator== ( const NavigableIterator< CONT, RPAR, COLL > & other) const
inline

Definition at line 140 of file NavigableIterator.h.

141 {
142 return m_actual == other.m_actual;
143 }

◆ operator>()

template<typename CONT, typename RPAR, typename COLL>
bool NavigableIterator< CONT, RPAR, COLL >::operator> ( const NavigableIterator< CONT, RPAR, COLL > & other) const
inline

Definition at line 155 of file NavigableIterator.h.

156 {
157 return m_actual > other.m_actual;
158 }

◆ operator>=()

template<typename CONT, typename RPAR, typename COLL>
bool NavigableIterator< CONT, RPAR, COLL >::operator>= ( const NavigableIterator< CONT, RPAR, COLL > & other) const
inline

Definition at line 165 of file NavigableIterator.h.

166 {
167 return m_actual >= other.m_actual;
168 }

◆ operator[]()

template<typename CONT, typename RPAR, typename COLL>
const child_type * NavigableIterator< CONT, RPAR, COLL >::operator[] ( difference_type n) const
inline

Definition at line 127 of file NavigableIterator.h.

128 {
130 }

◆ previous()

template<typename CONT, typename RPAR, typename COLL>
NavigableIterator NavigableIterator< CONT, RPAR, COLL >::previous ( )
inline

Definition at line 191 of file NavigableIterator.h.

192 {
193 --m_actual;
194 return *this;
195 }

Member Data Documentation

◆ m_actual

template<typename CONT, typename RPAR, typename COLL>
COLL::const_iterator NavigableIterator< CONT, RPAR, COLL >::m_actual
protected

Definition at line 212 of file NavigableIterator.h.

◆ m_collection

template<typename CONT, typename RPAR, typename COLL>
const COLL* NavigableIterator< CONT, RPAR, COLL >::m_collection
protected

Definition at line 213 of file NavigableIterator.h.


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