1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
#ifndef SMARTCOMPLETIONUSAGEDB_H
#define SMARTCOMPLETIONUSAGEDB_H
#include "wxStringHash.h"
#include <unordered_map>
#include <wx/string.h>
#include <wx/wxsqlite3.h>
class SmartCompletionUsageDB
{
wxSQLite3Database m_db;
protected:
void CreateScheme();
public:
SmartCompletionUsageDB();
virtual ~SmartCompletionUsageDB();
/**
* @brief open the usage DB
*/
void Open();
/**
* @brief close the usage DB
*/
void Close();
/**
* @brief load the CC weight table from the database
*/
void LoadCCUsageTable(std::unordered_map<wxString, int>& weightTable);
/**
* @brief load the GTA weight table from the database
*/
void LoadGTAUsageTable(std::unordered_map<wxString, int>& weightTable);
/**
* @brief write the CC usage to the database
*/
void StoreCCUsage(const wxString& key, int weight);
/**
* @brief write the GTA usage to the database
*/
void StoreGTAUsage(const wxString& key, int weight);
/**
* @brief clear the content of the database
*/
void Clear();
};
#endif // SMARTCOMPLETIONUSAGEDB_H
|