aboutsummaryrefslogtreecommitdiff
path: root/src/openvic/Types.cpp
diff options
context:
space:
mode:
author Hop311 <hop3114@gmail.com>2023-05-16 20:59:39 +0200
committer Hop311 <hop3114@gmail.com>2023-05-16 20:59:39 +0200
commit42d9d1d5417deb5979a9d5775cfe97dcff4b77ba (patch)
tree440634772615531e704a5554aa59c9890cd9cd85 /src/openvic/Types.cpp
parent339e0278a2064f7eeb152fe8c5778840b609e9f3 (diff)
Changed from OpenVic2 to OpenVic
Diffstat (limited to 'src/openvic/Types.cpp')
-rw-r--r--src/openvic/Types.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/openvic/Types.cpp b/src/openvic/Types.cpp
new file mode 100644
index 0000000..829770b
--- /dev/null
+++ b/src/openvic/Types.cpp
@@ -0,0 +1,31 @@
+#include "Types.hpp"
+
+#include <cassert>
+#include <sstream>
+#include <iomanip>
+
+using namespace OpenVic;
+
+HasIdentifier::HasIdentifier(std::string const& new_identifier) : identifier{ new_identifier } {
+ assert(!identifier.empty());
+}
+
+std::string const& HasIdentifier::get_identifier() const {
+ return identifier;
+}
+
+HasColour::HasColour(colour_t const new_colour, bool can_be_null) : colour(new_colour) {
+ assert((can_be_null || colour != NULL_COLOUR) && colour <= MAX_COLOUR_RGB);
+}
+
+colour_t HasColour::get_colour() const { return colour; }
+
+std::string HasColour::colour_to_hex_string(colour_t const colour) {
+ std::ostringstream stream;
+ stream << std::hex << std::setfill('0') << std::setw(6) << colour;
+ return stream.str();
+}
+
+std::string HasColour::colour_to_hex_string() const {
+ return colour_to_hex_string(colour);
+}