#include <box_piter.hh>
Public Types | |
enum | { dim = P::dim } |
typedef Site_Proxy< void > | category |
typedef E | exact_t |
typedef S | pset |
The associated site set type. | |
typedef S::site | site |
The associated site type (as a Site_Proxy). | |
typedef S | target |
The associated target type. | |
Public Member Functions | |
box_bkd_piter_ (const box< P > &b) | |
Constructor. | |
box_bkd_piter_ () | |
Constructor without argument. | |
void | change_target (const S &s) |
Change the site set targeted by this iterator. | |
void | change_target_ (const S &s) |
Part of the change_target specific to the exact iterator type, empty by default (to be overloaded). | |
void | invalidate () |
void | invalidate_ () |
Invalidate the iterator. | |
bool | is_valid () const |
bool | is_valid_ () const |
Test the iterator validity. | |
void | next () |
Go to the next element. | |
void | next_ () |
Go to the next point. | |
const S::psite & | p_hook_ () const |
Hook to the current location. | |
const S & | site_set () const |
Give the site set that this iterator browses. | |
void | start () |
void | start_ () |
Start an iteration. | |
const S::psite & | subj_ () |
Give the subject (required by the Proxy interface). | |
const S *& | target_ () |
Give the target address. It might be 0. | |
const S::site & | to_site () const |
Return the site it points to (as a Site_Proxy). | |
Protected Attributes | |
S::psite | p_ |
The psite designated by this iterator. | |
const S * | s_ |
The target. | |
Package Attributes | |
__pad0__:site_set_iterator_base< box<P> | |
self_ | super_ |
Private Types | |
typedef box_bkd_piter_< P > | self_ |
The parameter P
is the type of points.
Definition at line 94 of file box_piter.hh.
typedef Site_Proxy<void> mln::Site_Proxy< E >::category [inherited] |
Reimplemented from mln::Proxy< E >.
Reimplemented in mln::Pseudo_Site< E >, mln::Pseudo_Site< mln::p_run_psite< P > >, mln::Pseudo_Site< mln::p_indexed_psite< S > >, mln::Pseudo_Site< mln::p_vertices_psite< G, F > >, mln::Pseudo_Site< mln::faces_psite< N, D, P > >, mln::Pseudo_Site< mln::complex_psite< D, G > >, mln::Pseudo_Site< mln::p_double_psite< S, Sp > >, and mln::Pseudo_Site< mln::p_edges_psite< G, F > >.
Definition at line 63 of file site_proxy.hh.
typedef E mln::Object< E >::exact_t [inherited] |
typedef S mln::internal::site_set_iterator_base< S, E >::pset [inherited] |
typedef box_bkd_piter_<P> mln::box_bkd_piter_< P >::self_ [private] |
Definition at line 97 of file box_piter.hh.
typedef S ::site mln::internal::site_iterator_base< S, E >::site [inherited] |
typedef S mln::internal::site_iterator_base< S, E >::target [inherited] |
anonymous enum |
mln::box_bkd_piter_< P >::box_bkd_piter_ | ( | ) | [inline] |
mln::box_bkd_piter_< P >::box_bkd_piter_ | ( | const box< P > & | b | ) | [inline] |
Constructor.
[in] | b | A box. |
Definition at line 219 of file box_piter.hh.
References mln::internal::site_set_iterator_base< S, E >::change_target().
void mln::internal::site_set_iterator_base< S, E >::change_target | ( | const S & | s | ) | [inline, inherited] |
Change the site set targeted by this iterator.
Reimplemented in mln::p_double_piter< S, I1, I2 >.
Definition at line 102 of file site_set_iterator_base.hh.
References mln::if_possible::change_target(), mln::exact(), mln::Site_Iterator< E >::invalidate(), and mln::internal::site_iterator_base< S, E >::s_.
Referenced by mln::box_bkd_piter_< P >::box_bkd_piter_(), mln::box_fwd_piter_< P >::box_fwd_piter_(), mln::morpho::tree::depth1st_piter< T >::depth1st_piter(), mln::box_runstart_piter< P >::init_(), mln::box_runend_piter< P >::init_(), mln::p_centered_piter< W >::p_centered_piter(), mln::internal::p_complex_piter_base_< I, S, P, E >::p_complex_piter_base_(), mln::p_graph_piter< S, I >::p_graph_piter(), mln::p_indexed_bkd_piter< S >::p_indexed_bkd_piter(), mln::p_indexed_fwd_piter< S >::p_indexed_fwd_piter(), mln::p_run_bkd_piter_< P >::p_run_bkd_piter_(), and mln::p_run_fwd_piter_< P >::p_run_fwd_piter_().
void mln::internal::site_set_iterator_base< S, E >::change_target_ | ( | const S & | s | ) | [inline, inherited] |
Part of the change_target specific to the exact iterator type, empty by default (to be overloaded).
Reimplemented in mln::internal::p_complex_piter_base_< I, S, P, E >, mln::internal::p_complex_piter_base_< mln::topo::n_face_fwd_iter< D >, mln::p_complex< D, P >, P, mln::p_n_faces_fwd_piter< D, P > >, mln::internal::p_complex_piter_base_< mln::topo::face_bkd_iter< D >, mln::p_complex< D, G >, G::site, mln::p_complex_bkd_piter_< D, G > >, mln::internal::p_complex_piter_base_< mln::topo::faces_bkd_iter_< N, D >, mln::p_complex< D, P >, P, mln::p_complex_faces_bkd_piter_< N, D, P > >, mln::internal::p_complex_piter_base_< mln::topo::n_face_bkd_iter< D >, mln::p_complex< D, P >, P, mln::p_n_faces_bkd_piter< D, P > >, mln::internal::p_complex_piter_base_< mln::topo::face_fwd_iter< D >, mln::p_complex< D, G >, G::site, mln::p_complex_fwd_piter_< D, G > >, mln::internal::p_complex_piter_base_< mln::topo::faces_bkd_iter_< N, D >, mln::p_faces< N, D, P >, P, mln::p_faces_bkd_piter_< N, D, P > >, mln::internal::p_complex_piter_base_< mln::topo::faces_fwd_iter_< N, D >, mln::p_faces< N, D, P >, P, mln::p_faces_fwd_piter_< N, D, P > >, and mln::internal::p_complex_piter_base_< mln::topo::faces_fwd_iter_< N, D >, mln::p_complex< D, P >, P, mln::p_complex_faces_fwd_piter_< N, D, P > >.
Definition at line 117 of file site_set_iterator_base.hh.
void mln::Site_Iterator< E >::invalidate | ( | ) | [inline, inherited] |
Definition at line 112 of file site_iterator.hh.
References mln::exact(), and mln::Site_Iterator< E >::is_valid().
Referenced by mln::internal::site_relative_iterator_base< S, E, C >::center_at(), mln::internal::site_set_iterator_base< S, E >::change_target(), mln::internal::site_relative_iterator_base< S, E, C >::change_target(), mln::internal::piter_adaptor_< Pi, S, E >::change_target(), mln::p_transformed_piter< Pi, S, F >::change_target(), and mln::morpho::tree::depth1st_piter< T >::start_().
void mln::box_bkd_piter_< P >::invalidate_ | ( | ) | [inline] |
Invalidate the iterator.
Definition at line 235 of file box_piter.hh.
References mln::internal::site_set_iterator_base< S, E >::p_, and mln::internal::site_iterator_base< S, E >::s_.
Referenced by mln::box_bkd_piter_< P >::next_().
bool mln::Site_Iterator< E >::is_valid | ( | ) | const [inline, inherited] |
Definition at line 101 of file site_iterator.hh.
References mln::exact().
Referenced by mln::graph_window_piter< S, W, I >::init_(), mln::graph_window_if_piter< S, W, I >::init_(), mln::complex_window_bkd_piter< I, G, W >::init_(), mln::complex_window_fwd_piter< I, G, W >::init_(), mln::complex_neighborhood_bkd_piter< I, G, N >::init_(), mln::complex_neighborhood_fwd_piter< I, G, N >::init_(), mln::Site_Iterator< E >::invalidate(), mln::Site_Iterator< E >::next(), mln::internal::site_relative_iterator_base< S, E, C >::next_(), mln::p_graph_piter< S, I >::next_(), mln::internal::p_complex_piter_base_< I, S, P, E >::next_(), mln::morpho::tree::depth1st_piter< T >::next_(), mln::internal::p_complex_piter_base_< I, S, P, E >::p_complex_piter_base_(), mln::p_graph_piter< S, I >::p_graph_piter(), mln::internal::site_relative_iterator_base< S, E, C >::start_(), mln::p_graph_piter< S, I >::start_(), mln::internal::p_complex_piter_base_< I, S, P, E >::start_(), mln::internal::site_relative_iterator_base< S, E, C >::update(), mln::p_graph_piter< S, I >::update_(), and mln::internal::p_complex_piter_base_< I, S, P, E >::update_().
bool mln::box_bkd_piter_< P >::is_valid_ | ( | ) | const [inline] |
Test the iterator validity.
Definition at line 227 of file box_piter.hh.
References mln::internal::site_set_iterator_base< S, E >::p_, and mln::internal::site_iterator_base< S, E >::s_.
void mln::Site_Iterator< E >::next | ( | ) | [inline, inherited] |
Go to the next element.
Definition at line 92 of file site_iterator.hh.
References mln::exact(), and mln::Site_Iterator< E >::is_valid().
Referenced by mln::morpho::tree::depth1st_piter< T >::start_().
void mln::box_bkd_piter_< P >::next_ | ( | ) | [inline] |
Go to the next point.
Definition at line 251 of file box_piter.hh.
References mln::box_bkd_piter_< P >::dim, mln::box_bkd_piter_< P >::invalidate_(), mln::internal::site_set_iterator_base< S, E >::p_, and mln::internal::site_iterator_base< S, E >::s_.
const S::psite & mln::internal::site_set_iterator_base< S, E >::p_hook_ | ( | ) | const [inline, inherited] |
const S & mln::internal::site_set_iterator_base< S, E >::site_set | ( | ) | const [inline, inherited] |
Give the site set that this iterator browses.
Definition at line 93 of file site_set_iterator_base.hh.
References mln::internal::site_iterator_base< S, E >::s_.
Referenced by mln::p_graph_piter< S, I >::graph(), and mln::internal::p_complex_piter_base_< I, S, P, E >::update_().
void mln::Site_Iterator< E >::start | ( | ) | [inline, inherited] |
Reimplemented in mln::hexa_fwd_piter_< S >.
Definition at line 123 of file site_iterator.hh.
References mln::exact().
void mln::box_bkd_piter_< P >::start_ | ( | ) | [inline] |
Start an iteration.
Definition at line 243 of file box_piter.hh.
References mln::internal::site_set_iterator_base< S, E >::p_, and mln::internal::site_iterator_base< S, E >::s_.
const S::psite & mln::internal::site_iterator_base< S, E >::subj_ | ( | ) | [inline, inherited] |
Give the subject (required by the Proxy interface).
Reimplemented in mln::internal::site_relative_iterator_base< S, E, C >, mln::internal::site_relative_iterator_base< N, mln::complex_neighborhood_fwd_piter< I, G, N > >, mln::internal::site_relative_iterator_base< V, mln::dpsites_bkd_piter< V > >, mln::internal::site_relative_iterator_base< W, mln::graph_window_if_piter< S, W, I > >, mln::internal::site_relative_iterator_base< mln::mixed_neighb< W >, mln::neighb_fwd_niter< W >, mln::mixed_neighb< W >::psite >, mln::internal::site_relative_iterator_base< V, mln::dpsites_fwd_piter< V > >, mln::internal::site_relative_iterator_base< mln::win::multiple< W, F >, mln::win::multiple_qiter< W, F > >, mln::internal::site_relative_iterator_base< W, mln::complex_window_bkd_piter< I, G, W > >, mln::internal::site_relative_iterator_base< N, mln::complex_neighborhood_bkd_piter< I, G, N > >, mln::internal::site_relative_iterator_base< mln::neighb< W >, mln::neighb_fwd_niter< W >, mln::neighb< W >::psite >, mln::internal::site_relative_iterator_base< mln::win::multiple_size< n, W, F >, mln::win::multiple_size_qiter< n, W, F > >, mln::internal::site_relative_iterator_base< W, mln::graph_window_piter< S, W, I >, W::center_t >, mln::internal::site_relative_iterator_base< N, E, N::psite >, mln::internal::site_relative_iterator_base< W, mln::complex_window_fwd_piter< I, G, W > >, mln::internal::site_relative_iterator_base< mln::mixed_neighb< W >, mln::neighb_bkd_niter< W >, mln::mixed_neighb< W >::psite >, and mln::internal::site_relative_iterator_base< mln::neighb< W >, mln::neighb_bkd_niter< W >, mln::neighb< W >::psite >.
Definition at line 119 of file site_iterator_base.hh.
References mln::exact().
const S *& mln::internal::site_iterator_base< S, E >::target_ | ( | ) | [inline, inherited] |
const S::site & mln::internal::site_iterator_base< S, E >::to_site | ( | ) | const [inline, inherited] |
Return the site it points to (as a Site_Proxy).
Definition at line 110 of file site_iterator_base.hh.
References mln::exact().
mln::box_bkd_piter_< P >::__pad0__ [package] |
Definition at line 98 of file box_piter.hh.
S ::psite mln::internal::site_set_iterator_base< S, E >::p_ [protected, inherited] |
The psite designated by this iterator.
Definition at line 75 of file site_set_iterator_base.hh.
Referenced by mln::p_indexed_bkd_piter< S >::index(), mln::p_indexed_fwd_piter< S >::index(), mln::p_run_bkd_piter_< P >::invalidate_(), mln::p_run_fwd_piter_< P >::invalidate_(), mln::p_indexed_bkd_piter< S >::invalidate_(), mln::p_indexed_fwd_piter< S >::invalidate_(), mln::box_runstart_piter< P >::invalidate_(), mln::box_runend_piter< P >::invalidate_(), mln::box_bkd_piter_< P >::invalidate_(), mln::box_fwd_piter_< P >::invalidate_(), mln::p_run_bkd_piter_< P >::is_valid_(), mln::p_run_fwd_piter_< P >::is_valid_(), mln::p_indexed_bkd_piter< S >::is_valid_(), mln::p_indexed_fwd_piter< S >::is_valid_(), mln::box_runstart_piter< P >::is_valid_(), mln::box_runend_piter< P >::is_valid_(), mln::box_bkd_piter_< P >::is_valid_(), mln::box_fwd_piter_< P >::is_valid_(), mln::p_transformed_piter< Pi, S, F >::next_(), mln::p_run_bkd_piter_< P >::next_(), mln::p_run_fwd_piter_< P >::next_(), mln::p_double_piter< S, I1, I2 >::next_(), mln::p_centered_piter< W >::next_(), mln::p_indexed_bkd_piter< S >::next_(), mln::p_indexed_fwd_piter< S >::next_(), mln::morpho::tree::depth1st_piter< T >::next_(), mln::box_runstart_piter< P >::next_(), mln::box_runend_piter< P >::next_(), mln::box_bkd_piter_< P >::next_(), mln::box_fwd_piter_< P >::next_(), mln::p_double_piter< S, I1, I2 >::progress_(), mln::morpho::tree::depth1st_piter< T >::skip_children(), mln::p_transformed_piter< Pi, S, F >::start_(), mln::p_run_bkd_piter_< P >::start_(), mln::p_run_fwd_piter_< P >::start_(), mln::p_double_piter< S, I1, I2 >::start_(), mln::p_centered_piter< W >::start_(), mln::p_indexed_bkd_piter< S >::start_(), mln::p_indexed_fwd_piter< S >::start_(), mln::box_runstart_piter< P >::start_(), mln::box_runend_piter< P >::start_(), mln::box_bkd_piter_< P >::start_(), mln::box_fwd_piter_< P >::start_(), mln::p_graph_piter< S, I >::update_(), and mln::internal::p_complex_piter_base_< I, S, P, E >::update_().
const S* mln::internal::site_iterator_base< S, E >::s_ [protected, inherited] |
The target.
Reimplemented in mln::graph_window_piter< S, W, I >.
Definition at line 90 of file site_iterator_base.hh.
Referenced by mln::internal::site_set_iterator_base< S, E >::change_target(), mln::internal::site_relative_iterator_base< S, E, C >::change_target(), mln::internal::piter_adaptor_< Pi, S, E >::change_target(), mln::p_transformed_piter< Pi, S, F >::change_target(), mln::win::multiple_size_qiter< n, W, F >::compute_p_(), mln::win::multiple_qiter< W, F >::compute_p_(), mln::dpsites_bkd_piter< V >::compute_p_(), mln::dpsites_fwd_piter< V >::compute_p_(), mln::dpsites_bkd_piter< V >::do_start_(), mln::p_run_fwd_piter_< P >::invalidate_(), mln::p_indexed_fwd_piter< S >::invalidate_(), mln::dpsites_fwd_piter< V >::invalidate_(), mln::box_runstart_piter< P >::invalidate_(), mln::box_runend_piter< P >::invalidate_(), mln::box_bkd_piter_< P >::invalidate_(), mln::box_fwd_piter_< P >::invalidate_(), mln::p_run_bkd_piter_< P >::is_valid_(), mln::p_run_fwd_piter_< P >::is_valid_(), mln::p_indexed_bkd_piter< S >::is_valid_(), mln::p_indexed_fwd_piter< S >::is_valid_(), mln::dpsites_fwd_piter< V >::is_valid_(), mln::box_runstart_piter< P >::is_valid_(), mln::box_runend_piter< P >::is_valid_(), mln::box_bkd_piter_< P >::is_valid_(), mln::box_fwd_piter_< P >::is_valid_(), mln::p_transformed_piter< Pi, S, F >::next_(), mln::p_if_piter_< Pi, S, F >::next_(), mln::morpho::tree::depth1st_piter< T >::next_(), mln::box_runstart_piter< P >::next_(), mln::box_runend_piter< P >::next_(), mln::box_bkd_piter_< P >::next_(), mln::box_fwd_piter_< P >::next_(), mln::p_double_piter< S, I1, I2 >::progress_(), mln::box_runstart_piter< P >::run_length(), mln::box_runend_piter< P >::run_length(), mln::internal::site_set_iterator_base< S, E >::site_set(), mln::internal::site_relative_iterator_base< S, E, C >::site_set(), mln::win::multiple_size_qiter< n, W, F >::size_(), mln::morpho::tree::depth1st_piter< T >::skip_children(), mln::p_transformed_piter< Pi, S, F >::start_(), mln::p_run_bkd_piter_< P >::start_(), mln::p_if_piter_< Pi, S, F >::start_(), mln::p_double_piter< S, I1, I2 >::start_(), mln::p_indexed_bkd_piter< S >::start_(), mln::morpho::tree::depth1st_piter< T >::start_(), mln::box_runstart_piter< P >::start_(), mln::box_runend_piter< P >::start_(), mln::box_bkd_piter_< P >::start_(), mln::box_fwd_piter_< P >::start_(), and mln::internal::site_relative_iterator_base< S, E, C >::update().
self_ mln::box_bkd_piter_< P >::super_ [package] |
Reimplemented from mln::internal::site_iterator_base< S, E >.
Definition at line 98 of file box_piter.hh.