00001
00002
00003
00004
00005 #ifndef MPIHiggsAnalysis_VertexH
00006 #define MPIHiggsAnalysis_VertexH
00007
00008
00009
00010
00011
00021
00022
00023
00024
00025
00026
00027 #include "CLHEP/Vector/ThreeVector.h"
00028
00029 namespace MPIHiggsAnalysis {
00030
00031 class Vertex {
00032
00033 public:
00034
00035 Vertex(void);
00037
00038 Vertex(const Hep3Vector & pos, const Hep3Vector & pos_err,
00039 const double & chisqu, const unsigned int & ndof,
00040 const double & E_T, const unsigned int & nb_tracks);
00049
00050
00051 const Hep3Vector & position(void) const;
00053 const Hep3Vector & positionError(void) const;
00056 double chi2(void) const;
00058 unsigned int numberOfDegreesOfFreedom(void) const;
00061 double Et(void) const;
00065 void setEt(const double & Et);
00067
00068 unsigned int numberOfTracks(void) const;
00071 void setNumberOfTracks(const unsigned int & nb);
00073
00074
00075 bool operator < (const Vertex & vertex) const;
00078 bool operator > (const Vertex & vertex) const;
00081 bool operator <= (const Vertex & vertex) const;
00084 bool operator >= (const Vertex & vertex) const;
00087
00088 private:
00089 Hep3Vector m_pos;
00090 Hep3Vector m_pos_err;
00091 double m_chi2;
00092 unsigned int m_ndof;
00093 double m_Et;
00094
00095 unsigned int m_nb_tracks;
00096
00097 };
00098
00099 }
00100
00101 #endif