]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/totEt/AliAnalysisTaskTransverseEnergy.h
bugfix: the AliHLTOUTTask supposed to receive the output of an HLT reconstruction...
[u/mrichter/AliRoot.git] / PWG4 / totEt / AliAnalysisTaskTransverseEnergy.h
1 //_________________________________________________________________________
2 //  Utility Class for transverse energy studies
3 //  Base class for Et tasks
4 //  - reconstruction and MonteCarlo output
5 //
6 //*-- Authors: Oystein Djuvsland (Bergen)
7 //_________________________________________________________________________//
8 #ifndef ALIANALYSISTASKTRANSVERSEENERGY_H
9 #define ALIANALYSISTASKTRANSVERSEENERGY_H
10
11 #include "AliAnalysisTaskSE.h"
12
13 class AliCentrality;
14 class AliAnalysisEtSelectionHandler;
15 class AliESDtrackCuts;
16 class AliESDEvent;
17 class TH2F;
18
19 class AliAnalysisTaskTransverseEnergy : public AliAnalysisTaskSE
20 {
21
22 public:
23
24     /** Constructor */
25     AliAnalysisTaskTransverseEnergy(const char* name, Bool_t isMc);
26
27     /** Destructro */
28     virtual ~AliAnalysisTaskTransverseEnergy();
29
30     AliESDtrackCuts* GetTPCITSTrackCuts(){return (AliESDtrackCuts*) fOutputList->FindObject("fEsdTrackCuts");}
31     AliESDtrackCuts* GetTPCOnlyTrackCuts(){return (AliESDtrackCuts*) fOutputList->FindObject("fEsdTrackCutsTPCOnly");}
32     AliESDtrackCuts* GetITSTrackCuts(){return (AliESDtrackCuts*) fOutputList->FindObject("fEsdTrackCutsITS");}
33
34     Int_t LoadPhysicsSelection(TString name);
35     
36     void SetMcData(Bool_t isMc = true) { fIsMc = isMc; }
37
38 protected:
39
40     /** Check if the physics selection is still valid, if not load new */
41     Int_t CheckPhysicsSelection(Int_t runNumber); // check if the current physics selection is valid, if not load new
42     
43     /** Check if the event is a physics event */
44     Bool_t IsPhysicsSelected() const;
45     
46     /** Get the centrality object */
47     AliCentrality* GetCentralityObject();
48     
49     /** The ESD event */
50     AliESDEvent *fESDEvent; //The ESD event
51   
52     TString       fMCConfigFile;        // the name of the ConfigFile
53     TString       fRecoConfigFile;        // the name of the ConfigFile
54
55     TH2F *fHistEtRecvsEtMC; // Rec vs MC histo 
56
57     AliESDtrackCuts* fEsdtrackCutsITSTPC; // track cuts ITS&TPC
58     AliESDtrackCuts* fEsdtrackCutsTPC; // track cuts TPC
59     AliESDtrackCuts* fEsdtrackCutsITS; // track cuts ITS
60
61     TList *fOutputList; //output list
62     
63     TString fPhysSelTaskName; // If we need to access the physics selection task
64     TString fCentSelTaskName; // If we need to access the centrality selection task
65     
66     Bool_t fIsMc; // Are we analysing MC data
67
68     Bool_t fUsingDefaultSelection; // Are we using the default physics selection
69
70 private:
71
72     Int_t fCurrentRunNum; // The current run number
73     
74     AliAnalysisEtSelectionHandler* fSelectionHandler; //! Taking care of loading the correct selections
75     AliAnalysisTaskTransverseEnergy();
76   //Declare it private to avoid compilation warning
77     AliAnalysisTaskTransverseEnergy & operator = (const AliAnalysisTaskTransverseEnergy &);//assignment
78     AliAnalysisTaskTransverseEnergy(const AliAnalysisTaskTransverseEnergy &) ; //copy constructor
79
80     ClassDef(AliAnalysisTaskTransverseEnergy, 1)
81 };
82
83 #endif // ALIANALYSISTASKTRANSVERSEENERGY_H