ATLAS Offline Software
AthenaPoolAddressProviderSvc.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ATHENAPOOLADDRESSPROVIEDERSVC_H
6 #define ATHENAPOOLADDRESSPROVIEDERSVC_H
7 
13 #include "GaudiKernel/ServiceHandle.h"
14 #include "Gaudi/Property.h" // no forward decl: typedef
15 
19 
20 #include <map>
21 #include <string>
22 
23 class DataHeader;
24 class IClassIDSvc;
25 
30 public: // Constructor and Destructor
32  AthenaPoolAddressProviderSvc(const std::string& name, ISvcLocator* pSvcLocator);
35 
37  virtual StatusCode initialize();
39  virtual StatusCode finalize();
41  virtual StatusCode queryInterface(const InterfaceID& riid, void** ppvInterface);
42 
47 
52 
57  const EventContext& ctx);
58 
59 private: // data
63 
64 private: // properties
66  StringProperty m_dataHeaderKey;
67 
70  Gaudi::Property<std::string> m_attrListKey;
71 
72 private: // internal helper functions
74  StoreGateSvc* eventStore() const;
75 };
76 
77 #endif
SG::TransientAddress
Definition: TransientAddress.h:32
AthenaPoolAddressProviderSvc::m_guid
Guid m_guid
Definition: AthenaPoolAddressProviderSvc.h:62
AthenaPoolAddressProviderSvc::m_clidSvc
ServiceHandle< IClassIDSvc > m_clidSvc
Definition: AthenaPoolAddressProviderSvc.h:61
AthenaPoolAddressProviderSvc::updateAddress
virtual StatusCode updateAddress(StoreID::type storeID, SG::TransientAddress *tad, const EventContext &ctx)
Update a transient address.
Definition: AthenaPoolAddressProviderSvc.cxx:167
AthenaPoolAddressProviderSvc::m_metaDataStore
ServiceHandle< StoreGateSvc > m_metaDataStore
Definition: AthenaPoolAddressProviderSvc.h:60
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:128
AthenaPoolAddressProviderSvc::preLoadAddresses
virtual StatusCode preLoadAddresses(StoreID::type storeID, IAddressProvider::tadList &tads)
Get all addresses from provider.
Definition: AthenaPoolAddressProviderSvc.cxx:80
AthenaPoolAddressProviderSvc::initialize
virtual StatusCode initialize()
Required of all Gaudi Services.
Definition: AthenaPoolAddressProviderSvc.cxx:46
AthenaPoolAddressProviderSvc::m_dataHeaderKey
StringProperty m_dataHeaderKey
DataHeaderKey, StoreGate key of event entry object (type DataHeader).
Definition: AthenaPoolAddressProviderSvc.h:66
DataHeader
This class provides the layout for summary information stored for data written to POOL.
Definition: DataHeader.h:124
AthenaPoolAddressProviderSvc::finalize
virtual StatusCode finalize()
Required of all Gaudi Services.
Definition: AthenaPoolAddressProviderSvc.cxx:64
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthService
Definition: AthService.h:32
IAddressProvider
interface for IOA providers
Definition: IAddressProvider.h:28
AthenaPoolAddressProviderSvc::m_attrListKey
Gaudi::Property< std::string > m_attrListKey
Attribute list key of a secondary input file.
Definition: AthenaPoolAddressProviderSvc.h:70
AthenaPoolAddressProviderSvc::loadAddresses
virtual StatusCode loadAddresses(StoreID::type storeID, IAddressProvider::tadList &tads)
Get all addresses for this event from provider.
Definition: AthenaPoolAddressProviderSvc.cxx:112
AthenaPoolAddressProviderSvc::~AthenaPoolAddressProviderSvc
virtual ~AthenaPoolAddressProviderSvc()
Destructor.
Definition: AthenaPoolAddressProviderSvc.cxx:39
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
AthenaPoolAddressProviderSvc
This class is the EventSelector and AddressProvider for event data.
Definition: AthenaPoolAddressProviderSvc.h:29
AthenaPoolAddressProviderSvc::queryInterface
virtual StatusCode queryInterface(const InterfaceID &riid, void **ppvInterface)
Does this object satisfy a given interface? See Gaudi documentation for details.
Definition: AthenaPoolAddressProviderSvc.cxx:76
Guid
This class provides a encapsulation of a GUID/UUID/CLSID/IID data structure (128 bit number).
Definition: Guid.h:20
StoreID::type
type
Definition: StoreID.h:24
AthenaPoolAddressProviderSvc::AthenaPoolAddressProviderSvc
AthenaPoolAddressProviderSvc(const std::string &name, ISvcLocator *pSvcLocator)
Standard Service Constructor.
Definition: AthenaPoolAddressProviderSvc.cxx:30
IAddressProvider::tadList
std::list< SG::TransientAddress * > tadList
Definition: IAddressProvider.h:32
AthService.h
IAddressProvider.h
Guid.h
This file contains the class definition for the Guid class (migrated from POOL).
AthenaPoolAddressProviderSvc::eventStore
StoreGateSvc * eventStore() const
Return pointer to active event SG.
Definition: AthenaPoolAddressProviderSvc.cxx:42
ServiceHandle< StoreGateSvc >