|
BioDynaMo
v1.05.125-2619fe54
|
#include <agent_uid_map.h>
Classes | |
| struct | Iterator |
Public Member Functions | |
| AgentUidMap ()=default | |
| AgentUidMap (const AgentUidMap &other) | |
| AgentUidMap (uint64_t initial_size) | |
| void | resize (uint64_t new_size) |
| void | clear () |
| void | ParallelClear () |
| uint64_t | size () const |
| void | Remove (const AgentUid &key) |
| bool | Contains (const AgentUid &uid) const |
| void | Insert (const AgentUid &uid, const TValue &value) |
| const TValue & | operator[] (const AgentUid &key) const |
| AgentUid::Reused_t | GetReused (uint64_t index) const |
Private Attributes | |
| std::vector< TValue > | data_ |
| std::vector< typename AgentUid::Reused_t > | agent_uid_reused_ |
AgentUidMap is an associative container that exploits the properties of AgentUid to store data in contiguous arrays. Inserting elements and reading elements at the same time is thread-safe as long as the keys are different. These operations with distinct keys are lock-free and atomic free, and thus offer high-performance.
Definition at line 31 of file agent_uid_map.h.
|
default |
|
inline |
Definition at line 40 of file agent_uid_map.h.
|
inlineexplicit |
Definition at line 43 of file agent_uid_map.h.
|
inline |
Definition at line 53 of file agent_uid_map.h.
|
inline |
Definition at line 77 of file agent_uid_map.h.
|
inline |
Definition at line 95 of file agent_uid_map.h.
|
inline |
Definition at line 85 of file agent_uid_map.h.
|
inline |
Definition at line 91 of file agent_uid_map.h.
|
inline |
Definition at line 59 of file agent_uid_map.h.
|
inline |
Definition at line 70 of file agent_uid_map.h.
|
inline |
Definition at line 48 of file agent_uid_map.h.
|
inline |
Definition at line 66 of file agent_uid_map.h.
|
private |
Definition at line 101 of file agent_uid_map.h.
|
private |
Definition at line 100 of file agent_uid_map.h.
1.8.17