$extrastylesheet
Olena  User documentation 2.1
An Image Processing Platform
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mln::p_mutable_array_of< S > Class Template Reference

#include <mln/core/site_set/p_mutable_array_of.hh>

Public Member Functions

 p_mutable_array_of ()
const util::array< S > & array_hook_ () const
void clear ()
bool has (const psite &p) const
void insert (const S &s)
bool is_empty () const
bool is_empty_ () const
bool is_valid () const
std::size_t memory_size () const
unsigned nelements () const
const S & operator[] (unsigned i) const
S & operator[] (unsigned i)
void reserve (unsigned n)
const util::array< S > & set_1_ () const
template<typename I >
const S & set_2_ (const I &it) const

Protected Attributes

util::array< S > arr_

Public Types

typedef p_double_piter< self_,
mln_bkd_eiter(array_),
typename S::bkd_piter > 
bkd_piter
typedef Site_Set< void > category
typedef S element
typedef p_mutable_array_of< S > exact_t
typedef p_double_piter< self_,
mln_fwd_eiter(array_),
typename S::fwd_piter > 
fwd_piter
typedef S i_element
typedef fwd_piter piter
typedef p_double_psite< self_,
element
psite
typedef subject< S::site >::ret site

Related Functions

(Note that these are not member functions.)

template<typename S >
std::ostream & operator<< (std::ostream &ostr, const p_mutable_array_of< S > &r)

Detailed Description

template<typename S>
class mln::p_mutable_array_of< S >

p_mutable_array_of is a mutable array of site sets.

Parameter S is the type of the contained site sets.

Definition at line 77 of file p_mutable_array_of.hh.

Constructor & Destructor Documentation

template<typename S >
mln::p_mutable_array_of< S >::p_mutable_array_of ( )

Constructor without arguments.

Member Function Documentation

template<typename S >
const util::array<S>& mln::p_mutable_array_of< S >::array_hook_ ( ) const

INTERNAL_API

Hook to the set of runs.

template<typename S >
void mln::p_mutable_array_of< S >::clear ( )

Clear this set.

template<typename S >
bool mln::p_mutable_array_of< S >::has ( const psite p) const

Test if p belongs to this point set.

template<typename S >
void mln::p_mutable_array_of< S >::insert ( const S &  s)

Insert a site set s.

Precondition
s is valid.
bool mln::internal::site_set_base_< S::site , p_mutable_array_of< S > >::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.

template<typename S >
bool mln::p_mutable_array_of< S >::is_empty_ ( ) const

INTERNAL_API Test if the site set is empty.

template<typename S >
bool mln::p_mutable_array_of< S >::is_valid ( ) const

Test this set validity so returns always true.

template<typename S >
std::size_t mln::p_mutable_array_of< S >::memory_size ( ) const

Return the size of this site set in memory.

template<typename S >
unsigned mln::p_mutable_array_of< S >::nelements ( ) const

Give the number of elements (site sets) of this composite.

template<typename S >
const S& mln::p_mutable_array_of< S >::operator[] ( unsigned  i) const

Return the i-th site set (const version).

template<typename S >
S& mln::p_mutable_array_of< S >::operator[] ( unsigned  i)

Return the i-th site set (mutable version).

template<typename S >
void mln::p_mutable_array_of< S >::reserve ( unsigned  n)

Reserve memory for n elements.

template<typename S >
const util::array<S>& mln::p_mutable_array_of< S >::set_1_ ( ) const
template<typename S >
template<typename I >
const S& mln::p_mutable_array_of< S >::set_2_ ( const I &  it) const

Friends And Related Function Documentation

template<typename S >
std::ostream & operator<< ( std::ostream &  ostr,
const p_mutable_array_of< S > &  r 
)
related

Member Data Documentation

template<typename S >
util::array<S> mln::p_mutable_array_of< S >::arr_
protected

Array of site sets.

Definition at line 164 of file p_mutable_array_of.hh.

Member Typedef Documentation

template<typename S >
typedef p_double_piter<self_, mln_bkd_eiter(array_), typename S ::bkd_piter> mln::p_mutable_array_of< S >::bkd_piter

Backward Site_Iterator associated type.

Definition at line 100 of file p_mutable_array_of.hh.

typedef Site_Set<void> mln::Site_Set< p_mutable_array_of< S > >::category
inherited

Definition at line 74 of file core/concept/site_set.hh.

template<typename S >
typedef S mln::p_mutable_array_of< S >::element

Element associated type.

Definition at line 86 of file p_mutable_array_of.hh.

typedef p_mutable_array_of< S > mln::Object< p_mutable_array_of< S > >::exact_t
inherited

Definition at line 105 of file object.hh.

template<typename S >
typedef p_double_piter<self_, mln_fwd_eiter(array_), typename S ::fwd_piter> mln::p_mutable_array_of< S >::fwd_piter

Forward Site_Iterator associated type.

Definition at line 95 of file p_mutable_array_of.hh.

template<typename S >
typedef S mln::p_mutable_array_of< S >::i_element

Insertion element associated type.

Definition at line 122 of file p_mutable_array_of.hh.

template<typename S >
typedef fwd_piter mln::p_mutable_array_of< S >::piter

Site_Iterator associated type.

Definition at line 103 of file p_mutable_array_of.hh.

template<typename S >
typedef p_double_psite<self_, element> mln::p_mutable_array_of< S >::psite

Psite associated type.

Definition at line 90 of file p_mutable_array_of.hh.

typedef subject<S::site >::ret mln::internal::site_set_base_< S::site , p_mutable_array_of< S > >::site
inherited

Site associated type.

Definition at line 58 of file site_set_base.hh.