OTSSTDLibDB.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #pragma once
  2. #include "DBBase.h"
  3. #include "OTSSTDLib.h"
  4. //#include "elementDB.h"
  5. #include "mineralgroupDB.h"
  6. using namespace OTSSQLITE;
  7. namespace OTSClassifyEngine
  8. {
  9. class __declspec(dllexport) CSTDLibDB : public CDBBase
  10. {
  11. public:
  12. CSTDLibDB(CDBStoreBasePtr a_datastore);
  13. CSTDLibDB(CDBStoreBasePtr a_datastore, CString strFileName);
  14. ~CSTDLibDB();
  15. CSTDLibPtr GetSTDLib(BOOL bForce = FALSE);
  16. virtual CDBTableBasePtr GetTableInfo() override;
  17. //CElementDBPtr GetElementDB();
  18. CMineralGroupDBPtr GetMineralGroupDB();
  19. virtual BOOL Init(const BOOL a_bClean = FALSE) override;
  20. virtual BOOL CreateTable(const BOOL a_bForce = FALSE) override;
  21. virtual BOOL DeleteTable() override;
  22. virtual BOOL RemoveAllRows() override;
  23. virtual BOOL IsDBExist() override;
  24. virtual CDBStoreBasePtr GetDatastore() override;
  25. virtual CDBQueryBasePtr GetTableQuery(LPCTSTR a_sOrderColumnName = nullptr) override;
  26. protected:
  27. BOOL ReadSTDLib();
  28. BOOL ReadSTDLib(CDBQueryBasePtr a_query);
  29. CStandardItemPtr ReadSTDItem(CDBQueryBasePtr a_query);
  30. //BOOL GetElements(CStandardItemPtr& pSTDMineral);
  31. BOOL GetMineralGroup(CSTDLibPtr& pOretype);
  32. BOOL ReadPartSTDLib();
  33. BOOL ReadPartSTDLib(CDBQueryBasePtr a_query);
  34. protected:
  35. CString m_strFileName;
  36. CDBTableBasePtr m_tableInfo;
  37. CSTDLibPtr m_pSTDLib;
  38. //CElementDBPtr m_elementDB;
  39. CMineralGroupDBPtr m_mineralgroupDB;
  40. private:
  41. CDBBasePtr myDB;
  42. };
  43. typedef std::shared_ptr<CSTDLibDB> __declspec(dllexport) CSTDLibDBPtr;
  44. }