]>
Commit | Line | Data |
---|---|---|
d810d0de | 1 | // $Id$ |
fafff680 | 2 | // Main authors: Matevz Tadel & Alja Mrak-Tadel & Bogdan Vulpescu: 2006, 2007 |
d810d0de | 3 | |
4 | /************************************************************************** | |
5 | * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. * | |
6 | * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for * | |
51346b82 | 7 | * full copyright notice. * |
d810d0de | 8 | **************************************************************************/ |
3626c858 | 9 | #ifndef ALIEVE_MUONChamberData_H |
10 | #define ALIEVE_MUONChamberData_H | |
11 | ||
84aff7a4 | 12 | #include <TEveUtil.h> |
3626c858 | 13 | |
14 | #include <TObject.h> | |
15 | ||
3626c858 | 16 | class AliMUONGeometryTransformer; |
17 | ||
3626c858 | 18 | |
d810d0de | 19 | class AliEveMUONChamberData : public TObject |
3626c858 | 20 | { |
fd31e9de | 21 | private: |
d810d0de | 22 | AliEveMUONChamberData(const AliEveMUONChamberData&); // Not implemented |
23 | AliEveMUONChamberData& operator=(const AliEveMUONChamberData&); // Not implemented | |
3626c858 | 24 | |
3626c858 | 25 | static AliMUONGeometryTransformer* fgTransformer; // geometry transformer |
26 | ||
27 | protected: | |
28 | ||
29 | Int_t fChamberID; // number of the chamber, 0 to 13 | |
30 | Float_t fFrameCoord[26][5]; // detector elements frames | |
31 | Int_t fNDetElem; // number of detector elements | |
32 | Int_t fNDigits; // number of found digits (times 7) | |
eadce74d | 33 | Int_t fNClusters; // number of found rec points |
34 | Int_t fNHits; // number of simulation hits | |
3626c858 | 35 | Float_t fDigitBuffer[7*4096]; // digits coordinates, etc. |
cef26510 | 36 | Float_t fClusterBuffer[5*256]; // cluster coordinates, etc. |
37 | Float_t fHitBuffer[3*256]; // hits coordinates | |
3626c858 | 38 | Float_t fChamberBox[6]; // chamber envelope box |
39 | ||
40 | public: | |
41 | ||
d810d0de | 42 | AliEveMUONChamberData(Int_t chamber); |
43 | virtual ~AliEveMUONChamberData(); | |
3626c858 | 44 | |
45 | void DropData(); | |
46 | ||
47 | void Init(Int_t chamber); | |
eadce74d | 48 | |
3626c858 | 49 | void RegisterDigit(Int_t detElemId, Int_t cathode, Int_t ix, Int_t iy, Int_t charge); |
eadce74d | 50 | void RegisterCluster(Int_t detElemId, Int_t cathode, Float_t x, Float_t y, Float_t z, Float_t charge); |
51 | void RegisterHit(Int_t detElemId, Float_t x, Float_t y, Float_t z); | |
52 | ||
3626c858 | 53 | Float_t* GetFrameCoord(Int_t detElemId) { return fFrameCoord[detElemId]; }; |
eadce74d | 54 | |
55 | Int_t GetNDetElem() { return fNDetElem; }; | |
56 | Int_t GetNDigits() { return fNDigits/7; }; | |
57 | Int_t GetNClusters() { return fNClusters/5; }; | |
58 | Int_t GetNHits() { return fNHits/3; }; | |
59 | ||
60 | Float_t* GetDigitBuffer(Int_t pos) { return &fDigitBuffer[7*pos]; }; | |
61 | Float_t* GetClusterBuffer(Int_t pos) { return &fClusterBuffer[5*pos]; }; | |
62 | Float_t* GetHitBuffer(Int_t pos) { return &fHitBuffer[3*pos]; }; | |
63 | ||
3626c858 | 64 | Float_t* GetChamberBox() { return &fChamberBox[0]; }; |
65 | ||
d810d0de | 66 | ClassDef(AliEveMUONChamberData,1); // class with data for one chamber |
3626c858 | 67 | |
68 | }; | |
69 | ||
3626c858 | 70 | #endif |