12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- #ifndef WSSERVER_H
- #define WSSERVER_H
- #include <QObject>
- #include <QList>
- #include <QByteArray>
- #include <QJsonArray>
- #include <QJsonDocument>
- #include <QJsonObject>
- #include <QJsonValue>
- #include <QJsonParseError>
- #include "QtWebSockets/QWebSocketServer"
- #include "QtWebSockets/QWebSocket"
- struct EsmWorkParaStruct
- {
- // 工作状态 0: stby 1: 工作
- uint32_t uRrPowerOn;
- // 0: 全面搜索模式,1 精测向模式
- uint32_t uRrWorkMode;
- //侦察方位中心,机体系,单位:deg
- double dScanAzCentDeg;
- //侦察方位范围,单位:deg
- double dScanAzWidthDeg;
- //侦察俯仰中心,机体系,单位:deg
- double dScanElCentDeg;
- //一个景福所拥有的行数
- uint32_t uLineNumPerFrame;
- //天线扫描速度,单位:deg/s
- float fAntScanVel;
- //频率扫描速度,单位:MHz/s
- float fFreqScanVel;
- //侦收起始频率,如2000MHz
- float fTecBeginFreqMhz;
- //侦收终止频率,如18000MHz
- float fTecEndFreqMhz;
- };
- class WSServer : public QObject
- {
- Q_OBJECT
- public:
- QWebSocketServer *m_pWebSocketServer;
- QList<QWebSocket *> m_clients;
- EsmWorkParaStruct EsmworkPara;
- explicit WSServer(QObject *parent = nullptr, quint16 port = 80);
- virtual ~WSServer();
- signals:
- public slots:
- void onNewConnection();
- QJsonObject processJsonObj(QJsonObject objin);
- void processMessage(QString message);
- void socketDisconnected();
- void returnMessage(QWebSocket *pSender, QJsonObject *jsonObj);
- // 初始化状态接口
- void getInit(QWebSocket *pSender, QJsonObject obj);
- // 平台表接口
- void getPlatformTable(QWebSocket *pSender, QJsonObject obj);
- // 任务管理显控接口
- void getLeadPost(QWebSocket *pSender, QJsonObject obj);
- void getTaskPlan(QWebSocket *pSender, QJsonObject obj);
- // 态势显控接口
- void getLocalMap(QWebSocket *pSender, QJsonObject obj);
- void getRemoteMap(QWebSocket *pSender, QJsonObject obj);
- void getCombineMap(QWebSocket *pSender, QJsonObject obj);
- void getGlobalMap(QWebSocket *pSender, QJsonObject obj);
- // 雷侦、通侦显控接口
- void getESMInstances(QWebSocket *pSender, QJsonObject obj);
- void setESMParams(QWebSocket *pSender, QJsonObject obj);
- void getESMParams(QWebSocket *pSender, QJsonObject obj);
- void getESMStatus(QWebSocket *pSender, QJsonObject obj);
- void getESMData(QWebSocket *pSender, QJsonObject obj);
- void getNavParams(QWebSocket *pSender, QJsonObject obj);
- void setFreePost(QWebSocket *pSender, QJsonObject obj);
- };
- #endif // WSSERVER_H
|