27 #ifndef MLN_CORE_INTERNAL_IMAGE_DOMAIN_MORPHER_HH
28 # define MLN_CORE_INTERNAL_IMAGE_DOMAIN_MORPHER_HH
34 # include <mln/core/internal/image_morpher.hh>
53 template <
typename I,
typename S,
typename E>
62 typedef mln_morpher_lvalue(I)
lvalue;
66 rvalue operator()(const mln_psite(S)&
p) const;
69 lvalue operator()(const mln_psite(S)&
p);
78 # ifndef MLN_INCLUDE_ONLY
80 template <
typename I,
typename S,
typename E>
86 template <
typename I,
typename S,
typename E>
89 image_domain_morpher<I,S,E>::operator()(const mln_psite(S)& p)
const
92 mln_precondition(
exact(
this)->
has(p));
97 template <
typename I,
typename S,
typename E>
99 typename image_domain_morpher<I,S,E>::lvalue
103 mln_precondition(
exact(
this)->
has(p));
108 # endif // ! MLN_INCLUDE_ONLY
115 #endif // ! MLN_CORE_INTERNAL_IMAGE_DOMAIN_MORPHER_HH