Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Ogre::ConstVectorIterator< T > Class Template Reference

Wraps iteration over a const vector. More...

#include <OgreIteratorWrappers.h>

List of all members.

Public Types

typedef T::value_type ValueType

Public Methods

 ConstVectorIterator (typename T::const_iterator start, typename T::const_iterator end)
 Constructor.

bool hasMoreElements (void) const
 Returns true if there are more items in the collection.

T::value_type getNext (void)
 Returns the next element in the collection, and advances to the next.

T::value_type peekNext (void) const
 Returns the next element in the collection, without advancing to the next.

T::const_pointer peekNextPtr (void) const
 Returns a pointer to the next element in the collection, without advancing to the next afterwards.

void moveNext (void) const
 Moves the iterator on one element.


Private Methods

 ConstVectorIterator ()
 Private constructor since only the parameterised constructor should be used.


Private Attributes

T::const_iterator mCurrent
T::const_iterator mEnd


Detailed Description

template<class T>
class Ogre::ConstVectorIterator< T >

Wraps iteration over a const vector.

Remarks:
This class is here just to allow clients to iterate over an internal vector of a class without having to have access to the vector itself (typically to iterate you need both the iterator and the end() iterator to test for the end condition, which is messy). No updates are allowed through this interface, it is purely for iterating and reading.

Note that like STL iterators, these iterators are only valid whilst no updates are made to the underlying collection. You should not attempt to use this iterator if a change is made to the collection. In fact, treat this iterator as a transient object, do NOT store it and try to use it repeatedly.

Definition at line 190 of file OgreIteratorWrappers.h.


Member Typedef Documentation

template<class T>
typedef T::value_type Ogre::ConstVectorIterator< T >::ValueType
 

Definition at line 198 of file OgreIteratorWrappers.h.


Constructor & Destructor Documentation

template<class T>
Ogre::ConstVectorIterator< T >::ConstVectorIterator   [private]
 

Private constructor since only the parameterised constructor should be used.

Definition at line 196 of file OgreIteratorWrappers.h.

template<class T>
Ogre::ConstVectorIterator< T >::ConstVectorIterator typename T::const_iterator    start,
typename T::const_iterator    end
 

Constructor.

Remarks:
Provide a start and end iterator to initialise.

Definition at line 204 of file OgreIteratorWrappers.h.

References Ogre::ConstVectorIterator< T >::mCurrent, and Ogre::ConstVectorIterator< T >::mEnd.


Member Function Documentation

template<class T>
T::value_type Ogre::ConstVectorIterator< T >::getNext void   
 

Returns the next element in the collection, and advances to the next.

Definition at line 216 of file OgreIteratorWrappers.h.

References Ogre::ConstVectorIterator< T >::mCurrent.

template<class T>
bool Ogre::ConstVectorIterator< T >::hasMoreElements void    const
 

Returns true if there are more items in the collection.

Definition at line 210 of file OgreIteratorWrappers.h.

References Ogre::ConstVectorIterator< T >::mCurrent, and Ogre::ConstVectorIterator< T >::mEnd.

template<class T>
void Ogre::ConstVectorIterator< T >::moveNext void    const
 

Moves the iterator on one element.

Definition at line 231 of file OgreIteratorWrappers.h.

References Ogre::ConstVectorIterator< T >::mCurrent.

template<class T>
T::value_type Ogre::ConstVectorIterator< T >::peekNext void    const
 

Returns the next element in the collection, without advancing to the next.

Definition at line 221 of file OgreIteratorWrappers.h.

References Ogre::ConstVectorIterator< T >::mCurrent.

template<class T>
T::const_pointer Ogre::ConstVectorIterator< T >::peekNextPtr void    const
 

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

Definition at line 226 of file OgreIteratorWrappers.h.


Member Data Documentation

template<class T>
T::const_iterator Ogre::ConstVectorIterator< T >::mCurrent [private]
 

Definition at line 193 of file OgreIteratorWrappers.h.

Referenced by Ogre::ConstVectorIterator< T >::ConstVectorIterator(), Ogre::ConstVectorIterator< T >::getNext(), Ogre::ConstVectorIterator< T >::hasMoreElements(), Ogre::ConstVectorIterator< T >::moveNext(), and Ogre::ConstVectorIterator< T >::peekNext().

template<class T>
T::const_iterator Ogre::ConstVectorIterator< T >::mEnd [private]
 

Definition at line 194 of file OgreIteratorWrappers.h.

Referenced by Ogre::ConstVectorIterator< T >::ConstVectorIterator(), and Ogre::ConstVectorIterator< T >::hasMoreElements().


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

Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:50:43 2004