opencv_mv/QMainPro/QMacVisual/frmProItemTab.h

737 lines
27 KiB
C
Raw Normal View History

2023-05-22 09:27:46 +00:00
#pragma once
#pragma execution_character_set("utf-8")
#include <QtWidgets/QWidget>
#include "ui_frmProItemTab.h"
#include <QListWidgetItem>
#include <QTreeWidgetItem>
#include "GlobalVariable.h"
#include "FlowListWidget.h"
#include "QGraphicsViews.h"
#include <QThread>
#pragma region ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>̬<EFBFBD><CCAC>--<2D><>ȡͼ<C8A1><CDBC>
typedef int (*GetImageSource)();
typedef void (*SetImageSource)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD>ROI
typedef int (*GetCreateRoi)();
typedef void (*SetCreateRoi)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
typedef int (*GetCropImage)();
typedef void (*SetCropImage)();
//<2F><>̬<EFBFBD><CCAC>--ͼ<><CDBC><EFBFBD><EFBFBD>ת
typedef int (*GetImageFlip)();
typedef void (*SetImageFlip)();
//<2F><>̬<EFBFBD><CCAC>--Ԥ<><D4A4><EFBFBD><EFBFBD>
typedef int (*GetImageMorphology)();
typedef void (*SetImageMorphology)();
//<2F><>̬<EFBFBD><CCAC>--ͼ<><CDBC><EFBFBD>޸<EFBFBD>
typedef int (*GetImageRepair)();
typedef void (*SetImageRepair)();
//<2F><>̬<EFBFBD><CCAC>--ͼ<><CDBC><EFBFBD><EFBFBD>ת
typedef int (*GetImageRotate)();
typedef void (*SetImageRotate)();
//<2F><>̬<EFBFBD><CCAC>--ͼ<><CDBC>ƴ<EFBFBD><C6B4>
typedef int (*GetImageSplice)();
typedef void (*SetImageSplice)();
//<2F><>̬<EFBFBD><CCAC>--ͼ<><CDBC><EFBFBD><EFBFBD>ʾ
typedef int (*GetImageView)();
typedef void (*SetImageView)();
//<2F><>̬<EFBFBD><CCAC>--͸<>ӱ任
typedef int (*GetPerspectiveTransform)();
typedef void (*SetPerspectiveTransform)();
//<2F><>̬<EFBFBD><CCAC>--ͼ<><CDBC>ϸ<EFBFBD><CFB8>
typedef int (*GetSkeleton)();
typedef void (*SetSkeleton)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
typedef int (*GetExportImage)();
typedef void (*SetExportImage)();
#pragma endregion
#pragma region <20><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6>
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6>
typedef int (*GetBarcodeIdentify)();
typedef void (*SetBarcodeIdentify)();
//<2F><>̬<EFBFBD><CCAC>--<2D>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>
typedef int (*GetBlobDetector)();
typedef void (*SetBlobDetector)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>
typedef int (*GetBrightness)();
typedef void (*SetBrightness)();
//<2F><>̬<EFBFBD><CCAC>--<2D><>ɫʶ<C9AB><CAB6>
typedef int (*GetColorIdentify)();
typedef void (*SetColorIdentify)();
//<2F><>̬<EFBFBD><CCAC>--<2D><>ά<EFBFBD><CEAC>ʶ<EFBFBD><CAB6>
typedef int (*GetQRcodeIdentify)();
typedef void (*SetQRcodeIdentify)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>
typedef int (*GetSelectShape)();
typedef void (*SetSelectShape)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
typedef int (*GetClassifier)();
typedef void (*SetClassifier)();
#pragma endregion
#pragma region <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
//<2F><>̬<EFBFBD><CCAC>--N<><4E><EFBFBD>
typedef int (*GetERTCalibration)();
typedef void (*SetERTCalibration)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD><EFBFBD>
typedef int (*GetMeasureCalibration)();
typedef void (*SetMeasureCalibration)();
#pragma endregion
#pragma region <20><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
//<2F><>̬<EFBFBD><CCAC>--Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
typedef int (*GetCamShiftTrack)();
typedef void (*SetCamShiftTrack)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>
typedef int (*GetLinearCalculation)();
typedef void (*SetLinearCalculation)();
//<2F><>̬<EFBFBD><CCAC>--<2D>Ҷ<EFBFBD>ƥ<EFBFBD><C6A5>
typedef int (*GetTemplateMatch)();
typedef void (*SetTemplateMatch)();
//<2F><>̬<EFBFBD><CCAC>--<2D><>״ƥ<D7B4><C6A5>
typedef int (*GetShapeMatch)();
typedef void (*SetShapeMatch)();
#pragma endregion
#pragma region <20><><EFBFBD>ι<EFBFBD><CEB9><EFBFBD>
//<2F><>̬<EFBFBD><CCAC>--Ѱ<><D1B0>Բ
typedef int (*GetFindCircle)();
typedef void (*SetFindCircle)();
//<2F><>̬<EFBFBD><CCAC>--Ѱ<><D1B0>ֱ<EFBFBD><D6B1>
typedef int (*GetFindLine)();
typedef void (*SetFindLine)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD>Բ
typedef int (*GetFitCircle)();
typedef void (*SetFitCircle)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Բ
typedef int (*GetFitEllipse)();
typedef void (*SetFitEllipse)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1>
typedef int (*GetFitLine)();
typedef void (*SetFitLine)();
//<2F><>̬<EFBFBD><CCAC>--<2D><>ȡ<EFBFBD>߽<EFBFBD><DFBD><EFBFBD>
typedef int (*GetContourPoints)();
typedef void (*SetContourPoints)();
#pragma endregion
#pragma region <20><><EFBFBD>β<EFBFBD><CEB2><EFBFBD>
//<2F><>̬<EFBFBD><CCAC>--<2D><>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD>
typedef int (*GetLineCircle)();
typedef void (*SetLineCircle)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD>߽<EFBFBD><DFBD><EFBFBD>
typedef int (*GetLineLineI)();
typedef void (*SetLineLineI)();
//<2F><>̬<EFBFBD><CCAC>--<2D><>+<2B><>
typedef int (*GetPointLine)();
typedef void (*SetPointLine)();
//<2F><>̬<EFBFBD><CCAC>--<2D><>+<2B><>
typedef int (*GetPointPoint)();
typedef void (*SetPointPoint)();
//<2F><>̬<EFBFBD><CCAC>--Բȱ<D4B2>ڽǶ<DABD>
typedef int (*GetRoundedCorners)();
typedef void (*SetRoundedCorners)();
//<2F><>̬<EFBFBD><CCAC>--<2D><>Ե<EFBFBD><D4B5><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD>
typedef int (*GetEdgeWidthMeasure)();
typedef void (*SetEdgeWidthMeasure)();
#pragma endregion
#pragma region <20><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD>
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD>
typedef int (*GetFlatness)();
typedef void (*SetFlatness)();
#pragma endregion
#pragma region <20>߼<EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD>
//<2F><>̬<EFBFBD><CCAC>--<2D><>չ<EFBFBD><D5B9>
typedef int (*GetExtensionLibrary)();
typedef void (*SetExtensionLibrary)();
//<2F><>̬<EFBFBD><CCAC>--<2D><>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>
typedef int (*GetLogicGoto)();
typedef void (*SetLogicGoto)();
//<2F><>̬<EFBFBD><CCAC>--<2D>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>
typedef int (*GetLogicJudge)();
typedef void (*SetLogicJudge)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
typedef int (*GetLogicJudgeEnd)();
typedef void (*SetLogicJudgeEnd)();
#pragma endregion
#pragma region ͨѶ<CDA8><D1B6><EFBFBD><EFBFBD>
//<2F><>̬<EFBFBD><CCAC>--PLCͨ<43><CDA8>
typedef int (*GetPlcCommunicate)();
typedef void (*SetPlcCommunicate)();
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
typedef int (*GetSerialPort)();
typedef void (*SetSerialPort)();
//<2F><>̬<EFBFBD><CCAC>--TCP/IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
typedef int (*GetSocketTcpServer)();
typedef void (*SetSocketTcpServer)();
//<2F><>̬<EFBFBD><CCAC>--TCP/IP<49>ͻ<EFBFBD><CDBB><EFBFBD>
typedef int (*GetSocketTcpClient)();
typedef void (*SetSocketTcpClient)();
#pragma endregion
#pragma region ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
//<2F><>̬<EFBFBD><CCAC>--<2D><><EFBFBD><EFBFBD>CSV
typedef int (*GetExportCsv)();
typedef void (*SetExportCsv)();
#pragma endregion
class frmProItemTab : public QWidget
{
Q_OBJECT
public:
frmProItemTab(QWidget* parent = Q_NULLPTR);
~frmProItemTab();
private:
Ui::frmProItemTabClass ui;
public:
ToolNameList GetProcessItemNum(const QString itemName);
Toolnterface* GetNewToolDlg(const int mode, const QString sToolName, const ToolNameList toolName);
private:
void ProgramManualFlow();
public slots:
void slot_CyclePro();
void ProgramAutoFlow_B1();
void ProgramAutoFlow_B2();
void ProgramAutoFlow_B3();
void ProgramAutoFlow_B4();
void ProgramAutoFlow_B5();
void ProgramAutoFlow_B6();
void ProgramAutoFlow_B7();
void ProgramAutoFlow_B8();
void ProgramAutoFlow_B9();
void ProgramAutoFlow_B10();
void ProgramAutoFlow_B11();
void ProgramAutoFlow_B12();
void ProgramAutoFlow_B13();
void ProgramAutoFlow_B14();
void ProgramAutoFlow_B15();
void ProgramAutoFlow_B16();
void ProgramAutoFlow_B17();
void ProgramAutoFlow_B18();
void ProgramAutoFlow_B19();
void ProgramAutoFlow_B20();
private slots:
void on_btnAddProFlow_clicked();
void on_btnDelProFlow_clicked();
void on_btnSetProFlow_clicked();
void on_btnRunOnce_clicked();
void on_btnRunCycle_clicked();
void on_btnStop_clicked();
private slots:
void slotItemExpanded(QTreeWidgetItem* item);
void slotItemCollapsed(QTreeWidgetItem* item);
void slotItemPressed(QTreeWidgetItem* item, int column);
private slots:
void slot_ActionProItem(int nType, QString addName, bool isAdd);
void slot_CycleProErr();
void timerEvent();
void slot_Cutover();
void slot_ManualCycleStop();
public slots:
void slot_ToolRunFinish_B1(const QString);
void slot_ToolRunFinish_B2(const QString);
void slot_ToolRunFinish_B3(const QString);
void slot_ToolRunFinish_B4(const QString);
void slot_ToolRunFinish_B5(const QString);
void slot_ToolRunFinish_B6(const QString);
void slot_ToolRunFinish_B7(const QString);
void slot_ToolRunFinish_B8(const QString);
void slot_ToolRunFinish_B9(const QString);
void slot_ToolRunFinish_B10(const QString);
void slot_ToolRunFinish_B11(const QString);
void slot_ToolRunFinish_B12(const QString);
void slot_ToolRunFinish_B13(const QString);
void slot_ToolRunFinish_B14(const QString);
void slot_ToolRunFinish_B15(const QString);
void slot_ToolRunFinish_B16(const QString);
void slot_ToolRunFinish_B17(const QString);
void slot_ToolRunFinish_B18(const QString);
void slot_ToolRunFinish_B19(const QString);
void slot_ToolRunFinish_B20(const QString);
void slot_ToolWrong_B1(const QString);
void slot_ToolWrong_B2(const QString);
void slot_ToolWrong_B3(const QString);
void slot_ToolWrong_B4(const QString);
void slot_ToolWrong_B5(const QString);
void slot_ToolWrong_B6(const QString);
void slot_ToolWrong_B7(const QString);
void slot_ToolWrong_B8(const QString);
void slot_ToolWrong_B9(const QString);
void slot_ToolWrong_B10(const QString);
void slot_ToolWrong_B11(const QString);
void slot_ToolWrong_B12(const QString);
void slot_ToolWrong_B13(const QString);
void slot_ToolWrong_B14(const QString);
void slot_ToolWrong_B15(const QString);
void slot_ToolWrong_B16(const QString);
void slot_ToolWrong_B17(const QString);
void slot_ToolWrong_B18(const QString);
void slot_ToolWrong_B19(const QString);
void slot_ToolWrong_B20(const QString);
void slot_Login();
void slot_Logout();
void slot_ManualRun();
void slot_ManualStop();
void slot_AllCycleRunOnce();
void slot_AllCycleRunContinue();
void slot_AllCycleStop();
void slot_UpdateQTreeWidget(const QString, const QString);
signals:
void sig_TextShow_B1(const QString toolName, const QString nCostTime);
void sig_TextShow_B2(const QString toolName, const QString nCostTime);
void sig_TextShow_B3(const QString toolName, const QString nCostTime);
void sig_TextShow_B4(const QString toolName, const QString nCostTime);
void sig_TextShow_B5(const QString toolName, const QString nCostTime);
void sig_TextShow_B6(const QString toolName, const QString nCostTime);
void sig_TextShow_B7(const QString toolName, const QString nCostTime);
void sig_TextShow_B8(const QString toolName, const QString nCostTime);
void sig_TextShow_B9(const QString toolName, const QString nCostTime);
void sig_TextShow_B10(const QString toolName, const QString nCostTime);
void sig_TextShow_B11(const QString toolName, const QString nCostTime);
void sig_TextShow_B12(const QString toolName, const QString nCostTime);
void sig_TextShow_B13(const QString toolName, const QString nCostTime);
void sig_TextShow_B14(const QString toolName, const QString nCostTime);
void sig_TextShow_B15(const QString toolName, const QString nCostTime);
void sig_TextShow_B16(const QString toolName, const QString nCostTime);
void sig_TextShow_B17(const QString toolName, const QString nCostTime);
void sig_TextShow_B18(const QString toolName, const QString nCostTime);
void sig_TextShow_B19(const QString toolName, const QString nCostTime);
void sig_TextShow_B20(const QString toolName, const QString nCostTime);
void sig_IconShow_B1(const QString toolName, const QPixmap pix);
void sig_IconShow_B2(const QString toolName, const QPixmap pix);
void sig_IconShow_B3(const QString toolName, const QPixmap pix);
void sig_IconShow_B4(const QString toolName, const QPixmap pix);
void sig_IconShow_B5(const QString toolName, const QPixmap pix);
void sig_IconShow_B6(const QString toolName, const QPixmap pix);
void sig_IconShow_B7(const QString toolName, const QPixmap pix);
void sig_IconShow_B8(const QString toolName, const QPixmap pix);
void sig_IconShow_B9(const QString toolName, const QPixmap pix);
void sig_IconShow_B10(const QString toolName, const QPixmap pix);
void sig_IconShow_B11(const QString toolName, const QPixmap pix);
void sig_IconShow_B12(const QString toolName, const QPixmap pix);
void sig_IconShow_B13(const QString toolName, const QPixmap pix);
void sig_IconShow_B14(const QString toolName, const QPixmap pix);
void sig_IconShow_B15(const QString toolName, const QPixmap pix);
void sig_IconShow_B16(const QString toolName, const QPixmap pix);
void sig_IconShow_B17(const QString toolName, const QPixmap pix);
void sig_IconShow_B18(const QString toolName, const QPixmap pix);
void sig_IconShow_B19(const QString toolName, const QPixmap pix);
void sig_IconShow_B20(const QString toolName, const QPixmap pix);
signals:
void sig_ImageShow_B1(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B2(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B3(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B4(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B5(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B6(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B7(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B8(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B9(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B10(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B11(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B12(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B13(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B14(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B15(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B16(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B17(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B18(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B19(QGraphicsViews* img_view, const QImage image);
void sig_ImageShow_B20(QGraphicsViews* img_view, const QImage image);
void sig_CyclePro();
void sig_CyclePro_B1();
void sig_CyclePro_B2();
void sig_CyclePro_B3();
void sig_CyclePro_B4();
void sig_CyclePro_B5();
void sig_CyclePro_B6();
void sig_CyclePro_B7();
void sig_CyclePro_B8();
void sig_CyclePro_B9();
void sig_CyclePro_B10();
void sig_CyclePro_B11();
void sig_CyclePro_B12();
void sig_CyclePro_B13();
void sig_CyclePro_B14();
void sig_CyclePro_B15();
void sig_CyclePro_B16();
void sig_CyclePro_B17();
void sig_CyclePro_B18();
void sig_CyclePro_B19();
void sig_CyclePro_B20();
void sig_CycleProErr();
void sig_CycleRun();
void sig_ManualCycleStop();
void sig_AllCycleStop();
void sig_CycleStop();
void sig_CreateList();
signals:
void sig_Log(QString strMsg);
void sig_InfoClick();
void sig_WarnClick();
void sig_ErrorClick();
private:
//<2F><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD>ʼ<EFBFBD><CABC>
void ProcessTreeInit();
QList<QString> treeList;
int press_index;
int cutover_index;
QString flowPageName_buf;
QString getRandomString();
QVector<QString> fNameList;
public:
QTreeWidgetItem* itemParent;
QMap<QString, QToolBase*> FlowTabMap;
QVector<QTreeWidgetItem*> treeItem = QVector<QTreeWidgetItem*>(20);
QMap<QTreeWidgetItem*, int> m_pro_value; //<2F><>¼<EFBFBD><C2BC><EFBFBD>̶<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
void DeserializeInitProcess(); //<2F><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
QtDragListWidget* TempDragListWidget = nullptr;
QtDragListWidget* TempDragListWidget_B1 = nullptr, * TempDragListWidget_B2 = nullptr, * TempDragListWidget_B3 = nullptr, * TempDragListWidget_B4 = nullptr, * TempDragListWidget_B5 = nullptr, * TempDragListWidget_B6 = nullptr, * TempDragListWidget_B7 = nullptr, * TempDragListWidget_B8 = nullptr, * TempDragListWidget_B9 = nullptr, * TempDragListWidget_B10 = nullptr;
QtDragListWidget* TempDragListWidget_B11 = nullptr, * TempDragListWidget_B12 = nullptr, * TempDragListWidget_B13 = nullptr, * TempDragListWidget_B14 = nullptr, * TempDragListWidget_B15 = nullptr, * TempDragListWidget_B16 = nullptr, * TempDragListWidget_B17 = nullptr, * TempDragListWidget_B18 = nullptr, * TempDragListWidget_B19 = nullptr, * TempDragListWidget_B20 = nullptr;
private:
//<2F><><EFBFBD>߳<EFBFBD>
QThread* Thread_A;
QThread* Thread_B1, * Thread_B2, * Thread_B3, * Thread_B4, * Thread_B5, * Thread_B6, * Thread_B7, * Thread_B8, * Thread_B9, * Thread_B10;
QThread* Thread_B11, * Thread_B12, * Thread_B13, * Thread_B14, * Thread_B15, * Thread_B16, * Thread_B17, * Thread_B18, * Thread_B19, * Thread_B20;
void Begin_Thread_A();
void Begin_Thread_B1(), Begin_Thread_B2(), Begin_Thread_B3(), Begin_Thread_B4(), Begin_Thread_B5(), Begin_Thread_B6(), Begin_Thread_B7(), Begin_Thread_B8(), Begin_Thread_B9(), Begin_Thread_B10();
void Begin_Thread_B11(), Begin_Thread_B12(), Begin_Thread_B13(), Begin_Thread_B14(), Begin_Thread_B15(), Begin_Thread_B16(), Begin_Thread_B17(), Begin_Thread_B18(), Begin_Thread_B19(), Begin_Thread_B20();
bool stop_goto_A, stop_goto_B1, stop_goto_B2, stop_goto_B3, stop_goto_B4, stop_goto_B5, stop_goto_B6, stop_goto_B7, stop_goto_B8, stop_goto_B9, stop_goto_B10;
bool stop_goto_B11, stop_goto_B12, stop_goto_B13, stop_goto_B14, stop_goto_B15, stop_goto_B16, stop_goto_B17, stop_goto_B18, stop_goto_B19, stop_goto_B20;
bool stop_goto_manual_A, stop_goto_manual_B;
QMap<QString, QtDragListWidget*> GetItemState_A;
QMap<QString, QtDragListWidget*> GetItemState_B1, GetItemState_B2, GetItemState_B3, GetItemState_B4, GetItemState_B5, GetItemState_B6, GetItemState_B7, GetItemState_B8, GetItemState_B9, GetItemState_B10;
QMap<QString, QtDragListWidget*> GetItemState_B11, GetItemState_B12, GetItemState_B13, GetItemState_B14, GetItemState_B15, GetItemState_B16, GetItemState_B17, GetItemState_B18, GetItemState_B19, GetItemState_B20;
QVector<QString> FlowProItemListState_B1 = QVector<QString>(100), FlowProItemListState_B2 = QVector<QString>(100), FlowProItemListState_B3 = QVector<QString>(100), FlowProItemListState_B4 = QVector<QString>(100), FlowProItemListState_B5 = QVector<QString>(100), FlowProItemListState_B6 = QVector<QString>(100), FlowProItemListState_B7 = QVector<QString>(100), FlowProItemListState_B8 = QVector<QString>(100), FlowProItemListState_B9 = QVector<QString>(100), FlowProItemListState_B10 = QVector<QString>(100);
QVector<QString> FlowProItemListState_B11 = QVector<QString>(100), FlowProItemListState_B12 = QVector<QString>(100), FlowProItemListState_B13 = QVector<QString>(100), FlowProItemListState_B14 = QVector<QString>(100), FlowProItemListState_B15 = QVector<QString>(100), FlowProItemListState_B16 = QVector<QString>(100), FlowProItemListState_B17 = QVector<QString>(100), FlowProItemListState_B18 = QVector<QString>(100), FlowProItemListState_B19 = QVector<QString>(100), FlowProItemListState_B20 = QVector<QString>(100);
QVector<QString> FlowProItemList_A = QVector<QString>(100);
QVector<QString> FlowProItemListState_A = QVector<QString>(100);
QList<QString> flowNames_A;
QString flowPageName_A;
void AutoRunOnce_B();
void AutoRunStop_B();
QMap<QString, QtDragListWidget*> FlowProMapBuf;
QMap<QString, QToolBase*> FlowTabMapBuf;
QList<int> m_process_buf;
int manual_flow_index;
QTimer* p_timer, * p_autotimer;
bool run_state_A, run_state_B1, run_state_B2, run_state_B3, run_state_B4, run_state_B5, run_state_B6, run_state_B7, run_state_B8, run_state_B9, run_state_B10;
bool run_state_B11, run_state_B12, run_state_B13, run_state_B14, run_state_B15, run_state_B16, run_state_B17, run_state_B18, run_state_B19, run_state_B20;
QString pro_name_B1, pro_name_B2, pro_name_B3, pro_name_B4, pro_name_B5, pro_name_B6, pro_name_B7, pro_name_B8, pro_name_B9, pro_name_B10;
QString pro_name_B11, pro_name_B12, pro_name_B13, pro_name_B14, pro_name_B15, pro_name_B16, pro_name_B17, pro_name_B18, pro_name_B19, pro_name_B20;
public:
void Stop_Thread_A(), Stop_Thread_B();
void Stop_Thread_B1(), Stop_Thread_B2(), Stop_Thread_B3(), Stop_Thread_B4(), Stop_Thread_B5(), Stop_Thread_B6(), Stop_Thread_B7(), Stop_Thread_B8(), Stop_Thread_B9(), Stop_Thread_B10();
void Stop_Thread_B11(), Stop_Thread_B12(), Stop_Thread_B13(), Stop_Thread_B14(), Stop_Thread_B15(), Stop_Thread_B16(), Stop_Thread_B17(), Stop_Thread_B18(), Stop_Thread_B19(), Stop_Thread_B20();
private:
#pragma region ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>ȡͼ<C8A1><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetImageSource getImageSourceState;
SetImageSource setImageSourceState;
int nImageSourceState;
int nImageSourceState_buf;
//<2F><><EFBFBD><EFBFBD>ROI<4F><49><EFBFBD><EFBFBD>
GetCreateRoi getCreateRoiState;
SetCreateRoi setCreateRoiState;
int nCreateRoiState;
int nCreateRoiState_buf;
//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetCropImage getCropImageState;
SetCropImage setCropImageState;
int nCropImageState;
int nCropImageState_buf;
//ͼ<><CDBC><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>
GetImageFlip getImageFlipState;
SetImageFlip setImageFlipState;
int nImageFlipState;
int nImageFlipState_buf;
//Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetImageMorphology getImageMorphologyState;
SetImageMorphology setImageMorphologyState;
int nImageMorphologyState;
int nImageMorphologyState_buf;
//ͼ<><CDBC><EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>
GetImageRepair getImageRepairState;
SetImageRepair setImageRepairState;
int nImageRepairState;
int nImageRepairState_buf;
//ͼ<><CDBC><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>
GetImageRotate getImageRotateState;
SetImageRotate setImageRotateState;
int nImageRotateState;
int nImageRotateState_buf;
//ͼ<><CDBC>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetImageSplice getImageSpliceState;
SetImageSplice setImageSpliceState;
int nImageSpliceState;
int nImageSpliceState_buf;
//ͼ<><CDBC><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
GetImageView getImageViewState;
SetImageView setImageViewState;
int nImageViewState;
int nImageViewState_buf;
QVector<QString> nViewMsgState_B1 = QVector<QString>(100);
QVector<QString> nViewMsgState_B2 = QVector<QString>(100);
QVector<QString> nViewMsgState_B3 = QVector<QString>(100);
QVector<QString> nViewMsgState_B4 = QVector<QString>(100);
QVector<QString> nViewMsgState_B5 = QVector<QString>(100);
QVector<QString> nViewMsgState_B6 = QVector<QString>(100);
QVector<QString> nViewMsgState_B7 = QVector<QString>(100);
QVector<QString> nViewMsgState_B8 = QVector<QString>(100);
QVector<QString> nViewMsgState_B9 = QVector<QString>(100);
QVector<QString> nViewMsgState_B10 = QVector<QString>(100);
QVector<QString> nViewMsgState_B11 = QVector<QString>(100);
QVector<QString> nViewMsgState_B12 = QVector<QString>(100);
QVector<QString> nViewMsgState_B13 = QVector<QString>(100);
QVector<QString> nViewMsgState_B14 = QVector<QString>(100);
QVector<QString> nViewMsgState_B15 = QVector<QString>(100);
QVector<QString> nViewMsgState_B16 = QVector<QString>(100);
QVector<QString> nViewMsgState_B17 = QVector<QString>(100);
QVector<QString> nViewMsgState_B18 = QVector<QString>(100);
QVector<QString> nViewMsgState_B19 = QVector<QString>(100);
QVector<QString> nViewMsgState_B20 = QVector<QString>(100);
bool state_B1 = false, state_B2 = false, state_B3 = false, state_B4 = false, state_B5 = false, state_B6 = false, state_B7 = false, state_B8 = false, state_B9 = false, state_B10 = false;
bool state_B11 = false, state_B12 = false, state_B13 = false, state_B14 = false, state_B15 = false, state_B16 = false, state_B17 = false, state_B18 = false, state_B19 = false, state_B20 = false;
//͸<>ӱ任<D3B1><E4BBBB><EFBFBD><EFBFBD>
GetPerspectiveTransform getPerspectiveTransformState;
SetPerspectiveTransform setPerspectiveTransformState;
int nPerspectiveTransformState;
int nPerspectiveTransformState_buf;
//ͼ<><CDBC>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetSkeleton getSkeletonState;
SetSkeleton setSkeletonState;
int nSkeletonState;
int nSkeletonState_buf;
//<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetExportImage getExportImageState;
SetExportImage setExportImageState;
int nExportImageState;
int nExportImageState_buf;
#pragma endregion
#pragma region <20><><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetBarcodeIdentify getBarcodeIdentifyState;
SetBarcodeIdentify setBarcodeIdentifyState;
int nBarcodeIdentifyState;
int nBarcodeIdentifyState_buf;
//<2F>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetBlobDetector getBlobDetectorState;
SetBlobDetector setBlobDetectorState;
int nBlobDetectorState;
int nBlobDetectorState_buf;
//<2F><><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetBrightness getBrightnessState;
SetBrightness setBrightnessState;
int nBrightnessState;
int nBrightnessState_buf;
//<2F><>ɫʶ<C9AB><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetColorIdentify getColorIdentifyState;
SetColorIdentify setColorIdentifyState;
int nColorIdentifyState;
int nColorIdentifyState_buf;
//<2F><>ά<EFBFBD><CEAC>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetQRcodeIdentify getQRcodeIdentifyState;
SetQRcodeIdentify setQRcodeIdentifyState;
int nQRcodeIdentifyState;
int nQRcodeIdentifyState_buf;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetSelectShape getSelectShape;
SetSelectShape setSelectShape;
int nSelectShapeState;
int nSelectShapeState_buf;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetClassifier getClassifierState;
SetClassifier setClassifierState;
int nClassifierState;
int nClassifierState_buf;
#pragma endregion
#pragma region <20><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
//N<><4E><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
GetERTCalibration getERTCalibrationState;
SetERTCalibration setERTCalibrationState;
int nERTCalibrationState;
int nERTCalibrationState_buf;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB6A8><EFBFBD><EFBFBD>
GetMeasureCalibration getMeasureCalibrationState;
SetMeasureCalibration setMeasureCalibrationState;
int nMeasureCalibrationState;
int nMeasureCalibrationState_buf;
#pragma endregion
#pragma region <20><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
//Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetCamShiftTrack getCamShiftTrackState;
SetCamShiftTrack setCamShiftTrackState;
int nCamShiftTrackState;
int nCamShiftTrackState_buf;
//<2F><><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetLinearCalculation getLinearCalculationState;
SetLinearCalculation setLinearCalculationState;
int nLinearCalculationState;
int nLinearCalculationState_buf;
//<2F>Ҷ<EFBFBD>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetTemplateMatch getTemplateMatchState;
SetTemplateMatch setTemplateMatchState;
int nTemplateMatchState;
int nTemplateMatchState_buf;
//<2F><>״ƥ<D7B4><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetShapeMatch getShapeMatchState;
SetShapeMatch setShapeMatchState;
int nShapeMatchState;
int nShapeMatchState_buf;
#pragma endregion
#pragma region <20><><EFBFBD>ι<EFBFBD><CEB9><EFBFBD>
//Ѱ<><D1B0>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD>
GetFindCircle getFindCircleState;
SetFindCircle setFindCircleState;
int nFindCircleState;
int nFindCircleState_buf;
//Ѱ<><D1B0>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetFindLine getFindLineState;
SetFindLine setFindLineState;
int nFindLineState;
int nFindLineState_buf;
//<2F><><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD>
GetFitCircle getFitCircleState;
SetFitCircle setFitCircleState;
int nFitCircleState;
int nFitCircleState_buf;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD>
GetFitEllipse getFitEllipseState;
SetFitEllipse setFitEllipseState;
int nFitEllipseState;
int nFitEllipseState_buf;
//<2F><><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetFitLine getFitLineState;
SetFitLine setFitLineState;
int nFitLineState;
int nFitLineState_buf;
//<2F><>ȡ<EFBFBD>߽<EFBFBD><DFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetContourPoints getContourPointsState;
SetContourPoints setContourPointsState;
int nContourPointsState;
int nContourPointsState_buf;
#pragma endregion
#pragma region <20><><EFBFBD>β<EFBFBD><CEB2><EFBFBD>
//<2F><>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetLineCircle getLineCircleState;
SetLineCircle setLineCircleState;
int nLineCircleState;
int nLineCircleState_buf;
//<2F><><EFBFBD>߽<EFBFBD><DFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetLineLineI getLineLineIState;
SetLineLineI setLineLineIState;
int nLineLineIState;
int nLineLineIState_buf;
//<2F><>+<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetPointLine getPointLineState;
SetPointLine setPointLineState;
int nPointLineState;
int nPointLineState_buf;
//<2F><>+<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetPointPoint getPointPointState;
SetPointPoint setPointPointState;
int nPointPointState;
int nPointPointState_buf;
//Բȱ<D4B2>ڽǶ<DABD><C7B6><EFBFBD><EFBFBD><EFBFBD>
GetRoundedCorners getRoundedCornersState;
SetRoundedCorners setRoundedCornersState;
int nRoundedCornersState;
int nRoundedCornersState_buf;
//<2F><>Ե<EFBFBD><D4B5><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetEdgeWidthMeasure getEdgeWidthMeasureState;
SetEdgeWidthMeasure setEdgeWidthMeasureState;
int nEdgeWidthMeasureState;
int nEdgeWidthMeasureState_buf;
#pragma endregion
#pragma region <20><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetFlatness getFlatnessState;
SetFlatness setFlatnessState;
int nFlatnessState;
int nFlatnessState_buf;
#pragma endregion
#pragma region <20>߼<EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD>
//<2F><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetExtensionLibrary getExtensionLibraryState;
SetExtensionLibrary setExtensionLibraryState;
int nExtensionLibraryState;
int nExtensionLibraryState_buf;
//<2F><>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetLogicGoto getLogicGotoState;
SetLogicGoto setLogicGotoState;
int nLogicGotoState;
int nLogicGotoState_buf;
//<2F>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetLogicJudge getLogicJudgeState;
SetLogicJudge setLogicJudgeState;
int nLogicJudgeState;
int nLogicJudgeState_buf;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetLogicJudgeEnd getLogicJudgeEndState;
SetLogicJudgeEnd setLogicJudgeEndState;
int nLogicJudgeEndState;
int nLogicJudgeEndState_buf;
#pragma endregion
#pragma region ͨѶ<CDA8><D1B6><EFBFBD><EFBFBD>
//PLCͨ<43><CDA8>
GetPlcCommunicate getPlcCommunicate;
SetPlcCommunicate setPlcCommunicate;
int nPlcCommunicateState;
int nPlcCommunicateState_buf;
//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
GetSerialPort getSerialPort;
SetSerialPort setSerialPort;
int nSerialPortState;
int nSerialPortState_buf;
//TCP/IP<49><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GetSocketTcpServer getSocketTcpServer;
SetSocketTcpServer setSocketTcpServer;
int nSocketTcpServerState;
int nSocketTcpServerState_buf;
//TCP/IP<49>ͻ<EFBFBD><CDBB><EFBFBD>
GetSocketTcpClient getSocketTcpClient;
SetSocketTcpClient setSocketTcpClient;
int nSocketTcpClientState;
int nSocketTcpClientState_buf;
#pragma endregion
#pragma region ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>CSV<53><56><EFBFBD><EFBFBD>
GetExportCsv getExportCsv;
SetExportCsv setExportCsv;
int nExportCsvState;
int nExportCsvState_buf;
#pragma endregion
};