|
Krita Source Code Documentation
|
#include <concurrent_map.h>
Classes | |
| class | Iterator |
| class | Mutator |
Public Types | |
| typedef Leapfrog< ConcurrentMap > | Details |
| typedef quint32 | Hash |
| typedef K | Key |
| typedef KT | KeyTraits |
| typedef V | Value |
| typedef VT | ValueTraits |
Public Member Functions | |
| Value | assign (Key key, Value desired) |
| ConcurrentMap (quint64 capacity=Details::InitialSize) | |
| Value | erase (Key key) |
| Value | exchange (Key key, Value desired) |
| Mutator | find (Key key) |
| Value | get (Key key) |
| QSBR & | getGC () |
| Mutator | insertOrFind (Key key) |
| bool | migrationInProcess () |
| void | publishTableMigration (typename Details::TableMigration *migration) |
| ~ConcurrentMap () | |
Private Attributes | |
| QSBR | m_gc |
| Atomic< typename Details::Table * > | m_root |
Definition at line 18 of file concurrent_map.h.
| typedef Leapfrog<ConcurrentMap> ConcurrentMap< K, V, KT, VT >::Details |
Definition at line 26 of file concurrent_map.h.
| typedef quint32 ConcurrentMap< K, V, KT, VT >::Hash |
Definition at line 25 of file concurrent_map.h.
| typedef K ConcurrentMap< K, V, KT, VT >::Key |
Definition at line 21 of file concurrent_map.h.
| typedef KT ConcurrentMap< K, V, KT, VT >::KeyTraits |
Definition at line 23 of file concurrent_map.h.
| typedef V ConcurrentMap< K, V, KT, VT >::Value |
Definition at line 22 of file concurrent_map.h.
| typedef VT ConcurrentMap< K, V, KT, VT >::ValueTraits |
Definition at line 24 of file concurrent_map.h.
|
inline |
Definition at line 33 of file concurrent_map.h.
|
inline |
Definition at line 37 of file concurrent_map.h.
References Leapfrog< Map >::Table::destroy(), QSBR::flush(), ConcurrentMap< K, V, KT, VT >::m_gc, and ConcurrentMap< K, V, KT, VT >::m_root.
|
inline |
Definition at line 279 of file concurrent_map.h.
References ConcurrentMap< K, V, KT, VT >::Mutator::exchangeValue().
|
inline |
Definition at line 291 of file concurrent_map.h.
References ConcurrentMap< K, V, KT, VT >::Mutator::eraseValue().
|
inline |
Definition at line 285 of file concurrent_map.h.
References ConcurrentMap< K, V, KT, VT >::Mutator::exchangeValue().
|
inline |
Definition at line 253 of file concurrent_map.h.
|
inline |
Definition at line 259 of file concurrent_map.h.
References Consume, Leapfrog< Map >::find(), Leapfrog< Map >::Table::jobCoordinator, Atomic< T >::load(), ConcurrentMap< K, V, KT, VT >::m_root, SimpleJobCoordinator::participate(), Leapfrog< Map >::Cell::value, and value().
|
inline |
Definition at line 44 of file concurrent_map.h.
References ConcurrentMap< K, V, KT, VT >::m_gc.
|
inline |
Definition at line 248 of file concurrent_map.h.
|
inline |
Definition at line 49 of file concurrent_map.h.
References ConcurrentMap< K, V, KT, VT >::m_root.
|
inline |
Definition at line 56 of file concurrent_map.h.
References Leapfrog< Map >::TableMigration::m_destination, ConcurrentMap< K, V, KT, VT >::m_root, and Release.
|
private |
Definition at line 30 of file concurrent_map.h.
|
private |
Definition at line 29 of file concurrent_map.h.