The Gaudi Framework  master (82fdf313)
Loading...
Searching...
No Matches
IClassIDSvc.h
Go to the documentation of this file.
1/***********************************************************************************\
2* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3* *
4* This software is distributed under the terms of the Apache version 2 licence, *
5* copied verbatim in the file "LICENSE". *
6* *
7* In applying this licence, CERN does not waive the privileges and immunities *
8* granted to it by virtue of its status as an Intergovernmental Organization *
9* or submit itself to any jurisdiction. *
10\***********************************************************************************/
11#pragma once
12
13#include <string>
14
15#include <GaudiKernel/ClassID.h>
18
23
24class IClassIDSvc : virtual public IService {
25public:
28
31 virtual CLID nextAvailableID() const = 0;
33 virtual bool isIDInUse( const CLID& id ) const = 0;
35 virtual bool isNameInUse( const std::string& name ) const = 0;
37 virtual StatusCode getTypeNameOfID( const CLID& id, std::string& typeName ) const = 0;
39 virtual StatusCode getTypeInfoNameOfID( const CLID& id, std::string& typeInfoName ) const = 0;
41 virtual StatusCode getIDOfTypeName( const std::string& typeName, CLID& id ) const = 0;
43 virtual StatusCode getIDOfTypeInfoName( const std::string& typeInfoName, CLID& id ) const = 0;
45 virtual StatusCode setTypeForID( const CLID&, const std::string& typeName, const std::string& typeInfoName = "" ) = 0;
46};
unsigned int CLID
Class ID definition.
Definition ClassID.h:16
interface to the CLID database
Definition IClassIDSvc.h:24
virtual StatusCode getTypeNameOfID(const CLID &id, std::string &typeName) const =0
get user assigned type name associated with clID
DeclareInterfaceID(IClassIDSvc, 1, 0)
InterfaceID.
virtual StatusCode getTypeInfoNameOfID(const CLID &id, std::string &typeInfoName) const =0
get user assigned type-info name associated with clID
virtual bool isNameInUse(const std::string &name) const =0
check if name is used
virtual StatusCode getIDOfTypeInfoName(const std::string &typeInfoName, CLID &id) const =0
get id associated with type-info name (if any)
virtual StatusCode setTypeForID(const CLID &, const std::string &typeName, const std::string &typeInfoName="")=0
associate type name and type-info name with clID
virtual bool isIDInUse(const CLID &id) const =0
check if id is used
virtual StatusCode getIDOfTypeName(const std::string &typeName, CLID &id) const =0
get id associated with type name (if any)
virtual CLID nextAvailableID() const =0
get next available CLID
General service interface definition.
Definition IService.h:26
This class is used for returning status codes from appropriate routines.
Definition StatusCode.h:64