Files
chenzhen 222dda1e43 1,新增“App_ThermalImageSystem”;
2,新增“Apps”;
3,新增“Common”;
4,新增“FileList”;
5,新增“MediaX”;
6,新增“OpenSource”;
7,新增“Samples”;
8,新增“SoftwareBusinessLines”.
2026-02-14 23:03:23 +08:00

93 lines
1.9 KiB
C++

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QComboBox>
#include <QTimer>
#include <QUdpSocket>
#include <thread>
using namespace std;
#include "./../../Common/CommDef.h"
#include "./../../Common/GCycleQueue.h"
#include "./../../Common/OpenGLView.h"
#include "./../../Common/GdImageLib.h"
namespace Ui
{
class MainWindow;
}
#define IMG_WIDTH 320
#define IMG_HEIGHT 256
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget* parent = 0);
~MainWindow();
bool CaptureData(byte* pFrameData, int nFrameDataLen);
private:
void InitOpenGLView();
void Connect();
void Disconnect();
protected:
bool eventFilter(QObject* obj, QEvent* event);
private slots:
void OnButtonClicked();
void OnButtonClicked_Capture();
void OnComboxIndexChanged(int nIndex);
void OnTimer();
private:
void InitStyle();
private:
typedef void (MainWindow::*ThreadRunFunPtr)();
static void ThreadEntry(ThreadRunFunPtr pRunFun, void* pOwner);
void ThreadFun_CaptureDeviceData();
bool StartThread_DealDeviceData();
void StopThread_DealDeviceData();
private:
Ui::MainWindow* ui;
bool m_bWindowMenu;
QPoint m_ptMouse;
bool m_bMousePressed;
byte* m_pTestDataBuffer;
byte* m_pSendDataBuffer;
QTimer m_varTimer;
GCycleQueue m_varCaptureData; // 设备采集数据
//
GCycleQueue m_varY16Data;
//
OpenGLView* m_pOpenGLView[2];
//
bool m_bThreadRunning_CaptureDeviceData;
std::thread* m_ptrThread_CaptureDeviceData;
bool m_bEnableCapture;
int m_nImageMoveIndex;
QUdpSocket* m_pUdpSocket;
};
#endif // MAINWINDOW_H