The sc_fifo<T> primitive channel class. More...
#include <sysc/communication/sc_fifo.h>
Public Member Functions | |
sc_fifo (int size_=16) | |
sc_fifo (const char *name_, int size_=16) | |
virtual | ~sc_fifo () |
virtual void | register_port (sc_port_base &, const char *) |
virtual void | read (T &, sc_segid) |
A new parameter segment ID is added for the out-of-order simulation. | |
virtual void | read (T &) |
virtual T | read (sc_segid) |
A new parameter segment ID is added for the out-of-order simulation. | |
virtual T | read () |
virtual bool | nb_read (T &) |
virtual int | num_available () const |
virtual const sc_event & | data_written_event () const |
virtual void | write (const T &, int) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | write (const T &) |
virtual bool | nb_write (const T &) |
virtual int | num_free () const |
virtual const sc_event & | data_read_event () const |
operator T () | |
sc_fifo< T > & | operator= (const T &a) |
This operator is not supported by the out-of-order simulation in the current release. | |
void | trace (sc_trace_file *tf) const |
virtual void | print (::std::ostream &=::std::cout) const |
virtual void | dump (::std::ostream &=::std::cout) const |
virtual const char * | kind () const |
Protected Member Functions | |
virtual void | update () |
The update method (does nothing by default). | |
void | init (int) |
void | buf_init (int) |
bool | buf_write (const T &) |
bool | buf_read (T &) |
Protected Attributes | |
int | m_size |
T * | m_buf |
int | m_free |
int | m_ri |
int | m_wi |
sc_port_base * | m_reader |
sc_port_base * | m_writer |
int | m_num_readable |
int | m_num_read |
int | m_num_written |
sc_event | m_data_read_event |
sc_event | m_data_written_event |
The sc_fifo<T> primitive channel class.
Definition at line 48 of file sc_fifo.h.
sc_core::sc_fifo< T >::sc_fifo | ( | int | size_ = 16 |
) | [inline, explicit] |
sc_core::sc_fifo< T >::sc_fifo | ( | const char * | name_, | |
int | size_ = 16 | |||
) | [inline, explicit] |
virtual sc_core::sc_fifo< T >::~sc_fifo | ( | ) | [inline, virtual] |
void sc_core::sc_fifo< T >::buf_init | ( | int | size_ | ) | [inline, protected] |
bool sc_core::sc_fifo< T >::buf_read | ( | T & | val_ | ) | [inline, protected] |
bool sc_core::sc_fifo< T >::buf_write | ( | const T & | val_ | ) | [inline, protected] |
virtual const sc_event& sc_core::sc_fifo< T >::data_read_event | ( | ) | const [inline, virtual] |
Implements sc_core::sc_fifo_nonblocking_out_if< T >.
virtual const sc_event& sc_core::sc_fifo< T >::data_written_event | ( | ) | const [inline, virtual] |
Implements sc_core::sc_fifo_nonblocking_in_if< T >.
void sc_core::sc_fifo< T >::dump | ( | ::std::ostream & | os = ::std::cout |
) | const [inline, virtual] |
Reimplemented from sc_core::sc_object.
void sc_core::sc_fifo< T >::init | ( | int | size_ | ) | [inline, protected] |
virtual const char* sc_core::sc_fifo< T >::kind | ( | ) | const [inline, virtual] |
Reimplemented from sc_core::sc_prim_channel.
bool sc_core::sc_fifo< T >::nb_read | ( | T & | val_ | ) | [inline, virtual] |
Implements sc_core::sc_fifo_nonblocking_in_if< T >.
bool sc_core::sc_fifo< T >::nb_write | ( | const T & | val_ | ) | [inline, virtual] |
Implements sc_core::sc_fifo_nonblocking_out_if< T >.
virtual int sc_core::sc_fifo< T >::num_available | ( | ) | const [inline, virtual] |
Implements sc_core::sc_fifo_in_if< T >.
virtual int sc_core::sc_fifo< T >::num_free | ( | ) | const [inline, virtual] |
Implements sc_core::sc_fifo_out_if< T >.
sc_core::sc_fifo< T >::operator T | ( | ) | [inline] |
sc_fifo<T>& sc_core::sc_fifo< T >::operator= | ( | const T & | a | ) | [inline] |
void sc_core::sc_fifo< T >::print | ( | ::std::ostream & | os = ::std::cout |
) | const [inline, virtual] |
Reimplemented from sc_core::sc_object.
virtual T sc_core::sc_fifo< T >::read | ( | ) | [inline, virtual] |
Implements sc_core::sc_fifo_blocking_in_if< T >.
T sc_core::sc_fifo< T >::read | ( | sc_segid | seg_id | ) | [inline, virtual] |
A new parameter segment ID is added for the out-of-order simulation.
Implements sc_core::sc_fifo_blocking_in_if< T >.
virtual void sc_core::sc_fifo< T >::read | ( | T & | ) | [inline, virtual] |
Implements sc_core::sc_fifo_blocking_in_if< T >.
void sc_core::sc_fifo< T >::read | ( | T & | val_, | |
sc_segid | seg_id | |||
) | [inline, virtual] |
A new parameter segment ID is added for the out-of-order simulation.
Implements sc_core::sc_fifo_blocking_in_if< T >.
void sc_core::sc_fifo< T >::register_port | ( | sc_port_base & | port_, | |
const char * | if_typename_ | |||
) | [inline, virtual] |
Reimplemented from sc_core::sc_interface.
void sc_core::sc_fifo< T >::trace | ( | sc_trace_file * | tf | ) | const [inline, virtual] |
Reimplemented from sc_core::sc_object.
void sc_core::sc_fifo< T >::update | ( | ) | [inline, protected, virtual] |
The update method (does nothing by default).
This function is not supported by the out-of-order simulation in the current release.
Reimplemented from sc_core::sc_prim_channel.
void sc_core::sc_fifo< T >::write | ( | const T & | ) | [inline, virtual] |
Implements sc_core::sc_fifo_blocking_out_if< T >.
void sc_core::sc_fifo< T >::write | ( | const T & | val_, | |
int | seg_id | |||
) | [inline, virtual] |
A new parameter segment ID is added for the out-of-order simulation.
Implements sc_core::sc_fifo_blocking_out_if< T >.
T* sc_core::sc_fifo< T >::m_buf [protected] |
sc_event sc_core::sc_fifo< T >::m_data_read_event [protected] |
sc_event sc_core::sc_fifo< T >::m_data_written_event [protected] |
int sc_core::sc_fifo< T >::m_free [protected] |
int sc_core::sc_fifo< T >::m_num_read [protected] |
int sc_core::sc_fifo< T >::m_num_readable [protected] |
int sc_core::sc_fifo< T >::m_num_written [protected] |
sc_port_base* sc_core::sc_fifo< T >::m_reader [protected] |
int sc_core::sc_fifo< T >::m_ri [protected] |
int sc_core::sc_fifo< T >::m_size [protected] |
int sc_core::sc_fifo< T >::m_wi [protected] |
sc_port_base* sc_core::sc_fifo< T >::m_writer [protected] |