123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193 |
- // MsrParams.cpp : implementation file
- //
- #include "stdafx.h"
- #include "OTSData.h"
- #include "MsrParams.h"
- namespace OTSMODEL {
- // CMsrParams
- // constructor
- CMsrParams::CMsrParams()
- {
- // initialization
- Init();
- }
- // copy constructor
- CMsrParams::CMsrParams(const CMsrParams& a_oSource)
- {
- // can't copy itself
- if (&a_oSource == this)
- {
- return;
- }
- // copy data over
- Duplicate(a_oSource);
- }
- // copy constructor
- CMsrParams::CMsrParams(CMsrParams* 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
- CMsrParams& CMsrParams::operator=(const CMsrParams& a_oSource)
- {
- // cleanup
- Cleanup();
- // copy the class data over
- Duplicate(a_oSource);
- // return class
- return *this;
- }
- // ==operator
- BOOL CMsrParams::operator==(const CMsrParams& a_oSource)
- {
- // members
- return m_strName.Compare(a_oSource.m_strName) == 0 &&
- //*(m_poPartSTDData.get()) == *(a_oSource.m_poPartSTDData.get()) &&
- *(m_poImageScanParam.get()) == *(a_oSource.m_poImageScanParam.get()) &&
- *(m_poImageProcessParam.get()) == *(a_oSource.m_poImageProcessParam.get()) &&
- *(m_poXRayParam.get()) == *(a_oSource.m_poXRayParam.get());
- }
- // destructor
- CMsrParams::~CMsrParams()
- {
- // cleanup
- Cleanup();
- }
- // CMsrParams member functions
- // public
- // serialization
-
- void CMsrParams::Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode)
- {
- xmls::xString xstrName;
- xmls::xInt xSteelTech;
- xmls::Slo slo;
- //this->Register("Name", &xstrName);
- slo.Register("SteelTech", &xSteelTech);
- slo.Register("ImageScanParam", m_poImageScanParam.get());
- slo.Register("ImageProcessParam", m_poImageProcessParam.get());
- slo.Register("XRayParam", m_poXRayParam.get());
- if (isStoring)
- {
- xstrName = m_strName;
- xSteelTech = (int)m_SteelTech;
- slo.Serialize(true, classDoc, rootNode);
- }
- else
- {
- slo.Serialize(false, classDoc, rootNode);
- m_strName = xstrName.value().c_str();
- m_SteelTech = (STEEL_TECHNOLOGY)xSteelTech.value();
- }
- }
- // image scan parameter
- void CMsrParams::SetImageScanParam(COTSImageScanParamPtr a_poImageScanParam)
- {
- // make sure that image scan parameter always valid
- ASSERT(a_poImageScanParam);
- if(!a_poImageScanParam)
- {
- return;
- }
- m_poImageScanParam = COTSImageScanParamPtr(new COTSImageScanParam(a_poImageScanParam.get()));
- }
- // image process parameter
- void CMsrParams::SetImageProcessParam(COTSImageProcessParamPtr a_poImageProcessParam)
- {
- // make sure that image process parameter always valid
- ASSERT(a_poImageProcessParam);
- if(!a_poImageProcessParam)
- {
- return;
- }
-
- m_poImageProcessParam = COTSImageProcessParamPtr(new COTSImageProcessParam( a_poImageProcessParam.get()));
-
- }
- // x-ray parameter
- void CMsrParams::SetXRayParam(COTSXRayParamPtr a_poXRayParam)
- {
- // make sure that x-ray parameter always valid
- ASSERT(a_poXRayParam);
- if(!a_poXRayParam)
- {
- return;
- }
-
- m_poXRayParam = COTSXRayParamPtr(new COTSXRayParam( a_poXRayParam.get()));
-
- }
- // protected
- // cleanup
- void CMsrParams::Cleanup()
- {
- // need to do nothing at the moment
- }
- // initialization
- void CMsrParams::Init()
- {
- // initialization
- m_strName = _T("MsrParam");
- m_SteelTech = STEEL_TECHNOLOGY::GeneralProcessMode;
- m_poImageScanParam = COTSImageScanParamPtr(new COTSImageScanParam());
- m_poImageProcessParam = COTSImageProcessParamPtr(new COTSImageProcessParam());
- m_poXRayParam = COTSXRayParamPtr(new COTSXRayParam());
- }
- // duplication
- void CMsrParams::Duplicate(const CMsrParams& a_oSource)
- {
- // initialization
- Init();
- // copy data over
- m_strName = a_oSource.m_strName;
- m_SteelTech = a_oSource.m_SteelTech;
- m_poImageScanParam = a_oSource.m_poImageScanParam;
- m_poImageProcessParam = a_oSource.m_poImageProcessParam;
- m_poXRayParam = a_oSource.m_poXRayParam;
- }
- }
|