27 #ifndef MLN_CORE_SITE_SET_P_COMPLEX_PITER_HH
28 # define MLN_CORE_SITE_SET_P_COMPLEX_PITER_HH
36 # include <mln/core/site_set/p_complex.hh>
37 # include <mln/core/internal/p_complex_piter_base.hh>
38 # include <mln/topo/face_iter.hh>
44 template <
unsigned D,
typename G>
class p_complex;
52 template <
unsigned D,
typename G>
53 class p_complex_fwd_piter_
54 :
public internal::p_complex_piter_base_< topo::face_fwd_iter<D>,
57 p_complex_fwd_piter_<D, G> >
59 typedef p_complex_fwd_piter_<D, G> self_;
60 typedef internal::p_complex_piter_base_< topo::face_fwd_iter<D>,
68 p_complex_fwd_piter_();
69 p_complex_fwd_piter_(
const p_complex<D, G>& pc);
79 template <
unsigned D,
typename G>
80 class p_complex_bkd_piter_
81 :
public internal::p_complex_piter_base_< topo::face_bkd_iter<D>,
84 p_complex_bkd_piter_<D, G> >
86 typedef p_complex_bkd_piter_<D, G> self_;
87 typedef internal::p_complex_piter_base_< topo::face_bkd_iter<D>,
95 p_complex_bkd_piter_();
96 p_complex_bkd_piter_(
const p_complex<D, G>& pc);
102 # ifndef MLN_INCLUDE_ONLY
108 template <
unsigned D,
typename G>
110 p_complex_fwd_piter_<D, G>::p_complex_fwd_piter_()
114 template <
unsigned D,
typename G>
116 p_complex_fwd_piter_<D, G>::p_complex_fwd_piter_(
const p_complex<D, G>& pc)
126 template <
unsigned D,
typename G>
128 p_complex_bkd_piter_<D, G>::p_complex_bkd_piter_()
132 template <
unsigned D,
typename G>
134 p_complex_bkd_piter_<D, G>::p_complex_bkd_piter_(
const p_complex<D, G>& pc)
139 # endif // ! MLN_INCLUDE_ONLY
143 #endif // ! MLN_CORE_SITE_SET_P_COMPLEX_PITER_HH