Public Types | Public Member Functions | Private Types | Private Attributes

mln::topo::algebraic_n_face< N, D > Class Template Reference

Algebraic N-face handle in a complex. More...

#include <algebraic_n_face.hh>

Inheritance diagram for mln::topo::algebraic_n_face< N, D >:
Inheritance graph

List of all members.

Public Types

typedef complex< D > complex_type

Public Member Functions

 algebraic_n_face ()
 Build a non-initialized algebraic face handle.
 algebraic_n_face (complex< D > &complex, unsigned face_id, bool sign)
 Build an algebraic face handle from complex and face_id.
 algebraic_n_face (const n_face< N, D > &f, bool sign)
 Build an algebraic face handle from an mln::n_face.
void invalidate ()
 Invalidate this handle.
bool is_valid () const
 Is this handle valid?

bool sign () const
 Accessors.
void set_sign (bool sign)
 Set the sign of this face.

complex< D > cplx () const
 Accessors.
unsigned face_id () const
 Return the id of the face.
void set_cplx (const complex< D > &cplx)
 Set the complex the face belongs to.
unsigned n () const
 Return the dimension of the face.
void set_face_id (unsigned face_id)
 Set the id of the face.
void inc_face_id ()
 Increment the id of the face.
void dec_face_id ()
 Decrement the id of the face.
face_data< N, D > & data () const
 Return the mln::topo::face_data pointed by this handle.
std::vector< algebraic_n_face
< N-1, D > > 
lower_dim_adj_faces () const
 Return an array of face handles pointing to adjacent (n-1)-faces.
std::vector< algebraic_n_face
< N+1, D > > 
higher_dim_adj_faces () const
 Return an array of face handles pointing to adjacent (n+1)-faces.

Private Types

typedef n_face< N, D > super_

Private Attributes

bool sign_

Detailed Description

template<unsigned N, unsigned D>
class mln::topo::algebraic_n_face< N, D >

Algebraic N-face handle in a complex.

Contrary to an mln::topo::algebraic_face, the dimension of an mln::topo::algebraic_n_face is fixed.

Definition at line 50 of file algebraic_n_face.hh.


Member Typedef Documentation

template<unsigned N, unsigned D>
typedef complex<D> mln::topo::n_face< N, D >::complex_type [inherited]

Definition at line 65 of file n_face.hh.

template<unsigned N, unsigned D>
typedef n_face<N, D> mln::topo::algebraic_n_face< N, D >::super_ [private]

Definition at line 52 of file algebraic_n_face.hh.


Constructor & Destructor Documentation

template<unsigned N, unsigned D>
mln::topo::algebraic_n_face< N, D >::algebraic_n_face (  )  [inline]

Build a non-initialized algebraic face handle.

Definition at line 166 of file algebraic_n_face.hh.

References mln::topo::n_face< N, D >::is_valid().

template<unsigned N, unsigned D>
mln::topo::algebraic_n_face< N, D >::algebraic_n_face ( complex< D > &  complex,
unsigned  face_id,
bool  sign 
) [inline]

Build an algebraic face handle from complex and face_id.

Definition at line 176 of file algebraic_n_face.hh.

template<unsigned N, unsigned D>
mln::topo::algebraic_n_face< N, D >::algebraic_n_face ( const n_face< N, D > &  f,
bool  sign 
) [inline]

Build an algebraic face handle from an mln::n_face.

Definition at line 186 of file algebraic_n_face.hh.


Member Function Documentation

template<unsigned N, unsigned D>
complex< D > mln::topo::n_face< N, D >::cplx (  )  const [inline, inherited]

Accessors.

Return the complex the face belongs to.

Definition at line 195 of file n_face.hh.

References mln::topo::n_face< N, D >::cplx_.

Referenced by mln::topo::n_faces_set< N, D >::add(), mln::topo::operator!=(), and mln::topo::operator==().

template<unsigned N, unsigned D>
face_data< N, D > & mln::topo::n_face< N, D >::data (  )  const [inline, inherited]
template<unsigned N, unsigned D>
void mln::topo::n_face< N, D >::dec_face_id (  )  [inline, inherited]

Decrement the id of the face.

Definition at line 243 of file n_face.hh.

References mln::topo::n_face< N, D >::face_id_.

template<unsigned N, unsigned D>
unsigned mln::topo::n_face< N, D >::face_id (  )  const [inline, inherited]

Return the id of the face.

Definition at line 211 of file n_face.hh.

References mln::topo::n_face< N, D >::face_id_.

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

template<unsigned N, unsigned D>
std::vector< algebraic_n_face< N+1, D > > mln::topo::n_face< N, D >::higher_dim_adj_faces (  )  const [inline, inherited]

Return an array of face handles pointing to adjacent (n+1)-faces.

Definition at line 270 of file n_face.hh.

References mln::topo::n_face< N, D >::cplx_, mln::topo::n_face< N, D >::face_id_, and mln::topo::n_face< N, D >::is_valid().

Referenced by mln::topo::edge().

template<unsigned N, unsigned D>
void mln::topo::n_face< N, D >::inc_face_id (  )  [inline, inherited]

Increment the id of the face.

Definition at line 235 of file n_face.hh.

References mln::topo::n_face< N, D >::face_id_.

template<unsigned N, unsigned D>
void mln::topo::n_face< N, D >::invalidate (  )  [inline, inherited]

Invalidate this handle.

Definition at line 187 of file n_face.hh.

References mln::topo::n_face< N, D >::set_face_id().

template<unsigned N, unsigned D>
bool mln::topo::n_face< N, D >::is_valid (  )  const [inline, inherited]
template<unsigned N, unsigned D>
std::vector< algebraic_n_face< N-1, D > > mln::topo::n_face< N, D >::lower_dim_adj_faces (  )  const [inline, inherited]

Return an array of face handles pointing to adjacent (n-1)-faces.

Definition at line 260 of file n_face.hh.

References mln::topo::n_face< N, D >::cplx_, mln::topo::n_face< N, D >::face_id_, and mln::topo::n_face< N, D >::is_valid().

template<unsigned N, unsigned D>
unsigned mln::topo::n_face< N, D >::n (  )  const [inline, inherited]

Return the dimension of the face.

Definition at line 203 of file n_face.hh.

template<unsigned N, unsigned D>
void mln::topo::n_face< N, D >::set_cplx ( const complex< D > &  cplx  )  [inline, inherited]

Set the complex the face belongs to.

Definition at line 219 of file n_face.hh.

References mln::topo::n_face< N, D >::cplx_.

template<unsigned N, unsigned D>
void mln::topo::n_face< N, D >::set_face_id ( unsigned  face_id  )  [inline, inherited]

Set the id of the face.

Definition at line 227 of file n_face.hh.

References mln::topo::n_face< N, D >::face_id_.

Referenced by mln::topo::n_face< N, D >::invalidate().

template<unsigned N, unsigned D>
void mln::topo::algebraic_n_face< N, D >::set_sign ( bool  sign  )  [inline]

Set the sign of this face.

Definition at line 205 of file algebraic_n_face.hh.

References mln::topo::algebraic_n_face< N, D >::sign_.

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

template<unsigned N, unsigned D>
bool mln::topo::algebraic_n_face< N, D >::sign (  )  const [inline]

Accessors.

Return the sign of this face.

Definition at line 197 of file algebraic_n_face.hh.

References mln::topo::algebraic_n_face< N, D >::sign_.

Referenced by mln::topo::complex< D >::connect_(), mln::topo::operator-(), and mln::topo::operator==().


Member Data Documentation

template<unsigned N, unsigned D>
bool mln::topo::algebraic_n_face< N, D >::sign_ [private]