template<class Key , class Value , class Less = less<Key>>
Definition at line 55 of file limited_size_map.hpp.
◆ mapped_typetemplate<class Key , class Value , class Less = less<Key>>
Definition at line 56 of file limited_size_map.hpp.
◆ TAddFlagstemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
◆ TCacheElementtemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 158 of file ncbi_cache.hpp.
◆ TCacheLesstemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 272 of file ncbi_cache.hpp.
◆ TCacheLock_Default ◆ TCacheMaptemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 275 of file ncbi_cache.hpp.
◆ TCacheMap_Itemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 276 of file ncbi_cache.hpp.
◆ TCacheSettemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 273 of file ncbi_cache.hpp.
◆ TCacheSet_Itemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 274 of file ncbi_cache.hpp.
◆ TGetFlagstemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
◆ TGuardTypetemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 278 of file ncbi_cache.hpp.
◆ THandlerTypetemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 279 of file ncbi_cache.hpp.
◆ TKeyType [1/2]template<class TKey , class TSize >
Definition at line 64 of file ncbi_cache.hpp.
◆ TKeyType [2/2]template<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 155 of file ncbi_cache.hpp.
◆ TLesstemplate<class Key , class Value , class Less = less<Key>>
Definition at line 62 of file limited_size_map.hpp.
◆ TLockTypetemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 277 of file ncbi_cache.hpp.
◆ TMaptemplate<class Key , class Value , class Less = less<Key>>
Definition at line 63 of file limited_size_map.hpp.
◆ TMapConstIteratortemplate<class Key , class Value , class Less = less<Key>>
Definition at line 65 of file limited_size_map.hpp.
◆ TMapIteratortemplate<class Key , class Value , class Less = less<Key>>
Definition at line 64 of file limited_size_map.hpp.
◆ TOrdertemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 160 of file ncbi_cache.hpp.
◆ TRemoveListtemplate<class Key , class Value , class Less = less<Key>>
Definition at line 66 of file limited_size_map.hpp.
◆ TRemoveListIteratortemplate<class Key , class Value , class Less = less<Key>>
Definition at line 67 of file limited_size_map.hpp.
◆ TSizeType [1/2]template<class TKey , class TSize >
Definition at line 65 of file ncbi_cache.hpp.
◆ TSizeType [2/2]template<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 157 of file ncbi_cache.hpp.
◆ TValueTypetemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 156 of file ncbi_cache.hpp.
◆ TWeighttemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 159 of file ncbi_cache.hpp.
◆ value_typetemplate<class Key , class Value , class Less = less<Key>>
Definition at line 57 of file limited_size_map.hpp.
◆ EAddFlagstemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Flags to control the details of adding new elements to the cache via Add().
Do not replace existing values if any.
Definition at line 193 of file ncbi_cache.hpp.
◆ EAddResulttemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Result of element insertion.
Enumerator eAdd_InsertedThe element was added to the cache.
eAdd_ReplacedThe element existed and was replaced.
eAdd_NotInsertedThe element was not added or replaced.
Definition at line 199 of file ncbi_cache.hpp.
◆ ECache_InsertFlagFlag indicating if an element can be inserted into cache.
Enumerator eCache_CheckSizeInsert the element after checking max cache size.
eCache_CanInsertThe element can be inserted.
eCache_NeedCleanupNeed to cleanup cache before inserting the element.
eCache_DoNotCacheThe element can not be inserted (e.g. too big)
Definition at line 96 of file ncbi_cache.hpp.
◆ EErrCode Enumerator eIndexOverflowElement index overflow.
eWeightOverflowElement weight overflow.
eNotFoundThe requested key was not found in the cache.
eOtherErrorDefinition at line 307 of file ncbi_cache.hpp.
◆ EGetFlagstemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Cache retrieval flags.
Enumerator fGet_NoTouchDo not update the object's position.
fGet_NoCreateDo not create value if not found, throw an exception instead.
fGet_NoInsertDo not insert created values.
Definition at line 226 of file ncbi_cache.hpp.
◆ EGetResulttemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Get() result.
Enumerator eGet_FoundThe key was found in the cache.
eGet_CreatedAndAddedA new value was created and cached.
eGet_CreatedNotAddedA new value was created but not cached.
Definition at line 235 of file ncbi_cache.hpp.
◆ Add()template<class TKey , class TValue , class THandler , class TLock , class TSize >
CCache< TKey, TValue, THandler, TLock, TSize >::TOrder CCache< TKey, TValue, THandler, TLock, TSize >::Add ( const TKeyType & key, const TValueType & value, TWeight weight =1
, TAddFlags add_flags = 0
, EAddResult * result = NULL
)
Add new element to the cache or replace the existing value.
Definition at line 507 of file ncbi_cache.hpp.
References _ASSERT, eCache_CanInsert, eCache_CheckSize, eCache_DoNotCache, eCache_NeedCleanup, ncbi::grid::netcache::search::fields::key, CCache< TKey, TValue, THandler, TLock, TSize >::SValueWithIndex::m_CacheElement, SCacheElement< TKey, TSize >::m_Order, CCache< TKey, TValue, THandler, TLock, TSize >::SValueWithIndex::m_Value, result, rapidjson::value, and weight.
Referenced by CSeqVectorCache::PrefetchSequence().
◆ begin() [1/2] ◆ begin() [2/2] ◆ CanInsertElement()template<class TKey , class TValue >
◆ CCache() [1/2]template<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
◆ CCache() [2/2]template<class TKey , class TValue , class THandler , class TLock , class TSize >
◆ clear() ◆ const_iterator() [1/3]template<class Key , class Value , class Less = less<Key>>
◆ const_iterator() [2/3] ◆ const_iterator() [3/3] ◆ CreateValue()template<class TKey , class TValue >
Element factory – to create elements by key.
This gets called when there is no element matching the key in the cache
Definition at line 129 of file ncbi_cache.hpp.
◆ empty() ◆ end() [1/2]template<class Key , class Value , class Less = less<Key>>
◆ end() [2/2] ◆ erase() ◆ find() [1/2]template<class Key , class Value , class Less = less<Key>>
◆ find() [2/2] ◆ Get()template<class TKey , class TValue , class THandler , class TLock , class TSize >
CCache< TKey, TValue, THandler, TLock, TSize >::TValueType CCache< TKey, TValue, THandler, TLock, TSize >::Get ( const TKeyType & key, TGetFlags get_flags =0
, EGetResult * result = NULL
) ◆ get_size_limit()
template<class Key , class Value , class Less = less<Key>>
◆ GetCapacity()template<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
TSizeType CCache< TKey, TValue, THandler, TLock, TSize >::GetCapacity ( void ) const inlineGet current capacity of the cache (max allowed number of elements)
Definition at line 172 of file ncbi_cache.hpp.
◆ GetErrCodeString() const char * CCacheException::GetErrCodeString ( void ) const overridevirtual ◆ GetSize()template<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
TSizeType CCache< TKey, TValue, THandler, TLock, TSize >::GetSize ( void ) const inlineGet current number of elements in the cache.
Definition at line 181 of file ncbi_cache.hpp.
◆ insert()template<class Key , class Value , class Less = less<Key>>
◆ InsertElement()template<class TKey , class TValue >
Special processing of an element to be inserted (e.g.
count total memory used by the cached objects)
NOTE: This method is called *before* the element is actually added to the cache.
Definition at line 117 of file ncbi_cache.hpp.
◆ iterator() [1/2]template<class Key , class Value , class Less = less<Key>>
◆ iterator() [2/2] ◆ limited_size_map() ◆ lower_bound() [1/2] ◆ lower_bound() [2/2] ◆ NCBI_EXCEPTION_DEFAULT() ◆ operator!=() [1/2] ◆ operator!=() [2/2] ◆ operator()() [1/2]template<class Key , class Value , class Less = less<Key>>
Definition at line 92 of file limited_size_map.hpp.
◆ operator()() [2/2]template<class TCacheElementPtr >
◆ operator*() [1/2] ◆ operator*() [2/2] ◆ operator++() [1/4] ◆ operator++() [2/4] ◆ operator++() [3/4] ◆ operator++() [4/4] ◆ operator--() [1/4] ◆ operator--() [2/4] ◆ operator--() [3/4] ◆ operator--() [4/4] ◆ operator->() [1/2] ◆ operator->() [2/2] ◆ operator=()template<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
CCache& CCache< TKey, TValue, THandler, TLock, TSize >::operator= ( const CCache< TKey, TValue, THandler, TLock, TSize > & ) private ◆ operator==() [1/2] ◆ operator==() [2/2] ◆ operator[]() [1/2] ◆ operator[]() [2/2]template<class TKey , class TValue , class THandler , class TLock , class TSize >
◆ Remove()template<class TKey , class TValue , class THandler , class TLock , class TSize >
◆ RemoveElement()template<class TKey , class TValue >
Special processing of a removed element (e.g. deleting the object)
Definition at line 110 of file ncbi_cache.hpp.
◆ SCacheElement() [1/2]template<class TKey , class TSize >
Definition at line 68 of file ncbi_cache.hpp.
◆ SCacheElement() [2/2]template<class TKey , class TSize >
Definition at line 67 of file ncbi_cache.hpp.
◆ set_size_limit()template<class Key , class Value , class Less = less<Key>>
◆ SetCapacity()template<class TKey , class TValue , class THandler , class TLock , class TSize >
void CCache< TKey, TValue, THandler, TLock, TSize >::SetCapacity ( TSizeType new_capacity )Set new capacity of the cache.
The number of elements in the cache may be reduced to match the new capacity.
Definition at line 646 of file ncbi_cache.hpp.
References NCBI_THROW.
◆ SetSize()template<class TKey , class TValue , class THandler , class TLock , class TSize >
void CCache< TKey, TValue, THandler, TLock, TSize >::SetSize ( TSizeType new_size )Truncate the cache leaving at most new_size elements.
Does not affect cache capacity. If new_size is zero all elements will be removed.
Definition at line 661 of file ncbi_cache.hpp.
◆ size()template<class Key , class Value , class Less = less<Key>>
◆ SLess() [1/2]template<class Key , class Value , class Less = less<Key>>
Definition at line 85 of file limited_size_map.hpp.
◆ SLess() [2/2]template<class Key , class Value , class Less = less<Key>>
Definition at line 88 of file limited_size_map.hpp.
◆ SNode() [1/3]template<class Key , class Value , class Less = less<Key>>
Definition at line 77 of file limited_size_map.hpp.
◆ SNode() [2/3]template<class Key , class Value , class Less = less<Key>>
Definition at line 73 of file limited_size_map.hpp.
◆ SNode() [3/3]template<class Key , class Value , class Less = less<Key>>
Definition at line 69 of file limited_size_map.hpp.
◆ upper_bound() [1/2] ◆ upper_bound() [2/2] ◆ x_EraseElement()template<class TKey , class TValue , class THandler , class TLock , class TSize >
◆ x_EraseLast()template<class TKey , class TValue , class THandler , class TLock , class TSize >
void CCache< TKey, TValue, THandler, TLock, TSize >::x_EraseLast ( void ) private ◆ x_GC()template<class Key , class Value , class Less = less<Key>>
◆ x_GetBaseWeight()template<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
TWeight CCache< TKey, TValue, THandler, TLock, TSize >::x_GetBaseWeight ( void ) const inlineprivateDefinition at line 289 of file ncbi_cache.hpp.
◆ x_GetNextCounter()template<class TKey , class TValue , class THandler , class TLock , class TSize >
CCache< TKey, TValue, THandler, TLock, TSize >::TOrder CCache< TKey, TValue, THandler, TLock, TSize >::x_GetNextCounter ( void ) privateDefinition at line 420 of file ncbi_cache.hpp.
◆ x_GetNode()template<class Key , class Value , class Less = less<Key>>
◆ x_InsertElement()template<class TKey , class TValue , class THandler , class TLock , class TSize >
◆ x_MarkAdded()template<class Key , class Value , class Less = less<Key>>
◆ x_MarkUsed()template<class Key , class Value , class Less = less<Key>>
◆ x_PackElementIndex()template<class TKey , class TValue , class THandler , class TLock , class TSize >
void CCache< TKey, TValue, THandler, TLock, TSize >::x_PackElementIndex ( void ) private ◆ x_UpdateElement()template<class TKey , class TValue , class THandler , class TLock , class TSize >
◆ ~CCache()template<class TKey , class TValue , class THandler , class TLock , class TSize >
CCache< TKey, TValue, THandler, TLock, TSize >::~CCache ( void ) ◆ m_CacheElementtemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
◆ m_CacheMaptemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 297 of file ncbi_cache.hpp.
◆ m_CacheSettemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
◆ m_Capacitytemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
◆ m_Countertemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
TOrder CCache< TKey, TValue, THandler, TLock, TSize >::m_Counter privateDefinition at line 298 of file ncbi_cache.hpp.
◆ m_Handlertemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
◆ m_Iter [1/2]template<class Key , class Value , class Less = less<Key>>
◆ m_Iter [2/2]template<class Key , class Value , class Less = less<Key>>
◆ m_Keytemplate<class TKey , class TSize >
Definition at line 73 of file ncbi_cache.hpp.
◆ m_KeyComptemplate<class Key , class Value , class Less = less<Key>>
◆ m_Locktemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
Definition at line 294 of file ncbi_cache.hpp.
◆ m_Maptemplate<class Key , class Value , class Less = less<Key>>
Definition at line 96 of file limited_size_map.hpp.
Referenced by limited_size_map< string, CRef< CSlot > >::begin(), limited_size_map< string, CRef< CSlot > >::clear(), limited_size_map< string, CRef< CSlot > >::empty(), limited_size_map< string, CRef< CSlot > >::end(), limited_size_map< string, CRef< CSlot > >::erase(), limited_size_map< string, CRef< CSlot > >::find(), limited_size_map< string, CRef< CSlot > >::insert(), limited_size_map< string, CRef< CSlot > >::lower_bound(), limited_size_map< string, CRef< CSlot > >::operator[](), limited_size_map< string, CRef< CSlot > >::size(), limited_size_map< string, CRef< CSlot > >::upper_bound(), and limited_size_map< string, CRef< CSlot > >::x_GC().
◆ m_Ordertemplate<class TKey , class TSize >
Definition at line 75 of file ncbi_cache.hpp.
Referenced by CCache< TKey, TValue, THandler, TLock, TSize >::Add(), CCache< TKey, TValue, THandler, TLock, TSize >::x_PackElementIndex(), and CCache< TKey, TValue, THandler, TLock, TSize >::x_UpdateElement().
◆ m_RemoveListtemplate<class Key , class Value , class Less = less<Key>>
◆ m_RemoveListItertemplate<class Key , class Value , class Less = less<Key>>
◆ m_SizeLimittemplate<class Key , class Value , class Less = less<Key>>
◆ m_Valuetemplate<class TKey , class TValue , class THandler = CCacheElement_Handler<TKey, TValue>, class TLock = TCacheLock_Default, class TSize = Uint4>
TValueType CCache< TKey, TValue, THandler, TLock, TSize >::SValueWithIndex::m_Value ◆ m_Weighttemplate<class TKey , class TSize >
◆ limited_size_map< key_type, mapped_type, TLess > [1/2] ◆ limited_size_map< key_type, mapped_type, TLess > [2/2]RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4