#include #include "DroneCheckConnRun.h" #include "protocol/ByteUtilsLowBefore.h" #include "QGCApplication.h" #include "GDUDroneManager.h" #include "GduCmdGenerator.h" #include "GDUFlightInfo.h" #include "protocol/ProtocolEnum.h" #include "EasyLink/easylinkmanager.h" DroneCheckConnRun::DroneCheckConnRun(QObject *parent) : QThread(parent) { } void DroneCheckConnRun::setupSendDroneConnectionCmdBlock(SendDroneConnectionCmdBlock block) { _sendBlock = block; } void DroneCheckConnRun::run() { GDUFlightInfo *flightInfo = qgcApp()->toolbox()->gduDroneManager()->gduFlightInfo(); GDUCmdGenerator *cmdGenerator = qgcApp()->toolbox()->gduDroneManager()->cmdGenerator; EasyLinkManager *easyLinkManager = qgcApp()->toolbox()->easyLinkManager(); while(true){ QThread::msleep(1000); if(flightInfo->drone_connect_state != DroneConnState::DroneConn_None){ continue; } QByteArray frameData = cmdGenerator->CmdsendNPSConnect().data; if(_sendBlock){ _sendBlock(frameData); }else{ easyLinkManager->writeCmdDataFull(frameData,QHostAddress("145.192.1.64"),7894); //qDebug() <<"write connect msg " << frameData.toHex(); } } }