![]() |
ATLAS Offline Software
|
Use IdentifiableContainer with RpcPad. More...
#include <RpcPadContainer.h>
Public Types | |
| typedef RpcPad::size_type | size_type |
| typedef IdentifiableContainer< RpcPad > | MyBase |
| typedef T | IDENTIFIABLE |
| typedef EventContainers::IdentifiableCache< T > | ICACHE |
| typedef IdentifiableContainerMT< T > | MyType |
| 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 void | deleter_f(const void *p) |
| typedef std::vector< IdentifierHash > | Hash_Container |
Public Member Functions | |
| RpcPadContainer (unsigned int hashmax) | |
| RpcPadContainer (RpcPad_Cache *cache) | |
| ~RpcPadContainer ()=default | |
| void | push_back (RpcCoinMatrix *cm) |
| Convert identifier to idhash. | |
| size_type | pad_size () const |
| virtual const CLID & | clID () const override |
| return class ID | |
| virtual bool | hasExternalCache () const override final |
| 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 | |
| const_iterator | indexFind (IdentifierHash hashId) const |
| 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 | |
| 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. | |
| 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 | |
| StatusCode | addLock (std::unique_ptr< T > ptr, IdentifierHash hashId) |
| Like the other add methods but optimized for changing from the inprogress state. | |
| 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. | |
| 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. | |
| 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 | |
| virtual void | cleanup () override final |
| reset m_hashids and call IdentifiableCache's cleanup | |
| virtual size_t | fullSize () const override final |
| return full size of container | |
| size_t | size () const |
| Duplicate of fullSize for backwards compatability. | |
| void | prepareItr () const |
| virtual size_t | numberOfCollections () const override final |
| return number of collections | |
| auto | GetAllHashPtrPair () const |
| virtual std::vector< IdentifierHash > | GetAllCurrentHashes () const override final |
| Returns a collection of all hashes availiable in this IDC. | |
| const_iterator | begin () const |
| return const_iterator for first entry | |
| const_iterator | end () const |
| return const_iterator for end of container | |
| bool | empty () const |
| return true if container is empty | |
| IDC_WriteHandle | getWriteHandle (IdentifierHash hash) |
| virtual StatusCode | naughtyRetrieve (IdentifierHash hashId, T *&collToRetrieve) const =0 |
Static Public Member Functions | |
| static CLID | classID () |
Protected Types | |
| typedef EventContainers::IdentifiableCacheBase | IdentifiableCacheBase |
Protected Member Functions | |
| 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 |
Use IdentifiableContainer with RpcPad.
Definition at line 22 of file RpcPadContainer.h.
|
inherited |
Definition at line 77 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 76 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 73 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 14 of file IdentifiableContainerBase.h.
|
inherited |
Definition at line 18 of file IdentifiableContainerBase.h.
|
inherited |
Definition at line 69 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 68 of file IdentifiableContainerMT.h.
|
protectedinherited |
Definition at line 25 of file IdentifiableContainerBase.h.
Definition at line 32 of file RpcPadContainer.h.
|
inherited |
Definition at line 70 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 75 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 72 of file IdentifiableContainerMT.h.
Definition at line 31 of file RpcPadContainer.h.
|
inherited |
Definition at line 74 of file IdentifiableContainerMT.h.
| RpcPadContainer::RpcPadContainer | ( | unsigned int | hashmax | ) |
Definition at line 16 of file RpcPadContainer.cxx.
| RpcPadContainer::RpcPadContainer | ( | RpcPad_Cache * | cache | ) |
Definition at line 21 of file RpcPadContainer.cxx.
|
default |
|
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 305 of file IdentifiableContainerMT.h.
|
inherited |
Like the other add methods but optimized for changing from the inprogress state.
Definition at line 380 of file IdentifiableContainerMT.h.
|
finaloverridevirtualinherited |
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 369 of file IdentifiableContainerMT.h.
|
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 358 of file IdentifiableContainerMT.h.
|
inherited |
identical to previous excepts allows counting of deletions
Definition at line 387 of file IdentifiableContainerMT.h.
|
finaloverridevirtualinherited |
|
inlineinherited |
return const_iterator for first entry
Definition at line 241 of file IdentifiableContainerMT.h.
|
static |
Definition at line 28 of file RpcPadContainer.cxx.
|
protectedinherited |
Definition at line 37 of file IdentifiableContainerBase.cxx.
|
finaloverridevirtualinherited |
reset m_hashids and call IdentifiableCache's cleanup
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 317 of file IdentifiableContainerMT.h.
|
inlineinherited |
return true if container is empty
Definition at line 252 of file IdentifiableContainerMT.h.
|
inlineinherited |
return const_iterator for end of container
Definition at line 247 of file IdentifiableContainerMT.h.
|
inherited |
Definition at line 331 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 324 of file IdentifiableContainerMT.h.
|
inlinefinaloverridevirtualinherited |
return full size of container
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 203 of file IdentifiableContainerMT.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 236 of file IdentifiableContainerMT.h.
|
inlineinherited |
Definition at line 219 of file IdentifiableContainerMT.h.
|
inlinenodiscardinherited |
Definition at line 256 of file IdentifiableContainerMT.h.
|
inlinefinaloverridevirtualinherited |
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 154 of file IdentifiableContainerMT.h.
|
inlineinherited |
Definition at line 162 of file IdentifiableContainerMT.h.
|
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 297 of file IdentifiableContainerMT.h.
|
inlineprotectedinherited |
Definition at line 28 of file IdentifiableContainerBase.h.
|
pure virtualinherited |
|
inlinefinaloverridevirtualinherited |
return number of collections
Implements EventContainers::IIdentifiableCont< T >.
Definition at line 215 of file IdentifiableContainerMT.h.
| RpcPadContainer::size_type RpcPadContainer::pad_size | ( | ) | const |
Definition at line 50 of file RpcPadContainer.cxx.
|
inlineinherited |
Definition at line 212 of file IdentifiableContainerMT.h.
| void RpcPadContainer::push_back | ( | RpcCoinMatrix * | cm | ) |
|
inherited |
remove collection from container for id hash, returning it (and ownership) to client
Definition at line 267 of file IdentifiableContainerMT.h.
|
protectedinherited |
|
inlineinherited |
Duplicate of fullSize for backwards compatability.
Definition at line 208 of file IdentifiableContainerMT.h.
|
inlineprotectedinherited |
Definition at line 30 of file IdentifiableContainerBase.h.
|
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 339 of file IdentifiableContainerMT.h.
|
inlineprotectedinherited |
Definition at line 29 of file IdentifiableContainerBase.h.
|
protectedinherited |
Definition at line 26 of file IdentifiableContainerBase.h.
|
protectedinherited |
Definition at line 24 of file IdentifiableContainerBase.h.