/[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.6 - (hide annotations) (download)
Fri Jul 21 11:02:28 2006 UTC (18 years, 4 months ago) by pam-fi
Branch: MAIN
CVS Tags: v1r01, v2r00BETA
Changes since 1.5: +4 -0 lines
File MIME type: text/plain
modified for C3PO

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     //
78 mocchiut 1.4 Float_t GetdEdx(Int_t notrack, Int_t plane);
79 mocchiut 1.1 //
80     // methods to make life simplier during the analysis, returns a pointer to the ToFTrkVar class containing track related variables
81     //
82     Int_t ntrk(){return ToFTrk->GetEntries();};
83 mocchiut 1.4 Int_t npmt(){return PMT->GetEntries();};
84    
85 mocchiut 1.1 //
86 pam-fi 1.6 void GetLevel2Struct(cToFLevel2 *) const;
87     //
88 mocchiut 1.1 ToFTrkVar *GetToFTrkVar(Int_t notrack);
89 mocchiut 1.4 ToFPMT *GetToFPMT(Int_t nohit);
90     Int_t GetPMTid(Int_t gg, Int_t hh);
91     TString GetPMTName(Int_t ind);
92     Int_t GetPlaneIndex(Int_t pmt_id);
93     void GetMatrix(Int_t notrack, Float_t adc[4][12], Float_t tdc[4][12]);
94 mocchiut 1.5 void GetPMTIndex(Int_t pmt_id, Int_t &gg, Int_t &hh);
95 mocchiut 1.1 //
96     // constructor
97     //
98     ToFLevel2();
99     //
100     //
101     ToFLevel2* GetToFLevel2(){return this;};
102 mocchiut 1.4 Float_t GetZTOF(Int_t plane_id){
103 mocchiut 1.1 switch(plane_id){
104     case 11: return ZTOF11;
105     case 12: return ZTOF12;
106     case 21: return ZTOF21;
107     case 22: return ZTOF22;
108     case 31: return ZTOF31;
109     case 32: return ZTOF32;
110     default: return 0.;
111     };
112 mocchiut 1.4 };
113    
114 mocchiut 1.1 //
115     // Paddles position
116     //
117     /*
118     S11 8 paddles 33.0 x 5.1 cm
119     S12 6 paddles 40.8 x 5.5 cm
120     S21 2 paddles 18.0 x 7.5 cm
121     S22 2 paddles 15.0 x 9.0 cm
122     S31 3 paddles 15.0 x 6.0 cm
123     S32 3 paddles 18.0 x 5.0 cm
124     */
125    
126     Int_t GetToFPlaneID(Int_t ip);
127     Int_t GetToFPlaneIndex(Int_t plane_id);
128     Bool_t HitPaddle(Int_t ,Int_t);
129     Int_t GetNHitPaddles(Int_t plane);
130 mocchiut 1.3 void Clear();
131 mocchiut 1.1 //
132     ClassDef(ToFLevel2,1);
133     };
134    
135     #endif

  ViewVC Help
Powered by ViewVC 1.1.23