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

Diff of /DarthVader/ToFLevel2/inc/ToFLevel2.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by mocchiut, Sat Jun 17 12:21:32 2006 UTC revision 1.9 by pam-fi, Thu Jan 11 09:34:27 2007 UTC
# Line 2  Line 2 
2  #define ToFLevel2_h  #define ToFLevel2_h
3  //  //
4  #include <TObject.h>  #include <TObject.h>
5    #include <TArrayI.h>
6    #include <TArrayF.h>
7  #include <TClonesArray.h>  #include <TClonesArray.h>
8    
9    #include <ToFStruct.h>
10  //  //
11  // class which contains track related variables  // class which contains track related variables
12  //  //
# Line 13  Line 17 
17  #define ZTOF31 -23.49  #define ZTOF31 -23.49
18  #define ZTOF32 -24.34  #define ZTOF32 -24.34
19    
20    
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        
37    
38        ClassDef(ToFPMT,1);
39    };
40    
41    
42  class ToFTrkVar : public TObject {  class ToFTrkVar : public TObject {
43        
44   private:   private:
45    
46   public:   public:
47        //
48    Int_t trkseqno; // tracker entry coming from tracker, 100 if image track is used, -100 if the track is not consistent with MyDetector2 one    Int_t trkseqno; // tracker entry coming from tracker, 100 if image track is used, -100 if the track is not consistent with MyDetector2 one
49    //    //
50    Float_t beta_a[13];    Int_t npmttdc;
51    Float_t adc_c[12][4];    TArrayI pmttdc;
52        TArrayI tdcflag; // gf: 30 Nov 2006
53      Float_t beta[13];
54      //
55      Int_t npmtadc;
56      TArrayI pmtadc;
57      TArrayI adcflag; // gf: 30 Nov 2006    
58      TArrayF dedx;  
59      //
60      Float_t xtofpos[3];
61      Float_t ytofpos[3];
62    //    //
63    ToFTrkVar();    ToFTrkVar();
64    ToFTrkVar(const ToFTrkVar&);    ToFTrkVar(const ToFTrkVar&);
65        
66    ToFTrkVar* GetToFTrkVar(){return this;};    ToFTrkVar* GetToFTrkVar(){return this;};
67        void Clear();
68    
69    ClassDef(ToFTrkVar,1);    ClassDef(ToFTrkVar,1);
70    //    //
71  };  };
# Line 37  class ToFLevel2 : public TObject { Line 74  class ToFLevel2 : public TObject {
74   private:   private:
75        
76   public:   public:
77    Float_t xtofpos[3];    //
78    Float_t ytofpos[3];    TClonesArray *PMT; // class needed to store PMT hit informations
   Int_t  tof_i_flag[6];  
   Int_t tof_j_flag[6];  
   Float_t betatof_a[13];  
   Float_t adctof_c[12][4];  
   Float_t tdc_c[12][4];  
79    TClonesArray *ToFTrk; // track related variable class    TClonesArray *ToFTrk; // track related variable class
80      Int_t tof_j_flag[6];
81      Int_t unpackError;
82    //    //
83      Float_t GetdEdx(Int_t notrack, Int_t plane);
84    //    //
85    // methods to make life simplier during the analysis, returns a pointer to the ToFTrkVar class containing track related variables    // methods to make life simplier during the analysis, returns a pointer to the ToFTrkVar class containing track related variables
86    //    //
87    Int_t ntrk(){return ToFTrk->GetEntries();};    Int_t ntrk(){return ToFTrk->GetEntries();};
88        Int_t npmt(){return PMT->GetEntries();};
89          
90      //
91      void GetLevel2Struct(cToFLevel2 *) const;
92    //    //
93    ToFTrkVar *GetToFTrkVar(Int_t notrack);      ToFTrkVar *GetToFTrkVar(Int_t notrack);  
94      ToFPMT *GetToFPMT(Int_t nohit);  
95      Int_t GetPMTid(Int_t gg, Int_t hh);
96      TString GetPMTName(Int_t ind);
97      Int_t GetPlaneIndex(Int_t pmt_id);
98      void GetMatrix(Int_t notrack, Float_t adc[4][12], Float_t tdc[4][12]);
99      void GetPMTIndex(Int_t pmt_id, Int_t &gg, Int_t &hh);
100    //    //
101    // constructor    // constructor
102    //    //
103    ToFLevel2();    ToFLevel2();
104      ~ToFLevel2(){Delete();}; //ELENA
105      void Delete(); //ELENA
106    //    //
107    //    //
108    ToFLevel2*   GetToFLevel2(){return this;};    ToFLevel2*   GetToFLevel2(){return this;};
109      Float_t      GetZTOF(Int_t plane_id){    Float_t      GetZTOF(Int_t plane_id){
110        switch(plane_id){        switch(plane_id){
111        case 11: return ZTOF11;        case 11: return ZTOF11;
112        case 12: return ZTOF12;        case 12: return ZTOF12;
# Line 71  class ToFLevel2 : public TObject { Line 116  class ToFLevel2 : public TObject {
116        case 32: return ZTOF32;        case 32: return ZTOF32;
117        default: return 0.;        default: return 0.;
118        };        };
119      };    };
120          
121      //      //
122      // Paddles position      // Paddles position
123      //      //
# Line 89  class ToFLevel2 : public TObject { Line 134  class ToFLevel2 : public TObject {
134      Int_t  GetToFPlaneIndex(Int_t plane_id);      Int_t  GetToFPlaneIndex(Int_t plane_id);
135      Bool_t HitPaddle(Int_t ,Int_t);      Bool_t HitPaddle(Int_t ,Int_t);
136      Int_t  GetNHitPaddles(Int_t plane);      Int_t  GetNHitPaddles(Int_t plane);
137          void Clear();
138      //      //
139      ClassDef(ToFLevel2,1);      ClassDef(ToFLevel2,2);
140  };  };
141    
142  #endif  #endif

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.23