Belle II Software  release-05-02-19
EvtGenDecayModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2017 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Kirill Chilikin *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 /* C++ headers. */
14 #include <string>
15 
16 /* Belle 2 headers. */
17 #include <framework/core/Module.h>
18 #include <generators/evtgen/EvtGenInterface.h>
19 #include <generators/utilities/InitialParticleGeneration.h>
20 #include <mdst/dataobjects/MCParticleGraph.h>
21 
22 namespace Belle2 {
34  class EvtGenDecayModule : public Module {
35 
36  public:
37 
42 
46  virtual ~EvtGenDecayModule();
47 
51  virtual void initialize() override;
52 
56  virtual void beginRun() override;
57 
61  virtual void event() override;
62 
66  virtual void endRun() override;
67 
71  virtual void terminate() override;
72 
73  private:
74 
78  void initializeGenerator();
79 
81  std::string m_DecFile;
82 
84  std::string m_UserDecFile;
85 
87  std::string m_MCParticleColName;
88 
91 
94 
96  bool m_Initialized;
97 
99  std::set<int> m_DecayableParticles;
100 
103 
104  };
105 
107 }
108 
109 
Belle2::EvtGenDecayModule::~EvtGenDecayModule
virtual ~EvtGenDecayModule()
Destructor.
Definition: EvtGenDecayModule.cc:40
Belle2::EvtGenDecayModule::m_Graph
MCParticleGraph m_Graph
MCParticle graph.
Definition: EvtGenDecayModule.h:98
Belle2::EvtGenDecayModule::initializeGenerator
void initializeGenerator()
Generator initialization.
Definition: EvtGenDecayModule.cc:108
Belle2::EvtGenDecayModule::m_DecayableParticles
std::set< int > m_DecayableParticles
Monte-Carlo codes of particles that can be decayed by EvtGen.
Definition: EvtGenDecayModule.h:107
Belle2::MCParticleGraph
Class to build, validate and sort a particle decay chain.
Definition: MCParticleGraph.h:48
Belle2::EvtGenDecayModule::m_DecFile
std::string m_DecFile
Decay file.
Definition: EvtGenDecayModule.h:89
Belle2::EvtGenDecayModule::m_UserDecFile
std::string m_UserDecFile
User decay file.
Definition: EvtGenDecayModule.h:92
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::EvtGenDecayModule::EvtGenDecayModule
EvtGenDecayModule()
Constructor.
Definition: EvtGenDecayModule.cc:24
Belle2::EvtGenDecayModule::beginRun
virtual void beginRun() override
This method is called when entering a new run.
Definition: EvtGenDecayModule.cc:62
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::EvtGenInterface
Class to interface EvtGen.
Definition: EvtGenInterface.h:44
Belle2::EvtGenDecayModule::endRun
virtual void endRun() override
This method is called if the current run ends.
Definition: EvtGenDecayModule.cc:100
Belle2::EvtGenDecayModule::m_Initialized
bool m_Initialized
Whether the generator is initialized or not.
Definition: EvtGenDecayModule.h:104
Belle2::EvtGenDecayModule::initialize
virtual void initialize() override
Initialization.
Definition: EvtGenDecayModule.cc:44
Belle2::EvtGenDecayModule::m_BeamParameters
DBObjPtr< BeamParameters > m_BeamParameters
Beam parameters.
Definition: EvtGenDecayModule.h:110
Belle2::EvtGenDecayModule::terminate
virtual void terminate() override
This method is called at the end of the event processing.
Definition: EvtGenDecayModule.cc:104
Belle2::EvtGenDecayModule::m_MCParticleColName
std::string m_MCParticleColName
MCParticle collection name.
Definition: EvtGenDecayModule.h:95
Belle2::EvtGenDecayModule::event
virtual void event() override
This method is called for each event.
Definition: EvtGenDecayModule.cc:66
Belle2::EvtGenDecayModule::m_EvtGenInterface
EvtGenInterface m_EvtGenInterface
Evtgen interface.
Definition: EvtGenDecayModule.h:101