Files
ximeaAirborneSystem/Header_Files/udpserver.h
2022-06-13 15:12:17 +08:00

72 lines
1.4 KiB
C++

#ifndef UDPSERVER_H
#define UDPSERVER_H
#include <iostream>
#include <string.h>
#include <time.h>
#include <ctime>
#include <QCoreApplication>
#include <QUdpSocket>
#include <QObject>
#include <QThread>
#include <QDir>
#include "ximeaimager.h"
#include "sbgrecorder.h"
#include "fileoperation.h"
extern "C"
{
// #include <sbgEComLib.h>
#include <stdlib.h>
}
class UdpServer:public QObject
{
Q_OBJECT
public:
UdpServer();
QThread * m_RecordThread;
QThread * m_RecordSbgThread;
QThread * m_CopyFileThread;
private slots:
void processPendingDatagrams();
private:
QUdpSocket * m_udpSocket;
QHostAddress m_clientIpAddress;
quint16 m_clientPort;
XimeaImager * m_imager;
sbgtc::SbgRecorder * m_sbgRecorder;
FileOperation * m_copyFile;
double getTimeDifferenceBetweenSystemAndSbg(double secondSbg);
void sender(int status);
signals:
void systemStart();
void systemStop();
void startRecordHyperspectralSignal();
void startCopyFileSignal();
void startDeleteFileSignal();
void recordXimeaOnlySignal(double,QString);
public slots:
void onRecordFinished();
void sendSerialPortStatus(int serialPortStatus);
void sendSbgSolutionModeState(int SolutionMode);
void sendSbgAccuracyState(int Accuracy);
void sendXimeaImageStatus(int ximeaImageStatus);
void sendCopyFileStatus(int fileStatus);
};
#endif // UDPSERVER_H