HOM/HOM_EnumValue.h File Reference

#include "HOM_API.h"
#include "HOM_Defines.h"
#include "HOM_PtrOrNull.h"
#include <SYS/SYS_Math.h>
#include <string>
#include <typeinfo>
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/arithmetic/dec.hpp>
#include <boost/preprocessor/tuple/to_seq.hpp>
#include <boost/preprocessor/tuple/rem.hpp>
#include <boost/preprocessor/seq/transform.hpp>
#include <boost/preprocessor/seq/for_each.hpp>
#include <boost/preprocessor/stringize.hpp>

Go to the source code of this file.

Defines

#define HOM_DECLARE_ENUM_MODULE_START(enum_module)
#define HOM_DECLARE_ENUM_MODULE_END   }; \
#define HOM_DECLARE_ENUM_VALUE(r, unused_data, elem)
#define HOM_DECLARE_ENUM_MODULE_FROM_SEQ(enum_module, values_seq)
#define HOM_DECLARE_ENUM_MODULE(enum_module, num_values, values_tuple)
#define HOM_DEFINE_ENUM_VALUE(r, enum_module, elem)
#define HOM_DEFINE_ENUM_MODULE_FROM_SEQ(enum_module, values_seq)   BOOST_PP_SEQ_FOR_EACH(HOM_DEFINE_ENUM_VALUE, enum_module, values_seq)
#define HOM_DEFINE_ENUM_MODULE(enum_module, num_values, values_tuple)

Functions

 SWIGOUT (%rename(EnumValue) HOM_EnumValue;) class HOM_API HOM_EnumValue


Define Documentation

#define HOM_DECLARE_ENUM_MODULE ( enum_module,
num_values,
values_tuple   ) 

Value:

HOM_DECLARE_ENUM_MODULE_FROM_SEQ(enum_module, \
        BOOST_PP_TUPLE_TO_SEQ(num_values, (values_tuple)))

Definition at line 149 of file HOM_EnumValue.h.

#define HOM_DECLARE_ENUM_MODULE_END   }; \

Definition at line 112 of file HOM_EnumValue.h.

#define HOM_DECLARE_ENUM_MODULE_FROM_SEQ ( enum_module,
values_seq   ) 

Value:

HOM_DECLARE_ENUM_MODULE_START(enum_module) \
    BOOST_PP_SEQ_FOR_EACH(HOM_DECLARE_ENUM_VALUE, _, values_seq) \
    HOM_DECLARE_ENUM_MODULE_END

Definition at line 139 of file HOM_EnumValue.h.

#define HOM_DECLARE_ENUM_MODULE_START ( enum_module   ) 

Value:

SWIGOUT(%nodefaultctor HOM_ ## enum_module;) \
    SWIGOUT(%rename(enum_module) HOM_ ## enum_module;) \
    class HOM_API HOM_ ## enum_module \
    { \
    public:

Definition at line 106 of file HOM_EnumValue.h.

#define HOM_DECLARE_ENUM_VALUE ( r,
unused_data,
elem   ) 

Value:

static HOM_EnumValue elem; \
    static const int BOOST_PP_CAT(elem, _Id) = BOOST_PP_DEC(r);

Definition at line 133 of file HOM_EnumValue.h.

#define HOM_DEFINE_ENUM_MODULE ( enum_module,
num_values,
values_tuple   ) 

Value:

HOM_DEFINE_ENUM_MODULE_FROM_SEQ(enum_module, \
        BOOST_PP_TUPLE_TO_SEQ(num_values, (values_tuple)))

Definition at line 168 of file HOM_EnumValue.h.

#define HOM_DEFINE_ENUM_MODULE_FROM_SEQ ( enum_module,
values_seq   )     BOOST_PP_SEQ_FOR_EACH(HOM_DEFINE_ENUM_VALUE, enum_module, values_seq)

Definition at line 165 of file HOM_EnumValue.h.

#define HOM_DEFINE_ENUM_VALUE ( r,
enum_module,
elem   ) 

Value:

HOM_EnumValue BOOST_PP_CAT(HOM_, enum_module)::elem \
        (typeid(BOOST_PP_CAT(HOM_, enum_module)), \
         BOOST_PP_STRINGIZE(enum_module) "." BOOST_PP_STRINGIZE(elem), \
         BOOST_PP_STRINGIZE(elem), \
         BOOST_PP_DEC(r));

Definition at line 157 of file HOM_EnumValue.h.


Function Documentation

SWIGOUT ( %rename(EnumValue) HOM_EnumValue;   ) 

Definition at line 28 of file HOM_EnumValue.h.


Generated on Mon Jan 28 00:27:48 2013 for HDK by  doxygen 1.5.9