/[PAMELA software]/DarthVader/ToFLevel2/inc/ToFLevel2.h
ViewVC logotype

Contents of /DarthVader/ToFLevel2/inc/ToFLevel2.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (show annotations) (download)
Thu Jul 6 09:03:26 2006 UTC (18 years, 4 months ago) by mocchiut
Branch: MAIN
Changes since 1.3: +50 -16 lines
File MIME type: text/plain
Upgraded ToF routines and output

1 #ifndef ToFLevel2_h
2 #define ToFLevel2_h
3 //
4 #include <TObject.h>
5 #include <TArrayI.h>
6 #include <TArrayF.h>
7 #include <TClonesArray.h>
8 //
9 // class which contains track related variables
10 //
11 #define ZTOF11 53.74
12 #define ZTOF12 53.04
13 #define ZTOF21 23.94
14 #define ZTOF22 23.44
15 #define ZTOF31 -23.49
16 #define ZTOF32 -24.34
17
18
19 class ToFPMT : public TObject {
20
21 private:
22
23 public:
24 Int_t pmt_id;
25 Float_t adc;
26 Float_t tdc_tw;
27 //
28 ToFPMT();
29 ToFPMT(const ToFPMT&);
30 //
31 ToFPMT* GetToFPMT(){return this;};
32 void Clear();
33
34 ClassDef(ToFPMT,1);
35 };
36
37
38 class ToFTrkVar : public TObject {
39
40 private:
41
42 public:
43 //
44 Int_t trkseqno; // tracker entry coming from tracker, 100 if image track is used, -100 if the track is not consistent with MyDetector2 one
45 //
46 Int_t npmttdc;
47 TArrayI pmttdc;
48 Float_t beta[13];
49 //
50 Int_t npmtadc;
51 TArrayI pmtadc;
52 TArrayF dedx;
53 //
54 Float_t xtofpos[3];
55 Float_t ytofpos[3];
56 //
57 ToFTrkVar();
58 ToFTrkVar(const ToFTrkVar&);
59
60 ToFTrkVar* GetToFTrkVar(){return this;};
61 void Clear();
62
63 ClassDef(ToFTrkVar,1);
64 //
65 };
66
67 class ToFLevel2 : public TObject {
68 private:
69
70 public:
71 //
72 TClonesArray *PMT; // class needed to store PMT hit informations
73 TClonesArray *ToFTrk; // track related variable class
74 Int_t tof_j_flag[6];
75 //
76 Float_t GetdEdx(Int_t notrack, Int_t plane);
77 //
78 // methods to make life simplier during the analysis, returns a pointer to the ToFTrkVar class containing track related variables
79 //
80 Int_t ntrk(){return ToFTrk->GetEntries();};
81 Int_t npmt(){return PMT->GetEntries();};
82
83 //
84 ToFTrkVar *GetToFTrkVar(Int_t notrack);
85 ToFPMT *GetToFPMT(Int_t nohit);
86 Int_t GetPMTid(Int_t gg, Int_t hh);
87 TString GetPMTName(Int_t ind);
88 Int_t GetPlaneIndex(Int_t pmt_id);
89 void GetMatrix(Int_t notrack, Float_t adc[4][12], Float_t tdc[4][12]);
90 void GetPMTIndex(Int_t pmt_id, Int_t gg, Int_t hh);
91 //
92 // constructor
93 //
94 ToFLevel2();
95 //
96 //
97 ToFLevel2* GetToFLevel2(){return this;};
98 Float_t GetZTOF(Int_t plane_id){
99 switch(plane_id){
100 case 11: return ZTOF11;
101 case 12: return ZTOF12;
102 case 21: return ZTOF21;
103 case 22: return ZTOF22;
104 case 31: return ZTOF31;
105 case 32: return ZTOF32;
106 default: return 0.;
107 };
108 };
109
110 //
111 // Paddles position
112 //
113 /*
114 S11 8 paddles 33.0 x 5.1 cm
115 S12 6 paddles 40.8 x 5.5 cm
116 S21 2 paddles 18.0 x 7.5 cm
117 S22 2 paddles 15.0 x 9.0 cm
118 S31 3 paddles 15.0 x 6.0 cm
119 S32 3 paddles 18.0 x 5.0 cm
120 */
121
122 Int_t GetToFPlaneID(Int_t ip);
123 Int_t GetToFPlaneIndex(Int_t plane_id);
124 Bool_t HitPaddle(Int_t ,Int_t);
125 Int_t GetNHitPaddles(Int_t plane);
126 void Clear();
127 //
128 ClassDef(ToFLevel2,1);
129 };
130
131 #endif

  ViewVC Help
Powered by ViewVC 1.1.23