|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef XAODROOTACCESS_TOOLS_IPROXYDICT_H
6 #define XAODROOTACCESS_TOOLS_IPROXYDICT_H
27 using DataObjectSharedPtr = std::shared_ptr< T >;
34 struct InterfaceID {};
54 const std::string&
key )
const = 0;
63 virtual std::vector< const SG::DataProxy* >
proxies()
const = 0;
73 CLID& clid )
const = 0;
77 const std::string&
str,
83 const std::string&
key,
85 bool returnExisting ) = 0;
88 virtual const std::string&
name()
const = 0;
97 #endif // XAOD_STANDALONE
98 #endif // XAODROOTACCESS_TOOLS_IPROXYDICT_H
virtual SG::DataProxy * proxy(const CLID &id, const std::string &key) const =0
Get proxy with given id and key.
virtual sgkey_t stringToKey(const std::string &str, CLID clid)=0
Find the key for a string/CLID pair.
virtual StatusCode addToStore(CLID id, SG::DataProxy *proxy)=0
Add a new proxy to the store.
virtual void registerKey(sgkey_t key, const std::string &str, CLID clid)=0
Remember an additional mapping from key to string/CLID.
virtual SG::DataProxy * proxy_exact(SG::sgkey_t sgkey) const =0
Get proxy given a hashed key+clid.
virtual std::vector< const SG::DataProxy * > proxies() const =0
Return the list of all current proxies in store.
::StatusCode StatusCode
StatusCode definition for legacy code.
DataProxy provides the registry services for StoreGate.
uint32_t CLID
The Class ID type.
uint32_t sgkey_t
Type used for hashed StoreGate key+CLID pairs.
virtual ~IProxyDict() override
File providing the different SG_BASE macros.
Define the type used for hashed StoreGate key+CLID pairs.
virtual const std::string * keyToString(sgkey_t key) const =0
Find the string corresponding to a given key.
virtual SG::DataProxy * recordObject(SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting)=0
Record an object in the store.
Smart pointer to manage DataObject reference counts.