MsrParams.h 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. #pragma once
  2. #include "PartSTDData.h"
  3. #include "OTSImageScanParam.h"
  4. #include "OTSImageProcessParam.h"
  5. #include "OTSXRayParam.h"
  6. namespace OTSMODEL {
  7. using namespace OTSDATA;
  8. // CMsrParams command target
  9. class __declspec(dllexport) CMsrParams : public xmls::ISlo
  10. {
  11. /*protected:
  12. DECLARE_SERIAL(CMsrParams)*/
  13. public:
  14. CMsrParams(); // constructor
  15. CMsrParams(const CMsrParams&); // copy constructor
  16. CMsrParams(CMsrParams*); // copy constructor
  17. CMsrParams& operator=(const CMsrParams&); // =operator
  18. BOOL operator==(const CMsrParams&); // ==operator
  19. virtual ~CMsrParams(); // destructor
  20. // serialization
  21. //void Serialize(CArchive& ar);
  22. void Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode);
  23. // name
  24. CString GetName() { return m_strName; }
  25. void SetName(CString a_strName) { m_strName = a_strName; }
  26. void SetSteelTechnology(STEEL_TECHNOLOGY a_SteelTech) { m_SteelTech = a_SteelTech; }
  27. STEEL_TECHNOLOGY GetSteelTechnology() {return m_SteelTech ; }
  28. // particle analysis std
  29. CPartSTDDataPtr GetPartSTDData() { return m_poPartSTDData; }
  30. void SetPartSTDData(CPartSTDDataPtr a_poPartSTDData);
  31. // image scan parameter
  32. COTSImageScanParamPtr GetImageScanParam() { return m_poImageScanParam; }
  33. void SetImageScanParam(COTSImageScanParamPtr a_poImageScanParam);
  34. // image process parameter
  35. COTSImageProcessParamPtr GetImageProcessParam() { return m_poImageProcessParam; }
  36. void SetImageProcessParam(COTSImageProcessParamPtr a_poImageProcessParam);
  37. // x-ray parameter
  38. COTSXRayParamPtr GetXRayParam() { return m_poXRayParam; }
  39. void SetXRayParam(COTSXRayParamPtr a_poXRayParam);
  40. protected:
  41. // cleanup
  42. void Cleanup();
  43. // initialization
  44. void Init();
  45. // duplication
  46. void Duplicate(const CMsrParams& a_oSource);
  47. // name
  48. CString m_strName;
  49. // the classification method will do the classification according to the steeltechnology which is selected.
  50. STEEL_TECHNOLOGY m_SteelTech;
  51. // particle analysis std
  52. CPartSTDDataPtr m_poPartSTDData;
  53. // image scan parameter
  54. COTSImageScanParamPtr m_poImageScanParam;
  55. // image process parameter
  56. COTSImageProcessParamPtr m_poImageProcessParam;
  57. // x-ray parameter
  58. COTSXRayParamPtr m_poXRayParam;
  59. };
  60. typedef std::shared_ptr<CMsrParams> __declspec(dllexport) CMsrParamsPtr;
  61. typedef std::vector<CMsrParamsPtr> __declspec(dllexport) CMsrParamsList;
  62. }