OGRE  2.3
Object-Oriented Graphics Rendering Engine
Ogre::iterator_range< T > Class Template Reference

Base for an iterator_range. More...

#include <OgreIteratorRange.h>

+ Inheritance diagram for Ogre::iterator_range< T >:

Public Types

typedef T const_iterator
 typedef to fulfill container interface More...
 
typedef T iterator
 typedef to fulfill container interface More...
 
typedef iterator_range< T > type
 defines the real used type More...
 

Public Member Functions

 iterator_range (T b, T e)
 Constructor. More...
 
begin () const
 access to the begin of the range More...
 
bool empty () const
 informs if there are any elements in the range More...
 
end () const
 access to the end of the range More...
 
bool equal (const iterator_range &other) const
 comparison for equality More...
 
bool operator!= (const iterator_range &rhs) const
 comparison operator for inequality More...
 
bool operator== (const iterator_range &rhs) const
 comparison operator for equality More...
 

Detailed Description

template<typename T>
class Ogre::iterator_range< T >

Base for an iterator_range.

Template Parameters
Titerator type

This class implements the minimal interface of the (boost::iterator_)range concept
Also it prepairs for direct usage of boost::iterator_range by providing the real used type via iterator_range::type so that client code does not have to change when boost::iterator_range will be implemented some day.
see VectorRange MapRange or corresponding Const variants for a sample of concrete usage of the iterator_range::type

Member Typedef Documentation

◆ const_iterator

template<typename T >
typedef T Ogre::iterator_range< T >::const_iterator

typedef to fulfill container interface

Note
there is no distinction between const_iterator and iterator.

◆ iterator

template<typename T >
typedef T Ogre::iterator_range< T >::iterator

typedef to fulfill container interface

Note
there is no distinction between const_iterator and iterator.

◆ type

template<typename T >
typedef iterator_range<T> Ogre::iterator_range< T >::type

defines the real used type

type will be defined as Ogre::iterator_range if not used with boost
otherwise the type will be boost::iterator_range

Constructor & Destructor Documentation

◆ iterator_range()

template<typename T >
Ogre::iterator_range< T >::iterator_range ( b,
e 
)
inline

Constructor.

Remarks
Provide a start and end iterator to initialise.

Member Function Documentation

◆ begin()

template<typename T >
T Ogre::iterator_range< T >::begin ( ) const
inline

access to the begin of the range

◆ empty()

template<typename T >
bool Ogre::iterator_range< T >::empty ( void  ) const
inline

informs if there are any elements in the range

◆ end()

template<typename T >
T Ogre::iterator_range< T >::end ( ) const
inline

access to the end of the range

◆ equal()

◆ operator!=()

template<typename T >
bool Ogre::iterator_range< T >::operator!= ( const iterator_range< T > &  rhs) const
inline

comparison operator for inequality

References Ogre::iterator_range< T >::operator==().

◆ operator==()

template<typename T >
bool Ogre::iterator_range< T >::operator== ( const iterator_range< T > &  rhs) const
inline

comparison operator for equality

References Ogre::iterator_range< T >::equal().

Referenced by Ogre::iterator_range< T >::operator!=().


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