diff options
Diffstat (limited to 'libcmix-common/cmixprotofunctor.hpp')
| -rw-r--r-- | libcmix-common/cmixprotofunctor.hpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/libcmix-common/cmixprotofunctor.hpp b/libcmix-common/cmixprotofunctor.hpp index effa8bd..0055593 100644 --- a/libcmix-common/cmixprotofunctor.hpp +++ b/libcmix-common/cmixprotofunctor.hpp @@ -37,9 +37,19 @@ struct CMixProtoFunctor { return m; \ } \ + /*! + * \def MESSAGE_SETTER_DEF_ITERATION(Z, N, DATA) + * Defines one iteration of the Repeat below, + * \param Z level over repeat we are using it should be 1. + * \param N current iteration + * \param The sequence consisiting of "pairs" of TYPE, NAME + */ #define MESSAGE_SETTER_DEF_ITERATION(Z, N, DATA) \ MESSAGE_SETTER_DEF(BOOST_PP_SEQ_ELEM(BOOST_PP_MUL(N, 2), DATA), BOOST_PP_SEQ_ELEM(BOOST_PP_ADD(BOOST_PP_MUL(N, 2), 1), DATA)) + /*! + * Loops over the length of the variadic macro parameter / 2 + */ #define MESSAGE_SETTER_DEFS(...) \ BOOST_PP_REPEAT(BOOST_PP_DIV(BOOST_PP_VARIADIC_SIZE(__VA_ARGS__), 2), MESSAGE_SETTER_DEF_ITERATION, BOOST_PP_VARIADIC_TO_SEQ(__VA_ARGS__)) @@ -54,7 +64,9 @@ struct CMixProtoFunctor { UserMessage, usermessage, PrePre, prepre, PreMix, premix, - PrePost, prepost + PrePost, prepost, + RealPre, realpre, + RealMix, realmix, ) #undef MESSAGE_SETTER_DEFS #undef MESSAGE_SETTER_DEF_ITERATION |
