PeriDyno 1.0.0
Loading...
Searching...
No Matches
DeclareEnum.h File Reference
#include <map>
#include <string>
#include "Field.h"
Include dependency graph for DeclareEnum.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  dyno::PEnum
 
class  dyno::FVar< PEnum >
 Specialization for the field type of PEnum.
 

Namespaces

namespace  dyno
 This is an implementation of AdditiveCCD based on peridyno.
 

Macros

#define DECLARE_ENUM(enum_type, ...)
 
#define DEF_ENUM(enum_type, enum_name, enum_value, desc)
 

Typedefs

typedef std::map< int, std::string > dyno::EnumMap
 

Functions

bool dyno::parse_enum_string (const std::string &enum_str, EnumMap &enumKeyValueList)
 

Macro Definition Documentation

◆ DECLARE_ENUM

#define DECLARE_ENUM ( enum_type,
... )
Value:
enum enum_type{ \
__VA_ARGS__ \
}; \
const std::string full_name_##enum_type = #__VA_ARGS__;

Definition at line 28 of file DeclareEnum.h.

◆ DEF_ENUM

#define DEF_ENUM ( enum_type,
enum_name,
enum_value,
desc )
Value:
private: \
FVar<PEnum> var_##enum_name = FVar<PEnum>(PEnum(#enum_type, enum_value, full_name_##enum_type), std::string(#enum_name), desc, FieldTypeEnum::Param, this); \
public: \
inline FVar<PEnum>* var##enum_name() {return &var_##enum_name;}

Definition at line 174 of file DeclareEnum.h.