]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/statechart/test/TuTest.hpp
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / boost / libs / statechart / test / TuTest.hpp
1 #ifndef BOOST_STATECHART_TEST_TU_TEST_HPP_INCLUDED
2 #define BOOST_STATECHART_TEST_TU_TEST_HPP_INCLUDED
3 //////////////////////////////////////////////////////////////////////////////
4 // Copyright 2005-2006 Andreas Huber Doenni
5 // Distributed under the Boost Software License, Version 1.0. (See accompany-
6 // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 //////////////////////////////////////////////////////////////////////////////
8
9
10
11 #include <boost/statechart/event.hpp>
12 #include <boost/statechart/state_machine.hpp>
13
14 #include <boost/config.hpp>
15
16 #ifdef BOOST_HAS_DECLSPEC
17 #ifdef BOOST_STATECHART_TEST_DYNAMIC_LINK
18 #ifdef BOOST_STATECHART_TEST_DLL_EXPORT
19 #define BOOST_STATECHART_DECL __declspec(dllexport)
20 #else
21 #define BOOST_STATECHART_DECL __declspec(dllimport)
22 #endif
23 #endif
24 #endif
25
26 #ifndef BOOST_STATECHART_DECL
27 #define BOOST_STATECHART_DECL
28 #endif
29
30
31
32 namespace sc = boost::statechart;
33
34 #ifdef BOOST_MSVC
35 # pragma warning( push )
36 // class X needs to have dll-interface to be used by clients of class Y
37 # pragma warning( disable: 4251 )
38 // non dll-interface class X used as base for dll-interface class
39 # pragma warning( disable: 4275 )
40 #endif
41
42 struct BOOST_STATECHART_DECL EvX : sc::event< EvX > {};
43 struct BOOST_STATECHART_DECL EvY : sc::event< EvY > {};
44
45 struct Initial;
46 struct BOOST_STATECHART_DECL TuTest : sc::state_machine< TuTest, Initial >
47 {
48 void initiate();
49 void unconsumed_event( const sc::event_base & );
50 };
51
52 #ifdef BOOST_MSVC
53 # pragma warning( pop )
54 #endif
55
56
57 #endif