56 lines
1.2 KiB
C++
56 lines
1.2 KiB
C++
#ifndef TCPEQUIPMENT_H
|
|
#define TCPEQUIPMENT_H
|
|
|
|
#define TCP_SERVER_PORT 23333
|
|
|
|
#include <QTcpServer>
|
|
#include <QTcpSocket>
|
|
#include <QObject>
|
|
#include <QMap>
|
|
#include <QHostAddress>
|
|
#include <QDebug>
|
|
#include <CommomFunc/tool.h>
|
|
#include <QByteArray>
|
|
#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<QString,QTcpSocket*> clientList;
|
|
QTcpServer* server;
|
|
QString listenIp;
|
|
bool serverFlag;
|
|
};
|
|
|
|
#endif // TCPEQUIPMENT_H
|