#pragma once #include "DBBase.h" #include "ParticleSTD.h" namespace OTSClassifyEngine { using namespace OTSSQLITE; class __declspec(dllexport) CZeroElementRulesDataDB { public: CZeroElementRulesDataDB(CDBStoreBasePtr a_datastore); ~CZeroElementRulesDataDB(); /*CSTDItemPtr GetSTDItemById(const long a_nIncAId); CSTDItemsList& GetSTDItemList(const BOOL a_bForce = FALSE)*/; virtual CDBTableBasePtr GetTableInfo() ; virtual BOOL Init(const BOOL a_bClean = FALSE) ; virtual BOOL CreateTable(const BOOL a_bForce = FALSE) ; virtual BOOL DeleteTable() ; virtual BOOL RemoveAllRows() ; virtual BOOL IsDBExist() ; virtual CDBStoreBasePtr GetDatastore() ; virtual CDBQueryBasePtr GetTableQuery(LPCTSTR a_sOrderColumnName = nullptr) ; ZeroElementRuleList GetZeroElementRulesLib(BOOL bForce = FALSE); protected: ZeroElementRuleList ReadZeroElementRuleList(CDBQueryBasePtr a_query); BOOL ReadZeroElementRuleItem(CDBQueryBasePtr a_query); /*BOOL ReadSTDItemList(); CDBQueryBasePtr GetQueryById(const long a_nIncAId);*/ protected: CDBTableBasePtr m_tableInfo; ZeroElementRulePtr m_ZeroElementRuleItem; ZeroElementRuleList m_listZeroElementRuleItem; private: CDBBasePtr myDB; }; typedef std::shared_ptr __declspec(dllexport) CZeroElementRulesDataDBPtr; }