Public Types | Protected Member Functions | Protected Attributes | Private Types | Friends

mln::internal::vertex_nbh_vertex_bkd_iterator< G > Class Template Reference

#include <graph_nbh_iter.hh>

Inheritance diagram for mln::internal::vertex_nbh_vertex_bkd_iterator< G >:
Inheritance graph

List of all members.

Public Types

typedef Proxy< void > category
typedef
vertex_nbh_vertex_bkd_iterator
< G > 
exact_t

Public Member Functions

 vertex_nbh_vertex_bkd_iterator ()
 Construction and assignment.
template<typename C >
 vertex_nbh_vertex_bkd_iterator (const C &c)

bool is_valid () const
 Iterator interface.
void invalidate ()
 Invalidate the iterator.
void start ()
 Start an iteration.
void next ()
 Go to the next value.
unsigned index () const
 Return current index.
util::vertex< G >::id_t id () const
 Returns the element ID.
 operator typename util::vertex< G >::id_t () const
 Conversion operator. Returns the element id.
 operator typename util::vertex< G >::id_value_t () const
 Conversion operator.
const util::vertex< G > & center () const
 The psite around which this iterator moves.
void center_at (const p_indexed_psite< S > &c)
 Make c the center of this iterator.
void center_at (const C2 &c)
void change_target (const G &g)
 Change the graph targeted by this iterator.
const util::vertex< G > & element () const
 Return the underlying element.
const util::vertex< G > & elt_hook_ () const
 Hook to the current location.

const util::vertex< G > & subj_ ()
 Proxy.

Protected Member Functions

unsigned next_id_ () const
 Go to the next value.
unsigned start_id_ () const
 Start an iteration.
void update_ ()

bool is_valid_ () const
 Manipulation.

Protected Attributes

const util::vertex< G > * c_
util::vertex< G > elt_
unsigned i_

Private Types

typedef
vertex_nbh_vertex_bkd_iterator
< G > 
self_
typedef nbh_iterator_base< G,
V, V, self_
super_
typedef util::vertex< G > V

Friends

class nbh_iterator_base< G, V, V, self_ >

template<typename G>
class mln::internal::vertex_nbh_vertex_bkd_iterator< G >


Member Typedef Documentation

typedef Proxy<void> mln::Proxy< vertex_nbh_vertex_bkd_iterator< G > >::category [inherited]
template<typename G >
typedef nbh_iterator_base<G, V, V, self_> mln::internal::vertex_nbh_vertex_bkd_iterator< G >::super_ [private]
template<typename G >
typedef util::vertex<G> mln::internal::vertex_nbh_vertex_bkd_iterator< G >::V [private]

Constructor & Destructor Documentation

Construction and assignment.

template<typename G >
template<typename C >
mln::internal::vertex_nbh_vertex_bkd_iterator< G >::vertex_nbh_vertex_bkd_iterator ( const C &  c  )  [inline]

Member Function Documentation

const util::vertex< G > & mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::center (  )  const [inherited]

The psite around which this iterator moves.

void mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::center_at ( const p_indexed_psite< S > &  c  )  [inherited]

Make c the center of this iterator.

void mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::center_at ( const C2 &  c  )  [inherited]
void mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::change_target ( const G &  g  )  [inherited]

Change the graph targeted by this iterator.

const util::vertex< G > & mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::element (  )  const [inherited]

Return the underlying element.

const util::vertex< G > & mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::elt_hook_ (  )  const [inherited]

Hook to the current location.

util::vertex< G > ::id_t mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::id (  )  const [inherited]

Returns the element ID.

unsigned mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::index (  )  const [inherited]

Return current index.

(The current element is the i-th neighbor)

void mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::invalidate (  )  [inherited]

Invalidate the iterator.

bool mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::is_valid (  )  const [inherited]

Iterator interface.

Test if the iterator is valid.

template<typename G >
bool mln::internal::vertex_nbh_vertex_bkd_iterator< G >::is_valid_ (  )  const [inline, protected]
void mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::next (  )  [inherited]

Go to the next value.

template<typename G >
unsigned mln::internal::vertex_nbh_vertex_bkd_iterator< G >::next_id_ (  )  const [inline, protected]
mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::operator typename util::vertex< G > ::id_t (  )  const [inherited]

Conversion operator. Returns the element id.

mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::operator typename util::vertex< G > ::id_value_t (  )  const [inherited]

Conversion operator.

Returns the element id. FIXME: May cause ambiguities.

void mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::start (  )  [inherited]

Start an iteration.

template<typename G >
unsigned mln::internal::vertex_nbh_vertex_bkd_iterator< G >::start_id_ (  )  const [inline, protected]
const util::vertex< G > & mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::subj_ (  )  [inherited]

Proxy.

Proxy subject

template<typename G >
void mln::internal::vertex_nbh_vertex_bkd_iterator< G >::update_ (  )  [inline, protected]

Friends And Related Function Documentation

template<typename G >
friend class nbh_iterator_base< G, V, V, self_ > [friend]

Member Data Documentation

const util::vertex< G > * mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::c_ [protected, inherited]
unsigned mln::internal::nbh_iterator_base< G, util::vertex< G > , util::vertex< G > , vertex_nbh_vertex_bkd_iterator< G > >::i_ [protected, inherited]