![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
28 std::cout <<
"addRef\n"; std::abort();
34 std::cout <<
"release\n"; std::abort();
40 std::cout <<
"queryInterface\n"; std::abort();
46 std::cout <<
"proxies\n"; std::abort();
52 return m_stringPool.keyToString (
key);
60 std::cout <<
"registerKey\n"; std::abort();
65 const std::string&
key,
70 const void* raw_ptr =
obj.get();
72 raw_ptr = bucket->object();
117 static const std::string
nm =
"TestStore";
125 return proxy (lock, pTransient);
132 tmap_t::const_iterator
i =
m_tmap.find (pTransient);
153 m_missedProxies.emplace_back (
id,
key);
171 return m_stringPool.stringToKey (
str, clid);
178 return m_stringPool.keyToString (
key, clid);
183 sgkey_t& sgkey_out,
size_t& index_out)
187 if (
i ==
m_remap.end())
return false;
188 sgkey_out =
i->second.key;
189 index_out =
i->second.index;
200 return StatusCode::SUCCESS;
222 CLID clid,
const std::string&
key)
228 if (
dp->clID() == CLID_NULL)
229 dp->setID (clid,
key);
246 size_t index_in,
size_t index_out)
255 const std::string& newKey)
273 auto store = std::make_unique<TestStore>();
JetConstituentVector::iterator iterator
virtual unsigned long release() override
virtual void boundHandle(IResetable *handle) override
Tell the store that a handle has been bound to a proxy.
SG::DataProxy * record1(lock_t &, const void *p, DataObject *obj, CLID clid, const std::string &key)
sgkey_t sgkey() const
< Get the primary (hashed) SG key.
std::string find(const std::string &s)
return a remapped string
A non-templated base class for DataBucket, allows to access the transient object address as a void*.
std::lock_guard< mutex_t > lock_t
static IProxyDict * setStore(IProxyDict *store)
Set the current store.
virtual SG::DataProxy * proxy_exact(SG::sgkey_t sgkey) const override
Get proxy given a hashed key+clid.
virtual bool tryELRemap(sgkey_t sgkey_in, size_t index_in, sgkey_t &sgkey_out, size_t &index_out) override
Test to see if the target of an ElementLink has moved.
virtual sgkey_t stringToKey(const std::string &str, CLID clid) override
Find the key for a string/CLID pair.
SG::sgkey_t sgkey_t
Type of the keys.
void remap(sgkey_t sgkey_in, sgkey_t sgkey_out, size_t index_in=0, size_t index_out=0)
void setStore(IProxyDict *store)
Set the store of which we're a part.
virtual StatusCode addToStore(CLID, SG::DataProxy *proxy) override
Add a new proxy to the store.
virtual SG::DataProxy * proxy(const void *const pTransient) const override
Get a proxy referencing a given transient object.
a resetable object (e.g. a SG DataHandle)
virtual unsigned long addRef() override
::StatusCode StatusCode
StatusCode definition for legacy code.
std::vector< IResetable * > m_boundHandles
virtual std::vector< const SG::DataProxy * > proxies() const override
Return the list of all current proxies in store.
virtual const std::string & name() const override
virtual void unboundHandle(IResetable *handle) override
Tell the store that a handle has been unbound from a proxy.
uint32_t CLID
The Class ID type.
CLID clID() const
Retrieve clid.
Dummy event store, for regression tests.
void initTestStore ATLAS_NOT_THREAD_SAFE()
virtual const std::string * keyToString(sgkey_t) const override
Find the string corresponding to a given key.
virtual unsigned long addRef() override final
Add reference to object.
virtual void registerKey(sgkey_t, const std::string &, CLID) override
Remember an additional mapping from key to string/CLID.
uint32_t sgkey_t
Type used for hashed StoreGate key+CLID pairs.
virtual const name_type & name() const override final
Retrieve data object key == string.
void setAlias(const std::string &key)
Add a new proxy alias.
void setTransientID(CLID id)
Add a new transient ID.
virtual StatusCode queryInterface(const InterfaceID &, void **) override
void setConst()
Mark this object as const.
std::unique_ptr< TestStore > getTestStore()
virtual SG::DataProxy * recordObject(SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting) override
Record an object in the store.
Smart pointer to manage DataObject reference counts.
void alias(SG::DataProxy *proxy, const std::string &newKey)