]>
Commit | Line | Data |
---|---|---|
1 | /* Copyright(c) 1998-1999, ALICExperiment at CERN, All rights reserved. * | |
2 | * See cxx source for full Copyright notice */ | |
3 | /* $Id$ */ | |
4 | ||
5 | #ifndef ALIANALYSISTASKFLOWD2H_H | |
6 | #define ALIANALYSISTASKFLOWD2H_H | |
7 | ||
8 | #include "AliAnalysisTaskSE.h" | |
9 | ||
10 | //============================================================================== | |
11 | // FlowD2H main task: | |
12 | // >> Make flowEvent with RPcuts and POIcuts given in constructor and passes it | |
13 | // to the daughter tasks. | |
14 | // >> The POIcuts are polymorphic based on the AliRDHFCuts class allowing the | |
15 | // use of all charmed candidates reconstructed in the central barrel. | |
16 | // Author: Carlos Perez (cperez@cern.ch) | |
17 | //============================================================================== | |
18 | ||
19 | class AliAODEvent; | |
20 | class AliRDHFCuts; | |
21 | class AliRDHFCutsD0toKpi; | |
22 | class AliFlowEventCuts; | |
23 | class AliFlowEvent; | |
24 | class AliFlowCandidateTrack; | |
25 | class AliFlowTrackCuts; | |
26 | class TList; | |
27 | class TH1D; | |
28 | ||
29 | class AliAnalysisTaskFlowD2H : public AliAnalysisTaskSE { | |
30 | public: | |
31 | AliAnalysisTaskFlowD2H(); | |
32 | AliAnalysisTaskFlowD2H( const Char_t *name, | |
33 | AliFlowTrackCuts *cutsTPC, | |
34 | AliFlowTrackCuts *cutsVZE, | |
35 | AliRDHFCuts *cutsPOIs, | |
36 | Int_t specie ); | |
37 | void SetDebug() {fDebugV2 = true;} | |
38 | void SetSwapAsumption() {fSwap = true;} | |
39 | virtual ~AliAnalysisTaskFlowD2H(); | |
40 | virtual void UserCreateOutputObjects(); | |
41 | virtual void UserExec(Option_t *); | |
42 | virtual void Terminate(Option_t *); | |
43 | void SetCommonConstants(Int_t massBins, Double_t minMass, Double_t maxMass, Int_t ptWidth); | |
44 | ||
45 | private: | |
46 | AliAnalysisTaskFlowD2H(const AliAnalysisTaskFlowD2H& analysisTask); | |
47 | AliAnalysisTaskFlowD2H& operator=(const AliAnalysisTaskFlowD2H& analysisTask); | |
48 | void AddHistograms(); | |
49 | void FillD0toKpi( const AliAODEvent *aod ); | |
50 | void FillD0toKpipipi( const AliAODEvent *aod ); | |
51 | void FillDStartoKpipi( const AliAODEvent *aod ); | |
52 | void FillDplustoKpipi( const AliAODEvent *aod ); | |
53 | void FillDstoKKpi( const AliAODEvent *aod ); | |
54 | void FillJpsitoee( const AliAODEvent *aod ); | |
55 | void FillLctoV0( const AliAODEvent *aod ); | |
56 | void FillLctopKpi( const AliAODEvent *aod ); | |
57 | void MakeTrack( Double_t mass, Double_t pt, | |
58 | Double_t phi, Double_t eta, | |
59 | Int_t nDaughters, const Int_t *iID ); | |
60 | ||
61 | AliFlowEvent *fTPCEvent; //! | |
62 | AliFlowEvent *fVZEEvent; //! | |
63 | AliFlowTrackCuts *fCutsTPC; | |
64 | AliFlowTrackCuts *fCutsVZE; | |
65 | AliFlowTrackCuts *fNoPOIs; | |
66 | ||
67 | AliRDHFCuts *fCutsPOI; // cuts for POIs | |
68 | Int_t fSource; // AliRDHFCuts::ESele | |
69 | Bool_t fDebugV2; // fully talkative task | |
70 | Bool_t fSwap; // swap assumption (for neutral) | |
71 | ||
72 | Int_t fMassBins; // configures mass bins for the analysis | |
73 | Double_t fMinMass; // configures mass range for the analysis | |
74 | Double_t fMaxMass; // configures mass range for the analysis | |
75 | Int_t fPtBinWidth; // configures pt bin width for the analysis | |
76 | ||
77 | TList *fHList; //! List for histos | |
78 | TH1D *fEvent; // Event counter | |
79 | TH1D *fCC; // CC histogram | |
80 | TH1D *fRFPMTPC; // Multiplicity RFPTPC | |
81 | TH1D *fRFPPhiTPC; // Phi RFPTPC | |
82 | ||
83 | TObjArray *fCandidates; // Array of selected candidates | |
84 | ||
85 | ClassDef(AliAnalysisTaskFlowD2H, 5); | |
86 | }; | |
87 | ||
88 | #endif |