5#ifndef STOREGATE_ACTIVESTORESVC_H
6#define STOREGATE_ACTIVESTORESVC_H
8#include "GaudiKernel/Service.h"
9#include "GaudiKernel/StatusCode.h"
33 using base_class::base_class;
65 virtual std::vector<const SG::DataProxy*>
proxies()
const override;
89 const std::string& key,
91 bool returnExisting)
override;
113 const std::string*
keyToString (sgkey_t key)
const override;
125 CLID& clid)
const override;
141 const std::string&
str,
uint32_t CLID
The Class ID type.
A service that caches a pointer to the currently active store.
virtual SG::DataProxy * proxy_exact(SG::sgkey_t sgkey) const override
Get proxy given a hashed key+clid.
virtual SG::DataProxy * recordObject(SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting) override
Record an object in the store.
Gaudi::Property< std::string > m_storeName
virtual SG::DataProxy * proxy(const void *const pTransient) const override
get proxy for a given data object address in memory
virtual std::vector< const SG::DataProxy * > proxies() const override
return the list of all current proxies in store
StatusCode addToStore(CLID id, SG::DataProxy *proxy) override
Raw addition of a proxy to the store.
void setStore(StoreGateSvc *s)
set the active store pointer: used by the event loop mgrs
virtual StatusCode initialize() override
Service initialization.
virtual void registerKey(sgkey_t key, const std::string &str, CLID clid) override
Remember an additional mapping from key to string/CLID.
virtual const std::string * keyToString(sgkey_t key) const override
Find the string corresponding to a given key.
StoreGateSvc * operator->() const
dereference operator to access the active store
StoreGateSvc * activeStore() const
returns pointer to the active store as StoreGateSvc
StoreGateSvc * activeStoreOOL() const
virtual sgkey_t stringToKey(const std::string &str, CLID clid) override
Find the key for a string/CLID pair.
virtual SG::DataProxy * proxy(const CLID &id, const std::string &key) const =0
Get proxy with given id and key.
The Athena Transient Store API.
static const std::string & storeName(const StoreID::type &s)
CxxUtils::RefCountedPtr< T > DataObjectSharedPtr
uint32_t sgkey_t
Type used for hashed StoreGate key+CLID pairs.