gem5
v21.0.1.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 210 of file circlebuf.hh.
typedef T Fifo< T >::value_type |
Definition at line 213 of file circlebuf.hh.
Definition at line 216 of file circlebuf.hh.
|
inline |
Definition at line 220 of file circlebuf.hh.
Referenced by arrayParamIn(), DmaReadFifo::resumeFillBypass(), and Fifo< uint8_t >::write().
|
inline |
Definition at line 218 of file circlebuf.hh.
|
inline |
Definition at line 222 of file circlebuf.hh.
Referenced by arrayParamIn(), and DmaReadFifo::flush().
|
inline |
Definition at line 225 of file circlebuf.hh.
Referenced by arrayParamOut().
|
inline |
Definition at line 227 of file circlebuf.hh.
Referenced by DmaReadFifo::tryGet().
|
inline |
Definition at line 219 of file circlebuf.hh.
Referenced by arrayParamOut(), DmaReadFifo::resumeFillBypass(), DmaReadFifo::resumeFillTiming(), DmaReadFifo::size(), DmaReadFifo::tryGet(), and Fifo< uint8_t >::write().
|
inline |
Definition at line 231 of file circlebuf.hh.
Referenced by arrayParamIn(), DmaReadFifo::handlePending(), and DmaReadFifo::resumeFillBypass().
|
private |
Definition at line 238 of file circlebuf.hh.
Referenced by Fifo< uint8_t >::capacity(), Fifo< uint8_t >::empty(), Fifo< uint8_t >::flush(), Fifo< uint8_t >::peek(), Fifo< uint8_t >::read(), Fifo< uint8_t >::size(), and Fifo< uint8_t >::write().