1 |
#ifndef __FEVdetector__ |
2 |
#define __FEVdetector__ |
3 |
#include <feventvstruct.h> |
4 |
#include <TObjectTable.h> |
5 |
#include <TGClient.h> |
6 |
#include <TGButton.h> |
7 |
#include <TGComboBox.h> |
8 |
#include <TGLabel.h> |
9 |
#include <TGTextEntry.h> |
10 |
#include <TGFrame.h> |
11 |
#include <TGButtonGroup.h> |
12 |
#include <TGProgressBar.h> |
13 |
#include <TGMsgBox.h> |
14 |
#include <TGComboBox.h> |
15 |
#include <TTree.h> |
16 |
#include <TClassEdit.h> |
17 |
#include <TObject.h> |
18 |
#include <TList.h> |
19 |
#include <TSystem.h> |
20 |
#include <TSystemDirectory.h> |
21 |
#include <TString.h> |
22 |
#include <TFile.h> |
23 |
#include <TClass.h> |
24 |
#include <TCanvas.h> |
25 |
#include <TH1.h> |
26 |
#include <TH1F.h> |
27 |
#include <TH2D.h> |
28 |
#include <TLatex.h> |
29 |
#include <TPad.h> |
30 |
#include <TPaveLabel.h> |
31 |
#include <TLine.h> |
32 |
#include <TPolyLine.h> |
33 |
#include <TChain.h> |
34 |
#include <TApplication.h> |
35 |
#include <TVirtualX.h> |
36 |
#include <TGClient.h> |
37 |
#include <TGWindow.h> |
38 |
#include <TEllipse.h> |
39 |
#include <TArrow.h> |
40 |
#include <TStyle.h> |
41 |
#include <TLeaf.h> |
42 |
#include <TLeafElement.h> |
43 |
#include <TLeafF.h> |
44 |
#include <TLeafC.h> |
45 |
#include <TLeafD.h> |
46 |
#include <TBranchClones.h> |
47 |
#include <TStreamerInfo.h> |
48 |
// |
49 |
#include <PamLevel2.h> |
50 |
#include <PamelaRun.h> |
51 |
#include <physics/calorimeter/CalorimeterEvent.h> |
52 |
#include <physics/trigger/TriggerEvent.h> |
53 |
#include <physics/tof/TofEvent.h> |
54 |
#include <physics/tracker/TrackerEvent.h> |
55 |
#include <physics/anticounter/AnticounterEvent.h> |
56 |
#include <physics/neutronDetector/NeutronEvent.h> |
57 |
#include <physics/S4/S4Event.h> |
58 |
#include <CalibCalPedEvent.h> |
59 |
|
60 |
// |
61 |
#include <OrbitalInfo.h> |
62 |
#include <RunInfo.h> |
63 |
#include <FEVpamevcontrol.h> |
64 |
// |
65 |
class FEVdetector : public TObject { |
66 |
|
67 |
private: |
68 |
TCanvas *thefigure; |
69 |
// TFile *file; |
70 |
// TTree *otr; |
71 |
TChain *otr; |
72 |
// TTree *runtree; |
73 |
// TChain *runtree; |
74 |
pamela::PscuHeader *ph; |
75 |
pamela::EventHeader *eh; |
76 |
pamela::calorimeter::CalorimeterEvent *de; |
77 |
pamela::tracker::TrackerEvent *trk; |
78 |
pamela::neutron::NeutronEvent *ne; |
79 |
pamela::neutron::NeutronRecord *nr; |
80 |
pamela::anticounter::AnticounterEvent *ace; |
81 |
pamela::S4::S4Event *s4; |
82 |
pamela::trigger::TriggerEvent *trigger; |
83 |
pamela::tof::TofEvent *tof; |
84 |
// OrbitalInfo *oinfoL2; |
85 |
// ItoRunInfo *runinfo; |
86 |
PAMevcontrol *pamgui; |
87 |
Int_t *ctrlword; |
88 |
Int_t thisentry; |
89 |
Int_t b[4]; |
90 |
Float_t mip[2][22][96]; |
91 |
Bool_t defcalib; |
92 |
struct Calib calib; |
93 |
struct Evento evento; |
94 |
void ColorMIP(Float_t mip, int& colo); |
95 |
void ColorTOFMIP(Float_t mip, int& colo); |
96 |
void ColorTRKMIP(Float_t mip, int& colo, Int_t img); |
97 |
void ShowPalette(); |
98 |
void ShowCalo(Bool_t upd); |
99 |
void ShowTRK(Bool_t upd); |
100 |
void ShowTRG(); |
101 |
void ShowTrack(); |
102 |
void ShowTOF(); |
103 |
void ShowAC(); |
104 |
void ShowS4(Bool_t upd); |
105 |
void ShowND(); |
106 |
|
107 |
// void PrintData(TTree *,Long64_t, Int_t); |
108 |
// void PrintLeaves(TTree *, Int_t, TBranchElement *,Int_t); |
109 |
void ShowInfo(TString); |
110 |
|
111 |
void Calo1stcalib(); |
112 |
int OLDCaloFindCalibs(); |
113 |
int CaloPede(Int_t s); |
114 |
void CaloFindBaseRaw(Int_t l, Int_t m, Int_t pre); |
115 |
void CaloCompressData(Int_t l, Int_t m, Int_t pre); |
116 |
|
117 |
public: |
118 |
PamLevel2 *L2; |
119 |
struct Levels level; |
120 |
struct Variables var; |
121 |
TString ddec; |
122 |
Int_t lastevno; |
123 |
Int_t firstevno; |
124 |
Int_t si; |
125 |
// Int_t jumpto; |
126 |
Int_t maxevent; |
127 |
Int_t minevent; |
128 |
Int_t headc; |
129 |
Int_t headcold; |
130 |
Int_t OBT; |
131 |
Int_t OOBT; |
132 |
Int_t DOBT; |
133 |
Int_t calotrig; |
134 |
Int_t toftrig; |
135 |
Int_t s4pulser; |
136 |
// Int_t selection; |
137 |
// Int_t doflag; |
138 |
// Int_t seldone; |
139 |
TString trcs; |
140 |
// |
141 |
FEVdetector(TString filename, TString selfile, Int_t &mainctrlword, TCanvas &figure); |
142 |
void SetGUIPtr(PAMevcontrol &mainpamgui); |
143 |
void SetDDEC(TString); |
144 |
void checkctrlword(); |
145 |
void Reset(); |
146 |
void add(TString name); |
147 |
//Int_t Load(TTree &mainotr, TFile &mainfile); |
148 |
// TChain *Load(TFile &mainfile); |
149 |
TChain *Load(TString mainfile); |
150 |
TChain *GetChain(){return otr;}; |
151 |
// TChain *GetRunChain(){return runtree;}; |
152 |
void GetWindow(); |
153 |
void ClearVariables(); |
154 |
void GetEntry(Int_t i); |
155 |
void SetEntry(Int_t i); |
156 |
void GetGeneralInfo(); |
157 |
void DisplayEvent(); |
158 |
void DrawX(Float_t cx, Float_t cy, Float_t si, Variables & var); |
159 |
int GetThisEntry(){return (thisentry);}; |
160 |
int GetCounter(); |
161 |
int SelectEvent(); |
162 |
// |
163 |
PamLevel2 *GetL2(){return L2;}; |
164 |
// |
165 |
}; |
166 |
|
167 |
#endif |