]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/FEMTOSCOPY/AliFemto/AliFemtoCutMonitorEventMult.h
Less bins in Mult monitors. New PID. Adapt to pPb analysis
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemto / AliFemtoCutMonitorEventMult.h
1 ////////////////////////////////////////////////////////////////////////////////
2 ///                                                                          ///
3 /// AliFemtoCutMonitorEventMult - the cut monitor for events to study        ///
4 /// the multiplicity distribution of events                                  ///
5 ///                                                                          ///
6 ////////////////////////////////////////////////////////////////////////////////
7 #ifndef AliFemtoCutMonitorEventMult_hh
8 #define AliFemtoCutMonitorEventMult_hh
9
10 class AliFemtoEvent;
11 class AliFemtoTrack;
12 class AliFemtoV0;
13 class AliFemtoKink;
14 class AliFemtoPair; 
15 class TH1D;
16 class TH2D;
17 class TList;
18 #include "AliFemtoString.h"
19 #include "AliFemtoParticleCollection.h"
20 #include "AliFemtoCutMonitor.h"
21
22 class AliFemtoCutMonitorEventMult : public AliFemtoCutMonitor{
23   
24  public:
25   AliFemtoCutMonitorEventMult();
26   AliFemtoCutMonitorEventMult(const char *aName, int nBins=5000);
27   AliFemtoCutMonitorEventMult(const AliFemtoCutMonitorEventMult &aCut);
28   virtual ~AliFemtoCutMonitorEventMult();
29
30   AliFemtoCutMonitorEventMult& operator=(const AliFemtoCutMonitorEventMult& aCut);
31
32   virtual AliFemtoString Report();
33   virtual void Fill(const AliFemtoEvent* aEvent);
34   virtual void Fill(const AliFemtoTrack* aTrack) {AliFemtoCutMonitor::Fill(aTrack);}
35   virtual void Fill(const AliFemtoV0* aV0) {AliFemtoCutMonitor::Fill(aV0);}
36   virtual void Fill(const AliFemtoKink* aKink) {AliFemtoCutMonitor::Fill(aKink);}
37   virtual void Fill(const AliFemtoPair* aPair) {AliFemtoCutMonitor::Fill(aPair);}
38   virtual void Fill(const AliFemtoParticleCollection* aCollection) {AliFemtoCutMonitor::Fill(aCollection);}
39   virtual void Fill(const AliFemtoEvent* aEvent,const AliFemtoParticleCollection* aCollection) {AliFemtoCutMonitor::Fill(aEvent, aCollection);}
40   virtual void Fill(const AliFemtoParticleCollection* aCollection1,const AliFemtoParticleCollection* aCollection2) {AliFemtoCutMonitor::Fill(aCollection1, aCollection2);}
41
42   void SetReadMC(Bool_t mc);
43   void AdditionalMultHistsOn(Bool_t addhists);
44   void Write();
45
46   virtual TList *GetOutputList();
47
48  private:
49   TH1D *fEvMult;     // Multiplicity distribution
50   TH1D *fNormEvMult; // Normalized event multiplicity distribution
51   TH1D *fSPDMult;    // SPD tracklet multiplicity
52   TH2D *fMultSumPt;  // Event total pT vs. multiplicity
53
54   Bool_t freadMC;     // If true - add only one histogram to the output
55   Bool_t faddhists;   // If true - add only additional multiplicity histograms
56   
57   TH1D *fEstimateITSTPC;     // Multiplicity estimate ITS+TPC
58   TH1D *fEstimateTracklets;  // Multiplicity estimate Tracklets
59   TH1D *fEstimateITSPure;    // Multiplicity estimate ITS Pure
60
61   TH2D *fEst1Est2;           // ITS+TPC vs Tracklets
62   TH2D *fEst1Est3;           // ITS+TPC vs ITS Pure
63   TH2D *fEst2Est3;           // Tracklets vs ITS Pure
64   TH2D *fEst1Norm;           // ITS+TPC vs Normalized
65   TH2D *fEst2Norm;           // Tracklets vs Normalized
66   TH2D *fEst3Norm;           // ITS Pure vs Normalized
67
68   TH1D *fPsiVZERO;    // psi from vzero
69
70 };
71
72 #endif