summaryrefslogtreecommitdiff
path: root/src/KingSystem/Utils/Thread/MessageReceiver.h
blob: f3533eb1fd39ce83ea610c5ad0ff55059e0cbe52 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#pragma once

#include <basis/seadTypes.h>
#include "KingSystem/Utils/Thread/MessageTransceiverId.h"

namespace ksys {

class Message;
class MessageAck;

class MessageReceiver {
public:
    MessageReceiver();
    virtual ~MessageReceiver();
    virtual MesTransceiverId* getId();
    virtual int receive(const Message& message);
    virtual void receive(const MessageAck& ack);
    virtual void setQueueId(const u32& id) { mTransceiverId.queue_id = id; }

protected:
    MesTransceiverId mTransceiverId;

private:
    static u32 sId;
};

}  // namespace ksys