mirror of
https://github.com/zeldaret/botw
synced 2026-07-27 06:45:02 -04:00
ksys: Start adding MessageTransceiver
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
|
||||
#include "KingSystem/ActorSystem/actAiClassDef.h"
|
||||
#include "KingSystem/ActorSystem/actBaseProcLink.h"
|
||||
#include "KingSystem/Utils/Thread/MessageTransceiver.h"
|
||||
#include "KingSystem/Utils/Thread/MessageTransceiverId.h"
|
||||
#include "KingSystem/Utils/Types.h"
|
||||
|
||||
namespace ksys {
|
||||
|
||||
@@ -9,7 +9,10 @@ target_sources(uking PRIVATE
|
||||
Thread/ManagedTaskHandle.h
|
||||
Thread/MessageDispatcherBase.cpp
|
||||
Thread/MessageDispatcherBase.h
|
||||
Thread/MessageTransceiver.cpp
|
||||
Thread/MessageTransceiver.h
|
||||
Thread/MessageTransceiverId.cpp
|
||||
Thread/MessageTransceiverId.h
|
||||
Thread/Task.cpp
|
||||
Thread/Task.h
|
||||
Thread/TaskData.h
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#include "KingSystem/Utils/Thread/MessageDispatcherBase.h"
|
||||
#include "KingSystem/Utils/Thread/MessageTransceiver.h"
|
||||
|
||||
namespace ksys {
|
||||
|
||||
@@ -6,4 +7,8 @@ MessageDispatcherBase::MessageDispatcherBase() = default;
|
||||
|
||||
MessageDispatcherBase::~MessageDispatcherBase() = default;
|
||||
|
||||
void MessageDispatcherBase::setAsGlobalInstance() {
|
||||
MessageTransceiver::setGlobalDispatcher(this);
|
||||
}
|
||||
|
||||
} // namespace ksys
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
#include "KingSystem/Utils/Thread/MessageTransceiver.h"
|
||||
|
||||
namespace ksys {
|
||||
|
||||
MessageTransceiver::MessageTransceiver() = default;
|
||||
|
||||
MessageTransceiver::~MessageTransceiver() = default;
|
||||
|
||||
bool MessageTransceiver::m2() {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool MessageTransceiver::m3() {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool MessageTransceiver::m4() {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool MessageTransceiver::m5() {
|
||||
return false;
|
||||
}
|
||||
|
||||
MessageDispatcherBase* MessageTransceiver::getDispatcher() {
|
||||
return mDispatcher;
|
||||
}
|
||||
|
||||
void MessageTransceiver::setGlobalDispatcher(MessageDispatcherBase* dispatcher) {
|
||||
sDispatcher = dispatcher;
|
||||
}
|
||||
|
||||
} // namespace ksys
|
||||
@@ -2,34 +2,31 @@
|
||||
|
||||
#include <basis/seadTypes.h>
|
||||
|
||||
#include "KingSystem/Utils/Types.h"
|
||||
|
||||
namespace ksys {
|
||||
|
||||
struct MesTransceiverId {
|
||||
MesTransceiverId() { reset(); }
|
||||
~MesTransceiverId() { reset(); }
|
||||
class MessageDispatcherBase;
|
||||
struct MesTransceiverId;
|
||||
|
||||
void reset() {
|
||||
_0 = -1;
|
||||
_4 = -1;
|
||||
_8 = nullptr;
|
||||
_10 = nullptr;
|
||||
}
|
||||
class MessageTransceiver {
|
||||
public:
|
||||
MessageTransceiver();
|
||||
virtual ~MessageTransceiver();
|
||||
bool checkX();
|
||||
bool checkY();
|
||||
virtual bool m2();
|
||||
virtual bool m3();
|
||||
virtual bool m4();
|
||||
virtual bool m5();
|
||||
virtual void* getSomePtr() = 0;
|
||||
MessageDispatcherBase* getDispatcher();
|
||||
|
||||
MesTransceiverId& operator=(const MesTransceiverId& other) {
|
||||
_0 = other._0;
|
||||
_4 = other._4;
|
||||
_8 = other._8;
|
||||
_10 = other._10;
|
||||
return *this;
|
||||
}
|
||||
static void setGlobalDispatcher(MessageDispatcherBase* dispatcher);
|
||||
|
||||
s32 _0{};
|
||||
s32 _4{};
|
||||
void* _8{};
|
||||
void* _10{};
|
||||
private:
|
||||
static MessageDispatcherBase* sDispatcher;
|
||||
|
||||
MessageDispatcherBase* mDispatcher = sDispatcher;
|
||||
MesTransceiverId* mId{};
|
||||
};
|
||||
KSYS_CHECK_SIZE_NX150(MesTransceiverId, 0x18);
|
||||
|
||||
} // namespace ksys
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
#include "KingSystem/Utils/Thread/MessageTransceiverId.h"
|
||||
@@ -0,0 +1,35 @@
|
||||
#pragma once
|
||||
|
||||
#include <basis/seadTypes.h>
|
||||
|
||||
#include "KingSystem/Utils/Types.h"
|
||||
|
||||
namespace ksys {
|
||||
|
||||
struct MesTransceiverId {
|
||||
MesTransceiverId() { reset(); }
|
||||
~MesTransceiverId() { reset(); }
|
||||
|
||||
void reset() {
|
||||
_0 = -1;
|
||||
_4 = -1;
|
||||
_8 = nullptr;
|
||||
_10 = nullptr;
|
||||
}
|
||||
|
||||
MesTransceiverId& operator=(const MesTransceiverId& other) {
|
||||
_0 = other._0;
|
||||
_4 = other._4;
|
||||
_8 = other._8;
|
||||
_10 = other._10;
|
||||
return *this;
|
||||
}
|
||||
|
||||
s32 _0{};
|
||||
s32 _4{};
|
||||
void* _8{};
|
||||
void* _10{};
|
||||
};
|
||||
KSYS_CHECK_SIZE_NX150(MesTransceiverId, 0x18);
|
||||
|
||||
} // namespace ksys
|
||||
Reference in New Issue
Block a user