#pragma once #include "OTSImageScanParam.h" #include "OTSImageProcessParam.h" #include "OTSXRayParam.h" namespace OTSMODEL { using namespace OTSIMGPROC; // CMsrParams command target class __declspec(dllexport) CMsrParams : public xmls::ISlo { public: CMsrParams(); // constructor CMsrParams(const CMsrParams&); // copy constructor CMsrParams(CMsrParams*); // copy constructor CMsrParams& operator=(const CMsrParams&); // =operator BOOL operator==(const CMsrParams&); // ==operator virtual ~CMsrParams(); // destructor // serialization //void Serialize(CArchive& ar); void Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode); // name CString GetName() { return m_strName; } void SetName(CString a_strName) { m_strName = a_strName; } void SetSteelTechnology(STEEL_TECHNOLOGY a_SteelTech) { m_SteelTech = a_SteelTech; } STEEL_TECHNOLOGY GetSteelTechnology() {return m_SteelTech ; } // image scan parameter COTSImageScanParamPtr GetImageScanParam() { return m_poImageScanParam; } void SetImageScanParam(COTSImageScanParamPtr a_poImageScanParam); // image process parameter COTSImageProcessParamPtr GetImageProcessParam() { return m_poImageProcessParam; } void SetImageProcessParam(COTSImageProcessParamPtr a_poImageProcessParam); // x-ray parameter COTSXRayParamPtr GetXRayParam() { return m_poXRayParam; } void SetXRayParam(COTSXRayParamPtr a_poXRayParam); protected: // cleanup void Cleanup(); // initialization void Init(); // duplication void Duplicate(const CMsrParams& a_oSource); // name CString m_strName; // the classification method will do the classification according to the steeltechnology which is selected. STEEL_TECHNOLOGY m_SteelTech; // image scan parameter COTSImageScanParamPtr m_poImageScanParam; // image process parameter COTSImageProcessParamPtr m_poImageProcessParam; // x-ray parameter COTSXRayParamPtr m_poXRayParam; }; typedef std::shared_ptr __declspec(dllexport) CMsrParamsPtr; typedef std::vector __declspec(dllexport) CMsrParamsList; }