00001 #ifndef IEVENTTAGSVC_H 00002 #define IEVENTTAGSVC_H 00003 #ifndef GAUDIKERNEL_IINTERFACE_H 00004 #include "GaudiKernel/IInterface.h" 00005 #endif 00006 00007 #include <string> 00008 00009 #include "McTruth/McParticle.h" 00010 //#include "McTruth/MdcMcHit.h" 00011 #include "EventModel/Event.h" 00012 00013 //using namespace std; 00014 //<<<<<< CLASS DECLARATIONS >>>>>> 00015 class IEventTagSvc : virtual public IInterface { 00016 public: 00017 virtual int getDecayCode(Event::McParticle* part)=0; 00018 virtual unsigned long long int getChainCode(Event::McParticle* part)=0; 00019 virtual unsigned int getCharmDecayType(Event::McParticle* part)=0; 00020 virtual std::string pdg2name(long int pdg)=0; 00021 virtual long int name2pdg(std::string pname)=0; 00022 00023 static const InterfaceID& interfaceID(); 00024 virtual ~IEventTagSvc() {} 00025 }; 00026 inline const InterfaceID& IEventTagSvc::interfaceID() { 00027 static const InterfaceID _IID("IEventtagsvc", 1, 0); 00028 // static const InterfaceID _IID(7091, 1, 0); 00029 return _IID; 00030 } 00031 00032 #endif // BESKERNEL_IEVENTTAGSVC_H