| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 | #include "stdafx.h"#include "SmplMsrResultFileClr.h"#include <COTSUtilityDllFunExport.h>namespace OTSCLRINTERFACE {	CSmplMsrResultFileClr::CSmplMsrResultFileClr()	{		mResultFile =new CSmplMsrResultFilePtr( new CSmplMsrResultFile());	}	CSmplMsrResultFileClr::CSmplMsrResultFileClr(CSmplMsrResultFilePtr pSmpMsrResultFile)	{					mResultFile = new CSmplMsrResultFilePtr(pSmpMsrResultFile);					}	CSmplMsrResultFileClr::~CSmplMsrResultFileClr()	{		if(mResultFile!=nullptr)		{			delete mResultFile;			mResultFile = NULL;		}	}	CSmplMsrResultFileClr::!CSmplMsrResultFileClr()	{		if (mResultFile != nullptr)		{			delete mResultFile;			mResultFile = NULL;		}	}	CSmplMsrResultFilePtr CSmplMsrResultFileClr::GetCSmplMsrResultFilePtr()	{		return *mResultFile;	}	bool CSmplMsrResultFileClr::SetSEMStageData(CSEMStageDataClr^ a_pSEMStageData)	{		if (a_pSEMStageData == nullptr)		{			LogErrorTrace(__FILE__, __LINE__, _T("(SetSEMStageData)  a_pSEMStageData = null"));			return false;		}		CSmplMsrResultFilePtr pSmplMsrRetFile = this->GetCSmplMsrResultFilePtr();				pSmplMsrRetFile->SetSEMStageData(a_pSEMStageData->GetCSEMStageData());				return true;			}	bool CSmplMsrResultFileClr::SetStage(CStageClr^ a_pStage)	{		if (a_pStage == nullptr)		{			LogErrorTrace(__FILE__, __LINE__, _T("(SetStage)  a_pStage = null"));			return false;		}		CSmplMsrResultFilePtr pSmplMsrRetFile = this->GetCSmplMsrResultFilePtr();		CStagePtr pStage = a_pStage->GetStagePtr();		pSmplMsrRetFile->SetStage(pStage);			return true;	}	bool CSmplMsrResultFileClr::SetSEMStage(CSEMDataGnrClr^ a_pSEMData)	{		if (a_pSEMData == nullptr)		{			LogErrorTrace(__FILE__, __LINE__, _T("(SetSEMStage)  a_pSEMData = null"));			return false;		}		CSmplMsrResultFilePtr pSmplMsrRetFile = this->GetCSmplMsrResultFilePtr();		CSEMDataGnrPtr pSEMDataGnr = a_pSEMData->GetCSEMDataGnrPtr();		pSmplMsrRetFile->SetSEMStage(pSEMDataGnr);						return true;	}	bool CSmplMsrResultFileClr::SetSample(COTSSampleClr^ a_pSample)	{		if (a_pSample == nullptr)		{			LogErrorTrace(__FILE__, __LINE__, _T("(SetSample)  a_pSample = null"));			return false;		}		CSmplMsrResultFilePtr pSmplMsrRetFile = this->GetCSmplMsrResultFilePtr();		COTSSamplePtr pSample = a_pSample->GetSamplePtr();		pSmplMsrRetFile->SetSample(pSample);		return true;	}	bool CSmplMsrResultFileClr::SetSwitch(bool a_bSwitch)	{		CSmplMsrResultFilePtr pSmplMsrRetFile = this->GetCSmplMsrResultFilePtr();				ASSERT(pSmplMsrRetFile);		if (!pSmplMsrRetFile)		{			LogErrorTrace(__FILE__, __LINE__, _T("SetSwitch: can't get sample measure result file pointer."));			return false;		}				pSmplMsrRetFile->SetSwitch(a_bSwitch);			return true;	}	List<COTSFieldDataClr^>^ CSmplMsrResultFileClr::GetFieldData()	{		List<COTSFieldDataClr^>^ fds = gcnew List<COTSFieldDataClr^>();		auto fields = mResultFile->get()->GetFieldData();		for each (auto f in fields)		{			fds->Add(gcnew COTSFieldDataClr(f));		}		return fds;	}	bool CSmplMsrResultFileClr::SetFieldData(List<COTSFieldDataClr^>^ a_listFieldData)	{		if (a_listFieldData == nullptr)		{			LogErrorTrace(__FILE__, __LINE__, _T("(SetFieldData)  a_listFieldData = null"));			return false;		}		CSmplMsrResultFilePtr pSmplMsrRetFile = this->GetCSmplMsrResultFilePtr();		std::vector<COTSFieldDataPtr> SMRFieldVec;		SMRFieldVec.clear();		for (int i = 0; i < a_listFieldData->Count; i++)		{			COTSFieldDataPtr pFieldData = a_listFieldData[i]->GetOTSFieldDataPtr();			SMRFieldVec.push_back(pFieldData);		}		pSmplMsrRetFile->SetFieldData(SMRFieldVec);		return true;	}}
 |