The Gaudi Framework
master (bdbe7744)
Toggle main menu visibility
Loading...
Searching...
No Matches
IRegistry.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 <
GaudiKernel/Kernel.h
>
14
#include <string>
15
16
class
DataObject
;
17
class
IOpaqueAddress
;
18
class
IDataProviderSvc
;
19
29
class
GAUDI_API
IRegistry
{
30
public
:
32
typedef
std::string
name_type
;
34
typedef
std::string
id_type
;
35
37
virtual
~IRegistry
() =
default
;
38
40
virtual
unsigned
long
addRef
() = 0;
41
43
virtual
unsigned
long
release
() = 0;
44
46
virtual
const
name_type
&
name
()
const
= 0;
47
49
virtual
const
id_type
&
identifier
()
const
= 0;
50
52
virtual
IDataProviderSvc
*
dataSvc
()
const
= 0;
53
55
virtual
DataObject
*
object
()
const
= 0;
56
58
virtual
IOpaqueAddress
*
address
()
const
= 0;
59
61
virtual
void
setAddress
(
IOpaqueAddress
* pAddress ) = 0;
62
};
Kernel.h
GAUDI_API
#define GAUDI_API
Definition
Kernel.h:49
DataObject
A DataObject is the base class of any identifiable object on any data store.
Definition
DataObject.h:37
IDataProviderSvc
Data provider interface definition.
Definition
IDataProviderSvc.h:48
IOpaqueAddress
Opaque address interface definition.
Definition
IOpaqueAddress.h:28
IRegistry
The IRegistry represents the entry door to the environment any data object residing in a transient da...
Definition
IRegistry.h:29
IRegistry::~IRegistry
virtual ~IRegistry()=default
destructor
IRegistry::name
virtual const name_type & name() const =0
Name of the directory (or key).
IRegistry::identifier
virtual const id_type & identifier() const =0
Full identifier (or key).
IRegistry::object
virtual DataObject * object() const =0
Retrieve object behind the link.
IRegistry::release
virtual unsigned long release()=0
release reference to object
IRegistry::name_type
std::string name_type
Name type.
Definition
IRegistry.h:32
IRegistry::id_type
std::string id_type
Identifier Key type.
Definition
IRegistry.h:34
IRegistry::address
virtual IOpaqueAddress * address() const =0
Retrieve opaque storage address.
IRegistry::setAddress
virtual void setAddress(IOpaqueAddress *pAddress)=0
Set/Update Opaque storage address.
IRegistry::dataSvc
virtual IDataProviderSvc * dataSvc() const =0
Retrieve pointer to Transient Store.
IRegistry::addRef
virtual unsigned long addRef()=0
Add reference to object.
GaudiKernel
include
GaudiKernel
IRegistry.h
Generated on
for The Gaudi Framework by
1.17.0