ksys: Rename messaging system members for clarity

This commit is contained in:
Léo Lam 2021-02-03 22:23:39 +01:00
parent df58679dda
commit e237bf4b5d
No known key found for this signature in database
GPG Key ID: 0DF30F9081000741
8 changed files with 46 additions and 35 deletions

View File

@ -88843,11 +88843,11 @@
0x00000071010bfcbc,sub_71010BFCBC,8,_ZNK4ksys7Message14getDestinationEv
0x00000071010bfcc4,sub_71010BFCC4,8,_ZNK4ksys7Message7getTypeEv
0x00000071010bfccc,sub_71010BFCCC,8,_ZNK4ksys7Message11getUserDataEv
0x00000071010bfcd4,sub_71010BFCD4,8,_ZNK4ksys7Message10getField48Ev
0x00000071010bfcd4,sub_71010BFCD4,8,_ZNK4ksys7Message11getBrokerIdEv
0x00000071010bfcdc,sub_71010BFCDC,44,_ZNK4ksys7Message17shouldBeProcessedEv
0x00000071010bfd08,sub_71010BFD08,8,_ZNK4ksys7Message9shouldAckEv
0x00000071010bfd10,sub_71010BFD10,36,_ZN4ksys7Message14setDestinationERKNS_16MesTransceiverIdE
0x00000071010bfd34,sub_71010BFD34,12,_ZN4ksys7Message10setField48ERKj
0x00000071010bfd34,sub_71010BFD34,12,_ZN4ksys7Message11setBrokerIdERKj
0x00000071010bfd40,Struct1A::ctor,56,_ZN4ksys15MessageReceiverC1Ev
0x00000071010bfd78,Struct1A::dtor,28,_ZN4ksys15MessageReceiverD1Ev
0x00000071010bfd94,j__ZdlPv_1195,4,_ZN4ksys15MessageReceiverD0Ev
@ -88878,7 +88878,7 @@
0x00000071010c0064,sub_71010C0064,12,_ZN4ksys17MessageReceiverEx7receiveERKNS_7MessageE
0x00000071010c0070,sub_71010C0070,60,_ZN4ksys17MessageReceiverEx7receiveERKNS_10MessageAckE
0x00000071010c00ac,sub_71010C00AC,32,_ZNK4ksys17MessageReceiverEx9checkFlagEv
0x00000071010c00cc,sub_71010C00CC,16,_ZNK4ksys17MessageReceiverEx12checkCounterEv
0x00000071010c00cc,sub_71010C00CC,16,_ZNK4ksys17MessageReceiverEx15isWaitingForAckEv
0x00000071010c00dc,sub_71010C00DC,48,_ZN4ksys17MessageReceiverEx7setFlagEb
0x00000071010c010c,sub_71010C010C,8,_ZN4ksys17MessageReceiverEx13handleMessageERKNS_7MessageE
0x00000071010c0114,nullsub_4510,4,_ZN4ksys17MessageReceiverEx9handleAckERKNS_10MessageAckE
@ -92685,11 +92685,11 @@
0x00000071011f65c8,nullsub_4673,4,_ZN4ksys22MessageTransceiverBaseD1Ev
0x00000071011f65cc,j__ZdlPv_1225,4,_ZN4ksys22MessageTransceiverBaseD0Ev
0x00000071011f65d0,sub_71011F65D0,28,_ZNK4ksys22MessageTransceiverBase17checkReceiverFlagEv
0x00000071011f65ec,sub_71011F65EC,28,_ZNK4ksys22MessageTransceiverBase20checkReceiverCounterEv
0x00000071011f6608,sub_71011F6608,8,_ZN4ksys22MessageTransceiverBase2m2Ev
0x00000071011f6610,sub_71011F6610,8,_ZN4ksys22MessageTransceiverBase2m3Ev
0x00000071011f6618,sub_71011F6618,8,_ZN4ksys22MessageTransceiverBase2m4Ev
0x00000071011f6620,sub_71011F6620,8,_ZN4ksys22MessageTransceiverBase2m5Ev
0x00000071011f65ec,sub_71011F65EC,28,_ZNK4ksys22MessageTransceiverBase15isWaitingForAckEv
0x00000071011f6608,sub_71011F6608,8,_ZN4ksys22MessageTransceiverBase11sendMessageERKNS_16MesTransceiverIdERKNS_11MessageTypeEPvb
0x00000071011f6610,sub_71011F6610,8,_ZN4ksys22MessageTransceiverBase29sendMessageOnProcessingThreadERKNS_16MesTransceiverIdERKNS_11MessageTypeEPvb
0x00000071011f6618,sub_71011F6618,8,_ZN4ksys22MessageTransceiverBase11sendMessageERNS_14IMessageBrokerERKNS_11MessageTypeEPvb
0x00000071011f6620,sub_71011F6620,8,_ZN4ksys22MessageTransceiverBase29sendMessageOnProcessingThreadERNS_14IMessageBrokerERKNS_11MessageTypeEPvb
0x00000071011f6628,getGlobalMessage,8,_ZN4ksys22MessageTransceiverBase13getDispatcherEv
0x00000071011f6630,GlobalMessage::setGlobalPtr_,16,_ZN4ksys22MessageTransceiverBase19setGlobalDispatcherEPNS_21MessageDispatcherBaseE
0x00000071011f6640,sub_71011F6640,16,_ZNK4ksys22MessageTransceiverBase11getRegisterERNS_14IMessageBrokerE

Can't render this file because it is too large.

View File

@ -33,7 +33,7 @@ void* Message::getUserData() const {
return mUserData;
}
u32 Message::getField48() const {
u32 Message::getBrokerId() const {
return mBrokerId;
}
@ -55,7 +55,7 @@ void Message::setDestination(const MesTransceiverId& dest) {
mDestination = dest;
}
void Message::setField48(const u32& v) {
void Message::setBrokerId(const u32& v) {
mBrokerId = v;
}

View File

@ -50,7 +50,7 @@ public:
mDestination = other.getDestination();
mType = other.getType();
mUserData = other.getUserData();
mBrokerId = other.getField48();
mBrokerId = other.getBrokerId();
mDelayParams = other.mDelayParams;
mShouldAck = other.shouldAck();
return *this;
@ -60,10 +60,10 @@ public:
virtual const MesTransceiverId& getDestination() const;
virtual const MessageType& getType() const;
virtual void* getUserData() const;
virtual u32 getField48() const;
virtual u32 getBrokerId() const;
virtual bool shouldAck() const;
virtual void setDestination(const MesTransceiverId& dest);
virtual void setField48(const u32& v);
virtual void setBrokerId(const u32& v);
virtual bool shouldBeProcessed() const;
bool hasDelayer() const { return mDelayParams.delayer != nullptr; }

View File

@ -194,7 +194,7 @@ void MessageDispatcher::registerTransceiver(MessageReceiverEx& receiver) {
}
void MessageDispatcher::deregisterTransceiver(MessageReceiverEx& receiver) {
if (receiver.checkFlag() && receiver.checkCounter())
if (receiver.checkFlag() && receiver.isWaitingForAck())
mUpdateEndEvent.wait();
const auto lock = sead::makeScopedLock(mCritSection);

View File

@ -12,22 +12,22 @@ int MessageReceiverEx::receive(const Message& message) {
void MessageReceiverEx::receive(const MessageAck& ack) {
handleAck(ack);
--mCounter;
static_cast<void>(mCounter.load());
--mNumPendingAcks;
static_cast<void>(mNumPendingAcks.load());
}
bool MessageReceiverEx::checkFlag() const {
return mFlag && *mFlag == 1;
}
bool MessageReceiverEx::checkCounter() const {
return mCounter > 0;
bool MessageReceiverEx::isWaitingForAck() const {
return mNumPendingAcks > 0;
}
void MessageReceiverEx::setFlag(bool update_counter) {
void MessageReceiverEx::setFlag(bool ack_requested) {
if (mFlag) {
if (update_counter)
mCounter.increment();
if (ack_requested)
mNumPendingAcks.increment();
*mFlag = 1;
}
}

View File

@ -14,8 +14,8 @@ public:
void receive(const MessageAck& ack) override;
bool checkFlag() const;
bool checkCounter() const;
void setFlag(bool update_counter);
bool isWaitingForAck() const;
void setFlag(bool ack_requested);
u8* getFlagPointer() const { return mFlag; }
void setFlagPointer(u8* ptr);
@ -29,7 +29,7 @@ protected:
private:
u8* mFlag{};
sead::Atomic<s32> mCounter;
sead::Atomic<s32> mNumPendingAcks;
};
} // namespace ksys

View File

@ -14,23 +14,29 @@ bool MessageTransceiverBase::checkReceiverFlag() const {
return getReceiver()->checkFlag();
}
bool MessageTransceiverBase::checkReceiverCounter() const {
return getReceiver()->checkCounter();
bool MessageTransceiverBase::isWaitingForAck() const {
return getReceiver()->isWaitingForAck();
}
bool MessageTransceiverBase::m2() {
bool MessageTransceiverBase::sendMessage(const MesTransceiverId& dest, const MessageType& type,
void* user_data, bool ack) {
return false;
}
bool MessageTransceiverBase::m3() {
bool MessageTransceiverBase::sendMessageOnProcessingThread(const MesTransceiverId& dest,
const MessageType& type, void* user_data,
bool ack) {
return false;
}
bool MessageTransceiverBase::m4() {
bool MessageTransceiverBase::sendMessage(IMessageBroker& broker, const MessageType& type,
void* user_data, bool ack) {
return false;
}
bool MessageTransceiverBase::m5() {
bool MessageTransceiverBase::sendMessageOnProcessingThread(IMessageBroker& broker,
const MessageType& type, void* user_data,
bool ack) {
return false;
}

View File

@ -9,17 +9,22 @@ class IMessageBrokerRegister;
class MessageDispatcherBase;
struct MesTransceiverId;
class MessageReceiverEx;
struct MessageType;
class MessageTransceiverBase {
public:
MessageTransceiverBase();
virtual ~MessageTransceiverBase();
bool checkReceiverFlag() const;
bool checkReceiverCounter() const;
virtual bool m2();
virtual bool m3();
virtual bool m4();
virtual bool m5();
bool isWaitingForAck() const;
virtual bool sendMessage(const MesTransceiverId& dest, const MessageType& type, void* user_data,
bool ack);
virtual bool sendMessageOnProcessingThread(const MesTransceiverId& dest,
const MessageType& type, void* user_data, bool ack);
virtual bool sendMessage(IMessageBroker& broker, const MessageType& type, void* user_data,
bool ack);
virtual bool sendMessageOnProcessingThread(IMessageBroker& broker, const MessageType& type,
void* user_data, bool ack);
virtual MessageReceiverEx* getReceiver() const = 0;
MessageDispatcherBase* getDispatcher();
MesTransceiverId* getId() const { return mId; }