]>
Commit | Line | Data |
---|---|---|
820b4d9e | 1 | #ifndef AliMFTDigit_H |
2 | #define AliMFTDigit_H | |
3 | ||
4 | /* Copyright(c) 2004-2006, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | //==================================================================================================================================================== | |
8 | // | |
9 | // Digit description for the ALICE Muon Forward Tracker | |
10 | // | |
11 | // Contact author: antonio.uras@cern.ch | |
12 | // | |
13 | //==================================================================================================================================================== | |
14 | ||
15 | #include "AliDigit.h" | |
16 | ||
17 | //==================================================================================================================================================== | |
18 | ||
19 | class AliMFTDigit: public AliDigit { | |
20 | ||
21 | public: | |
22 | ||
23 | AliMFTDigit(); | |
24 | // AliMFTDigit(const AliMFTDigit &d); | |
25 | ||
26 | virtual ~AliMFTDigit() {} | |
27 | ||
28 | void AddOffset2TrackID(Int_t offset) { for(Int_t iTr=0; iTr<fNMCTracks; iTr++) if (fMCLabel[iTr]>0) fMCLabel[iTr]+=offset; } // needed for merging (?) | |
29 | ||
30 | void SetPlane(Int_t plane) { fPlane = plane; } | |
31 | void SetDetElemID(Int_t detElemID) { fDetElemID = detElemID; } | |
32 | void SetPixID(Int_t pixelX, Int_t pixelY, Int_t pixelZ) { fPixelX = pixelX; fPixelY = pixelY; fPixelZ = pixelZ; } | |
33 | void SetPixCenter(Double_t pixelCenterX, Double_t pixelCenterY, Double_t pixelCenterZ) { | |
34 | fPixelCenterX = pixelCenterX; | |
35 | fPixelCenterY = pixelCenterY; | |
36 | fPixelCenterZ = pixelCenterZ; | |
37 | } | |
38 | void SetPixWidth(Double_t pixelWidthX, Double_t pixelWidthY, Double_t pixelWidthZ) { | |
39 | fPixelWidthX = pixelWidthX; | |
40 | fPixelWidthY = pixelWidthY; | |
41 | fPixelWidthZ = pixelWidthZ; | |
42 | } | |
43 | void SetEloss(Double_t sig) { fEloss = sig; fNElectrons = fEloss/fElossPerElectron; } | |
44 | ||
45 | void AddMCLabel(Int_t label) { if (fNMCTracks>=fNMaxMCTracks) return; else fMCLabel[fNMCTracks++]=label; } | |
46 | Int_t GetNMCTracks() const { return fNMCTracks; } | |
47 | Int_t GetMCLabel(Int_t track) const { if (track<fNMCTracks && track>=0) return fMCLabel[track]; else return -1; } | |
48 | ||
49 | Double_t GetEloss() const { return fEloss; } | |
50 | Double_t GetNElectrons() const { return fNElectrons; } | |
51 | Int_t GetPlane() const { return fPlane; } | |
52 | Int_t GetDetElemID() const { return fDetElemID; } | |
53 | Int_t GetPixelX() const { return fPixelX; } | |
54 | Int_t GetPixelY() const { return fPixelY; } | |
55 | Int_t GetPixelZ() const { return fPixelZ; } | |
56 | Double_t GetPixelCenterX() const { return fPixelCenterX; } | |
57 | Double_t GetPixelCenterY() const { return fPixelCenterY; } | |
58 | Double_t GetPixelCenterZ() const { return fPixelCenterZ; } | |
59 | Double_t GetPixelWidthX() const { return fPixelWidthX; } | |
60 | Double_t GetPixelWidthY() const { return fPixelWidthY; } | |
61 | Double_t GetPixelWidthZ() const { return fPixelWidthZ; } | |
62 | ||
63 | protected: | |
64 | ||
65 | static const Double_t fElossPerElectron = 3.62e-09; | |
66 | static const Int_t fNMaxMCTracks = 10; | |
67 | ||
68 | Int_t fNMCTracks; | |
69 | ||
70 | Int_t fPixelX; | |
71 | Int_t fPixelY; | |
72 | Int_t fPixelZ; | |
73 | Double_t fPixelCenterX; | |
74 | Double_t fPixelCenterY; | |
75 | Double_t fPixelCenterZ; | |
76 | Double_t fPixelWidthX; | |
77 | Double_t fPixelWidthY; | |
78 | Double_t fPixelWidthZ; | |
79 | Int_t fPlane; | |
80 | Int_t fDetElemID; | |
81 | Double_t fEloss; // total signal as Eloss in the medium | |
82 | Double_t fNElectrons; | |
83 | ||
84 | Int_t fMCLabel[fNMaxMCTracks]; | |
85 | ||
86 | ClassDef(AliMFTDigit,3) | |
87 | ||
88 | }; | |
89 | ||
90 | //==================================================================================================================================================== | |
91 | ||
92 | #endif | |
93 | ||
94 | ||
95 |