#pragma once
|
|
#include <vector>
|
#include "ResultFileData.h"
|
#include "../ReviewSystem/DitGlassRawClient.h"
|
typedef std::vector<CDataHeader*> VectorDataHeader;
|
typedef std::vector<CDataHeader*>::iterator VectorDataHeaderIt;
|
typedef std::vector<CDataHeader*>::const_iterator constVectorDataHeaderIt;
|
|
typedef std::vector<CDataLot*> VectorDataLot;
|
typedef std::vector<CDataLot*>::iterator VectorDataLotIt;
|
typedef std::vector<CDataLot*>::const_iterator constVectorDataLotIt;
|
|
typedef std::vector<CDataCoordinate*> VectorDataCoordinate;
|
typedef std::vector<CDataCoordinate*>::iterator VectorDataCoordinateIt;
|
typedef std::vector<CDataCoordinate*>::const_iterator constVectorDataCoordinateIt;
|
|
typedef std::vector<CDataBlock*> VectorDataBlock;
|
typedef std::vector<CDataBlock*>::iterator VectorDataBlockIt;
|
typedef std::vector<CDataBlock*>::const_iterator constVectorDataBlockIt;
|
|
typedef std::vector<CDataGlass*> VectorDataGlass;
|
typedef std::vector<CDataGlass*>::iterator VectorDataGlassIt;
|
typedef std::vector<CDataGlass*>::const_iterator constVectorDataGlassIt;
|
|
typedef std::vector<CDataCell*> VectorDataCell;
|
typedef std::vector<CDataCell*>::iterator VectorDataCellIt;
|
typedef std::vector<CDataCell*>::const_iterator constVectorDataCellIt;
|
|
typedef std::vector<CDataCell*> VectorDataCell;
|
typedef std::vector<CDataCell*>::iterator VectorDataCellIt;
|
typedef std::vector<CDataCell*>::const_iterator constVectorDataCellIt;
|
|
typedef std::vector<CDataDefect*> VectorDataDefect;
|
typedef std::vector<CDataDefect*>::iterator VectorDataDefectIt;
|
typedef std::vector<CDataDefect*>::const_iterator constVectorDataDefectIt;
|
|
typedef std::vector<CDataInspection*> VectorDataInspection;
|
typedef std::vector<CDataInspection*>::iterator VectorDataInspectionIt;
|
typedef std::vector<CDataInspection*>::const_iterator constVectorDataInspectionIt;
|
|
typedef std::vector<CDataCommon*> VectorDataCommon;
|
typedef std::vector<CDataCommon*>::iterator VectorDataCommonIt;
|
typedef std::vector<CDataCommon*>::const_iterator constVectorDataCommonIt;
|
|
typedef std::vector<CDataCamera*> VectorDataCamera;
|
typedef std::vector<CDataCamera*>::iterator VectorDataCameraIt;
|
typedef std::vector<CDataCamera*>::const_iterator constVectorDataCameraIt;
|
|
|
class AFX_EXT_CLASS CResultFileManager
|
{
|
public:
|
CResultFileManager();
|
virtual ~CResultFileManager();
|
|
|
|
|
virtual void ResetResultFile();
|
virtual BOOL MakeReviewInfoData( int nTotalCnt, int nUserCnt ) = 0;
|
|
// setter
|
virtual void SetReadComplete(BOOL bFlag) { m_bReadComplete = bFlag; }
|
virtual void SetRTMSReadComplete(BOOL bFlag) { m_bRTMSReadComplete = bFlag; }
|
|
// getter
|
virtual BOOL GetReadComplete() const { return m_bReadComplete; }
|
virtual int GetHeaderCount() const { return (int)m_vecDataHeader.size(); }
|
virtual int GetLotCount() const { return (int)m_vecDataLot.size(); }
|
virtual int GetCoordinateCount() const { return (int)m_vecDataCoordinate.size(); }
|
virtual int GetBlockCount() const { return (int)m_vecDataBlock.size(); }
|
virtual int GetGlassCount() const { return (int)m_vecDataGlass.size(); }
|
virtual int GetCellCount() const { return (int)m_vecDataCell.size(); }
|
virtual int GetDefectCount() const { return (int)m_vecDataDefect.size(); }
|
virtual int GetInspectionCount() const { return (int)m_vecDataInspection.size(); }
|
virtual int GetCommonCount() const { return (int)m_vecDataCommon.size(); }
|
|
virtual int GetRTMSCellCount() const { return (int)m_vecDataCell.size(); }
|
virtual int GetRTMSDefectCount() const { return (int)m_vecDataDefect.size(); }
|
|
// virtual
|
virtual void CreateRandomDefect() = 0;
|
|
// read/write
|
virtual BOOL ReadAOIHeader(const CString& strFilePath) = 0;
|
virtual BOOL ReadAOIRaw(const CString& strFilePath) = 0;
|
virtual BOOL ReadAOIRawMemory(const CString& strFilePath, CDitGlassRawClient* dit)=0;
|
virtual BOOL WriteAOIRaw(CString strFilePath) = 0;
|
virtual BOOL WriteAOIRawITEM(FILE *fp, int nItemIdx=-1) = 0;
|
virtual BOOL WriteAOIRawData(FILE *fp, int nItemIdx=-1) = 0;
|
virtual BOOL WriteMeasureRaw(CString strFilePath) = 0;
|
virtual BOOL WriteMeasureRawITEM(FILE *fp, int nItemIdx=-1) = 0;
|
virtual BOOL WriteMeasureRawData(FILE *fp, int nItemIdx=-1) = 0;
|
|
// header
|
virtual BOOL SetHeaderData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetHeaderData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetHeaderData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetHeaderData(int nLineIdx, int nDataIdx) = 0;
|
|
// lot
|
virtual BOOL SetLotData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetLotData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetLotData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetLotData(int nLineIdx, int nDataIdx) = 0;
|
|
// coordinate
|
virtual BOOL SetCoordinateData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetCoordinateData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetCoordinateData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetCoordinateData(int nLineIdx, int nDataIdx) = 0;
|
|
// block
|
virtual BOOL SetBlockData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetBlockData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetBlockData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetBlockData(int nLineIdx, int nDataIdx) = 0;
|
|
// glass
|
virtual BOOL SetGlassData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetGlassData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetGlassData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetGlassData(int nLineIdx, int nDataIdx) = 0;
|
|
// eqp glass
|
virtual BOOL SetEqpGlassData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetEqpGlassData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetEqpGlassData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetEqpGlassData(int nLineIdx, int nDataIdx) = 0;
|
|
// cell
|
virtual BOOL SetCellData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetCellData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetCellData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetCellData(int nLineIdx, int nDataIdx) = 0;
|
|
|
// defect
|
virtual BOOL SetDefectData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetDefectData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetDefectData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetDefectData(int nLineIdx, int nDataIdx) = 0;
|
|
// inspect
|
virtual BOOL SetInspectionData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetInspectionData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetInspectionData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetInspectionData(int nLineIdx, int nDataIdx) = 0;
|
|
virtual BOOL SetUserDefectData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetUserDefectData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetUserDefectData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetUserDefectData(int nLineIdx, int nDataIdx) = 0;
|
virtual void AddUserDefectData(int nUserDefectCount) = 0;
|
virtual void AddReflowDefectData(int nReflowDefectCount) {};
|
virtual void AddWsiReflowDefectData(int nWsiReflowDefectCount) {};
|
//Common
|
virtual BOOL SetCommonData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetCommonData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetCommonData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetCommonData(int nLineIdx, int nDataIdx) = 0;
|
|
//Camera
|
virtual BOOL SetCameraData(int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetCameraData(int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetCameraData(int nLineIdx, int nDataIdx, double dData) = 0;
|
virtual char* GetCameraData(int nLineIdx, int nDataIdx) = 0;
|
|
|
// [2017:5:12]-[WEZASW] : DFS Result File Format º¯°æ
|
virtual BOOL SetRawData(int nRawType, int nLineIdx, int nDataIdx, char* strData) = 0;
|
virtual BOOL SetRawData(int nRawType, int nLineIdx, int nDataIdx, int nData) = 0;
|
virtual BOOL SetRawData(int nRawType, int nLineIdx, int nDataIdx, double dData, int nDigit = 0) = 0;
|
virtual char* GetRawData(int nRawType, int nLineIdx, int nDataIdx) = 0;
|
virtual int GetRawDataCount(int nRawType, int nLineIdx) = 0;
|
|
//Create
|
// virtual BOOL CreateRawDataFormatData(CResultFileManager * pResultFileManager, int * pnDataCnt) = 0;//Add by Juneki 2016-03-01 ½Å±Ô RawDataÆ÷¸Ë »ý¼º
|
// virtual char* GetItemColumnName(int nItemIdx, int nColumnIdx) = 0; //Add by Juneki 2016-03-01 ½Å±Ô RawDataÆ÷¸Ë »ý¼º½Ã ItemÄ÷³¸íÀ» ¹Þ¾Æ¿È
|
|
|
protected:
|
BOOL m_bReadComplete;
|
BOOL m_bRTMSReadComplete;
|
int m_nLineCount;
|
|
BOOL m_bUseHeader;
|
BOOL m_bUseLot;
|
BOOL m_bUseCoordinate;
|
BOOL m_bUseBlock;
|
BOOL m_bUseGlass;
|
BOOL m_bUseEqpGlass;
|
BOOL m_bUseCell;
|
BOOL m_bUseDefect;
|
BOOL m_bUseInspection;
|
BOOL m_bUseCamera;
|
|
int m_nHeaderCount;
|
int m_nLotCount;
|
int m_nCoordinateCount;
|
int m_nBlockCount;
|
int m_nGlassCount;
|
int m_nEqpGlassCount;
|
int m_nCellCount;
|
int m_nDefectCount;
|
int m_nInspectionCount;
|
int m_nCameraCount;
|
|
//RAW
|
CDataHeader* m_pItemHeader;
|
VectorDataHeader m_vecDataHeader;
|
|
CDataLot* m_pItemLot;
|
VectorDataLot m_vecDataLot;
|
|
CDataCoordinate* m_pItemCoordinate;
|
VectorDataCoordinate m_vecDataCoordinate;
|
|
CDataBlock* m_pItemBlock;
|
VectorDataBlock m_vecDataBlock;
|
|
CDataGlass* m_pItemGlass;
|
VectorDataGlass m_vecDataGlass;
|
|
CDataGlass* m_pItemEqpGlass;
|
VectorDataGlass m_vecDataEqpGlass;
|
|
CDataCell* m_pItemCell;
|
VectorDataCell m_vecDataCell;
|
|
CDataDefect* m_pItemDefect;
|
VectorDataDefect m_vecDataDefect;
|
|
CDataInspection* m_pItemInspection;
|
VectorDataInspection m_vecDataInspection;
|
|
CDataDefect* m_pItemUserDefect;
|
VectorDataDefect m_vecDataUserDefect;
|
|
CDataDefect* m_pItemReflowDefect;
|
VectorDataDefect m_vecDataReflowDefect;
|
|
CDataCommon* m_pItemCommonData;
|
VectorDataCommon m_vecDataCommon;
|
|
CDataCamera* m_pItemCamera;
|
VectorDataCamera m_vecDataCamera;
|
|
|
CDataHeader* pDataHeader ;
|
CDataGlass* pDataGlass;
|
CDataGlass* pDataEQPGlass;
|
CDataBlock* pDataBock;
|
CDataCell* pDataCell;
|
CDataDefect* pDataDefect;
|
|
|
|
};
|