aboutsummaryrefslogtreecommitdiff
path: root/src/database/database-leveldb.h
diff options
context:
space:
mode:
authorElias Fleckenstein <eliasfleckenstein@web.de>2020-07-18 13:53:15 +0200
committerElias Fleckenstein <eliasfleckenstein@web.de>2020-07-18 13:53:15 +0200
commitffe3c2ae0db6fed0f2b08b71bfa69f3d3df3bb1f (patch)
treecc7d9f74a43215c5d8e3965a2bfc2aea5867a7a0 /src/database/database-leveldb.h
parent45aa2516b2fc675df7049bc9ed713600c95b6423 (diff)
parent82731d0d3d8bfe9e56f89466991f13c037f3a61e (diff)
downloaddragonfireclient-ffe3c2ae0db6fed0f2b08b71bfa69f3d3df3bb1f.tar.xz
Update to minetest 5.4.0-dev
Diffstat (limited to 'src/database/database-leveldb.h')
-rw-r--r--src/database/database-leveldb.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/database/database-leveldb.h b/src/database/database-leveldb.h
index d30f9f8f5..61def1256 100644
--- a/src/database/database-leveldb.h
+++ b/src/database/database-leveldb.h
@@ -45,4 +45,36 @@ private:
leveldb::DB *m_database;
};
+class PlayerDatabaseLevelDB : public PlayerDatabase
+{
+public:
+ PlayerDatabaseLevelDB(const std::string &savedir);
+ ~PlayerDatabaseLevelDB();
+
+ void savePlayer(RemotePlayer *player);
+ bool loadPlayer(RemotePlayer *player, PlayerSAO *sao);
+ bool removePlayer(const std::string &name);
+ void listPlayers(std::vector<std::string> &res);
+
+private:
+ leveldb::DB *m_database;
+};
+
+class AuthDatabaseLevelDB : public AuthDatabase
+{
+public:
+ AuthDatabaseLevelDB(const std::string &savedir);
+ virtual ~AuthDatabaseLevelDB();
+
+ virtual bool getAuth(const std::string &name, AuthEntry &res);
+ virtual bool saveAuth(const AuthEntry &authEntry);
+ virtual bool createAuth(AuthEntry &authEntry);
+ virtual bool deleteAuth(const std::string &name);
+ virtual void listNames(std::vector<std::string> &res);
+ virtual void reload();
+
+private:
+ leveldb::DB *m_database;
+};
+
#endif // USE_LEVELDB