Belle II Software  release-05-01-25
EvtGenModelRegister.cc
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Martin Ritter *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #include <generators/evtgen/EvtGenModelRegister.h>
12 
13 #include <memory>
14 
15 using namespace std;
16 
17 namespace Belle2 {
23  EvtGenModelRegister& EvtGenModelRegister::getInstance()
24  {
25  static unique_ptr<EvtGenModelRegister> instance(new EvtGenModelRegister());
26  return *instance;
27  }
28 
29  list<EvtDecayBase*> EvtGenModelRegister::getModels()
30  {
31  list<EvtDecayBase*> modelList;
32  for (auto factory : getInstance().m_models) {
33  modelList.push_back(factory());
34  }
35  return modelList;
36  }
38 }
Belle2::EvtGenModelRegister
Class to keep a register of all Belle2 EvtDecayBases.
Definition: EvtGenModelRegister.h:25
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19