summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorStanislaw Halik <sthalik@misaki.pl>2023-11-12 12:48:46 +0100
committerStanislaw Halik <sthalik@misaki.pl>2023-11-12 12:48:46 +0100
commit664cfa76b05756cb5ee22cf9bfe463822aeae6a3 (patch)
treec74e8ac82d599082d0aef749201a47aa0b68c6e7 /src
parentd258f0a4dbc3ad3f0b47a50e8618099d041bd164 (diff)
a
Diffstat (limited to 'src')
-rw-r--r--src/wall-atlas.cpp1
-rw-r--r--src/wall-atlas.hpp15
2 files changed, 15 insertions, 1 deletions
diff --git a/src/wall-atlas.cpp b/src/wall-atlas.cpp
index 94134523..96758983 100644
--- a/src/wall-atlas.cpp
+++ b/src/wall-atlas.cpp
@@ -90,6 +90,7 @@ auto wall_atlas::direction(size_t dir) const -> const Direction*
uint8_t wall_atlas::direction_count() const { return (uint8_t)_dir_array.size(); }
auto wall_atlas::raw_frame_array() const -> ArrayView<const Frame> { return _frame_array; }
+auto wall_atlas::info() const -> const Info& { return _info; }
StringView wall_atlas::name() const { return _info.name; }
size_t wall_atlas::enum_to_index(enum rotation r)
diff --git a/src/wall-atlas.hpp b/src/wall-atlas.hpp
index 8df0c1ec..3d97c0e7 100644
--- a/src/wall-atlas.hpp
+++ b/src/wall-atlas.hpp
@@ -117,9 +117,22 @@ public:
const Direction* direction(size_t dir) const;
ArrayView<const Frame> frames(const Group& a) const;
ArrayView<const Frame> raw_frame_array() const;
+ const Info& info() const;
static size_t enum_to_index(enum rotation x);
-};
+ struct dir_tuple
+ {
+ StringView name;
+ Direction_ direction;
+ };
+
+ static constexpr dir_tuple directions[] = {
+ { "n"_s, Direction_::N },
+ { "e"_s, Direction_::E },
+ { "s"_s, Direction_::S },
+ { "w"_s, Direction_::W },
+ };
+};
} // namespace floormat