OTSXRayParam.h 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. #pragma once
  2. #include "otsdataconst.h"
  3. #include "XMLSerialization.h"
  4. namespace OTSDATA
  5. {
  6. //using namespace OTSDATA;
  7. // x-ray scan mode
  8. __declspec(dllexport) const OTS_X_RAY_SCAN_MODE DEFAULE_XRAY_SCAN_MODE = OTS_X_RAY_SCAN_MODE::PointMode;
  9. // search x-ray low counts cut off
  10. __declspec(dllexport) const int DEFAULE_XRAY_LOW_COUNT = 800;
  11. // search x-ray speed
  12. __declspec(dllexport) const OTS_THREE_TIES_OPTIONS DEFAULE_SEARCH_XRAY_SPEED = OTS_THREE_TIES_OPTIONS::TIE2;
  13. // analysis x-ray speed
  14. __declspec(dllexport) const OTS_THREE_TIES_OPTIONS DEFAULE_ANALYSIS_XRAY_SPEED = OTS_THREE_TIES_OPTIONS::TIE2;
  15. // x-ray expect counts
  16. __declspec(dllexport) const int DEFAULE_XRAY_EXP_COUNT = 4500;
  17. // x-ray speed search
  18. __declspec(dllexport) const int DEFAULE_XRAY_SEARCH_MID_TIME = 20;
  19. // x-ray speed analysis
  20. __declspec(dllexport) const int DEFAULE_XRAY_ANALY_MID_TIME = 1000;
  21. class __declspec(dllexport) COTSXRayParam : public xmls::ISlo
  22. {
  23. public:
  24. COTSXRayParam(); // constructor
  25. COTSXRayParam(const COTSXRayParam&); // copy constructor
  26. COTSXRayParam(COTSXRayParam*); // copy constructor
  27. COTSXRayParam& operator=(const COTSXRayParam&); // =operator
  28. BOOL operator==(const COTSXRayParam&); // =operator
  29. virtual ~COTSXRayParam(); // detractor
  30. // serialization
  31. void Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode);
  32. OTS_X_RAY_SCAN_MODE GetScanMode() { return m_nScanMode; }
  33. void SetScanMode(OTS_X_RAY_SCAN_MODE a_nVal) { m_nScanMode = a_nVal; }
  34. BOOL GetShowScanMode() { return m_bShowScanMode; }
  35. void SetShowScanMode(BOOL a_bValue) { m_bShowScanMode = a_bValue; }
  36. OTS_THREE_TIES_OPTIONS GetSearchSpeed() { return m_nSearchSpeed;}
  37. void SetSearchSpeed(OTS_THREE_TIES_OPTIONS a_nVal) { m_nSearchSpeed = a_nVal; }
  38. // low count
  39. int GetXRaySearchCount() { return m_nXRaySearchCount;}
  40. void SetXRaySearchCount(int a_nVal) { m_nXRaySearchCount = a_nVal; }
  41. OTS_THREE_TIES_OPTIONS GetAnalySpeed() { return m_nAnalySpeed;}
  42. void SetAnalySpeed(OTS_THREE_TIES_OPTIONS a_nVal) { m_nAnalySpeed = a_nVal;}
  43. BOOL GetShowSpeed() { return m_bShowSpeed; }
  44. void SetShowSpeed(BOOL a_bValue) { m_bShowSpeed = a_bValue; }
  45. int GetAnalyExpCount() {return m_nAnalyExpCount;}
  46. void SetAnalyExpCount(int a_nVal) { m_nAnalyExpCount = a_nVal; }
  47. BOOL GetShowExpCount() { return m_bShowExpCount; }
  48. void SetShowExpCount(BOOL a_bValue) { m_bShowExpCount = a_bValue; }
  49. int GetMidSearchAQTime() { return m_nMidSearchAQTime; }
  50. void SetMidSearchAQTime(int a_nMidSearchAQTime) { m_nMidSearchAQTime = a_nMidSearchAQTime; }
  51. int GetLowSearchAQTime() { return m_nMidSearchAQTime * 3 / 4; }
  52. void SetLowSearchAQTime(int a_nLowSearchAQTime);
  53. int GetHighSearchAQTime() { return m_nMidSearchAQTime * 5 / 4; }
  54. void SetHightSearchAQTime(int a_nHighSearchAQTime);
  55. int GetMidAnalyAQTime() { return m_nMidAnalyAQTime; }
  56. void SetMidAnalyAQTime(int a_nMidAnalyAQTime) { m_nMidAnalyAQTime = a_nMidAnalyAQTime; }
  57. int GetLowAnalyAQTime() { return (int)m_nMidAnalyAQTime * 3 / 4; }
  58. void SetLowAnalyAQTime(int a_nLowAnalyAQTime);
  59. int GetHighAnalyAQTime() { return (int)m_nMidAnalyAQTime * 5 / 4; }
  60. void SetHighAnalyAQTime(int a_nHighAnalyAQTime);
  61. protected:
  62. // cleanup
  63. void Cleanup();
  64. // initialization
  65. void Init();
  66. // duplication
  67. void Duplicate(const COTSXRayParam& a_oSource);
  68. private:
  69. // scan mode: point scan, feature scan
  70. OTS_X_RAY_SCAN_MODE m_nScanMode;
  71. BOOL m_bShowScanMode;
  72. // search xray, there is only xray data,and there is no element
  73. // search xray scan speed
  74. OTS_THREE_TIES_OPTIONS m_nSearchSpeed;
  75. // search xray count
  76. int m_nXRaySearchCount;
  77. // analysis xray, there are both xray data and element data
  78. // analysis xray scan speed
  79. OTS_THREE_TIES_OPTIONS m_nAnalySpeed;
  80. BOOL m_bShowSpeed;
  81. // analysis xray count
  82. int m_nAnalyExpCount;
  83. BOOL m_bShowExpCount;
  84. // search xray AQTime at middle speed
  85. int m_nMidSearchAQTime;
  86. // search xray AQTime at middle speed
  87. int m_nMidAnalyAQTime;
  88. // xray step to do a xray
  89. int m_nStep;
  90. BOOL m_bShowStep;
  91. };
  92. typedef std::shared_ptr<COTSXRayParam> __declspec(dllexport) COTSXRayParamPtr;
  93. typedef std::vector<COTSXRayParamPtr> __declspec(dllexport) COTSXRayParamsList;
  94. }