summaryrefslogtreecommitdiff
path: root/src/KingSystem/Utils/Thread/MessageTransceiverRxOnly.cpp
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2021-02-05 00:46:13 +0100
committerLéo Lam <leo@leolam.fr>2021-02-05 01:07:19 +0100
commit96612361e6365d8eb731d5f485756b0fb7bcf35a (patch)
tree0d6c8b9b846e27d19f45ef3f301bfd8cbbbab519 /src/KingSystem/Utils/Thread/MessageTransceiverRxOnly.cpp
parente237bf4b5d0556e91309927c99ccbfe4874c1b63 (diff)
ksys: Add MessageTransceiverRxOnly
Diffstat (limited to 'src/KingSystem/Utils/Thread/MessageTransceiverRxOnly.cpp')
-rw-r--r--src/KingSystem/Utils/Thread/MessageTransceiverRxOnly.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/KingSystem/Utils/Thread/MessageTransceiverRxOnly.cpp b/src/KingSystem/Utils/Thread/MessageTransceiverRxOnly.cpp
new file mode 100644
index 00000000..52e94f4b
--- /dev/null
+++ b/src/KingSystem/Utils/Thread/MessageTransceiverRxOnly.cpp
@@ -0,0 +1,23 @@
+#include "KingSystem/Utils/Thread/MessageTransceiverRxOnly.h"
+
+namespace ksys {
+
+MessageTransceiverRxOnly::MessageTransceiverRxOnly(IHandler& handler) : mReceiver(handler) {
+ registerReceiver(mReceiver);
+}
+
+MessageTransceiverRxOnly::~MessageTransceiverRxOnly() {
+ deregisterReceiver(mReceiver);
+}
+
+MessageReceiverEx* MessageTransceiverRxOnly::getReceiver() {
+ return &mReceiver;
+}
+
+MessageTransceiverRxOnly::Receiver::~Receiver() = default;
+
+int MessageTransceiverRxOnly::Receiver::handleMessage(const Message& message) {
+ return mHandler.handleMessage(message);
+}
+
+} // namespace ksys