Belle II Software  release-05-02-19
MCMatcherTRGECLModule.h
1 //---------------------------------------------------------
2 // $Id$
3 //---------------------------------------------------------
4 // Filename : MCMatcherTRGECLModule.h
5 // Section : TRG ECL
6 // Owner : InSoo Lee/Yuuji Unno
7 // Email : islee@hep.hanyang.ac.kr / yunno@post.kek.jp
8 //---------------------------------------------------------
9 // Description : A MC Matching module for TRG ECL
10 //---------------------------------------------------------
11 // 0.00 : 2014/12/22 : First version
12 // Relation between MCParicle and
13 // TRGECLHit.
14 //---------------------------------------------------------
15 
16 #ifndef MCMATCHERTRGECLMODULE_H_
17 #define MCMATCHERTRGECLMODULE_H_
18 
19 //basf2 framework headers
20 #include <framework/core/Module.h>
21 #include <framework/datastore/StoreArray.h>
22 #include "trg/ecl/TrgEclMapping.h"
23 #include "trg/ecl/dataobjects/TRGECLDigi0MC.h"
24 #include "trg/ecl/dataobjects/TRGECLHitMC.h"
25 
26 //C++/C standard lib elements.
27 #include <map>
28 
29 namespace Belle2 {
34  //namespace ECL {
35 
40  class MCMatcherTRGECLModule : public Module {
41 
42  public:
45 
47  virtual ~MCMatcherTRGECLModule();
48 
50  virtual void initialize() override;
51 
53  virtual void beginRun() override;
54 
59  virtual void event() override;
60 
62  virtual void endRun() override;
63 
65  virtual void terminate() override;
66 
68  typedef std::map< int, int> PrimaryTrackMap;
70  typedef std::multimap< int, int> MultiMap;
71 
72 
73  private:
80  double m_timeCPU = 0.;
82  int m_nRun = 0;
84  int m_nEvent = 0;
88  int TCId[100];
90  double TCRawEnergy[100];
92  double TCRawTiming[100];
94  double SignalContribution[100];
96  double BKGContribution[100];
98  double maxEnergy[100][3] ;
100  double contribution[100][3];
102  int TCPrimaryIndex[100][3] ;
104  int XtalId[100][3] ;
106  double px[100][3] ;
108  double py[100][3] ;
110  double pz[100][3] ;
112  int trackId[100][3];
114  int background_tag[100][3];
116  int pid[100][3];
118  int mother[100][3] ;
120  int gmother[100][3] ;
122  int ggmother[100][3] ;
124  int gggmother[100][3] ;
125 
127  double MCEnergy[100][3];
129  int ieclhit[100][3];
131  int TCIdHit[100];
133  double TCHitEnergy[100];
135  double TCHitTiming[100];
137  int TCPrimaryIndexHit[100][3] ;
139  int XtalIdHit[100][3] ;
141  double pxHit[100][3] ;
143  double pyHit[100][3] ;
145  double pzHit[100][3] ;
147  int trackIdHit[100][3];
149  int background_tagHit[100][3];
151  int pidHit[100][3];
153  int motherHit[100][3] ;
155  int gmotherHit[100][3] ;
157  int ggmotherHit[100][3] ;
159  int gggmotherHit[100][3] ;
161  double MCEnergyHit[100][3];
165  double BKGContributionHit[100];
167  double contributionHit[100][3];
168 
169 
170  };
171  //} //TRGECL
173 } // end of Belle2 namespace
174 
175 #endif // TRGECLDIGI_H
Belle2::MCMatcherTRGECLModule::XtalId
int XtalId[100][3]
XtalId in TC
Definition: MCMatcherTRGECLModule.h:104
Belle2::MCMatcherTRGECLModule::pidHit
int pidHit[100][3]
Particle ID.
Definition: MCMatcherTRGECLModule.h:151
Belle2::MCMatcherTRGECLModule::py
double py[100][3]
Momentum Y of particle.
Definition: MCMatcherTRGECLModule.h:108
Belle2::MCMatcherTRGECLModule::contributionHit
double contributionHit[100][3]
particles contribution
Definition: MCMatcherTRGECLModule.h:167
Belle2::MCMatcherTRGECLModule::trackId
int trackId[100][3]
Track Id.
Definition: MCMatcherTRGECLModule.h:112
Belle2::MCMatcherTRGECLModule::pzHit
double pzHit[100][3]
Momentum X of particle.
Definition: MCMatcherTRGECLModule.h:145
Belle2::MCMatcherTRGECLModule::TCRawTiming
double TCRawTiming[100]
TC raw timing.
Definition: MCMatcherTRGECLModule.h:92
Belle2::MCMatcherTRGECLModule::TCPrimaryIndex
int TCPrimaryIndex[100][3]
Primary Index in TC hit
Definition: MCMatcherTRGECLModule.h:102
Belle2::MCMatcherTRGECLModule::XtalIdHit
int XtalIdHit[100][3]
XtalId in TC
Definition: MCMatcherTRGECLModule.h:139
Belle2::MCMatcherTRGECLModule::background_tag
int background_tag[100][3]
Beam background tag.
Definition: MCMatcherTRGECLModule.h:114
Belle2::MCMatcherTRGECLModule::MCMatcherTRGECLModule
MCMatcherTRGECLModule()
Constructor.
Definition: MCMatcherTRGECLModule.cc:56
Belle2::MCMatcherTRGECLModule::MultiMap
std::multimap< int, int > MultiMap
define a multimap for hits in showers
Definition: MCMatcherTRGECLModule.h:70
Belle2::MCMatcherTRGECLModule::mother
int mother[100][3]
Mother ID
Definition: MCMatcherTRGECLModule.h:118
Belle2::MCMatcherTRGECLModule::m_timeCPU
double m_timeCPU
CPU time
Definition: MCMatcherTRGECLModule.h:80
Belle2::MCMatcherTRGECLModule::TCHitEnergy
double TCHitEnergy[100]
TC Hit energy
Definition: MCMatcherTRGECLModule.h:133
Belle2::MCMatcherTRGECLModule::m_trgECLDigi0MC
StoreArray< TRGECLDigi0MC > m_trgECLDigi0MC
output for TRGECLDigi0MC
Definition: MCMatcherTRGECLModule.h:74
Belle2::MCMatcherTRGECLModule::pz
double pz[100][3]
Momentum Z of particle.
Definition: MCMatcherTRGECLModule.h:110
Belle2::MCMatcherTRGECLModule::m_nRun
int m_nRun
Run number
Definition: MCMatcherTRGECLModule.h:82
Belle2::TrgEclMapping
A class of TC Mapping.
Definition: TrgEclMapping.h:31
Belle2::MCMatcherTRGECLModule::pxHit
double pxHit[100][3]
Momentum X of particle.
Definition: MCMatcherTRGECLModule.h:141
Belle2::MCMatcherTRGECLModule::gggmother
int gggmother[100][3]
Grand Grand Grand Mother ID
Definition: MCMatcherTRGECLModule.h:124
Belle2::MCMatcherTRGECLModule::pid
int pid[100][3]
Particle ID.
Definition: MCMatcherTRGECLModule.h:116
Belle2::MCMatcherTRGECLModule::terminate
virtual void terminate() override
Stopping of CPU clock.
Definition: MCMatcherTRGECLModule.cc:534
Belle2::MCMatcherTRGECLModule::ggmotherHit
int ggmotherHit[100][3]
Grand Grand Mother ID
Definition: MCMatcherTRGECLModule.h:157
Belle2::MCMatcherTRGECLModule::gmother
int gmother[100][3]
Grand mother ID
Definition: MCMatcherTRGECLModule.h:120
Belle2::MCMatcherTRGECLModule::beginRun
virtual void beginRun() override
Nothing so far.
Definition: MCMatcherTRGECLModule.cc:144
Belle2::Module
Base class for Modules.
Definition: Module.h:74
Belle2::MCMatcherTRGECLModule::ieclhit
int ieclhit[100][3]
eclhit id
Definition: MCMatcherTRGECLModule.h:129
Belle2::MCMatcherTRGECLModule::TCPrimaryIndexHit
int TCPrimaryIndexHit[100][3]
Primary Index in TC hit
Definition: MCMatcherTRGECLModule.h:137
Belle2::MCMatcherTRGECLModule::TCIdHit
int TCIdHit[100]
TCId
Definition: MCMatcherTRGECLModule.h:131
Belle2::MCMatcherTRGECLModule::_TCMap
TrgEclMapping * _TCMap
object of TC Mapping
Definition: MCMatcherTRGECLModule.h:86
Belle2::MCMatcherTRGECLModule::BKGContribution
double BKGContribution[100]
Backgroun Contribution in a TC
Definition: MCMatcherTRGECLModule.h:96
Belle2::MCMatcherTRGECLModule::px
double px[100][3]
Momentum X of particle.
Definition: MCMatcherTRGECLModule.h:106
Belle2::MCMatcherTRGECLModule::event
virtual void event() override
Actual digitization of all hits in the ECL.
Definition: MCMatcherTRGECLModule.cc:148
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::MCMatcherTRGECLModule::pyHit
double pyHit[100][3]
Momentum X of particle.
Definition: MCMatcherTRGECLModule.h:143
Belle2::MCMatcherTRGECLModule::m_trgECLHitMC
StoreArray< TRGECLHitMC > m_trgECLHitMC
output for TRGECLHitMC
Definition: MCMatcherTRGECLModule.h:75
Belle2::MCMatcherTRGECLModule::MCEnergyHit
double MCEnergyHit[100][3]
Raw Energy of particle
Definition: MCMatcherTRGECLModule.h:161
Belle2::MCMatcherTRGECLModule::motherHit
int motherHit[100][3]
Mother ID
Definition: MCMatcherTRGECLModule.h:153
Belle2::MCMatcherTRGECLModule::TCHitTiming
double TCHitTiming[100]
TC Hit Timking
Definition: MCMatcherTRGECLModule.h:135
Belle2::MCMatcherTRGECLModule::ggmother
int ggmother[100][3]
Grand Grand Mother ID
Definition: MCMatcherTRGECLModule.h:122
Belle2::MCMatcherTRGECLModule::TCRawEnergy
double TCRawEnergy[100]
TC raw energy.
Definition: MCMatcherTRGECLModule.h:90
Belle2::MCMatcherTRGECLModule::TCId
int TCId[100]
TCId
Definition: MCMatcherTRGECLModule.h:88
Belle2::MCMatcherTRGECLModule
Class to represent the hit of one cell.
Definition: MCMatcherTRGECLModule.h:40
Belle2::MCMatcherTRGECLModule::~MCMatcherTRGECLModule
virtual ~MCMatcherTRGECLModule()
Destructor.
Definition: MCMatcherTRGECLModule.cc:118
Belle2::MCMatcherTRGECLModule::PrimaryTrackMap
std::map< int, int > PrimaryTrackMap
define a map for Primary Track
Definition: MCMatcherTRGECLModule.h:68
Belle2::MCMatcherTRGECLModule::SignalContribution
double SignalContribution[100]
Signal Contibution in a TC.
Definition: MCMatcherTRGECLModule.h:94
Belle2::MCMatcherTRGECLModule::BKGContributionHit
double BKGContributionHit[100]
Backgroun Contribution in a TC
Definition: MCMatcherTRGECLModule.h:165
Belle2::MCMatcherTRGECLModule::gmotherHit
int gmotherHit[100][3]
Grand mother ID
Definition: MCMatcherTRGECLModule.h:155
Belle2::MCMatcherTRGECLModule::initialize
virtual void initialize() override
Initialize variables, print info, and start CPU clock.
Definition: MCMatcherTRGECLModule.cc:123
Belle2::MCMatcherTRGECLModule::m_nEvent
int m_nEvent
Event number.
Definition: MCMatcherTRGECLModule.h:84
Belle2::MCMatcherTRGECLModule::SignalContributionHit
double SignalContributionHit[100]
Signal Contibution in a TC.
Definition: MCMatcherTRGECLModule.h:163
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::MCMatcherTRGECLModule::trackIdHit
int trackIdHit[100][3]
Track Id.
Definition: MCMatcherTRGECLModule.h:147
Belle2::MCMatcherTRGECLModule::maxEnergy
double maxEnergy[100][3]
Energy of maximum contribtion particle
Definition: MCMatcherTRGECLModule.h:98
Belle2::MCMatcherTRGECLModule::endRun
virtual void endRun() override
Nothing so far.
Definition: MCMatcherTRGECLModule.cc:529
Belle2::MCMatcherTRGECLModule::contribution
double contribution[100][3]
particles contribution
Definition: MCMatcherTRGECLModule.h:100
Belle2::MCMatcherTRGECLModule::MCEnergy
double MCEnergy[100][3]
Raw Energy of particle
Definition: MCMatcherTRGECLModule.h:127
Belle2::MCMatcherTRGECLModule::gggmotherHit
int gggmotherHit[100][3]
Grand Grand Grand Mother ID
Definition: MCMatcherTRGECLModule.h:159
Belle2::MCMatcherTRGECLModule::background_tagHit
int background_tagHit[100][3]
Beam background tag.
Definition: MCMatcherTRGECLModule.h:149