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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
// HMX64Fundamentals.h: interface for the CHMX64Fundamentals class.
//
//////////////////////////////////////////////////////////////////////
 
#pragma once
 
#include "Singleton.h"
 
enum AcqMode            { Acq_Unknown = 0, Acq_MultiCam, Acq_Simul };
 
#define        INSPECTBASE_FILENAME _T("C:\\EdgeInspector_App\\Config\\InspectBase.cfg")
 
extern const TCHAR    *PANEL_SIDE[];
 
class CInspectionBase : public Singleton<CInspectionBase>
{
public:            
    CStringArray        m_strCamCCA;
    CStringArray        m_strCamCVI;    
    int                    *m_pBufferSize;            // Grab¿¡¼­ BufferÀÇ Å©±â.
    int                    *m_pBufferCount;            // Grab BufferÀÇ ¼ö.
    int                    *m_pMemFrameNo;            // ½ÇÁ¦ ¸Þ¸ð¸® ÇÁ·¹ÀÓ ¼ö    
    int                    *m_pCameraPort;
    int                    *m_pFrameHeight;
    int                    *m_pFrameWidth;    
    int                    *m_nBoardID;
    int                    *m_nBoardCh;
    AcqMode                m_AcqMode;
    int                    m_nFrameDefectPixel;    // ÇÑ FrameÀÇ ÃÖ´ë °áÇÔ Pixel ¼ö
    int                    m_nMaxDefect;            // miniont,2011-04-28, ÃÖ´ë °áÇÔ °³¼ö            
    int                    m_nCameraCount;    
    int                    m_nScanCount;
    int                    m_nThreadCount;
    int                    m_eProcessMode;
    int                    m_nStageNo;
    
    //park
    CString                m_strLoadingDay;
    CString                m_strLoadingTime;
    CString                m_strProcessID;
    CString                m_strStepID;
    CString                m_strHPanelID;
    CString                m_strOnlineID;
    CString                m_strRecipeName;
    CString             m_strSBKLine;
 
    // Auto Defect View
    BOOL                m_bAutoDefectView;
 
    //SendCIM
    BOOL m_bUseChipCIM;
    int m_nChipCount;
    int m_nChipMinLen;
    int m_nChipMaxLen;
    int m_nChipMinDep;
    int m_nChipMaxDep;
 
    //put teeth in NG
    BOOL m_bPutTeethChip;
    BOOL m_bPutTeethCrack;
    BOOL m_bPutTeethBurr;
    BOOL m_bPutTeethChamfer;
    BOOL m_bPutTeethInChip;
    BOOL m_bPutTeethInCrack;
    BOOL m_bPutTeethInBurr;
    BOOL m_bPutTeethInChamfer;
    BOOL m_bPutTeethTopCorner;
    BOOL m_bPutTeethBotCorner;
    BOOL m_bPutTeethCornerDimension;
    BOOL m_bPutTeethDimension;
    BOOL m_bPutTeethNotch;
    BOOL m_bPutTeethNotchDimension;
    BOOL m_bPutTeethNotchChamfer;
    BOOL m_bPutTeethNotchRadius;
    BOOL m_bPutTeethUserDefect;
    BOOL m_bPutTeethMark;
    BOOL m_bPutTeethException;
    BOOL m_bPutTeethLicense;
 
    int m_nMaxChipSaveCount;
    int m_nMaxCrackSaveCount;
    int m_nMaxBurrSaveCount;
    int m_nMaxChamferSaveCount;
    int m_nMaxInChipSaveCount;
    int m_nMaxInCrackSaveCount;
    int m_nMaxInBurrSaveCount;
    int m_nMaxInChamferSaveCount;
    int m_nMaxTopCornerSaveCount;
    int m_nMaxBotCornerSaveCount;
    int m_nMaxCornerDimensionSaveCount;
    int m_nMaxDimensionSaveCount;
    int m_nMaxNotchSaveCount;
    int m_nMaxNotchDimensionSaveCount;
    int m_nMaxNotchChamferSaveCount;
    int m_nMaxNotchRadiusSaveCount;
    int m_nMaxUserDefectSaveCount;
    int m_nMaxMarkSaveCount;
    int m_nMaxExceptionSaveCount;
    int m_nMaxLicenseSaveCount;
 
    // WEB SOCKET
    int        m_nWSClientThreadCount[4];
    CString m_nWSClientThreadURI[4];
    
    CInspectionBase();    
    virtual ~CInspectionBase();
 
    void    Reset();
    BOOL    ReadInspectConfigFile(CString strFileName,int nCamCount);
    void    SetGlassInfo(CString strHPanelID, CString strRecipeName);
    BOOL    ReadExtraConfigFile(CString strFileName);
    BOOL    WriteExtraConfigFile(CString strFileName);
    BOOL    ReadWebSocketConfigFile(CString strFileName);
    BOOL    WriteWebSocketConfigFile(CString strFileName);
};
#define g_pBase        CInspectionBase::GetSingletonPtr()