Belle II Software  release-05-02-19
EventT0GeneratorModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2017 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Marko Staric *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <framework/core/Module.h>
14 #include <cmath>
15 
16 #include <framework/datastore/StoreArray.h>
17 #include <framework/datastore/StoreObjPtr.h>
18 #include <mdst/dataobjects/MCParticle.h>
19 #include <framework/dataobjects/MCInitialParticles.h>
20 
21 
22 namespace Belle2 {
37  class EventT0GeneratorModule : public Module {
38 
39  public:
40 
45 
50  virtual void initialize() override;
51 
55  virtual void event() override;
56 
57  private:
58 
59  // module steering parameters
60  double m_coreGaussWidth;
61  double m_tailGaussWidth;
62  double m_tailGaussFraction;
63  double m_fixedT0 = NAN;
64  double m_maximumT0 = NAN;
66  // other
67  double m_bunchTimeSep = 0;
71  };
72 
74 } // Belle2 namespace
75 
Belle2::EventT0GeneratorModule::m_initialParticles
StoreObjPtr< MCInitialParticles > m_initialParticles
beam particles
Definition: EventT0GeneratorModule.h:77
Belle2::EventT0GeneratorModule::m_fixedT0
double m_fixedT0
if set, a fixed t0 value is used instead of a gaussian distrubtion
Definition: EventT0GeneratorModule.h:71
Belle2::EventT0GeneratorModule::m_tailGaussWidth
double m_tailGaussWidth
sigma of tail gaussian [ns]
Definition: EventT0GeneratorModule.h:69
Belle2::EventT0GeneratorModule::event
virtual void event() override
Event processor.
Definition: EventT0GeneratorModule.cc:83
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::StoreObjPtr
Type-safe access to single objects in the data store.
Definition: ParticleList.h:33
Belle2::EventT0GeneratorModule::m_bunchTimeSep
double m_bunchTimeSep
time between two bunches
Definition: EventT0GeneratorModule.h:75
Belle2::EventT0GeneratorModule::m_coreGaussWidth
double m_coreGaussWidth
sigma of core gaussian [ns]
Definition: EventT0GeneratorModule.h:68
Belle2::StoreArray< MCParticle >
Belle2::EventT0GeneratorModule::m_mcParticles
StoreArray< MCParticle > m_mcParticles
MC particles.
Definition: EventT0GeneratorModule.h:76
Belle2::EventT0GeneratorModule::m_tailGaussFraction
double m_tailGaussFraction
area fraction of core gaussian
Definition: EventT0GeneratorModule.h:70
Belle2::EventT0GeneratorModule::initialize
virtual void initialize() override
Initialize the Module.
Definition: EventT0GeneratorModule.cc:69
Belle2::EventT0GeneratorModule::m_maximumT0
double m_maximumT0
if set, randomize between -maximum and maximum
Definition: EventT0GeneratorModule.h:72
Belle2::EventT0GeneratorModule::EventT0GeneratorModule
EventT0GeneratorModule()
Constructor.
Definition: EventT0GeneratorModule.cc:43