BioDynaMo
v1.05.120-25dc9790
|
Go to the documentation of this file.
15 #ifndef CORE_PARAM_PARAM_GROUP_H_
16 #define CORE_PARAM_PARAM_GROUP_H_
20 #include "cpptoml/cpptoml.h"
62 #define BDM_PARAM_GROUP_HEADER(name, version_id) \
63 static const ParamGroupUid kUid; \
66 ParamGroup* NewCopy() const override { return new name(*this); } \
67 ParamGroupUid GetUid() const override { return kUid; } \
70 BDM_CLASS_DEF_OVERRIDE(name, version_id); \
76 #endif // CORE_PARAM_PARAM_GROUP_H_
virtual void AssignFromConfig(const std::shared_ptr< cpptoml::table > &)
std::atomic< ParamGroupUid > counter_
virtual ParamGroup * NewCopy() const =0
virtual ParamGroupUid GetUid() const =0
Interface for parameter groups.
ParamGroupUidGenerator & operator=(const ParamGroupUidGenerator &)=delete
static ParamGroupUidGenerator * Get()
BDM_CLASS_DEF(ParamGroup, 1)
This class generates unique ids for parameter groups. Thread safe.