SDC C-Project CF Review 프로그램
LYW
2021-05-26 5e3a8e2508c719bb48273d873b17b636c7cef4d7
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
 
// ReviewSystemView.h : CReviewSystemView 클래스의 인터페이스
//
 
 
#pragma once
 
#include "DlgReviewCamera.h"
#include "DlgAlignCamera.h"
#include "DlgDefectMap.h"
#include "DlgDefectFilter.h"
#include "DlgGraph.h"
#include "DlgDefectList.h"
#include "DlgDefectInfo.h" //taek 20.12.04
#include "DlgLog.h"
#include "DlgLongRun.h"
#include "DlgCommand.h"
#include "DlgTab.h"
#include "DlgTapCtrl.h"
#include "DlgUserCmd.h"
 
#include "DlgAFMInfo.h"
#include "DlgAFMInfo_Non_VisionAlign.h"
#include "DlgGlassAndConnectionInfo.h"
#include "DlgModuleInfo.h"
#include "DlgControl.h"
#include "DlgLogo.h"
#include "DlgResultGraph.h"
#include "DlgDefocusList.h"
 
#include "DlgSelfDiagnosis.h"
#include "DlgReviewPopUp.h"
#include "DlgReviewOffSetTool.h"
#include "DlgReviewHistoryTool.h"
 
class CSys_SystemManager;
class CSys_GlassTypeManager;
class CSys_AlignManager;
class CSys_SignalManager;
class CSys_MotorManager;
class CSys_NetworkManager;
 
class CMotorAxisAddr;
class CMotorGantryAddr;
class CMotorInfo;
class CNetworkInfo;
class CSignalInfo;
class CSystemInfo;
class CGantryInfo;
class CHeaderInfo;
class CCameraControlInfo_Plus;
class CLightControlInfo;
class CRevolverInfo;
class CAFMInfo;
class CDlgResultGraph;
class CDlgDefocusList;
 
class CReviewSystemView :    public CFormView
{
protected: // serialization에서만 만들어집니다.
    CReviewSystemView();
    DECLARE_DYNCREATE(CReviewSystemView)
 
public:
    enum{ IDD = IDD_REVIEWSYSTEM_FORM };
 
// 특성입니다.
public:
    CReviewSystemDoc* GetDocument() const;
 
// 작업입니다.
public:
    void CreateDialogs(int nLineType, int nMachineType, BOOL bUseVisionAlign=TRUE);
    void DeleteDialogs();
    void CreateLongRunDialog();
    void SetAcitveDialog(int nIndex);
 
    
    void SetDefaultGlassType(const CGlassResult* pGlassResult);
    void SetAlignResult(int nResultCode, double dDX, double dDy, double dTheta);
    
    void UpdateSelectDefectInfoMap(CDefectResult* pDefectResult);
    void UpdateSelectDefectInfo(int nDefectIdx);
    void UpdateDefectList(CGlassResult* pGlassResult);
    void UpdateSelectDefectList(int nDefectIdx);
    void UpdateSelectDefectMap(CDefectResult* pDefectResult);
    BOOL UpdateSelectDefectList2(int nDefectIdx);
    BOOL UpdateSelectDefectList3(int nDefectIdx);
    BOOL AllDefect();
    CString UpdateSelectImageName();
    void UpdateSelectDefectMap2(CDefectResult* pDefectResult);
    void UpdateLongRunCount(CString strLongRunCount);
    void UpdateMeasureGraph(CGlassResult* pGlassResult);
    void UpdateAlignResult(const CGlassResult* pGlassResult);
    void ShowReviewPopUP();
    void HideHistoryTool();
    void ShowBHistoryTool();
    void HistoryToolUpdate();
    void SelectedCameraIndex(int nMouleindex);
    
    void ShowOffSetTool();
    void ShowHistoryTool();
    DlgReviewOffSetTool* GetReviewOffSetToolHandle() { return m_DlgOffSetTool; }
 
    CDlgReviewHistoryTool* GetReviewHistoryToolHandle() { return m_DlgHistoryTool; }
 
    BOOL SaveDefectMap(const CString& strPath);
    
    CWnd* GetGraphDlgHandle()                        { return m_pDlgGraph; }
    CWnd* GetDefectFilterDlgHandle()                { return m_pDlgDefectFilter; }    
    
    CDlgDefectMap* GetDefectMapDlgHandle() { return m_pDlgDefectMap; }
    void DisplayMessage(const CString& strMessage);
    
    // 재정의입니다.
public:
    virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
protected:
    virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 지원입니다.
    virtual void OnInitialUpdate(); // 생성 후 처음 호출되었습니다.
 
// 구현입니다.
public:
    virtual ~CReviewSystemView();
#ifdef _DEBUG
    virtual void AssertValid() const;
    virtual void Dump(CDumpContext& dc) const;
#endif
    
protected:
    VectorDlgReviewCamera    m_vecDlgReviewCamera;
    VectorDlgReviewCamera2  m_vecDlgReviewPopUp;
 
    CDlgReviewCamera*        m_pDlgReviewCamera;
    CDlgAlignCamera*        m_pDlgAlignCamera;
    CDlgDefectMap*            m_pDlgDefectMap;
    CDlgGraph*                m_pDlgGraph;
    CDlgDefectFilter*        m_pDlgDefectFilter;
    CDlgTab*                m_pDlgTab;
    DlgTapCtrl*                m_pDlgTapCtrl;
    CDlgDefectList*            m_pDlgDefectList;
    CDlgLog*                m_pDlgLog;
    CDlgLongRun*            m_pDlgLongRun;
    CDlgResultGraph*        m_pDlgResultGraph_Dx;
    CDlgResultGraph*        m_pDlgResultGraph_Dy;
 
    CDlgDefectInfo*            m_pDlgDefectInfo; //taek 20.12.04
 
    CDlgLogo*                m_pDlgLogo;
 
    CDlgAFMInfo*            m_pDlgAFMInfo;
    CDlgGlassAndConnectionInfo* m_pDlgGlassAndNetworkInfo;
    CDlgModuleInfo *        m_pDlgModuleInfo;
    CDlgControl*            m_pDlgControl;    
 
    CDlgUserCmd*            m_pDlgUserCmd; // not use align
    CDlgCommand*            m_pDlgCommand; // use align
    
    CDlgDefocusList*        m_pDlgDefocus;
    DlgReviewPopUp*         m_DlgReviewPopUp;
    BOOL                    isReviewPopUp;
    DlgReviewOffSetTool*    m_DlgOffSetTool;
    CDlgReviewHistoryTool*    m_DlgHistoryTool;    
    
 
// 생성된 메시지 맵 함수
protected:
    afx_msg void OnFilePrintPreview();
    afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
    afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
    DECLARE_MESSAGE_MAP()    
public:
    afx_msg void OnDestroy();
    afx_msg    LRESULT    OnLongRunCountUpdate(WPARAM wParam, LPARAM lParam);
    virtual BOOL DestroyWindow();
 
    void UpdateSelectDefectHistoryMap(CDefectResult * pDefectResult);
 
    afx_msg BOOL OnEraseBkgnd(CDC* pDC);
    afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
};
 
#ifndef _DEBUG  // ReviewSystemView.cpp의 디버그 버전
inline CReviewSystemDoc* CReviewSystemView::GetDocument() const
   { return reinterpret_cast<CReviewSystemDoc*>(m_pDocument); }
#endif