Minetest 5.9.0-dev
 
Loading...
Searching...
No Matches
database-dummy.h
Go to the documentation of this file.
1/*
2Minetest
3Copyright (C) 2013 celeron55, Perttu Ahola <celeron55@gmail.com>
4
5This program is free software; you can redistribute it and/or modify
6it under the terms of the GNU Lesser General Public License as published by
7the Free Software Foundation; either version 2.1 of the License, or
8(at your option) any later version.
9
10This program is distributed in the hope that it will be useful,
11but WITHOUT ANY WARRANTY; without even the implied warranty of
12MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13GNU Lesser General Public License for more details.
14
15You should have received a copy of the GNU Lesser General Public License along
16with this program; if not, write to the Free Software Foundation, Inc.,
1751 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18*/
19
20#pragma once
21
22#include <map>
23#include <set>
24#include <string>
25#include "database.h"
26#include "irrlichttypes.h"
27
29{
30public:
31 bool saveBlock(const v3s16 &pos, std::string_view data);
32 void loadBlock(const v3s16 &pos, std::string *block);
33 bool deleteBlock(const v3s16 &pos);
34 void listAllLoadableBlocks(std::vector<v3s16> &dst);
35
36 void savePlayer(RemotePlayer *player);
37 bool loadPlayer(RemotePlayer *player, PlayerSAO *sao);
38 bool removePlayer(const std::string &name);
39 void listPlayers(std::vector<std::string> &res);
40
41 void getModEntries(const std::string &modname, StringMap *storage);
42 void getModKeys(const std::string &modname, std::vector<std::string> *storage);
43 bool getModEntry(const std::string &modname,
44 const std::string &key, std::string *value);
45 bool hasModEntry(const std::string &modname, const std::string &key);
46 bool setModEntry(const std::string &modname,
47 const std::string &key,std::string_view value);
48 bool removeModEntry(const std::string &modname, const std::string &key);
49 bool removeModEntries(const std::string &modname);
50 void listMods(std::vector<std::string> *res);
51
52 void beginSave() {}
53 void endSave() {}
54
55private:
56 std::map<s64, std::string> m_database;
57 std::set<std::string> m_player_database;
58 std::unordered_map<std::string, StringMap> m_mod_storage_database;
59};
Definition: database-dummy.h:29
std::map< s64, std::string > m_database
Definition: database-dummy.h:56
bool saveBlock(const v3s16 &pos, std::string_view data)
Definition: database-dummy.cpp:28
bool hasModEntry(const std::string &modname, const std::string &key)
Definition: database-dummy.cpp:120
void savePlayer(RemotePlayer *player)
Definition: database-dummy.cpp:61
void getModKeys(const std::string &modname, std::vector< std::string > *storage)
Definition: database-dummy.cpp:94
void listPlayers(std::vector< std::string > &res)
Definition: database-dummy.cpp:77
void listMods(std::vector< std::string > *res)
Definition: database-dummy.cpp:161
std::set< std::string > m_player_database
Definition: database-dummy.h:57
void listAllLoadableBlocks(std::vector< v3s16 > &dst)
Definition: database-dummy.cpp:52
bool setModEntry(const std::string &modname, const std::string &key, std::string_view value)
Definition: database-dummy.cpp:130
bool deleteBlock(const v3s16 &pos)
Definition: database-dummy.cpp:46
void getModEntries(const std::string &modname, StringMap *storage)
Definition: database-dummy.cpp:84
void endSave()
Definition: database-dummy.h:53
void loadBlock(const v3s16 &pos, std::string *block)
Definition: database-dummy.cpp:34
bool removeModEntries(const std::string &modname)
Definition: database-dummy.cpp:151
bool loadPlayer(RemotePlayer *player, PlayerSAO *sao)
Definition: database-dummy.cpp:66
void beginSave()
Definition: database-dummy.h:52
bool getModEntry(const std::string &modname, const std::string &key, std::string *value)
Definition: database-dummy.cpp:104
bool removePlayer(const std::string &name)
Definition: database-dummy.cpp:71
std::unordered_map< std::string, StringMap > m_mod_storage_database
Definition: database-dummy.h:58
bool removeModEntry(const std::string &modname, const std::string &key)
Definition: database-dummy.cpp:143
Definition: database.h:38
Definition: database.h:89
Definition: database.h:56
Definition: player_sao.h:71
Definition: remoteplayer.h:40
core::vector3d< s16 > v3s16
Definition: irr_v3d.h:28
std::unordered_map< std::string, std::string > StringMap
Definition: string.h:78