Belle II Software development
EventT0GeneratorModule.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#pragma once
10
11#include <framework/core/Module.h>
12
13#include <framework/datastore/StoreArray.h>
14#include <framework/datastore/StoreObjPtr.h>
15#include <mdst/dataobjects/MCParticle.h>
16#include <framework/dataobjects/MCInitialParticles.h>
17#include <simulation/dataobjects/SimClockState.h>
18
19#include <framework/database/DBObjPtr.h>
20#include <framework/dbobjects/HardwareClockSettings.h>
21#include <framework/dbobjects/BunchStructure.h>
22
23
24namespace Belle2 {
37
38 public:
39
44
49 virtual void initialize() override;
50
54 virtual void event() override;
55
56 private:
57
58 // module steering parameters
62 double m_fixedT0 = NAN;
63 double m_maximumT0 = NAN;
64 bool m_isCosmics = false;
70 // datastore collections
75 // conditions DB objects
79 };
80
82} // Belle2 namespace
83
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
Module generates discrete event t0 in ~4ns steps (bunch spacing) according to (double) gaussian distr...
double m_tailGaussMeanCosmics
mean of tail gaussian [ns] for cosmics
double m_maximumT0
if set, randomize between -maximum and maximum
bool m_isCosmics
if true L1 jitter for cosmics is simulated
virtual void initialize() override
Initialize the Module.
double m_fixedT0
if set, a fixed t0 value is used instead of a gaussian distribution
DBObjPtr< HardwareClockSettings > m_clockSettings
hardware clock settings
virtual void event() override
Event processor.
double m_tailGaussFractionCosmics
area fraction of core gaussian for cosmics
double m_coreGaussWidth
sigma of core gaussian [ns]
double m_tailGaussWidthCosmics
sigma of tail gaussian [ns] for cosmics
DBObjPtr< BunchStructure > m_bunchStructure
bunch structure (fill pattern)
double m_tailGaussFraction
area fraction of core gaussian
double m_tailGaussWidth
sigma of tail gaussian [ns]
StoreArray< MCParticle > m_mcParticles
MC particles.
double m_coreGaussWidthCosmics
sigma of core gaussian [ns] for cosmics
StoreObjPtr< SimClockState > m_simClockState
generated hardware clock state
StoreObjPtr< MCInitialParticles > m_initialParticles
beam particles
Base class for Modules.
Definition: Module.h:72
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Abstract base class for different kinds of events.