arsa  2.7
Public Member Functions | Friends | List of all members
irr::core::map< KeyType, ValueType >::Iterator Class Reference

Normal Iterator. More...

#include <irrMap.h>

Public Member Functions

 Iterator ()
 
 Iterator (Node *root)
 
 Iterator (const Iterator &src)
 
void reset (bool atLowest=true)
 
bool atEnd () const
 
NodegetNode () const
 
Iteratoroperator= (const Iterator &src)
 
void operator++ (int)
 
void operator-- (int)
 
Nodeoperator-> ()
 
Nodeoperator * ()
 

Friends

class ConstIterator
 

Detailed Description

template<class KeyType, class ValueType>
class irr::core::map< KeyType, ValueType >::Iterator

Normal Iterator.

Definition at line 130 of file irrMap.h.

Constructor & Destructor Documentation

◆ Iterator() [1/3]

template<class KeyType, class ValueType>
irr::core::map< KeyType, ValueType >::Iterator::Iterator ( )
inline

Definition at line 135 of file irrMap.h.

135 : Root(0), Cur(0) {}

◆ Iterator() [2/3]

template<class KeyType, class ValueType>
irr::core::map< KeyType, ValueType >::Iterator::Iterator ( Node root)
inline

Definition at line 138 of file irrMap.h.

138  : Root(root)
139  {
140  reset();
141  }
void reset(bool atLowest=true)
Definition: irrMap.h:146

◆ Iterator() [3/3]

template<class KeyType, class ValueType>
irr::core::map< KeyType, ValueType >::Iterator::Iterator ( const Iterator src)
inline

Definition at line 144 of file irrMap.h.

144 : Root(src.Root), Cur(src.Cur) {}
GLenum src

Member Function Documentation

◆ atEnd()

template<class KeyType, class ValueType>
bool irr::core::map< KeyType, ValueType >::Iterator::atEnd ( ) const
inline

Definition at line 154 of file irrMap.h.

155  {
156  return Cur==0;
157  }

◆ getNode()

template<class KeyType, class ValueType>
Node* irr::core::map< KeyType, ValueType >::Iterator::getNode ( ) const
inline

Definition at line 159 of file irrMap.h.

160  {
161  return Cur;
162  }

◆ operator *()

template<class KeyType, class ValueType>
Node& irr::core::map< KeyType, ValueType >::Iterator::operator * ( )
inline

Definition at line 186 of file irrMap.h.

187  {
188  _IRR_DEBUG_BREAK_IF(atEnd()) // access violation
189 
190  return *Cur;
191  }
#define _IRR_DEBUG_BREAK_IF(_CONDITION_)
define a break macro for debugging.
Definition: irrTypes.h:185
bool atEnd() const
Definition: irrMap.h:154

◆ operator++()

template<class KeyType, class ValueType>
void irr::core::map< KeyType, ValueType >::Iterator::operator++ ( int  )
inline

Definition at line 171 of file irrMap.h.

172  {
173  inc();
174  }

◆ operator--()

template<class KeyType, class ValueType>
void irr::core::map< KeyType, ValueType >::Iterator::operator-- ( int  )
inline

Definition at line 176 of file irrMap.h.

177  {
178  dec();
179  }

◆ operator->()

template<class KeyType, class ValueType>
Node* irr::core::map< KeyType, ValueType >::Iterator::operator-> ( )
inline

Definition at line 181 of file irrMap.h.

182  {
183  return getNode();
184  }
Node * getNode() const
Definition: irrMap.h:159

◆ operator=()

template<class KeyType, class ValueType>
Iterator& irr::core::map< KeyType, ValueType >::Iterator::operator= ( const Iterator src)
inline

Definition at line 164 of file irrMap.h.

165  {
166  Root = src.Root;
167  Cur = src.Cur;
168  return (*this);
169  }
GLenum src

◆ reset()

template<class KeyType, class ValueType>
void irr::core::map< KeyType, ValueType >::Iterator::reset ( bool  atLowest = true)
inline

Definition at line 146 of file irrMap.h.

147  {
148  if (atLowest)
149  Cur = getMin(Root);
150  else
151  Cur = getMax(Root);
152  }

Friends And Related Function Documentation

◆ ConstIterator

template<class KeyType, class ValueType>
friend class ConstIterator
friend

Definition at line 132 of file irrMap.h.


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