Algebraic face handle in a complex; the face dimension is dynamic. More...
#include <algebraic_face.hh>
Public Types | |
typedef complex< D > | complex_type |
typedef face< D > | super_ |
Public Member Functions | |
algebraic_face () | |
Build a non-initialized algebraic face handle. | |
algebraic_face (complex< D > &complex, unsigned n, unsigned face_id, bool sign) | |
Build an algebraic face handle from complex and face_id. | |
template<unsigned N> | |
algebraic_face (const algebraic_n_face< N, D > &f) | |
Build a face handle from an mln::topo::algebraic_n_face. | |
algebraic_face (const face< D > &f, bool sign) | |
Build an algebraic face handle from an mln::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 | n () const |
Return the dimension of the face. | |
unsigned | face_id () const |
Return the id of the face. | |
void | set_cplx (const complex< D > &cplx) |
Set the complex the face belongs to. | |
void | set_n (unsigned n) |
Set the dimension of the face. | |
void | inc_n () |
Increment the dimension of the face. | |
void | dec_n () |
Decrement 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. | |
template<unsigned N> | |
face_data< N, D > & | data () const |
Return the mln::topo::face_data pointed by this handle. | |
std::vector< algebraic_face< D > > | lower_dim_adj_faces () const |
Return an array of face handles pointing to adjacent (n-1)-faces. | |
std::vector< algebraic_face< D > > | higher_dim_adj_faces () const |
Return an array of face handles pointing to adjacent (n+1)-faces. | |
Private Attributes | |
bool | sign_ |
The sign of this algebraic face. |
Algebraic face handle in a complex; the face dimension is dynamic.
Contrary to an mln::topo::algebraic_n_face, the dimension of an mln::topo::algebraic_face is not fixed.
typedef complex<D> mln::topo::algebraic_face< D >::complex_type |
Reimplemented from mln::topo::face< D >.
typedef face<D> mln::topo::algebraic_face< D >::super_ |
mln::topo::algebraic_face< D >::algebraic_face | ( | ) | [inline] |
Build a non-initialized algebraic face handle.
mln::topo::algebraic_face< D >::algebraic_face | ( | complex< D > & | complex, | |
unsigned | n, | |||
unsigned | face_id, | |||
bool | sign | |||
) | [inline] |
Build an algebraic face handle from complex and face_id.
mln::topo::algebraic_face< D >::algebraic_face | ( | const face< D > & | f, | |
bool | sign | |||
) | [inline] |
Build an algebraic face handle from an mln::face.
References mln::topo::face< D >::n().
mln::topo::algebraic_face< D >::algebraic_face | ( | const algebraic_n_face< N, D > & | f | ) | [inline] |
Build a face handle from an mln::topo::algebraic_n_face.
complex< D > mln::topo::face< D >::cplx | ( | ) | const [inline, inherited] |
Accessors.
Return the complex the face belongs to.
References mln::topo::face< D >::cplx_.
Referenced by mln::complex_psite< D, G >::complex_psite(), mln::topo::n_face_bkd_iter< D >::invalidate_face_id_(), mln::topo::n_face_fwd_iter< D >::invalidate_face_id_(), mln::topo::static_n_face_fwd_iter< N, D >::next_(), mln::topo::n_face_fwd_iter< D >::next_(), mln::topo::face_bkd_iter< D >::next_(), mln::topo::face_fwd_iter< D >::next_(), mln::topo::operator!=(), mln::topo::operator==(), mln::topo::static_n_face_bkd_iter< N, D >::start(), mln::topo::n_face_bkd_iter< D >::start(), and mln::topo::face_bkd_iter< D >::start().
face_data< N, D > & mln::topo::face< D >::data | ( | ) | const [inline, inherited] |
Return the mln::topo::face_data pointed by this handle.
References mln::topo::face< D >::cplx_, mln::topo::face< D >::face_id_, mln::topo::face< D >::is_valid(), and mln::topo::face< D >::n_.
void mln::topo::face< D >::dec_face_id | ( | ) | [inline, inherited] |
Decrement the id of the face.
References mln::topo::face< D >::face_id_.
Referenced by mln::topo::static_n_face_bkd_iter< N, D >::next_(), mln::topo::n_face_bkd_iter< D >::next_(), and mln::topo::face_bkd_iter< D >::next_().
void mln::topo::face< D >::dec_n | ( | ) | [inline, inherited] |
Decrement the dimension of the face.
References mln::topo::face< D >::n_.
Referenced by mln::topo::face_bkd_iter< D >::next_().
unsigned mln::topo::face< D >::face_id | ( | ) | const [inline, inherited] |
Return the id of the face.
References mln::topo::face< D >::face_id_.
Referenced by mln::topo::static_n_face_bkd_iter< N, D >::next_(), mln::topo::static_n_face_fwd_iter< N, D >::next_(), mln::topo::n_face_bkd_iter< D >::next_(), mln::topo::n_face_fwd_iter< D >::next_(), mln::topo::face_bkd_iter< D >::next_(), mln::topo::face_fwd_iter< D >::next_(), mln::geom::complex_geometry< D, P >::operator()(), and mln::topo::operator==().
std::vector< algebraic_face< D > > mln::topo::face< D >::higher_dim_adj_faces | ( | ) | const [inline, inherited] |
Return an array of face handles pointing to adjacent (n+1)-faces.
References mln::topo::face< D >::n_.
Referenced by mln::topo::adj_higher_face_bkd_iter< D >::update_adj_faces_(), mln::topo::adj_higher_face_fwd_iter< D >::update_adj_faces_(), and mln::topo::internal::adj_higher_dim_connected_n_face_iterator< D >::update_adj_faces__().
void mln::topo::face< D >::inc_face_id | ( | ) | [inline, inherited] |
Increment the id of the face.
References mln::topo::face< D >::face_id_.
Referenced by mln::topo::static_n_face_fwd_iter< N, D >::next_(), mln::topo::n_face_fwd_iter< D >::next_(), and mln::topo::face_fwd_iter< D >::next_().
void mln::topo::face< D >::inc_n | ( | ) | [inline, inherited] |
Increment the dimension of the face.
References mln::topo::face< D >::n_.
Referenced by mln::topo::face_fwd_iter< D >::next_().
void mln::topo::face< D >::invalidate | ( | ) | [inline, inherited] |
Invalidate this handle.
References mln::topo::face< D >::set_face_id(), and mln::topo::face< D >::set_n().
bool mln::topo::face< D >::is_valid | ( | ) | const [inline, inherited] |
Is this handle valid?
References mln::topo::face< D >::cplx_, mln::topo::face< D >::face_id_, and mln::topo::face< D >::n_.
Referenced by mln::topo::face< D >::data().
std::vector< algebraic_face< D > > mln::topo::face< D >::lower_dim_adj_faces | ( | ) | const [inline, inherited] |
Return an array of face handles pointing to adjacent (n-1)-faces.
References mln::topo::face< D >::n_.
Referenced by mln::topo::adj_lower_face_bkd_iter< D >::update_adj_faces_(), mln::topo::adj_lower_face_fwd_iter< D >::update_adj_faces_(), and mln::topo::internal::adj_lower_dim_connected_n_face_iterator< D >::update_adj_faces__().
unsigned mln::topo::face< D >::n | ( | ) | const [inline, inherited] |
Return the dimension of the face.
References mln::topo::face< D >::n_.
Referenced by mln::topo::algebraic_face< D >::algebraic_face(), mln::topo::n_face_bkd_iter< D >::n(), mln::topo::n_face_fwd_iter< D >::n(), mln::topo::face_bkd_iter< D >::next_(), mln::topo::face_fwd_iter< D >::next_(), mln::geom::complex_geometry< D, P >::operator()(), mln::topo::internal::higher_dim_adj_faces_if_dim_matches_< 0, D >::operator()(), mln::topo::internal::higher_dim_adj_faces_if_dim_matches_< N, D >::operator()(), mln::topo::internal::lower_dim_adj_faces_if_dim_matches_< 1, D >::operator()(), mln::topo::internal::lower_dim_adj_faces_if_dim_matches_< N, D >::operator()(), mln::topo::operator==(), and mln::topo::internal::adj_m_face_iterator< D >::update_adj_faces__().
void mln::topo::face< D >::set_cplx | ( | const complex< D > & | cplx | ) | [inline, inherited] |
Set the complex the face belongs to.
References mln::topo::face< D >::cplx_.
void mln::topo::face< D >::set_face_id | ( | unsigned | face_id | ) | [inline, inherited] |
Set the id of the face.
References mln::topo::face< D >::face_id_.
Referenced by mln::topo::face< D >::invalidate(), mln::topo::n_face_bkd_iter< D >::invalidate_face_id_(), mln::topo::n_face_fwd_iter< D >::invalidate_face_id_(), mln::topo::face_bkd_iter< D >::next_(), mln::topo::face_fwd_iter< D >::next_(), mln::topo::static_n_face_bkd_iter< N, D >::start(), mln::topo::static_n_face_fwd_iter< N, D >::start(), mln::topo::n_face_bkd_iter< D >::start(), mln::topo::n_face_fwd_iter< D >::start(), mln::topo::face_bkd_iter< D >::start(), and mln::topo::face_fwd_iter< D >::start().
void mln::topo::face< D >::set_n | ( | unsigned | n | ) | [inline, inherited] |
Set the dimension of the face.
References mln::topo::face< D >::n_.
Referenced by mln::topo::face< D >::invalidate(), mln::topo::n_face_bkd_iter< D >::set_n(), mln::topo::n_face_fwd_iter< D >::set_n(), mln::topo::face_bkd_iter< D >::start(), mln::topo::face_fwd_iter< D >::start(), mln::topo::static_n_face_bkd_iter< N, D >::static_n_face_bkd_iter(), and mln::topo::static_n_face_fwd_iter< N, D >::static_n_face_fwd_iter().
void mln::topo::algebraic_face< D >::set_sign | ( | bool | sign | ) | [inline] |
Set the sign of this face.
References mln::topo::algebraic_face< D >::sign_.
Referenced by mln::topo::operator-().
bool mln::topo::algebraic_face< D >::sign | ( | ) | const [inline] |
Accessors.
Return the sign of this face.
References mln::topo::algebraic_face< D >::sign_.
Referenced by mln::topo::operator-(), and mln::topo::operator==().
bool mln::topo::algebraic_face< D >::sign_ [private] |
The sign of this algebraic face.
Referenced by mln::topo::algebraic_face< D >::set_sign(), and mln::topo::algebraic_face< D >::sign().