From 0dc07525309ecc1d522fa4f18ecb09993b035f2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Thu, 20 Aug 2020 01:26:10 +0200 Subject: ksys/act: Implement ActorLinkConstDataAccess --- .../ActorSystem/actActorLinkConstDataAccess.cpp | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'src/KingSystem/ActorSystem/actActorLinkConstDataAccess.cpp') diff --git a/src/KingSystem/ActorSystem/actActorLinkConstDataAccess.cpp b/src/KingSystem/ActorSystem/actActorLinkConstDataAccess.cpp index e69de29b..476482ce 100644 --- a/src/KingSystem/ActorSystem/actActorLinkConstDataAccess.cpp +++ b/src/KingSystem/ActorSystem/actActorLinkConstDataAccess.cpp @@ -0,0 +1,33 @@ +#include "KingSystem/ActorSystem/actActorLinkConstDataAccess.h" +#include "KingSystem/ActorSystem/actBaseProc.h" + +namespace ksys::act { + +ActorLinkConstDataAccess::~ActorLinkConstDataAccess() { + if (mAcquired) + acquire(nullptr); +} + +bool ActorLinkConstDataAccess::acquire(BaseProc* proc) { + if (mProc) { + if (mAcquired) + mProc->release(); + + mAcquired = false; + mProc = nullptr; + } + + if (proc) + return proc->acquire(*this); + return false; +} + +bool ActorLinkConstDataAccess::hasProc(BaseProc* proc) const { + return mProc == proc; +} + +void ActorLinkConstDataAccess::debugLog(s32, const sead::SafeString&) { + // Intentionally left empty. +} + +} // namespace ksys::act -- cgit v1.2.3