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

Annotation of /DarthVader/ToFLevel2/inc/ToFLevel2.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.7 - (hide annotations) (download)
Thu Nov 9 17:05:47 2006 UTC (18 years ago) by mocchiut
Branch: MAIN
Changes since 1.6: +2 -1 lines
File MIME type: text/plain
Added unpackError in all classes, ToF .rz bug fixed, install_GL_PARAM time screw bug fixed

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

  ViewVC Help
Powered by ViewVC 1.1.23