SDC C-Project CF Review 프로그램
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#pragma once
 
#include "DitGlassRawStruct.h"
 
//////////////////////////////////////////////////////////////////////////
// Recipe¿¡¼­ Server¿Í Inspector°¡ °øÀ¯Çϴ ¼³Á¤Á¤º¸.
enum ThreadCount { Thread_1 = 0, Thread_2, Thread_4, Thread_6, Thread_8, Thread_11, Thread_12, Thread_22, Thread_24 };
enum CameraType { CamType_Unknown = 0, CamType_Transfer, CamType_Reflex };
enum ScanCoordinate { SC_XCoord = 0, SC_YCoord };                    // ½ºÄµ¹æÇâ. °áÇÔ ÁÂÇ¥ ¿¬»ê½Ã Áß¿ä.
enum ScanDirectionEng { SD_Right2Left = 0, SD_Left2Right };            // ÀÛ¾÷ÀÚ°¡ º» ½ºÄµ ¹æÇâ.
enum ScanDirectionIns { SD_Forward = 0, SD_Backward, SD_Unknown };    // Glass ±âÁØ Scan ¹æÇâ.
enum ScanType { ST_SingleScan = 0, ST_DualScan };                // SingleScan - ´Ü¹æÇâ, DualScan - ¾ç¹æÇâ
enum GlassDirection { GD_LeftTop = 0, GD_RightTop = 1, GD_LeftBottom = 10, GD_RightBottom = 11 };
enum AcqMode { Acq_Unknown = 0, Acq_Grab, Acq_Snap, Acq_Matrox, Acq_Simul };
enum FindBoundary { FB_NotFind = 0, FB_PitchMatching, FB_ManualMatching };
enum InspectionMethod { IM_Convolution = 0, IM_HProjection, IM_VProjection, IM_ImageMatching };
enum DefectLocation { DefectLoc_Pattern = 0, DefectLoc_Crack, DefectLoc_BM, DefectLoc_ASG, DefectLoc_PAD, DefectLoc_C2C, DefectLoc_EdgeLine, DefectLoc_Proj, DefectLoc_Chip, DefectLoc_Corner };
enum CellLineType { CellLine_Gate = 0, CellLine_Data };
enum XByXType { OneByOne = 0, TwoByTwo };
enum DefectFiltering { Filtering_NO = 0, Filtering_CO, Filtering_Cutoff, Filtering_DXDY, Filtering_TD, Filtering_FALSE };        // Filtering_CO : Cosmic Ray FALSE
enum ALIGN_MARK_CLASSIFY { eAMC_First = 0, eAMC_Second };
//////////////////////////////////////////////////////////////////////////
// Defect¿¡ »ç¿ëµÇ´Â Å¸ÀÔµé.
enum SERVER_DefectType { DefectType_TBlack = 0, DefectType_TWhite, DefectType_RBlack, DefectType_RWhite, DefectType_BBlack, DefectType_BWhite, DefectType_Unknown };
enum SERVER_DefectSizeType { SizeType_Unknown = 0, SizeType_Small, SizeType_Mid, SizeType_Large, SizeType_Huge, SizeType_Ultra };
enum SERVER_DefectJudgementType { JudgementType_OK = 0, JudgementType_TR, JudgementType_PR, JudgementType_UNKNOWN };
enum SERVER_DefectSubType { DefectSubType_Normal = 0, DefectSubType_MC, DefectSubType_Mask, DefectSubType_Common, DefectSubType_NoDefect };
enum SERVER_DefectBDType { DefectBDType_Unknown = 0, DefectBDType_Bright = 1, DefectBDType_Dark = 2, DefectBDType_Both = 64, DefectBDType_Both_B = 65 };
enum SERVER_DefectPeakType { PeakType_Unknown = 0, PeakType_Low, PeakType_Center, PeakType_High, PeakType_OverHigh };
enum StackInfo { Stack_Unknown = 0, Stack_TD, Stack_SD, Stack_PD, Stack_SP, Stack_CD };        // lmk 2012.12.21 CD (A2E CurrentData)
enum DefectShowOption { DefectShow_Type, DefectShow_StackFlag, DefectShow_StackStep, DefectShow_Size, DefectShow_Judgement, DefectShow_Code };
 
enum ClassificationType { ClassType_None = 0, ClassType_PI_Over = 1, ClassType_PI_Under = 2, ClassType_TFE_Circle = 3, ClassType_Bubble, ClassType_Scratch, ClassType_Particle };
enum ReKind { Re_Other, Re_TFE_CIRCLE, Re_PI_CONVEX, Re_PI_CONCAVE, Re_PI_1, Re_PI_2, Re_PI_3 };
 
//choigudal jude fix 2012.03.07
enum Judgement { Judge_OK = 0, Judge_RP, Judge_NG, Judge_TR, Judge_PR, Judge_ND, Judge_PT, Judge_Review, Judge_RC, Judge_Size, Judge_VI, Judge_Rework, Judge_LN/*KMH 220318 : #3954 ADD */, Judge_Unknown, Judge_SR};/* <KYH 211129 : #3796 ADD Start> */ /* < KJG 20221107 - #4360 MOD > SR ÆÇÁ¤ Ãß°¡*/ 
enum MAP16_DefectClass { CLASS_C1 = 1, CLASS_C2, CLASS_C3, CLASS_C4, CLASS_C5, CLASS_C6, CLASS_C7, CLASS_C8, CLASS_C9, CLASS_C10, CLASS_C11, CLASS_C12, CLASS_C13, CLASS_C14, CLASS_C15, CLASS_C16 };
enum MAP16_SizeType { SIZE_SS = 0, SIZE_SM, SIZE_SL, SIZE_SOH, SIZE_IDX_MAX };
enum MAP16_PeakType { PEEK_PS = 0, PEEK_PL, PEEK_PH, PEEK_POH, PEAK_IDX_MAX };
enum GlassCode_TSP { A_SET = 0, B_SET, C_SET, D_SET, MAX_SET };//2016.07.11 LHS
enum DefectShape { CIRCLE = 0, LINE };//2016.07.13 LHS
enum AAILightSource { TRANSLIGHT = 5, REFLIGHT, BACKLIGHT };//2016.07.12 LHS
 
enum CAMTYPE { _eCT_Reflex = 0, _eCT_Transfer };
 
class CGlassRawBase
{
public:
    CGlassRawBase(void);
    virtual ~CGlassRawBase(void);
 
    static char* GetClassName(){return "Base";};
 
    virtual BOOL SequenceGlassLoading(CgrmGlassRawData* pData){return TRUE;};
    virtual BOOL SequenceInspectEnd(CgrmGlassRawData* pData){return TRUE;};
    virtual BOOL SequenceReviewStart(CgrmGlassRawData* pData){return TRUE;};
    virtual BOOL SequenceReviewEnd(CgrmGlassRawData* pData){return TRUE;};
    virtual BOOL SequenceCustomizeReview(CgrmGlassRawData* pData){return TRUE;};
 
    virtual BOOL WriteBinFile(CgrmGlassRawData* pData);
    virtual BOOL ReadBinFile(CgrmGlassRawData* pData);
 
    virtual BOOL ReviewWriteBin(CgrmGlassRawData* pData);
 
    virtual BOOL WriteAOIFile(CgrmGlassRawData* pData){return TRUE;};
    virtual BOOL ReadAOIFile(CgrmGlassRawData* pData){return TRUE;};
 
    virtual BOOL SequenceFtpUpload(char* pRawFileName){return TRUE;};
 
    virtual void NotifyUpdateOptionInfo(){};
    /* <LJC 20211122 : #3820 ADD Start> */
    virtual void DownLoadMergeFile(CgrmGlassRawData* pData) { return; };
    virtual void SearchFIle(CgrmGlassRawData* pData) { return; };
 
    BOOL GetEnableFtpAck() { return b_EnableFtpAck; };
    void SetEnableFtpAck(BOOL b_value) { b_EnableFtpAck = b_value; };
 
    BOOL b_EnableFtpAck;
 
    /* <LJC 20211122 : #3820 ADD End> */
};