|
ATLAS Offline Software
|
Go to the documentation of this file.
11 m_store( storeName,
Name ),
14 m_allowFallThrough( AllowFallThrough )
39 throw std::runtime_error(
"Unable to link parent view that cannot be cast to SG::View" );
85 auto inParentProxy =
parent->impl()->findProxy(
id,
key,
false );
86 if (
isValid( inParentProxy ) ) {
92 if ( (not
isValid( localProxy )) and allowFallThrough ) {
96 bool filterPass =
false;
100 if (
key.find(
entry ) != std::string::npos ) {
106 if ( !filterPass )
return nullptr;
123 return m_store->proxy( pTransient );
164 throw std::runtime_error(
"Not implemented: SimpleView::tryELRemap" );
165 return m_store->tryELRemap( sgkey_in, index_in, sgkey_out, index_out );
191 return m_store->boundHandle( handle );
201 return m_store->unboundHandle( handle );
216 throw std::runtime_error(
"Not implemented: SimpleView::keyToString" );
221 throw std::runtime_error(
"Not implemented: SimpleView::keyToString" );
240 std::string ret =
indent +
"Dump " +
name() +
"\n";
243 if (
dp->name().find(
name() ) == 0 )
244 ret +=
" " +
dp->name();
251 ret +=
p->dump(
indent +
" " );
259 ret +=
indent +
"May not access main store";
std::vector< std::string > m_fallFilter
virtual StatusCode addToStore(CLID id, SG::DataProxy *proxy)
Add a new proxy to the store.
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.
virtual IStringPool::sgkey_t stringToKey(const std::string &str, CLID clid)
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
virtual void unboundHandle(IResetable *handle)
Tell the store that a handle has been unbound from a proxy.
SG::sgkey_t sgkey_t
Type of the keys.
std::string dump(const std::string &indent="") const
virtual void boundHandle(IResetable *handle)
Tell the store that a handle has been bound to a proxy.
std::set< const SG::View * > m_parents
a resetable object (e.g. a SG DataHandle)
virtual std::vector< const SG::DataProxy * > proxies() const
Return the list of all current proxies in store.
virtual void registerKey(IStringPool::sgkey_t key, const std::string &str, CLID clid)
virtual SG::DataProxy * proxy(const CLID &id, const std::string &key) const
Get proxy with given id and key.
::StatusCode StatusCode
StatusCode definition for legacy code.
const ElementLink< TrigRoiDescriptorCollection > & getROI() const
uint32_t CLID
The Class ID type.
virtual SG::DataProxy * proxy_exact(SG::sgkey_t sgkey) const
Get proxy given a hashed key+clid.
std::string viewKey(const std::string &key) const
Construct a key as used in the parent store.
virtual SG::DataProxy * recordObject(SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting)
Record an object in the store.
virtual const std::string * keyToString(IStringPool::sgkey_t key) const
uint32_t sgkey_t
Type used for hashed StoreGate key+CLID pairs.
virtual const std::string & name() const
void setROI(const ElementLink< TrigRoiDescriptorCollection > &roi)
std::string transientKey(const std::string &key)
Make a key transient.
virtual void linkParent(const IProxyDict *parent)
links to the previously used views through these parent views additional data objects become availabl...
ElementLink< TrigRoiDescriptorCollection > m_roi
Smart pointer to manage DataObject reference counts.
ServiceHandle< StoreGateSvc > m_store
virtual SG::DataProxy * findProxy(const CLID &id, const std::string &key, const bool allowFallThrough) const