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
 
// MainFrm.h : CMainFrame Å¬·¡½ºÀÇ ÀÎÅÍÆäÀ̽º
//
 
#pragma once
 
#include "InterfaceManager.h"
 
class CMainFrame : public CFrameWnd
                  ,public CInterfaceManager
                  , public IViewInterface2Parent
                  , public IDisplyMessage2Parent
{
    
protected: // serialization¿¡¼­¸¸ ¸¸µé¾îÁý´Ï´Ù.
    CMainFrame();
    DECLARE_DYNCREATE(CMainFrame)
 
// Æ¯¼ºÀÔ´Ï´Ù.
public:
 
// ÀÛ¾÷ÀÔ´Ï´Ù.
public:
 
// ÀçÁ¤ÀÇÀÔ´Ï´Ù.
public:
    virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
 
// ±¸ÇöÀÔ´Ï´Ù.
public:
    virtual ~CMainFrame();
#ifdef _DEBUG
    virtual void AssertValid() const;
    virtual void Dump(CDumpContext& dc) const;
#endif
 
public:
    virtual void        MapDefect_ReqDefectImage(CDefect* pDefect,int nGlassDefectIdx);
    virtual CDefect        *ListDefect_ReqDefectImage(CDefect* pDefect,int nGlassDefectIdx);
    virtual void        CommandExitButtonClick();
 
    virtual LPBYTE        IV2M_GetGrabBufferByDimension(DimensionDir eDim,int iVline);
    virtual BOOL        IV2M_SetLiveGrabCommand(DimensionDir eDim,BOOL bStop);
    virtual void        IV2M_LoadImageFullFile(int iSide, CGlass_Data *pGlassData = NULL, std::function<void(BYTE)> _Func = nullptr);
    virtual BOOL        IV2M_SaveFullImage(CString strPath,int iSide,CPoint ptStart,int nLength);
    virtual BOOL        IV2M_RecipeChange(CString strRecipe);
    virtual void        IV2M_InitView(Init_View_Command eVew);
 
    virtual BOOL        MLight_SetLightControlValue(int iCon,int iCh, int nValue, BOOL bRef, int nScanIdx = 0, BOOL bAdjLight = TRUE);
    virtual void        MLight_OnOff(int iCon,int iCh,BOOL bValue);
    virtual BOOL        IV2M_InspectionProcess(DimensionDir eDim);
    virtual BOOL        IV2M_InspectionProcessAll(int iProceMode);
 
    virtual void        DisplayMessage(TCHAR* str);
 
    static UINT            ManualInspectProcess(LPVOID pParam);
 
public:
    void                SetView(CEdgeInspector_AppView    *pView);
 
protected:
    void                KillProcessByName(LPCTSTR lpProcessName);
    void                Timer_InitDone();
    BOOL                GetRegistryRcpName(CString& strRecipe);
    void                SetRegistryRcpName(CString strRecipe);
    void                ApplyViewRecipeSettingss();
 
// »ý¼ºµÈ ¸Þ½ÃÁö ¸Ê ÇÔ¼ö
protected:
    afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
    afx_msg void OnGetMinMaxInfo(MINMAXINFO* lpMMI);    
    afx_msg void OnTimer(UINT_PTR nIDEvent);    
    DECLARE_MESSAGE_MAP()
 
protected:
    BOOL                m_bManualProcessStart;
    DimensionDir        m_eManualInspectSide;
};