diff options
author | tamasmeszaros <meszaros.q@gmail.com> | 2022-06-07 17:05:16 +0300 |
---|---|---|
committer | tamasmeszaros <meszaros.q@gmail.com> | 2022-06-07 17:05:16 +0300 |
commit | 4f8535d0d5b2c5a0e2577c5e88578bd2ce18c8d7 (patch) | |
tree | a518111cfa7ad99444eb36ee8da1d0f962eaf87a | |
parent | db8a120953bf695ffef2324adb0a58475d6b3c23 (diff) |
Move out invalid_id constant from MutablePriotityQueue template class
Enclose it into Slic3r namespace
-rw-r--r-- | src/libslic3r/MutablePriorityQueue.hpp | 10 | ||||
-rw-r--r-- | tests/libslic3r/test_mutable_priority_queue.cpp | 2 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/libslic3r/MutablePriorityQueue.hpp b/src/libslic3r/MutablePriorityQueue.hpp index b45b8cfff..fd3e7ac2d 100644 --- a/src/libslic3r/MutablePriorityQueue.hpp +++ b/src/libslic3r/MutablePriorityQueue.hpp @@ -7,6 +7,10 @@ #include <limits> #include <cstdlib> // adds size_t (without std::) +namespace Slic3r { + +constexpr auto InvalidQueueID = std::numeric_limits<size_t>::max(); + template<typename T, typename IndexSetter, typename LessPredicate, const bool ResetIndexWhenRemoved = false> class MutablePriorityQueue { @@ -41,7 +45,7 @@ public: bool empty() const { return m_heap.empty(); } T& operator[](std::size_t idx) noexcept { return m_heap[idx]; } const T& operator[](std::size_t idx) const noexcept { return m_heap[idx]; } - static constexpr size_t invalid_id() { return std::numeric_limits<size_t>::max(); } + static constexpr size_t invalid_id() { return InvalidQueueID; } using iterator = typename std::vector<T>::iterator; using const_iterator = typename std::vector<T>::const_iterator; @@ -291,7 +295,7 @@ public: bool empty() const { return m_heap.empty(); } T& operator[](std::size_t idx) noexcept { assert(! address::is_padding(idx)); return m_heap[idx]; } const T& operator[](std::size_t idx) const noexcept { assert(! address::is_padding(idx)); return m_heap[idx]; } - static constexpr size_t invalid_id() { return std::numeric_limits<size_t>::max(); } + static constexpr size_t invalid_id() { return InvalidQueueID; } protected: void update_heap_up(size_t top, size_t bottom); @@ -450,4 +454,6 @@ inline void MutableSkipHeapPriorityQueue<T, LessPredicate, IndexSetter, blocking } } +} // namespace Slic3r + #endif /* slic3r_MutablePriorityQueue_hpp_ */ diff --git a/tests/libslic3r/test_mutable_priority_queue.cpp b/tests/libslic3r/test_mutable_priority_queue.cpp index 626b0388d..7e31b57c7 100644 --- a/tests/libslic3r/test_mutable_priority_queue.cpp +++ b/tests/libslic3r/test_mutable_priority_queue.cpp @@ -4,6 +4,8 @@ #include "libslic3r/MutablePriorityQueue.hpp" +using namespace Slic3r; + // based on https://raw.githubusercontent.com/rollbear/prio_queue/master/self_test.cpp // original source Copyright Björn Fahller 2015, Boost Software License, Version 1.0, http://www.boost.org/LICENSE_1_0.txt |