]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONReconstructor.h
reducing macro to minimum AliReconstruction functionality, disable QA and TriggerESD...
[u/mrichter/AliRoot.git] / MUON / AliMUONReconstructor.h
CommitLineData
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 19class AliMUONDigitMaker;
22899106 20class AliMUONVDigitStore;
21class AliMUONVTriggerStore;
22
9c4b1ee7 23class AliMUONGeometryTransformer;
6a518391 24
22899106 25class AliMUONTriggerCrateStore;
26class AliMUONTriggerCircuit;
6a518391 27class TClonesArray;
22899106 28class AliMUONVTriggerStore;
b2d7df0b 29
22899106 30class AliMUONDigitCalibrator;
31class AliMUONCalibrationData;
9c4b1ee7 32
22899106 33class AliMUONTracker;
34class AliMUONVTrackStore;
b2d7df0b 35
3304fa09 36class AliMUONRecoParam;
37
c5ce806f 38class AliMUONVClusterFinder;
39
40class AliMUONVClusterServer;
41
22899106 42class AliMUONReconstructor : public AliReconstructor
43{
44public:
45 AliMUONReconstructor();
46 virtual ~AliMUONReconstructor();
47
48 virtual Bool_t HasDigitConversion() const;
49
50 virtual void ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const;
51
22899106 52 virtual void Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
53
54 virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
55
d76c31f4 56 virtual AliTracker* CreateTracker() const;
3304fa09 57
15d30ed4 58 static const AliMUONRecoParam* GetRecoParam();
3304fa09 59
9bf6860b 60 static AliMUONVClusterFinder* CreateClusterFinder(const char* clusterFinderType);
61
22899106 62private:
63 /// Not implemented
64 AliMUONReconstructor(const AliMUONReconstructor&);
65 /// Not implemented
66 AliMUONReconstructor& operator=(const AliMUONReconstructor&);
67
68 void ConvertDigits(AliRawReader* rawReader,
69 AliMUONVDigitStore* digitStore,
70 AliMUONVTriggerStore* triggerStore) const;
71 void Calibrate(AliMUONVDigitStore& digitStore) const;
22899106 72 AliMUONTriggerCrateStore* CrateManager() const;
73 void CreateCalibrator() const;
74 void CreateDigitMaker() const;
75 void CreateTriggerCircuit() const;
c5ce806f 76 void CreateClusterServer() const;
22899106 77 void FillTreeR(AliMUONVTriggerStore* triggerStore,
22899106 78 TTree& clustersTree) const;
79
80 AliMUONVDigitStore* DigitStore() const;
22899106 81 AliMUONVTriggerStore* TriggerStore() const;
9bf6860b 82
22899106 83private:
84 mutable AliMUONTriggerCrateStore* fCrateManager; //!< Trigger Crate manager
85 mutable AliMUONDigitMaker* fDigitMaker; //!< Raw to Digits converter
86 AliMUONGeometryTransformer* fTransformer; //!< Geometry transformer (local<->global)
87 mutable AliMUONVDigitStore* fDigitStore; //!< Digit container
32ab62c9 88 mutable AliMUONTriggerCircuit* fTriggerCircuit; //!< Trigger Circuit
22899106 89 mutable AliMUONCalibrationData* fCalibrationData; //!< Calibration data
90 mutable AliMUONDigitCalibrator* fDigitCalibrator; //!< Digit to calibrate digit converter
c5ce806f 91 mutable AliMUONVClusterServer* fClusterServer; //!< Clusterizer
22899106 92 mutable AliMUONVTriggerStore* fTriggerStore; //!< Trigger container
93 mutable AliMUONVTrackStore* fTrackStore; //!< Track container
22899106 94
3304fa09 95 static AliMUONRecoParam* fgRecoParam; //!< parameters used to tune the MUON reconstruction
96
9bf6860b 97 ClassDef(AliMUONReconstructor,6) // Implementation of AliReconstructor
cac2eb58 98};
99
100#endif