From 3ce48f6dbeb537e252edb0d62c88a28796e36674 Mon Sep 17 00:00:00 2001
From: SWK <sungwk82@diteam.co.kr>
Date: 월, 26 12월 2022 15:04:42 +0900
Subject: [PATCH] ongoing60 #4403 CF AOI Review TACT 지연 개선 1. 신호 출력 방식 재개선  - 유지 시간이 없는 신호는 바로 출력 진행하도록 변경 2. 불필요 Delay 제거 및 시퀀스 변경  - 얼라인 측정 종료 처리 간 제어 신호 먼저 출력 후 카메라 Stop으로 변경  - 물류 정보 읽기 처리 후 1000ms Delay 삭제  - 얼라인 측정 시작(카메라 Live Start) 후 Delay 300ms -> 100ms(이미지 들어오는 시간 확보 필요)  - ReadRawFile 처리 시작 전 500ms Delay 삭제  - Path Scheduling 완료 후 Review Ready 신호 출력 전 1000ms Delay 삭제 3. 버그 수정  - 이미지 저장 경로 생성 간 예외 처리 부분 버그 수정 4. 로그 시간 출력 불합리 개선  - 로그 시간이 파일 출력 시점으로 작성되어 로그 스래드 지연 시 시간이 맞지 않는 불합리 있음  - 로그 시간은 로그 발생 시점에 시간 저장, 해당 시간 이용하여 파일에 기록하도록 변경

---
 ReviewHistory/ReveiwHistory/StackResultCSOT.h |   76 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 76 insertions(+), 0 deletions(-)

diff --git a/ReviewHistory/ReveiwHistory/StackResultCSOT.h b/ReviewHistory/ReveiwHistory/StackResultCSOT.h
new file mode 100644
index 0000000..a980e0b
--- /dev/null
+++ b/ReviewHistory/ReveiwHistory/StackResultCSOT.h
@@ -0,0 +1,76 @@
+#pragma once
+
+#include <vector>
+#include "akCore/akFileUtil.h"
+
+struct _StackDefect
+{
+	int		m_nDefectID		;
+	char	m_strCellID[32]	;
+	int		m_nPosX			;
+	int		m_nPosY			;
+	int		m_nSize			;
+	char	m_strJudge[16]	;
+	char	m_strCode[16]	;
+};
+
+class CStackResultCSOT
+{
+public:
+	CStackResultCSOT(void);
+	virtual ~CStackResultCSOT(void);
+protected:
+	enum emStackProcessState
+	{
+		SPS_StateIdle = 0,
+		SPS_StateFileRead, //읽기 수행 중
+		SPS_ResultReadOK,
+		SPS_ResultReadFail,
+		SPS_CmdFileRead, //읽기 명령 수행
+		SPS_CmdFileStop, //읽기 명령 수행 중지
+
+		SPS_Num
+	};
+public:
+	void clear()
+	{
+		m_vecMacroDefect.clear();
+	}
+
+	BOOL StackFileReadStart(char* pGlassID);
+	BOOL StackFileReadStop(BOOL bWait=TRUE);
+	BOOL IsRead() { return m_nProcessState == SPS_ResultReadOK?TRUE:FALSE; }
+
+	int GetDefectNum() { return (int)m_vecMacroDefect.size();}
+	_StackDefect* GetDefect(int i) { return &m_vecMacroDefect[i]; }
+	
+	BOOL readOptionFile(char* pFileName = NULL);
+
+	BOOL getStackUse(){return m_bStackUse;};
+	char* getStackEquipID(){return m_strEquipID;};
+	char* getStackOperID(){return m_strParam1;};
+	char* getStackLocalPath(){return m_strLocalPath;};
+protected:
+	BOOL openFile( char* pGlassID );
+
+	static void threadStackFileRead(void* pArg);
+	int	m_nThreadStackFileReadFlag;
+	
+protected:
+	char m_strConfigFile[MAX_PATH];
+	BOOL m_bStackUse;
+	char m_strLocalPath[MAX_PATH];
+	char m_strEquipID[32];
+	char m_strParam1[32]; //operid
+
+	emStackProcessState m_nProcessState;//-1:읽기실패,0:Idle, 1:읽기성공, 2:읽기시도(읽기중)
+	std::vector<_StackDefect> m_vecMacroDefect;
+
+	CString	m_strGlassID;
+protected:
+	char* getParsingData(char* pBuf, int nLen, CString* pOutData);
+	char* getParsingData(char* pBuf, int nLen, int* pOutData);
+
+
+
+};

--
Gitblit v1.9.3