]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/totEt/AliAnalysisTaskTransverseEnergy.h
coverity fix - checked fCentrality before usage
[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     TH2F *fHistEtRecOverEtMC; // Rec over MC histo 
57     TH2F *fHistDiffEtRecEtMCOverEtMC; // Rec - MC over MC histo 
58
59     AliESDtrackCuts* fEsdtrackCutsITSTPC; // track cuts ITS&TPC
60     AliESDtrackCuts* fEsdtrackCutsTPC; // track cuts TPC
61     AliESDtrackCuts* fEsdtrackCutsITS; // track cuts ITS
62
63     TList *fOutputList; //output list
64     
65     TString fPhysSelTaskName; // If we need to access the physics selection task
66     TString fCentSelTaskName; // If we need to access the centrality selection task
67     
68     Bool_t fIsMc; // Are we analysing MC data
69
70     Bool_t fUsingDefaultSelection; // Are we using the default physics selection
71
72 private:
73
74     Int_t fCurrentRunNum; // The current run number
75     
76     AliAnalysisEtSelectionHandler* fSelectionHandler; //! Taking care of loading the correct selections
77     AliAnalysisTaskTransverseEnergy();
78   //Declare it private to avoid compilation warning
79     AliAnalysisTaskTransverseEnergy & operator = (const AliAnalysisTaskTransverseEnergy &);//assignment
80     AliAnalysisTaskTransverseEnergy(const AliAnalysisTaskTransverseEnergy &) ; //copy constructor
81
82     ClassDef(AliAnalysisTaskTransverseEnergy, 1)
83 };
84
85 #endif // ALIANALYSISTASKTRANSVERSEENERGY_H