TOF pp spectra task added to PWGLFspectra lib
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / PiKaPr / TOF / pp7 / TOFSpectrappAnalysis.h
CommitLineData
f872ff90 1#ifndef TOFSPECTRAPPANALYSIS_H
2#define TOFSPECTRAPOANALYSIS_H
414be7d1 3
4//////////////////////////////////////////////////////////////////////////////
5// //
6// This analysis extracts pT-spectra of charged kaons, protons, and pions. //
7// It is based on particles identifation via the dE/dx signal of the TPC. //
8// //
9//////////////////////////////////////////////////////////////////////////////
10
11class TH1;
12class TH1F;
13class TH2F;
14class TH3F;
15class TList;
16class TObjArray;
17class AliESDEvent;
18class AliESDtrack;
19class AliESDtrackCuts;
20class AliHeader;
21class AliESDpid;
22#include "AliTOFT0v1.h"
23#include "AliTOFT0maker.h"
24#include "AliTOFcalib.h"
25#include "AliCDBManager.h"
26#include <TTree.h>
27
28class AliAnalysisFilter;
29class AliCFContainer;
30class TDatabasePDG;
31
32#include "AliAnalysisTask.h"
33#include "AliESDVertex.h"
34#include "AliPhysicsSelectionTask.h"
35#include "AliPhysicsSelection.h"
36#include "AliBackgroundSelection.h"
37#include "AliTOFT0v1.h"
38#include "AliTOFT0maker.h"
39#include "AliTOFcalib.h"
40#include "AliCDBManager.h"
41
42
43
44#include "AliAnalysisTaskSE.h"
45#include "THnSparse.h"
46
47class TOFSpectrappAnalysis : public AliAnalysisTaskSE {
48 public:
49 TOFSpectrappAnalysis(const char *name);
50 TOFSpectrappAnalysis();
51 virtual ~TOFSpectrappAnalysis() {}
52 //
53 virtual void UserCreateOutputObjects();
54 virtual void UserExec(Option_t *option);
55 virtual void Terminate(Option_t *);
56 //
57 Bool_t SelectOnImpPar(AliESDtrack* t);
58 //
59 void SetESDtrackCuts(AliESDtrackCuts * trackCuts){fESDtrackCuts = trackCuts;};
60 //void SetAlephParameters(const Double_t * parameters){for(Int_t j=0;j<5;j++) fAlephParameters[j] = parameters[j]; Initialize();};
61 Int_t Mult();
62
63 //
64
65 private:
66 //
67 //void BinLogAxis(const THnSparse *h, Int_t axisNumber);
68
69 //
70 AliESDEvent *fESD; //! ESD object
71 AliESDtrackCuts * fESDtrackCuts; // basic cut variables
72 AliESDpid * fESDpid; // basic TPC object for n-sigma cuts
73 Bool_t fMCtrue; // flag if real data or MC is processed
74 Double_t fAlephParameters[5]; // Aleph Parameters for Bethe-Bloch
75 Float_t spdCorr;
76 Int_t multiplicity;
77 Double_t ZPrimVertex;
78 Int_t frun;
79 Int_t frunOld;
80 Bool_t fLoadOCDB;
81 Bool_t correctTExp;
82 Bool_t calibrateESD;
83 Bool_t useT0TOF;
84 Double_t timeResolution;
85 Bool_t tuneTOFMC;
86 TTree *fTreeTrack;
87 //TTree *fTreeEv;
88 TH1D *hNumEv;
89 AliTOFcalib *tofCalib;
90 AliTOFT0maker *t0maker;
91
92 Float_t fDCAXY;
93 Float_t fDCAZ;
94 Int_t kselimppar;
95 Int_t fmatch;
96 Double_t fmom;
97 Double_t flength;
98 Int_t fsign;
99 Double_t ftimetof;
100 Double_t fexptimeel;
101 Double_t fexptimemu;
102 Double_t fexptimepi;
103 Double_t fexptimeka;
104 Double_t fexptimepr;
105 Int_t ftofchan;
106 Double_t feta;
107 Double_t fphi;
108 Double_t fmomtrasv;
109 Float_t t0track;
110 Float_t t0trackSigma;
111 Double_t sigmael;
112 Double_t sigmamu;
113 Double_t sigmapi;
114 Double_t sigmaka;
115 Double_t sigmapr;
116 Double_t TPCSignal;
117 Float_t TPCSigmaPI;
118 Float_t TPCSigmaKA;
119 Float_t TPCSigmaPR;
120 Int_t TOFlabel0;
121 Int_t TOFlabel1;
122 Int_t TOFlabel2;
123
124
125 Double_t r1[5];
126
127
128 //
129 TOFSpectrappAnalysis(const TOFSpectrappAnalysis&);
130 TOFSpectrappAnalysis & operator=(const TOFSpectrappAnalysis&);
131
132 ClassDef(TOFSpectrappAnalysis, 1);
133};
134
135#endif