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
8 changed files with 46 additions and 35 deletions
+2 -2
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;
}
+3 -3
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; }
@@ -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; }