00001 #ifndef IMDCGEOMSVC_H_ 00002 #define IMDCGEOMSVC_H_ 00003 #include "GaudiKernel/IInterface.h" 00004 #include "GaudiKernel/Kernel.h" 00005 00006 // Declaration of the interface ID 00007 //static const InterfaceID IID_IMdcGeomSvc = 1059; 00008 static const InterfaceID IID_IMdcGeomSvc("IMdcGeomSvc",1,0); 00009 00010 class MdcGeoWire; 00011 class MdcGeoLayer; 00012 class MdcGeoSuper; 00013 class MdcGeoGeneral; 00014 00015 class IMdcGeomSvc : virtual public IInterface { 00016 public: 00017 static const InterfaceID& interfaceID() { return IID_IMdcGeomSvc; } 00018 virtual const MdcGeoWire * const Wire(unsigned id) = 0; 00019 virtual const MdcGeoWire * const Wire(unsigned lyrid, unsigned wirid) = 0; 00020 virtual const MdcGeoLayer * const Layer(unsigned id) = 0; 00021 virtual const MdcGeoSuper * const SuperLayer(unsigned id) = 0; 00022 virtual const MdcGeoGeneral * const GeneralLayer(unsigned id) = 0; 00023 00024 virtual const int getWireSize() = 0; 00025 virtual const int getLayerSize() = 0; 00026 virtual const int getSuperLayerSize() = 0; 00027 virtual const int getGeneralLayerSize() = 0; 00028 virtual void Dump() = 0; 00029 }; 00030 00031 #endif // IMDCGEOMSVC_H