|
BioDynaMo
v1.05.125-2619fe54
|
#include <agent_handle.h>
Public Types | |
| using | NumaNode_t = uint16_t |
| using | ElementIdx_t = uint32_t |
Public Member Functions | |
| constexpr | AgentHandle () noexcept |
| AgentHandle (ElementIdx_t element_idx) | |
| AgentHandle (NumaNode_t numa_node, ElementIdx_t element_idx) | |
| NumaNode_t | GetNumaNode () const |
| ElementIdx_t | GetElementIdx () const |
| void | SetElementIdx (ElementIdx_t element_idx) |
| bool | operator== (const AgentHandle &other) const |
| bool | operator!= (const AgentHandle &other) const |
| bool | operator< (const AgentHandle &other) const |
Private Member Functions | |
| BDM_CLASS_DEF_NV (AgentHandle, 1) | |
Private Attributes | |
| NumaNode_t | numa_node_ |
| ElementIdx_t | element_idx_ |
Friends | |
| std::ostream & | operator<< (std::ostream &stream, const AgentHandle &handle) |
Unique identifier of an agent. Acts as a type erased pointer. Has the same type for every agent.
Points to the storage location of an agent inside ResourceManager.
The id is split into two parts: Numa node, element index. The first one is used to obtain the numa storage, and the second specifies the element within this vector.
Definition at line 29 of file agent_handle.h.
| using bdm::AgentHandle::ElementIdx_t = uint32_t |
Definition at line 32 of file agent_handle.h.
| using bdm::AgentHandle::NumaNode_t = uint16_t |
Definition at line 31 of file agent_handle.h.
|
inlineconstexprnoexcept |
Definition at line 34 of file agent_handle.h.
|
inlineexplicit |
Definition at line 38 of file agent_handle.h.
|
inline |
Definition at line 41 of file agent_handle.h.
|
private |
|
inline |
Definition at line 45 of file agent_handle.h.
|
inline |
Definition at line 44 of file agent_handle.h.
|
inline |
Definition at line 52 of file agent_handle.h.
|
inline |
Definition at line 54 of file agent_handle.h.
|
inline |
Definition at line 48 of file agent_handle.h.
|
inline |
Definition at line 46 of file agent_handle.h.
|
friend |
Definition at line 62 of file agent_handle.h.
|
private |
changed element index to uint32_t after issues with std::atomic with size 16 -> max element_idx: 4.294.967.296
Definition at line 74 of file agent_handle.h.
|
private |
Definition at line 70 of file agent_handle.h.
1.8.17