51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#ifndef MAP_SETTINGS_MANAGER_HEADER
-#define MAP_SETTINGS_MANAGER_HEADER
+#pragma once
#include <string>
+#include "settings.h"
-class Settings;
struct NoiseParams;
struct MapgenParams;
*/
class MapSettingsManager {
public:
- // Finalized map generation parameters
- MapgenParams *mapgen_params;
-
- MapSettingsManager(Settings *user_settings,
- const std::string &map_meta_path);
+ MapSettingsManager(const std::string &map_meta_path);
~MapSettingsManager();
+ // Finalized map generation parameters
+ MapgenParams *mapgen_params = nullptr;
+
bool getMapSetting(const std::string &name, std::string *value_out);
bool getMapSettingNoiseParams(
private:
std::string m_map_meta_path;
+
+ SettingsHierarchy m_hierarchy;
+ Settings *m_defaults;
Settings *m_map_settings;
- Settings *m_user_settings;
};
-
-#endif