]>
Commit | Line | Data |
---|---|---|
8f1cfb0c | 1 | #ifndef ALIFMDRECONSTRUCTOR_H |
2 | #define ALIFMDRECONSTRUCTOR_H | |
4347b38f | 3 | // |
4 | // Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights | |
5 | // reserved. | |
6 | // | |
121a60bd | 7 | // See cxx source for full Copyright notice |
4347b38f | 8 | // |
121a60bd | 9 | // AliFMDReconstructor.h |
4347b38f | 10 | // Task Class for making TreeR for FMD |
11 | // | |
121a60bd | 12 | //-- Authors: Evgeny Karpechev (INR) and Alla Maevskaia (INR) |
4347b38f | 13 | // Latest changes by Christian Holm Christensen <cholm@nbi.dk> |
121a60bd | 14 | /* |
4347b38f | 15 | Reconstruct nember of particles in given group of pads for given |
16 | FMDvolume determine by numberOfVolume , | |
17 | numberOfMinSector,numberOfMaxSector, numberOfMinRing, | |
18 | numberOfMaxRing Reconstruction method choose dependence on number | |
19 | of empty pads | |
121a60bd | 20 | */ |
21 | /* $Id$ */ | |
8f1cfb0c | 22 | |
42403906 | 23 | //____________________________________________________________________ |
24 | // | |
25 | // Class to do reconstruction of events based on the FMD data. The | |
26 | // class will do two kinds of reconstruction, one based on energy | |
27 | // deposition, and one using hit patterns. | |
28 | // | |
29 | ||
0d0e6995 | 30 | // Header guards in the header files speeds up the compilation |
31 | // considerably. Please leave them in. | |
32 | #ifndef ALIRECONSTRUCTOR_H | |
33 | # include <AliReconstructor.h> | |
34 | #endif | |
121a60bd | 35 | |
4347b38f | 36 | //____________________________________________________________________ |
1a1fdef7 | 37 | class TTree; |
4347b38f | 38 | class TClonesArray; |
4347b38f | 39 | class AliFMDDigit; |
40 | class AliRawReader; | |
1a1fdef7 | 41 | class AliRunLoader; |
a3537838 | 42 | class AliESD; |
8f6ee336 | 43 | class AliESDFMD; |
e802be3e | 44 | |
4347b38f | 45 | //____________________________________________________________________ |
121a60bd | 46 | class AliFMDReconstructor: public AliReconstructor |
47 | { | |
4347b38f | 48 | public: |
49 | AliFMDReconstructor(); | |
42403906 | 50 | AliFMDReconstructor(const AliFMDReconstructor& other); |
56b1929b | 51 | virtual ~AliFMDReconstructor(); |
42403906 | 52 | AliFMDReconstructor& operator=(const AliFMDReconstructor& other); |
4347b38f | 53 | |
1a1fdef7 | 54 | virtual void Init(AliRunLoader* runLoader); |
55 | virtual Bool_t HasDigitConversion() const { return kTRUE; } | |
56 | virtual void ConvertDigits(AliRawReader* reader, TTree* digitsTree) const; | |
57 | virtual Bool_t HasLocalReconstruction() const { return kTRUE; } | |
58 | virtual void Reconstruct(TTree* digitsTree, TTree* clusterTree) const; | |
59 | virtual void FillESD(TTree* digitsTree, TTree* clusterTree, | |
60 | AliESD* esd) const; | |
a3537838 | 61 | virtual void SetESD(AliESD* esd) { fESD = esd; } |
4347b38f | 62 | |
54e415a8 | 63 | private: |
64 | void Reconstruct(AliRawReader*, TTree*) const; | |
65 | void Reconstruct(AliRunLoader*) const; | |
66 | void Reconstruct(AliRunLoader*, AliRawReader*) const; | |
67 | void FillESD(AliRawReader*, TTree*, AliESD*) const; | |
68 | void FillESD(AliRunLoader*, AliESD*) const; | |
69 | void FillESD(AliRunLoader*, AliRawReader*, AliESD*) const; | |
70 | ||
4347b38f | 71 | protected: |
e802be3e | 72 | virtual void ProcessDigits(TClonesArray* digits) const; |
4347b38f | 73 | virtual UShort_t SubtractPedestal(AliFMDDigit* digit) const; |
8f6ee336 | 74 | virtual Float_t Adc2Energy(AliFMDDigit* digit, Float_t eta, |
75 | UShort_t count) const; | |
76 | virtual Float_t Energy2Multiplicity(AliFMDDigit* digit, Float_t edep) const; | |
77 | virtual void PhysicalCoordinates(AliFMDDigit* digit, Float_t& eta, | |
78 | Float_t& phi) const; | |
42403906 | 79 | |
8f6ee336 | 80 | mutable TClonesArray* fMult; // Cache of RecPoints |
81 | mutable Int_t fNMult; // Number of entries in fMult | |
82 | mutable TTree* fTreeR; // Output tree | |
e802be3e | 83 | mutable Float_t fCurrentVertex; // Z-coordinate of primary vertex |
8f6ee336 | 84 | mutable AliESDFMD* fESDObj; // ESD output object |
a3537838 | 85 | AliESD* fESD; |
42403906 | 86 | |
121a60bd | 87 | ClassDef(AliFMDReconstructor, 0) // class for the FMD reconstruction |
121a60bd | 88 | }; |
89 | #endif | |
4347b38f | 90 | //____________________________________________________________________ |
91 | // | |
0d0e6995 | 92 | // Local Variables: |
93 | // mode: C++ | |
94 | // End: | |
95 | // | |
4347b38f | 96 | // EOF |
97 | // |