Open CASCADE Technology  7.8.1
Public Member Functions
NCollection_Iterator< Container > Class Template Reference

Helper class that allows to use NCollection iterators as STL iterators. NCollection iterator can be extended to STL iterator of any category by adding necessary methods: STL forward iterator requires IsEqual method, STL bidirectional iterator requires Previous method, and STL random access iterator requires Offset and Differ methods. See NCollection_Vector as example of declaring custom STL iterators. More...

#include <NCollection_Iterator.hxx>

Inheritance diagram for NCollection_Iterator< Container >:
Inheritance graph
[legend]

Public Member Functions

 NCollection_Iterator ()
 
 NCollection_Iterator (const NCollection_Iterator &theOther)
 
 NCollection_Iterator (const Container &theList)
 
 NCollection_Iterator (const Container &theList, const typename Container::iterator &theOther)
 
 NCollection_Iterator (const Container &theList, typename Container::iterator &&theOther)
 
 ~NCollection_Iterator ()
 
void Init (Container &theList)
 
void Init (const Container &theList)
 
virtual bool More () const
 
void Initialize (Container &theList)
 
void Initialize (const Container &theList)
 
const Container::iterator & ValueIter () const
 
Container::iterator & ChangeValueIter ()
 
const Container::iterator & EndIter () const
 
Container::iterator & ChangeEndIter ()
 
virtual void Next ()
 
const Container::const_reference Value () const
 
const Container::reference ChangeValue ()
 
bool operator== (const NCollection_Iterator &theOther)
 
bool operator!= (const NCollection_Iterator &theOther)
 
NCollection_Iteratoroperator= (const NCollection_Iterator &theOther)
 
NCollection_Iteratoroperator= (NCollection_Iterator &&theOther)
 

Detailed Description

template<class Container>
class NCollection_Iterator< Container >

Helper class that allows to use NCollection iterators as STL iterators. NCollection iterator can be extended to STL iterator of any category by adding necessary methods: STL forward iterator requires IsEqual method, STL bidirectional iterator requires Previous method, and STL random access iterator requires Offset and Differ methods. See NCollection_Vector as example of declaring custom STL iterators.

Constructor & Destructor Documentation

template<class Container >
NCollection_Iterator< Container >::NCollection_Iterator ( )
inline
template<class Container >
NCollection_Iterator< Container >::NCollection_Iterator ( const NCollection_Iterator< Container > &  theOther)
inline
template<class Container >
NCollection_Iterator< Container >::NCollection_Iterator ( const Container &  theList)
inline
template<class Container >
NCollection_Iterator< Container >::NCollection_Iterator ( const Container &  theList,
const typename Container::iterator &  theOther 
)
inline
template<class Container >
NCollection_Iterator< Container >::NCollection_Iterator ( const Container &  theList,
typename Container::iterator &&  theOther 
)
inline
template<class Container >
NCollection_Iterator< Container >::~NCollection_Iterator ( )
inline

Member Function Documentation

template<class Container >
Container::iterator& NCollection_Iterator< Container >::ChangeEndIter ( )
inline
template<class Container >
const Container::reference NCollection_Iterator< Container >::ChangeValue ( )
inline
template<class Container >
Container::iterator& NCollection_Iterator< Container >::ChangeValueIter ( )
inline
template<class Container >
const Container::iterator& NCollection_Iterator< Container >::EndIter ( ) const
inline
template<class Container >
void NCollection_Iterator< Container >::Init ( Container &  theList)
inline
template<class Container >
void NCollection_Iterator< Container >::Init ( const Container &  theList)
inline
template<class Container >
void NCollection_Iterator< Container >::Initialize ( Container &  theList)
inline
template<class Container >
void NCollection_Iterator< Container >::Initialize ( const Container &  theList)
inline
template<class Container >
virtual bool NCollection_Iterator< Container >::More ( void  ) const
inlinevirtual
template<class Container >
virtual void NCollection_Iterator< Container >::Next ( void  )
inlinevirtual
template<class Container >
bool NCollection_Iterator< Container >::operator!= ( const NCollection_Iterator< Container > &  theOther)
inline
template<class Container >
NCollection_Iterator& NCollection_Iterator< Container >::operator= ( const NCollection_Iterator< Container > &  theOther)
inline
template<class Container >
NCollection_Iterator& NCollection_Iterator< Container >::operator= ( NCollection_Iterator< Container > &&  theOther)
inline
template<class Container >
bool NCollection_Iterator< Container >::operator== ( const NCollection_Iterator< Container > &  theOther)
inline
template<class Container >
const Container::const_reference NCollection_Iterator< Container >::Value ( void  ) const
inline
template<class Container >
const Container::iterator& NCollection_Iterator< Container >::ValueIter ( ) const
inline

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