]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/FEMTOSCOPY/AliFemtoUser/AliFemtoCutMonitorParticleEtCorr.h
Adding V0 femtoscopy analysis
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemtoUser / AliFemtoCutMonitorParticleEtCorr.h
1 ////////////////////////////////////////////////////////////////////////////////
2 //                                                                            //
3 // AliFemtoCutMonitorParticleEtCorr - the cut monitor for particles           //
4 // which saves particles' et histogram and makes the bin-by-bin correlation   //
5 //                                                                            //
6 // Author: Adam.Kisiel@cern.ch                                                //
7 //                                                                            //
8 ////////////////////////////////////////////////////////////////////////////////
9 #ifndef AliFemtoCutMonitorParticleEtCorr_hh
10 #define AliFemtoCutMonitorParticleEtCorr_hh
11
12 class AliFemtoEvent;
13 class AliFemtoTrack;
14 class AliFemtoV0;
15 class AliFemtoKink;
16 class AliFemtoPair; // Gael 12/04/02
17 class TH1D;
18 class TH2D;
19 class TList;
20 #include "AliFemtoString.h"
21 #include "AliFemtoParticleCollection.h"
22 #include "AliFemtoCutMonitor.h"
23
24 class AliFemtoCutMonitorParticleEtCorr : public AliFemtoCutMonitor{
25   
26 public:
27   AliFemtoCutMonitorParticleEtCorr();
28   AliFemtoCutMonitorParticleEtCorr(const char *aName, int aPhiBins);
29   AliFemtoCutMonitorParticleEtCorr(const AliFemtoCutMonitorParticleEtCorr &aCut);
30   virtual ~AliFemtoCutMonitorParticleEtCorr();
31
32   AliFemtoCutMonitorParticleEtCorr& operator=(const AliFemtoCutMonitorParticleEtCorr& aCut);
33
34   virtual void EventBegin(const AliFemtoEvent* aEvent);
35   virtual void EventEnd(const AliFemtoEvent* aEvent);
36
37   virtual AliFemtoString Report();
38   virtual void Fill(const AliFemtoEvent* aEvent) {AliFemtoCutMonitor::Fill(aEvent);}
39   virtual void Fill(const AliFemtoTrack* aTrack);
40   virtual void Fill(const AliFemtoV0* aV0) {AliFemtoCutMonitor::Fill(aV0);}
41   virtual void Fill(const AliFemtoKink* aKink) {AliFemtoCutMonitor::Fill(aKink);}
42   virtual void Fill(const AliFemtoPair* aPair) {AliFemtoCutMonitor::Fill(aPair);}
43   virtual void Fill(const AliFemtoParticleCollection* aCollection) {AliFemtoCutMonitor::Fill(aCollection);}
44   virtual void Fill(const AliFemtoEvent* aEvent,const AliFemtoParticleCollection* aCollection)
45   {AliFemtoCutMonitor::Fill(aEvent, aCollection);}
46   virtual void Fill(const AliFemtoParticleCollection* aCollection1,const AliFemtoParticleCollection* aCollection2) {AliFemtoCutMonitor::Fill(aCollection1, aCollection2);}
47
48   void Write();
49
50   virtual TList *GetOutputList();
51
52 private:
53   Double_t fPtSumEvent[200];      // A table where Pt sum per event is stored
54   Double_t fMultSumEvent[200];    // A table where mult sum per event is stored
55   Int_t    fPhiBins;              // Number of Phi bins
56   TH1D    *fPtPerPhi;             // Histogram storing per-bin sum pt
57   TH2D    *fPtCovPerPhi;          // Histogram storing per-bin covariance
58   TH2D    *fPtMultPerPhi;         // Histogram storing per-bin multiplicity
59   Int_t    fNEventsProcessed;     // Count processed events
60 };
61
62 #endif