mln::topo::complex< D > Class Template Reference

General complex of dimension D. More...

#include <complex.hh>

List of all members.

Public Types

typedef face_bkd_iter< D > bkd_citer
 Backward mln::Iterator type iterating on all faces.
typedef face_fwd_iter< D > fwd_citer
 Forward mln::Iterator type iterating on all faces.

Public Member Functions

const void * addr () const
 Get the address of the data of this complex.
template<unsigned N>
n_face< N+1, D > add_face (const n_faces_set< N, D > &adjacent_faces)
 Add a (N+1)-face to the complex (with N >= 0).
n_face< 0u, D > add_face ()
 Add a 0-face to the complex.
 complex ()
 Complex construction.
unsigned nfaces () const
 Static manipulators.
template<unsigned N>
unsigned nfaces_of_static_dim () const
 Return the number of N-faces.
unsigned nfaces_of_dim (unsigned n) const
 Dynamic manipulators.
void print (std::ostream &ostr) const
 Pretty-printing.
template<unsigned N>
void print_faces (std::ostream &ostr) const
 Print the faces of dimension N.


Detailed Description

template<unsigned D>
class mln::topo::complex< D >

General complex of dimension D.

Member Typedef Documentation

template<unsigned D>
typedef face_bkd_iter<D> mln::topo::complex< D >::bkd_citer

Backward mln::Iterator type iterating on all faces.

template<unsigned D>
typedef face_fwd_iter<D> mln::topo::complex< D >::fwd_citer

Forward mln::Iterator type iterating on all faces.


Constructor & Destructor Documentation

template<unsigned D>
mln::topo::complex< D >::complex (  )  [inline]

Complex construction.

Create a new D-complex.


Member Function Documentation

template<unsigned D>
template<unsigned N>
n_face< N+1, D > mln::topo::complex< D >::add_face ( const n_faces_set< N, D > &  adjacent_faces  )  [inline]

Add a (N+1)-face to the complex (with N >= 0).

Parameters:
adjacent_faces The (N-1)-faces adjacent to the new N-face.

References mln::topo::n_faces_set< N, D >::faces().

template<unsigned D>
n_face< 0u, D > mln::topo::complex< D >::add_face (  )  [inline]

Add a 0-face to the complex.

template<unsigned D>
const void * mln::topo::complex< D >::addr (  )  const [inline]

Get the address of the data of this complex.

This address is a concise and useful information to print and track the actual content of this complex.

template<unsigned D>
unsigned mln::topo::complex< D >::nfaces (  )  const [inline]

Static manipulators.

These methods use statically-known input.

Return the total number of faces, whatever their dimension.

template<unsigned D>
unsigned mln::topo::complex< D >::nfaces_of_dim ( unsigned  n  )  const [inline]

Dynamic manipulators.

These methods use input know as run time.

Return the number of n-faces.

Warning, this function has a complexity linear in term of N, since each n_faces_set is checked (the present implementation does not provide a direct access to n_faces_set through a dynamic value of the dimension).

template<unsigned D>
template<unsigned N>
unsigned mln::topo::complex< D >::nfaces_of_static_dim (  )  const [inline]

Return the number of N-faces.

template<unsigned D>
void mln::topo::complex< D >::print ( std::ostream &  ostr  )  const [inline]

Pretty-printing.

Print the complex.

Referenced by mln::topo::operator<<().

template<unsigned D>
template<unsigned N>
void mln::topo::complex< D >::print_faces ( std::ostream &  ostr  )  const [inline]

Print the faces of dimension N.


Generated on Tue Jul 14 16:33:14 2009 for Milena (Olena) by  doxygen 1.5.9