]>
Commit | Line | Data |
---|---|---|
72c0a987 | 1 | //-*- Mode: C++ -*- |
2 | // $Id$ | |
3 | ||
4 | //* This file is property of and copyright by the ALICE Project * | |
5 | //* ALICE Experiment at CERN, All rights reserved. * | |
6 | //* See cxx source for full Copyright notice * | |
7 | ||
8 | /// @file AliAnalysisTaskDxHFEParticleSelection.h | |
9 | /// @author Sedat Altinpinar, Hege Erdal, Matthias Richter | |
10 | /// @date 2012-03-19 | |
11 | /// @brief AnalysisTask electron selection for D0 - HFE correlation | |
12 | /// | |
13 | ||
14 | #ifndef ALIANALYSISTASKDXHFEPARTICLESELECTION_H | |
15 | #define ALIANALYSISTASKDXHFEPARTICLESELECTION_H | |
16 | ||
17 | #include "AliAnalysisTaskSE.h" | |
18 | #include "TString.h" | |
9535cec9 | 19 | |
72c0a987 | 20 | class AliDxHFEParticleSelection; |
9535cec9 | 21 | class AliAnalysisCuts; |
22 | class TList; | |
72c0a987 | 23 | |
24 | /** | |
25 | * @class AliAnalysisTaskDxHFEParticleSelection | |
26 | * Selection task for particles uesd in the D0 - HFE correlation studies | |
27 | * Task performs the selection based on a configured AliDxHFEParticleSelection | |
28 | * instance. | |
29 | */ | |
30 | class AliAnalysisTaskDxHFEParticleSelection : public AliAnalysisTaskSE { | |
31 | public: | |
32 | /// constructor | |
33 | AliAnalysisTaskDxHFEParticleSelection(const char* opt=""); | |
34 | /// destructor | |
35 | virtual ~AliAnalysisTaskDxHFEParticleSelection(); | |
36 | ||
37 | /// inherited from AliAnalysisTask: connect tree branches at input slots | |
38 | virtual void ConnectInputData(Option_t *option="") { | |
39 | return AliAnalysisTaskSE::ConnectInputData(option); | |
40 | } | |
41 | ||
42 | /// inherited from AliAnalysisTaskSE: create output objects | |
43 | virtual void UserCreateOutputObjects(); | |
44 | /// inherited from AliAnalysisTaskSE: event processing | |
45 | virtual void UserExec(Option_t*); | |
46 | /// inherited from AliAnalysisTask: called in SlaveTerminate phase for each task | |
47 | virtual void FinishTaskOutput(); | |
48 | /// inherited from AliAnalysisTask: final step | |
49 | virtual void Terminate(Option_t*); | |
50 | ||
51 | void SetOption(const char* opt) { fOption = opt; } | |
d731501a | 52 | void SetFillOnlyD0D0bar(Int_t flagfill){fFillOnlyD0D0bar=flagfill;} |
9535cec9 | 53 | virtual void SetUseMC(Bool_t useMC){fUseMC=useMC;} |
54 | virtual void SetCuts(AliAnalysisCuts* cuts){fCuts=cuts;} | |
55 | Bool_t GetUseMC() const {return fUseMC;} | |
72c0a987 | 56 | |
57 | protected: | |
58 | ||
59 | private: | |
60 | /// copy constructor prohibited: might change | |
61 | AliAnalysisTaskDxHFEParticleSelection(const AliAnalysisTaskDxHFEParticleSelection&); | |
62 | /// assignment operator prohibited: might change | |
63 | AliAnalysisTaskDxHFEParticleSelection& operator=(const AliAnalysisTaskDxHFEParticleSelection&); | |
64 | ||
65 | int DefineSlots(); | |
66 | ||
9535cec9 | 67 | TList* fOutput; // list send on output slot 1 |
68 | TString fOption; // option string | |
69 | AliAnalysisCuts* fCuts; // Cuts | |
72c0a987 | 70 | AliDxHFEParticleSelection* fSelector; // selector instance |
9535cec9 | 71 | bool fUseMC; // use MC info |
d731501a | 72 | Int_t fFillOnlyD0D0bar; // flag to set what to fill (0 = both, 1 = D0 only, 2 = D0bar only) |
73 | ||
72c0a987 | 74 | |
9535cec9 | 75 | ClassDef(AliAnalysisTaskDxHFEParticleSelection, 2); |
72c0a987 | 76 | }; |
77 | ||
78 | #endif |