#pragma once

#include <QtWidgets/QMainWindow>
#include "ui_CigaretteSingle.h"

#include "workthread.h"
#include "savethread.h"
#include "common.h"
#include <modbus.h>

#include <QTimer>
#include <QSignalMapper>
#include <QString>
#include <QFileDialog>

#include <hikcamera.h>
#include "alg.h"

QT_BEGIN_NAMESPACE
namespace Ui { class CigaretteSingleClass; };
QT_END_NAMESPACE

class CigaretteSingle : public QMainWindow
{
    Q_OBJECT

private slots:
    void DisplayImage(cv::Mat m);
    void event_per_second();
    void on_pushButton_mtest_released();
    void on_pushButton_selectregion_released();
public:
    CigaretteSingle(QWidget *parent = nullptr);
    ~CigaretteSingle();

public:
    SaveThread saveThread;
    WorkThread work_thread;

public:
    QDateTime g_ts_start;	//系统启动时间
    //定时器列表
    QTimer* m_pTimer;		//每秒任务定时器

    Alg* m_alg_ptr;

    HIKCamera* HikControllerPtr = nullptr;

private:
    Ui::CigaretteSingleClass *ui;
};
