]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONChamberCalibrationTask.h
Adding new class AliMUONChamberCalibrationTask.
[u/mrichter/AliRoot.git] / MUON / AliMUONChamberCalibrationTask.h
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 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
30 class AliMUONChamberCalibrationTask : public AliAnalysisTaskSE
31 {
32
33  public:
34
35   enum Calibration_t { NOGAIN, GAINCONSTANTCAPA, GAIN, INJECTIONGAIN };
36   typedef Calibration_t Calibration_t;
37
38   // Constructors
39   AliMUONChamberCalibrationTask();
40   AliMUONChamberCalibrationTask( const char* name, 
41                                  char* ocdbpath, 
42                                  const Int_t my_calib_option );
43
44   // Destructor
45   virtual ~AliMUONChamberCalibrationTask();
46
47   // Implementation of interface methods
48   virtual void CreateOutputObjects(); 
49   virtual void LocalInit(); 
50   virtual void ConnectInputData( Option_t* option = "" );
51   virtual void Exec( Option_t* option  = "" ); 
52   virtual void Terminate( Option_t* option = "" ); 
53
54   // Getters
55   TTree* OutputTree() { return fClusterInfoTree; }
56
57   UInt_t BuildClusterMap( AliMUONTrack &track );
58
59  private:
60
61   char* fOCDBPath; //!< default path to the condition database
62   Calibration_t fCalibChoice; //!< calibration option
63   TTree* fClusterInfoTree; //!< TTree filled with the cluster information
64   AliMUONRecoParam* fMuonRecoParam; //!< reconstruction parameters for track refitting
65   AliMUONClusterInfo* fClusterInfo; //!< the cluster info used to fill the output TTree
66   AliMUONCalibrationData* fCalibData; 
67   AliMUONESDInterface* fESDInterface;
68   AliMUONVDigitStore* fDigitStore;
69   AliESDInputHandler* fESDInputHandler; //!< ESD input handler
70   AliESDEvent* fESDInputEvent; //!< pointer to the current input ESD event
71
72   ClassDef( AliMUONChamberCalibrationTask, 1 ) //Task to extract cluster information after applying calibration
73
74 };
75
76
77 #endif