ATLAS Offline Software
IProxyRegistry.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
12 #ifndef ATHENAKERNEL_IPROXYREGISTRY_H
13 # define ATHENAKERNEL_IPROXYREGISTRY_H
14 
15 //<<<<<< INCLUDES >>>>>>
16 #include "GaudiKernel/StatusCode.h"
17 #include "GaudiKernel/ClassID.h"
18 #include "AthenaKernel/StoreID.h"
19 #include <string>
20 
21 //<<<<<< CLASS FORWARD DECLARATIONS >>>>>>
22 namespace SG {
23  class DataProxy;
24  class TransientAddress;
25 }
26 
28 public:
30  virtual StatusCode addToStore(const CLID& id, SG::DataProxy* proxy) = 0;
31 
32  virtual StatusCode addAlias(const std::string& key, SG::DataProxy* proxy) = 0;
33 
34  virtual StoreID::type storeID() const = 0; //FIXME this should not be here
35 
37  virtual SG::DataProxy* proxy(const SG::TransientAddress* tAD) const = 0;
38 
40  virtual SG::DataProxy* proxy(const CLID& id, const std::string& key) const=0;
41 
44  virtual SG::DataProxy* proxy_exact(const CLID& id,
45  const std::string& key) const = 0;
46 
47  virtual ~IProxyRegistry() {}
48 };
49 #endif // ATHENAKERNEL_IPROXYREGISTRY_H
50 
51 
52 
53 
54 
55 
56 
57 
58 
59 
IProxyRegistry::proxy_exact
virtual SG::DataProxy * proxy_exact(const CLID &id, const std::string &key) const =0
get proxy with given id.
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
IProxyRegistry
a proxy registry (a read/write dictionary)
Definition: IProxyRegistry.h:27
IProxyRegistry::storeID
virtual StoreID::type storeID() const =0
SG::TransientAddress
Definition: TransientAddress.h:32
IProxyRegistry::proxy
virtual SG::DataProxy * proxy(const SG::TransientAddress *tAD) const =0
locate a proxy for a given TransientAddress
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
DataProxy
DataProxy provides the registry services for StoreGate.
Definition: DataProxy.h:31
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
StoreID.h
IProxyRegistry::~IProxyRegistry
virtual ~IProxyRegistry()
Definition: IProxyRegistry.h:47
StoreID::type
type
Definition: StoreID.h:24
IProxyRegistry::proxy
virtual SG::DataProxy * proxy(const CLID &id, const std::string &key) const =0
get proxy with given id. Returns 0 to flag failure
SG::DataProxy
Definition: DataProxy.h:44
IProxyRegistry::addToStore
virtual StatusCode addToStore(const CLID &id, SG::DataProxy *proxy)=0
add proxy to store.
IProxyRegistry::addAlias
virtual StatusCode addAlias(const std::string &key, SG::DataProxy *proxy)=0
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37