1 // Boost.Signals library
3 // Copyright Doug Gregor 2001-2003. Use, modification and
4 // distribution is subject to the Boost Software License, Version
5 // 1.0. (See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt)
8 // For more information, see http://www.boost.org
10 #ifndef BOOST_SIGNALS_SIGNAL7_HEADER
11 #define BOOST_SIGNALS_SIGNAL7_HEADER
13 #define BOOST_SIGNALS_NUM_ARGS 7
14 #define BOOST_SIGNALS_TEMPLATE_PARMS typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7
15 #define BOOST_SIGNALS_TEMPLATE_ARGS T1, T2, T3, T4, T5, T6, T7
16 #define BOOST_SIGNALS_PARMS T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7
17 #define BOOST_SIGNALS_ARGS a1, a2, a3, a4, a5, a6, a7
18 #define BOOST_SIGNALS_BOUND_ARGS args->a1, args->a2, args->a3, args->a4, args->a5, args->a6, args->a7
19 #define BOOST_SIGNALS_ARGS_AS_MEMBERS T1 a1;T2 a2;T3 a3;T4 a4;T5 a5;T6 a6;T7 a7;
20 #define BOOST_SIGNALS_COPY_PARMS T1 ia1, T2 ia2, T3 ia3, T4 ia4, T5 ia5, T6 ia6, T7 ia7
21 #define BOOST_SIGNALS_INIT_ARGS :a1(ia1), a2(ia2), a3(ia3), a4(ia4), a5(ia5), a6(ia6), a7(ia7)
22 #define BOOST_SIGNALS_ARG_TYPES typedef T1 arg2_type; typedef T2 arg3_type; typedef T3 arg4_type; typedef T4 arg5_type; typedef T5 arg6_type; typedef T6 arg7_type; typedef T7 arg8_type;
24 #include <boost/signals/signal_template.hpp>
26 #undef BOOST_SIGNALS_ARG_TYPES
27 #undef BOOST_SIGNALS_INIT_ARGS
28 #undef BOOST_SIGNALS_COPY_PARMS
29 #undef BOOST_SIGNALS_ARGS_AS_MEMBERS
30 #undef BOOST_SIGNALS_BOUND_ARGS
31 #undef BOOST_SIGNALS_ARGS
32 #undef BOOST_SIGNALS_PARMS
33 #undef BOOST_SIGNALS_TEMPLATE_ARGS
34 #undef BOOST_SIGNALS_TEMPLATE_PARMS
35 #undef BOOST_SIGNALS_NUM_ARGS
37 #endif // BOOST_SIGNALS_SIGNAL7_HEADER