File indexing completed on 2024-05-12 05:39:52
0001 #ifndef MESSAGEDISPATCHER_H 0002 #define MESSAGEDISPATCHER_H 0003 0004 #include "channelmodel.h" 0005 #include "network_global.h" 0006 #include "networkmessage.h" 0007 #include "serverconnection.h" 0008 #include <QByteArray> 0009 #include <QObject> 0010 0011 class NetworkLink; 0012 class NetworkMessageReader; 0013 /** 0014 * @brief The MessageDispatcher class 0015 */ 0016 class NETWORK_EXPORT MessageDispatcher : public QObject 0017 { 0018 Q_OBJECT 0019 0020 public: 0021 explicit MessageDispatcher(QObject* parent= nullptr); 0022 0023 static QString cat2String(NetworkMessageHeader* head); 0024 static QString act2String(NetworkMessageHeader* head); 0025 signals: 0026 void messageForAdmin(NetworkMessageReader*, Channel* channel, ServerConnection* emitter); 0027 void playerNameChanged(const QString& uuid, const QString& name); 0028 0029 public slots: 0030 void dispatchMessage(QByteArray msg, Channel* channel, ServerConnection* emitter); 0031 }; 0032 0033 #endif // MESSAGEDISPATCHER_H