refactor(director): migra la persistència ConfigYaml al Director
main.cpp queda només amb 'Director director(argc, argv); return director.run()'. El Director crida ConfigYaml::* directament; l'struct ConfigPersistence desapareix de engine_config.hpp. La separació core/game es relaxa al Director, que és EL programa, no part del motor.
This commit is contained in:
1 parent
120b8ada38
commit
6b8f6a267d
5 files changed
+23
-59
No files matched your search
@@ -12,7 +12,6 @@
|
||||
|
||||
#include <SDL3/SDL.h>
|
||||
|
||||
#include <functional>
|
||||
#include <string>
|
||||
|
||||
namespace Config {
|
||||
@@ -67,14 +66,4 @@ namespace Config {
|
||||
bool console{false};
|
||||
};
|
||||
|
||||
// Capa de persistència delegada cap a l'EngineConfig. Permet al Director
|
||||
// orquestrar init/load/save sense conèixer cap esquema concret (YAML,
|
||||
// SQLite, ...) ni la capa que el conté (`game/config_yaml.cpp`).
|
||||
struct ConfigPersistence {
|
||||
std::function<void()> init_defaults; // Restaura valors per defecte
|
||||
std::function<void(const std::string& path)> set_path; // Indica on guardar
|
||||
std::function<bool()> load; // Llegeix path → EngineConfig
|
||||
std::function<bool()> save; // Escriu EngineConfig → path
|
||||
};
|
||||
|
||||
} // namespace Config
|
||||
Reference in new issue
Block a user