RUMsgSubscriber.h 667 B

123456789101112131415161718192021222324252627
  1. //消息订阅者
  2. #ifndef RUMsgSubscriber_h
  3. #define RUMsgSubscriber_h
  4. #include "RUDefine.h"
  5. #include "RUMsg.h"
  6. NS_RU_BEGIN
  7. class RUMsgCenter;
  8. class MsgSubscriber
  9. {
  10. public:
  11. MsgSubscriber() = default;
  12. ~MsgSubscriber() = default;
  13. virtual void subscribe(std::string key4MsgCenter, kMsgTopic msgTopic, int priority = 0);
  14. virtual void unsubscribe(std::string key4MsgCenter, kMsgTopic msgTopic);
  15. virtual void handleMsg(Msg* msg) = 0;
  16. virtual void setPriority(kMsgTopic msgTopic, int priority);
  17. virtual int getPriority(kMsgTopic msgTopic);
  18. private:
  19. std::unordered_map<int, int> _priorityMap;
  20. };
  21. NS_RU_END
  22. #endif /* MsgSubscriber_h */