15 : queue(0, maxSize) {}
17 void push(
const T& value) {
28 queue.
push(std::move(value));
30 queue[head] = std::move(value);
41 return queue[this->wrap(i)];
46 return queue[this->wrap(i)];
51 return (i + head) % queue.
size();
Generic dynamically allocated resizable storage.
#define SPH_ASSERT(x,...)
uint32_t Size
Integral type used to index arrays (by default).
#define INLINE
Macros for conditional compilation based on selected compiler.
#define NAMESPACE_SPH_END
Generic dynamically allocated resizable storage.
INLINE void push(U &&u)
Adds new element to the end of the array, resizing the array if necessary.
INLINE TCounter capacity() const noexcept
INLINE TCounter size() const noexcept
INLINE const T & operator[](const Size i) const
INLINE T & operator[](const Size i)
CircularArray(const Size maxSize)
void push(const T &value)