From ee803577187b05d54026b48a2ae83f4ba6f8202a Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Wed, 30 Sep 2026 16:52:58 +0200 Subject: kstd: ring_buffer: rename head and tail --- libs/kstd/kstd/ring_buffer.hpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'libs/kstd') diff --git a/libs/kstd/kstd/ring_buffer.hpp b/libs/kstd/kstd/ring_buffer.hpp index 151ab994..6bdfce92 100644 --- a/libs/kstd/kstd/ring_buffer.hpp +++ b/libs/kstd/kstd/ring_buffer.hpp @@ -64,7 +64,7 @@ namespace kstd //! @return @p true iff. this ring buffer is empty, @p false otherwise. [[nodiscard]] constexpr auto empty() const noexcept -> bool { - return m_head == m_tail; + return m_write_index == m_read_index; } //! Get the size of this ring buffer. @@ -72,12 +72,12 @@ namespace kstd //! @return The number of elements currently stored in this ring buffer. [[nodiscard]] constexpr auto size() const noexcept -> size_type { - if (m_head >= m_tail) + if (m_write_index >= m_read_index) { - return m_head - m_tail; + return m_write_index - m_read_index; } - return capacity() - m_tail + m_head; + return capacity() - (m_read_index - m_write_index); } //! Get the maximum number of elements this ring buffer can hold. @@ -97,7 +97,7 @@ namespace kstd constexpr auto element_at_index(size_type index) noexcept -> pointer { auto base_pointer = reinterpret_cast(m_storage.data()); - auto storage_index = (m_tail + index) % capacity(); + auto storage_index = (m_read_index + index) % capacity(); return base_pointer + storage_index; } @@ -116,10 +116,10 @@ namespace kstd //! The underlying storage for the elements of this ring buffer. alignas(ValueType) std::array m_storage{}; - //! The index of the element that was most recently added to this ring buffer. - size_type m_head{}; - //! The index of the element that was least recently added to this ring buffer. - size_type m_tail{}; + //! The index of the next element to be written. + size_type m_write_index{}; + //! The index of the first element to be read. + size_type m_read_index{}; }; } // namespace kstd -- cgit v1.2.3