#include <OtherHashMaps.h>
Classes | |
class | item_iterator |
struct | KeyItem |
struct | ValueItem |
Public Types | |
typedef Hasher | hasher |
typedef SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc > | map_type |
typedef item_iterator< ValueItem > | value_iterator |
typedef std::conditional< std::is_pointer< V >::value, V, V const & >::type | value_ref |
Public Member Functions | |
void | clear (size_t newBucketSize=0) |
void | dump () |
bool | empty () const |
void | freeRows () |
void | insert (K const &key, value_ref value) |
SimpleAllocHashMultiMap (size_t buckets, size_t keyRowSize, size_t valueRowSize, size_t maxRows=50) | |
value_iterator | values (K const &key) |
~SimpleAllocHashMultiMap () | |
Private Types | |
using | AllocTraits = std::allocator_traits< Alloc > |
using | KeyItemAllocator = typename AllocTraits::template rebind_alloc< KeyItem > |
using | KeyItemPtrAllocator = typename AllocTraits::template rebind_alloc< KeyItem * > |
using | ValueItemAllocator = typename AllocTraits::template rebind_alloc< ValueItem > |
Private Member Functions | |
KeyItem & | find_or_insert_ (K const &key) |
KeyItem * | push_back_ (K const &key, KeyItem *next) |
ValueItem * | push_back_ (value_ref value, ValueItem *next) |
Private Attributes | |
size_t | bucketCapacity_ |
KeyItem ** | buckets_ |
size_t | bucketSize_ |
std::list< KeyItem * >::iterator | currentKeyRow_ |
std::list< ValueItem * >::iterator | currentValueRow_ |
Equals | eq_ |
Hasher | hasher_ |
KeyItemAllocator | keyAlloc_ |
KeyItem * | keyEndMarker_ |
std::list< KeyItem * > | keyRows_ |
size_t | keyRowSize_ |
size_t | maxRows_ |
KeyItem * | nextKeyItem_ |
ValueItem * | nextValueItem_ |
KeyItemPtrAllocator | ptrAlloc_ |
ValueItemAllocator | valueAlloc_ |
ValueItem * | valueEndMarker_ |
std::list< ValueItem * > | valueRows_ |
size_t | valueRowSize_ |
Definition at line 29 of file OtherHashMaps.h.
|
private |
Definition at line 116 of file OtherHashMaps.h.
typedef Hasher cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::hasher |
Definition at line 31 of file OtherHashMaps.h.
|
private |
Definition at line 117 of file OtherHashMaps.h.
|
private |
Definition at line 118 of file OtherHashMaps.h.
typedef SimpleAllocHashMultiMap<K, V, Hasher, Equals, Alloc> cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::map_type |
Definition at line 35 of file OtherHashMaps.h.
typedef item_iterator<ValueItem> cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::value_iterator |
Definition at line 111 of file OtherHashMaps.h.
typedef std::conditional<std::is_pointer<V>::value, V, V const &>::type cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::value_ref |
Definition at line 37 of file OtherHashMaps.h.
|
private |
Definition at line 119 of file OtherHashMaps.h.
cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap | ( | size_t | buckets, |
size_t | keyRowSize, | ||
size_t | valueRowSize, | ||
size_t | maxRows = 50 |
||
) |
Definition at line 202 of file OtherHashMaps.h.
References cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::bucketCapacity_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::buckets_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::keyAlloc_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::keyRows_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::keyRowSize_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::ptrAlloc_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::valueAlloc_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::valueRows_, and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::valueRowSize_.
cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::~SimpleAllocHashMultiMap | ( | ) |
Definition at line 217 of file OtherHashMaps.h.
References dqmdumpme::last.
|
inline |
Definition at line 43 of file OtherHashMaps.h.
References cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::bucketCapacity_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::buckets_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::bucketSize_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::currentKeyRow_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::currentValueRow_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::freeRows(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::keyEndMarker_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::keyRows_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::keyRowSize_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::maxRows_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::nextKeyItem_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::nextValueItem_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::ptrAlloc_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::valueEndMarker_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::valueRows_, and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::valueRowSize_.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
inline |
Definition at line 149 of file OtherHashMaps.h.
References cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::bucketCapacity_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::buckets_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::bucketSize_, gather_cfg::cout, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::currentKeyRow_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::currentValueRow_, HLT_2023v12_cff::distance, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::keyRows_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::keyRowSize_, dqmdumpme::last, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::nextKeyItem_, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::nextValueItem_, AlCaHLTBitMon_ParallelJobs::p, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::valueRows_, and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::valueRowSize_.
|
inline |
Definition at line 64 of file OtherHashMaps.h.
References cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::keyRows_, and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::nextKeyItem_.
|
private |
Definition at line 284 of file OtherHashMaps.h.
References cond::hash, crabWrapper::key, cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::KeyItem::key, and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::KeyItem::next.
void cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::freeRows | ( | ) |
Definition at line 228 of file OtherHashMaps.h.
References dqmdumpme::last.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear().
void cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::insert | ( | K const & | key, |
value_ref | value | ||
) |
Definition at line 301 of file OtherHashMaps.h.
References dqmdumpme::k, and crabWrapper::key.
|
private |
Definition at line 249 of file OtherHashMaps.h.
References DDDCmsTrackerContruction::construct(), crabWrapper::key, and GetRecoTauVFromDQM_MC_cff::next.
|
private |
Definition at line 266 of file OtherHashMaps.h.
References DDDCmsTrackerContruction::construct(), and GetRecoTauVFromDQM_MC_cff::next.
SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::value_iterator cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::values | ( | K const & | key | ) |
Definition at line 310 of file OtherHashMaps.h.
References cond::hash, crabWrapper::key, and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::KeyItem::next.
|
private |
Definition at line 122 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 123 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 122 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump().
|
private |
Definition at line 128 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump().
|
private |
Definition at line 134 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump().
|
private |
Definition at line 139 of file OtherHashMaps.h.
|
private |
Definition at line 138 of file OtherHashMaps.h.
|
private |
Definition at line 140 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 129 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear().
|
private |
Definition at line 126 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::empty(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 125 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 137 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear().
|
private |
|
private |
Definition at line 135 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump().
|
private |
Definition at line 142 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 141 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 135 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear().
|
private |
Definition at line 132 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 131 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().