]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIMUONCHAMBERCALIBRATIONTASK_H | |
2 | #define ALIMUONCHAMBERCALIBRATIONTASK_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | // $Id$ | |
8 | ||
9 | /// \ingroup calign | |
10 | /// \class AliMUONChamberCalibrationTask | |
11 | /// \brief Definition of the task to extract cluster information | |
12 | /// from MCH tracks after applying the calibration on an aligned ESD | |
13 | /// \author Andry Rakotozafindrabe CEA/IRFU/SPhN | |
14 | ||
15 | class AliMUONRecoParam; | |
16 | class AliMUONClusterInfo; | |
17 | class AliMUONPadInfo; | |
18 | class AliMUONCalibrationData; | |
19 | class AliMUONESDInterface; | |
20 | class AliMUONVClusterStore; | |
21 | class AliMUONVDigitStore; | |
22 | class AliMUONTrack; | |
23 | ||
24 | class AliESDInputHandler; | |
25 | class AliESDEvent; | |
26 | ||
27 | #include "AliAnalysisTaskSE.h" | |
28 | #include "TTree.h" | |
29 | #include "TString.h" | |
30 | ||
31 | class AliMUONChamberCalibrationTask : public AliAnalysisTaskSE | |
32 | { | |
33 | ||
34 | public: | |
35 | ||
36 | /// enumerate the list of the available modes for the calibration | |
37 | enum Calibration_t { | |
38 | kNOGAIN, | |
39 | kGAINCONSTANTCAPA, | |
40 | kGAIN, | |
41 | kINJECTIONGAIN | |
42 | }; | |
43 | ||
44 | // Constructors | |
45 | AliMUONChamberCalibrationTask(); | |
46 | AliMUONChamberCalibrationTask( const char* name, | |
47 | char* ocdbpath, | |
48 | const Int_t my_calib_option ); | |
49 | ||
50 | // Destructor | |
51 | virtual ~AliMUONChamberCalibrationTask(); | |
52 | ||
53 | // Implementation of interface methods | |
54 | virtual void CreateOutputObjects(); | |
55 | virtual void LocalInit(); | |
56 | virtual void ConnectInputData( Option_t* option = "" ); | |
57 | virtual void Exec( Option_t* option = "" ); | |
58 | virtual void Terminate( Option_t* option = "" ); | |
59 | ||
60 | // Getters | |
61 | /// Return TTree filled with the cluster information | |
62 | TTree* OutputTree() const { return fClusterInfoTree; } | |
63 | ||
64 | UInt_t BuildClusterMap( AliMUONTrack &track ); | |
65 | ||
66 | private: | |
67 | /// Not implemented | |
68 | AliMUONChamberCalibrationTask(const AliMUONChamberCalibrationTask& right); | |
69 | /// Not implemented | |
70 | AliMUONChamberCalibrationTask& operator = (const AliMUONChamberCalibrationTask& right); | |
71 | ||
72 | TString fOCDBPath; //!< default path to the condition database | |
73 | Calibration_t fCalibChoice; //!< calibration option | |
74 | TTree* fClusterInfoTree; //!< TTree filled with the cluster information | |
75 | AliMUONRecoParam* fMuonRecoParam; //!< reconstruction parameters for track refitting | |
76 | AliMUONClusterInfo* fClusterInfo; //!< cluster info used to fill the output TTree | |
77 | AliMUONCalibrationData* fCalibData; //!< needed to access to the calibration data for each pad within each cluster | |
78 | AliMUONESDInterface* fESDInterface; //!< interface to easily access to the ESD content | |
79 | AliMUONVDigitStore* fDigitStore; //!< pointer to the digit stored for the current input ESD event | |
80 | AliESDInputHandler* fESDInputHandler; //!< ESD input handler | |
81 | AliESDEvent* fESDInputEvent; //!< pointer to the current input ESD event | |
82 | ||
83 | ClassDef( AliMUONChamberCalibrationTask, 1 ) // Task to extract cluster information after applying calibration | |
84 | ||
85 | }; | |
86 | ||
87 | ||
88 | #endif |