]>
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 AliDxHFEParticleSelectionD0.h | |
9 | /// @author Sedat Altinpinar, Hege Erdal, Matthias Richter | |
10 | /// @date 2012-03-19 | |
11 | /// @brief D0 selection for D-HFE correlations | |
12 | /// | |
13 | ||
14 | #ifndef ALIDXHFEPARTICLESELECTIOND0_H | |
15 | #define ALIDXHFEPARTICLESELECTIOND0_H | |
16 | ||
17 | #include "AliDxHFEParticleSelection.h" | |
18 | ||
9535cec9 | 19 | class AliVEvent; |
20 | class AliRDHFCuts; | |
21 | ||
72c0a987 | 22 | /** |
23 | * @class AliDxHFEParticleSelectionD0 | |
24 | * D0 selection for D-HFE correlations, implements the specific | |
25 | * selection criteria. | |
26 | */ | |
27 | class AliDxHFEParticleSelectionD0 : public AliDxHFEParticleSelection { | |
28 | public: | |
29 | /// constructor | |
30 | AliDxHFEParticleSelectionD0(const char* opt=""); | |
31 | /// destructor | |
32 | virtual ~AliDxHFEParticleSelectionD0(); | |
33 | ||
93fcaf9f | 34 | /// overloaded from AliDxHFEParticleSelection: init the control objects |
35 | virtual int InitControlObjects(); | |
36 | ||
9535cec9 | 37 | //Function for daughter control objects |
38 | //TODO: move to AliDxHFEParticleSelection to be used for several particles? | |
39 | virtual int InitControlObjectsDaughters(TString name, int daughter); | |
40 | ||
41 | //Overloaded from AliDxHFEParticleSelection | |
42 | virtual TObjArray* Select(TObjArray* particles, const AliVEvent* pEvent); | |
43 | using AliDxHFEParticleSelection::Select; | |
44 | ||
72c0a987 | 45 | /// overloaded from AliDxHFEParticleSelection: check particle |
9535cec9 | 46 | virtual int IsSelected(AliVParticle* p, const AliVEvent *pEvent=NULL); |
47 | /// overloaded from AliDxHFEParticleSelection: set cuts | |
48 | virtual void SetCuts(TObject* /*cuts*/, int level=0); | |
49 | ||
50 | //AliRDHFCutsD0toKpi GetCuts()const {return fCuts;} | |
51 | Int_t GetFillOnlyD0D0bar() const {return fFillOnlyD0D0bar;} | |
72c0a987 | 52 | |
53 | protected: | |
93fcaf9f | 54 | /// overloaded from AliDxHFEParticleSelection: histogram particle properties |
9535cec9 | 55 | virtual int HistogramParticleProperties(AliVParticle* p, int selected=1); |
72c0a987 | 56 | |
57 | private: | |
58 | /// copy contructor prohibited | |
59 | AliDxHFEParticleSelectionD0(const AliDxHFEParticleSelectionD0&); | |
60 | /// assignment operator prohibited | |
61 | AliDxHFEParticleSelectionD0& operator=(const AliDxHFEParticleSelectionD0&); | |
62 | ||
9535cec9 | 63 | THnSparse* fD0Properties; // the particle properties of selected particles |
64 | THnSparse* fD0Daughter0; // the particle properties of selected particles | |
65 | THnSparse* fD0Daughter1; // the particle properties of selected particles | |
66 | AliRDHFCuts* fCuts; //! pointer to external cuts object | |
67 | Int_t fFillOnlyD0D0bar; // flag to set what to fill (0 = both, 1 = D0 only, 2 = D0bar only) | |
68 | ||
93fcaf9f | 69 | // TODO: at the moment the dimensions of the different THnSparse objects are different |
70 | // needs to be consolidated | |
71 | // TODO: one might need particle properties of all and/or at different cut stages | |
72 | ||
9535cec9 | 73 | ClassDef(AliDxHFEParticleSelectionD0, 2); |
72c0a987 | 74 | }; |
75 | ||
76 | #endif |