addressing some minor rulechecker coding violations
[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>
18
19#ifndef ALIANALYSISTASKSE_H
20#include "AliAnalysisTaskSE.h"
21#endif
22
23class AliPIDResponse;
24class TList;
25
26class AliAnalysisTaskPIDResponse : public AliAnalysisTaskSE {
27
28
29public:
30 AliAnalysisTaskPIDResponse();
31 AliAnalysisTaskPIDResponse(const char *name);
32 virtual ~AliAnalysisTaskPIDResponse();
33
34 void SetIsMC(Bool_t isMC=kTRUE) { fIsMC=isMC; }
35
36 virtual void UserCreateOutputObjects();
37
38 virtual void UserExec(Option_t */*option*/);
39
40 void SetTOFTimeZeroType(Int_t type) { fTOFTimeZeroTypeUser=type; }
41 void SetTOFres(Float_t res) { fTOFres=res; }
42
43private:
44 Bool_t fIsMC; // If we run on MC data
45
46 Int_t fTOFTimeZeroTypeUser; // start time type for tof (ESD)
47 Int_t fTOFTimeZeroType; //! default start time type for tof (ESD)
48 Float_t fTOFres; // TOF resolution
49
50 AliPIDResponse *fPIDResponse; //! PID response Handler
51 TList *fListQA; //! list with all QA objects
52 TList *fListQAits; //! List with ITS QA objects
53 TList *fListQAtpc; //! List with TPC QA objects
54 TList *fListQAtrd; //! List with TRD QA objects
55 TList *fListQAtof; //! List with TOF QA objects
56
57 TString fBeamType; //! beam type (PP) or (PBPB)
58 TString fLHCperiod; //! LHC period
59 TString fMCperiodTPC; //! corresponding MC period to use for the TPC splines
60 Int_t fRecoPass; //! reconstruction pass
61 Int_t fRun; //! current run number
62 Int_t fOldRun; //! current run number
63
64 TObjArray *fArrPidResponseMaster; // TPC pid splines
65
66 void ExecNewRun();
67
68 //qa object initialisation
69 void SetupTTSqa();
70 void SetupTPCqa();
71 void SetupTRDqa();
72 void SetupTOFqa();
73
74 //
75 void FillITSqa();
76 void FillTPCqa();
77 void FillTOFqa();
78
79 //
80 //setup parametrisations
81 //
82 void SetITSParametrisation();
83
84 //TPC
85 void SetTPCPidResponseMaster();
86 void SetTPCParametrisation();
87
88 //
89 void SetRecoInfo();
90
91 //helper functions
92 TVectorD* MakeLogBinning(Int_t nbinsX, Double_t xmin, Double_t xmax);
93 TVectorD* MakeLinBinning(Int_t nbinsX, Double_t xmin, Double_t xmax);
94 TVectorD* MakeArbitraryBinning(const char* bins);
95
96
97 AliAnalysisTaskPIDResponse(const AliAnalysisTaskPIDResponse &other);
98 AliAnalysisTaskPIDResponse& operator=(const AliAnalysisTaskPIDResponse &other);
99
100 ClassDef(AliAnalysisTaskPIDResponse,1) // Task to properly set the PID response functions of all detectors
101};
102#endif