HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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 <hboost/preprocessor/cat.hpp>
#include <hboost/preprocessor/arithmetic/dec.hpp>
#include <hboost/preprocessor/tuple/to_seq.hpp>
#include <hboost/preprocessor/tuple/rem.hpp>
#include <hboost/preprocessor/seq/transform.hpp>
#include <hboost/preprocessor/seq/for_each.hpp>
#include <hboost/preprocessor/stringize.hpp>
+ Include dependency graph for HOM_EnumValue.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  HOM_EnumValue
 

Macros

#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)   HBOOST_PP_SEQ_FOR_EACH(HOM_DEFINE_ENUM_VALUE, enum_module, values_seq)
 
#define HOM_DEFINE_ENUM_MODULE(enum_module, num_values, values_tuple)
 
#define HOM_DECLARE_ENUM_VALUE2(enum_module, enum_elem, ienum_elem, ienum_elem_name, enum_value)
 
#define HOM_DEFINE_ENUM_VALUE2(enum_module, enum_elem, ienum_elem, ienum_elem_name, enum_value)
 

Macro Definition Documentation

#define HOM_DECLARE_ENUM_MODULE (   enum_module,
  num_values,
  values_tuple 
)
Value:
HBOOST_PP_TUPLE_TO_SEQ(num_values, (values_tuple)))
#define HOM_DECLARE_ENUM_MODULE_FROM_SEQ(enum_module, values_seq)

Definition at line 154 of file HOM_EnumValue.h.

#define HOM_DECLARE_ENUM_MODULE_END   };

Definition at line 117 of file HOM_EnumValue.h.

#define HOM_DECLARE_ENUM_MODULE_FROM_SEQ (   enum_module,
  values_seq 
)
Value:
HBOOST_PP_SEQ_FOR_EACH(HOM_DECLARE_ENUM_VALUE, _, values_seq) \
#define HOM_DECLARE_ENUM_VALUE(r, unused_data, elem)
#define HOM_DECLARE_ENUM_MODULE_END
#define HOM_DECLARE_ENUM_MODULE_START(enum_module)

Definition at line 144 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:
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
#define HOM_API
Definition: HOM_API.h:13
OIIO_UTIL_API bool rename(string_view from, string_view to, std::string &err)

Definition at line 111 of file HOM_EnumValue.h.

#define HOM_DECLARE_ENUM_VALUE (   r,
  unused_data,
  elem 
)
Value:
static HOM_EnumValue elem; \
static const int HBOOST_PP_CAT(elem, _Id) = HBOOST_PP_DEC(r);
GLboolean r
Definition: glcorearb.h:1222

Definition at line 138 of file HOM_EnumValue.h.

#define HOM_DECLARE_ENUM_VALUE2 (   enum_module,
  enum_elem,
  ienum_elem,
  ienum_elem_name,
  enum_value 
)
Value:
static HOM_EnumValue enum_elem; \
static const int HBOOST_PP_CAT(enum_elem,_Id) = enum_value;

Definition at line 187 of file HOM_EnumValue.h.

#define HOM_DEFINE_ENUM_MODULE (   enum_module,
  num_values,
  values_tuple 
)
Value:
HBOOST_PP_TUPLE_TO_SEQ(num_values, (values_tuple)))
#define HOM_DEFINE_ENUM_MODULE_FROM_SEQ(enum_module, values_seq)

Definition at line 173 of file HOM_EnumValue.h.

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

Definition at line 170 of file HOM_EnumValue.h.

#define HOM_DEFINE_ENUM_VALUE (   r,
  enum_module,
  elem 
)
Value:
HOM_EnumValue HBOOST_PP_CAT(HOM_, enum_module)::elem \
(typeid(HBOOST_PP_CAT(HOM_, enum_module)), \
HBOOST_PP_STRINGIZE(enum_module) "." HBOOST_PP_STRINGIZE(elem), \
HBOOST_PP_STRINGIZE(elem), \
HBOOST_PP_DEC(r));
GLboolean r
Definition: glcorearb.h:1222

Definition at line 162 of file HOM_EnumValue.h.

#define HOM_DEFINE_ENUM_VALUE2 (   enum_module,
  enum_elem,
  ienum_elem,
  ienum_elem_name,
  enum_value 
)
Value:
HOM_EnumValue HBOOST_PP_CAT(HOM_,enum_module)::enum_elem \
((typeid(HBOOST_PP_CAT(HOM_,enum_module))), \
HBOOST_PP_STRINGIZE(enum_module) "." HBOOST_PP_STRINGIZE(enum_elem), \
HBOOST_PP_STRINGIZE(enum_elem), \
enum_value);

Definition at line 197 of file HOM_EnumValue.h.