#ifndef TCPEQUIPMENT_H #define TCPEQUIPMENT_H #define TCP_SERVER_PORT 23333 #include #include #include #include #include #include #include #include #include "XYComFunc_global.h" class XYCOMFUNC_EXPORT TcpEquipment:public QObject { Q_OBJECT public: TcpEquipment(); TcpEquipment(QString IP); Q_INVOKABLE void setIP(QString IP); Q_INVOKABLE void startServer(); Q_INVOKABLE void startServer(QString IP); Q_INVOKABLE void stopServer(); Q_INVOKABLE void send2All(QString strMsg); Q_INVOKABLE void send2All(QByteArray buffer); Q_INVOKABLE void send2One(QString strMsg,QString ip); Q_INVOKABLE void send2One(QByteArray buffer,QString ip); signals: void dateReceived(QString strIP,int iPort,QByteArray buffer); void stateChanged(QString strStateInfo); public slots: void onServerAcceptError(); void onClientConnected(); void onClientDataReceived(); void onClinetDisconnected(); protected: virtual void dealRev(QString strIP,int iPort,QByteArray buffer); private: QMap clientList; QTcpServer* server; QString listenIp; bool serverFlag; }; #endif // TCPEQUIPMENT_H