ATLAS Offline Software
|
#include <IdentifiableValueContainer.h>
Public Types | |
typedef T | value_type |
typedef IdentifiableValueCache< T > | Cache |
Public Member Functions | |
IdentifiableValueContainer (const IdentifiableValueContainer< T > &)=delete | |
IdentifiableValueContainer & | operator= (const IdentifiableValueContainer &)=delete |
~IdentifiableValueContainer () | |
IdentifiableValueContainer (size_t maxSize, T defaultValue) | |
Self Owning Constructor Pass the maximum hash to size the cache and the defaultValue which will be interpreted as an empty value. More... | |
IdentifiableValueContainer (IdentifiableValueCache< T > *ptr) | |
External Cache Constructor Pass the external cache to set up a view specific view interface. More... | |
const T & | emptyValue () const |
Return the empty value that is interpreted as an empty entry. More... | |
bool | present (size_t i) const |
Is the value for this has set and also accepted in the mask. More... | |
bool | setOrDrop (size_t i, const T &value) |
Set the value for the given hash. More... | |
size_t | maxSize () const |
Return the maxSize of the collection. More... | |
size_t | numberSet () const |
Return the number of entries set and accessible according to the mask. More... | |
bool | tryAddFromCache (size_t i) |
Returns true if the value is also in the external cache, sets mask to true if it is. More... | |
T | retrieve (size_t i) const |
Retrieve the value of the hash, if accessible according to the mask. More... | |
std::vector< std::pair< size_t, T > > | getAll () const |
Make a vector of hashes and values, convenient for iteration and other uses. More... | |
const std::vector< std::atomic< T > > & | wholeEventReadAccess () const |
Get read only access to the whole external cache. This could be useful for special situations. More... | |
const Cache * | cache () const |
Obtain const access to the cache. More... | |
const std::set< size_t > & | getMask () const |
Private Attributes | |
std::set< size_t > | m_mask |
Cache * | m_cache |
bool | m_own |
Definition at line 21 of file IdentifiableValueContainer.h.
typedef IdentifiableValueCache<T> IdentifiableValueContainer< T >::Cache |
Definition at line 25 of file IdentifiableValueContainer.h.
typedef T IdentifiableValueContainer< T >::value_type |
Definition at line 24 of file IdentifiableValueContainer.h.
|
delete |
|
inline |
Definition at line 31 of file IdentifiableValueContainer.h.
|
inline |
Self Owning Constructor Pass the maximum hash to size the cache and the defaultValue which will be interpreted as an empty value.
Definition at line 35 of file IdentifiableValueContainer.h.
|
inline |
External Cache Constructor Pass the external cache to set up a view specific view interface.
Definition at line 42 of file IdentifiableValueContainer.h.
|
inline |
|
inline |
Return the empty value that is interpreted as an empty entry.
Definition at line 48 of file IdentifiableValueContainer.h.
std::vector< std::pair< size_t, T > > IdentifiableValueContainer< T >::getAll |
Make a vector of hashes and values, convenient for iteration and other uses.
Definition at line 93 of file IdentifiableValueContainer.h.
|
inline |
Definition at line 79 of file IdentifiableValueContainer.h.
|
inline |
Return the maxSize of the collection.
Definition at line 58 of file IdentifiableValueContainer.h.
size_t IdentifiableValueContainer< T >::numberSet |
Return the number of entries set and accessible according to the mask.
This is not a trivial function do not repeatedly call.
Definition at line 124 of file IdentifiableValueContainer.h.
|
delete |
bool IdentifiableValueContainer< T >::present | ( | size_t | i | ) | const |
Is the value for this has set and also accepted in the mask.
Definition at line 87 of file IdentifiableValueContainer.h.
T IdentifiableValueContainer< T >::retrieve | ( | size_t | i | ) | const |
Retrieve the value of the hash, if accessible according to the mask.
Definition at line 104 of file IdentifiableValueContainer.h.
bool IdentifiableValueContainer< T >::setOrDrop | ( | size_t | i, |
const T & | value | ||
) |
bool IdentifiableValueContainer< T >::tryAddFromCache | ( | size_t | i | ) |
|
inline |
Get read only access to the whole external cache. This could be useful for special situations.
Definition at line 74 of file IdentifiableValueContainer.h.
|
private |
Definition at line 82 of file IdentifiableValueContainer.h.
|
private |
Definition at line 81 of file IdentifiableValueContainer.h.
|
private |
Definition at line 83 of file IdentifiableValueContainer.h.