|
scc 2025.09
SystemC components library
|
Circular buffer. More...
#include <ring_buffer.h>
Classes | |
| class | iterator_type |
| Iterator through the circular buffer. More... | |
Public Types | |
| typedef iterator_type< false > | iterator |
| typedef iterator_type< true > | const_iterator |
Public Member Functions | |
| ring_buffer (size_t size) | |
| Constructor. | |
| ring_buffer () | |
| Default constructor. | |
| ring_buffer (ring_buffer const &other)=delete | |
| Copy constructor. | |
| ring_buffer (ring_buffer &&other)=delete | |
| Copy constructor. | |
| ring_buffer (std::initializer_list< T > il) | |
| Initializer list constructor. | |
| ring_buffer & | operator= (ring_buffer const &rhs)=delete |
| Assignment operator. | |
| ring_buffer & | operator= (ring_buffer &&rhs)=delete |
| bool | operator== (ring_buffer< T > const &other) const noexcept |
| Equality operator. | |
| bool | operator!= (ring_buffer< T > const &other) const noexcept |
| Inequality operator. | |
| operator std::vector< T > () const | |
| Vector conversion operator. | |
| void | push_back (T const &item) |
| Inserts new element in buffer. | |
| void | push_back (T &&item) |
| iterator | begin () noexcept |
| Return an iterator pointing to first (oldest) element in buffer. | |
| const_iterator | begin () const noexcept |
| Return a const iterator pointing to first (oldest) element in buffer. | |
| const_iterator | cbegin () const noexcept |
| Return a const iterator pointing to first (oldest) element in buffer. | |
| iterator | end () noexcept |
| Return an iterator pointing past the last (newest) element in buffer. | |
| const_iterator | end () const noexcept |
| Return a const iterator pointing past the last (newest) element in buffer. | |
| const_iterator | cend () const noexcept |
| Return an iterator pointing past the last (newest) element in buffer. | |
| void | pop_front () |
| Remove oldest element from buffer. | |
| T & | front () |
| Return a reference to first (oldest) element in buffer. | |
| T const & | front () const |
| Return a reference to first (oldest) element in buffer. | |
| T & | back () |
| Return reference to last (newest) element in buffer. | |
| T const & | back () const |
| Return reference to last (newest) element in buffer. | |
| void | clear (void) |
| Remove all elements from buffer. | |
| bool | empty (void) const noexcept |
| Return true if buffer is empty. | |
| bool | full (void) const noexcept |
| Return true if buffer is full. | |
| size_t | capacity (void) const noexcept |
| Return maximum buffer size. | |
| void | resize (size_t new_cap) |
| (Re)allocate buffer with a different capacity | |
| size_t | size () const noexcept |
| Return number of elements in buffer. | |
Circular buffer.
Definition at line 41 of file ring_buffer.h.
| typedef iterator_type<true> util::ring_buffer< T >::const_iterator |
Definition at line 175 of file ring_buffer.h.
| typedef iterator_type<false> util::ring_buffer< T >::iterator |
Definition at line 174 of file ring_buffer.h.
|
inline |
Constructor.
Definition at line 178 of file ring_buffer.h.
|
inline |
Default constructor.
Definition at line 186 of file ring_buffer.h.
|
inline |
Initializer list constructor.
Definition at line 199 of file ring_buffer.h.
|
inline |
Return reference to last (newest) element in buffer.
Definition at line 302 of file ring_buffer.h.
|
inline |
Return reference to last (newest) element in buffer.
Definition at line 309 of file ring_buffer.h.
|
inlinenoexcept |
Return a const iterator pointing to first (oldest) element in buffer.
Definition at line 265 of file ring_buffer.h.
|
inlinenoexcept |
Return an iterator pointing to first (oldest) element in buffer.
Definition at line 262 of file ring_buffer.h.
|
inlinenoexcept |
Return maximum buffer size.
Definition at line 332 of file ring_buffer.h.
|
inlinenoexcept |
Return a const iterator pointing to first (oldest) element in buffer.
Definition at line 268 of file ring_buffer.h.
|
inlinenoexcept |
Return an iterator pointing past the last (newest) element in buffer.
Definition at line 277 of file ring_buffer.h.
|
inline |
Remove all elements from buffer.
Definition at line 316 of file ring_buffer.h.
|
inlinenoexcept |
Return true if buffer is empty.
Definition at line 326 of file ring_buffer.h.
|
inlinenoexcept |
Return a const iterator pointing past the last (newest) element in buffer.
Definition at line 274 of file ring_buffer.h.
|
inlinenoexcept |
Return an iterator pointing past the last (newest) element in buffer.
Definition at line 271 of file ring_buffer.h.
|
inline |
Return a reference to first (oldest) element in buffer.
Definition at line 288 of file ring_buffer.h.
|
inline |
Return a reference to first (oldest) element in buffer.
Definition at line 295 of file ring_buffer.h.
|
inlinenoexcept |
Return true if buffer is full.
Definition at line 329 of file ring_buffer.h.
|
inline |
Vector conversion operator.
Definition at line 233 of file ring_buffer.h.
|
inlinenoexcept |
Inequality operator.
Definition at line 230 of file ring_buffer.h.
|
inlinenoexcept |
Equality operator.
Definition at line 216 of file ring_buffer.h.
|
inline |
Remove oldest element from buffer.
Definition at line 280 of file ring_buffer.h.
|
inline |
Definition at line 251 of file ring_buffer.h.
|
inline |
Inserts new element in buffer.
Definition at line 241 of file ring_buffer.h.
|
inline |
(Re)allocate buffer with a different capacity
Definition at line 335 of file ring_buffer.h.
|
inlinenoexcept |
Return number of elements in buffer.
Definition at line 352 of file ring_buffer.h.