]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/Alieve/MUONChamberData.h
Fix handling of AliESDfriends.root.
[u/mrichter/AliRoot.git] / EVE / Alieve / MUONChamberData.h
1 #ifndef ALIEVE_MUONChamberData_H
2 #define ALIEVE_MUONChamberData_H
3
4 #include <Reve/Reve.h>
5
6 #include <TObject.h>
7
8 class AliMUONSegmentation;
9 class AliMUONGeometryTransformer;
10
11 namespace Alieve {
12
13 class MUONChamberData : public TObject
14 {
15
16   MUONChamberData(const MUONChamberData&);            // Not implemented
17   MUONChamberData& operator=(const MUONChamberData&); // Not implemented
18
19 private:
20
21   static AliMUONSegmentation*        fgSegmentation;  // detector segmentation
22   static AliMUONGeometryTransformer* fgTransformer;   // geometry transformer
23
24 protected:
25
26   Int_t   fChamberID;                 // number of the chamber, 0 to 13
27   Float_t fFrameCoord[26][5];         // detector elements frames
28   Int_t   fNDetElem;                  // number of detector elements
29   Int_t   fNDigits;                   // number of found digits (times 7)
30   Float_t fDigitBuffer[7*4096];       // digits coordinates, etc.
31   Float_t fChamberBox[6];             // chamber envelope box
32
33 public:
34
35   MUONChamberData(Int_t chamber);
36   virtual ~MUONChamberData();
37
38   void DropData();
39
40   void     Init(Int_t chamber);
41   void     RegisterDigit(Int_t detElemId, Int_t cathode, Int_t ix, Int_t iy, Int_t charge);
42   Float_t* GetFrameCoord(Int_t detElemId) { return fFrameCoord[detElemId]; };
43   Int_t    GetNDetElem() { return fNDetElem; };
44   Int_t    GetNDigits() { return fNDigits/7; };
45   Float_t* GetDigitBuffer(Int_t pos) { return &fDigitBuffer[7*pos]; };
46   Float_t* GetChamberBox() { return &fChamberBox[0]; };
47
48   ClassDef(MUONChamberData,1);     // class with data for one chamber
49
50 };
51
52 }
53
54 #endif