]>
Commit | Line | Data |
---|---|---|
cac2eb58 | 1 | #ifndef ALIMUONRECONSTRUCTOR_H |
2 | #define ALIMUONRECONSTRUCTOR_H | |
22899106 | 3 | |
cac2eb58 | 4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
22899106 | 5 | * See cxx source for full Copyright notice */ |
cac2eb58 | 6 | |
22899106 | 7 | // $Id$ |
cac2eb58 | 8 | |
692de412 | 9 | /// \ingroup rec |
10 | /// \class AliMUONReconstructor | |
22899106 | 11 | /// \brief Implementation of AliReconstructor for MUON (both tracker and trigger) |
12 | /// | |
13 | // Author Laurent Aphecetche, Subatech | |
692de412 | 14 | |
22899106 | 15 | #ifndef ALIRECONSTRUCTOR_H |
16 | # include "AliReconstructor.h" | |
17 | #endif | |
cac2eb58 | 18 | |
2cf44ef3 | 19 | class AliMUONDigitMaker; |
22899106 | 20 | class AliMUONVDigitStore; |
21 | class AliMUONVTriggerStore; | |
22 | ||
9c4b1ee7 | 23 | class AliMUONGeometryTransformer; |
6a518391 | 24 | |
22899106 | 25 | class AliMUONTriggerCrateStore; |
26 | class AliMUONTriggerCircuit; | |
6a518391 | 27 | class TClonesArray; |
22899106 | 28 | class AliMUONVTriggerStore; |
b2d7df0b | 29 | |
22899106 | 30 | class AliMUONDigitCalibrator; |
31 | class AliMUONCalibrationData; | |
9c4b1ee7 | 32 | |
22899106 | 33 | class AliMUONClusterReconstructor; |
34 | class AliMUONVClusterStore; | |
b2d7df0b | 35 | |
22899106 | 36 | class AliMUONTracker; |
37 | class AliMUONVTrackStore; | |
b2d7df0b | 38 | |
22899106 | 39 | class AliMUONStopwatchGroup; |
2cf44ef3 | 40 | |
22899106 | 41 | class AliMUONReconstructor : public AliReconstructor |
42 | { | |
43 | public: | |
44 | AliMUONReconstructor(); | |
45 | virtual ~AliMUONReconstructor(); | |
46 | ||
47 | virtual Bool_t HasDigitConversion() const; | |
48 | ||
49 | virtual void ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const; | |
50 | ||
51 | virtual Bool_t HasLocalReconstruction() const; | |
52 | ||
53 | virtual void Reconstruct(AliRunLoader* runLoader) const; | |
54 | ||
55 | virtual void Reconstruct(AliRunLoader* runLoader, AliRawReader* rawReader) const; | |
56 | ||
57 | virtual void Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const; | |
58 | ||
59 | virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const; | |
60 | ||
61 | virtual AliTracker* CreateTracker(AliRunLoader* runLoader) const; | |
b2d7df0b | 62 | |
22899106 | 63 | private: |
64 | /// Not implemented | |
65 | AliMUONReconstructor(const AliMUONReconstructor&); | |
66 | /// Not implemented | |
67 | AliMUONReconstructor& operator=(const AliMUONReconstructor&); | |
68 | ||
69 | void ConvertDigits(AliRawReader* rawReader, | |
70 | AliMUONVDigitStore* digitStore, | |
71 | AliMUONVTriggerStore* triggerStore) const; | |
72 | void Calibrate(AliMUONVDigitStore& digitStore) const; | |
73 | void Clusterize(const AliMUONVDigitStore& digitStore, AliMUONVClusterStore& clusterStore) const; | |
74 | AliMUONTriggerCrateStore* CrateManager() const; | |
75 | void CreateCalibrator() const; | |
76 | void CreateDigitMaker() const; | |
77 | void CreateTriggerCircuit() const; | |
78 | void CreateClusterReconstructor() const; | |
79 | void FillTreeR(AliMUONVTriggerStore* triggerStore, | |
80 | AliMUONVClusterStore* clusterStore, | |
81 | TTree& clustersTree) const; | |
82 | ||
83 | AliMUONVDigitStore* DigitStore() const; | |
84 | AliMUONVClusterStore* ClusterStore() const; | |
85 | AliMUONVTriggerStore* TriggerStore() const; | |
196471e9 | 86 | |
22899106 | 87 | private: |
88 | mutable AliMUONTriggerCrateStore* fCrateManager; //!< Trigger Crate manager | |
89 | mutable AliMUONDigitMaker* fDigitMaker; //!< Raw to Digits converter | |
90 | AliMUONGeometryTransformer* fTransformer; //!< Geometry transformer (local<->global) | |
91 | mutable AliMUONVDigitStore* fDigitStore; //!< Digit container | |
32ab62c9 | 92 | mutable AliMUONTriggerCircuit* fTriggerCircuit; //!< Trigger Circuit |
22899106 | 93 | mutable AliMUONCalibrationData* fCalibrationData; //!< Calibration data |
94 | mutable AliMUONDigitCalibrator* fDigitCalibrator; //!< Digit to calibrate digit converter | |
95 | mutable AliMUONClusterReconstructor* fClusterReconstructor; //!< Clusterizer | |
96 | mutable AliMUONVClusterStore* fClusterStore; //!< Cluster container | |
97 | mutable AliMUONVTriggerStore* fTriggerStore; //!< Trigger container | |
98 | mutable AliMUONVTrackStore* fTrackStore; //!< Track container | |
99 | AliMUONStopwatchGroup* fTimers; //!< Internal timers | |
100 | ||
101 | ClassDef(AliMUONReconstructor,1) // Implementation of AliReconstructor | |
cac2eb58 | 102 | }; |
103 | ||
104 | #endif |