aboutsummaryrefslogtreecommitdiff
path: root/src/openvic-simulation/economy/EconomyManager.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/openvic-simulation/economy/EconomyManager.hpp')
-rw-r--r--src/openvic-simulation/economy/EconomyManager.hpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/openvic-simulation/economy/EconomyManager.hpp b/src/openvic-simulation/economy/EconomyManager.hpp
new file mode 100644
index 0000000..05dfc91
--- /dev/null
+++ b/src/openvic-simulation/economy/EconomyManager.hpp
@@ -0,0 +1,26 @@
+#pragma once
+
+#include "openvic-simulation/economy/Building.hpp"
+#include "openvic-simulation/economy/Good.hpp"
+#include "openvic-simulation/economy/ProductionType.hpp"
+
+namespace OpenVic {
+ struct EconomyManager {
+ private:
+ BuildingManager building_manager;
+ GoodManager good_manager;
+ ProductionTypeManager production_type_manager;
+ public:
+ REF_GETTERS(building_manager)
+ REF_GETTERS(good_manager)
+ REF_GETTERS(production_type_manager)
+
+ inline bool load_production_types_file(PopManager const& pop_manager, ast::NodeCPtr root) {
+ return production_type_manager.load_production_types_file(good_manager, pop_manager, root);
+ }
+
+ inline bool load_buildings_file(ModifierManager const& modifier_manager, ast::NodeCPtr root) {
+ return building_manager.load_buildings_file(good_manager, production_type_manager, modifier_manager, root);
+ }
+ };
+}