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

mln::p_n_faces_fwd_piter< D, G > Class Template Reference

Forward iterator on the n-faces sites of an mln::p_complex<D, G>. More...

#include <p_n_faces_piter.hh>

Inheritance diagram for mln::p_n_faces_fwd_piter< D, G >:
Inheritance graph

List of all members.

Public Types

typedef Site_Proxy< void > category
typedef p_n_faces_fwd_piter< D, G > exact_t
typedef p_complex< D, G > pset
 The associated site set type.
typedef p_complex< D, G >::site site
 The associated site type (as a Site_Proxy).
typedef p_complex< D, G > target
 The associated target type.

Public Member Functions

void change_target (const p_complex< D, G > &s)
 Change the site set targeted by this iterator.
void invalidate ()
bool is_valid () const
void next ()
 Go to the next element.
const p_complex< D, G >::psite & p_hook_ () const
 Hook to the current location.
const p_complex< D, G > & site_set () const
 Give the site set that this iterator browses.
void start ()
const p_complex< D, G >::psite & subj_ ()
 Give the subject (required by the Proxy interface).
const p_complex< D, G > *& target_ ()
 Give the target address. It might be 0.
const p_complex< D, G >::siteto_site () const
 Return the site it points to (as a Site_Proxy).

 p_n_faces_fwd_piter ()
 Construction and assignment.
 p_n_faces_fwd_piter (const p_complex< D, G > &pc, unsigned n)

unsigned n () const
 Accessors.
void set_n (unsigned n)

bool is_valid_ () const
 Manipulation.
void invalidate_ ()
 Invalidate the iterator.
void start_ ()
 Start an iteration.
void next_ ()
 Go to the next point.
void change_target_ (const p_complex< D, G > &pc)
 Change the target of the underlying complex iterator.

Protected Attributes

iter iter_
 The underlying complex iterator.
p_complex< D, G >::psite p_
 The psite designated by this iterator.
const p_complex< D, G > * s_
 The target.

Private Types

typedef p_n_faces_fwd_piter< D, G > self_
typedef
internal::p_complex_piter_base_
< topo::n_face_fwd_iter< D >
, p_complex< D, G >, typename
G::site, self_
super_

Detailed Description

template<unsigned D, typename G>
class mln::p_n_faces_fwd_piter< D, G >

Forward iterator on the n-faces sites of an mln::p_complex<D, G>.

Definition at line 56 of file p_n_faces_piter.hh.


Member Typedef Documentation

typedef Site_Proxy<void> mln::Site_Proxy< p_n_faces_fwd_piter< D, G > >::category [inherited]

Reimplemented from mln::Proxy< p_n_faces_fwd_piter< D, G > >.

Definition at line 63 of file site_proxy.hh.

typedef p_n_faces_fwd_piter< D, G > mln::Object< p_n_faces_fwd_piter< D, G > >::exact_t [inherited]

Definition at line 173 of file object.hh.

typedef p_complex< D, G > mln::internal::site_set_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::pset [inherited]

The associated site set type.

Definition at line 57 of file site_set_iterator_base.hh.

template<unsigned D, typename G>
typedef p_n_faces_fwd_piter<D, G> mln::p_n_faces_fwd_piter< D, G >::self_ [private]
typedef p_complex< D, G > ::site mln::internal::site_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::site [inherited]

The associated site type (as a Site_Proxy).

Definition at line 64 of file site_iterator_base.hh.

template<unsigned D, typename G>
typedef internal::p_complex_piter_base_< topo::n_face_fwd_iter<D>, p_complex<D, G>, typename G ::site, self_ > mln::p_n_faces_fwd_piter< D, G >::super_ [private]
typedef p_complex< D, G > mln::internal::site_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::target [inherited]

The associated target type.

Definition at line 61 of file site_iterator_base.hh.


Constructor & Destructor Documentation

template<unsigned D, typename G >
mln::p_n_faces_fwd_piter< D, G >::p_n_faces_fwd_piter (  )  [inline]

Construction and assignment.

Definition at line 132 of file p_n_faces_piter.hh.

template<unsigned D, typename G >
mln::p_n_faces_fwd_piter< D, G >::p_n_faces_fwd_piter ( const p_complex< D, G > &  pc,
unsigned  n 
) [inline]

Definition at line 138 of file p_n_faces_piter.hh.

References mln::p_n_faces_fwd_piter< D, G >::set_n().


Member Function Documentation

void mln::internal::site_set_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::change_target ( const p_complex< D, G > &  s  )  [inherited]

Change the site set targeted by this iterator.

void mln::internal::p_complex_piter_base_< topo::n_face_fwd_iter< D > , p_complex< D, G > , G::site , p_n_faces_fwd_piter< D, G > >::change_target_ ( const p_complex< D, G > &  pc  )  [inherited]

Change the target of the underlying complex iterator.

Reimplemented from mln::internal::site_set_iterator_base< p_complex< D, G >, p_n_faces_fwd_piter< D, G > >.

void mln::Site_Iterator< p_n_faces_fwd_piter< D, G > >::invalidate (  )  [inherited]
void mln::internal::p_complex_piter_base_< topo::n_face_fwd_iter< D > , p_complex< D, G > , G::site , p_n_faces_fwd_piter< D, G > >::invalidate_ (  )  [inherited]

Invalidate the iterator.

bool mln::Site_Iterator< p_n_faces_fwd_piter< D, G > >::is_valid (  )  const [inherited]
bool mln::internal::p_complex_piter_base_< topo::n_face_fwd_iter< D > , p_complex< D, G > , G::site , p_n_faces_fwd_piter< D, G > >::is_valid_ (  )  const [inherited]

Manipulation.

Test if the iterator is valid.

template<unsigned D, typename G >
unsigned mln::p_n_faces_fwd_piter< D, G >::n (  )  const [inline]
void mln::Site_Iterator< p_n_faces_fwd_piter< D, G > >::next (  )  [inherited]

Go to the next element.

Warning:
This is a final method; iterator classes should not re-defined this method. The actual "next" operation has to be defined through the next_ method.
Precondition:
The iterator is valid.
void mln::internal::p_complex_piter_base_< topo::n_face_fwd_iter< D > , p_complex< D, G > , G::site , p_n_faces_fwd_piter< D, G > >::next_ (  )  [inherited]

Go to the next point.

const p_complex< D, G > ::psite& mln::internal::site_set_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::p_hook_ (  )  const [inherited]

Hook to the current location.

template<unsigned D, typename G >
void mln::p_n_faces_fwd_piter< D, G >::set_n ( unsigned  n  )  [inline]
const p_complex< D, G > & mln::internal::site_set_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::site_set (  )  const [inherited]

Give the site set that this iterator browses.

void mln::Site_Iterator< p_n_faces_fwd_piter< D, G > >::start (  )  [inherited]
void mln::internal::p_complex_piter_base_< topo::n_face_fwd_iter< D > , p_complex< D, G > , G::site , p_n_faces_fwd_piter< D, G > >::start_ (  )  [inherited]

Start an iteration.

const p_complex< D, G > ::psite& mln::internal::site_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::subj_ (  )  [inherited]

Give the subject (required by the Proxy interface).

const p_complex< D, G > *& mln::internal::site_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::target_ (  )  [inherited]

Give the target address. It might be 0.

const p_complex< D, G > ::site& mln::internal::site_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::to_site (  )  const [inherited]

Return the site it points to (as a Site_Proxy).


Member Data Documentation

iter mln::internal::p_complex_piter_base_< topo::n_face_fwd_iter< D > , p_complex< D, G > , G::site , p_n_faces_fwd_piter< D, G > >::iter_ [protected, inherited]

The underlying complex iterator.

Definition at line 100 of file p_complex_piter_base.hh.

Referenced by mln::p_n_faces_fwd_piter< D, G >::n(), and mln::p_n_faces_fwd_piter< D, G >::set_n().

p_complex< D, G > ::psite mln::internal::site_set_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::p_ [protected, inherited]

The psite designated by this iterator.

Definition at line 75 of file site_set_iterator_base.hh.

const p_complex< D, G > * mln::internal::site_iterator_base< p_complex< D, G > , p_n_faces_fwd_piter< D, G > >::s_ [protected, inherited]

The target.

Definition at line 90 of file site_iterator_base.hh.