STDXMLFileMnr.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. #pragma once
  2. #include "otsdataconst.h"
  3. #include "PartSTDData.h"
  4. namespace OTSMODEL {
  5. using namespace OTSDATA;
  6. // CPartSTDFileMnr command target
  7. class __declspec(dllexport) CSTDXMLFileMnr
  8. {
  9. public:
  10. CSTDXMLFileMnr(); // constructor
  11. CSTDXMLFileMnr(const CSTDXMLFileMnr&); // copy constructor
  12. CSTDXMLFileMnr(CSTDXMLFileMnr*); // copy constructor
  13. CSTDXMLFileMnr& operator=(const CSTDXMLFileMnr&); // =operator
  14. BOOL operator==(const CSTDXMLFileMnr&); // ==operator
  15. virtual ~CSTDXMLFileMnr(); // destructor
  16. // Load/Save
  17. BOOL Load(CString a_strPathName = _T(""), BOOL a_bClear = TRUE);
  18. BOOL Save(CString a_strPathName = _T(""), CString a_LibraryName = _T(""));
  19. // elements list
  20. CElementsList& GetElementsList();
  21. void SetElementsList(CElementsList& a_listElements, BOOL a_bClear /*= TRUE*/);
  22. CElementPtr GetElementByIndex(int a_nIndex);
  23. BOOL DeleteElementByIndex(int a_nIndex);
  24. BOOL AddElement(CElementPtr a_poElement);
  25. // std items list
  26. CSTDItemsList& GetSTDItemsList();
  27. void SetSTDItemsList(CSTDItemsList & a_listSTDItems, BOOL a_bClear);
  28. CSTDItemPtr GetSTDItemByIndex(int a_nIndex);
  29. CSTDItemPtr GetSTDItemById(int a_nId);
  30. BOOL DeleteSTDItemByIndex(int a_nIndex);
  31. BOOL MoveSTDItemDown(int a_nIndex);
  32. BOOL MoveSTDItemUp(int a_nIndex);
  33. BOOL AddSTDItem(CSTDItemPtr a_poSTDItem);
  34. BOOL InsertSTDItem(int a_nIndex, CSTDItemPtr a_poSTDItem);
  35. BOOL EditSTDItem(int a_nIndex, CSTDItemPtr a_poSTDItem);
  36. // particle analysis standard data
  37. CPartSTDDataPtr GetPartSTDData() { return m_poPartSTDData; }
  38. void SetPartSTDData(CPartSTDDataPtr);
  39. // file pathname
  40. CString GetPathName() { return m_strPathName; }
  41. void SetPathName(CString a_strPathName) { m_strPathName = a_strPathName; }
  42. // modify flag
  43. BOOL IsModified() { return m_bModify; }
  44. void SetModify(BOOL a_bModify = TRUE) { m_bModify = a_bModify; }
  45. ////std file mgr
  46. //CSTDFileMgrPtr GetDBSTDFileMgr() { return m_poSTDFileMgr; }
  47. //void SetDBSTDFileMgr(CSTDFileMgrPtr a_nSTDFileMgr);
  48. protected:
  49. // cleanup
  50. void Cleanup();
  51. // initialization
  52. void Init();
  53. // duplication
  54. void Duplicate(const CSTDXMLFileMnr& a_oSource);
  55. // particle analysis standard data
  56. CPartSTDDataPtr m_poPartSTDData;
  57. // sys std lib
  58. //CSTDFileMgrPtr m_poSTDFileMgr;
  59. // file pathname
  60. CString m_strPathName;
  61. // modify flag
  62. BOOL m_bModify;
  63. };
  64. typedef std::shared_ptr<CSTDXMLFileMnr> __declspec(dllexport) CPartSTDFileMnrPtr;
  65. }