#ifndef PBGLOBALOBJECT_H #define PBGLOBALOBJECT_H #include #include #include 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 &) { return true; } virtual QMap parameters() = 0; virtual bool init() { return true; } virtual bool setData(const vector &, const QStringList &) { return true; } virtual bool data(std::vector &, 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