Changing to centrality dependent corrections
[u/mrichter/AliRoot.git] / ANALYSIS / AliAnalysisTaskPIDResponse.h
CommitLineData
66ab8ab2 1#ifndef ALIANALYSISTASKPIDRESPONSE_H
2#define ALIANALYSISTASKPIDRESPONSE_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: AliAnalysisTaskPIDResponse.h 43642 2010-09-17 15:50:04Z wiechula $ */
8// Author: Jens Wiechula, 24/02/2011
9
10//==============================================================================
11//
12//
13//
14//
15//==============================================================================
16
17#include <TVectorDfwd.h>
67ad8680 18#include <TString.h>
66ab8ab2 19
20#ifndef ALIANALYSISTASKSE_H
21#include "AliAnalysisTaskSE.h"
22#endif
23
24class AliPIDResponse;
6a45d03f 25class AliVEvent;
66ab8ab2 26
27class AliAnalysisTaskPIDResponse : public AliAnalysisTaskSE {
28
29
30public:
31 AliAnalysisTaskPIDResponse();
32 AliAnalysisTaskPIDResponse(const char *name);
33 virtual ~AliAnalysisTaskPIDResponse();
34
00a38d07 35 void SetIsMC(Bool_t isMC=kTRUE) { fIsMC=isMC; }
36 void SetCachePID(Bool_t cachePID) { fCachePID=cachePID; }
37 Bool_t GetCachePID() const { return fCachePID; }
66ab8ab2 38
39 virtual void UserCreateOutputObjects();
40
41 virtual void UserExec(Option_t */*option*/);
42
67ad8680 43 void SetOADBPath(const char* path) {fOADBPath=path;}
44 const char* GetOADBPath() const { return fOADBPath.Data(); }
539a5a59 45 void SetTuneOnData(Bool_t flag,Int_t recopass){fIsTunedOnData=flag;fRecoPassTuned=recopass;};
c4f61bb2 46 void SetTuneOnDataMask(Int_t mask){fTunedOnDataMask=mask;};
f84b18dd 47
48 void SetUseTPCEtaCorrection(Bool_t useTPCEtaCorrection) { fUseTPCEtaCorrection = useTPCEtaCorrection; };
49 Bool_t UseTPCEtaCorrection() const { return fUseTPCEtaCorrection; };
87da0205 50
51 void SetUseTPCMultiplicityCorrection(Bool_t useMultiplicityCorrection = kTRUE) { fUseTPCMultiplicityCorrection = useMultiplicityCorrection; };
52 Bool_t UseTPCMultiplicityCorrection() const { return fUseTPCMultiplicityCorrection; };
67ad8680 53
b438e263 54 void SetSpecialDetectorResponse(const char* det) { fSpecialDetResponse=det; }
55
66ab8ab2 56private:
00a38d07 57 Bool_t fIsMC; // If we run on MC data
58 Bool_t fCachePID; // Cache PID values in transient object
67ad8680 59 TString fOADBPath; // OADB path to use
b438e263 60 TString fSpecialDetResponse; // Special detector response files for debugging
66ab8ab2 61
62 AliPIDResponse *fPIDResponse; //! PID response Handler
66ab8ab2 63 Int_t fRun; //! current run number
64 Int_t fOldRun; //! current run number
6a45d03f 65 Int_t fRecoPass; //! reconstruction pass
539a5a59 66
67 Bool_t fIsTunedOnData; // flag to tune MC on data (dE/dx)
c4f61bb2 68 Int_t fTunedOnDataMask; // mask to activate tuning on data on specific detectors
539a5a59 69 Int_t fRecoPassTuned; // Reco pass tuned on data for MC
66ab8ab2 70
87da0205 71 Bool_t fUseTPCEtaCorrection; // Use TPC eta correction
72 Bool_t fUseTPCMultiplicityCorrection; // Use TPC multiplicity correction
f84b18dd 73
66ab8ab2 74 //
75 void SetRecoInfo();
6a45d03f 76
66ab8ab2 77 AliAnalysisTaskPIDResponse(const AliAnalysisTaskPIDResponse &other);
78 AliAnalysisTaskPIDResponse& operator=(const AliAnalysisTaskPIDResponse &other);
79
c4f61bb2 80 ClassDef(AliAnalysisTaskPIDResponse,6) // Task to properly set the PID response functions of all detectors
66ab8ab2 81};
82#endif