ROOT logo
////////////////////////////////////////////////////////////////////////////////
///                                                                          ///
/// AliFemtoCutMonitorParticlePtPDG - the cut monitor for particles to study  ///
/// the difference between reconstructed and true momentum    ///
///                                                                          ///
////////////////////////////////////////////////////////////////////////////////
#ifndef ALIFEMTOCUTMONITORPARTICLEPTPDG_H
#define ALIFEMTOCUTMONITORPARTICLEPTPDG_H

class AliFemtoEvent;
class AliFemtoTrack;
class AliFemtoV0;
class AliFemtoKink;
class AliFemtoPair; // Gael 12/04/02
class TH1D;
class TH2D;
class TList;
#include "AliFemtoString.h"
#include "AliFemtoParticleCollection.h"
#include "AliFemtoCutMonitor.h"

class AliFemtoCutMonitorParticlePtPDG : public AliFemtoCutMonitor{
  
public:
  AliFemtoCutMonitorParticlePtPDG();
  AliFemtoCutMonitorParticlePtPDG(const char *aName, float aMass);
  AliFemtoCutMonitorParticlePtPDG(const AliFemtoCutMonitorParticlePtPDG &aCut);
  virtual ~AliFemtoCutMonitorParticlePtPDG();

  AliFemtoCutMonitorParticlePtPDG& operator=(const AliFemtoCutMonitorParticlePtPDG& aCut);

  virtual AliFemtoString Report();
  virtual void Fill(const AliFemtoEvent* aEvent) {AliFemtoCutMonitor::Fill(aEvent);}
  virtual void Fill(const AliFemtoTrack* aTrack);
  virtual void Fill(const AliFemtoV0* aV0) {AliFemtoCutMonitor::Fill(aV0);}
  virtual void Fill(const AliFemtoKink* aKink) {AliFemtoCutMonitor::Fill(aKink);}
  virtual void Fill(const AliFemtoPair* aPair) {AliFemtoCutMonitor::Fill(aPair);}
  virtual void Fill(const AliFemtoParticleCollection* aCollection) {AliFemtoCutMonitor::Fill(aCollection);}
  virtual void Fill(const AliFemtoEvent* aEvent,const AliFemtoParticleCollection* aCollection)
  {AliFemtoCutMonitor::Fill(aEvent, aCollection);}
  virtual void Fill(const AliFemtoParticleCollection* aCollection1,const AliFemtoParticleCollection* aCollection2) {AliFemtoCutMonitor::Fill(aCollection1, aCollection2);}


  void Write();

  virtual TList *GetOutputList();

private:
  TH2D *fPtPDG;    // Rapidity vs. Pt monitor
  TH2D *ftpcHist;  // TPC histogram
  TH1D *fPtGoodPi; // Good pions
  TH1D *fPtFakePi; // Fake pions
  TH1D *fPtGoodK;  // Good kaons
  TH1D *fPtFakeK;  // Fake kaons
  TH1D *fPtGoodP;  // Good protons
  TH1D *fPtFakeP;  // Fake protons
  TH1D *fPtRPi;    // Pions pt 
  TH1D *fPtRK;     // Kaons pt
  TH1D *fPtRP;     // Protons pt
  
  TH1D *fPtContP;  // Contamination protons
  TH1D *fPtContPi; // Contamination pions
  TH1D *fPtContMup;// Contamination muons
  TH1D *fPtContElp;// Contamination electrons
  
  
  //TH2D *fYPhi;   // Rapidity cs. Phi monitor
  //TH2D *fPtPhi;  // Pt vs. Phi monitor
  //TH2D *fEtaPhi; // Pseudorapidity vs. Phi monitor
  //TH2D *fEtaPt;  // Pseudorapidity vs. Pt monitor
  float fMass;   // Mass hypothesis
};

#endif

 AliFemtoCutMonitorParticlePtPDG.h:1
 AliFemtoCutMonitorParticlePtPDG.h:2
 AliFemtoCutMonitorParticlePtPDG.h:3
 AliFemtoCutMonitorParticlePtPDG.h:4
 AliFemtoCutMonitorParticlePtPDG.h:5
 AliFemtoCutMonitorParticlePtPDG.h:6
 AliFemtoCutMonitorParticlePtPDG.h:7
 AliFemtoCutMonitorParticlePtPDG.h:8
 AliFemtoCutMonitorParticlePtPDG.h:9
 AliFemtoCutMonitorParticlePtPDG.h:10
 AliFemtoCutMonitorParticlePtPDG.h:11
 AliFemtoCutMonitorParticlePtPDG.h:12
 AliFemtoCutMonitorParticlePtPDG.h:13
 AliFemtoCutMonitorParticlePtPDG.h:14
 AliFemtoCutMonitorParticlePtPDG.h:15
 AliFemtoCutMonitorParticlePtPDG.h:16
 AliFemtoCutMonitorParticlePtPDG.h:17
 AliFemtoCutMonitorParticlePtPDG.h:18
 AliFemtoCutMonitorParticlePtPDG.h:19
 AliFemtoCutMonitorParticlePtPDG.h:20
 AliFemtoCutMonitorParticlePtPDG.h:21
 AliFemtoCutMonitorParticlePtPDG.h:22
 AliFemtoCutMonitorParticlePtPDG.h:23
 AliFemtoCutMonitorParticlePtPDG.h:24
 AliFemtoCutMonitorParticlePtPDG.h:25
 AliFemtoCutMonitorParticlePtPDG.h:26
 AliFemtoCutMonitorParticlePtPDG.h:27
 AliFemtoCutMonitorParticlePtPDG.h:28
 AliFemtoCutMonitorParticlePtPDG.h:29
 AliFemtoCutMonitorParticlePtPDG.h:30
 AliFemtoCutMonitorParticlePtPDG.h:31
 AliFemtoCutMonitorParticlePtPDG.h:32
 AliFemtoCutMonitorParticlePtPDG.h:33
 AliFemtoCutMonitorParticlePtPDG.h:34
 AliFemtoCutMonitorParticlePtPDG.h:35
 AliFemtoCutMonitorParticlePtPDG.h:36
 AliFemtoCutMonitorParticlePtPDG.h:37
 AliFemtoCutMonitorParticlePtPDG.h:38
 AliFemtoCutMonitorParticlePtPDG.h:39
 AliFemtoCutMonitorParticlePtPDG.h:40
 AliFemtoCutMonitorParticlePtPDG.h:41
 AliFemtoCutMonitorParticlePtPDG.h:42
 AliFemtoCutMonitorParticlePtPDG.h:43
 AliFemtoCutMonitorParticlePtPDG.h:44
 AliFemtoCutMonitorParticlePtPDG.h:45
 AliFemtoCutMonitorParticlePtPDG.h:46
 AliFemtoCutMonitorParticlePtPDG.h:47
 AliFemtoCutMonitorParticlePtPDG.h:48
 AliFemtoCutMonitorParticlePtPDG.h:49
 AliFemtoCutMonitorParticlePtPDG.h:50
 AliFemtoCutMonitorParticlePtPDG.h:51
 AliFemtoCutMonitorParticlePtPDG.h:52
 AliFemtoCutMonitorParticlePtPDG.h:53
 AliFemtoCutMonitorParticlePtPDG.h:54
 AliFemtoCutMonitorParticlePtPDG.h:55
 AliFemtoCutMonitorParticlePtPDG.h:56
 AliFemtoCutMonitorParticlePtPDG.h:57
 AliFemtoCutMonitorParticlePtPDG.h:58
 AliFemtoCutMonitorParticlePtPDG.h:59
 AliFemtoCutMonitorParticlePtPDG.h:60
 AliFemtoCutMonitorParticlePtPDG.h:61
 AliFemtoCutMonitorParticlePtPDG.h:62
 AliFemtoCutMonitorParticlePtPDG.h:63
 AliFemtoCutMonitorParticlePtPDG.h:64
 AliFemtoCutMonitorParticlePtPDG.h:65
 AliFemtoCutMonitorParticlePtPDG.h:66
 AliFemtoCutMonitorParticlePtPDG.h:67
 AliFemtoCutMonitorParticlePtPDG.h:68
 AliFemtoCutMonitorParticlePtPDG.h:69
 AliFemtoCutMonitorParticlePtPDG.h:70
 AliFemtoCutMonitorParticlePtPDG.h:71
 AliFemtoCutMonitorParticlePtPDG.h:72
 AliFemtoCutMonitorParticlePtPDG.h:73
 AliFemtoCutMonitorParticlePtPDG.h:74
 AliFemtoCutMonitorParticlePtPDG.h:75