|
gem5 [DEVELOP-FOR-25.0]
|
Simple FIFO implementation backed by a circular buffer. More...
#include <circlebuf.hh>
Public Types | |
| typedef T | value_type |
Public Member Functions | |
| Fifo (size_t size) | |
| bool | empty () const |
| size_t | size () const |
| size_t | capacity () const |
| void | flush () |
| template<class OutputIterator> | |
| void | peek (OutputIterator out, size_t len) const |
| template<class OutputIterator> | |
| void | read (OutputIterator out, size_t len) |
| template<class InputIterator> | |
| void | write (InputIterator in, size_t len) |
Private Attributes | |
| CircleBuf< value_type > | buf |
Simple FIFO implementation backed by a circular buffer.
This class provides the same basic functionallity as the circular buffer with the folling differences:
Definition at line 213 of file circlebuf.hh.
| typedef T gem5::Fifo< T >::value_type |
Definition at line 216 of file circlebuf.hh.
|
inline |
Definition at line 219 of file circlebuf.hh.
|
inline |
Definition at line 223 of file circlebuf.hh.
References buf.
Referenced by gem5::arrayParamIn(), and write().
|
inline |
Definition at line 221 of file circlebuf.hh.
References buf.
|
inline |
|
inline |
Definition at line 228 of file circlebuf.hh.
References buf, and gem5::ArmISA::len.
Referenced by gem5::arrayParamOut().
|
inline |
Definition at line 230 of file circlebuf.hh.
References buf, and gem5::ArmISA::len.
|
inline |
Definition at line 222 of file circlebuf.hh.
References buf.
Referenced by gem5::arrayParamOut(), Fifo(), and write().
|
inline |
Definition at line 234 of file circlebuf.hh.
References buf, capacity(), gem5::ArmISA::len, panic_if, and size().
Referenced by gem5::arrayParamIn().
|
private |
Definition at line 241 of file circlebuf.hh.
Referenced by capacity(), empty(), Fifo(), flush(), peek(), read(), size(), and write().