|
|
|
|
#include "StdAfx.h"
|
|
|
|
|
#include "CommonFlowMgr.h"
|
|
|
|
|
#include "MsgBox.h"
|
|
|
|
|
#include "WorkCmdInvoker.h"
|
|
|
|
|
#include "Propertie.h"
|
|
|
|
|
#include "PropertieMgr.h"
|
|
|
|
|
#include "AuthorityMgr.h"
|
|
|
|
|
#include "LogMgr.h"
|
|
|
|
|
#include "CStringFuc.h"
|
|
|
|
|
#include "Laser.h"
|
|
|
|
|
#include "MarkAreaMgr.h"
|
|
|
|
|
#include "ObjComponentMgr.h"
|
|
|
|
|
#include "MeasureMgr.h"
|
|
|
|
|
#include "ExceptionMsg.h"
|
|
|
|
|
#include "FileMgr.h"
|
|
|
|
|
#include "DrawSimpleShape.h"
|
|
|
|
|
#include "LaiPuLaserView.h"
|
|
|
|
|
#include "Layer.h"
|
|
|
|
|
#include "ObjContainer.h"
|
|
|
|
|
#include "WorkRecord.h"
|
|
|
|
|
#include "EncryptionMgr.h"
|
|
|
|
|
#include "WorkFileMgr.h"
|
|
|
|
|
#include "ProgramLaserTuiHuo.h"
|
|
|
|
|
#include "ProgressMgr.h"
|
|
|
|
|
#include "WorkCmdTimingProgress.h"
|
|
|
|
|
#include "TimingProgressMgr.h"
|
|
|
|
|
#include "WaferRecipeDataMgr.h"
|
|
|
|
|
#include "CommomText.h"
|
|
|
|
|
#include "RecipeMgr.h"
|
|
|
|
|
#include "WaferRecipeDataMgr.h"
|
|
|
|
|
#include "LaserPowCheckMgr.h"
|
|
|
|
|
#include "WorkAreaMgr.h"
|
|
|
|
|
#include "ModuleDeviceMgr.h"
|
|
|
|
|
#include "CriticalSection.h"
|
|
|
|
|
|
|
|
|
|
UINT AutomationWorkFlowStartThread(LPVOID pParam)
|
|
|
|
|
{
|
|
|
|
|
CCommonFlowMgr *p = (CCommonFlowMgr *)pParam;
|
|
|
|
|
p->StartAutomationWorkFlow();
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define MAX_AREA_SIZE 10000 //<2F><><EFBFBD><EFBFBD>area <20>ķ<EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
#define NOT_MOVE_Z_COORD 99999
|
|
|
|
|
#define ORG_POS_MAX_ADJUST_VAL 10//ԭ<><D4AD>λ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
#define SPOT_METER_LASER_FRE 1000 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>Ĺ̶<C4B9><CCB6><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>
|
|
|
|
|
#define SPOT_METER_LASER_PULSE_DELAY 0 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>Ĺ̶<C4B9><CCB6><EFBFBD><EFBFBD><EFBFBD>˫<EFBFBD><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
|
|
|
|
|
|
|
|
|
|
CCommonFlowMgr *gCommonFlowMgr = new CCommonFlowMgr;
|
|
|
|
|
CCommonFlowMgr::CCommonFlowMgr(void)
|
|
|
|
|
{
|
|
|
|
|
m_bIniPlatfrom = true;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨
|
|
|
|
|
m_bIniConfirmMsgBox = true;//<2F>Ƿ<C7B7><F1B5AFB3><EFBFBD>ʼ<EFBFBD><CABC>ȷ<EFBFBD>϶Ի<CFB6><D4BB><EFBFBD>
|
|
|
|
|
m_bIniMotorZ = false;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Z
|
|
|
|
|
m_bInitedToProductPt = false;//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɺ<EFBFBD><C9BA>Ƿ<C7B7><F1B7B5BB><EFBFBD><EFBFBD>ϵ<EFBFBD>
|
|
|
|
|
|
|
|
|
|
m_bSetLightState = true;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>þ<EFBFBD>ʾ<EFBFBD><CABE>״̬
|
|
|
|
|
m_bConnectObj = true;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD>obj <20><><EFBFBD><EFBFBD>
|
|
|
|
|
m_bNeedInit = false;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD>Ҫ<EFBFBD><D2AA>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>в<EFBFBD><D0B2><EFBFBD>
|
|
|
|
|
m_bShowErrMsg = true;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
|
|
|
|
|
m_bStopWorkMsg = true;//<2F><><EFBFBD><EFBFBD>ֹͣ<CDA3><D6B9>ť<EFBFBD><C5A5><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD>Ի<EFBFBD><D4BB><EFBFBD>
|
|
|
|
|
m_bShowStartMsg = true;//<2F>ڿ<EFBFBD>ʼ<EFBFBD>ӹ<EFBFBD>ʱ<EFBFBD>Ƿ<EFBFBD><C7B7>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
|
|
|
|
|
m_MotorZSafeCoord = 10;//Z <20><><EFBFBD>İ<EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
|
|
|
|
|
m_DrawLineGapCnt = 1;//ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DFBB><EFBFBD>һ<EFBFBD><D2BB>
|
|
|
|
|
m_OneLineScanSpeed = 150;//<2F><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD>ߵ<EFBFBD><DFB5>ٶ<EFBFBD>
|
|
|
|
|
m_TransferTestDelay = 10000;//<2F><>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱms
|
|
|
|
|
m_OneLineAnnealTimeAdjsut = 150;//<2F><><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD><DFB6>˻<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
m_MoveTestDelay = 300;//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱms
|
|
|
|
|
m_bXyMoveTesting = false;
|
|
|
|
|
m_bLaserSpotMarkMode = false;//<2F><>ǰ<EFBFBD>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
|
|
|
|
|
m_LightAlamTime = 10;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
|
|
|
|
m_bKeepJobN2Air = false;//<2F><>job <20><><EFBFBD><EFBFBD>ʱһֱ<D2BB><D6B1><EFBFBD>ִ<EFBFBD><D6B4><EFBFBD>
|
|
|
|
|
m_bCtrlN2Air = true;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>Թر<D4B9>)
|
|
|
|
|
|
|
|
|
|
m_bAutomationWorking = false;
|
|
|
|
|
m_bStopAutomationWork = false;
|
|
|
|
|
}
|
|
|
|
|
CCommonFlowMgr::~CCommonFlowMgr(void)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
CString CCommonFlowMgr::GetParDirName()
|
|
|
|
|
{
|
|
|
|
|
CString DirName = _T("CommonFlowMgr");
|
|
|
|
|
return DirName;
|
|
|
|
|
}
|
|
|
|
|
CMFCPropertyGridProperty * CCommonFlowMgr::CreatGridProperty()
|
|
|
|
|
{
|
|
|
|
|
CString PropertyName;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CString Description;//<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
CString Path = GetParDirName();
|
|
|
|
|
CString Name;
|
|
|
|
|
CString GroupName;
|
|
|
|
|
CString ModuleName;
|
|
|
|
|
//-------------------------------------------------------------------------------//
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
ModuleName = PropertyName;
|
|
|
|
|
CMFCPropertyGridProperty* pGroup = new CMFCPropertyGridProperty(PropertyName);
|
|
|
|
|
{
|
|
|
|
|
{
|
|
|
|
|
GroupName = ("<EFBFBD><EFBFBD>ͨ<EFBFBD>趨");
|
|
|
|
|
CMFCPropertyGridProperty* pGroup1 = new CMFCPropertyGridProperty(GroupName);
|
|
|
|
|
if(gAuthorityMgr->CheckAuthority(_Authority_Factory))
|
|
|
|
|
{
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_bNeedInit");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_bNeedInit);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_BOOL);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>");
|
|
|
|
|
Description = _T("<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><EFBFBD>в<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
pPropertie->SetModuleName(ModuleName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_bNeedInit, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_DrawLineGapCnt");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_DrawLineGapCnt);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_INT);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
Description = _T("ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD>߶<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ʾ");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_DrawLineGapCnt, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_OneLineAnnealTimeAdjsut");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_OneLineAnnealTimeAdjsut);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_INT);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD>Ӽ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>");
|
|
|
|
|
Description = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD><EFBFBD>˻<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ms");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_OneLineAnnealTimeAdjsut, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_bShowStartMsg");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_bShowStartMsg);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_BOOL);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD>ӹ<EFBFBD>ǰ<EFBFBD><EFBFBD>ʾ");
|
|
|
|
|
Description = _T("<EFBFBD>ڿ<EFBFBD>ʼ<EFBFBD>ӹ<EFBFBD>ʱ<EFBFBD>Ƿ<EFBFBD><EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_bShowStartMsg, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_bShowErrMsg");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_bShowErrMsg);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_BOOL);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
Description = _T("<EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_bShowErrMsg, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_bStopWorkMsg");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_bStopWorkMsg);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_BOOL);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("ֹͣ<EFBFBD><EFBFBD>ʾ");
|
|
|
|
|
Description = _T("<EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ֹͣ<EFBFBD>Ƿ<EFBFBD><EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_bStopWorkMsg, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_LightAlamTime");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_LightAlamTime);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_INT);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>");
|
|
|
|
|
Description = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_LightAlamTime, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_MotorZSafeCoord");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_MotorZSafeCoord);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_DOUBLE);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("Z<EFBFBD>ᰲȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
Description = _T("Z<EFBFBD>ᰲȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Σ<><CEA3>)");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_MotorZSafeCoord, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_TransferTestDelay");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_TransferTestDelay);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_INT);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ");
|
|
|
|
|
Description = _T("<EFBFBD><EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿƬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<EFBFBD><EFBFBD>ms");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p1 = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_TransferTestDelay, Description);
|
|
|
|
|
pGroup1->AddSubItem(p1);
|
|
|
|
|
gDevicePropertieMgr.Insert(p1, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_MoveTestDelay");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_MoveTestDelay);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_INT);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ");
|
|
|
|
|
Description = _T("<EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱms");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p1 = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_MoveTestDelay, Description);
|
|
|
|
|
pGroup1->AddSubItem(p1);
|
|
|
|
|
gDevicePropertieMgr.Insert(p1, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_bKeepJobN2Air");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_bKeepJobN2Air);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_BOOL);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("Job <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
Description = _T("<EFBFBD><EFBFBD>job <20><><EFBFBD><EFBFBD>ʱһֱ<D2BB><D6B1><EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_bKeepJobN2Air, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_bCtrlN2Air");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_bCtrlN2Air);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_BOOL);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
Description = _T("<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>Թر<D4B9>)");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_bCtrlN2Air, Description);
|
|
|
|
|
pGroup1->AddSubItem(p);
|
|
|
|
|
gDevicePropertieMgr.Insert(p, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
pGroup->AddSubItem(pGroup1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
GroupName = ("<EFBFBD>豸<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>");
|
|
|
|
|
CMFCPropertyGridProperty* pGroup1 = new CMFCPropertyGridProperty(_T("<EFBFBD>豸<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>"));
|
|
|
|
|
if(gAuthorityMgr->CheckAuthority(_Authority_Factory))
|
|
|
|
|
{
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_bIniConfirmMsgBox");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_bIniConfirmMsgBox);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_BOOL);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>msgbox");
|
|
|
|
|
Description = _T("<EFBFBD>Ƿ<EFBFBD><EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD>");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p1 = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_bIniConfirmMsgBox, Description);
|
|
|
|
|
pGroup1->AddSubItem(p1);
|
|
|
|
|
gDevicePropertieMgr.Insert(p1, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_bIniPlatfrom");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_bIniPlatfrom);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_BOOL);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>ƽ̨");
|
|
|
|
|
Description = _T("<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>XY <20><><EFBFBD><EFBFBD>ƽ̨");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p1 = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_bIniPlatfrom, Description);
|
|
|
|
|
pGroup1->AddSubItem(p1);
|
|
|
|
|
gDevicePropertieMgr.Insert(p1, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
|
|
|
|
|
Name = _T("m_bIniMotorZ");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
CPropertie *pPropertie = new CPropertie;
|
|
|
|
|
pPropertie->SetpVal((void*)&m_bIniMotorZ);
|
|
|
|
|
pPropertie->SetType(_PROP_TYPE_BOOL);
|
|
|
|
|
pPropertie->SetpModule(this);
|
|
|
|
|
pPropertie->SetPath(Path);
|
|
|
|
|
pPropertie->SetName(Name);
|
|
|
|
|
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
PropertyName = _T("<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Z");
|
|
|
|
|
Description = _T("<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Z");
|
|
|
|
|
pPropertie->SetGroupName(GroupName);
|
|
|
|
|
pPropertie->SetShowName(PropertyName);
|
|
|
|
|
CMFCPropertyGridProperty* p1 = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_bIniMotorZ, Description);
|
|
|
|
|
pGroup1->AddSubItem(p1);
|
|
|
|
|
gDevicePropertieMgr.Insert(p1, pPropertie);
|
|
|
|
|
}
|
|
|
|
|
pGroup->AddSubItem(pGroup1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
return pGroup;
|
|
|
|
|
}
|
|
|
|
|
void CCommonFlowMgr::OnAppInitialize()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CCommonFlowMgr::Draw(CDC* pDC)
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD>mark <20><>
|
|
|
|
|
DrawLaserSpotPt(pDC);
|
|
|
|
|
|
|
|
|
|
DrawTestLineVec(pDC);
|
|
|
|
|
}
|
|
|
|
|
void CCommonFlowMgr::DrawTestLineVec(CDC* pDC)
|
|
|
|
|
{
|
|
|
|
|
int size = m_CTestLineVec.size();
|
|
|
|
|
for(int k=0;k<size;k++)
|
|
|
|
|
{
|
|
|
|
|
CTestLine &TestLine = m_CTestLineVec[k];
|
|
|
|
|
if(k==0)
|
|
|
|
|
DrawLine(pDC,gDraw->GetCatchNodePen(),TestLine.m_pt1,TestLine.m_pt2);
|
|
|
|
|
else
|
|
|
|
|
DrawLine(pDC,gDraw->GetScanLine(),TestLine.m_pt1,TestLine.m_pt2);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD>mark <20><>
|
|
|
|
|
void CCommonFlowMgr::DrawLaserSpotPt(CDC* pDC)
|
|
|
|
|
{
|
|
|
|
|
if(!m_bLaserSpotMarkMode)
|
|
|
|
|
return;
|
|
|
|
|
int CenterIdx = 0;
|
|
|
|
|
int size = m_LaserSpotPtVec.size();
|
|
|
|
|
for(int k=0;k<size;k++)
|
|
|
|
|
{
|
|
|
|
|
CLaserSpotPt SpotPt = m_LaserSpotPtVec[k];
|
|
|
|
|
double w = 0.5;
|
|
|
|
|
double h = 4;
|
|
|
|
|
DbSize Size;
|
|
|
|
|
if(gLaser->IsbScanByDirX())
|
|
|
|
|
Size = DbSize(w,h);
|
|
|
|
|
else
|
|
|
|
|
Size = DbSize(h,w);
|
|
|
|
|
|
|
|
|
|
DbRect rect(SpotPt.m_Coord,DbSize(h,w));
|
|
|
|
|
|
|
|
|
|
COLORREF color;
|
|
|
|
|
if(SpotPt.m_AdjustZVal==0)
|
|
|
|
|
{
|
|
|
|
|
color = RGB_RED;
|
|
|
|
|
CenterIdx = k;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
color = RGB_YELLOW;
|
|
|
|
|
}
|
|
|
|
|
DrawSolidRect(pDC,color,rect);
|
|
|
|
|
//<2F><>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Z <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
|
|
|
|
|
CString str;
|
|
|
|
|
str.Format(_T("%.2f"),SpotPt.m_AdjustZVal);
|
|
|
|
|
if(gLaser->IsbScanByDirX())
|
|
|
|
|
{
|
|
|
|
|
SpotPt.m_Coord.x -= 0.5;
|
|
|
|
|
SpotPt.m_Coord.y += 3;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
SpotPt.m_Coord.x += 3;
|
|
|
|
|
}
|
|
|
|
|
gDraw->DrawTxt(pDC,str,SpotPt.m_Coord);
|
|
|
|
|
|
|
|
|
|
int Idx = k+1;
|
|
|
|
|
if(CenterIdx>0 && color == RGB_YELLOW)
|
|
|
|
|
{
|
|
|
|
|
//Idx = (size-k)+(k-CenterIdx);
|
|
|
|
|
}
|
|
|
|
|
str.Format(_T("%d"),Idx);
|
|
|
|
|
if(gLaser->IsbScanByDirX())
|
|
|
|
|
SpotPt.m_Coord.y -= 6;
|
|
|
|
|
else
|
|
|
|
|
SpotPt.m_Coord.x -= 6;
|
|
|
|
|
|
|
|
|
|
gDraw->DrawTxt(pDC,str,SpotPt.m_Coord);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>ʼ<EFBFBD><CABC>״̬
|
|
|
|
|
bool CCommonFlowMgr::CheckDeviceInitState()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
//<2F><>ʼ<EFBFBD><CABC><EFBFBD>豸(ƽ̨,Z <20><>)
|
|
|
|
|
bool CCommonFlowMgr::InitDeviceFlow(bool bConfirmMsgBox)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F><>ʼ<EFBFBD>ӹ<EFBFBD>ǰ<EFBFBD><C7B0>ͳһ<CDB3><D2BB><EFBFBD><EFBFBD>
|
|
|
|
|
bool CCommonFlowMgr::CommWorkStart()
|
|
|
|
|
{
|
|
|
|
|
//<2F>ָ<EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD>ɫ
|
|
|
|
|
gWaferRecipeDataMgr->SetbScanEnd(false);
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD>豸
|
|
|
|
|
if(!CheckDeviceInitState())
|
|
|
|
|
return false;
|
|
|
|
|
//<2F>ӹ<EFBFBD><D3B9><EFBFBD>¼<EFBFBD><C2BC>ʼ
|
|
|
|
|
gWorkRecordMgr->StartRecord();
|
|
|
|
|
|
|
|
|
|
m_pView->RefreshView();
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>ͳһ<CDB3><D2BB><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::CommWorkEnd()
|
|
|
|
|
{
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼
|
|
|
|
|
gWorkRecordMgr->EndRecord();
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F>ƶ<EFBFBD><C6B6><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>(MotorZCoord <20><><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD>Z <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|
|
|
|
bool CCommonFlowMgr::MoveToPos(Dbxy MovePt,Dbxy TargetPt,double MotorZCoord)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
//<2F><>ǰ<EFBFBD>Ƿ<EFBFBD><C7B7>ڼ<EFBFBD><DABC>ⰲȫλ<C8AB><CEBB>
|
|
|
|
|
bool CCommonFlowMgr::AtLaserSafePlace(Dbxy PlatformCoord)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ʱ<EFBFBD><CAB1>)
|
|
|
|
|
//ABCDEF<45><46><EFBFBD><EFBFBD><EFBFBD>ձʼ<D5B1><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD>ͼ
|
|
|
|
|
int CCommonFlowMgr::CollectMultiMovePoint()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
return 1;
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F>رռ<D8B1><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::CloseLaserLddFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD>ƽ̨
|
|
|
|
|
void CCommonFlowMgr::ManualMoveAsixXY(double MoveDis,DIRECTION MoveDir)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F>ֶ<EFBFBD><D6B6>ƶ<EFBFBD>Z<EFBFBD><5A>
|
|
|
|
|
void CCommonFlowMgr::ManualMoveAsixZ(double dis)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>ȡ<EFBFBD><C8A1>wafer <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD>/<2F>ƿ<EFBFBD>)
|
|
|
|
|
void CCommonFlowMgr::ManualCtrlPlatWaferFlow(bool bWaferOn)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::PlanenessMeasureFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//XY <20>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::XyMoveTestFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::OpenMoveTestObj()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::XYMoveSaveCoord()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><>ӡ<EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::CalXYMoveTestResult(int MeasurePtCnt)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::InitMoveRetList(CListCtrl &List)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::InsertMoveRetList(CListCtrl &List)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
void CCommonFlowMgr::InsertMoveRetListExt(CListCtrl &List,int Line,int Idx,CMovePtData &MovePtData,X_OR_Y Xy)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><D7BC>cmd
|
|
|
|
|
void CCommonFlowMgr::CreatPowCheckPrepareCmd(CWorkCmdInvoker &WorkCmdInvoker)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>LDD,˫<>̹<EFBFBD><CCB9><EFBFBD>ʱ<EFBFBD><CAB1>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ·<D2BB><C2B7><EFBFBD><EFBFBD>Ϊ0)
|
|
|
|
|
bool CCommonFlowMgr::LaserPowCheckFlow()
|
|
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>У<D0A3><D7BC>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(bToLaserFocus<75><73>ʾ<EFBFBD><CABE><EFBFBD>ɺ<EFBFBD><C9BA>Ƿ<EFBFBD><C7B7>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>)
|
|
|
|
|
void CCommonFlowMgr::CreatAutoFindFocusInvokerCmd(CWorkCmdInvoker &WorkCmdInvoker,bool bToLaserFocus)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>Z <20>ό<EFBFBD><E1BDB9>
|
|
|
|
|
void CCommonFlowMgr::AutoFindFocusFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if 1//<2F><><EFBFBD><EFBFBD><EFBFBD>߹<EFBFBD><DFB9><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::SetbLaserSpotMarkMode(bool b)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::CreatLaserSpotMarkPt()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD>ȫ<EFBFBD><C8AB>
|
|
|
|
|
bool CCommonFlowMgr::CheckLaserSpotData()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::LaserSpotMarkFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>ɨ<EFBFBD><C9A8>test(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD>)
|
|
|
|
|
void CCommonFlowMgr::OneLineLaserTest()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//ɨ<>赥<EFBFBD><E8B5A5><EFBFBD>߶<EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::OneLineLaserTestExt(Dbxy Pt1,Dbxy Pt2)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::CollectMultiPointVecToFile()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
bool CCommonFlowMgr::CheckLaserBeamFlow()
|
|
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
//<2F>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʲ<EFBFBD><CAB2><EFBFBD>λ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>(ֻ<><D6BB><EFBFBD>ƶ<EFBFBD>XYZ)
|
|
|
|
|
bool CCommonFlowMgr::MoveToPowMeasureFlow()
|
|
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
//ͨ<><CDA8><EFBFBD><EFBFBD><E2B9A6><EFBFBD><EFBFBD><EFBFBD>жϵ<D0B6>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>ܶȺ<DCB6>recipe <20>Ƿ<EFBFBD>ƥ<EFBFBD><C6A5>
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD>,ֻ<><D6BB><EFBFBD><EFBFBD>Laser1Curr <20>ĵ<EFBFBD><C4B5><EFBFBD>ֵ
|
|
|
|
|
bool CCommonFlowMgr::CheckRecipeEnergyDensityFlow(double Laser1Curr)
|
|
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if 1//<2F>µ<EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
//ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><D7B5><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
bool CCommonFlowMgr::ExcuteSimpleFlowType(eExcuteFlowType FlowType)
|
|
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
#if 1//job <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::JobQueueCtrlFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//<2F><>ͣjob cmd <20><><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::PauseJobQueueCtrlFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//ֹͣjob cmd <20><><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::StopJobQueueCtrlFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if 1
|
|
|
|
|
|
|
|
|
|
//<2F>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>Wafer
|
|
|
|
|
bool CCommonFlowMgr::ManualTransferWaferFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CCommonFlowMgr::StartAutomationWorkFlowThread()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::StartAutomationWorkFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//ֹͣ<CDA3>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void CCommonFlowMgr::StopAutomationWorkFlow()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
#endif
|