#pragma once //#include "GlobalDefine.h" #include "layserDefine.h" #include #include #include #include #include #include #include "Pci365CardMgr.h" using namespace std; class CLaipuVbDllMgr; //普通打标机 class _declspec(dllexport) CMarkCtrl { public: CMarkCtrl(void); ~CMarkCtrl(void); void StartMarkPci(vector> &vec); void StartMarkSemiVb(vector> &DataVec); void MarkPciThreadExt(); void MarkPciSemiThread(); void SetConfigMarkParam(double su, float ms, float mms, long tcf, long tch, long tof, long toh, long dr_time, float laserfre, float laserpower, float maxlaserpower); std::thread& GetThreadObj() {return m_markThread;} void OpenLaser(bool isOpen); private: void SetMarkParam(CLaipuVbDllMgr &LaipuVbDll); private: bool m_bMarkPciThreadRunning;//mark 线程是否正在执行 vector> *pData; std::thread m_markThread; double m_su = 1.170;//振镜步长um float m_ms = 100;//标刻速度mm/s float m_mms = 500;//空移速度mm/s long m_tcf = 1;//关激光前延时us long m_tch = 341;//关激光后延时us long m_tof = 341;//开激光前延时us long m_toh = 1;//开激光后延时us long m_dr_time = 30;//拐点延时 us float m_laserfre = 30;//激光频率khz float m_laserpower = 10;//激光功率 float m_maxlaserpower = 100;//激光最大功率 vector> m_backMarkData; std::shared_ptr laipuVbDLLPtr; public: int m_markTimes = 1;//加工次数 int m_pauseDelay; int m_pauseFirstDelay; };