ATLAS Offline Software
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator Class Reference

Iterator class. More...

#include <ConcurrentPtrSet.h>

Inheritance diagram for CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator:
Collaboration diagram for CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator:

Public Member Functions

 const_iterator (typename Impl_t::const_iterator it)
 Constructor. More...
 
bool valid () const
 Test if this iterator is valid. More...
 

Private Member Functions

void increment ()
 iterator_facade requirement: Increment the iterator. More...
 
void decrement ()
 iterator_facade requirement: Decrement the iterator. More...
 
bool equal (const const_iterator &other) const
 iterator_facade requirement: Equality test. More...
 
key_type dereference () const
 iterator_facade requirement: Dereference the iterator. More...
 

Private Attributes

Impl_t::const_iterator m_impl
 The iterator on the underlying table. More...
 

Friends

class boost::iterator_core_access
 Required by iterator_facade. More...
 

Detailed Description

template<class VALUE, template< class > class UPDATER>
class CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator

Iterator class.

This uses boost::iterator_facade to define the methods required by an STL iterator in terms of the private methods below.

Since dereference() will be returning a const_iterator_value by value, we also need to override the reference type.

Definition at line 193 of file ConcurrentPtrSet.h.

Constructor & Destructor Documentation

◆ const_iterator()

template<class VALUE , template< class > class UPDATER>
CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator::const_iterator ( typename Impl_t::const_iterator  it)

Constructor.

Parameters
itIterator of the underlying table.

Member Function Documentation

◆ decrement()

template<class VALUE , template< class > class UPDATER>
void CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator::decrement ( )
private

iterator_facade requirement: Decrement the iterator.

◆ dereference()

template<class VALUE , template< class > class UPDATER>
key_type CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator::dereference ( ) const
private

iterator_facade requirement: Dereference the iterator.

◆ equal()

template<class VALUE , template< class > class UPDATER>
bool CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator::equal ( const const_iterator other) const
private

iterator_facade requirement: Equality test.

◆ increment()

template<class VALUE , template< class > class UPDATER>
void CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator::increment ( )
private

iterator_facade requirement: Increment the iterator.

◆ valid()

template<class VALUE , template< class > class UPDATER>
bool CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator::valid ( ) const

Test if this iterator is valid.

This should be the same as testing for != end().

Friends And Related Function Documentation

◆ boost::iterator_core_access

template<class VALUE , template< class > class UPDATER>
friend class boost::iterator_core_access
friend

Required by iterator_facade.

Definition at line 217 of file ConcurrentPtrSet.h.

Member Data Documentation

◆ m_impl

template<class VALUE , template< class > class UPDATER>
Impl_t::const_iterator CxxUtils::ConcurrentPtrSet< VALUE, UPDATER >::const_iterator::m_impl
private

The iterator on the underlying table.

Definition at line 245 of file ConcurrentPtrSet.h.


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