Warning, file /include/GaudiKernel/IClassIDSvc.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #ifndef GAUDIKERNEL_ICLASSIDSVC_H
0012 #define GAUDIKERNEL_ICLASSIDSVC_H
0013
0014 #include <string>
0015
0016 #include <GaudiKernel/ClassID.h>
0017 #include <GaudiKernel/IService.h>
0018 #include <GaudiKernel/StatusCode.h>
0019
0020
0021
0022
0023
0024
0025 class IClassIDSvc : virtual public IService {
0026 public:
0027
0028 DeclareInterfaceID( IClassIDSvc, 1, 0 );
0029
0030
0031
0032 virtual CLID nextAvailableID() const = 0;
0033
0034 virtual bool isIDInUse( const CLID& id ) const = 0;
0035
0036 virtual bool isNameInUse( const std::string& name ) const = 0;
0037
0038 virtual StatusCode getTypeNameOfID( const CLID& id, std::string& typeName ) const = 0;
0039
0040 virtual StatusCode getTypeInfoNameOfID( const CLID& id, std::string& typeInfoName ) const = 0;
0041
0042 virtual StatusCode getIDOfTypeName( const std::string& typeName, CLID& id ) const = 0;
0043
0044 virtual StatusCode getIDOfTypeInfoName( const std::string& typeInfoName, CLID& id ) const = 0;
0045
0046 virtual StatusCode setTypeForID( const CLID&, const std::string& typeName, const std::string& typeInfoName = "" ) = 0;
0047 };
0048
0049 #endif