ATLAS Offline Software
|
Very simple pass-through implementation of IProxyDict. More...
#include <SimpleView.h>
Public Types | |
typedef SG::sgkey_t | sgkey_t |
Type of the keys. More... | |
Public Member Functions | |
DeclareInterfaceID (SimpleView, 2, 0) | |
SimpleView ()=delete | |
SimpleView (std::string const &Name, bool AllowFallThrough=true, std::string const &storeName="StoreGateSvc") | |
virtual | ~SimpleView () |
std::string | viewKey (const std::string &key) const |
Construct a key as used in the parent store. More... | |
virtual void | linkParent (const IProxyDict *parent) |
links to the previously used views through these parent views additional data objects become available More... | |
virtual const std::set< const SG::View * > & | getParentLinks () const |
returns the links to the previously used views More... | |
void | setFilter (std::vector< std::string > const &inputFilter) |
Set a filtering rule for anything loaded via fallthrough. More... | |
virtual SG::DataProxy * | deep_proxy (const void *const pTransient) const |
get proxy for a given data object address in memory, but performs a deep search among all possible 'symlinked' containers TEMPORARY: This method is going away. More... | |
virtual SG::DataProxy * | proxy_exact (SG::sgkey_t sgkey) const |
Get proxy given a hashed key+clid. More... | |
virtual SG::DataProxy * | proxy (const CLID &id, const std::string &key) const |
Get proxy with given id and key. More... | |
virtual SG::DataProxy * | findProxy (const CLID &id, const std::string &key, const bool allowFallThrough) const |
virtual SG::DataProxy * | proxy (const void *const pTransient) const |
Get a proxy referencing a given transient object. More... | |
virtual std::vector< const SG::DataProxy * > | proxies () const |
Return the list of all current proxies in store. More... | |
virtual StatusCode | addToStore (CLID id, SG::DataProxy *proxy) |
Add a new proxy to the store. More... | |
virtual SG::DataProxy * | recordObject (SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting) |
Record an object in the store. More... | |
virtual void | boundHandle (IResetable *handle) |
Tell the store that a handle has been bound to a proxy. More... | |
virtual void | unboundHandle (IResetable *handle) |
Tell the store that a handle has been unbound from a proxy. More... | |
virtual bool | tryELRemap (sgkey_t sgkey_in, size_t index_in, sgkey_t &sgkey_out, size_t &index_out) |
Test to see if the target of an ElementLink has moved. More... | |
virtual unsigned long | addRef () |
virtual unsigned long | release () |
virtual StatusCode | queryInterface (const InterfaceID &ti, void **pp) |
virtual const std::string & | name () const |
virtual IStringPool::sgkey_t | stringToKey (const std::string &str, CLID clid) |
Find the key for a string/CLID pair. More... | |
virtual const std::string * | keyToString (IStringPool::sgkey_t key) const |
Find the string corresponding to a given key. More... | |
virtual const std::string * | keyToString (IStringPool::sgkey_t key, CLID &clid) const |
Find the string and CLID corresponding to a given key. More... | |
virtual void | registerKey (IStringPool::sgkey_t key, const std::string &str, CLID clid) |
Remember an additional mapping from key to string/CLID. More... | |
std::string | dump (const std::string &indent="") const |
void | setROI (const ElementLink< TrigRoiDescriptorCollection > &roi) |
const ElementLink< TrigRoiDescriptorCollection > & | getROI () const |
DeclareInterfaceID (IProxyDict, 2, 0) | |
DeclareInterfaceID (INamedInterface, 2, 0) | |
virtual StatusCode | createObj (IConverter *cvt, IOpaqueAddress *addr, DataObject *&refpObject) |
Call converter to create an object, possibly with locking. More... | |
virtual IProxyDict * | hiveProxyDict () override |
Return the current event-slot-specific store. More... | |
virtual SG::SourceID | sourceID (const std::string &key="EventSelector") const |
Return the metadata source ID for the current event slot. More... | |
Protected Attributes | |
ServiceHandle< StoreGateSvc > | m_store |
ElementLink< TrigRoiDescriptorCollection > | m_roi |
std::string | m_name |
std::set< const SG::View * > | m_parents |
std::vector< std::string > | m_fallFilter |
bool | m_allowFallThrough |
Very simple pass-through implementation of IProxyDict.
Most of the methods are copypasta and don't do anything
Definition at line 34 of file SimpleView.h.
|
inherited |
Type of the keys.
Definition at line 34 of file IStringPool.h.
|
delete |
SimpleView::SimpleView | ( | std::string const & | Name, |
bool | AllowFallThrough = true , |
||
std::string const & | storeName = "StoreGateSvc" |
||
) |
Definition at line 10 of file SimpleView.cxx.
|
virtual |
Definition at line 18 of file SimpleView.cxx.
|
virtual |
Definition at line 204 of file SimpleView.cxx.
|
virtual |
Add a new proxy to the store.
id | CLID as which the proxy should be added. |
proxy | The proxy to add. |
Simple addition of a proxy to the store. The key is taken as the primary key of the proxy. Does not handle things like overwrite, history, symlinks, etc. Should return failure if there is already an entry for this clid/key.
Implements IProxyDict.
Definition at line 146 of file SimpleView.cxx.
|
virtual |
Tell the store that a handle has been bound to a proxy.
handle | The handle that was bound. The default implementation does nothing. |
Reimplemented from IProxyDict.
Definition at line 189 of file SimpleView.cxx.
|
virtualinherited |
Call converter to create an object, possibly with locking.
cvt | The converter to call. |
addr | Opaque address information for the object to create. |
refpObject | Reference to location of the pointer of the created object. |
This calls the createObj
method on cvt
to create the referenced transient object.
This will also lock the store, if that is required.
The default implementation just forwards the method call, with no locking.
Reimplemented in StoreGateSvc, and SGImplSvc.
Definition at line 70 of file IProxyDict.cxx.
|
inherited |
|
inherited |
SimpleView::DeclareInterfaceID | ( | SimpleView | , |
2 | , | ||
0 | |||
) |
|
inlinevirtual |
get proxy for a given data object address in memory, but performs a deep search among all possible 'symlinked' containers TEMPORARY: This method is going away.
Definition at line 72 of file SimpleView.h.
std::string SimpleView::dump | ( | const std::string & | indent = "" | ) | const |
Definition at line 252 of file SimpleView.cxx.
|
virtual |
const ElementLink< TrigRoiDescriptorCollection > & SimpleView::getROI | ( | ) | const |
Definition at line 248 of file SimpleView.cxx.
|
overridevirtualinherited |
Return the current event-slot-specific store.
The default version just returns this.
Implements IHiveStore.
Reimplemented in StoreGateSvc, and SGImplSvc.
Definition at line 83 of file IProxyDict.cxx.
|
virtual |
Find the string corresponding to a given key.
key | The key to look up. |
stringToKey()
or registerKey()
. Implements IStringPool.
Definition at line 229 of file SimpleView.cxx.
|
virtual |
Find the string and CLID corresponding to a given key.
key | The key to look up. |
clid[out] | The found CLID. |
stringToKey()
or registerKey()
. Implements IStringPool.
Definition at line 234 of file SimpleView.cxx.
|
virtual |
links to the previously used views through these parent views additional data objects become available
Reimplemented in DebugView.
Definition at line 33 of file SimpleView.cxx.
|
virtual |
Definition at line 219 of file SimpleView.cxx.
|
virtual |
Return the list of all current proxies in store.
Implements IProxyDict.
Definition at line 130 of file SimpleView.cxx.
|
virtual |
Get proxy with given id and key.
id | The CLID of the desired object. |
key | The key of the desired object. |
If the key is a null string, then it is a default key. Finding a proxy via the default key should succeed only if there is exactly one object with the given CLID
in the store. Finding a proxy via a default key is considered deprecated for the case of the event store.
Returns 0 to flag failure
Implements IProxyDict.
Reimplemented in DebugView.
Definition at line 70 of file SimpleView.cxx.
|
virtual |
Get a proxy referencing a given transient object.
pTransient | The object to find. |
Returns 0 to flag failure
Implements IProxyDict.
Reimplemented in DebugView.
Definition at line 121 of file SimpleView.cxx.
|
virtual |
Get proxy given a hashed key+clid.
sgkey | Hashed key to look up. |
Find an exact match; no handling of aliases, etc. Returns 0 to flag failure.
Implements IProxyDict.
Definition at line 51 of file SimpleView.cxx.
|
virtual |
Definition at line 214 of file SimpleView.cxx.
|
virtual |
Record an object in the store.
obj | The data object to store. |
key | The key as which it should be stored. |
allowMods | If false, the object will be recorded as const. |
Full-blown record. obj
should usually be something deriving from SG::DataBucket
.
Returns the proxy for the recorded object; nullptr on failure.
Implements IProxyDict.
Reimplemented in DebugView.
Definition at line 179 of file SimpleView.cxx.
|
virtual |
Remember an additional mapping from key to string/CLID.
key | The key to enter. |
str | The string to enter. |
clid | The CLID associated with the string. |
key
already corresponds to a different string.This registers an additional mapping from a key to a string; it can be found later through lookup()
on the string. Logs an error if key
already corresponds to a different string.
Implements IStringPool.
Definition at line 239 of file SimpleView.cxx.
|
virtual |
Definition at line 209 of file SimpleView.cxx.
|
inline |
Set a filtering rule for anything loaded via fallthrough.
Definition at line 64 of file SimpleView.h.
void SimpleView::setROI | ( | const ElementLink< TrigRoiDescriptorCollection > & | roi | ) |
Definition at line 244 of file SimpleView.cxx.
|
virtualinherited |
Return the metadata source ID for the current event slot.
key | SG key of the DataHeader to query. Returns an empty string if no source has been set. |
The default version always returns an empty string.
Reimplemented in StoreGateSvc, and SGImplSvc.
Definition at line 97 of file IProxyDict.cxx.
|
virtual |
Find the key for a string/CLID pair.
str | The string to look up. |
clid | The CLID associated with the string. |
Implements IStringPool.
Definition at line 225 of file SimpleView.cxx.
|
virtual |
Test to see if the target of an ElementLink has moved.
sgkey_in | Original hashed key of the EL. |
index_in | Original index of the EL. |
sgkey_out[out] | New hashed key for the EL. |
index_out[out] | New index for the EL. |
The default implementation here always returns false.
Reimplemented from IProxyDict.
Definition at line 162 of file SimpleView.cxx.
|
virtual |
Tell the store that a handle has been unbound from a proxy.
handle | The handle that was unbound. The default implementation does nothing. |
Reimplemented from IProxyDict.
Definition at line 199 of file SimpleView.cxx.
std::string SimpleView::viewKey | ( | const std::string & | key | ) | const |
Construct a key as used in the parent store.
key The key as used in the view.
Definition at line 27 of file SimpleView.cxx.
|
protected |
Definition at line 201 of file SimpleView.h.
|
protected |
Definition at line 200 of file SimpleView.h.
|
protected |
Definition at line 198 of file SimpleView.h.
Definition at line 199 of file SimpleView.h.
|
protected |
Definition at line 197 of file SimpleView.h.
|
protected |
Definition at line 194 of file SimpleView.h.