diff options
| author | Léo Lam <leo@leolam.fr> | 2020-06-05 17:09:06 +0200 |
|---|---|---|
| committer | Léo Lam <leo@leolam.fr> | 2020-08-18 22:50:25 +0200 |
| commit | 2de366be0fa75e571c605e017b5604bccbdb75bf (patch) | |
| tree | b8044fc96bba792b1875067032da2fd4498a44a3 /src/KingSystem/ActorSystem/actBaseProcMap.cpp | |
Initial commit
Diffstat (limited to 'src/KingSystem/ActorSystem/actBaseProcMap.cpp')
| -rw-r--r-- | src/KingSystem/ActorSystem/actBaseProcMap.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/KingSystem/ActorSystem/actBaseProcMap.cpp b/src/KingSystem/ActorSystem/actBaseProcMap.cpp new file mode 100644 index 00000000..c38072e9 --- /dev/null +++ b/src/KingSystem/ActorSystem/actBaseProcMap.cpp @@ -0,0 +1,22 @@ +#include "KingSystem/ActorSystem/actBaseProcMap.h" + +namespace ksys::act { + +void BaseProcMapNode::add(BaseProcMapNode* node) { + auto next = mNext; + node->mPrev = this; + node->mNext = next; + mNext = node; + if (next) + next->mPrev = node; +} + +void BaseProcMap::insert(BaseProcMapNode* node) { + if (auto existing_node = find(node->key())) + existing_node->add(node); + else + StrTreeMap::insert(node); + node->setInserted(); +} + +} // namespace ksys::act |
