33 #ifndef SC_SIGNAL_RV_PORTS_H 34 #define SC_SIGNAL_RV_PORTS_H 54 :
public sc_in<sc_dt::sc_lv<W> >
81 explicit sc_in_rv(
const in_if_type& interface_ )
82 : base_type( interface_ )
85 sc_in_rv(
const char* name_,
const in_if_type& interface_ )
86 : base_type( name_, interface_ )
90 : base_type( parent_ )
93 sc_in_rv(
const char* name_, in_port_type& parent_ )
94 : base_type( name_, parent_ )
98 : base_type( parent_ )
101 sc_in_rv(
const char* name_, inout_port_type& parent_ )
102 : base_type( name_, parent_ )
106 : base_type( parent_ )
110 : base_type( name_, parent_ )
126 virtual const char*
kind()
const 127 {
return "sc_in_rv"; }
133 this_type& operator = (
const this_type& );
149 this->
report_error( SC_ID_RESOLVED_PORT_NOT_BOUND_, 0 );
191 : base_type( interface_ )
195 : base_type( name_, interface_ )
199 : base_type( parent_ )
203 : base_type( name_, parent_ )
207 : base_type( parent_ )
211 : base_type( name_, parent_ )
223 this_type& operator = (
const data_type& value_ )
224 { (*this)->write( value_ );
return *
this; }
226 this_type& operator = (
const in_if_type& interface_ )
227 { (*this)->write( interface_.read() );
return *
this; }
229 this_type& operator = (
const in_port_type& port_ )
230 { (*this)->write( port_->read() );
return *
this; }
232 this_type& operator = (
const inout_port_type& port_ )
233 { (*this)->write( port_->read() );
return *
this; }
235 this_type& operator = (
const this_type& port_ )
236 { (*this)->write( port_->read() );
return *
this; }
245 virtual const char*
kind()
const 246 {
return "sc_inout_rv"; }
267 this->
report_error( SC_ID_RESOLVED_PORT_NOT_BOUND_, 0 );
313 : base_type( interface_ )
316 sc_out_rv(
const char* name_, inout_if_type& interface_ )
317 : base_type( name_, interface_ )
321 : base_type( parent_ )
324 sc_out_rv(
const char* name_, inout_port_type& parent_ )
325 : base_type( name_, parent_ )
329 : base_type( parent_ )
333 : base_type( name_, parent_ )
345 this_type& operator = (
const data_type& value_ )
346 { (*this)->write( value_ );
return *
this; }
348 this_type& operator = (
const in_if_type& interface_ )
349 { (*this)->write( interface_.read() );
return *
this; }
351 this_type& operator = (
const in_port_type& port_ )
352 { (*this)->write( port_->read() );
return *
this; }
354 this_type& operator = (
const inout_port_type& port_ )
355 { (*this)->write( port_->read() );
return *
this; }
357 this_type& operator = (
const this_type& port_ )
358 { (*this)->write( port_->read() );
return *
this; }
360 virtual const char*
kind()
const 361 {
return "sc_out_rv"; }
sc_inout_rv(this_type &parent_)
base_type::in_port_type in_port_type
sc_dt::sc_lv< W > data_type
base_type::inout_if_type inout_if_type
sc_in_rv(this_type &parent_)
base_type::in_if_type in_if_type
base_type::inout_port_type inout_port_type
sc_in_rv(const char *name_, const in_if_type &interface_)
sc_inout_rv(const char *name_, inout_port_type &parent_)
sc_in_rv(const char *name_, this_type &parent_)
Arbitrary size logic vector class.
sc_out_rv(const char *name_)
virtual void end_of_elaboration()
sc_out_rv(const char *name_, inout_if_type &interface_)
The sc_signal_rv<W> output port class.
void report_error(const char *id, const char *add_msg=0) const
sc_in_rv(const char *name_, inout_port_type &parent_)
sc_inout_rv< W > base_type
sc_out_rv(const char *name_, inout_port_type &parent_)
sc_signal_inout_if< data_type > inout_if_type
sc_inout< data_type > base_type
sc_inout_rv(inout_port_type &parent_)
base_type::in_if_type in_if_type
sc_out_rv(inout_if_type &interface_)
sc_port< inout_if_type, 1, SC_ONE_OR_MORE_BOUND > inout_port_type
sc_out_rv(inout_port_type &parent_)
base_type::in_if_type in_if_type
The resolved vector signal class.
sc_inout_rv(const char *name_, inout_if_type &interface_)
sc_dt::sc_lv< W > data_type
sc_inout_rv< W > this_type
base_type::in_port_type in_port_type
virtual void end_of_elaboration()
The sc_signal_rv<W> input/output port class.
sc_in_rv(const char *name_, in_port_type &parent_)
sc_inout_rv(const char *name_)
sc_in_rv(const in_if_type &interface_)
sc_inout_rv(inout_if_type &interface_)
virtual const char * kind() const
virtual const char * kind() const
sc_in_rv(inout_port_type &parent_)
base_type::in_port_type in_port_type
The sc_signal_rv<W> input port class.
Report ids for the communication code.
sc_in_rv(const char *name_)
base_type::inout_port_type inout_port_type
The resolved vector signal class.
sc_in_rv(in_port_type &parent_)
virtual void end_of_elaboration()
virtual const char * kind() const
sc_out_rv(this_type &parent_)
The sc_signal<T> port classes.
base_type::data_type data_type
base_type::inout_if_type inout_if_type
sc_in< data_type > base_type
virtual sc_interface * get_interface()
sc_out_rv(const char *name_, this_type &parent_)
sc_inout_rv(const char *name_, this_type &parent_)
base_type::inout_port_type inout_port_type