This commit was generated by cvs2svn to compensate for changes in r13732,
[u/mrichter/AliRoot.git] / EVE / Alieve / TPCDigitsInfo.h
1 // $Header$
2
3 #ifndef ALIEVE_TPCDigitsInfo_H
4 #define ALIEVE_TPCDigitsInfo_H
5
6 #include <Reve/VSD.h>
7
8 #include <vector>
9
10 #include <TNamed.h>
11 #include <TArrayI.h>
12 #include <TTree.h>
13
14 #include <AliTPCParam.h>
15 #include <AliSimDigits.h>
16
17
18 namespace Alieve {
19
20   class TPCSeg {
21   public:   
22     Float_t   fPadWidth, fPadLength,fRlow; // vertices data
23     Int_t     fNRows;                      // text & vertices data 
24     Int_t     fNMaxPads;                   // texture offset data
25     Float_t   fStepY[64];                  // y coord wher npads has changed
26     Int_t     fNsteps;                     // number of steps
27
28     void Dump() const;
29   };
30
31   class TPCDigitsInfo : public TNamed
32   {
33   private:
34     void Init();
35
36   protected:
37     Int_t               fRefCount;
38     TString             fDataDir;  
39     Int_t               fEvent;    
40
41   public:
42     AliSimDigits        fSimDigits;
43     AliTPCParam*        fParameter;
44     TTree*              fTree;
45     std::vector<Int_t>  fSegEnt;
46     TPCSeg              fInnSeg;   
47     TPCSeg              fOut1Seg;  
48     TPCSeg              fOut2Seg;  
49
50     TPCDigitsInfo(const Text_t* n="TPCDigitsInfo", const Text_t* t=0) :
51       TNamed(n, t) { Init(); }
52     virtual ~TPCDigitsInfo();
53
54     void SetData(AliTPCParam* par, TTree* digits);
55    
56     void IncRefCount() { ++fRefCount; }
57     void DecRefCount() { --fRefCount; if(fRefCount <= 0) delete this; }
58
59     virtual void Print(Option_t* opt="") const;
60
61     ClassDef(TPCDigitsInfo, 1);
62   }; // endclass TPCDigitsInfo
63 }
64 #endif