Files
2024-10-17 16:37:42 +08:00

65 lines
1.5 KiB
C++

#ifndef PBGLOBALOBJECT_H
#define PBGLOBALOBJECT_H
#include <QObject>
#include<opencv2/opencv.hpp>
#include <opencv.hpp>
using namespace std;
//type对应的相机、触发方式
#define HIK_Hard 0 //海康
#define HIK_Soft 1
#define Basler_Hard 2
#define Basler_Soft 3
#define DaHua_Hard 4
#define DaHua_Soft 5
#define DaHeng_Hard 6
#define DaHeng_Soft 7
#define Dalsa 8
#define DalsaDAQ_Hard 9
#define DalsaDAQ_Soft 10
#define ITEK_Hard 11
#define ITEK_Soft 12
#define OPT_Hard 13
#define OPT_Soft 14
#define Keyence_25D 15
#define Keyence_3D 16
#define LMI_3D 17
#define Sszn_3D 18
#define ReadImage 1000
class PbGlobalObject : public QObject
{
Q_OBJECT
public:
explicit PbGlobalObject(int settype, QObject* parent = nullptr) {}
virtual ~PbGlobalObject() {}
virtual bool setParameter(const QMap<QString, QString> &) { return true; }
virtual QMap<QString,QString> parameters() = 0;
virtual bool init() { return true; }
virtual bool setData(const vector<cv::Mat> &, const QStringList &) { return true; }
virtual bool data(std::vector<cv::Mat> &, QStringList &) { return true; }
public:
//大类
enum PGOFAMLIY{GLOBALVARIABLE = 0, CAMERA, CON}famliy;
//小类
//
int type = -1;//对应哪个品牌相机(触发方式)/通信
//当前id
int id = -1;//对应总的模块序号
//参数个数
int paramaterNuml = 0;
//相机key
QString cameraKey="";
signals:
void trigged(bool);
private:
};
#endif // PBGLOBALOBJECT_H