aboutsummaryrefslogtreecommitdiff
path: root/src/openvic-simulation/economy/ResourceGatheringOperation.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/openvic-simulation/economy/ResourceGatheringOperation.hpp')
-rw-r--r--src/openvic-simulation/economy/ResourceGatheringOperation.hpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/openvic-simulation/economy/ResourceGatheringOperation.hpp b/src/openvic-simulation/economy/ResourceGatheringOperation.hpp
new file mode 100644
index 0000000..4855a30
--- /dev/null
+++ b/src/openvic-simulation/economy/ResourceGatheringOperation.hpp
@@ -0,0 +1,25 @@
+#pragma once
+
+#include "openvic-simulation/economy/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, const fixed_point_t new_size_multiplier,
+ const fixed_point_t new_revenue_yesterday, const fixed_point_t new_output_quantity_yesterday,
+ const fixed_point_t new_unsold_quantity_yesterday, ordered_map<Pop*, Pop::pop_size_t>&& new_employees
+ );
+ ResourceGatheringOperation(ProductionType const& new_production_type, const fixed_point_t new_size_multiplier);
+ };
+}