| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193 |
- #include "stdafx.h"
- #include "OTSGeneralParameters.h"
- namespace OTSMODEL
- {
- // constructor
- COTSGeneralParameters::COTSGeneralParameters()
- {
- Init();
- }
- // copy constructor
- COTSGeneralParameters::COTSGeneralParameters(const COTSGeneralParameters& a_oSource)
- {
- // can't copy itself
- if (&a_oSource == this)
- {
- return;
- }
- // copy data over
- Duplicate(a_oSource);
- }
- // copy constructor
- COTSGeneralParameters::COTSGeneralParameters(COTSGeneralParameters* a_poSource)
- {
- // input check
- ASSERT(a_poSource);
- if (!a_poSource)
- {
- return;
- }
- // can't copy itself
- if (a_poSource == this)
- {
- return;
- }
- // copy data over
- Duplicate(*a_poSource);
- }
- // =operator
- COTSGeneralParameters& COTSGeneralParameters::operator=(const COTSGeneralParameters& a_oSource)
- {
- // cleanup
- Cleanup();
- // copy the class data over
- Duplicate(a_oSource);
- // return class
- return *this;
- }
- // ==operator
- BOOL COTSGeneralParameters::operator==(const COTSGeneralParameters& a_oSource)
- {
- // return test result
- return((*m_poPartSTDData.get()) == (*(a_oSource.m_poPartSTDData.get())) &&
- (m_strDefaultSampleName.CompareNoCase(a_oSource.m_strDefaultSampleName) == 0) &&
- (m_bMeasSwitch == a_oSource.m_bMeasSwitch) &&
- (m_strMeasParamFileFolderName.CompareNoCase(a_oSource.m_strMeasParamFileFolderName) == 0) &&
- (m_strPartSTDLibFolderName.CompareNoCase(a_oSource.m_strPartSTDLibFolderName) == 0)) &&
- (m_StdLibTypeIndex = a_oSource.m_StdLibTypeIndex)&& (m_SteelTechnology = a_oSource.m_SteelTechnology) &&
- (m_nDefaultShape == a_oSource.m_nDefaultShape) &&
- (m_dDefaultArea == a_oSource.m_dDefaultArea);
- }
- // detractor
- COTSGeneralParameters::~COTSGeneralParameters()
- {
- Cleanup();
- }
- // COTSStageData member functions
- // serialization
- // particle analysis lib
- void COTSGeneralParameters::SetPartSTDLib(CPartSTDDataPtr a_poPartSTDData)
- {
- ASSERT(a_poPartSTDData);
- if (!a_poPartSTDData)
- {
- return;
- }
- //m_poPartSTDData = CPartSTDDataPtr(new CPartSTDData(*(a_poPartSTDData.get())));
- m_poPartSTDData = a_poPartSTDData;
- }
- void COTSGeneralParameters::Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode)
- {
- xmls::xString xstrDefaultSampleName;
- xmls::xBool xbMeasSwitch;
- xmls::xString xstrMeasParamFileFolderName;
- xmls::xString xstrPartSTDLibFolderName;
- xmls::xString xstrPartSTDLibFileName;
- xmls::xInt xnStdLibTypeIndex;
- xmls::xInt xnSteelTechnology;
- xmls::xInt xnShape;
- xmls::xDouble xdArea;
- xmls::Slo slo;
- slo.Register("DefaultSampleName", &xstrDefaultSampleName);
- slo.Register("MeasSwitch", &xbMeasSwitch);
- slo.Register("MeasParamFileFolderName", &xstrMeasParamFileFolderName);
- slo.Register("PartSTDLibFolderName", &xstrPartSTDLibFolderName);
- slo.Register("StdLibFileName", &xstrPartSTDLibFileName);
- slo.Register("StdLibTypeIndex", &xnStdLibTypeIndex);
- slo.Register("SteelTechnology", &xnSteelTechnology);
- //slo.Register("PartSTDData", m_poPartSTDData.get());
- slo.Register("DefaultShape", &xnShape);
- slo.Register("DefaultArea", &xdArea);
- if (isStoring)
- {
- xstrDefaultSampleName = m_strDefaultSampleName;
- xbMeasSwitch = m_bMeasSwitch;
- xstrMeasParamFileFolderName = m_strMeasParamFileFolderName;
- xstrPartSTDLibFolderName = m_strPartSTDLibFolderName;
- xstrPartSTDLibFileName = m_STDLibFileName;
- xnStdLibTypeIndex = m_StdLibTypeIndex;
- xnSteelTechnology = m_SteelTechnology;
- xnShape = (int)m_nDefaultShape;
- xdArea = m_dDefaultArea;
- slo.Serialize(true, classDoc, rootNode);
- }
- else
- {
- slo.Serialize(false, classDoc, rootNode);
- m_strDefaultSampleName = xstrDefaultSampleName.value().c_str();
- m_bMeasSwitch = xbMeasSwitch.value();
- m_strMeasParamFileFolderName = xstrMeasParamFileFolderName.value().c_str();
- m_strPartSTDLibFolderName = xstrPartSTDLibFolderName.value().c_str();
- m_STDLibFileName = xstrPartSTDLibFileName.value().c_str();
- m_StdLibTypeIndex = xnStdLibTypeIndex.value();
- m_SteelTechnology = xnSteelTechnology.value();
- m_nDefaultShape = (OTSDATA::DOMAIN_SHAPE)xnShape.value();
- m_dDefaultArea = xdArea.value();
- }
- }
- // cleanup
- void COTSGeneralParameters::Cleanup()
- {
- // nothing needs to be done at the moment
- }
- // initialization
- void COTSGeneralParameters::Init()
- {
- m_poPartSTDData = CPartSTDDataPtr(new CPartSTDData());
- m_strDefaultSampleName = _T("");
- m_bMeasSwitch = TRUE;
- m_strMeasParamFileFolderName = _T("");
- m_strPartSTDLibFolderName = _T("");
- m_StdLibTypeIndex = 0;
- m_SteelTechnology = 0;
- m_nDefaultShape = DOMAIN_SHAPE::INVALID;
- m_dDefaultArea = 0;
- }
- // duplication
- void COTSGeneralParameters::Duplicate(const COTSGeneralParameters& a_oSource)
- {
- // initialization
- Init();
- // copy data over
- m_poPartSTDData = CPartSTDDataPtr(new CPartSTDData(*(a_oSource.m_poPartSTDData.get())));
- m_strDefaultSampleName = a_oSource.m_strDefaultSampleName;
- m_bMeasSwitch = a_oSource.m_bMeasSwitch;
- m_strMeasParamFileFolderName = a_oSource.m_strMeasParamFileFolderName;
- m_strPartSTDLibFolderName = a_oSource.m_strPartSTDLibFolderName;
- m_StdLibTypeIndex = a_oSource.m_StdLibTypeIndex;
- m_SteelTechnology = a_oSource.m_SteelTechnology;
- m_nDefaultShape = a_oSource.m_nDefaultShape;
- m_dDefaultArea = a_oSource.m_dDefaultArea;
- }
-
- }
|