26 #ifndef MLN_LOGICAL_NOT_HH
27 # define MLN_LOGICAL_NOT_HH
33 # include <mln/logical/includes.hh>
34 # include <mln/fun/v2b/lnot.hh>
51 mln_concrete(I) not_(const Image<I>& input);
69 # ifndef MLN_INCLUDE_ONLY
73 mln_concrete(I) not_(const Image<I>& input)
75 trace::entering(
"logical::not_");
77 mln_precondition(exact(input).is_valid());
79 fun::v2b::lnot<mln_value(I)> f;
80 mln_concrete(I) output =
data::transform(input, f);
82 trace::exiting("logical::not_");
90 trace::entering(
"logical::not_inplace");
92 mln_precondition(exact(input).is_valid());
97 trace::exiting(
"logical::not_inplace");
100 # endif // ! MLN_INCLUDE_ONLY
107 #endif // ! MLN_LOGICAL_NOT_HH