ROOT logo
////////////////////////////////////////////////////////////////////////////////
///                                                                          ///
/// AliFemtoCutMonitorEventVertex - the cut monitor for events to study      ///
/// the distribution and error of the primary vertex                         ///
///                                                                          ///
////////////////////////////////////////////////////////////////////////////////
#ifndef AliFemtoCutMonitorEventVertex_hh
#define AliFemtoCutMonitorEventVertex_hh

class AliFemtoEvent;
class AliFemtoTrack;
class AliFemtoV0;
class AliFemtoKink;
class AliFemtoPair; 
class TH1D;
class TH2D;
class TList;
#include "AliFemtoString.h"
#include "AliFemtoParticleCollection.h"
#include "AliFemtoCutMonitor.h"

class AliFemtoCutMonitorEventVertex : public AliFemtoCutMonitor{
  
public:
  AliFemtoCutMonitorEventVertex();
  AliFemtoCutMonitorEventVertex(const char *aName);
  AliFemtoCutMonitorEventVertex(const AliFemtoCutMonitorEventVertex &aCut);
  virtual ~AliFemtoCutMonitorEventVertex();

  AliFemtoCutMonitorEventVertex& operator=(const AliFemtoCutMonitorEventVertex& aCut);

  virtual AliFemtoString Report();
  virtual void Fill(const AliFemtoEvent* aEvent);
  virtual void Fill(const AliFemtoTrack* aTrack) {AliFemtoCutMonitor::Fill(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:
  TH1D *fEvVertRad;     // Vertex position in radial direction
  TH2D *fEvVertXY;      // Vertex position in XY plane
  TH1D *fEvVertSigXY;   // Sigma in XY plane
  TH1D *fEvVertZ;       // Vertex position in Z direction
  TH1D *fEvVertSigZ;    // Sigma in Z direction
};

#endif
 AliFemtoCutMonitorEventVertex.h:1
 AliFemtoCutMonitorEventVertex.h:2
 AliFemtoCutMonitorEventVertex.h:3
 AliFemtoCutMonitorEventVertex.h:4
 AliFemtoCutMonitorEventVertex.h:5
 AliFemtoCutMonitorEventVertex.h:6
 AliFemtoCutMonitorEventVertex.h:7
 AliFemtoCutMonitorEventVertex.h:8
 AliFemtoCutMonitorEventVertex.h:9
 AliFemtoCutMonitorEventVertex.h:10
 AliFemtoCutMonitorEventVertex.h:11
 AliFemtoCutMonitorEventVertex.h:12
 AliFemtoCutMonitorEventVertex.h:13
 AliFemtoCutMonitorEventVertex.h:14
 AliFemtoCutMonitorEventVertex.h:15
 AliFemtoCutMonitorEventVertex.h:16
 AliFemtoCutMonitorEventVertex.h:17
 AliFemtoCutMonitorEventVertex.h:18
 AliFemtoCutMonitorEventVertex.h:19
 AliFemtoCutMonitorEventVertex.h:20
 AliFemtoCutMonitorEventVertex.h:21
 AliFemtoCutMonitorEventVertex.h:22
 AliFemtoCutMonitorEventVertex.h:23
 AliFemtoCutMonitorEventVertex.h:24
 AliFemtoCutMonitorEventVertex.h:25
 AliFemtoCutMonitorEventVertex.h:26
 AliFemtoCutMonitorEventVertex.h:27
 AliFemtoCutMonitorEventVertex.h:28
 AliFemtoCutMonitorEventVertex.h:29
 AliFemtoCutMonitorEventVertex.h:30
 AliFemtoCutMonitorEventVertex.h:31
 AliFemtoCutMonitorEventVertex.h:32
 AliFemtoCutMonitorEventVertex.h:33
 AliFemtoCutMonitorEventVertex.h:34
 AliFemtoCutMonitorEventVertex.h:35
 AliFemtoCutMonitorEventVertex.h:36
 AliFemtoCutMonitorEventVertex.h:37
 AliFemtoCutMonitorEventVertex.h:38
 AliFemtoCutMonitorEventVertex.h:39
 AliFemtoCutMonitorEventVertex.h:40
 AliFemtoCutMonitorEventVertex.h:41
 AliFemtoCutMonitorEventVertex.h:42
 AliFemtoCutMonitorEventVertex.h:43
 AliFemtoCutMonitorEventVertex.h:44
 AliFemtoCutMonitorEventVertex.h:45
 AliFemtoCutMonitorEventVertex.h:46
 AliFemtoCutMonitorEventVertex.h:47
 AliFemtoCutMonitorEventVertex.h:48
 AliFemtoCutMonitorEventVertex.h:49
 AliFemtoCutMonitorEventVertex.h:50
 AliFemtoCutMonitorEventVertex.h:51
 AliFemtoCutMonitorEventVertex.h:52
 AliFemtoCutMonitorEventVertex.h:53
 AliFemtoCutMonitorEventVertex.h:54
 AliFemtoCutMonitorEventVertex.h:55