#include <boost/integer/integer_mask.hpp>#include <boost/preprocessor/seq/for_each.hpp>#include <boost/preprocessor/tuple/rem.hpp>

Go to the source code of this file.
Defines | |
| #define | ADD_CADDY_MESSAGE(NAME, CODE, BITS) |
| #define | ADD_CADDY_MESSAGE2(r, data, elem) |
| #define | ADD_MESSAGE_ENUM(r, data, elem) enum {BOOST_PP_TUPLE_ELEM(3,0,elem) = BOOST_PP_TUPLE_ELEM(3,1,elem)};\ |
| #define | ADD_TO_MAP(r, data, elem) data[BOOST_PP_TUPLE_ELEM(3,1,elem)] = BitMap({4, BOOST_PP_TUPLE_REM_CTOR(11,BOOST_PP_TUPLE_ELEM(3,2,elem))}); \ |
| #define | DEFINE_MAPPED_MESSAGES(MAPNAME, seq) |
| #define | GET_MESSAGE_NAME(r, data, elem) BOOST_PP_TUPLE_ELEM(3,0,elem) = BOOST_PP_TUPLE_ELEM(3,1,elem), |
| #define | PP_MSG_FILLER_0(X1, X2, X3) ((X1,X2,X3)) PP_MSG_FILLER_1 |
| #define | PP_MSG_FILLER_0_END |
| #define | PP_MSG_FILLER_1(X1, X2, X3) ((X1,X2,X3)) PP_MSG_FILLER_0 |
| #define | PP_MSG_FILLER_1_END |
| #define ADD_CADDY_MESSAGE | ( | NAME, | |
| CODE, | |||
| BITS | |||
| ) |
struct NAME : public virtual labust::tritech::DiverBitmap\ {\ enum{type=CODE};\ const std::vector<int>& bitmap() \ { \ static const std::vector<int> bitmap({4, BOOST_PP_TUPLE_REM_CTOR(11, BITS)}); \ return bitmap; \ } \ };
Definition at line 82 of file message_preprocess.hpp.
| #define ADD_CADDY_MESSAGE2 | ( | r, | |
| data, | |||
| elem | |||
| ) |
ADD_CADDY_MESSAGE(BOOST_PP_TUPLE_ELEM(3,0,elem), \ BOOST_PP_TUPLE_ELEM(3,1,elem), \ BOOST_PP_TUPLE_ELEM(3,2,elem), \ data) \
Definition at line 76 of file message_preprocess.hpp.
| #define ADD_MESSAGE_ENUM | ( | r, | |
| data, | |||
| elem | |||
| ) | enum {BOOST_PP_TUPLE_ELEM(3,0,elem) = BOOST_PP_TUPLE_ELEM(3,1,elem)};\ |
Definition at line 66 of file message_preprocess.hpp.
| #define ADD_TO_MAP | ( | r, | |
| data, | |||
| elem | |||
| ) | data[BOOST_PP_TUPLE_ELEM(3,1,elem)] = BitMap({4, BOOST_PP_TUPLE_REM_CTOR(11,BOOST_PP_TUPLE_ELEM(3,2,elem))}); \ |
Definition at line 72 of file message_preprocess.hpp.
| #define DEFINE_MAPPED_MESSAGES | ( | MAPNAME, | |
| seq | |||
| ) |
typedef enum {BOOST_PP_SEQ_FOR_EACH_R(1, GET_MESSAGE_NAME, \ 3, BOOST_PP_CAT(PP_MSG_FILLER_0 seq, _END)) \ BOOST_PP_CAT(MAPNAME,_enum_last)} BOOST_PP_CAT(MAPNAME,Enum);\ \ static void BOOST_PP_CAT(register_,MAPNAME)() \ { \ static bool inited(false); \ if (!inited) \ { \ inited = true; \ BOOST_PP_SEQ_FOR_EACH_R(1, ADD_TO_MAP, \ MAPNAME, BOOST_PP_CAT(PP_MSG_FILLER_0 seq, _END))\ } \ }; \
Definition at line 50 of file message_preprocess.hpp.
| #define GET_MESSAGE_NAME | ( | r, | |
| data, | |||
| elem | |||
| ) | BOOST_PP_TUPLE_ELEM(3,0,elem) = BOOST_PP_TUPLE_ELEM(3,1,elem), |
Definition at line 69 of file message_preprocess.hpp.
| #define PP_MSG_FILLER_0 | ( | X1, | |
| X2, | |||
| X3 | |||
| ) | ((X1,X2,X3)) PP_MSG_FILLER_1 |
Definition at line 43 of file message_preprocess.hpp.
| #define PP_MSG_FILLER_0_END |
Definition at line 47 of file message_preprocess.hpp.
| #define PP_MSG_FILLER_1 | ( | X1, | |
| X2, | |||
| X3 | |||
| ) | ((X1,X2,X3)) PP_MSG_FILLER_0 |
Definition at line 45 of file message_preprocess.hpp.
| #define PP_MSG_FILLER_1_END |
Definition at line 48 of file message_preprocess.hpp.