mirror of https://github.com/zeldaret/botw.git
ksys: Start adding MessageTransceiver
This commit is contained in:
parent
da6709ab83
commit
2e4ecb41cf
|
|
@ -92665,7 +92665,7 @@
|
|||
0x00000071011f5f50,sub_71011F5F50,20,_ZN4ksys21MessageDispatcherBaseC2Ev
|
||||
0x00000071011f5f64,nullsub_4672,4,_ZN4ksys21MessageDispatcherBaseD1Ev
|
||||
0x00000071011f5f68,j__ZdlPv_1224,4,_ZN4ksys21MessageDispatcherBaseD0Ev
|
||||
0x00000071011f5f6c,GlobalMessage::setGlobalPtr,4,
|
||||
0x00000071011f5f6c,GlobalMessage::setGlobalPtr,4,_ZN4ksys21MessageDispatcherBase19setAsGlobalInstanceEv
|
||||
0x00000071011f5f70,sub_71011F5F70,112,_ZNK4ksys21MessageDispatcherBase27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE
|
||||
0x00000071011f5fe0,sub_71011F5FE0,92,_ZNK4ksys21MessageDispatcherBase18getRuntimeTypeInfoEv
|
||||
0x00000071011f603c,j_j_Struct1A::dtor_0,4,
|
||||
|
|
@ -92681,17 +92681,17 @@
|
|||
0x00000071011f6474,sub_71011F6474,8,
|
||||
0x00000071011f647c,sub_71011F647C,204,
|
||||
0x00000071011f6548,sub_71011F6548,92,
|
||||
0x00000071011f65a4,getGlobalMessagePtr,36,
|
||||
0x00000071011f65c8,nullsub_4673,4,
|
||||
0x00000071011f65cc,j__ZdlPv_1225,4,
|
||||
0x00000071011f65a4,getGlobalMessagePtr,36,_ZN4ksys18MessageTransceiverC1Ev
|
||||
0x00000071011f65c8,nullsub_4673,4,_ZN4ksys18MessageTransceiverD1Ev
|
||||
0x00000071011f65cc,j__ZdlPv_1225,4,_ZN4ksys18MessageTransceiverD0Ev
|
||||
0x00000071011f65d0,sub_71011F65D0,28,
|
||||
0x00000071011f65ec,sub_71011F65EC,28,
|
||||
0x00000071011f6608,sub_71011F6608,8,
|
||||
0x00000071011f6610,sub_71011F6610,8,
|
||||
0x00000071011f6618,sub_71011F6618,8,
|
||||
0x00000071011f6620,sub_71011F6620,8,
|
||||
0x00000071011f6628,getGlobalMessage,8,
|
||||
0x00000071011f6630,GlobalMessage::setGlobalPtr_,16,
|
||||
0x00000071011f6608,sub_71011F6608,8,_ZN4ksys18MessageTransceiver2m2Ev
|
||||
0x00000071011f6610,sub_71011F6610,8,_ZN4ksys18MessageTransceiver2m3Ev
|
||||
0x00000071011f6618,sub_71011F6618,8,_ZN4ksys18MessageTransceiver2m4Ev
|
||||
0x00000071011f6620,sub_71011F6620,8,_ZN4ksys18MessageTransceiver2m5Ev
|
||||
0x00000071011f6628,getGlobalMessage,8,_ZN4ksys18MessageTransceiver13getDispatcherEv
|
||||
0x00000071011f6630,GlobalMessage::setGlobalPtr_,16,_ZN4ksys18MessageTransceiver19setGlobalDispatcherEPNS_21MessageDispatcherBaseE
|
||||
0x00000071011f6640,sub_71011F6640,16,
|
||||
0x00000071011f6650,j_j_Struct1A::dtor_1,4,
|
||||
0x00000071011f6654,sub_71011F6654,36,
|
||||
|
|
|
|||
|
Can't render this file because it is too large.
|
|
|
@ -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
|
||||
Loading…
Reference in New Issue