aboutsummaryrefslogtreecommitdiff
path: root/src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp
diff options
context:
space:
mode:
author wvpm <24685035+wvpm@users.noreply.github.com>2024-09-18 17:47:10 +0200
committer wvpm <24685035+wvpm@users.noreply.github.com>2024-09-18 17:47:10 +0200
commit9b06879eecb8983a18ea39154bbe90fe488ae9af (patch)
treea4588199819867fe1b114c6edfeafef1e70d2be1 /src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp
parentd8c04cbe53188d4717f8c49f918e01657dbf3440 (diff)
Move production types to economy/production/move_production_to_folder
Diffstat (limited to 'src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp')
-rw-r--r--src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp b/src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp
new file mode 100644
index 0000000..d71c569
--- /dev/null
+++ b/src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp
@@ -0,0 +1,25 @@
+#pragma once
+
+#include "openvic-simulation/economy/production/ProductionType.hpp"
+#include "openvic-simulation/types/fixed_point/FixedPoint.hpp"
+#include "openvic-simulation/utility/Getters.hpp"
+
+namespace OpenVic {
+ class ResourceGatheringOperation final {
+ private:
+ ProductionType const& PROPERTY(production_type);
+ fixed_point_t PROPERTY(revenue_yesterday);
+ fixed_point_t PROPERTY(output_quantity_yesterday);
+ fixed_point_t PROPERTY(unsold_quantity_yesterday);
+ fixed_point_t PROPERTY(size_multiplier);
+ ordered_map<Pop*, Pop::pop_size_t> PROPERTY(employees);
+
+ public:
+ ResourceGatheringOperation(
+ ProductionType const& new_production_type, fixed_point_t new_size_multiplier, fixed_point_t new_revenue_yesterday,
+ fixed_point_t new_output_quantity_yesterday, fixed_point_t new_unsold_quantity_yesterday,
+ ordered_map<Pop*, Pop::pop_size_t>&& new_employees
+ );
+ ResourceGatheringOperation(ProductionType const& new_production_type, fixed_point_t new_size_multiplier);
+ };
+}