27 #ifndef MLN_CANVAS_BROWSING_DIRECTIONAL_HH
28 # define MLN_CANVAS_BROWSING_DIRECTIONAL_HH
34 # include <mln/core/concept/browsing.hh>
35 # include <mln/core/concept/image.hh>
103 # ifndef MLN_INCLUDE_ONLY
105 # ifndef MLN_WO_GLOBAL_VARS
109 # endif // ! MLN_WO_GLOBAL_VARS
116 template <
typename F>
121 mln_trace(
"canvas::browsing::directional");
122 mln_precondition(f.dir < f.dim);
123 typedef typename F::I I;
126 pmin = f.input.domain().pmin(),
127 pmax = f.input.domain().pmax();
138 while (f.p[f.dir] <= pmax[f.dir])
143 f.p[f.dir] = pmin[f.dir];
147 for (
int c = F::dim - 1; c >= 0; --c)
151 if (f.p[c] != pmax[c])
159 }
while (f.p != pmin);
164 # endif // ! MLN_INCLUDE_ONLY
172 #endif // ! MLN_CANVAS_BROWSING_DIRECTIONAL_HH