00001
00002
00003
00004
00005 #ifndef MPIHiggsAnalysis_VertexCollectionSvcH
00006 #define MPIHiggsAnalysis_VertexCollectionSvcH
00007
00008
00009
00010
00011
00020
00021
00022
00023
00024
00025
00026 #include <vector>
00027
00028
00029 #include "GaudiKernel/Service.h"
00030
00031
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
00042 VertexCollectionSvc(const std::string & name, ISvcLocator * svcloc);
00044
00045
00046 ~VertexCollectionSvc(void);
00048
00049
00050
00051 static const InterfaceID& interfaceID();
00053 StatusCode queryInterface(const InterfaceID& riid, void** ppvUnknown);
00057 StatusCode initialize(void);
00059 StatusCode finalize(void);
00061
00062
00063 void setVertices(const std::vector<Vertex> & vert);
00066 void sortVerticesAscendingInEt(void);
00068 const std::vector<Vertex> & getVertices(void) const;
00073
00074 private:
00075
00076 std::vector<Vertex> m_vertices;
00077
00078 };
00079
00080 }
00081
00082 #endif