|
gem5 [DEVELOP-FOR-25.0]
|
#include <circular_buffer.hh>
Public Member Functions | |
| circular_buffer (int size=0) | |
| ~circular_buffer () | |
| void | resize (int size) |
| void | clear () |
| T | read () |
| void | write (const T &) |
| bool | is_empty () const |
| bool | is_full () const |
| int | size () const |
| int | used () const |
| int | free () const |
| const T & | read_data () const |
| const T & | peek_data (int i) const |
| T & | poke_data (int i) |
| void | debug () const |
Private Member Functions | |
| void | increment_write_pos (int i=1) |
| void | increment_read_pos (int i=1) |
| void | init () |
| circular_buffer (const circular_buffer< T > &b) | |
| circular_buffer< T > & | operator= (const circular_buffer< T > &) |
| void * | buf_alloc (int size) |
| void | buf_free (void *&buf) |
| void | buf_write (void *buf, int n, const T &t) |
| T & | buf_read (void *buf, int n) const |
| void | buf_clear (void *buf, int n) |
Private Attributes | |
| int | m_size |
| void * | m_buf |
| int | m_free |
| int | m_used |
| int | m_ri |
| int | m_wi |
Definition at line 29 of file circular_buffer.hh.
|
explicit |
Definition at line 112 of file circular_buffer.hh.
References init(), m_buf, m_size, and size().
Referenced by circular_buffer(), and operator=().
| tlm::circular_buffer< T >::~circular_buffer | ( | ) |
Definition at line 129 of file circular_buffer.hh.
References buf_free(), clear(), and m_buf.
|
private |
References b, and circular_buffer().
|
inlineprivate |
Definition at line 213 of file circular_buffer.hh.
References size().
|
inlineprivate |
Definition at line 244 of file circular_buffer.hh.
|
inlineprivate |
Definition at line 220 of file circular_buffer.hh.
Referenced by resize(), and ~circular_buffer().
|
inlineprivate |
Definition at line 236 of file circular_buffer.hh.
Referenced by peek_data(), poke_data(), and read_data().
|
inlineprivate |
Definition at line 228 of file circular_buffer.hh.
| void tlm::circular_buffer< T >::clear | ( | ) |
Definition at line 119 of file circular_buffer.hh.
References buf_clear(), m_buf, m_free, m_ri, m_size, m_used, m_wi, and used().
Referenced by ~circular_buffer().
| void tlm::circular_buffer< T >::debug | ( | ) | const |
Definition at line 90 of file circular_buffer.hh.
References free(), is_empty(), is_full(), m_ri, m_wi, peek_data(), size(), and used().
|
inline |
Definition at line 46 of file circular_buffer.hh.
References m_free.
|
private |
|
private |
|
private |
Definition at line 161 of file circular_buffer.hh.
References buf_alloc(), m_buf, m_free, m_ri, m_size, m_used, and m_wi.
Referenced by circular_buffer().
|
inline |
|
inline |
|
private |
References circular_buffer().
|
inline |
Definition at line 50 of file circular_buffer.hh.
References buf_read(), m_buf, m_ri, and size().
|
inline |
Definition at line 56 of file circular_buffer.hh.
References buf_read(), m_buf, m_wi, and size().
| T tlm::circular_buffer< T >::read | ( | ) |
Definition at line 175 of file circular_buffer.hh.
References buf_clear(), increment_read_pos(), m_buf, m_ri, and read_data().
|
inline |
Definition at line 48 of file circular_buffer.hh.
References buf_read(), m_buf, and m_ri.
Referenced by read().
| void tlm::circular_buffer< T >::resize | ( | int | size | ) |
Definition at line 137 of file circular_buffer.hh.
References buf_alloc(), buf_clear(), buf_free(), buf_write(), m_buf, m_free, m_ri, m_size, m_used, m_wi, peek_data(), size(), and used().
|
inline |
Definition at line 44 of file circular_buffer.hh.
References m_size.
Referenced by buf_alloc(), circular_buffer(), debug(), peek_data(), poke_data(), and resize().
|
inline |
Definition at line 45 of file circular_buffer.hh.
References m_used.
Referenced by clear(), debug(), is_empty(), and resize().
| void tlm::circular_buffer< T >::write | ( | const T & | t | ) |
Definition at line 187 of file circular_buffer.hh.
References buf_write(), increment_write_pos(), m_buf, and m_wi.
|
private |
Definition at line 81 of file circular_buffer.hh.
Referenced by circular_buffer(), clear(), init(), peek_data(), poke_data(), read(), read_data(), resize(), write(), and ~circular_buffer().
|
private |
Definition at line 82 of file circular_buffer.hh.
Referenced by clear(), free(), increment_read_pos(), increment_write_pos(), init(), and resize().
|
private |
Definition at line 84 of file circular_buffer.hh.
Referenced by clear(), debug(), increment_read_pos(), init(), peek_data(), read(), read_data(), and resize().
|
private |
Definition at line 80 of file circular_buffer.hh.
Referenced by circular_buffer(), clear(), increment_read_pos(), increment_write_pos(), init(), resize(), and size().
|
private |
Definition at line 83 of file circular_buffer.hh.
Referenced by clear(), increment_read_pos(), increment_write_pos(), init(), resize(), and used().
|
private |
Definition at line 85 of file circular_buffer.hh.
Referenced by clear(), debug(), increment_write_pos(), init(), poke_data(), resize(), and write().