27 #ifndef MLN_TOPO_STATIC_N_FACE_ITER_HH
28 # define MLN_TOPO_STATIC_N_FACE_ITER_HH
35 # include <mln/topo/internal/complex_set_iterator_base.hh>
36 # include <mln/topo/face.hh>
57 template <
unsigned N,
unsigned D>
60 static_n_face_fwd_iter<N, D> >
105 template <
unsigned N,
unsigned D>
108 static_n_face_bkd_iter<N, D> >
142 # ifndef MLN_INCLUDE_ONLY
148 template <
unsigned N,
unsigned D>
154 metal::bool_< N <= D >::check();
159 template <
unsigned N,
unsigned D>
165 metal::bool_< N <= D >::check();
170 template <
unsigned N,
unsigned D>
178 template <
unsigned N,
unsigned D>
185 if (f_.face_id() + 1 < f_.cplx().template nfaces_of_static_dim<N>())
197 template <
unsigned N,
unsigned D>
203 metal::bool_< N <= D >::check();
208 template <
unsigned N,
unsigned D>
214 metal::bool_< N <= D >::check();
219 template <
unsigned N,
unsigned D>
224 f_.set_face_id(f_.cplx().template nfaces_of_static_dim<N>() - 1);
227 template <
unsigned N,
unsigned D>
234 if (f_.face_id() > 0)
241 # endif // ! MLN_INCLUDE_ONLY
247 #endif // ! MLN_TOPO_STATIC_N_FACE_ITER_HH