ATLAS Offline Software
IProxyProviderSvc.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
11 // $Id: IProxyProviderSvc.h,v 1.9 2007-06-23 01:12:06 calaf Exp $
12 
13 #ifndef ATHENAKERNEL_IPROXYPROVIDERSVC_H
14 # define ATHENAKERNEL_IPROXYPROVIDERSVC_H
15 
16 #include <string>
17 #include <list>
18 #include "AthenaKernel/StoreID.h"
19 #include "GaudiKernel/IService.h"
20 #include "GaudiKernel/StatusCode.h"
21 #include "GaudiKernel/ClassID.h"
22 #include "GaudiKernel/EventContext.h"
23 
24 class IAddressProvider;
25 class IProxyRegistry; //this is the store
26 
27 namespace SG {
28  class DataProxy;
29  class TransientAddress;
30 }
31 
32 class IOpaqueAddress;
33 
34 class IProxyProviderSvc : virtual public IService {
35 public:
37 
39  virtual StatusCode preLoadProxies(IProxyRegistry& dataStore) = 0;
40 
42  virtual StatusCode loadProxies(IProxyRegistry& dataStore) = 0;
43 
47  virtual SG::DataProxy* retrieveProxy(const CLID& id,
48  const std::string& key,
49  IProxyRegistry& dataStore) = 0;
50 
53  virtual void addProvider(IAddressProvider* aProvider) = 0;
54 
55  virtual ~IProxyProviderSvc() {}
56 };
57 
58 
59 #endif // ATHENAKERNEL_IPROXYPROVIDERSVC_H
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
IProxyRegistry
a proxy registry (a read/write dictionary)
Definition: IProxyRegistry.h:27
IProxyProviderSvc::loadProxies
virtual StatusCode loadProxies(IProxyRegistry &dataStore)=0
add new proxies to store every Event:
IProxyProviderSvc::DeclareInterfaceID
DeclareInterfaceID(IProxyProviderSvc, 1, 0)
IProxyProviderSvc::addProvider
virtual void addProvider(IAddressProvider *aProvider)=0
IAddressProvider manager functionality add a provider to the set of known ones.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IAddressProvider
interface for IOA providers
Definition: IAddressProvider.h:28
DataProxy
DataProxy provides the registry services for StoreGate.
Definition: DataProxy.h:31
IProxyProviderSvc::preLoadProxies
virtual StatusCode preLoadProxies(IProxyRegistry &dataStore)=0
add proxies to the store before Begin Event:
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
StoreID.h
IProxyProviderSvc::retrieveProxy
virtual SG::DataProxy * retrieveProxy(const CLID &id, const std::string &key, IProxyRegistry &dataStore)=0
Use a provider to create a proxy for ID/KEY.
IProxyProviderSvc
Definition: IProxyProviderSvc.h:34
IProxyProviderSvc::~IProxyProviderSvc
virtual ~IProxyProviderSvc()
Definition: IProxyProviderSvc.h:55
SG::DataProxy
Definition: DataProxy.h:44
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37