ATLAS Offline Software
|
#include <TileMutableBeamElemContainer.h>
Public Types | |
typedef TileMutableDataContainer< TileBeamElemContainer > | BASE |
typedef BASE::TYPE | TYPE |
typedef BASE::UNIT | UNIT |
typedef BASE::IDENTIFIABLE | Collection |
typedef BASE::TElement | Element |
typedef TCOLLECTION::TElement | TElement |
typedef TileRawDataContainer< TileBeamElemCollection >::const_iterator | TContainer_const_iterator |
typedef TCOLLECTION::TCollection_const_iterator | TCollection_const_iterator |
typedef IdentifiableContainer< TileBeamElemCollection > | MyBase |
typedef T | IDENTIFIABLE |
typedef EventContainers::IdentifiableCache< T > | ICACHE |
typedef IdentifiableContainerMT< T > | MyType |
typedef std::vector< std::atomic< const void * > >::size_type | size_type |
typedef T *& | reference |
typedef T *const & | const_reference |
typedef T * | value_type |
typedef T ** | pointer |
typedef T *const * | const_pointer |
typedef T | base_value_type |
typedef std::vector< IdentifierHash > | Hash_Container |
Public Member Functions | |
TileMutableBeamElemContainer (bool createColl=false, SG::OwnershipPolicy ownPolicy=SG::OWN_ELEMENTS) | |
TileMutableBeamElemContainer (bool createColl, TYPE type, UNIT unit=TileRawChannelUnit::ADCcounts, SG::OwnershipPolicy ownPolicy=SG::OWN_ELEMENTS) | |
TileMutableBeamElemContainer (const BASE::BASE &other) | |
Copy constructor. More... | |
StatusCode | addCollection (std::unique_ptr< Collection > coll, IdentifierHash hash) |
Add a collection to the container. More... | |
virtual StatusCode | addCollection (const T *coll, IdentifierHash hashId) override final |
insert collection into container with id hash if IDC should not take ownership of collection, set ownsColl to false More... | |
StatusCode | push_back (std::unique_ptr< Element > rch) |
Add a new channel. More... | |
StatusCode | push_back (Element *rch) |
Add a new channel. More... | |
Collection * | indexFindPtr (IdentifierHash hash) |
Look up a (non-const) collection via hash. More... | |
virtual const T * | indexFindPtr (IdentifierHash hashId) const override final |
return pointer on the found entry or null if out of range using hashed index - fast version, does not call cnv if object not there More... | |
StatusCode | status () const |
Return the error status from the constructors. More... | |
virtual void | lock () override |
Lock this object. More... | |
void | initialize (bool createColl, TYPE type, SG::OwnershipPolicy ownPolicy=SG::OWN_ELEMENTS) |
TYPE | get_hashType () const |
UNIT | get_unit () const |
void | set_unit (UNIT unit) |
TYPE | get_type () const |
void | set_type (TYPE type) |
uint32_t | get_bsflags () const |
void | set_bsflags (uint32_t bsflags) |
const TileFragHash & | hashFunc () const |
virtual void | print () const |
virtual | operator std::string () const |
virtual std::string | whoami (void) const |
virtual bool | hasExternalCache () const override final |
const_iterator | indexFind (IdentifierHash hashId) const |
virtual StatusCode | addOrDelete (std::unique_ptr< T >, IdentifierHash hashId) override final |
Tries to add the item to the cache, if the item already exists then it is deleted This is a convenience method for online multithreaded scenarios. More... | |
virtual StatusCode | addOrDelete (std::unique_ptr< const T >, IdentifierHash hashId) override final |
StatusCode | addOrDelete (std::unique_ptr< T >, IdentifierHash hashId, bool &deleted) |
identical to previous excepts allows counting of deletions More... | |
StatusCode | addLock (std::unique_ptr< T > ptr, IdentifierHash hashId) |
Like the other add methods but optimized for changing from the inprogress state. More... | |
virtual bool | tryAddFromCache (IdentifierHash hashId) override final |
Looks in the cache to see if item already exists if not it returns false, If it does exist it incorporates it into the IDC view but changing the mask. More... | |
StatusCode | fetchOrCreate (IdentifierHash hashId) |
Tries will look for item in cache, if it doesn't exist will call the cache IMAKER If cache doesn't have an IMAKER then this fails. More... | |
StatusCode | fetchOrCreate (const std::vector< IdentifierHash > &hashId) |
virtual StatusCode naughtyRetrieve | ATLAS_NOT_THREAD_SAFE (IdentifierHash hashId, T *&collToRetrieve) const override final |
T * | removeCollection (IdentifierHash hashId) |
remove collection from container for id hash, returning it (and ownership) to client More... | |
virtual void | cleanup () override final |
reset m_hashids and call IdentifiableCache's cleanup More... | |
virtual size_t | fullSize () const override final |
return full size of container More... | |
size_t | size () const |
Duplicate of fullSize for backwards compatability. More... | |
void | prepareItr () const |
virtual size_t | numberOfCollections () const override final |
return number of collections More... | |
const std::vector< EventContainers::hashPair< T > > & | GetAllHashPtrPair () const |
virtual std::vector< IdentifierHash > | GetAllCurrentHashes () const override final |
Returns a collection of all hashes availiable in this IDC. More... | |
const_iterator | begin () const |
return const_iterator for first entry More... | |
const_iterator | end () const |
return const_iterator for end of container More... | |
bool | empty () const |
return true if container is empty More... | |
IDC_WriteHandle | getWriteHandle (IdentifierHash hash) |
virtual StatusCode | naughtyRetrieve (IdentifierHash hashId, T *&collToRetrieve) const =0 |
Protected Types | |
typedef EventContainers::IdentifiableCacheBase | IdentifiableCacheBase |
Protected Member Functions | |
void | recycle () |
Recycle this object for use in another event. More... | |
bool | tryAddFromCache (IdentifierHash hashId, EventContainers::IDC_WriteHandleBase &lock) |
void | cleanup (deleter_f *deleter) |
bool | insert (IdentifierHash hashId, const void *ptr) |
void | Wait () const |
void | ResetMask () |
Protected Attributes | |
bool | m_OnlineMode |
std::unique_ptr< I_InternalIDC > | m_link |
Private Attributes | |
std::vector< Collection * > | m_mutableCollections |
Non-const references to collections, indexed by hash value. More... | |
bool | m_locked |
Is the container locked? More... | |
StatusCode | m_sc |
StatusCode from constructors. More... | |
TYPE | m_defaultType |
Default type; reset to this on recycle. More... | |
UNIT | m_defaultUnit |
Default unit; reset to this on recycle. More... | |
UNIT | m_unit |
TYPE | m_type |
uint32_t | m_bsflags |
TileFragHash | m_hashFunc |
Definition at line 23 of file TileMutableBeamElemContainer.h.
Definition at line 27 of file TileMutableBeamElemContainer.h.
|
inherited |
Definition at line 75 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 57 of file TileMutableDataContainer.h.
|
inherited |
Definition at line 74 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 71 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 58 of file TileMutableDataContainer.h.
|
inherited |
Definition at line 18 of file IdentifiableContainerBase.h.
|
inherited |
Definition at line 67 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 66 of file IdentifiableContainerMT.h.
|
protectedinherited |
Definition at line 25 of file IdentifiableContainerBase.h.
|
inherited |
Definition at line 41 of file TileRawDataContainer.h.
|
inherited |
Definition at line 68 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 73 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 70 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 69 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 39 of file TileRawDataContainer.h.
|
inherited |
Definition at line 38 of file TileRawDataContainer.h.
|
inherited |
Definition at line 37 of file TileRawDataContainer.h.
|
inherited |
Definition at line 55 of file TileMutableDataContainer.h.
|
inherited |
Definition at line 56 of file TileMutableDataContainer.h.
|
inherited |
Definition at line 72 of file IdentifiableContainerMT.h.
|
inline |
Definition at line 29 of file TileMutableBeamElemContainer.h.
|
inline |
Definition at line 39 of file TileMutableBeamElemContainer.h.
|
inline |
Copy constructor.
other | Container to copy. |
This is a deep copy; all contained collections and channels will be copied. Call status() after this to check for errors.
Definition at line 56 of file TileMutableBeamElemContainer.h.
|
finaloverridevirtualinherited |
insert collection into container with id hash if IDC should not take ownership of collection, set ownsColl to false
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 297 of file IdentifiableContainerMT.h.
|
inherited |
Add a collection to the container.
coll | Collection ot add. |
hash | Hash value for the collection. |
We maintain a non-const reference to the collection.
|
inherited |
Like the other add methods but optimized for changing from the inprogress state.
Definition at line 372 of file IdentifiableContainerMT.h.
|
finaloverridevirtualinherited |
Implements EventContainers::IIdentifiableCont< T >.
|
finaloverridevirtualinherited |
Tries to add the item to the cache, if the item already exists then it is deleted This is a convenience method for online multithreaded scenarios.
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 350 of file IdentifiableContainerMT.h.
|
inherited |
identical to previous excepts allows counting of deletions
Definition at line 379 of file IdentifiableContainerMT.h.
|
finaloverridevirtualinherited |
|
inlineinherited |
return const_iterator for first entry
Definition at line 233 of file IdentifiableContainerMT.h.
|
finaloverridevirtualinherited |
reset m_hashids and call IdentifiableCache's cleanup
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 309 of file IdentifiableContainerMT.h.
|
protectedinherited |
Definition at line 38 of file IdentifiableContainerBase.cxx.
|
inlineinherited |
return true if container is empty
Definition at line 244 of file IdentifiableContainerMT.h.
|
inlineinherited |
return const_iterator for end of container
Definition at line 239 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 323 of file IdentifiableContainerMT.h.
|
inherited |
Tries will look for item in cache, if it doesn't exist will call the cache IMAKER If cache doesn't have an IMAKER then this fails.
Definition at line 316 of file IdentifiableContainerMT.h.
|
inlinefinaloverridevirtualinherited |
return full size of container
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 201 of file IdentifiableContainerMT.h.
|
inlineinherited |
Definition at line 64 of file TileRawDataContainer.h.
|
inlineinherited |
Definition at line 59 of file TileRawDataContainer.h.
|
inlineinherited |
Definition at line 62 of file TileRawDataContainer.h.
|
inlineinherited |
Definition at line 60 of file TileRawDataContainer.h.
|
inlinefinaloverridevirtualinherited |
Returns a collection of all hashes availiable in this IDC.
If this is an "offline" mode IDC then this is identical to the cache If this is an "online" mode IDC then this is the items that both exist in the cache and have a postive mask element
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 228 of file IdentifiableContainerMT.h.
|
inlineinherited |
Definition at line 217 of file IdentifiableContainerMT.h.
|
inlineinherited |
Definition at line 248 of file IdentifiableContainerMT.h.
|
inlinefinaloverridevirtualinherited |
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 152 of file IdentifiableContainerMT.h.
|
inlineinherited |
Definition at line 66 of file TileRawDataContainer.h.
|
inlineinherited |
Definition at line 160 of file IdentifiableContainerMT.h.
|
inherited |
Look up a (non-const) collection via hash.
hash | Hash value to find. |
|
finaloverridevirtualinherited |
return pointer on the found entry or null if out of range using hashed index - fast version, does not call cnv if object not there
return valuetype on the found entry or null if out of range using hashed index - fast version, does not call cnv if object not there
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 289 of file IdentifiableContainerMT.h.
|
inherited |
|
inlineprotectedinherited |
Definition at line 28 of file IdentifiableContainerBase.h.
|
overridevirtualinherited |
|
pure virtualinherited |
|
inlinefinaloverridevirtualinherited |
return number of collections
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 213 of file IdentifiableContainerMT.h.
|
virtualinherited |
|
inlineinherited |
Definition at line 210 of file IdentifiableContainerMT.h.
|
virtualinherited |
|
inherited |
Add a new channel.
rch | Channel to add. |
This should be used for non-owning container (created with SG::VIEW_ELEMENTS). A new collection will be created if needed. In that case, we maintain a non-const reference to it.
|
inherited |
Add a new channel.
rch | Channel to add. |
This should be used for owning container (created with SG::OWN_ELEMENTS). A new collection will be created if needed. In that case, we maintain a non-const reference to it.
|
protectedinherited |
Recycle this object for use in another event.
This is called from AthenaKernel/RecyclableDataObject when this object is released by StoreGate. Unlock the object so that non-const access is again possible, and clear out the contents if the collections.
|
inherited |
remove collection from container for id hash, returning it (and ownership) to client
Definition at line 259 of file IdentifiableContainerMT.h.
|
protectedinherited |
|
inlineinherited |
Definition at line 65 of file TileRawDataContainer.h.
|
inlineinherited |
Definition at line 63 of file TileRawDataContainer.h.
|
inlineinherited |
Definition at line 61 of file TileRawDataContainer.h.
|
inlineinherited |
Duplicate of fullSize for backwards compatability.
Definition at line 206 of file IdentifiableContainerMT.h.
|
inherited |
Return the error status from the constructors.
|
finaloverridevirtualinherited |
Looks in the cache to see if item already exists if not it returns false, If it does exist it incorporates it into the IDC view but changing the mask.
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 331 of file IdentifiableContainerMT.h.
|
inlineprotectedinherited |
Definition at line 30 of file IdentifiableContainerBase.h.
|
inlineprotectedinherited |
Definition at line 29 of file IdentifiableContainerBase.h.
|
inlinevirtualinherited |
Definition at line 71 of file TileRawDataContainer.h.
|
privateinherited |
Definition at line 78 of file TileRawDataContainer.h.
|
privateinherited |
Default type; reset to this on recycle.
Definition at line 175 of file TileMutableDataContainer.h.
|
privateinherited |
Default unit; reset to this on recycle.
Definition at line 178 of file TileMutableDataContainer.h.
|
privateinherited |
Definition at line 80 of file TileRawDataContainer.h.
|
protectedinherited |
Definition at line 26 of file IdentifiableContainerBase.h.
|
privateinherited |
Is the container locked?
Definition at line 169 of file TileMutableDataContainer.h.
|
privateinherited |
Non-const references to collections, indexed by hash value.
Definition at line 166 of file TileMutableDataContainer.h.
|
protectedinherited |
Definition at line 24 of file IdentifiableContainerBase.h.
|
privateinherited |
StatusCode from constructors.
Definition at line 172 of file TileMutableDataContainer.h.
|
privateinherited |
Definition at line 77 of file TileRawDataContainer.h.
|
privateinherited |
Definition at line 76 of file TileRawDataContainer.h.