Belle II Software development
BKLMSimHistogrammerModule.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/* KLM headers. */
12#include <klm/dataobjects/bklm/BKLMHit1d.h>
13#include <klm/dataobjects/KLMDigit.h>
14#include <klm/dataobjects/KLMHit2d.h>
15#include <klm/dataobjects/KLMSimHit.h>
16
17/* Basf2 headers. */
18#include <framework/core/Module.h>
19#include <framework/datastore/StoreArray.h>
20#include <mdst/dataobjects/MCParticle.h>
21
22/* ROOT headers. */
23#include <TFile.h>
24#include <TH1D.h>
25#include <TH1I.h>
26#include <TH2D.h>
27
28/* C++ headers. */
29#include <string>
30
31namespace Belle2 {
39
40 public:
41
44
47
49 void initialize() override;
50
52 void beginRun() override;
53
55 void event() override;
56
58 void endRun() override;
59
61 void terminate() override;
62
63 protected:
64
65
68
70 TH1D* m_hEvt;
85
86
87
98
103 private:
104
105
127 TFile* m_file;
129 std::string m_filename;
133 float m_weight;
144
145
146 };
147
149} // end of namespace Belle2
Convert BKLM raw simulation hits to digitizations.
TH1D * m_hSimHitPhiScinti
histogram for sim hit phi
float m_realTime
time this simulation corresponds to
TH2D * m_bgSourcePerLayer2D
bg source of 2D hits
TH1I * m_hSimHit_layer2D
histogram for the layers of 2D hits
void initialize() override
Initialize at start of job.
void event() override
Digitize one event and write hits, digis, and relations into DataStore.
TH2D * m_hSimHitThetaPhiScinti
2D histogram for sim hit phi/theta
TH1D * m_hSimHitThetaRPC
histogram for sim hit theta
void endRun() override
Do any needed actions at the end of a simulation run.
TH2D * m_hSimHitThetaPhiRPC
2D histogram for sim hit phi/theta
void terminate() override
Terminate at the end of job.
TH1D * m_hSimHitThetaScinti
histogram for sim hit theta scint
StoreArray< KLMSimHit > simHits
KLMSimHit StoreArray.
TH2D * m_bgSourceVsPhi
bg source of 2D hits vs phi
StoreArray< BKLMHit1d > hits1D
hits1D StoreArray
TH1I * m_hSimHit_layer
histogram for the layers of 1D hits
void beginRun() override
Do any needed actions at the start of a simulation run.
TH1D * m_hSimHitPhiRPC
histogram for sim hit phi
StoreArray< KLMHit2d > hits2D
hits2D StoreArray
TFile * m_file
Digitize hit(s) in one scintillator strip with pulse-shape fit.
TH2D * m_bgSourceVsTheta
bg source of 2D hits vs theta
float m_weight
weight for each event (inverse of the realTime)
std::string m_filename
filename for the root file
StoreArray< MCParticle > mcParticles
mcParticles StoreArray
TH2D * m_bgSourcePerLayer
bg source of 1D hits
StoreArray< KLMDigit > digits
digits StoreArray
Base class for Modules.
Definition: Module.h:72
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Abstract base class for different kinds of events.