/[PAMELA software]/tof/flight/ToFNuclei/inc/ToFNuclei.h
ViewVC logotype

Contents of /tof/flight/ToFNuclei/inc/ToFNuclei.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (show annotations) (download)
Fri Dec 28 15:40:27 2018 UTC (5 years, 11 months ago) by mayorov
Branch: MAIN
CVS Tags: HEAD
Changes since 1.3: +3 -2 lines
File MIME type: text/plain
Modified to implement new tracking algorithm output (NB no back :compatibility! Elena

1 /**
2 * \file ToFNuclei.h
3 * \author Emiliano Mocchiutti / Wolfgang Menn
4 */
5
6 //*****************************************************
7 // WM 24-feb-2009: introduced "Set_Beta":
8 // The user can set beta used in the code with "Set_Beta",
9 // this beta is taken for the calculations.
10 // WM 06-aug-2009: charge_layer_trk_raw and charge_layer_std_raw
11 // added: These are the "raw" values before doing the 2nd-order
12 // correction
13 //*****************************************************
14
15
16 #ifndef tofnuclei_h
17 #define tofnuclei_h
18
19 #include <PamLevel2.h>
20
21 #include <TTree.h>
22 #include <TFriendElement.h>
23 #include <TChain.h>
24 #include <TFile.h>
25 #include <TGraph.h>
26 #include <TSpline.h>
27 #include <TList.h>
28 #include <TKey.h>
29 #include <TSystemFile.h>
30 #include <TSystemDirectory.h>
31 #include <TSQLServer.h>
32
33 #include <iostream>
34
35 using namespace std;
36
37 /**
38 *
39 */
40 class ToFNuclei : public TObject {
41
42 private:
43 //
44 PamLevel2 *L2;
45 Bool_t debug;
46 const char* trkAlg;
47 //
48 // needed to avoid reprocessing the same event over and over to obtain the variables
49 //
50 UInt_t OBT;
51 UInt_t PKT;
52 UInt_t atime;
53 Int_t tr;
54 Int_t sntr;
55
56 Float_t beta_in;
57 //
58 Int_t ncount_trk;
59 Float_t charge_trk;
60 Float_t charge_layer_trk[6];
61 Float_t charge_layer_trk_raw[6];
62 Float_t charge_PMT_trk[48];
63 Int_t layerinfo_trk[6];
64
65 Int_t ncount_std;
66 Float_t charge_std;
67 Float_t charge_layer_std[6];
68 Float_t charge_layer_std_raw[6];
69 Float_t charge_PMT_std[48];
70 Int_t layerinfo_std[6];
71 //
72
73 public:
74 //
75
76 void Set_Beta(Float_t beta){ beta_in=beta;};
77 //
78 Int_t Get_Ncount_ToF_trk(){ Process(); return ncount_trk;};
79 Float_t Get_Charge_ToF_trk(){ Process(); return charge_trk;};
80 Float_t *Get_Charge_ToF_trk_layer(){ Process(); return charge_layer_trk;};
81 Float_t Get_Charge_ToF_trk_layer(Int_t layer){ Process(); return charge_layer_trk[layer];};
82 Float_t *Get_Charge_ToF_trk_layer_raw(){ Process(); return charge_layer_trk_raw;};
83 Float_t Get_Charge_ToF_trk_layer_raw(Int_t layer){ Process(); return charge_layer_trk_raw[layer];};
84 Float_t *Get_Charge_ToF_trk_PMT(){ Process(); return charge_PMT_trk;};
85 Float_t Get_Charge_ToF_trk_PMT(Int_t ipmt){ Process(); return charge_PMT_trk[ipmt];};
86 Int_t *Get_Layerinfo_trk(){ Process(); return layerinfo_trk;};
87 Int_t Get_Layerinfo_trk(Int_t layer){ Process(); return layerinfo_trk[layer];};
88 //
89 Int_t Get_Ncount_ToF_std(){ Process(); return ncount_std;};
90 Float_t Get_Charge_ToF_std(){ Process(); return charge_std;};
91 Float_t *Get_Charge_ToF_std_layer(){ Process(); return charge_layer_std;};
92 Float_t Get_Charge_ToF_std_layer(Int_t layer){ Process(); return charge_layer_std[layer];};
93 Float_t *Get_Charge_ToF_std_layer_raw(){ Process(); return charge_layer_std_raw;};
94 Float_t Get_Charge_ToF_std_layer_raw(Int_t layer){ Process(); return charge_layer_std_raw[layer];};
95 Float_t *Get_Charge_ToF_std_PMT(){ Process(); return charge_PMT_std;};
96 Float_t Get_Charge_ToF_std_PMT(Int_t ipmt){ Process(); return charge_PMT_std[ipmt];};
97 Int_t *Get_Layerinfo_std(){ Process(); return layerinfo_std;};
98 Int_t Get_Layerinfo_std(Int_t layer){ Process(); return layerinfo_std[layer];};
99
100 //
101 //ToFNuclei();
102 ToFNuclei(PamLevel2 *L2,const char* alg);
103 ~ToFNuclei(){ Delete(); };
104 //
105 void SetDebug(Bool_t d){ debug=d; };
106 //
107 void Clear();
108 void Clear(Option_t *option){Clear();};
109 void Delete();
110 void Delete(Option_t *option){Delete();};
111 //
112 void Process(); ///< Process data for track number 0
113 void Process(Int_t ntr); ///< Process data for track number ntr
114 void Print();
115 void Print(Option_t *option){Print();};
116 //
117 ClassDef(ToFNuclei,1);
118 };
119
120 #endif
121

  ViewVC Help
Powered by ViewVC 1.1.23