33 #ifndef SC_FIFO_PORTS_H 34 #define SC_FIFO_PORTS_H 50 :
public sc_port<sc_fifo_in_if<T>,0,SC_ONE_OR_MORE_BOUND>
78 : base_type( interface_ )
82 : base_type( name_, interface_ )
86 : base_type( parent_ )
90 : base_type( name_, parent_ )
94 : base_type( parent_ )
98 : base_type( name_, parent_ )
113 { (*this)->read( value_ ); }
116 {
return (*this)->read(); }
122 {
return (*this)->nb_read( value_ ); }
128 {
return (*this)->num_available(); }
134 {
return (*this)->data_written_event(); }
145 virtual const char*
kind()
const 146 {
return "sc_fifo_in"; }
152 this_type& operator = (
const this_type& );
166 :
public sc_port<sc_fifo_out_if<T>,0,SC_ONE_OR_MORE_BOUND>
194 : base_type( interface_ )
198 : base_type( name_, interface_ )
202 : base_type( parent_ )
206 : base_type( name_, parent_ )
210 : base_type( parent_ )
214 : base_type( name_, parent_ )
228 void write(
const data_type& value_ )
229 { (*this)->write( value_ ); }
235 {
return (*this)->nb_write( value_ ); }
241 {
return (*this)->num_free(); }
247 {
return (*this)->data_read_event(); }
255 *
this, &out_if_type::data_read_event );
258 virtual const char*
kind()
const 259 {
return "sc_fifo_out"; }
265 this_type& operator = (
const this_type& );
sc_fifo_in(const char *name_)
sc_fifo_out< data_type > this_type
sc_fifo_in_if< data_type > if_type
sc_fifo_in(in_if_type &interface_)
sc_port< if_type, 0, SC_ONE_OR_MORE_BOUND > base_type
sc_event_finder & data_written() const
sc_fifo_in< data_type > this_type
virtual const char * kind() const
sc_fifo_out(const char *name_, this_type &parent_)
sc_fifo_in(const char *name_, this_type &parent_)
Base classes of all port classes.
sc_port< if_type, 0, SC_ONE_OR_MORE_BOUND > base_type
Generic port class and base class for other port classes.
virtual const sc_event & data_written_event() const =0
bool nb_read(data_type &value_)
void write(const data_type &value_)
const sc_event & data_read_event() const
Abstract base class for class sc_port.
virtual const char * kind() const
sc_fifo_out(this_type &parent_)
The sc_fifo<T> interface classes.
sc_fifo_out(const char *name_, out_port_type &parent_)
sc_fifo_out_if< data_type > if_type
sc_port_b< in_if_type > in_port_type
bool nb_write(const data_type &value_)
sc_fifo_out(const char *name_)
const sc_event & data_written_event() const
sc_fifo_in(in_port_type &parent_)
sc_fifo_out(const char *name_, out_if_type &interface_)
void read(data_type &value_)
sc_fifo_out(out_if_type &interface_)
sc_fifo_out(out_port_type &parent_)
sc_port_b< out_if_type > out_port_type
sc_event_finder & data_read() const
sc_fifo_in(const char *name_, in_if_type &interface_)
int num_available() const
sc_fifo_in(this_type &parent_)
sc_fifo_in(const char *name_, in_port_type &parent_)