#include <graph_nbh_iter_base.hh>
Public Types | |
typedef Proxy< void > | category |
typedef E | exact_t |
Public Member Functions | |
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. | |
Elt::id_t | id () const |
Returns the element ID. | |
operator typename Elt::id_t () const | |
Conversion operator. Returns the element id. | |
operator typename Elt::id_value_t () const | |
Conversion operator. | |
const C & | center () const |
The psite around which this iterator moves. | |
template<typename S > | |
void | center_at (const p_indexed_psite< S > &c) |
Make c the center of this iterator. | |
template<typename C2 > | |
void | center_at (const C2 &c) |
void | change_target (const G &g) |
Change the graph targeted by this iterator. | |
const Elt & | element () const |
Return the underlying element. | |
const Elt & | elt_hook_ () const |
Hook to the current location. | |
const Elt & | subj_ () |
Proxy. | |
Protected Member Functions | |
nbh_iterator_base () | |
Construction and assignment. | |
template<typename C2 > | |
nbh_iterator_base (const C2 &c) | |
Protected Attributes | |
const C * | c_ |
Elt | elt_ |
unsigned | i_ |
typedef Proxy<void> mln::Proxy< E >::category [inherited] |
Reimplemented from mln::Object< E >.
Reimplemented in mln::Accumulator< E >, mln::Pseudo_Site< E >, mln::Site_Proxy< E >, mln::Accumulator< mean< T, S, M > >, mln::Accumulator< max_site< I > >, mln::Accumulator< val< A > >, mln::Accumulator< p< A > >, mln::Accumulator< histo< value::set< T > > >, mln::Accumulator< pair< A1, A2, T > >, mln::Accumulator< histo< S > >, mln::Accumulator< bbox< typename S::site > >, mln::Accumulator< sup< T > >, mln::Accumulator< histo< T > >, mln::Accumulator< var< T > >, mln::Accumulator< card< I > >, mln::Accumulator< bbox< typename Sc::site > >, mln::Accumulator< max_h< V > >, mln::Accumulator< count< T > >, mln::Accumulator< rank< T > >, mln::Accumulator< count_labels< L > >, mln::Accumulator< min< V > >, mln::Accumulator< height< I > >, mln::Accumulator< bbox< P > >, mln::Accumulator< lor >, mln::Accumulator< min_h< V > >, mln::Accumulator< histo< V > >, mln::Accumulator< median_alt< value::set< T > > >, mln::Accumulator< median_h< V > >, mln::Accumulator< min< T > >, mln::Accumulator< median_alt< S > >, mln::Accumulator< inf< T > >, mln::Accumulator< histo< typename I::value > >, mln::Accumulator< rank_high_quant< T > >, mln::Accumulator< count< P > >, mln::Accumulator< rank< bool > >, mln::Accumulator< center< P, V > >, mln::Accumulator< sum< T, S > >, mln::Accumulator< maj_h< T > >, mln::Accumulator< median_h< typename I::value > >, mln::Accumulator< count_adjacent_vertices< F, S > >, mln::Accumulator< rms< T, V > >, mln::Accumulator< sum< I, S > >, mln::Accumulator< tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >, mln::Accumulator< nil< T > >, mln::Accumulator< max< V > >, mln::Accumulator< volume< I > >, mln::Accumulator< lor_basic >, mln::Accumulator< variance< T, S, R > >, mln::Accumulator< sharpness< I > >, mln::Accumulator< count_value< V > >, mln::Accumulator< land_basic >, mln::Accumulator< count_adjacent_vertices< I > >, mln::Accumulator< land >, mln::Accumulator< convolve< T1, T2, R > >, mln::Accumulator< rectangularity< P > >, mln::Accumulator< label_used< L > >, mln::Accumulator< pair< min< V >, max< V >, mln_argument(min< V >) > >, mln::Accumulator< max< T > >, mln::Accumulator< deviation< T, S, M > >, mln::Pseudo_Site< complex_psite< D, G > >, mln::Pseudo_Site< p_edges_psite< G, F > >, mln::Pseudo_Site< p_indexed_psite< S > >, mln::Pseudo_Site< p_double_psite< S, Sp > >, mln::Pseudo_Site< faces_psite< N, D, P > >, mln::Pseudo_Site< p_run_psite< P > >, mln::Pseudo_Site< p_vertices_psite< G, F > >, mln::Site_Proxy< p_complex_faces_fwd_piter_< N, D, P > >, mln::Site_Proxy< up_node_piter< T > >, mln::Site_Proxy< p_faces_bkd_piter_< N, D, P > >, mln::Site_Proxy< neighb_bkd_niter< W > >, mln::Site_Proxy< complex_psite< D, G > >, mln::Site_Proxy< p_edges_psite< G, F > >, mln::Site_Proxy< p_n_faces_bkd_piter< D, P > >, mln::Site_Proxy< p_n_faces_fwd_piter< D, P > >, mln::Site_Proxy< dn_leaf_piter< T > >, mln::Site_Proxy< p_run_bkd_piter_< P > >, mln::Site_Proxy< p_run_fwd_piter_< P > >, mln::Site_Proxy< p_indexed_psite< S > >, mln::Site_Proxy< dn_site_piter< T > >, mln::Site_Proxy< graph_window_if_piter< S, W, I > >, mln::Site_Proxy< p_indexed_fwd_piter< S > >, mln::Site_Proxy< p_transformed_piter< Pi, S, F > >, mln::Site_Proxy< multiple_size_qiter< n, W, F > >, mln::Site_Proxy< p_complex_faces_bkd_piter_< N, D, P > >, mln::Site_Proxy< p_double_psite< S, Sp > >, mln::Site_Proxy< graph_window_piter< S, W, I > >, mln::Site_Proxy< faces_psite< N, D, P > >, mln::Site_Proxy< p_faces_fwd_piter_< N, D, P > >, mln::Site_Proxy< p_graph_piter< S, I > >, mln::Site_Proxy< box_runstart_piter< P > >, mln::Site_Proxy< depth1st_piter< T > >, mln::Site_Proxy< p_run_psite< P > >, mln::Site_Proxy< neighb_fwd_niter< W > >, mln::Site_Proxy< dn_node_piter< T > >, mln::Site_Proxy< p_complex_fwd_piter_< D, G > >, mln::Site_Proxy< up_site_piter< T > >, mln::Site_Proxy< complex_window_fwd_piter< I, G, W > >, mln::Site_Proxy< p_centered_piter< W > >, mln::Site_Proxy< p_complex_bkd_piter_< D, G > >, mln::Site_Proxy< box_bkd_piter_< P > >, mln::Site_Proxy< complex_window_bkd_piter< I, G, W > >, mln::Site_Proxy< box_fwd_piter_< P > >, mln::Site_Proxy< complex_neighborhood_fwd_piter< I, G, N > >, mln::Site_Proxy< multiple_qiter< W, F > >, mln::Site_Proxy< complex_neighborhood_bkd_piter< I, G, N > >, mln::Site_Proxy< p_indexed_bkd_piter< S > >, mln::Site_Proxy< dpsites_bkd_piter< V > >, mln::Site_Proxy< p_double_piter< S, I1, I2 > >, mln::Site_Proxy< hexa_fwd_piter_< S > >, mln::Site_Proxy< up_leaf_piter< T > >, mln::Site_Proxy< dpsites_fwd_piter< V > >, mln::Site_Proxy< p_vertices_psite< G, F > >, and mln::Site_Proxy< p_if_piter_< Pi, S, F > >.
typedef E mln::Object< E >::exact_t [inherited] |
mln::internal::nbh_iterator_base< G, C, Elt, E >::nbh_iterator_base | ( | ) | [inline, protected] |
Construction and assignment.
mln::internal::nbh_iterator_base< G, C, Elt, E >::nbh_iterator_base | ( | const C2 & | c | ) | [inline, protected] |
const C & mln::internal::nbh_iterator_base< G, C, Elt, E >::center | ( | ) | const [inline] |
The psite around which this iterator moves.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::c_.
void mln::internal::nbh_iterator_base< G, C, Elt, E >::center_at | ( | const p_indexed_psite< S > & | c | ) | [inline] |
Make c
the center of this iterator.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::c_, mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_, and mln::internal::nbh_iterator_base< G, C, Elt, E >::invalidate().
Referenced by mln::internal::nbh_iterator_base< G, C, Elt, E >::nbh_iterator_base().
void mln::internal::nbh_iterator_base< G, C, Elt, E >::center_at | ( | const C2 & | c | ) | [inline] |
void mln::internal::nbh_iterator_base< G, C, Elt, E >::change_target | ( | const G & | g | ) | [inline] |
Change the graph targeted by this iterator.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_.
const Elt & mln::internal::nbh_iterator_base< G, C, Elt, E >::element | ( | ) | const [inline] |
Return the underlying element.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_.
const Elt & mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_hook_ | ( | ) | const [inline] |
Hook to the current location.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_.
Elt::id_t mln::internal::nbh_iterator_base< G, C, Elt, E >::id | ( | ) | const [inline] |
Returns the element ID.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_.
unsigned mln::internal::nbh_iterator_base< G, C, Elt, E >::index | ( | ) | const [inline] |
Return current index.
(The current element is the i-th neighbor)
References mln::internal::nbh_iterator_base< G, C, Elt, E >::i_.
void mln::internal::nbh_iterator_base< G, C, Elt, E >::invalidate | ( | ) | [inline] |
Invalidate the iterator.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::i_.
Referenced by mln::internal::nbh_iterator_base< G, C, Elt, E >::center_at().
bool mln::internal::nbh_iterator_base< G, C, Elt, E >::is_valid | ( | ) | const [inline] |
Iterator interface.
Test if the iterator is valid.
References mln::exact().
Referenced by mln::internal::nbh_iterator_base< G, C, Elt, E >::next(), and mln::internal::nbh_iterator_base< G, C, Elt, E >::start().
void mln::internal::nbh_iterator_base< G, C, Elt, E >::next | ( | ) | [inline] |
Go to the next value.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::c_, mln::exact(), mln::internal::nbh_iterator_base< G, C, Elt, E >::i_, and mln::internal::nbh_iterator_base< G, C, Elt, E >::is_valid().
mln::internal::nbh_iterator_base< G, C, Elt, E >::operator typename Elt::id_t | ( | ) | const [inline] |
Conversion operator. Returns the element id.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_.
mln::internal::nbh_iterator_base< G, C, Elt, E >::operator typename Elt::id_value_t | ( | ) | const [inline] |
Conversion operator.
Returns the element id. FIXME: May cause ambiguities.
References mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_.
void mln::internal::nbh_iterator_base< G, C, Elt, E >::start | ( | ) | [inline] |
Start an iteration.
References mln::exact(), mln::internal::nbh_iterator_base< G, C, Elt, E >::i_, and mln::internal::nbh_iterator_base< G, C, Elt, E >::is_valid().
const Elt & mln::internal::nbh_iterator_base< G, C, Elt, E >::subj_ | ( | ) | [inline] |
const C* mln::internal::nbh_iterator_base< G, C, Elt, E >::c_ [protected] |
Elt mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_ [protected] |
Referenced by mln::internal::nbh_iterator_base< G, C, Elt, E >::center_at(), mln::internal::nbh_iterator_base< G, C, Elt, E >::change_target(), mln::internal::nbh_iterator_base< G, C, Elt, E >::element(), mln::internal::nbh_iterator_base< G, C, Elt, E >::elt_hook_(), mln::internal::nbh_iterator_base< G, C, Elt, E >::id(), mln::internal::nbh_iterator_base< G, C, Elt, E >::operator typename Elt::id_t(), mln::internal::nbh_iterator_base< G, C, Elt, E >::operator typename Elt::id_value_t(), and mln::internal::nbh_iterator_base< G, C, Elt, E >::subj_().
unsigned mln::internal::nbh_iterator_base< G, C, Elt, E >::i_ [protected] |