00001 #ifndef DB_H_
00002 #define DB_H_
00003
00004 #include <string>
00005 #include <vector>
00006
00007 class HangmanDb
00008 {
00009 public:
00010
00011
00012
00013 static bool addUser(const std::wstring &user, const std::wstring &password);
00014
00015
00016
00017 static bool validLogin(const std::wstring &user, const std::wstring &pass);
00018
00019
00020 static void addToScore(const std::wstring &user, int delta);
00021
00022 struct Score {
00023 int number;
00024 std::wstring user;
00025 int numgames;
00026 int score;
00027 std::wstring lastseen;
00028 };
00029
00030
00031 static std::vector<Score> getHighScores(int top);
00032
00033
00034 static Score getUserPosition(const std::wstring &user);
00035
00036 private:
00037 static std::string DbUser();
00038 static std::string DbPass();
00039 };
00040
00041 #endif