26 #ifndef MLN_TRAIT_WINDOWS_HH
27 # define MLN_TRAIT_WINDOWS_HH
34 # include <mln/trait/undef.hh>
35 # include <mln/trait/window/props.hh>
39 # define mln_trait_window_size(W) typename mln::trait::window_< W >::size
42 # define mln_trait_window_support(W) typename mln::trait::window_< W >::support
45 # define mln_trait_window_definition(W) typename mln::trait::window_< W >::definition
48 # define mln_internal_add_classical_window_trait(W) \
50 namespace win { struct W; } \
56 struct window_< win::W > : classical_window_ \
62 struct e_n_d__w_i_t_h__s_e_m_i_c_o_l_u_m_n
73 struct undefined_window_
76 typedef undef support;
77 typedef undef definition;
90 struct window_ : undefined_window_<W>
96 struct classical_window_
98 typedef mln::trait::window::size::fixed size;
99 typedef mln::trait::window::support::regular support;
100 typedef mln::trait::window::definition::unique definition;
108 # include <mln/trait/window/print.hh>
111 #endif // ! MLN_TRAIT_WINDOWS_HH