Belle II Software development
MCMatcherTRGECLModule.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#ifndef MCMATCHERTRGECLMODULE_H_
10#define MCMATCHERTRGECLMODULE_H_
11
12//basf2 framework headers
13#include <framework/core/Module.h>
14#include <framework/datastore/StoreArray.h>
15#include "trg/ecl/TrgEclMapping.h"
16#include "trg/ecl/dataobjects/TRGECLDigi0MC.h"
17#include "trg/ecl/dataobjects/TRGECLHitMC.h"
18
19//C++/C standard lib elements.
20#include <map>
21
22namespace Belle2 {
27 //namespace ECL {
28
31
32 public:
35
37 virtual ~MCMatcherTRGECLModule();
38
41
44
46 virtual void initialize() override;
47
49 virtual void beginRun() override;
50
55 virtual void event() override;
56
58 virtual void endRun() override;
59
61 virtual void terminate() override;
62
64 typedef std::map< int, int> PrimaryTrackMap;
66 typedef std::multimap< int, int> MultiMap;
67
68
69 private:
76 double m_timeCPU = 0.;
78 int m_nRun = 0;
80 int m_nEvent = 0;
84 int TCId[100];
86 double TCRawEnergy[100];
88 double TCRawTiming[100];
90 double SignalContribution[100];
92 double BKGContribution[100];
94 double maxEnergy[100][3] ;
96 double contribution[100][3];
98 int TCPrimaryIndex[100][3] ;
100 int XtalId[100][3] ;
102 double px[100][3] ;
104 double py[100][3] ;
106 double pz[100][3] ;
108 int trackId[100][3];
110 int background_tag[100][3];
112 int pid[100][3];
114 int mother[100][3] ;
116 int gmother[100][3] ;
118 int ggmother[100][3] ;
120 int gggmother[100][3] ;
121
123 double MCEnergy[100][3];
125 int ieclhit[100][3];
127 int TCIdHit[100];
129 double TCHitEnergy[100];
131 double TCHitTiming[100];
133 int TCPrimaryIndexHit[100][3] ;
135 int XtalIdHit[100][3] ;
137 double pxHit[100][3] ;
139 double pyHit[100][3] ;
141 double pzHit[100][3] ;
143 int trackIdHit[100][3];
145 int background_tagHit[100][3];
147 int pidHit[100][3];
149 int motherHit[100][3] ;
151 int gmotherHit[100][3] ;
153 int ggmotherHit[100][3] ;
155 int gggmotherHit[100][3] ;
157 double MCEnergyHit[100][3];
163 double contributionHit[100][3];
164
165
166 };
167 //} //TRGECL
169} // end of Belle2 namespace
170
171#endif // TRGECLDIGI_H
Class to represent the hit of one cell.
double pz[100][3]
Momentum Z of particle.
double BKGContribution[100]
Backgroun Contribution in a TC
int background_tag[100][3]
Beam background tag.
int gmotherHit[100][3]
Grand mother ID
double contributionHit[100][3]
particles contribution
std::multimap< int, int > MultiMap
define a multimap for hits in showers
virtual void initialize() override
Initialize variables, print info, and start CPU clock.
StoreArray< TRGECLDigi0MC > m_trgECLDigi0MC
output for TRGECLDigi0MC
double pxHit[100][3]
Momentum X of particle.
int ggmother[100][3]
Grand Grand Mother ID
double MCEnergy[100][3]
Raw Energy of particle
virtual void event() override
Actual digitization of all hits in the ECL.
MCMatcherTRGECLModule(MCMatcherTRGECLModule &)=delete
Copy constructor, deleted.
double SignalContribution[100]
Signal Contibution in a TC.
double contribution[100][3]
particles contribution
double py[100][3]
Momentum Y of particle.
virtual void endRun() override
Nothing so far.
MCMatcherTRGECLModule & operator=(MCMatcherTRGECLModule &)=delete
Assignment operator, deleted.
double BKGContributionHit[100]
Backgroun Contribution in a TC
int gggmotherHit[100][3]
Grand Grand Grand Mother ID
virtual void terminate() override
Stopping of CPU clock.
int gmother[100][3]
Grand mother ID
double TCHitEnergy[100]
TC Hit energy
int TCPrimaryIndexHit[100][3]
Primary Index in TC hit
double pzHit[100][3]
Momentum X of particle.
double MCEnergyHit[100][3]
Raw Energy of particle
double SignalContributionHit[100]
Signal Contibution in a TC.
int ggmotherHit[100][3]
Grand Grand Mother ID
int TCPrimaryIndex[100][3]
Primary Index in TC hit
StoreArray< TRGECLHitMC > m_trgECLHitMC
output for TRGECLHitMC
virtual void beginRun() override
Nothing so far.
int gggmother[100][3]
Grand Grand Grand Mother ID
double maxEnergy[100][3]
Energy of maximum contribtion particle
double TCRawEnergy[100]
TC raw energy.
virtual ~MCMatcherTRGECLModule()
Destructor.
int background_tagHit[100][3]
Beam background tag.
double pyHit[100][3]
Momentum X of particle.
double TCHitTiming[100]
TC Hit Timking
std::map< int, int > PrimaryTrackMap
define a map for Primary Track
int XtalIdHit[100][3]
XtalId in TC
double TCRawTiming[100]
TC raw timing.
double px[100][3]
Momentum X of particle.
TrgEclMapping * _TCMap
object of TC Mapping
Base class for Modules.
Definition: Module.h:72
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
A class of TC Mapping.
Definition: TrgEclMapping.h:26
Abstract base class for different kinds of events.