OTSImageProcessParam.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. #pragma once
  2. #include "afx.h"
  3. #include "IntRange.h"
  4. #include "DoubleRange.h"
  5. #include "XMLSerialization.h"
  6. // COTSStageData command target
  7. namespace OTSMODEL
  8. {
  9. using namespace OTSDATA;
  10. __declspec(dllexport) const int DEFUALT_PARTICALE_AREA_MIN = 1;
  11. __declspec(dllexport) const int DEFUALT_PARTICALE_AREA_MAX = 200;
  12. __declspec(dllexport) const int DEFUALT_BG_GRAY_LEVEL_MIN = 150;
  13. __declspec(dllexport) const int DEFUALT_BG_GRAY_LEVEL_MAX = 255;
  14. __declspec(dllexport) const int DEFUALT_PARTICLE_GRAY_LEVEL_MIN = 5;
  15. __declspec(dllexport) const int DEFUALT_PARTICLE_GRAY_LEVEL_MAX = 155;
  16. class __declspec(dllexport) COTSImageProcessParam : public xmls::ISlo
  17. {
  18. public:
  19. COTSImageProcessParam(); // constructor
  20. COTSImageProcessParam(const COTSImageProcessParam&); // copy constructor
  21. COTSImageProcessParam(COTSImageProcessParam*); // copy constructor
  22. COTSImageProcessParam& operator=(const COTSImageProcessParam&); // =operator
  23. BOOL operator==(const COTSImageProcessParam&); // =operator
  24. virtual ~COTSImageProcessParam(); // detractor
  25. // serialization
  26. void Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode);
  27. CDoubleRange GetIncArea() const { return m_oIncArea; }
  28. void SetIncArea(CDoubleRange a_oVal) { m_oIncArea = a_oVal; }
  29. BOOL GetShowAreaUp() { return m_bShowAreaUp; }
  30. void SetShowAreaUp(BOOL a_bValue) { m_bShowAreaUp = a_bValue; }
  31. BOOL GetShowAreaLow() { return m_bShowAreaLow; }
  32. void SetShowAreaLow(BOOL a_bValue) { m_bShowAreaLow = a_bValue; }
  33. CIntRange GetBGGray() const { return m_oBGGray; }
  34. void SetBGGray(CIntRange a_oVal) { m_oBGGray = a_oVal; }
  35. BOOL GetShowBGUp() { return m_bShowBGUp; }
  36. void SetShowBGUp(BOOL a_bValue) { m_bShowBGUp = a_bValue; }
  37. BOOL GetShowBGLow() { return m_bShowBGLow; }
  38. void SetShowBGLow(BOOL a_bValue) { m_bShowBGLow = a_bValue; }
  39. CIntRange GetParticleGray() const { return m_oParticleGray; }
  40. void SetParticleGray(CIntRange a_oVal) { m_oParticleGray = a_oVal; }
  41. BOOL GetShowPGUp() { return m_bShowPGUp; }
  42. void SetShowPGUp(BOOL a_bValue) { m_bShowPGUp = a_bValue; }
  43. BOOL GetShowPGLow() { return m_bShowPGLow; }
  44. void SetShowPGLow(BOOL a_bValue) { m_bShowPGLow = a_bValue; }
  45. protected:
  46. // cleanup
  47. void Cleanup();
  48. // initialization
  49. void Init();
  50. // duplication
  51. void Duplicate(const COTSImageProcessParam& a_oSource);
  52. private:
  53. CDoubleRange m_oIncArea; //셸憧膠충생
  54. BOOL m_bShowAreaUp;
  55. BOOL m_bShowAreaLow;
  56. CIntRange m_oBGGray; //교쒼뿍똑
  57. BOOL m_bShowBGUp;
  58. BOOL m_bShowBGLow;
  59. CIntRange m_oParticleGray; //셸憧膠뿍똑
  60. BOOL m_bShowPGUp;
  61. BOOL m_bShowPGLow;
  62. };
  63. typedef std::shared_ptr<COTSImageProcessParam> __declspec(dllexport) COTSImageProcessParamPtr;
  64. typedef std::vector<COTSImageProcessParamPtr> __declspec(dllexport) COTSImageProcessParamsList;
  65. }