#include "stdafx.h" #include "SmplMsrResultFileMgrClr.h" namespace OTSINTERFACE { CSmplMsrResultFileMgrClr::CSmplMsrResultFileMgrClr() { m_pSmplMsrRetFileMgr = new CSmplMsrResultFileMgrPtr(new CSmplMsrResultFileMgr(_T(""))); } CSmplMsrResultFileMgrClr::CSmplMsrResultFileMgrClr(CSmplMsrResultFileMgrPtr pSmplMsrRetFileMgr) { m_pSmplMsrRetFileMgr = new CSmplMsrResultFileMgrPtr(pSmplMsrRetFileMgr); } CSmplMsrResultFileMgrClr::~CSmplMsrResultFileMgrClr() { if (m_pSmplMsrRetFileMgr != nullptr) { delete m_pSmplMsrRetFileMgr; m_pSmplMsrRetFileMgr = nullptr; } } CSmplMsrResultFileMgrClr::!CSmplMsrResultFileMgrClr() { if (m_pSmplMsrRetFileMgr != nullptr) { delete m_pSmplMsrRetFileMgr; m_pSmplMsrRetFileMgr = nullptr; } } CSmplMsrResultFileMgrPtr CSmplMsrResultFileMgrClr::GetCSmplMsrResultFileMgrPtr() { return *m_pSmplMsrRetFileMgr; } bool CSmplMsrResultFileMgrClr::Init(COTSSampleClr^ a_pSample) { if (a_pSample == nullptr) { LogErrorTrace(__FILE__, __LINE__, _T("(CSmplMsrResultFileMgrClr::Init) a_pSample = null")); return false; } CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); COTSSamplePtr pSample = a_pSample->GetSamplePtr(); return pSampleMsrRetFileMgr->Init(pSample); } bool CSmplMsrResultFileMgrClr::Load(String^ a_strPathname) { CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); return pSampleMsrRetFileMgr->Load(a_strPathname); } bool CSmplMsrResultFileMgrClr::Save(String^ a_strPathname) { CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); return pSampleMsrRetFileMgr->Save(a_strPathname); } // get particle STD data CPartSTDDataClr^ CSmplMsrResultFileMgrClr::GetPartSTDData() { CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); CPartSTDDataPtr pPartSTDData = pSampleMsrRetFileMgr->GetPartSTDData(); CPartSTDDataClr^ pPartSTDDataClr = gcnew CPartSTDDataClr(pPartSTDData); return pPartSTDDataClr; } String^ CSmplMsrResultFileMgrClr::GetFieldFileSubFolderStr() { CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); return gcnew String(pSampleMsrRetFileMgr->GetFieldFileSubFolderStr()); } bool CSmplMsrResultFileMgrClr::SaveBSEFileForAField(COTSFieldMgrClr^ a_pField) { CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); COTSFieldMgrPtr pFieldMgr = a_pField->GetCFiledMgrPtr(); return pSampleMsrRetFileMgr->SaveBSEFileForAField(pFieldMgr); } bool CSmplMsrResultFileMgrClr::SaveXRayFileForAField(COTSFieldMgrClr^ a_pField) { CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); COTSFieldMgrPtr pFieldMgr = a_pField->GetCFiledMgrPtr(); return pSampleMsrRetFileMgr->SaveXRayFileForAField(pFieldMgr); } COTSFieldDataClr^ CSmplMsrResultFileMgrClr::GetFieldById(int a_nID) { CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); COTSFieldDataPtr pFieldData = pSampleMsrRetFileMgr->GetFieldById(a_nID); COTSFieldDataClr^ pFieldDataClr = gcnew COTSFieldDataClr(pFieldData); return pFieldDataClr; } bool CSmplMsrResultFileMgrClr::AddAField(COTSFieldDataClr^ a_pFieldData) { CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); COTSFieldDataPtr pFieldData = a_pFieldData->GetOTSFieldDataPtr(); return pSampleMsrRetFileMgr->AddAField(pFieldData); } bool CSmplMsrResultFileMgrClr::DeleteAFieldById(int a_nID) { CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); bool bRet = pSampleMsrRetFileMgr->DeleteAFieldById(a_nID); return bRet; } COTSFieldMgrListClr^ CSmplMsrResultFileMgrClr::GetOTSFieldMgrList() { COTSFieldMgrListClr^ listOTSFieldMgr = gcnew COTSFieldMgrListClr(); listOTSFieldMgr->Clear(); CSmplMsrResultFileMgrPtr pSampleMsrRetFileMgr = GetCSmplMsrResultFileMgrPtr(); ASSERT(pSampleMsrRetFileMgr); if (!pSampleMsrRetFileMgr) { LogErrorTrace(__FILE__, __LINE__,_T("GetOTSFieldMgrList: can't get pointer.")); return listOTSFieldMgr; } COTSFieldMgrList listFieldMgr; listFieldMgr.clear(); listFieldMgr = pSampleMsrRetFileMgr->GetOTSFldMgrListAndAnalysisXrayList(); for (auto pFieldMgr : listFieldMgr) { COTSFieldMgrClr^ FieldMgrClr = gcnew COTSFieldMgrClr(pFieldMgr); listOTSFieldMgr->Add(FieldMgrClr); } return listOTSFieldMgr; } }