#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 | |
typedef Alloc::template rebind < KeyItem >::other | KeyItemAllocator |
typedef Alloc::template rebind < KeyItem * >::other | KeyItemPtrAllocator |
typedef Alloc::template rebind < ValueItem >::other | ValueItemAllocator |
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.
typedef Hasher cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::hasher |
Definition at line 31 of file OtherHashMaps.h.
|
private |
Definition at line 116 of file OtherHashMaps.h.
|
private |
Definition at line 117 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 118 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 201 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 216 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 148 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_FULL_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 283 of file OtherHashMaps.h.
References cond::hash, 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 227 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 300 of file OtherHashMaps.h.
References isotrackApplyRegressor::k, and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::KeyItem::value.
Referenced by BeautifulSoup.PageElement::_invert(), and SequenceTypes.Schedule::_replaceIfHeldDirectly().
|
private |
Definition at line 248 of file OtherHashMaps.h.
|
private |
Definition at line 265 of file OtherHashMaps.h.
SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::value_iterator cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::values | ( | K const & | key | ) |
Definition at line 309 of file OtherHashMaps.h.
References cond::hash, and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::KeyItem::next.
|
private |
Definition at line 121 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(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::dump(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 121 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 127 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 133 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 138 of file OtherHashMaps.h.
|
private |
Definition at line 137 of file OtherHashMaps.h.
|
private |
Definition at line 139 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 128 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear().
|
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(), cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::empty(), and cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 124 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 136 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear().
|
private |
|
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 141 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 140 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::SimpleAllocHashMultiMap().
|
private |
Definition at line 134 of file OtherHashMaps.h.
Referenced by cmsutil::SimpleAllocHashMultiMap< K, V, Hasher, Equals, Alloc >::clear().
|
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().
|
private |
Definition at line 130 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().