template<typename T>
RingBuffer class
Derived classes
-
template<typename T, s32 N>class FixedRingBuffer
Public types
- class constIterator
- class iterator
Constructors, destructors, conversion operators
- RingBuffer() defaulted
- RingBuffer(s32 capacity, T* buffer)
-
template<s32 N>RingBuffer(T(&array)[N]) explicit
- operator bool() const explicit
Public functions
- auto begin() -> iterator
- auto begin() const -> constIterator
- auto begin(s32 start_idx) -> iterator
- auto begin(s32 start_idx) const -> constIterator
- auto end() -> iterator
- auto end() const -> constIterator
- void allocBuffer(s32 capacity, s32 alignment)
- void allocBuffer(s32 capacity, Heap* heap, s32 alignment = sizeof(void*))
- auto tryAllocBuffer(s32 capacity, s32 alignment = sizeof(void*)) -> bool
- auto tryAllocBuffer(s32 capacity, Heap* heap, s32 alignment = sizeof(void*)) -> bool
- void allocBufferAssert(s32 size, Heap* heap, s32 alignment = sizeof(void*))
- void freeBuffer()
- void setBuffer(s32 capacity, T* bufferptr)
- auto isBufferReady() const -> bool
- auto operator[](s32 idx) -> T&
- auto operator[](s32 idx) const -> const T&
- auto get(s32 idx) -> T*
- auto get(s32 idx) const -> const T*
- auto operator()(s32 idx) -> T&
- auto operator()(s32 idx) const -> const T&
- auto unsafeGet(s32 idx) -> T*
- auto unsafeGet(s32 idx) const -> const T*
- auto front() -> T&
- auto front() const -> const T&
- auto back() -> T&
- auto back() const -> const T&
- auto capacity() const -> s32
- auto size() const -> s32
- auto empty() const -> bool
- auto data() -> T*
- auto data() const -> const T*
- auto forcePushBack(const T& item) -> bool
- auto pushBack(const T& item) -> bool
- void forcePushBackwards(const T& item, u32 offset = 1)
- auto pushBackwards(const T& item) -> bool
- auto popFront() -> T
- void clear()