#pragma once #include "GlassRawBase.h" #include "MacroResultFile.h" class CGlassRawRTMS : public CGlassRawBase { public: enum emDefectMemberType { DMT_DefectJudge = 0, DMT_DefectSizeType }; CGlassRawRTMS(void); ~CGlassRawRTMS(void); static char* GetClassName(){return "RTMS";}; virtual BOOL SequenceGlassLoading(CgrmGlassRawData* pData); virtual BOOL SequenceInspectEnd(CgrmGlassRawData* pData); virtual BOOL SequenceReviewStart(CgrmGlassRawData* pData); virtual BOOL SequenceReviewEnd(CgrmGlassRawData* pData); virtual BOOL WriteAOIFile(CgrmGlassRawData* pData); virtual BOOL ReadAOIFile(CgrmGlassRawData* pData){return TRUE;}; BOOL MakeAOIFile(CgrmGlassRawData* pData); BOOL CopyRTMSFiles(CgrmGlassRawData* pData); BOOL MakeAOIPreProcessing(CgrmGlassRawData* pData); void SetMuraResult(CMacroResultFile* pMuraResult){m_pMuraResultFile = pMuraResult;}; protected: void makeDataGlass(CString& strLine, _grmGlassData* pGlassData); void makeDataCell(CString& strLine, _grmGlassData* pGlassData, _grmCellData* pCellData); void makeDataDefect(CString& strLine, _grmGlassData* pGlassData, _grmCellData* pCellData, _grmDefectData* pDefectData); void makeDataCamera(CString& strLine, _grmGlassData* pGlassData, int nCamIdx, int nScanIdx); void makeMuraDefect(CString& strLine, _MacroDefect* pMuraData); void makeDataWSI(CString& strLine, _grmDefectReviewData* pWSIData); void makeUserReview(CString& strLine, _grmDefectReviewData* pUserReviewData); CString GetDefectInfoToString(emDefectMemberType nDefectInfoType, int nParam); protected: CString m_strRTMSRAWFile; CString m_strRTMSImageFile; CMacroResultFile* m_pMuraResultFile; };