]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/EBYE/NetParticle/AliAnalysisNetParticleDCA.h
Net Particle updates (Jochen Thaeder <jochen@thaeder.de>)
[u/mrichter/AliRoot.git] / PWGCF / EBYE / NetParticle / AliAnalysisNetParticleDCA.h
1 //-*- Mode: C++ -*-
2
3 #ifndef ALIANALYSISNETPARTICLEDCA_H
4 #define ALIANALYSISNETPARTICLEDCA_H
5
6 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7  * See cxx source for full Copyright notice                               */
8  
9 // Efficiency and Contaminations for NetParticle Distributions
10 // Authors: Jochen Thaeder <jochen@thaeder.de>
11
12 #include "THnSparse.h"
13
14 #include "AliAnalysisNetParticleHelper.h"
15
16 class AliESDEvent;
17 class AliESDInputHandler;
18 class AliMCEvent;
19 class AliStack;
20
21 class AliAnalysisNetParticleDCA : public TNamed {
22
23  public:
24
25   /*
26    * ---------------------------------------------------------------------------------
27    *                            Constructor / Destructor
28    * ---------------------------------------------------------------------------------
29    */
30
31   AliAnalysisNetParticleDCA();
32   virtual ~AliAnalysisNetParticleDCA();
33
34   /*
35    * ---------------------------------------------------------------------------------
36    *                                 Public Methods
37    * ---------------------------------------------------------------------------------
38    */
39
40   /** Initialize */
41   void Initialize(AliESDtrackCuts *cuts, AliESDtrackCuts *cutsBkg, AliAnalysisNetParticleHelper* helper);
42
43   /** Setup Event */
44   Int_t SetupEvent(AliESDInputHandler *esdHandler, AliMCEvent *mcEvent);
45
46   /** Reset Event */
47   void ResetEvent();
48
49   /** Process Event */
50   void Process();
51
52   /*
53    * ---------------------------------------------------------------------------------
54    *                                    Getter
55    * ---------------------------------------------------------------------------------
56    */
57
58   /** Get Ptr to DCA THnSparse */
59   THnSparseF* GetHnDCA() {return fHnDCA;}
60
61   ///////////////////////////////////////////////////////////////////////////////////
62
63  private:
64
65   AliAnalysisNetParticleDCA(const AliAnalysisNetParticleDCA&); // not implemented
66   AliAnalysisNetParticleDCA& operator=(const AliAnalysisNetParticleDCA&); // not implemented
67
68
69
70   /*
71    * ---------------------------------------------------------------------------------
72    *                                Methods - private
73    * ---------------------------------------------------------------------------------
74    */
75
76   /** Create the efficiency / contamination THnSparseF */
77   void CreateHistograms();
78
79   /** Fill DCA ThnSparse */
80   void FillDCA(); 
81
82   /** Check if particle is contamination */
83   Int_t CheckDCATrack(Int_t label);
84   //  void CheckDCATrack(Int_t label, Float_t sign, Int_t idxTrack);
85 #if 0      
86   /*
87    * ---------------------------------------------------------------------------------
88    *                             Members - private
89    * ---------------------------------------------------------------------------------
90    */
91 #endif
92   AliAnalysisNetParticleHelper *fHelper;      //! Ptr to helper class
93
94   // --- ESD only ----------------------------------------------------------
95
96   AliESDEvent        *fESD;                   //! ESD object
97   AliESDtrackCuts    *fESDTrackCuts;          //! ESD cuts  
98   AliESDtrackCuts    *fESDTrackCutsBkg;       //! ESD cuts  
99   
100   // --- MC only -----------------------------------------------------------
101
102   AliStack           *fStack;                 //! Ptr to stack
103   AliMCEvent         *fMCEvent;               //! Ptr to MC event
104
105   // -----------------------------------------------------------------------
106
107   THnSparseF         *fHnDCA;                 //  THnSparseF contamination DCA
108
109   // -----------------------------------------------------------------------
110
111   ClassDef(AliAnalysisNetParticleDCA, 1);
112 };
113
114 #endif