gem5 v24.1.0.1
|
#include <sc_port.hh>
Public Member Functions | |
void | operator() (IF &i) |
The following warning is disabled because the bind methods are overloaded in the derived class and the base class. | |
void | operator() (sc_port_b< IF > &p) |
virtual void | bind (IF &i) |
virtual void | bind (sc_port_b< IF > &p) |
IF * | operator-> () |
const IF * | operator-> () const |
IF * | operator[] (int n) |
const IF * | operator[] (int n) const |
sc_interface * | get_interface () |
const sc_interface * | get_interface () const |
![]() | |
sc_port_base (const char *name, int n, sc_port_policy p) | |
virtual | ~sc_port_base () |
void | warn_port_constructor () const |
int | maxSize () const |
int | size () const |
const char * | kind () const |
![]() | |
const char * | name () const |
const char * | basename () const |
virtual void | print (std::ostream &=std::cout) const |
virtual void | dump (std::ostream &=std::cout) const |
virtual const std::vector< sc_object * > & | get_child_objects () const |
virtual const std::vector< sc_event * > & | get_child_events () const |
sc_object * | get_parent_object () const |
bool | add_attribute (sc_attr_base &) |
sc_attr_base * | get_attribute (const std::string &) |
sc_attr_base * | remove_attribute (const std::string &) |
void | remove_all_attributes () |
int | num_attributes () const |
sc_attr_cltn & | attr_cltn () |
const sc_attr_cltn & | attr_cltn () const |
sc_simcontext * | simcontext () const |
Protected Member Functions | |
void | before_end_of_elaboration () override |
void | end_of_elaboration () override |
void | start_of_simulation () override |
void | end_of_simulation () override |
sc_port_b (int n, sc_port_policy p) | |
sc_port_b (const char *name, int n, sc_port_policy p) | |
virtual | ~sc_port_b () |
int | vbind (sc_interface &i) override |
int | vbind (sc_port_base &pb) override |
![]() | |
void | bind (sc_interface &) |
void | bind (sc_port_base &) |
void | report_error (const char *id, const char *add_msg) const |
![]() | |
sc_object () | |
sc_object (const char *) | |
sc_object (const sc_object &) | |
sc_object & | operator= (const sc_object &) |
virtual | ~sc_object () |
Private Member Functions | |
sc_interface * | _gem5Interface (int n) const override |
void | _gem5AddInterface (sc_interface *iface) override |
const char * | _ifTypeName () const override |
sc_port_b () | |
sc_port_b (const sc_port_b< IF > &) | |
sc_port_b< IF > & | operator= (const sc_port_b< IF > &) |
Private Attributes | |
std::vector< IF * > | _interfaces |
Definition at line 118 of file sc_port.hh.
|
inlineexplicitprotected |
Definition at line 198 of file sc_port.hh.
References sc_core::sc_gen_unique_name().
|
inlineprotected |
Definition at line 201 of file sc_port.hh.
|
inlineprotectedvirtual |
Definition at line 204 of file sc_port.hh.
|
inlineprivate |
Definition at line 255 of file sc_port.hh.
|
inlineprivate |
Definition at line 256 of file sc_port.hh.
|
inlineoverrideprivatevirtual |
Implements sc_core::sc_port_base.
Definition at line 239 of file sc_port.hh.
References sc_core::sc_port_b< IF >::_interfaces, sc_core::sc_port_base::report_error(), sc_assert, and sc_core::SC_ID_BIND_IF_TO_PORT_.
|
inlineoverrideprivatevirtual |
Implements sc_core::sc_port_base.
Definition at line 230 of file sc_port.hh.
References sc_core::sc_port_b< IF >::_interfaces, sc_core::sc_port_base::report_error(), sc_core::SC_ID_GET_IF_, and sc_core::sc_port_base::size().
|
inlineoverrideprivatevirtual |
Implements sc_core::sc_port_base.
Definition at line 252 of file sc_port.hh.
References sc_core::sc_object::name().
|
inlineoverrideprotectedvirtual |
Implements sc_core::sc_port_base.
Definition at line 193 of file sc_port.hh.
|
inlinevirtual |
Definition at line 135 of file sc_port.hh.
References sc_core::sc_port_base::bind().
Referenced by sc_gem5::ScPortWrapper< IF >::bind(), sc_core::sc_port_b< IF >::operator()(), sc_core::sc_port_b< IF >::operator()(), sc_core::sc_port< IF, N, P >::sc_port(), sc_core::sc_port< IF, N, P >::sc_port(), sc_core::sc_port< IF, N, P >::sc_port(), sc_core::sc_port< IF, N, P >::sc_port(), sc_core::sc_port< IF, N, P >::sc_port(), and sc_core::sc_port< IF, N, P >::sc_port().
|
inlinevirtual |
Definition at line 136 of file sc_port.hh.
References sc_core::sc_port_base::bind().
|
inlineoverrideprotectedvirtual |
Implements sc_core::sc_port_base.
Definition at line 194 of file sc_port.hh.
|
inlineoverrideprotectedvirtual |
Implements sc_core::sc_port_base.
Definition at line 196 of file sc_port.hh.
|
inline |
Definition at line 178 of file sc_port.hh.
References sc_core::sc_port_b< IF >::_interfaces.
Referenced by tlm_utils::multi_passthrough_initiator_socket< MODULE, BUSWIDTH, TYPES, N, POL >::before_end_of_elaboration(), sc_core::sc_in_resolved::end_of_elaboration(), sc_core::sc_in_rv< W >::end_of_elaboration(), sc_core::sc_inout_resolved::end_of_elaboration(), sc_core::sc_inout_rv< W >::end_of_elaboration(), sc_core::sc_inout< sc_dt::sc_bigint< W > >::initialize(), sc_core::sc_inout< sc_dt::sc_biguint< W > >::initialize(), sc_core::sc_inout< sc_dt::sc_int< W > >::initialize(), and sc_core::sc_inout< sc_dt::sc_uint< W > >::initialize().
|
inline |
Definition at line 185 of file sc_port.hh.
References sc_core::sc_port_b< IF >::_interfaces.
|
inline |
The following warning is disabled because the bind methods are overloaded in the derived class and the base class.
In GCC v13+ this 'overloaded-virtual' warning is strict enough to trigger here (though the code is correct). Please check section 9.3 of SystemC 2.3.1 release note for more details.
Definition at line 132 of file sc_port.hh.
References sc_core::sc_port_b< IF >::bind().
|
inline |
Definition at line 133 of file sc_port.hh.
References sc_core::sc_port_b< IF >::bind().
|
inline |
Definition at line 140 of file sc_port.hh.
References sc_core::sc_port_b< IF >::_interfaces, sc_core::sc_port_base::report_error(), sc_core::sc_abort(), and sc_core::SC_ID_GET_IF_.
|
inline |
Definition at line 149 of file sc_port.hh.
References sc_core::sc_port_b< IF >::_interfaces, sc_core::sc_port_base::report_error(), sc_core::sc_abort(), and sc_core::SC_ID_GET_IF_.
|
inlineprivate |
Definition at line 257 of file sc_port.hh.
|
inline |
Definition at line 159 of file sc_port.hh.
References sc_core::sc_port_b< IF >::_interfaces, sc_core::sc_port_base::report_error(), sc_core::SC_ID_GET_IF_, and sc_core::sc_port_base::size().
|
inline |
Definition at line 168 of file sc_port.hh.
References sc_core::sc_port_b< IF >::_interfaces, sc_core::sc_port_base::report_error(), sc_core::SC_ID_GET_IF_, and sc_core::sc_port_base::size().
|
inlineoverrideprotectedvirtual |
Implements sc_core::sc_port_base.
Definition at line 195 of file sc_port.hh.
|
inlineoverrideprotectedvirtual |
Implements sc_core::sc_port_base.
Definition at line 208 of file sc_port.hh.
References sc_core::sc_port_base::bind().
Referenced by sc_core::sc_in< sc_dt::sc_int< W > >::vbind(), sc_core::sc_inout< sc_dt::sc_int< W > >::vbind(), sc_core::sc_in< sc_dt::sc_bigint< W > >::vbind(), sc_core::sc_inout< sc_dt::sc_bigint< W > >::vbind(), sc_core::sc_in< sc_dt::sc_uint< W > >::vbind(), sc_core::sc_inout< sc_dt::sc_uint< W > >::vbind(), sc_core::sc_in< sc_dt::sc_biguint< W > >::vbind(), and sc_core::sc_inout< sc_dt::sc_biguint< W > >::vbind().
|
inlineoverrideprotectedvirtual |
Implements sc_core::sc_port_base.
Definition at line 217 of file sc_port.hh.
References sc_core::sc_port_base::bind().
|
private |
Definition at line 227 of file sc_port.hh.
Referenced by sc_core::sc_port_b< IF >::_gem5AddInterface(), sc_core::sc_port_b< IF >::_gem5Interface(), sc_core::sc_port_b< IF >::get_interface(), sc_core::sc_port_b< IF >::get_interface(), sc_core::sc_port_b< IF >::operator->(), sc_core::sc_port_b< IF >::operator->(), sc_core::sc_port_b< IF >::operator[](), and sc_core::sc_port_b< IF >::operator[]().