Multi-set of sites. More...
#include <p_array.hh>

Public Types | |
| typedef p_indexed_bkd_piter < self_ > | bkd_piter |
| Backward Site_Iterator associated type. | |
| typedef Site_Set< void > | category |
| typedef P | element |
| Element associated type. | |
| typedef p_array< P > | exact_t |
| typedef p_indexed_fwd_piter < self_ > | fwd_piter |
| Forward Site_Iterator associated type. | |
| typedef P | i_element |
| Insertion element associated type. | |
| typedef fwd_piter | piter |
| Site_Iterator associated type. | |
| typedef p_indexed_psite< self_ > | psite |
| Psite associated type. | |
| typedef subject< P >::ret | site |
| Site associated type. | |
| typedef std::vector< P >::size_type | size_type |
Public Member Functions | |
| p_array< P > & | append (const P &p) |
Append a point p. | |
| p_array< P > & | append (const p_array< P > &other) |
Append an array other of points. | |
| void | change (const psite &p, const P &new_p) |
Change site p into new_p. | |
| void | clear () |
| Clear this set. | |
| bool | has (const util::index &i) const |
Test is index i belongs to this site set. | |
| bool | has (const psite &p) const |
Test is p belongs to this site set. | |
| std::vector< P > & | hook_std_vector_ () |
| Hook to the std::vector. | |
| void | insert (const P &p) |
Insert a point p (equivalent as 'append'). | |
| bool | is_empty () const |
| Test if the site set is empty. | |
| bool | is_valid () const |
| Test this set validity so returns always true. | |
| std::size_t | memory_size () const |
| Return the size of this site set in memory. | |
| unsigned | nsites () const |
| Give the number of sites. | |
| P & | operator[] (unsigned i) |
Return the i-th site (mutable). | |
| const P & | operator[] (const util::index &i) const |
| Return the i-th element. | |
| const P & | operator[] (unsigned i) const |
Return the i-th site (constant). | |
| p_array (const std::vector< P > &vect) | |
Constructor from a vector vect. | |
| p_array () | |
| Constructor. | |
| void | reserve (size_type n) |
Reserve n cells. | |
| const std::vector< P > & | std_vector () const |
| Return the corresponding std::vector of points. | |
Protected Attributes | |
| std::vector< P > | vect_ |
Private Types | |
| typedef p_array< P > | self_ |
Multi-set of sites.
Site set class based on std::vector.
| typedef p_indexed_bkd_piter<self_> mln::p_array< P >::bkd_piter |
Backward Site_Iterator associated type.
typedef Site_Set<void> mln::Site_Set< p_array< P > >::category [inherited] |
Reimplemented from mln::Object< p_array< P > >.
| typedef P mln::p_array< P >::element |
Element associated type.
typedef p_array< P > mln::Object< p_array< P > >::exact_t [inherited] |
| typedef p_indexed_fwd_piter<self_> mln::p_array< P >::fwd_piter |
Forward Site_Iterator associated type.
| typedef P mln::p_array< P >::i_element |
Insertion element associated type.
| typedef fwd_piter mln::p_array< P >::piter |
Site_Iterator associated type.
| typedef p_indexed_psite<self_> mln::p_array< P >::psite |
Psite associated type.
typedef p_array<P> mln::p_array< P >::self_ [private] |
typedef subject<P>::ret mln::internal::site_set_base_< P, p_array< P > >::site [inherited] |
Site associated type.
| typedef std::vector<P>::size_type mln::p_array< P >::size_type |
| mln::p_array< P >::p_array | ( | ) | [inline] |
Constructor.
| mln::p_array< P >::p_array | ( | const std::vector< P > & | vect | ) | [inline] |
Constructor from a vector vect.
| p_array< P > & mln::p_array< P >::append | ( | const P & | p | ) | [inline] |
Append a point p.
References mln::p_array< P >::vect_.
Referenced by mln::p_line2d::compute_(), mln::io::cloud::internal::load_data(), mln::registration::remove_too_far_sites(), and mln::convert::to_p_array().
| p_array< P > & mln::p_array< P >::append | ( | const p_array< P > & | other | ) | [inline] |
Append an array other of points.
References mln::p_array< P >::std_vector(), and mln::p_array< P >::vect_.
| void mln::p_array< P >::change | ( | const psite & | p, | |
| const P & | new_p | |||
| ) | [inline] |
Change site p into new_p.
References mln::p_array< P >::has(), mln::p_indexed_psite< S >::index(), and mln::p_array< P >::vect_.
| void mln::p_array< P >::clear | ( | ) | [inline] |
Clear this set.
References mln::internal::site_set_base_< P, p_array< P > >::is_empty(), and mln::p_array< P >::vect_.
| bool mln::p_array< P >::has | ( | const psite & | p | ) | const [inline] |
Test is p belongs to this site set.
References mln::p_indexed_psite< S >::index(), and mln::p_indexed_psite< S >::target_().
Referenced by mln::p_array< P >::change(), and mln::p_array< P >::operator[]().
| bool mln::p_array< P >::has | ( | const util::index & | i | ) | const [inline] |
Test is index i belongs to this site set.
References mln::p_array< P >::nsites().
| std::vector< P > & mln::p_array< P >::hook_std_vector_ | ( | ) | [inline] |
Hook to the std::vector.
References mln::p_array< P >::vect_.
Referenced by mln::data::impl::sort_psites_decreasing_(), and mln::data::impl::sort_psites_increasing_().
| void mln::p_array< P >::insert | ( | const P & | p | ) | [inline] |
Insert a point p (equivalent as 'append').
References mln::p_array< P >::vect_.
Referenced by mln::morpho::tree::data< I, S >::data().
| bool mln::internal::site_set_base_< P, p_array< P > >::is_empty | ( | ) | const [inherited] |
Test if the site set is empty.
This final method dispatches to is_empty_ whose default implementation relies on the 'nsites' method.
Referenced by mln::p_array< P >::clear(), mln::registration::icp(), and mln::registration::internal::registration_tests().
| bool mln::p_array< P >::is_valid | ( | ) | const [inline] |
Test this set validity so returns always true.
Referenced by mln::registration::internal::registration_tests().
| std::size_t mln::p_array< P >::memory_size | ( | ) | const [inline] |
Return the size of this site set in memory.
References mln::p_array< P >::nsites().
Referenced by mln::p_line2d::memory_size().
| unsigned mln::p_array< P >::nsites | ( | ) | const [inline] |
Give the number of sites.
References mln::p_array< P >::vect_.
Referenced by mln::p_line2d::compute_(), mln::registration::compute_distance_criteria(), mln::registration::compute_standard_deviation(), mln::morpho::tree::data< I, S >::data(), mln::registration::get_rot(), mln::registration::get_rtransf(), mln::p_array< P >::has(), mln::p_array< P >::memory_size(), mln::p_line2d::nsites(), mln::p_array< P >::operator[](), mln::registration::internal::rms(), mln::morpho::reconstruction::by_erosion::impl::generic::union_find(), and mln::morpho::reconstruction::by_dilation::impl::generic::union_find().
| P & mln::p_array< P >::operator[] | ( | unsigned | i | ) | [inline] |
Return the i-th site (mutable).
References mln::p_array< P >::nsites(), and mln::p_array< P >::vect_.
| const P & mln::p_array< P >::operator[] | ( | unsigned | i | ) | const [inline] |
Return the i-th site (constant).
References mln::p_array< P >::nsites(), and mln::p_array< P >::vect_.
| const P & mln::p_array< P >::operator[] | ( | const util::index & | i | ) | const [inline] |
Return the i-th element.
References mln::p_array< P >::has(), and mln::p_array< P >::vect_.
| void mln::p_array< P >::reserve | ( | size_type | n | ) | [inline] |
| const std::vector< P > & mln::p_array< P >::std_vector | ( | ) | const [inline] |
Return the corresponding std::vector of points.
References mln::p_array< P >::vect_.
Referenced by mln::p_array< P >::append(), and mln::p_line2d::std_vector().
std::vector<P> mln::p_array< P >::vect_ [protected] |
1.7.1