Complex data. More...
Classes | |
| struct | add_size |
| A binary meta-functor defined by: More... | |
| class | adj_higher_dim_connected_n_face_iterator |
| class | adj_lower_dim_connected_n_face_iterator |
| class | adj_m_face_iterator |
| class | backward_complex_relative_iterator_base |
| Factoring class for backward relative iterators on mln::complex. More... | |
| struct | complex_data |
| Complex data. More... | |
| class | complex_iterator_base |
| Factoring class for iterators on mln::complex. More... | |
| class | complex_relative_iterator_base |
| Factoring class for relative iterators on mln::complex. More... | |
| class | complex_relative_iterator_sequence |
| A meta relative iterator on the faces of a complex using two complex relative iterators sequentially. More... | |
| class | complex_set_iterator_base |
| Factoring class for (set) iterators on mln::complex. More... | |
| struct | const_face_type_ |
| struct | faces_set_mixin |
Faces of intermediate dimension (greater than 0, lower than D). More... | |
| struct | faces_set_mixin< 0u, 0u > |
| Faces of a 0-complex. More... | |
| struct | faces_set_mixin< 0u, D > |
| Faces of lowest dimension (0). More... | |
| struct | faces_set_mixin< D, D > |
Faces of highest dimension (D). More... | |
| class | forward_complex_relative_iterator_base |
| Factoring class for forward relative iterators on mln::complex. More... | |
| struct | get_size |
| An unary meta-functor defined by: More... | |
| struct | higher_dim_adj_faces_if_dim_matches_ |
| struct | higher_dim_adj_faces_if_dim_matches_< 0, D > |
| class | higher_dim_faces_data_mixin |
| struct | higher_dim_faces_set_mixin |
| struct | lower_dim_adj_faces_if_dim_matches_ |
| struct | lower_dim_adj_faces_if_dim_matches_< 1, D > |
| class | lower_dim_faces_data_mixin |
| Factored implementation of faces. More... | |
| struct | lower_dim_faces_set_mixin |
| Mixins of mixin mln::faces_set_mixin. More... | |
Functions | |
| template<typename F , typename E > | |
| std::ostream & | operator<< (std::ostream &ostr, const complex_iterator_base< F, E > &p) |
| Print an mln::topo::internal::complex_iterator_base. | |
| template<typename I1 , typename I2 , typename E > | |
| std::ostream & | operator<< (std::ostream &ostr, const complex_relative_iterator_sequence< I1, I2, E > &p) |
| Print an mln::topo::internal::complex_relative_iterator_sequence. | |
Complex data.
Data is aggregated as follows in an mln::topo::complex<D>:
,-----------> higher_dim_faces_set_mixin<0, D>
|
faces_set_mixin<0, D>
^
|
| ,-----------> higher_dim_faces_set_mixin<1, D>
| | ,---------> lower_dim_faces_set_mixin<1, D>
| | |
faces_set_mixin<1, D>
^
|
|
...
^
|
| ,-----------> higher_dim_faces_set_mixin<D - 1, D>
| | ,---------> lower_dim_faces_set_mixin<D - 1, D>
| | |
faces_set_mixin<D - 1, D>
^
|
| ,---------> lower_dim_faces_set_mixin<D, D>
| |
faces_set_mixin<D, D>
^
|
|
complex_data<D> ----. (shared data)
|
|
,--------------'
|
|
`----<> tracked_ptr< complex_data<D> > ----<> complex<D>
An instance of mln::topo::internal::faces_set_mixin<N, D> stores the N-faces of a D-complex.
Classes mln::topo::internal::lower_dim_faces_set_mixin<N, D> are implementation classes factoring services related to complex data. The sets of n-faces of a complex are recursively aggregated as mixins.
| std::ostream & mln::topo::internal::operator<< | ( | std::ostream & | ostr, | |
| const complex_iterator_base< F, E > & | p | |||
| ) | [inline] |
| std::ostream & mln::topo::internal::operator<< | ( | std::ostream & | ostr, | |
| const complex_relative_iterator_sequence< I1, I2, E > & | p | |||
| ) | [inline] |
1.7.1