From 29b057b25d57dab9ed33aa2a1bc22b6dc68e1a4d Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 금, 01 4월 2022 10:31:31 +0900
Subject: [PATCH] Ongoing70 #4006 CF AOI Review Align Fail시 재판정 Off 기능 추가

---
 DitGlassRawMessenger/Extern/DitGlassRawStruct.h |  108 ++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 96 insertions(+), 12 deletions(-)

diff --git a/DitGlassRawMessenger/Extern/DitGlassRawStruct.h b/DitGlassRawMessenger/Extern/DitGlassRawStruct.h
index c1e9afe..5a336e2 100644
--- a/DitGlassRawMessenger/Extern/DitGlassRawStruct.h
+++ b/DitGlassRawMessenger/Extern/DitGlassRawStruct.h
@@ -8,6 +8,7 @@
 
 #define RAWMESSENGER_MAXCAMNUM 30
 #define RAWMESSENGER_MAXSCANNUM 20
+#define RAWMESSENGER_MAXHLINUM 8
 
 #define MAX_ZONE_NUM 16
 
@@ -60,6 +61,11 @@
 
 	int m_nGlassSizeWidth;
 	int m_nGlassSizeHeight;
+    /* <KYH 211129 : #3796 ADD Start> */
+	int			m_nDefectNumJudgeND;
+	/* <KYH 211129 : #3796 ADD End> */
+	//DUMY DATA
+	int			Dumy_int[9];
 
 	//설비정보
 	char m_strLine[32];
@@ -119,7 +125,9 @@
 	int			m_nDefectNumJudgeRV;
 	int			m_nDefectNumJudgeTR;
 	int			m_nDefectNumJudgePR;
-
+	/*< LHS 20211029 - #3783 MOD Start >*/
+	int			m_nDefectNumJudgeLine;
+	/*< LHS 20211029 - #3783 MOD End >*/
 	int			m_nDefectNumStackTD;
 	int			m_nDefectNumStackSD;
 	int			m_nDefectNumStackPD;
@@ -129,9 +137,9 @@
 	//카메라/스캔 정보 [김태현 2018/12/5]
 	short		m_nCameraNum;
 	short		m_nScanNum;
-	unsigned char m_nGrayLevelAvg[RAWMESSENGER_MAXCAMNUM*RAWMESSENGER_MAXSCANNUM];		
-	unsigned char m_nGrayLevelMin[RAWMESSENGER_MAXCAMNUM*RAWMESSENGER_MAXSCANNUM];
-	unsigned char m_nGrayLevelMax[RAWMESSENGER_MAXCAMNUM*RAWMESSENGER_MAXSCANNUM];
+	unsigned char m_nGrayLevelAvg[RAWMESSENGER_MAXCAMNUM*RAWMESSENGER_MAXSCANNUM*RAWMESSENGER_MAXHLINUM];		
+	unsigned char m_nGrayLevelMin[RAWMESSENGER_MAXCAMNUM*RAWMESSENGER_MAXSCANNUM*RAWMESSENGER_MAXHLINUM];
+	unsigned char m_nGrayLevelMax[RAWMESSENGER_MAXCAMNUM*RAWMESSENGER_MAXSCANNUM*RAWMESSENGER_MAXHLINUM];
 
 	//얼라인 정보 um[김태현 2018/12/10]
 	double	m_nAlignCcdTheta;
@@ -143,6 +151,9 @@
 	double	m_nAlignBasicTheta;
 	double	m_nAlignBasicShitftX;
 	double	m_nAlignBasicShitftY;
+	char	m_strAlignFirst[64];
+	char	m_strAlignSecond[64];
+// 	char	m_strAlignPath[256];
 
 	//CSOT용 물류 정보 [김태현 2018/12/5]
 	char m_strCassetteSequenceNo[16];
@@ -171,10 +182,10 @@
 	char m_strFlowHistory[2];
 	char m_strCount1[2];
 	char m_strCount2[2];
-
+	char m_StrMergeList[10][12];
 	//Mura Data 0412 nwh
-	float m_fMaxAvgGray;
-	float m_fMaxPortion;
+	char m_strMaxAvgGray[12];
+	char m_strMaxPortion[12];
 
 
      //1226NWH
@@ -191,13 +202,22 @@
 	int m_nStackNum;
 	BOOL m_bStackRead;
 
+	/*< KJG 20211024 - #3487 ADD Start >*/
+	int m_nRawMergeNum;
+	BOOL m_bRawMergeRead;
+	/*< KJG 20211024 - #3487 ADD End >*/
 	//210203 CJH - CutOff 대상 결함 수
 	int m_nCutOffDefectNum;
 	//210323 CJH - Server/Frame Shrink 정보 추가
 	char m_strShrinked[6];
 	//210326 CJH - RAW 입력 Defect 수량 상한 사용여부
 	BOOL m_bRawCutoff;
-
+	//210907 KJG - EdgeCrack 검사 사용 유무
+	BOOL m_bEdgeCrackUse;
+	BOOL m_bRawMergeUse;
+	/* < KJG 20220225 - #3850 ADD Start >*/ 
+	char m_strRawMergeStepID[32];
+	/* < KJG 20220225 - #3850 ADD End >*/
 };
 struct _grmBlockData
 {
@@ -251,14 +271,53 @@
 	int			m_nDefectNumTypeMD;
 	int			m_nDefectNumTypeCD;
 	int			m_nDefectNumTypeMC;
+	/* <KYH 211129 : #3796 ADD Start> */
+	int			m_nDefectNumJudgeND;
+	/* <KYH 211129 : #3796 ADD End> */
+	//DUMY DATA
+	int			Dumy_int[9];
 
 	//Mura Data nwh 0404 
 	char		m_strProImage[32];
-	float		m_fAvgGray;
-	float		m_fPortion;
+	char		m_strAvgGray_0[12];
+	char		m_strPortion_0[12];
+	//kyh Mura Data 추가 0622
+	char		m_strCorner_Gray_0[12];
+	char		m_strAvgAmp_0[12];
+	char		m_strFFTVar_0[12];
+	char		m_strFFTVah_0[12];
+	char		m_strFFTVaq_0[12];
+	char		m_strFFTPK_0[12];
 
+	char		m_strAvgGray_1[12];
+	char		m_strPortion_1[12];
+	//kyh Mura Data 추가 0622
+	char		m_strCorner_Gray_1[12];
+	char		m_strAvgAmp_1[12];
+	char		m_strFFTVar_1[12];
+	char		m_strFFTVah_1[12];
+	char		m_strFFTVaq_1[12];
+	char		m_strFFTPK_1[12];
 
+	char		m_strAvgGray_2[12];
+	char		m_strPortion_2[12];
+	//kyh Mura Data 추가 0622
+	char		m_strCorner_Gray_2[12];
+	char		m_strAvgAmp_2[12];
+	char		m_strFFTVar_2[12];
+	char		m_strFFTVah_2[12];
+	char		m_strFFTVaq_2[12];
+	char		m_strFFTPK_2[12];
 
+	char		m_strAvgGray_3[12];
+	char		m_strPortion_3[12];
+	//kyh Mura Data 추가 0622
+	char		m_strCorner_Gray_3[12];
+	char		m_strAvgAmp_3[12];
+	char		m_strFFTVar_3[12];
+	char		m_strFFTVah_3[12];
+	char		m_strFFTVaq_3[12];
+	char		m_strFFTPK_3[12];
 
 	int			m_nDefectNumJudgeOKWhite;
 	int			m_nDefectNumJudgeOKBlack;
@@ -268,7 +327,9 @@
 	int			m_nDefectNumJudgeRV;
 	int			m_nDefectNumJudgeTR;
 	int			m_nDefectNumJudgePR;
-
+	/*< LHS 20211029 - #3783 MOD Start >*/
+	int			m_nDefectNumJudgeLine;
+	/*< LHS 20211029 - #3783 MOD End >*/
 	int			m_nReflowResult[8];			// 0: Reflow X 1: Reflow OK 2: Reflow NG
 
 	// Filtering된 Stack별 수
@@ -303,6 +364,7 @@
 	float		m_fManification;
 	float		m_fManificResoultion;
 	char		m_strRevImageName[256];
+	char		m_strRevImagePath[256];
 
 	//////////////////////////////////////////////////////////////////////////
 	// Measure 영역
@@ -376,6 +438,7 @@
 	int				m_nPixelGlassStart;			// Glass 시작 픽셀
 	short			m_sDefectLoc;
 
+	short			m_sZoneClassPixelCount[16];
 	short			m_sZonePixelCount[16];	// Zone별 결함 Pixel 수
 	short			m_sZoneValueMin[16];	// Zone별 결함 Min
 	short			m_sZoneValueMax[16];	// Zone별 결함 Max
@@ -463,8 +526,18 @@
 
 	BOOL			m_bShrinked;				//210323 CJH - Frame Shrink 정보 추가
 
+	char			m_strAoiImagePath[255];
+	char			m_strReviewImagePath[255];
 
-	//리뷰 디펙 정보 [김태현 2019/1/19]
+	int				m_nAlignRectLeft;
+	int				m_nAlignRectTop;
+	int				m_nAlignRectBottom;
+	int				m_nAlignRectRight;
+	/*< LHS 20211029 - #3783 MOD Start >*/
+	char			m_strLNDefectCode[12];
+	short/*LineDefectType*/ m_LineDefectType;
+	/*< LHS 20211029 - #3783 MOD End >*/
+
 	_grmDefectReviewData m_ReviewDefect;
 };
 
@@ -487,6 +560,8 @@
 
 	grcWriteBin = 201,
 	grcReadBin = 202,
+
+	grcReviewWriteBIn = 301,
 
 	grcGlassRawCommand
 };
@@ -514,6 +589,9 @@
 	int m_nCellMaxDataNum;
 	int m_nDefectMaxDataNum;
 	int m_nStackMaxDataNum;
+	/*< KJG 20211024 - #3487 ADD Start >*/
+	int m_nRawMergeMaxDataNum;
+	/*< KJG 20211024 - #3487 ADD End >*/
 
 	//Char 기준 자료가 있는 시작 위치 [김태현 2018/11/12]
 	int m_nGlassDataPoint;
@@ -521,12 +599,18 @@
 	int m_nCellDataPoint;
 	int m_nDefectDataPoint;
 	int m_nStackDataPoint;
+	/*< KJG 20211024 - #3487 ADD Start >*/
+	int m_nRawMergeDataPoint;
+	/*< KJG 20211024 - #3487 ADD End >*/
 
 	int m_nSizeOfGlassData;
 	int m_nSizeOfBlockData;
 	int m_nSizeOfCellData;
 	int m_nSizeOfDefectData;
 	int m_nSizeOfStackData;
+	/*< KJG 20211024 - #3487 ADD Start >*/
+	int m_nSizeOfRawMergeData;
+	/*< KJG 20211024 - #3487 ADD End >*/
 };
 struct _grmDitGlassRawInfo : public _grmDitMemInfo, public _grmDitCommand
 {

--
Gitblit v1.9.3