Files
ds-628/BaseModules/Hd_LogicDll_module/Hd_LogicDll_module.h
T

71 lines
1.8 KiB
C++

#ifndef Hd_LogicDll_module_H
#define Hd_LogicDll_module_H
#include <QtCore/qglobal.h>
#include<opencv2/opencv.hpp>
#include <opencv.hpp>
#include <QByteArray>
#include <QDebug>
#include<iostream>
#include <Windows.h>
#include <time.h>
#include <QScopedPointer>
#include <QThread>
#include "Logic_processtask.h"
#include "base_Logic.h"
#pragma execution_character_set("utf-8")
class Hd_LogicDll_module : public base_Logic
{
Q_OBJECT
//对外接口
public:
explicit Hd_LogicDll_module();
~Hd_LogicDll_module();
bool setJsonObject(QJsonObject);
bool checkJsonObject(QJsonObject, QString&);
bool initTask();
bool startTask();
bool stopTask();
bool exitTask();
bool restartTask();
bool get_sendImgStruct(QQueue< sendImgStruct>&);
bool sendPLC(QString cmd);
bool reLoadJsonSetParameter(QStringList moduleKeyList);
//内部使用
private:
Logic_processtask* my_task;
QMutex* sendImgStructMutex = nullptr;
//QQueue< sendImgStruct> queue_sendImgStruct;
void check_LsendImgStruct();
//bool check_cmeraCfg();
//QJsonObject loadJsonCfg(QString);
//对外接口
signals:
void Logic_sendTcpStatus(bool);
void Logic_writeData(QString, QString, QString, QByteArray);
void Logic_cameraDisconnect(QString msg, bool status);
void Logic_CommunicationDisconnect(QString msg, bool status);
private slots:
void processtask_sendTcpStatus(bool flag);
void processtask_writeData(QString key, QString cameraName, QString snInfo, QByteArray byteArray);
void processtask_cameraDisconnect(QString msg, bool status);
void processtask_CommunicationDisconnect(QString msg, bool status);
};
extern "C"
{
Q_DECL_EXPORT Hd_LogicDll_module* create();
Q_DECL_EXPORT void destory(Hd_LogicDll_module* ptr);
}
#endif // Hd_LogicDll_module_H