|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
    5 #ifndef ATHVIEWS_VIEW_H 
    6 #define ATHVIEWS_VIEW_H 
    8 #include "GaudiKernel/ServiceHandle.h" 
   13 #include "AthLinks/ElementLink.h" 
   55     View( 
const std::string& 
name, 
int index, 
bool allowFallThrough = 
true,
 
   56           const std::string& storeName = 
"StoreGateSvc" );
 
   86     void setFilter( std::vector< std::string > 
const& inputFilter ) {
 
  107     std::string 
dump( 
const std::string& 
indent = 
"" ) 
const;
 
  117     virtual const std::string& 
name()
 const override {
 
  152       return m_store->proxy( pTransient );
 
  158     virtual std::vector<const SG::DataProxy*> 
proxies()
 const override {
 
  188                                           const std::string& 
key,
 
  190                                           bool returnExisting) 
override;
 
  197       return m_store->boundHandle( handle );
 
  205       return m_store->unboundHandle( handle );
 
  219                               sgkey_t& sgkey_out, 
size_t& index_out) 
override;
 
  
std::set< const SG::View * > m_parents
View & operator=(const View &)=delete
virtual StatusCode addToStore(CLID id, SG::DataProxy *proxy) override
Add a new proxy to the store.
View(const View &)=delete
virtual SG::DataProxy * proxy(const void *const pTransient) const override
Get a proxy referencing a given transient object.
DataVector< SG::View > ViewContainer
View container for recording in StoreGate.
virtual SG::DataProxy * recordObject(SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting) override
Record an object in the store.
const ElementLink< TrigRoiDescriptorCollection > & getROI() const
Return associated RoI.
Simple smart pointer for Gaudi-style refcounted objects.
SG::sgkey_t sgkey_t
Type of the keys.
void linkParent(const IProxyDict *parent)
Link to the previously used views.
a resetable object (e.g. a SG DataHandle)
ElementLink< TrigRoiDescriptorCollection > m_roi
virtual void registerKey(IStringPool::sgkey_t key, const std::string &str, CLID clid) override
Remember an additional mapping from key to string/CLID.
size_t viewID() const
Return view index.
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual const std::string & name() const override
Name of the view.
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.
DataProxy provides the registry services for StoreGate.
virtual const std::string * keyToString(IStringPool::sgkey_t key) const override
Find the string and CLID corresponding to a given key.
void setFilter(std::vector< std::string > const &inputFilter)
Set a filtering rule for anything loaded via fall-through.
virtual void unboundHandle(IResetable *handle) override
Tell the store that a handle has been unbound from a proxy.
CxxUtils::ConcurrentMap< sgkey_t, T, CxxUtils::SimpleUpdater, SGKeyHash, SGKeyEqual, 0, s_sgkey_nullval > ConcurrentSGKeyMap
A concurrent map using sgkey_t as key.
uint32_t CLID
The Class ID type.
Additional utilities and types related to sgkey_t.
virtual SG::DataProxy * proxy(const CLID &id, const std::string &key) const override
Get proxy with given id and key.
virtual SG::DataProxy * proxy_exact(SG::sgkey_t sgkey) const override
Get proxy given a hashed key+clid.
virtual void boundHandle(IResetable *handle) override
Tell the store that a handle has been bound to a proxy.
std::string dump(const std::string &indent="") const
Print content of the view.
const std::set< const SG::View * > & getParentLinks() const
Returns the links to the previously used views.
uint32_t sgkey_t
Type used for hashed StoreGate key+CLID pairs.
An STL vector of pointers that by default owns its pointed-to elements.
virtual IStringPool::sgkey_t stringToKey(const std::string &str, CLID clid) override
Find the key for a string/CLID pair.
virtual std::vector< const SG::DataProxy * > proxies() const override
Return the list of all current proxies in store.
SG::ConcurrentSGKeyMap< sgkey_t > KeyMap_t
std::string viewKey(const std::string &key) const
Construct a key as used in the parent store.
std::vector< std::string > m_fallFilter
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
ServiceHandle< StoreGateSvc > m_store
std::string transientKey(const std::string &key)
Make a key transient.
SG::DataProxy * findProxy(const CLID &id, const std::string &key, bool allowFallThrough) const
Internal implementation of proxy()
void setROI(const ElementLink< TrigRoiDescriptorCollection > &roi)
Associated RoI with this view.
A "view" of the event store (IProxyDict).
macros to associate a CLID to a type