$extrastylesheet
Olena  User documentation 2.1
An Image Processing Platform
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mln::topo::internal Namespace Reference

Classes

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
struct  complex_data
class  complex_iterator_base
class  complex_relative_iterator_base
class  complex_relative_iterator_sequence
class  complex_set_iterator_base
struct  const_face_type_
struct  faces_set_mixin
struct  faces_set_mixin< 0, 0 >
struct  faces_set_mixin< 0, D >
struct  faces_set_mixin< D, D >
class  forward_complex_relative_iterator_base
class  higher_dim_faces_data_mixin
struct  higher_dim_faces_set_mixin
class  lower_dim_faces_data_mixin
struct  lower_dim_faces_set_mixin

Functions

template<typename F , typename E >
std::ostream & operator<< (std::ostream &ostr, const complex_iterator_base< F, E > &p)
template<typename I1 , typename I2 , typename E >
std::ostream & operator<< (std::ostream &ostr, const complex_relative_iterator_sequence< I1, I2, E > &p)

Detailed Description

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.

Function Documentation

template<typename F , typename E >
std::ostream& mln::topo::internal::operator<< ( std::ostream &  ostr,
const complex_iterator_base< F, E > &  p 
)
inline
template<typename I1 , typename I2 , typename E >
std::ostream& mln::topo::internal::operator<< ( std::ostream &  ostr,
const complex_relative_iterator_sequence< I1, I2, E > &  p 
)
inline