Files
ds-628/BaseModules/Hd_CameraModule_HIK3_2/pbglobalobject.h
T
2024-09-27 14:31:22 +08:00

63 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) : QObject(parent), type1(settype) {}
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, CAMERA2D, CAMERA2_5D, CAMERA3D, PLC, COM }famliy;
//小类
int type1 = -1; //对应哪个品牌相机(触发方式)/通信
int type2 = -1;
int type3 = -1;
//名称
QString name = "";
int id;
signals:
void trigged(bool);
private:
};
#endif // PBGLOBALOBJECT_H