]> git.lyx.org Git - lyx.git/blob - boost/boost/signals/signal3.hpp
major boost update
[lyx.git] / boost / boost / signals / signal3.hpp
1 // Boost.Signals library
2 //
3 // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu)
4 //
5 // Permission to copy, use, sell and distribute this software is granted
6 // provided this copyright notice appears in all copies.
7 // Permission to modify the code and to distribute modified code is granted
8 // provided this copyright notice appears in all copies, and a notice
9 // that the code was modified is included with the copyright notice.
10 //
11 // This software is provided "as is" without express or implied warranty,
12 // and with no claim as to its suitability for any purpose.
13  
14 // For more information, see http://www.boost.org
15
16 #ifndef BOOST_SIGNALS_SIGNAL3_HEADER
17 #define BOOST_SIGNALS_SIGNAL3_HEADER
18
19 #define BOOST_SIGNALS_NUM_ARGS 3
20 #define BOOST_SIGNALS_TEMPLATE_PARMS typename T1, typename T2, typename T3
21 #define BOOST_SIGNALS_TEMPLATE_ARGS T1, T2, T3
22 #define BOOST_SIGNALS_PARMS T1 a1, T2 a2, T3 a3
23 #define BOOST_SIGNALS_ARGS a1, a2, a3
24 #define BOOST_SIGNALS_BOUND_ARGS args->a1, args->a2, args->a3
25 #define BOOST_SIGNALS_ARGS_AS_MEMBERS T1 a1;T2 a2;T3 a3;
26 #define BOOST_SIGNALS_COPY_PARMS T1 ia1, T2 ia2, T3 ia3
27 #define BOOST_SIGNALS_INIT_ARGS :a1(ia1), a2(ia2), a3(ia3)
28 #define BOOST_SIGNALS_ARG_TYPES typedef T1 arg2_type; typedef T2 arg3_type; typedef T3 arg4_type; 
29
30 #include <boost/signals/signal_template.hpp>
31
32 #undef BOOST_SIGNALS_ARG_TYPES
33 #undef BOOST_SIGNALS_INIT_ARGS
34 #undef BOOST_SIGNALS_COPY_PARMS
35 #undef BOOST_SIGNALS_ARGS_AS_MEMBERS
36 #undef BOOST_SIGNALS_BOUND_ARGS
37 #undef BOOST_SIGNALS_ARGS
38 #undef BOOST_SIGNALS_PARMS
39 #undef BOOST_SIGNALS_TEMPLATE_ARGS
40 #undef BOOST_SIGNALS_TEMPLATE_PARMS
41 #undef BOOST_SIGNALS_NUM_ARGS
42
43 #endif // BOOST_SIGNALS_SIGNAL3_HEADER