Belle II Software  release-05-02-19
ParticleGunModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Susanne Koblitz, Martin Ritter *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <framework/core/Module.h>
14 
15 #include <mdst/dataobjects/MCParticleGraph.h>
16 #include <generators/particlegun/ParticleGun.h>
17 
18 #include <string>
19 
20 namespace Belle2 {
33  class ParticleGunModule : public Module {
34  public:
40 
42  virtual ~ParticleGunModule() {}
43 
45  void initialize() override;
46 
48  void event() override;
49 
50  protected:
53 
59  std::string m_momentumDist;
61  std::string m_phiDist;
63  std::string m_thetaDist;
65  std::string m_timeDist;
67  std::string m_vertexDist;
69  std::string m_xVertexDist;
71  std::string m_yVertexDist;
73  std::string m_zVertexDist;
76  };
77 
79 } // end namespace Belle2
80 
Belle2::ParticleGunModule::event
void event() override
Method is called for each event.
Definition: ParticleGunModule.cc:221
Belle2::ParticleGunModule::m_momentumDist
std::string m_momentumDist
String representation of the momentum distribution.
Definition: ParticleGunModule.h:67
Belle2::ParticleGunModule::m_timeDist
std::string m_timeDist
String representation of the time distribution.
Definition: ParticleGunModule.h:73
Belle2::MCParticleGraph
Class to build, validate and sort a particle decay chain.
Definition: MCParticleGraph.h:48
Belle2::ParticleGun::Parameters
Struct to keep all necessary parameters for the particle gun.
Definition: ParticleGun.h:75
Belle2::ParticleGunModule::m_particleGun
ParticleGun m_particleGun
Instance of the particle gun.
Definition: ParticleGunModule.h:63
Belle2::ParticleGunModule::m_zVertexDist
std::string m_zVertexDist
String representation of the z vertex distribution.
Definition: ParticleGunModule.h:81
Belle2::ParticleGunModule::m_yVertexDist
std::string m_yVertexDist
String representation of the y vertex distribution.
Definition: ParticleGunModule.h:79
Belle2::ParticleGunModule::initialize
void initialize() override
Initializes the module.
Definition: ParticleGunModule.cc:183
Belle2::ParticleGunModule::ParticleGunModule
ParticleGunModule()
Constructor.
Definition: ParticleGunModule.cc:28
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ParticleGunModule::m_parameters
ParticleGun::Parameters m_parameters
Parameters of the particle gun.
Definition: ParticleGunModule.h:65
Belle2::ParticleGunModule::~ParticleGunModule
virtual ~ParticleGunModule()
Destructor.
Definition: ParticleGunModule.h:50
Belle2::ParticleGunModule::m_vertexDist
std::string m_vertexDist
String representation of the vertex distribution.
Definition: ParticleGunModule.h:75
Belle2::ParticleGunModule::m_particleGraph
MCParticleGraph m_particleGraph
Particle graph to generate MCParticle list.
Definition: ParticleGunModule.h:83
Belle2::ParticleGun::EDistribution
EDistribution
enum containing all known distributions available for generation of values
Definition: ParticleGun.h:39
Belle2::ParticleGunModule::convertDistribution
ParticleGun::EDistribution convertDistribution(std::string name)
function to convert the strings the uses sets in the parameter list to the internal encoding
Definition: ParticleGunModule.cc:160
Belle2::ParticleGunModule::m_xVertexDist
std::string m_xVertexDist
String representation of the x vertex distribution.
Definition: ParticleGunModule.h:77
Belle2::ParticleGunModule::m_thetaDist
std::string m_thetaDist
String representation of the polar angle distribution.
Definition: ParticleGunModule.h:71
Belle2::ParticleGun
Class to generate tracks in the particle gun and store them in a MCParticle graph.
Definition: ParticleGun.h:36
Belle2::ParticleGunModule::m_phiDist
std::string m_phiDist
String representation of the azimuth angle distribution.
Definition: ParticleGunModule.h:69