Ogre::MapIteratorWrapper< T, IteratorType > Class Template Reference

Prepiared IteratorWrapper for key-value container. More...

#include <OgreIteratorWrapper.h>

Inheritance diagram for Ogre::MapIteratorWrapper< T, IteratorType >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef IteratorWrapper< T,
IteratorType, typename
T::mapped_type >::ValueType 
ValueType
 redefined ValueType for a map/set
typedef IteratorWrapper< T,
IteratorType, typename
T::mapped_type >::PointerType 
PointerType
 redefined PointerType for a map/set
typedef T::value_type PairType
 unused, just to make it clear that map/setvalue_type is not a ValueType
typedef T::key_type KeyType
 type you expect to get by funktions like peekNextKey
typedef IteratorType iterator
 typedef to fulfill container interface
typedef IteratorType const_iterator
 typedef to fulfill container interface

Public Member Functions

 MapIteratorWrapper (IteratorType start, IteratorType last)
 Constructor.
KeyType peekNextKey (void) const
 Returns the next(=current) key element in the collection, without advancing to the next.
ValueType peekNextValue () const
 Returns the next(=current) value element in the collection, without advancing to the next.
const PointerType peekNextValuePtr () const
 Returns a pointer to the next/current value element in the collection, without advancing to the next afterwards.
ValueType getNext ()
 Returns the next(=current) value element in the collection, and advances to the next.
bool hasMoreElements () const
 Returns true if there are more items in the collection.
void moveNext ()
 Moves the iterator on one element.
const IteratorType & begin ()
 bookmark to the begin of the underlying collection
IteratorType & current ()
 full access to the current iterator
const IteratorType & end ()
 bookmark to the end (one behind the last element) of the underlying collection

Protected Attributes

IteratorType mBegin
IteratorType mCurrent
IteratorType mEnd

Detailed Description

template<typename T, typename IteratorType>
class Ogre::MapIteratorWrapper< T, IteratorType >

Prepiared IteratorWrapper for key-value container.

Parameters:
T Container (map - or also set )
IteratorType T::iterator or T::const_iterator

have a look at MapIterator and ConstMapIterator for a concrete usage

Definition at line 255 of file OgreIteratorWrapper.h.


Member Typedef Documentation

typedef IteratorType Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::const_iterator [inherited]

typedef to fulfill container interface

Userfull if you want to use BOOST_FOREACH

Note:
there is no distinction between const_iterator and iterator.
keep this in mind if you want to derivate from this class.

Definition at line 82 of file OgreIteratorWrapper.h.

typedef IteratorType Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::iterator [inherited]

typedef to fulfill container interface

Userfull if you want to use BOOST_FOREACH

Note:
there is no distinction between const_iterator and iterator.
keep this in mind if you want to derivate from this class.

Definition at line 73 of file OgreIteratorWrapper.h.

template<typename T, typename IteratorType>
typedef T::key_type Ogre::MapIteratorWrapper< T, IteratorType >::KeyType

type you expect to get by funktions like peekNextKey

Definition at line 267 of file OgreIteratorWrapper.h.

template<typename T, typename IteratorType>
typedef T::value_type Ogre::MapIteratorWrapper< T, IteratorType >::PairType

unused, just to make it clear that map/setvalue_type is not a ValueType

Definition at line 265 of file OgreIteratorWrapper.h.

template<typename T, typename IteratorType>
typedef IteratorWrapper<T, IteratorType, typename T::mapped_type>::PointerType Ogre::MapIteratorWrapper< T, IteratorType >::PointerType

redefined PointerType for a map/set

Reimplemented from Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >.

Definition at line 262 of file OgreIteratorWrapper.h.

template<typename T, typename IteratorType>
typedef IteratorWrapper<T, IteratorType, typename T::mapped_type>::ValueType Ogre::MapIteratorWrapper< T, IteratorType >::ValueType

redefined ValueType for a map/set

Reimplemented from Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >.

Definition at line 260 of file OgreIteratorWrapper.h.


Constructor & Destructor Documentation

template<typename T, typename IteratorType>
Ogre::MapIteratorWrapper< T, IteratorType >::MapIteratorWrapper ( IteratorType  start,
IteratorType  last 
)

Constructor.

Remarks:
Provide a start and end iterator to initialise.

Definition at line 273 of file OgreIteratorWrapper.h.


Member Function Documentation

const IteratorType& Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::begin (  )  [inherited]

bookmark to the begin of the underlying collection

Definition at line 112 of file OgreIteratorWrapper.h.

References Ogre::IteratorWrapper< T, IteratorType, ValType >::mBegin.

IteratorType& Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::current (  )  [inherited]

full access to the current iterator

Definition at line 116 of file OgreIteratorWrapper.h.

References Ogre::IteratorWrapper< T, IteratorType, ValType >::mCurrent.

const IteratorType& Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::end ( void   )  [inherited]

bookmark to the end (one behind the last element) of the underlying collection

Definition at line 119 of file OgreIteratorWrapper.h.

References Ogre::IteratorWrapper< T, IteratorType, ValType >::mEnd.

template<typename T, typename IteratorType>
ValueType Ogre::MapIteratorWrapper< T, IteratorType >::getNext (  ) 

Returns the next(=current) value element in the collection, and advances to the next.

Definition at line 301 of file OgreIteratorWrapper.h.

Referenced by Ogre::RenderQueueGroup::merge().

bool Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::hasMoreElements (  )  const [inherited]

Returns true if there are more items in the collection.

Definition at line 99 of file OgreIteratorWrapper.h.

References Ogre::IteratorWrapper< T, IteratorType, ValType >::mCurrent, and Ogre::IteratorWrapper< T, IteratorType, ValType >::mEnd.

void Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::moveNext (  )  [inherited]

Moves the iterator on one element.

Definition at line 106 of file OgreIteratorWrapper.h.

References Ogre::IteratorWrapper< T, IteratorType, ValType >::mCurrent.

template<typename T, typename IteratorType>
KeyType Ogre::MapIteratorWrapper< T, IteratorType >::peekNextKey ( void   )  const

Returns the next(=current) key element in the collection, without advancing to the next.

Definition at line 279 of file OgreIteratorWrapper.h.

Referenced by Ogre::RenderQueueGroup::merge().

template<typename T, typename IteratorType>
ValueType Ogre::MapIteratorWrapper< T, IteratorType >::peekNextValue (  )  const

Returns the next(=current) value element in the collection, without advancing to the next.

Definition at line 286 of file OgreIteratorWrapper.h.

template<typename T, typename IteratorType>
const PointerType Ogre::MapIteratorWrapper< T, IteratorType >::peekNextValuePtr (  )  const

Returns a pointer to the next/current value element in the collection, without advancing to the next afterwards.

Definition at line 294 of file OgreIteratorWrapper.h.


Member Data Documentation

IteratorType Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::mBegin [protected, inherited]

Definition at line 54 of file OgreIteratorWrapper.h.

IteratorType Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::mCurrent [protected, inherited]
IteratorType Ogre::IteratorWrapper< T, IteratorType, T::mapped_type >::mEnd [protected, inherited]

Definition at line 56 of file OgreIteratorWrapper.h.


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

Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Fri May 25 23:37:58 2012