diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2023-10-16 23:08:32 +0200 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2023-10-16 23:08:32 +0200 |
commit | a4a9c191018ad225d36665eaf33f9dbff27514c4 (patch) | |
tree | 08e4d40ebd9e84a1f7bf57a5182c659813b08bcc | |
parent | 73a15aa007307cd52432dc521364935641c15703 (diff) |
a
-rw-r--r-- | src/path-search-result.cpp | 11 | ||||
-rw-r--r-- | src/path-search-result.hpp | 16 |
2 files changed, 14 insertions, 13 deletions
diff --git a/src/path-search-result.cpp b/src/path-search-result.cpp index 26fcd98d..995ad710 100644 --- a/src/path-search-result.cpp +++ b/src/path-search-result.cpp @@ -1,5 +1,6 @@ #include "path-search.hpp" #include "path-search-result.hpp" +#include "src/point.hpp" #include "compat/assert.hpp" #include <Corrade/Containers/ArrayView.h> #include <utility> @@ -54,22 +55,22 @@ path_search_result& path_search_result::operator=(const path_search_result& x) n path_search_result::node::node() noexcept = default; size_t path_search_result::size() const { return _node->vec.size(); } -auto path_search_result::data() const -> const pair* { return _node->vec.data(); } +auto path_search_result::data() const -> const point* { return _node->vec.data(); } path_search_result::operator bool() const { return !_node->vec.empty(); } -path_search_result::operator ArrayView<const path_search_result::pair>() const +path_search_result::operator ArrayView<const point>() const { fm_debug_assert(_node); return {_node->vec.data(), _node->vec.size()}; } -auto path_search_result::operator[](size_t index) const -> const pair& +const point& path_search_result::operator[](size_t index) const { fm_debug_assert(_node); fm_debug_assert(index < _node->vec.size()); return data()[index]; } -auto path_search_result::path() -> std::vector<pair>& { fm_assert(_node); return _node->vec; } -auto path_search_result::path() const -> const std::vector<pair>& { fm_assert(_node); return _node->vec; } +auto path_search_result::path() -> std::vector<point>& { fm_assert(_node); return _node->vec; } +auto path_search_result::path() const -> const std::vector<point>& { fm_assert(_node); return _node->vec; } } // namespace floormat diff --git a/src/path-search-result.hpp b/src/path-search-result.hpp index 92484c63..ee3d017d 100644 --- a/src/path-search-result.hpp +++ b/src/path-search-result.hpp @@ -6,19 +6,19 @@ namespace floormat { +struct point; + struct path_search_result final { friend struct test_app; - struct pair { global_coords pos; Vector2 offset; }; - - const pair* data() const; - const pair& operator[](size_t index) const; + const point* data() const; + const point& operator[](size_t index) const; size_t size() const; - std::vector<pair>& path(); - const std::vector<pair>& path() const; - explicit operator ArrayView<const pair>() const; + std::vector<point>& path(); + const std::vector<point>& path() const; + explicit operator ArrayView<const point>() const; explicit operator bool() const; fm_DECLARE_DEFAULT_MOVE_ASSIGNMENT_(path_search_result); @@ -39,7 +39,7 @@ private: fm_DECLARE_DELETED_COPY_ASSIGNMENT(node); fm_DECLARE_DEFAULT_MOVE_ASSIGNMENT_(node); - std::vector<pair> vec; + std::vector<point> vec; private: std::unique_ptr<node> _next; |