52 static std::list<EvtDecayBase*>
getModels();
75#define B2_EVTGEN_REGISTER_MODEL(classname) namespace {\
76 Belle2::EvtGenModelRegister::Factory<classname> EvtGenModelFactory_##classname; \
Helper Class to easily register new EvtDecayBases for Belle2.
static EvtDecayBase * factory()
Create a new instance of the EvtDecayBase and return the pointer.
Factory()
Constructor to register a model with a given name.
Class to keep a register of all Belle2 EvtDecayBases.
static void registerModel(ModelFactory *factory)
Register a new Model, called by the EvtGenModelRegister::Factory class.
EvtDecayBase * ModelFactory()
Callback type to return a new model instance.
std::vector< ModelFactory * > m_models
List of all registered EvtGenModels.
EvtGenModelRegister & operator=(const EvtGenModelRegister &)=delete
Singleton: private assignment operator.
EvtGenModelRegister(const EvtGenModelRegister &other)=delete
Singleton: private copy constructor.
EvtGenModelRegister()
Singleton: private constructor.
static EvtGenModelRegister & getInstance()
Return reference to the instance.
static std::list< EvtDecayBase * > getModels()
Return a list of models.
Abstract base class for different kinds of events.