HoleBSEImg.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #pragma once
  2. #include "BSEImg.h"
  3. namespace OTSDATA {
  4. class __declspec(dllexport) CHoleBSEImg : public CBSEImg
  5. {
  6. protected:
  7. DECLARE_SERIAL(CHoleBSEImg)
  8. public:
  9. CHoleBSEImg();
  10. CHoleBSEImg(CRect,int,CPoint); // constructor
  11. CHoleBSEImg(const CHoleBSEImg&); // copy constructor
  12. CHoleBSEImg(CHoleBSEImg*); // copy constructor
  13. CHoleBSEImg& operator=(const CHoleBSEImg&); // =operator
  14. ~CHoleBSEImg();
  15. // sterilizations
  16. void Serialize(CArchive& ar);
  17. void Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode);
  18. // HoleID
  19. int GetHoleID() { return m_nHoleID; }
  20. void SetHoleID(int a_nHoleID) { m_nHoleID = a_nHoleID; }
  21. // position
  22. CPoint GetPosition() { return m_poiPosition; }
  23. void SetPosition(CPoint a_poiPosition) { m_poiPosition = a_poiPosition; }
  24. protected:
  25. // cleanup
  26. void Cleanup();
  27. // Initialization
  28. void Init();
  29. // duplication
  30. void Duplicate(const CHoleBSEImg& a_oSource);
  31. protected:
  32. //hole name
  33. int m_nHoleID;
  34. //image position
  35. CPoint m_poiPosition;
  36. };
  37. typedef std::shared_ptr<CHoleBSEImg> __declspec(dllexport) CHoleBSEImgPtr;
  38. typedef std::vector<CHoleBSEImgPtr> __declspec(dllexport) CHoleBSEImgsList;
  39. }