PGE API 0.4
PR00F's Game Engine full documentation
Loading...
Searching...
No Matches
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > Class Template Reference

Detailed Description

template<typename blContainerType, typename blAdvanceDistanceFunctorType, typename blBeginEndFunctorType>
class blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >

Definition at line 43 of file blIteratorAPI.hpp.

#include <blIteratorAPI.hpp>

+ Inheritance diagram for blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >:

Public Types

typedef std::shared_ptr< blContainerType > blContainerPtr
 
typedef std::iterator_traits< typenameblContainerType::iterator >::value_type blDataType
 
typedef std::iterator_traits< typenameblContainerType::iterator >::pointer blDataTypePtr
 
typedef std::iterator_traits< typenameblContainerType::iterator >::reference blDataTypeRef
 
typedef decltype(blBeginEndFunctorType::begin(std::declval< blContainerType & >())) iterator
 

Public Member Functions

 blIterator ()=default
 
 blIterator (blContainerType &container)
 
 blIterator (blContainerType *containerPtr)
 
 blIterator (const blContainerPtr &containerPtr)
 
 blIterator (const iterator &ptr, const blContainerPtr &containerPtr)
 
 blIterator (const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > &)=default
 
 blIterator (blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > &&)=default
 
 ~blIterator ()
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & operator= (const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > &iterator)=default
 
blDataTypeRef operator* ()
 
const blDataTypeRef operator* () const
 
iterator operator-> ()
 
bool operator== (const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > &iterator) const
 
bool operator!= (const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > &iterator) const
 
 operator bool () const
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & operator++ ()
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > operator++ (int)
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & operator-- ()
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > operator-- (int)
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & operator+= (const ptrdiff_t &Offset)
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & operator-= (const ptrdiff_t &Offset)
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > operator+ (const ptrdiff_t &Offset) const
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > operator- (const ptrdiff_t &Offset) const
 
ptrdiff_t operator- (const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > &iterator) const
 
void setContainerPtr (blContainerType &container)
 
void setContainerPtr (const blContainerType &container)
 
void setContainerPtr (blContainerType *rawContainerPtr)
 
const iteratorgetPtr () const
 
const blContainerPtrgetContainerPtr () const
 
ptrdiff_t getDistanceFromBeginToIter () const
 
ptrdiff_t getDistanceFromIterToEnd () const
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > begin () const
 
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > end () const
 
blDataTypeRef operator[] (const size_t &index)
 
const blDataTypeRef operator[] (const size_t &index) const
 
size_t size () const
 
size_t length () const
 
size_t max_size () const
 
bool empty () const
 

Private Member Functions

void advance (const ptrdiff_t &HowManyStepsToAdvanceIter)
 

Private Attributes

iterator m_ptr
 
blContainerPtr m_containerPtr
 

Member Typedef Documentation

◆ blContainerPtr

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
std::shared_ptr<blContainerType> blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blContainerPtr

Definition at line 51 of file blIteratorAPI.hpp.

◆ blDataType

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
std::iterator_traits<typenameblContainerType::iterator>::value_type blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blDataType

Definition at line 53 of file blIteratorAPI.hpp.

◆ blDataTypePtr

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
std::iterator_traits<typenameblContainerType::iterator>::pointer blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blDataTypePtr

Definition at line 54 of file blIteratorAPI.hpp.

◆ blDataTypeRef

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
std::iterator_traits<typenameblContainerType::iterator>::reference blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blDataTypeRef

Definition at line 55 of file blIteratorAPI.hpp.

◆ iterator

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
decltype(blBeginEndFunctorType::begin(std::declval<blContainerType&>())) blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::iterator

Definition at line 57 of file blIteratorAPI.hpp.

Constructor & Destructor Documentation

◆ blIterator() [1/7]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blIterator ( )
default

◆ blIterator() [2/7]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blIterator ( blContainerType & container)
inline

Definition at line 80 of file blIteratorAPI.hpp.

◆ blIterator() [3/7]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blIterator ( blContainerType * containerPtr)
inline

Definition at line 91 of file blIteratorAPI.hpp.

◆ blIterator() [4/7]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blIterator ( const blContainerPtr & containerPtr)
inline

Definition at line 102 of file blIteratorAPI.hpp.

◆ blIterator() [5/7]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blIterator ( const iterator & ptr,
const blContainerPtr & containerPtr )
inline

Definition at line 113 of file blIteratorAPI.hpp.

◆ blIterator() [6/7]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blIterator ( const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & )
default

◆ blIterator() [7/7]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::blIterator ( blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > && )
default

◆ ~blIterator()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::~blIterator ( )
inline

Definition at line 130 of file blIteratorAPI.hpp.

Member Function Documentation

◆ advance()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
void blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::advance ( const ptrdiff_t & HowManyStepsToAdvanceIter)
inlineprivate

Definition at line 426 of file blIteratorAPI.hpp.

◆ begin()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::begin ( ) const
inline

Definition at line 358 of file blIteratorAPI.hpp.

◆ empty()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
bool blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::empty ( ) const
inline

Definition at line 418 of file blIteratorAPI.hpp.

◆ end()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::end ( ) const
inline

Definition at line 375 of file blIteratorAPI.hpp.

◆ getContainerPtr()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
const blContainerPtr & blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::getContainerPtr ( ) const
inline

Definition at line 325 of file blIteratorAPI.hpp.

◆ getDistanceFromBeginToIter()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
ptrdiff_t blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::getDistanceFromBeginToIter ( ) const
inline

Definition at line 334 of file blIteratorAPI.hpp.

◆ getDistanceFromIterToEnd()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
ptrdiff_t blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::getDistanceFromIterToEnd ( ) const
inline

Definition at line 342 of file blIteratorAPI.hpp.

◆ getPtr()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
const iterator & blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::getPtr ( ) const
inline

Definition at line 324 of file blIteratorAPI.hpp.

◆ length()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
size_t blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::length ( ) const
inline

Definition at line 416 of file blIteratorAPI.hpp.

◆ max_size()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
size_t blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::max_size ( ) const
inline

Definition at line 417 of file blIteratorAPI.hpp.

◆ operator bool()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator bool ( ) const
inlineexplicit

Definition at line 169 of file blIteratorAPI.hpp.

◆ operator!=()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
bool blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator!= ( const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & iterator) const
inline

Definition at line 158 of file blIteratorAPI.hpp.

◆ operator*() [1/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blDataTypeRef blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator* ( )
inline

Definition at line 142 of file blIteratorAPI.hpp.

◆ operator*() [2/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
const blDataTypeRef blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator* ( ) const
inline

Definition at line 143 of file blIteratorAPI.hpp.

◆ operator+()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator+ ( const ptrdiff_t & Offset) const
inline

Definition at line 240 of file blIteratorAPI.hpp.

◆ operator++() [1/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator++ ( )
inline

Definition at line 182 of file blIteratorAPI.hpp.

◆ operator++() [2/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator++ ( int )
inline

Definition at line 190 of file blIteratorAPI.hpp.

◆ operator+=()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator+= ( const ptrdiff_t & Offset)
inline

Definition at line 224 of file blIteratorAPI.hpp.

◆ operator-() [1/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
ptrdiff_t blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator- ( const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & iterator) const
inline

Definition at line 262 of file blIteratorAPI.hpp.

◆ operator-() [2/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator- ( const ptrdiff_t & Offset) const
inline

Definition at line 249 of file blIteratorAPI.hpp.

◆ operator--() [1/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator-- ( )
inline

Definition at line 201 of file blIteratorAPI.hpp.

◆ operator--() [2/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator-- ( int )
inline

Definition at line 209 of file blIteratorAPI.hpp.

◆ operator-=()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator-= ( const ptrdiff_t & Offset)
inline

Definition at line 232 of file blIteratorAPI.hpp.

◆ operator->()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
iterator blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator-> ( )
inline

Definition at line 144 of file blIteratorAPI.hpp.

◆ operator=()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator= ( const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & iterator)
default

◆ operator==()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
bool blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator== ( const blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType > & iterator) const
inline

Definition at line 152 of file blIteratorAPI.hpp.

◆ operator[]() [1/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blDataTypeRef blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator[] ( const size_t & index)
inline

Definition at line 399 of file blIteratorAPI.hpp.

◆ operator[]() [2/2]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
const blDataTypeRef blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::operator[] ( const size_t & index) const
inline

Definition at line 400 of file blIteratorAPI.hpp.

◆ setContainerPtr() [1/3]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
void blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::setContainerPtr ( blContainerType & container)
inline

Definition at line 275 of file blIteratorAPI.hpp.

◆ setContainerPtr() [2/3]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
void blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::setContainerPtr ( blContainerType * rawContainerPtr)
inline

Definition at line 305 of file blIteratorAPI.hpp.

◆ setContainerPtr() [3/3]

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
void blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::setContainerPtr ( const blContainerType & container)
inline

Definition at line 290 of file blIteratorAPI.hpp.

◆ size()

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
size_t blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::size ( ) const
inline

Definition at line 408 of file blIteratorAPI.hpp.

Member Data Documentation

◆ m_containerPtr

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
blContainerPtr blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::m_containerPtr
private

Definition at line 70 of file blIteratorAPI.hpp.

◆ m_ptr

template<typename blContainerType , typename blAdvanceDistanceFunctorType , typename blBeginEndFunctorType >
iterator blIteratorAPI::blIterator< blContainerType, blAdvanceDistanceFunctorType, blBeginEndFunctorType >::m_ptr
private

Definition at line 65 of file blIteratorAPI.hpp.


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