ATLAS Offline Software
Loading...
Searching...
No Matches
ByteStreamAddressProviderSvc.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef BYTESTREAMCNVSVCBASE_BYTESTREAMADDRESSPROVIDERSVC_H
6#define BYTESTREAMCNVSVCBASE_BYTESTREAMADDRESSPROVIDERSVC_H
7
10#include "GaudiKernel/ServiceHandle.h"
11
12#include <vector>
13#include <string>
14#include <map>
15#include <set>
16
17class IClassIDSvc;
18
22class ByteStreamAddressProviderSvc : public extends<AthService, IAddressProvider> {
23
24public:
25 ByteStreamAddressProviderSvc(const std::string& name, ISvcLocator* pSvcLocator);
26
27 // Service initialize
28 virtual StatusCode initialize() override;
29
30 // IAddressProvider interface.
31 // preload the address
32 virtual StatusCode preLoadAddresses(StoreID::type id, tadList& tlist) override;
33
35 virtual StatusCode updateAddress(StoreID::type id,
37 const EventContext& ctx) override;
38
39private:
40 // type and name of the objects to create the address for.
41 Gaudi::Property<std::vector<std::string>> m_typeNames{this, "TypeNames", {},
42 "Type and Name of objects to create the address for", "OrderedSet<std::string>"};
43
45
46 std::map<unsigned int, std::set<std::string>> m_clidKey;
47
48 Gaudi::Property<int> m_storeID{this, "StoreID", StoreID::EVENT_STORE, "Store ID"};
49};
50
51#endif
virtual StatusCode preLoadAddresses(StoreID::type id, tadList &tlist) override
Gaudi::Property< std::vector< std::string > > m_typeNames
virtual StatusCode updateAddress(StoreID::type id, SG::TransientAddress *tad, const EventContext &ctx) override
update an existing transient Address
virtual StatusCode initialize() override
ByteStreamAddressProviderSvc(const std::string &name, ISvcLocator *pSvcLocator)
Standard constructor.
ServiceHandle< IClassIDSvc > m_clidSvc
std::map< unsigned int, std::set< std::string > > m_clidKey
@ EVENT_STORE
Definition StoreID.h:26