31 #ifndef MLN_WORLD_K2_BORDER_ADJUST_DUPLICATE_2_FACES_HH
32 # define MLN_WORLD_K2_BORDER_ADJUST_DUPLICATE_2_FACES_HH
34 # include <mln/border/adjust.hh>
35 # include <mln/world/kn/border/duplicate_2_faces.hh>
36 # include <mln/world/k2/border/fill_non_primary_from_primary_2_faces.hh>
62 template <
typename I,
typename F>
63 void adjust_duplicate_2_faces(
const Image<I>& inout,
64 const Function_vv2v<F>& f,
65 unsigned min_thickness);
69 # ifndef MLN_INCLUDE_ONLY
72 template <
typename I,
typename F>
73 void adjust_duplicate_2_faces(
const Image<I>& inout,
74 const Function_vv2v<F>& f,
75 unsigned min_thickness)
77 trace::entering(
"mln::world::k2::adjust_duplicate_2_faces");
79 mln_precondition(exact(inout).is_valid());
80 mln_precondition(min_thickness > 0);
83 kn::border::duplicate_2_faces(inout);
84 k2::border::fill_non_primary_from_primary_2_faces(inout, f);
86 trace::exiting(
"mln::world::k2::adjust_duplicate_2_faces");
90 # endif // ! MLN_INCLUDE_ONLY
100 #endif // ! MLN_WORLD_K2_BORDER_ADJUST_DUPLICATE_2_FACES_HH