Update PR task: drathee
[u/mrichter/AliRoot.git] / PWGCF / EBYE / PIDFluctuation / task / AliEbyEPidRatioBase.h
1 #ifndef ALIEBYEPIDRATIOBASE_H
2 #define ALIEBYEPIDRATIOBASE_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6 //=========================================================================//
7 //             AliEbyE Analysis for Particle Ratio Fluctuation             //
8 //                   Deepika Rathee  | Satyajit Jena                       //
9 //                   drathee@cern.ch | sjena@cern.ch                       //
10 //                  Date: Wed Jul  9 18:38:30 CEST 2014                    //
11 //          New approch to find particle ratio to reduce memory            //
12 //                             (Test Only)                                 //
13 //=========================================================================//
14
15 #include "THnSparse.h"
16 #include "AliEbyEPidRatioHelper.h"
17
18 class AliESDEvent;
19 class AliESDInputHandler;
20 class AliMCEvent;
21 class AliStack;
22 class AliAODInputHandler;
23
24 class AliEbyEPidRatioBase : public TNamed {
25
26  public:
27
28   AliEbyEPidRatioBase();
29   AliEbyEPidRatioBase(const Char_t* name, const Char_t* title);
30   virtual ~AliEbyEPidRatioBase();
31
32   void Initialize(AliEbyEPidRatioHelper* helper, AliESDtrackCuts* cuts = NULL);
33   Int_t SetupEvent();
34   void ResetEvent();
35   virtual void Process() = 0;
36
37  private:
38
39   AliEbyEPidRatioBase(const AliEbyEPidRatioBase&); // not implemented
40   AliEbyEPidRatioBase& operator=(const AliEbyEPidRatioBase&); // not implemented
41
42  protected:
43   virtual void Init() {};
44   virtual void CreateHistograms() {};
45   virtual void Reset() {};
46   virtual Int_t Setup() { return 0;};
47   AliEbyEPidRatioHelper *fHelper;             //! Ptr to helper class
48   AliESDEvent        *fESD;                   //! ESD object
49   AliESDtrackCuts    *fESDTrackCuts;          //! ESD cuts  
50   AliAODEvent        *fAOD;                   //! AOD object
51   TClonesArray       *fArrayMC;               //! array of MC particles
52   Int_t               fAODtrackCutBit;        //  Track filter bit for AOD tracks
53   Bool_t              fIsMC;                  //  Is MC event
54   AliMCEvent         *fMCEvent;               //! Ptr to MC event
55   AliStack           *fStack;                 //! Ptr to stack
56   Float_t             fCentralityBin;         //  Centrality of current event  
57   Int_t               fNTracks;               //  N Tracks in the current event
58   Bool_t              fIsRatio;               //  Is MC event
59   Bool_t              fIsPtBin;               //  Is Pt Bin event
60
61   ClassDef(AliEbyEPidRatioBase, 1);
62 };
63
64 #endif