HiggsAnalysis/HiggsAnalysis-00-01-00/HiggsAnalysis/VertexCollectionSvc.h

00001 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00002 // 18.08.2007, AUTHOR: OLIVER KORTNER
00003 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00004 
00005 #ifndef MPIHiggsAnalysis_VertexCollectionSvcH
00006 #define MPIHiggsAnalysis_VertexCollectionSvcH
00007 
00008 //:::::::::::::::::::::::::::::::
00009 //:: CLASS VertexCollectionSvc ::
00010 //:::::::::::::::::::::::::::::::
00011 
00020 
00021 //::::::::::::::::::
00022 //:: HEADER FILES ::
00023 //::::::::::::::::::
00024 
00025 // STL //
00026 #include <vector>
00027 
00028 // Gaudi //
00029 #include "GaudiKernel/Service.h"
00030 
00031 // HiggsAnalysis //
00032 #include "HiggsAnalysis/Vertex.h"
00033 
00034 namespace MPIHiggsAnalysis {
00035 
00036 const InterfaceID IID_IVertexCollectionSvc("VertexCollectionSvc", 1, 0);
00037 
00038 class VertexCollectionSvc : public Service {
00039 
00040 public:
00041 // Constructor //
00042         VertexCollectionSvc(const std::string & name, ISvcLocator * svcloc);
00044 
00045 // Destructor //
00046         ~VertexCollectionSvc(void);
00048 
00049 // Methods //
00050 // methods required by the base class //
00051         static const InterfaceID& interfaceID();
00053         StatusCode queryInterface(const InterfaceID& riid, void** ppvUnknown);
00057         StatusCode initialize(void);
00059         StatusCode finalize(void);
00061 
00062 // methods specific to the VertexCollectionSvc class //
00063         void setVertices(const std::vector<Vertex> & vert);
00066         void sortVerticesAscendingInEt(void);
00068         const std::vector<Vertex> & getVertices(void) const;
00073 
00074 private:
00075 // data //
00076         std::vector<Vertex> m_vertices; // pointer to the vertices
00077 
00078 };
00079 
00080 }
00081 
00082 #endif

Generated on Tue Oct 21 11:50:42 2008 for NtupleAnalysis by  doxygen 1.5.1