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 V center
 Type of the iterator center element.
typedef
vertex_nbh_vertex_bkd_iterator
< G > 
exact_t
typedef V nbh
 Type of the iterator targeted elements.

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_ >

Detailed Description

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

Definition at line 92 of file graph_nbh_iter.hh.


Member Typedef Documentation

typedef Proxy<void> mln::Proxy< vertex_nbh_vertex_bkd_iterator< G > >::category [inherited]

Reimplemented from mln::Object< vertex_nbh_vertex_bkd_iterator< G > >.

Definition at line 234 of file core/concept/proxy.hh.

template<typename G >
typedef V mln::internal::vertex_nbh_vertex_bkd_iterator< G >::center

Type of the iterator center element.

Definition at line 105 of file graph_nbh_iter.hh.

Definition at line 173 of file object.hh.

template<typename G >
typedef V mln::internal::vertex_nbh_vertex_bkd_iterator< G >::nbh

Type of the iterator targeted elements.

Definition at line 107 of file graph_nbh_iter.hh.

Definition at line 100 of file graph_nbh_iter.hh.

template<typename G >
typedef nbh_iterator_base<G, V, V, self_> mln::internal::vertex_nbh_vertex_bkd_iterator< G >::super_ [private]

Definition at line 101 of file graph_nbh_iter.hh.

template<typename G >
typedef util::vertex<G> mln::internal::vertex_nbh_vertex_bkd_iterator< G >::V [private]

Definition at line 98 of file graph_nbh_iter.hh.


Constructor & Destructor Documentation

Construction and assignment.

Definition at line 377 of file graph_nbh_iter.hh.

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

Definition at line 384 of file graph_nbh_iter.hh.


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]

Definition at line 131 of file graph_nbh_iter.hh.


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]