ATLAS Offline Software
ALFA_Raw2Digit.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ALFA_Raw2Digit_h
6 #define ALFA_Raw2Digit_h
7 
8 
10 
11 
12 // for ALFA
16 
19 
20 //#include "ALFA_Geometry/ALFA_constants.h"
21 
22 #include "GaudiKernel/ITHistSvc.h"
23 
24 
25 #include <iostream>
26 #include <fstream>
27 #include <sstream>
28 #include <string>
29 #include <sys/stat.h>
30 #include <sys/types.h>
31 #include <dirent.h>
32 
33 #include "TH1.h"
34 #include "TH2.h"
35 #include "TGraph.h"
36 #include "TCanvas.h"
37 #include "TTree.h"
38 #include "TROOT.h"
39 #include "TFile.h"
40 #include "TString.h"
41 #include "TStyle.h"
42 #include "TColor.h"
43 #include "TLine.h"
44 #include "TLatex.h"
45 #include "TPave.h"
46 #include "TPaletteAxis.h"
47 #include "TPaveText.h"
48 
49 
50 
52 {
53 public:
54  ALFA_Raw2Digit(const std::string& name, ISvcLocator* pSvcLocator);
55 
59 // StatusCode clear();
60 
61 private:
63 // StatusCode fillDigitCollection();
65 // StatusCode fillODDigitCollection();
67  // changed by Petr - 19.12.2012 -----------------------------------------------------
68 // StatusCode ChanPlot(uint32_t potn, uint32_t MarChan, uint32_t &i, uint32_t &j);
69  StatusCode ChanPlot(uint32_t pot_n, uint32_t iLayer, uint32_t MarChan, uint32_t &chan_i, uint32_t &chan_j);
70 
71 // a handle on Store Gate
72 // StoreGateSvc* m_storeGate;
73 // ServiceHandle<StoreGateSvc> m_digitsStore;
74 // ActiveStoreSvc* m_activeSvc;
75 
77 // ITHistSvc * m_histSvc;
78 // TTree* m_tree;
79 
80  int m_nEvents;
81 // std::vector<int>* m_MBId;
82 // std::vector<int>* m_PMFId;
83 // std::vector<int>* m_hit;
84 
85  int m_mbID;
86  int m_pmfID;
87  int m_fibID;
88 
90  int m_MapChan;
91 
92  int m_pot;
93  int m_side;
94  int m_plate;
95  int m_fiber;
96 
97  int m_ODpot;
98  int m_ODside;
99  int m_ODplate;
101 
102  // changed by Petr - 19.12.2012 -----------------------------------------------------
103 // int maroc2fiber[8][64];
104 // int maroc2mapmt[8][64];
105 // int mapmt2maroc[8][64];
106  int m_maroc2fiber[8][20][64];
107  int m_maroc2mapmt[8][20][64];
108  int m_mapmt2maroc[8][20][64];
109 
110  int m_pmf2layer[8][23];
111 // int layer2pmf[8][20];
112 
113  int m_OD_pmf2layer[8][4];
114 // int OD_layer2pmf[8][3];
115  int m_OD_pmf_maroc2fiber[8][4][64];
116  int m_OD_pmf_maroc2side[8][4][64];
117 
118  int m_mb2det[8];
119 
120 /*
121  TGraph *MAPMT_activity[8];
122  TH2D* MAPMT_activity_h[8][23];
123  TH2I* PMFvsMAPMT[8];
124  TH2I* PMFvsMAROC[8];
125  TH2I* MapmtHit[8][23];
126 */
127 
130 
135  std::vector<bool> m_trigger_pattern;
136  bool m_pot_b[8], m_layer_b[8][20], m_fiber_b[8][20][64], m_trigger_pattern_b[8][16];
137  Int_t m_n_hits_lay[8][20];
138  Int_t m_event_no;
139  TTree* m_tree;
140  TFile *m_rootOutput;
142 
143 
144  Int_t m_pmf_chan_hit_counter[8][23][64];
145  Int_t m_hit_counter[8];
146 
147 // ServiceHandle<StoreGateSvc> m_digitsStore;
148 
151 
154 
157 
158  std::ifstream m_inChan;
159  std::ifstream m_inPMF;
160  std::ifstream m_inOD;
161  std::ifstream m_inDet;
162 
163  std::string m_mapname;
164  std::stringstream m_s;
166  std::string m_h_loc1, m_h_loc2, m_h_loc3;
167  std::string m_CanName;
168 
171 
172 /*
173  TTree* m_tree;
174  TFile *m_rootOutput;
175  TString m_rootOutputFileName;
176 */
177 
178 private:
180 
181 private:
182  std::ofstream m_toFile;
183 };
184 
185 
186 #endif
ALFA_Raw2Digit::m_nEvents
int m_nEvents
Definition: ALFA_Raw2Digit.h:80
ALFA_Raw2Digit::m_mb2det
int m_mb2det[8]
Definition: ALFA_Raw2Digit.h:118
ALFA_Raw2Digit::m_rootOutput
TFile * m_rootOutput
Definition: ALFA_Raw2Digit.h:140
ALFA_ODDigitCollection.h
ALFA_Raw2Digit::m_fiber
int m_fiber
Definition: ALFA_Raw2Digit.h:95
ALFA_Raw2Digit::m_h_name2
std::string m_h_name2
Definition: ALFA_Raw2Digit.h:165
ALFA_Raw2Digit::m_h_name3
std::string m_h_name3
Definition: ALFA_Raw2Digit.h:165
ALFA_Raw2Digit::m_WordId_count
int m_WordId_count
Definition: ALFA_Raw2Digit.h:169
ALFA_Raw2Digit::m_maroc2mapmt
int m_maroc2mapmt[8][20][64]
Definition: ALFA_Raw2Digit.h:107
ALFA_Raw2Digit::m_ODdigitCollection
ALFA_ODDigitCollection * m_ODdigitCollection
Definition: ALFA_Raw2Digit.h:152
ALFA_Raw2Digit::m_chan_i
uint32_t m_chan_i
Definition: ALFA_Raw2Digit.h:170
ALFA_Raw2Digit::m_hit_counter
Int_t m_hit_counter[8]
Definition: ALFA_Raw2Digit.h:145
ALFA_RawDataContainer.h
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
ALFA_Raw2Digit::m_ODside
int m_ODside
Definition: ALFA_Raw2Digit.h:98
ALFA_Raw2Digit::m_key_DigitCollection
std::string m_key_DigitCollection
Definition: ALFA_Raw2Digit.h:155
ALFA_Raw2Digit::m_maroc2fiber
int m_maroc2fiber[8][20][64]
Definition: ALFA_Raw2Digit.h:106
ALFA_Raw2Digit::initialize
StatusCode initialize()
Definition: ALFA_Raw2Digit.cxx:61
ALFA_Raw2Digit
Definition: ALFA_Raw2Digit.h:52
ALFA_Raw2Digit::ALFA_Raw2Digit
ALFA_Raw2Digit(const std::string &name, ISvcLocator *pSvcLocator)
Definition: ALFA_Raw2Digit.cxx:12
ALFA_Raw2Digit::m_lumi_block
uint32_t m_lumi_block
Definition: ALFA_Raw2Digit.h:133
ALFA_Raw2Digit::m_layer_b
bool m_layer_b[8][20]
Definition: ALFA_Raw2Digit.h:136
ALFA_Raw2Digit::m_inDet
std::ifstream m_inDet
Definition: ALFA_Raw2Digit.h:161
ALFA_Raw2Digit::ChanPlot
StatusCode ChanPlot(uint32_t pot_n, uint32_t iLayer, uint32_t MarChan, uint32_t &chan_i, uint32_t &chan_j)
Definition: ALFA_Raw2Digit.cxx:741
ALFA_Raw2Digit::m_charge_2
uint16_t m_charge_2[8]
Definition: ALFA_Raw2Digit.h:134
ALFA_Raw2Digit::m_h_name1
std::string m_h_name1
Definition: ALFA_Raw2Digit.h:165
ALFA_Raw2Digit::m_trigger_pattern
std::vector< bool > m_trigger_pattern
Definition: ALFA_Raw2Digit.h:135
ALFA_Raw2Digit::m_h_loc2
std::string m_h_loc2
Definition: ALFA_Raw2Digit.h:166
ALFA_Raw2Digit::m_ODfiber
int m_ODfiber
Definition: ALFA_Raw2Digit.h:100
ALFA_Raw2Digit::m_trigger_pattern_b
bool m_trigger_pattern_b[8][16]
Definition: ALFA_Raw2Digit.h:136
ALFA_Raw2Digit::m_charge_1
uint16_t m_charge_1[8]
Definition: ALFA_Raw2Digit.h:134
AthAlgorithm.h
ALFA_Raw2Digit::m_pmfID
int m_pmfID
Definition: ALFA_Raw2Digit.h:86
ALFA_Raw2Digit::m_pmf2layer
int m_pmf2layer[8][23]
Definition: ALFA_Raw2Digit.h:110
ALFA_Raw2Digit::m_mapname
std::string m_mapname
Definition: ALFA_Raw2Digit.h:163
ALFA_Raw2Digit::m_mapmt2maroc
int m_mapmt2maroc[8][20][64]
Definition: ALFA_Raw2Digit.h:108
ALFA_Raw2Digit::m_event_no
Int_t m_event_no
Definition: ALFA_Raw2Digit.h:138
ALFA_Digit
Definition: ALFA_Digit.h:8
ALFA_Raw2Digit::m_key_ODDigitCollection
std::string m_key_ODDigitCollection
Definition: ALFA_Raw2Digit.h:156
ALFA_Raw2Digit::m_pot
int m_pot
Definition: ALFA_Raw2Digit.h:92
ALFA_Raw2Digit::m_strMeasuredDataType
std::string m_strMeasuredDataType
Definition: ALFA_Raw2Digit.h:179
ALFA_Raw2Digit::m_h_loc3
std::string m_h_loc3
Definition: ALFA_Raw2Digit.h:166
ALFA_RawData.h
ALFA_Raw2Digit::m_plate
int m_plate
Definition: ALFA_Raw2Digit.h:94
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:88
ALFA_Raw2Digit::m_CanName
std::string m_CanName
Definition: ALFA_Raw2Digit.h:167
ALFA_Raw2Digit::m_chan_j
uint32_t m_chan_j
Definition: ALFA_Raw2Digit.h:170
ALFA_Raw2Digit::m_OD_pmf2layer
int m_OD_pmf2layer[8][4]
Definition: ALFA_Raw2Digit.h:113
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TH2I
Definition: rootspy.cxx:410
ALFA_Raw2Digit::m_lumi_block_old
uint32_t m_lumi_block_old
Definition: ALFA_Raw2Digit.h:133
ALFA_Raw2Digit::m_side
int m_side
Definition: ALFA_Raw2Digit.h:93
ALFA_Raw2Digit::m_pot_b
bool m_pot_b[8]
Definition: ALFA_Raw2Digit.h:136
ALFA_Raw2Digit::m_ALFA_RawDataCollectionKey
std::string m_ALFA_RawDataCollectionKey
Definition: ALFA_Raw2Digit.h:76
TH2D
Definition: rootspy.cxx:430
ALFA_Raw2Digit::m_MAPMTChan
int m_MAPMTChan
Definition: ALFA_Raw2Digit.h:89
ALFA_Raw2Digit::m_digitCollection
ALFA_DigitCollection * m_digitCollection
Definition: ALFA_Raw2Digit.h:149
ALFA_Raw2Digit::m_inPMF
std::ifstream m_inPMF
Definition: ALFA_Raw2Digit.h:159
ALFA_DigitCollection.h
AthAlgorithm
Definition: AthAlgorithm.h:47
ALFA_Raw2Digit::m_ODplate
int m_ODplate
Definition: ALFA_Raw2Digit.h:99
ALFA_Raw2Digit::m_ODpot
int m_ODpot
Definition: ALFA_Raw2Digit.h:97
ALFA_Raw2Digit::finalize
StatusCode finalize()
Definition: ALFA_Raw2Digit.cxx:384
ALFA_DigitCollection
Definition: ALFA_DigitCollection.h:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
ALFA_Raw2Digit::m_All_Trigger_norm
TH2D * m_All_Trigger_norm
Definition: ALFA_Raw2Digit.h:129
ALFA_Raw2Digit::m_rootOutputFileName
TString m_rootOutputFileName
Definition: ALFA_Raw2Digit.h:141
ALFA_Raw2Digit::m_All_Trigger
TH2I * m_All_Trigger
Definition: ALFA_Raw2Digit.h:128
ALFA_Raw2Digit::m_tree
TTree * m_tree
Definition: ALFA_Raw2Digit.h:139
ALFA_Raw2Digit::execute
StatusCode execute()
Definition: ALFA_Raw2Digit.cxx:174
ALFA_Raw2Digit::m_fiber_b
bool m_fiber_b[8][20][64]
Definition: ALFA_Raw2Digit.h:136
TH1F
Definition: rootspy.cxx:320
ALFA_Raw2Digit::mapping
StatusCode mapping()
Definition: ALFA_Raw2Digit.cxx:508
ALFA_Raw2Digit::m_s
std::stringstream m_s
Definition: ALFA_Raw2Digit.h:164
ALFA_Raw2Digit::m_MapChan
int m_MapChan
Definition: ALFA_Raw2Digit.h:90
ALFA_Raw2Digit::m_inOD
std::ifstream m_inOD
Definition: ALFA_Raw2Digit.h:160
ALFA_Raw2Digit::m_OD_pmf_maroc2fiber
int m_OD_pmf_maroc2fiber[8][4][64]
Definition: ALFA_Raw2Digit.h:115
ALFA_Raw2Digit::m_n_hits_lay
Int_t m_n_hits_lay[8][20]
Definition: ALFA_Raw2Digit.h:137
ALFA_Raw2Digit::m_pmf_chan_hit_counter
Int_t m_pmf_chan_hit_counter[8][23][64]
Definition: ALFA_Raw2Digit.h:144
ALFA_Raw2Digit::m_OD_pmf_maroc2side
int m_OD_pmf_maroc2side[8][4][64]
Definition: ALFA_Raw2Digit.h:116
ALFA_Raw2Digit::recordCollection
StatusCode recordCollection()
Definition: ALFA_Raw2Digit.cxx:482
ALFA_RawDataCollection.h
ALFA_Raw2Digit::m_ODdigitObject
ALFA_ODDigit * m_ODdigitObject
Definition: ALFA_Raw2Digit.h:153
ALFA_Raw2Digit::m_h_loc1
std::string m_h_loc1
Definition: ALFA_Raw2Digit.h:166
ALFA_Raw2Digit::m_mbID
int m_mbID
Definition: ALFA_Raw2Digit.h:85
ALFA_Raw2Digit::recordODCollection
StatusCode recordODCollection()
Definition: ALFA_Raw2Digit.cxx:495
ALFA_Raw2Digit::m_hit_lay_h
TH1F * m_hit_lay_h[8]
Definition: ALFA_Raw2Digit.h:132
ALFA_ODDigit
Definition: ALFA_ODDigit.h:8
ALFA_Raw2Digit::m_fibID
int m_fibID
Definition: ALFA_Raw2Digit.h:87
ALFA_Raw2Digit::m_inChan
std::ifstream m_inChan
Definition: ALFA_Raw2Digit.h:158
ALFA_Raw2Digit::m_act_lay_h
TH1F * m_act_lay_h[8]
Definition: ALFA_Raw2Digit.h:131
ALFA_Raw2Digit::m_toFile
std::ofstream m_toFile
Definition: ALFA_Raw2Digit.h:182
ALFA_Raw2Digit::m_digitObject
ALFA_Digit * m_digitObject
Definition: ALFA_Raw2Digit.h:150
ALFA_ODDigitCollection
Definition: ALFA_ODDigitCollection.h:15