mirror of
https://github.com/zeldaret/botw
synced 2026-07-02 11:45:59 -04:00
ksys: Rename messaging system members for clarity
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
@@ -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; }
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
@@ -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; }
|
||||
|
||||
Reference in New Issue
Block a user