Belle II Software  release-05-02-19
FANGSDigitizerModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2015 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Igal Jaegle *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #ifndef FANGSDIGITIZERMODULE_H
12 #define FANGSDIGITIZERMODULE_H
13 
14 #include <framework/core/Module.h>
15 #include <framework/datastore/StoreArray.h>
16 #include <beast/fangs/dataobjects/FANGSHit.h>
17 
18 #include <TF1.h>
19 
20 #include <map>
21 #include <tuple>
22 
24 constexpr int MAXtSIZE = 1000;
26 constexpr int MAXSIZE = 3000;
27 
28 namespace Belle2 {
33  namespace fangs {
40  class FANGSDigitizerModule : public Module {
41 
42  public:
43 
48 
50  virtual ~FANGSDigitizerModule();
51 
55  virtual void initialize() override;
56 
59  virtual void beginRun() override;
60 
64  virtual void event() override;
65 
68  virtual void endRun() override;
69 
72  virtual void terminate() override;
73 
74 
75  private:
76  StoreArray<FANGSHit> m_fangsHit;
79  void getXMLData();
80 
82  void Pixelization();
83 
97  double m_ChipColumnX;
99  double m_ChipRowY;
105  double m_TOTA1;
107  double m_TOTB1;
109  double m_TOTC1;
111  double m_TOTQ1;
113  double m_TOTA2;
115  double m_TOTB2;
117  double m_TOTC2;
119  double m_TOTQ2;
121  double m_Workfct;
123  double m_Fanofac;
127  double m_v_sensor;
129  std::map<std::tuple<int, int, int>, int> m_dchip;
131  std::map<std::tuple<int, int>, int> m_dchip_map;
133  std::map<std::tuple<int, int>, int> m_dchip_pdg_map;
135  std::map<std::tuple<int, int>, int> m_dchip_trkID_map;
137  std::map<std::tuple<int, int>, int> m_dchip_detNb_map;
139  int m_nFANGS = 15;
140 
142  double m_lowerTimingCut = 0;
144  double m_upperTimingCut = 1000000;
145 
147  int olddetNb = -1;
148 
149  };
150 
151  }
153 }
154 
155 #endif /* FANGSDIGITIZERMODULE_H */
Belle2::fangs::FANGSDigitizerModule::beginRun
virtual void beginRun() override
Called when entering a new run.
Definition: FANGSDigitizerModule.cc:66
Belle2::fangs::FANGSDigitizerModule::m_TOTA2
double m_TOTA2
TOT factor A2.
Definition: FANGSDigitizerModule.h:113
Belle2::fangs::FANGSDigitizerModule::m_PixelTimeBin
double m_PixelTimeBin
Pixel time bin.
Definition: FANGSDigitizerModule.h:103
Belle2::fangs::FANGSDigitizerModule::m_ChipRowY
double m_ChipRowY
Chip row y dimension.
Definition: FANGSDigitizerModule.h:99
Belle2::fangs::FANGSDigitizerModule::m_ChipRowNb
int m_ChipRowNb
Chip row number.
Definition: FANGSDigitizerModule.h:95
Belle2::fangs::FANGSDigitizerModule::m_PixelThresholdRMS
int m_PixelThresholdRMS
Pixel threshold RMS.
Definition: FANGSDigitizerModule.h:91
Belle2::fangs::FANGSDigitizerModule::initialize
virtual void initialize() override
Initialize the Module.
Definition: FANGSDigitizerModule.cc:50
Belle2::fangs::FANGSDigitizerModule::m_Fanofac
double m_Fanofac
Fano factor.
Definition: FANGSDigitizerModule.h:123
Belle2::fangs::FANGSDigitizerModule::fctToT_Calib1
TF1 * fctToT_Calib1
Define ToT calib 1.
Definition: FANGSDigitizerModule.h:85
Belle2::fangs::FANGSDigitizerModule::m_ChipColumnNb
int m_ChipColumnNb
Chip column number.
Definition: FANGSDigitizerModule.h:93
Belle2::fangs::FANGSDigitizerModule::m_dchip
std::map< std::tuple< int, int, int >, int > m_dchip
chip store arrays
Definition: FANGSDigitizerModule.h:129
Belle2::fangs::FANGSDigitizerModule::m_dchip_map
std::map< std::tuple< int, int >, int > m_dchip_map
chip map arrays
Definition: FANGSDigitizerModule.h:131
Belle2::fangs::FANGSDigitizerModule::m_TOTC1
double m_TOTC1
TOT factor C1.
Definition: FANGSDigitizerModule.h:109
Belle2::fangs::FANGSDigitizerModule::m_Workfct
double m_Workfct
Work function.
Definition: FANGSDigitizerModule.h:121
Belle2::fangs::FANGSDigitizerModule::m_lowerTimingCut
double m_lowerTimingCut
Lower timing cut.
Definition: FANGSDigitizerModule.h:142
Belle2::Module
Base class for Modules.
Definition: Module.h:74
Belle2::fangs::FANGSDigitizerModule::event
virtual void event() override
This method is the core of the module.
Definition: FANGSDigitizerModule.cc:70
Belle2::fangs::FANGSDigitizerModule::m_dchip_trkID_map
std::map< std::tuple< int, int >, int > m_dchip_trkID_map
chip track ID map arrays
Definition: FANGSDigitizerModule.h:135
Belle2::fangs::FANGSDigitizerModule::m_dchip_pdg_map
std::map< std::tuple< int, int >, int > m_dchip_pdg_map
chip pdg map arrays
Definition: FANGSDigitizerModule.h:133
Belle2::fangs::FANGSDigitizerModule::Pixelization
void Pixelization()
Produces the pixelization.
Definition: FANGSDigitizerModule.cc:171
Belle2::fangs::FANGSDigitizerModule::olddetNb
int olddetNb
Old detector counter.
Definition: FANGSDigitizerModule.h:147
Belle2::fangs::FANGSDigitizerModule::m_ChipColumnX
double m_ChipColumnX
Chip column x dimension.
Definition: FANGSDigitizerModule.h:97
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::fangs::FANGSDigitizerModule::m_sensor_width
double m_sensor_width
sensor width
Definition: FANGSDigitizerModule.h:125
Belle2::fangs::FANGSDigitizerModule::m_TOTC2
double m_TOTC2
TOT factor C2.
Definition: FANGSDigitizerModule.h:117
Belle2::fangs::FANGSDigitizerModule::m_TOTB1
double m_TOTB1
TOT factor B1.
Definition: FANGSDigitizerModule.h:107
Belle2::fangs::FANGSDigitizerModule::fctToT_Calib2
TF1 * fctToT_Calib2
Define ToT calib 2.
Definition: FANGSDigitizerModule.h:87
Belle2::fangs::FANGSDigitizerModule::m_PixelTimeBinNb
int m_PixelTimeBinNb
Pixel time number of bin.
Definition: FANGSDigitizerModule.h:101
Belle2::fangs::FANGSDigitizerModule::m_dchip_detNb_map
std::map< std::tuple< int, int >, int > m_dchip_detNb_map
chip Nb map arrays
Definition: FANGSDigitizerModule.h:137
Belle2::fangs::FANGSDigitizerModule::FANGSDigitizerModule
FANGSDigitizerModule()
Constructor: Sets the description, the properties and the parameters of the module.
Definition: FANGSDigitizerModule.cc:36
Belle2::fangs::FANGSDigitizerModule::terminate
virtual void terminate() override
This method is called at the end of the event processing.
Definition: FANGSDigitizerModule.cc:325
Belle2::fangs::FANGSDigitizerModule::m_TOTB2
double m_TOTB2
TOT factor B2.
Definition: FANGSDigitizerModule.h:115
Belle2::fangs::FANGSDigitizerModule::m_TOTQ1
double m_TOTQ1
TOT factor Q1.
Definition: FANGSDigitizerModule.h:111
Belle2::fangs::FANGSDigitizerModule::m_upperTimingCut
double m_upperTimingCut
Upper timing cut.
Definition: FANGSDigitizerModule.h:144
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::fangs::FANGSDigitizerModule::m_TOTA1
double m_TOTA1
TOT factor A1.
Definition: FANGSDigitizerModule.h:105
Belle2::fangs::FANGSDigitizerModule::m_nFANGS
int m_nFANGS
number of detectors.
Definition: FANGSDigitizerModule.h:139
Belle2::fangs::FANGSDigitizerModule::m_v_sensor
double m_v_sensor
Drift velocity in sensor.
Definition: FANGSDigitizerModule.h:127
Belle2::fangs::FANGSDigitizerModule::endRun
virtual void endRun() override
This method is called if the current run ends.
Definition: FANGSDigitizerModule.cc:321
Belle2::fangs::FANGSDigitizerModule::m_TOTQ2
double m_TOTQ2
TOT factor Q2.
Definition: FANGSDigitizerModule.h:119
Belle2::fangs::FANGSDigitizerModule::getXMLData
void getXMLData()
array for FANGSHit
Definition: FANGSDigitizerModule.cc:288
Belle2::fangs::FANGSDigitizerModule::m_PixelThreshold
int m_PixelThreshold
Pixel threshold.
Definition: FANGSDigitizerModule.h:89
Belle2::fangs::FANGSDigitizerModule
FANGS ATLAS FE-I4B ASIC chip digitizer.
Definition: FANGSDigitizerModule.h:40