27 #ifndef MLN_CORE_ROUTINE_INIT_HXX
28 # define MLN_CORE_ROUTINE_INIT_HXX
39 namespace fun {
namespace i2v {
template <
typename T>
class array; } }
40 namespace pw {
namespace internal {
template <
typename F,
typename S,
typename E>
class image_base; } }
41 namespace pw {
template <
typename F,
typename S>
class image; }
42 template <
typename I,
typename F>
struct image_if;
49 template <
typename F,
typename S,
typename E,
typename J>
50 void init_(tag::image_t, pw::image<F,S>& target,
const Image<J>& model);
55 template <
typename P,
typename V,
typename G,
typename J>
56 void init_(tag::image_t, vertex_image<P,V,G>& target,
const Image<J>& model);
61 template <
typename I,
typename F,
typename J>
62 void init_(tag::image_t, image_if<I,F>& target,
const J& model);
68 template <
typename F,
typename S,
typename E>
69 void init_(tag::function_t, F& f,
const pw::internal::image_base<F,S,E>& model);
74 template <
typename I,
typename F>
75 void init_(tag::function_t, F& f,
const image_if<I,F>& model);
80 template <
typename T1,
typename T2>
81 void init_(tag::function_t,
82 fun::i2v::array<T1>& f,
83 const fun::i2v::array<T2>& model);
87 #endif // ! MLN_CORE_ROUTINE_INIT_HXX