SDC C-Project CF Review 프로그램
KEJ
2024-06-26 0c66940a8e2cf64c9890519901f433b3668216b6
ReviewHistory/ReveiwHistory/ReveiwHistoryDlg.h
@@ -19,6 +19,25 @@
#define MAX_COUNT   100
/*< LYW 20211025 - #3684 ADD Start >*/
enum OFFSETCOUNT {
   CAM_MAX_COUNT = 20, XPOS_MAX_COUNT = 10, SCAN_MAX_COUNT = 10, PROGRESS_BAR_MAX = 2000
};
#define   REVIEW_OFFSET_CONFIGFILE_PATH _T("D:\\DIT_Review\\ReviewServerConfig\\") //210805
#define   REVIEW_OFFSET_CONFIGFILE_NAME _T("ReviewOffSet.cfg")
#define REVIEW_OFFSET_CONFIGFILE_FULL_PATHNAME _T("D:\\DIT_Review\\ReviewServerConfig\\ReviewOffSet.cfg")
#define MOTOR_OFFSET_CONFIGFILE_FULL_PATHNAME _T("D:\\DIT_Review\\ReviewServerConfig\\MotorOffSet.cfg")
/*< LYW 20220525 - #4158 ADD Start >*/
#define _REVIEW_SERVER_SYSTEM_SETTING_BACKUP_PATH_CPJT   _T("\\\\126.100.100.5\\d\\DIT Back up\\DIT Review\\ReviewServerConfig")
/*< LYW 20220525 - #4158 ADD End >*/
#define   REVIEW_OFFSET_BACKUP_FORDER_NAME _T("OffsetBackup")
#define   REVIEW_OFFSET_BACKUP_FORDER_PATH _T("D:\\DIT_Review\\ReviewServerConfig\\OffsetBackup\\")
/*< LYW 20211111 - #3766 ADD Start >*/
#define COPYDATA_REVIEWHISTORYOR2REVIEWSYSTEM 1800
/*< LYW 20211111 - #3766 ADD End >*/
/*< LYW 20211025 - #3684 ADD End >*/
struct _DefectList
{
@@ -32,12 +51,39 @@
   CString         m_strJudge;
};
/*< LYW 20211025 - #3684 ADD Start >*/
struct OffSetInfo
{
   int nXposIndex;
   int nScanIndex;
   int nCamIndex;
   double dXposMax;
   double dXposMin;
   double dYposMax;
   double dYposMin;
   double dXoffSetValue;
   double dYoffSetValue;
   BOOL bCheckSave;
};
typedef std::vector<OffSetInfo> VecOffSetData;
typedef std::vector<VecOffSetData> VecOffSetScanData;
typedef std::vector<VecOffSetScanData> VecOffSetCameraInfo;
/*< LYW 20211025 - #3684 ADD End >*/
/*< LYW 20211029 - #3684 ADD Start >*/
DWORD RunThreadReviewHistory(LPVOID param);
/*< LYW 20211029 - #3684 ADD End >*/
// CReveiwHistoryDlg 대화 상자
class CReveiwHistoryDlg : public CDialogEx
{
// 생성입니다.
public:
   CReveiwHistoryDlg(CWnd* pParent = nullptr);   // 표준 생성자입니다.
   /*< LYW 20211029 - #3684 ADD Start >*/
   ~CReveiwHistoryDlg(void);
   /*< LYW 20211029 - #3684 ADD End >*/
// 대화 상자 데이터입니다.
#ifdef AFX_DESIGN_TIME
@@ -118,6 +164,14 @@
   int m_dCurDefectIdx;
   int m_dCurDefectID;
   /*< LYW 20211018 - #3684 ADD End >*/
   /*< LYW 20211028 - #3684 ADD Start >*/
   CTime m_LastSaveOffsetTime;
   CTime m_CurrentResultFileTime;
   /*< LYW 20211028 - #3684 ADD End >*/
   /*< LYW 20211029 - #3684 ADD Start >*/
   DWORD m_ThreadId;
   /*< LYW 20211029 - #3684 ADD End >*/
   // tracker
   BOOL         m_bDrawTracker;
@@ -212,6 +266,7 @@
   afx_msg void OnBnClickedButtonMapviewFit();
   afx_msg void OnDestroy();
   afx_msg LRESULT OnMapDefectSelected(WPARAM wParam, LPARAM lParam);
   afx_msg LRESULT OnDisplayWarning(WPARAM wParam, LPARAM lParam);
   afx_msg LRESULT OnMapDefectMouseOver(WPARAM wParam, LPARAM lParam);
   afx_msg LRESULT OnListDefectSelected(WPARAM wParam, LPARAM lParam);
   /*< LYW 20211018 - #3684 ADD Start >*/
@@ -241,8 +296,41 @@
   void OpenFileHeader(CString strPath, CString strFullPath);
   void BinFileOpen(int nCount);
   void OnCbnSelchangeComboRawtype();
   /*< LYW 20211111 - #3766 ADD Start >*/
   void DrawInsViewCenterLine(CPaintDC *pDC);
   /*< LYW 20211111 - #3766 ADD End >*/
   /*< LYW 20211025 - #3684 ADD Start >*/
   afx_msg void OnBnClickedButtonOffsetApply();
   afx_msg void OnBnClickedButtonOffsetSave();
   BOOL LoadOffset(CString strFilePath);
   BOOL SaveOffset();
   /*< LYW 20211111 - #3766 ADD Start >*/
   BOOL SendMsg2ReviewSystem();
   /*< LYW 20211111 - #3766 ADD End >*/
   BOOL ApplyOffset(int nModuleidx, int nCamIndex, int ScanIndex, double dXOffsetValue, double dYOffsetValue);
   BOOL SetInputOffSet(int nModuleidx, int nCamIndex, int ScanIndex, int nXposIndex, double dXOffsetValue, double dYOffsetValue, double dXposMin, double dXposMax, BOOL bCheckSave = 0);
   void InitDataInfo();
   OffSetInfo GetOffSetInfo(int nMoudleidx, int nCamIndex, int ScanIndex, int nXposIndex);
   int m_nCameraCount;
   int m_nScanCount;
   int m_XposCount;
   double m_dWarnStandard;
   double m_dHardStandard;
   int m_nCurModelIdx;
   /*< LYW 20211025 - #3684 ADD End >*/
   //Xpos 위치별 실제 Offset Data 를 가지고 있는 Vector
   VecOffSetData  m_vecOffSetData;
   //Scan Index를 통한 OffSet Data 를 관리하기위한 Vector
   VecOffSetScanData m_vecOffSetScanData;
   //CamIndex를 통한 관리를 위한 Vector  module 0
   VecOffSetCameraInfo  m_vecOffSetCameraInfo;
   //CamIndex를 통한 관리를 위한 Vector  module 1
   VecOffSetCameraInfo  m_vecOffSetCameraInfo2;
   void ShowProgressBar();
   void setDefectShow(int nDefectID, BOOL bEnsureVisible);
   void ImageShow(int nDefectID);
@@ -255,6 +343,11 @@
   //LYW 20210825 #3486 ADD START
   void ImageRotate(CImage& SrcImage, CImage& DstImage, double degree = 180.0);
   //LYW 20210825 #3486 ADD END
   /*< LYW 20211028 - #3684 ADD Start >*/
   void UpdateLastSaveOffsetTime(CString FileName);
   CTime GetCurrentResultFileTime(CString FileName);
   /*< LYW 20211028 - #3684 ADD End >*/
   BOOL GetCheckFileLoad(int nCount);
@@ -294,4 +387,9 @@
   double m_dEditOffsetX;
   double m_dEditOffsetY;
   CString m_strGantryIdx;
   /*< LYW 20211028 - #index ADD Start >*/
   CString m_TextLastSaveOffsetTime;
   /*< LYW 20211028 - #index ADD End >*/
   CButton m_CheckInsViewCenterLine;
   afx_msg void OnBnClickedCheckInsViewCenterLine();
};