Public Types | Public Member Functions | Private Attributes

mln::p_faces< N, D, P > Struct Template Reference
[Graph based]

A complex psite set based on a the N-faces of a complex of dimension D (a D-complex). More...

#include <p_faces.hh>

Inheritance diagram for mln::p_faces< N, D, P >:
Inheritance graph

List of all members.

Public Types

typedef Site_Set< void > category
typedef p_faces< N, D, P > exact_t
typedef p_faces< N, D, P > self_
typedef subject< faces_psite
< N, D, P > >::ret 
site
 Site associated type.
typedef
internal::site_set_base_
< faces_psite< N, D, P >
, self_
super_

typedef super_::site element
 Associated types.
typedef faces_psite< N, D, P > psite
 Point_Site associated type.
typedef p_faces_fwd_piter_< N,
D, P > 
fwd_piter
 Forward Site_Iterator associated type.
typedef p_faces_bkd_piter_< N,
D, P > 
bkd_piter
 Backward Site_Iterator associated type.
typedef fwd_piter piter
 Site_Iterator associated type.

Public Member Functions

bool has (const psite &p) const
bool is_empty () const
 Test if the site set is empty.
bool is_valid () const
 Is this site set valid?
std::size_t memory_size () const
unsigned nfaces () const
 Return The number of faces in the complex.
unsigned nsites () const
 Return The number of sites of the set, i.e., the number of faces.
 p_faces (const topo::complex< D > &cplx)
 Construct a faces psite set from an mln::complex.
 p_faces (const p_complex< D, P > &pc)
 Construct a faces psite set from an mln::p_complex.

topo::complex< D > & cplx () const
 Accessors.
topo::complex< D > & cplx ()
 Return the complex associated to the p_faces domain (mutable version).

Private Attributes

topo::complex< D > cplx_
 The complex on which this pset is built.

Detailed Description

template<unsigned N, unsigned D, typename P>
struct mln::p_faces< N, D, P >

A complex psite set based on a the N-faces of a complex of dimension D (a D-complex).

Definition at line 77 of file p_faces.hh.


Member Typedef Documentation

template<unsigned N, unsigned D, typename P>
typedef p_faces_bkd_piter_<N, D, P> mln::p_faces< N, D, P >::bkd_piter

Backward Site_Iterator associated type.

Definition at line 110 of file p_faces.hh.

typedef Site_Set<void> mln::Site_Set< p_faces< N, D, P > >::category [inherited]

Reimplemented from mln::Object< p_faces< N, D, P > >.

Definition at line 67 of file mln/core/concept/site_set.hh.

template<unsigned N, unsigned D, typename P>
typedef super_ ::site mln::p_faces< N, D, P >::element

Associated types.

Element associated type.

Definition at line 99 of file p_faces.hh.

typedef p_faces< N, D, P > mln::Object< p_faces< N, D, P > >::exact_t [inherited]

Definition at line 173 of file object.hh.

template<unsigned N, unsigned D, typename P>
typedef p_faces_fwd_piter_<N, D, P> mln::p_faces< N, D, P >::fwd_piter

Forward Site_Iterator associated type.

Definition at line 106 of file p_faces.hh.

template<unsigned N, unsigned D, typename P>
typedef fwd_piter mln::p_faces< N, D, P >::piter

Site_Iterator associated type.

Definition at line 113 of file p_faces.hh.

template<unsigned N, unsigned D, typename P>
typedef faces_psite<N, D, P> mln::p_faces< N, D, P >::psite

Point_Site associated type.

Definition at line 102 of file p_faces.hh.

template<unsigned N, unsigned D, typename P>
typedef p_faces<N, D, P> mln::p_faces< N, D, P >::self_

Definition at line 81 of file p_faces.hh.

typedef subject<faces_psite< N, D, P > >::ret mln::internal::site_set_base_< faces_psite< N, D, P > , p_faces< N, D, P > >::site [inherited]

Site associated type.

Definition at line 55 of file site_set_base.hh.

template<unsigned N, unsigned D, typename P>
typedef internal::site_set_base_< faces_psite<N, D, P>, self_ > mln::p_faces< N, D, P >::super_

Definition at line 82 of file p_faces.hh.


Constructor & Destructor Documentation

template<unsigned N, unsigned D, typename P >
mln::p_faces< N, D, P >::p_faces ( const topo::complex< D > &  cplx  )  [inline]

Construct a faces psite set from an mln::complex.

Parameters:
cplx The complex upon which the complex psite set is built.

Definition at line 192 of file p_faces.hh.

template<unsigned N, unsigned D, typename P >
mln::p_faces< N, D, P >::p_faces ( const p_complex< D, P > &  pc  )  [inline]

Construct a faces psite set from an mln::p_complex.

Parameters:
pc The complex upon which the complex psite set is built.
Todo:
When available, get location information from pc.

Definition at line 201 of file p_faces.hh.


Member Function Documentation

template<unsigned N, unsigned D, typename P >
topo::complex< D > & mln::p_faces< N, D, P >::cplx (  )  const

Accessors.

Return the complex associated to the p_faces domain (const version).

Definition at line 257 of file p_faces.hh.

References mln::p_faces< N, D, P >::is_valid().

Referenced by mln::faces_psite< N, D, P >::change_target(), and mln::operator==().

template<unsigned N, unsigned D, typename P >
topo::complex< D > & mln::p_faces< N, D, P >::cplx (  ) 

Return the complex associated to the p_faces domain (mutable version).

Definition at line 265 of file p_faces.hh.

References mln::p_faces< N, D, P >::is_valid().

template<unsigned N, unsigned D, typename P >
bool mln::p_faces< N, D, P >::has ( const psite p  )  const [inline]
bool mln::internal::site_set_base_< faces_psite< N, D, P > , p_faces< N, D, 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.

template<unsigned N, unsigned D, typename P >
bool mln::p_faces< N, D, P >::is_valid (  )  const [inline]

Is this site set valid?

Definition at line 227 of file p_faces.hh.

Referenced by mln::p_faces< N, D, P >::cplx(), and mln::p_faces< N, D, P >::has().

template<unsigned N, unsigned D, typename P >
std::size_t mln::p_faces< N, D, P >::memory_size (  )  const [inline]

Definition at line 248 of file p_faces.hh.

template<unsigned N, unsigned D, typename P >
unsigned mln::p_faces< N, D, P >::nfaces (  )  const [inline]

Return The number of faces in the complex.

Definition at line 219 of file p_faces.hh.

Referenced by mln::p_faces< N, D, P >::nsites().

template<unsigned N, unsigned D, typename P >
unsigned mln::p_faces< N, D, P >::nsites (  )  const [inline]

Return The number of sites of the set, i.e., the number of faces.

(Required by the mln::Site_Set concept, since the property trait::site_set::nsites::known of this site set is set to `known'.)

Definition at line 211 of file p_faces.hh.

References mln::p_faces< N, D, P >::nfaces().


Member Data Documentation

template<unsigned N, unsigned D, typename P>
topo::complex<D> mln::p_faces< N, D, P >::cplx_ [mutable, private]

The complex on which this pset is built.

Definition at line 162 of file p_faces.hh.