]>
Commit | Line | Data |
---|---|---|
aa2bbd47 | 1 | #ifndef ALIANALYSISTASKCHARGEDHADRONSPECTRA_H |
2 | #define ALIANALYSISTASKCHARGEDHADRONSPECTRA_H | |
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 | ||
11 | class TH1; | |
12 | class TH1F; | |
13 | class TH2D; | |
d93f62b9 | 14 | class TH3D; |
aa2bbd47 | 15 | class TList; |
16 | class TObjArray; | |
17 | class AliESDEvent; | |
18 | class AliESDtrack; | |
19 | class AliESDtrackCuts; | |
20 | class AliHeader; | |
21 | class AliESDpid; | |
22 | ||
23 | ||
24 | #include "AliAnalysisTaskSE.h" | |
25 | #include "THnSparse.h" | |
26 | ||
27 | class AliAnalysisCombinedHadronSpectra : public AliAnalysisTaskSE { | |
28 | public: | |
29 | AliAnalysisCombinedHadronSpectra(const char *name); | |
30 | AliAnalysisCombinedHadronSpectra(); | |
31 | virtual ~AliAnalysisCombinedHadronSpectra() {} | |
32 | // | |
33 | virtual void UserCreateOutputObjects(); | |
34 | virtual void UserExec(Option_t *option); | |
35 | virtual void Terminate(Option_t *); | |
36 | // | |
37 | Bool_t SelectOnImpPar(AliESDtrack* t); | |
38 | // | |
39 | void SetESDtrackCuts(AliESDtrackCuts * trackCuts){fESDtrackCuts = trackCuts;}; | |
40 | void SetAlephParameters(const Double_t * parameters){for(Int_t j=0;j<5;j++) fAlephParameters[j] = parameters[j]; Initialize();}; | |
41 | void SetIsMCtrue(Bool_t isMCdata = kTRUE){fMCtrue = isMCdata;}; | |
42 | void SetUseHBTmultiplicity(Bool_t useHBTmultiplicity = kTRUE){fUseHBTmultiplicity = useHBTmultiplicity;}; | |
c1466b2c | 43 | void SetUseTPConlyTracks(Bool_t useTPConlyTracks = kTRUE){fUseTPConlyTracks = useTPConlyTracks;}; |
aa2bbd47 | 44 | void Initialize(); |
45 | // | |
46 | ||
47 | private: | |
48 | // | |
d93f62b9 | 49 | void BinLogAxis(const TH1 *h); |
aa2bbd47 | 50 | Int_t GetPythiaEventProcessType(const AliHeader* aHeader, const Bool_t adebug = kFALSE) const; |
51 | // | |
52 | AliESDEvent *fESD; //! ESD object | |
53 | TList *fListHist; //! list for histograms | |
54 | // | |
55 | AliESDtrackCuts * fESDtrackCuts; // basic cut variables | |
56 | AliESDtrackCuts * fESDTrackCutsMult; // cuts for the MULTIPLICITY DETERMINATION | |
57 | AliESDpid * fESDpid; // basic TPC object for n-sigma cuts | |
58 | Bool_t fMCtrue; // flag if real data or MC is processed | |
59 | Bool_t fOnlyQA; // flag if only QA histograms should be filled | |
60 | Bool_t fUseHBTmultiplicity; // flag if multiplicity determination should be done as in the HBT paper | |
84626434 | 61 | Bool_t fUseTPConlyTracks; // flag if TPConly-track should be used |
aa2bbd47 | 62 | Double_t fAlephParameters[5]; // Aleph Parameters for Bethe-Bloch |
63 | // | |
64 | // | |
65 | // | |
d93f62b9 | 66 | THnSparseF * fHistRealTracks; //! histogram with all necessary information for real tracks |
67 | THnSparseF * fHistMCparticles; //! histogram with all necessary information for MC particles | |
aa2bbd47 | 68 | // |
d93f62b9 | 69 | TH3D * fHistPidQA; //! histogram for the QA of the PID |
aa2bbd47 | 70 | TH2D * fHistMult; //! control histogram for multiplicity |
71 | TH1D * fHistCentrality; //! control histogram for centrality | |
72 | // | |
73 | AliAnalysisCombinedHadronSpectra(const AliAnalysisCombinedHadronSpectra&); | |
74 | AliAnalysisCombinedHadronSpectra& operator=(const AliAnalysisCombinedHadronSpectra&); | |
75 | ||
76 | ClassDef(AliAnalysisCombinedHadronSpectra, 1); | |
77 | }; | |
78 | ||
79 | #endif |