From 1fd49a571338b6c946bb05dcdf59ec1468df5c50 Mon Sep 17 00:00:00 2001
From: SWK <sungwk82@diteam.co.kr>
Date: 목, 22 12월 2022 12:31:43 +0900
Subject: [PATCH] ongoing50 #4403 CF AOI Reveiw TACT 지연 개선 1. 일정 시간 유지 신호 처리 시 동기화로 인한 불합리 개선 - 일정 시간 유지 필요 시 스래드풀 작업큐를 이용하여 루프처리 방식으로 변경 - 유지 신호 처리 중 출력 신호 발생 시 작업큐에 등록하여 유지 신호와 결합하여 출력 처리 2. FDC 보고 항목 중 SW 버전 체크 루프 불합리 개선 - 프로그램 시작 시 연동 프로그램 버전 체크 간 실행되지 않는 프로그램이 있는 경우 무한 루프 발생 - 무한 루프로 인한 CPU 점유 상승->루프 중간 Sleep추가 및 코드 간소화 3. 로그 메시지에 시간 ms단위 추가(황만수SM 작업 내역 병합)

---
 ReviewSystem/ReviewSystem/ReviewInterface.h |   38 +++++++++++++++++++++++++++++++++++++-
 1 files changed, 37 insertions(+), 1 deletions(-)

diff --git a/ReviewSystem/ReviewSystem/ReviewInterface.h b/ReviewSystem/ReviewSystem/ReviewInterface.h
index 68d13a0..94ed860 100644
--- a/ReviewSystem/ReviewSystem/ReviewInterface.h
+++ b/ReviewSystem/ReviewSystem/ReviewInterface.h
@@ -58,6 +58,8 @@
 #include "M_AutoDiagnosisManager/DiagnosisManager.h"
 #include "DlgSelfDiagnosis.h"
 
+#include "FTPUploadParam.h"
+
 typedef std::vector<CMotorCalibrator>						VectorMotorCalibrator;
 typedef std::vector<CMotorCalibrator>::iterator				VectorMotorCalibratorIt;
 typedef std::vector<CMotorCalibrator>::const_iterator		constVectorMotorCalibratorIt;
@@ -138,6 +140,7 @@
 	virtual void	IMC2P_GantrySoftWareTrigger(int nIndex, int nGantryIdx, int nTrigger);
 	virtual void    IMC2P_WsiGantrySoftWareTrigger(int nIndex, int nGantryIdx, int nTrigger);
 	virtual void	IMC2P_UpdateWsiMotionEnd(int nIndex, int nGantryIdx);
+	virtual void	IMC2P_SendMotorAliveErrorAlram();
 	virtual BOOL	IMC2P_GetUseWsi();
 
 	// WSI Controller 2 parent	
@@ -149,6 +152,9 @@
 	virtual void    IWC2P_SetWSIAliveCheck();
 	virtual BOOL	IWC2P_GetMeasureInfo(int nModuleIndex, int nPointIndex, short& nLoc, short& nOptic, short& nGray, CString& strCellID);
 	virtual int		IWC2P_GetCurrentStatus(int nModuleIndex, CString& strGlassID, CString& strRecipeID, int& nType);
+	/*< LYW 20220421 - #4086 ADD Start >*/
+	virtual void	IWC2P_SetWSIVersion(int nModuleIndex, int nVersion);
+	/*< LYW 20220421 - #4086 ADD End >*/
 	virtual void	IWC2P_SetConnectedStatus(int nModuleIndex, int nConnectStatus);
 	virtual void	IWC2P_RecvMeasureMessage(int nModuleIndex, int nMessageType, int nMessageResult);
 	virtual void	IWC2P_SetMeasureResult(int nModuleIndex, const SWsiResult& measureResut);
@@ -295,6 +301,7 @@
 	virtual BOOL GetOffSetValue(int nModule, int nCam, int nScan, double dGlassXPos, double &dXpos, double &dYpos);
 
 	virtual BOOL IDRO2P_SetGlassMode(BOOL bMode, int nCamidx, int nScanidx, double nXpos, double nYpos);
+	virtual BOOL IDRO2P_SetOffsetPram(int nCamIdx, int nScanIdx, BOOL bUse = 0);
 
 
 protected: // Sequence Processor
@@ -386,6 +393,13 @@
 	virtual void						ISP2P_SetReview00ImageContrast(int n_Value);
 	virtual void						ISP2P_SetReview01ImageContrast(int n_Value);
 	/*< LYW 20211109 - #3662 ADD End >*/
+	/*< LYW 20220415 - #4086 ADD Start >*/
+	virtual int							ISP2P_GetReviewSWVersion();
+	virtual int							ISP2P_GetSyncSWVersion();
+	virtual int							ISP2P_GetGRMSWVersion();
+	virtual int							ISP2P_GetFTPUploaderSWVersion();
+	virtual int							ISP2P_GetWSISWVersion(int nModuleIndex);
+	/*< LYW 20220415 - #4086 ADD End >*/
 
 	// History result
 	virtual CGlassResult*				ISP2P_GetNewHistoryResult(int& nHistoryResultCount);	// new glass result
@@ -520,6 +534,7 @@
 	virtual void   IDL2P_OpenHistoryTool();
 	/*< LYW 20211112 - #3708 ADD Start >*/
 	virtual void IDL2P_OpenHWSettingTool();
+	virtual BOOL	IDL2P_IsManualProcessMode();
 	/*< LYW 20211112 - #3708 ADD End >*/
 
 	// dialog HardwareSettingMode 2 Parent
@@ -537,6 +552,9 @@
 	// align camera
 	virtual int		IDHM2P_InitAlignCamera();
 	virtual void	IDHM2P_DeinitAlignCamera();
+
+	// is manual Mode?
+	virtual BOOL	IDHM2P_IsManualProcessMode();
 
 protected:
 	// Motor Control command
@@ -661,7 +679,16 @@
 
 	// setter internal
 	double	GetFreeSpaceOfDrive() const;
-	void	SetProgramVersion();
+	/*< LYW 20220415 - #4086 ADD Start >*/
+	static void	threadSet3rdPartyProgramVersion(void* pArg);
+	void	SetReviewProgramVersion();
+	/*< LYW 20220426 - #4086 ADD Start >*/
+	void	Start3rdPartyProgram();
+	int		StartWindowIDProgram(CString WindowID, CString ProgramPath);
+	void	Terminate3rdPartyProgram();
+	void	TerminateWindowIDProgram(CString WindowID);
+	/*< LYW 20220426 - #4086 ADD End >*/
+	/*< LYW 20220415 - #4086 ADD End >*/
 		
 	void	ApplySystemSettingValue();
 	void	SetDefaultValue();
@@ -848,6 +875,15 @@
 	CString						m_strProgramVersion;			// program version
 	CProcessTimer				m_ProcessTimer;					// process timer
 	SThetaMotorInfo				m_sThetaMotorInfo;				// theta motor info
+
+	/*< LYW 20220415 - #4086 ADD Start >*/
+	long						m_nFDCGRMSWVersion;
+	long						m_nFDCFTPUploaderSWVersion;
+	long						m_nFDCSyncSWVersion;
+	long						m_nFDCReviewSWVersion;
+	long						m_nFDCWSISWVersion00;
+	long						m_nFDCWSISWVersion01;
+	/*< LYW 20220415 - #4086 ADD End >*/
 	
 	// multi variable	
 	VectorModuleStatus			m_vecModuleStatus;				// Review Module Status Vector	

--
Gitblit v1.9.3