DGtal  0.6.devel
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | Data Fields
DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor > Struct Template Reference

#include <BreadthFirstVisitor.h>

Collaboration diagram for DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >:
Collaboration graph
[legend]

Public Types

typedef ConstIterator< TAccessor > Self
typedef BreadthFirstVisitor
< TGraph, TMarkSet > 
Visitor
typedef TAccessor Accessor
typedef std::input_iterator_tag iterator_category
typedef Accessor::value value_type
typedef std::ptrdiff_t difference_type
typedef Accessor::pointer pointer
typedef Accessor::reference reference

Public Member Functions

 ConstIterator ()
 ConstIterator (Visitor *ptrV)
 ConstIterator (const Self &other)
Selfoperator= (const Self &other)
reference operator* () const
pointer operator-> () const
Selfoperator++ ()
Self operator++ (int)
bool operator== (const Self &other) const
bool operator!= (const Self &other) const

Data Fields

CountedPtr< VisitormyVisitor

Detailed Description

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor>
struct DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >

Definition at line 148 of file BreadthFirstVisitor.h.


Member Typedef Documentation

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
typedef TAccessor DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::Accessor

Definition at line 152 of file BreadthFirstVisitor.h.

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
typedef std::ptrdiff_t DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::difference_type

Definition at line 157 of file BreadthFirstVisitor.h.

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
typedef std::input_iterator_tag DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::iterator_category

Definition at line 155 of file BreadthFirstVisitor.h.

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
typedef Accessor::pointer DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::pointer

Definition at line 158 of file BreadthFirstVisitor.h.

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
typedef Accessor::reference DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::reference

Definition at line 159 of file BreadthFirstVisitor.h.

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
typedef ConstIterator<TAccessor> DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::Self

Definition at line 150 of file BreadthFirstVisitor.h.

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
typedef Accessor::value DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::value_type

Definition at line 156 of file BreadthFirstVisitor.h.

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
typedef BreadthFirstVisitor<TGraph,TMarkSet> DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::Visitor

Definition at line 151 of file BreadthFirstVisitor.h.


Constructor & Destructor Documentation

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::ConstIterator ( )
inline

Definition at line 165 of file BreadthFirstVisitor.h.

: myVisitor( 0 ) {}
template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::ConstIterator ( Visitor ptrV)
inline

Definition at line 168 of file BreadthFirstVisitor.h.

: myVisitor( ptrV ) {}
template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::ConstIterator ( const Self other)
inline

Definition at line 171 of file BreadthFirstVisitor.h.

: myVisitor( other.myVisitor ) {}

Member Function Documentation

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
bool DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::operator!= ( const Self other) const
inline
template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
reference DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::operator* ( ) const
inline

Definition at line 184 of file BreadthFirstVisitor.h.

References DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::current(), DGtal::CountedPtr< T >::get(), and DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::myVisitor.

{
ASSERT( ( myVisitor.get() != 0 )
&& "DGtal::BreadthFirstVisitor<TGraph,TMarkSet>::ConstIterator::operator*(): you cannot dereferenced a null visitor (i.e. end()).");
return Accessor::get( myVisitor->current() );
}
template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
Self& DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::operator++ ( )
inline
template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
Self DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::operator++ ( int  )
inline
template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
pointer DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::operator-> ( ) const
inline

Definition at line 193 of file BreadthFirstVisitor.h.

References DGtal::CountedPtr< T >::get(), and DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::myVisitor.

{
ASSERT( ( myVisitor.get() != 0 )
&& "DGtal::BreadthFirstVisitor<TGraph,TMarkSet>::ConstIterator::operator->(): you cannot dereferenced a null visitor (i.e. end()).");
return & Accessor::get( operator*() );
}
template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
Self& DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::operator= ( const Self other)
inline

Definition at line 175 of file BreadthFirstVisitor.h.

References DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::myVisitor.

{
if ( this != &other )
myVisitor = other.myVisitor;
return *this;
}
template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
bool DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::operator== ( const Self other) const
inline

Definition at line 218 of file BreadthFirstVisitor.h.

References DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::current(), DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::finished(), DGtal::CountedPtr< T >::get(), and DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::myVisitor.

Referenced by DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::operator!=().

{
if ( ( myVisitor.get() == 0 ) || myVisitor->finished() )
return ( other.myVisitor.get() == 0 ) || other.myVisitor->finished();
else if ( other.myVisitor.get() == 0 )
return false;
else
return &(myVisitor->current()) == &(other.myVisitor->current());
}

Field Documentation

template<typename TGraph, typename TMarkSet = typename TGraph::VertexSet>
template<typename TAccessor >
CountedPtr< Visitor > DGtal::BreadthFirstVisitor< TGraph, TMarkSet >::ConstIterator< TAccessor >::myVisitor

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