gem5  v22.1.0.0
Public Member Functions | Private Types | List of all members
tlm_utils::multi_passthrough_target_socket_optional< MODULE, BUSWIDTH, TYPES, N > Class Template Reference

#include <multi_passthrough_target_socket.h>

Inheritance diagram for tlm_utils::multi_passthrough_target_socket_optional< MODULE, BUSWIDTH, TYPES, N >:
tlm_utils::multi_passthrough_target_socket< MODULE, 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ZERO_OR_MORE_BOUND > tlm_utils::multi_target_base< BUSWIDTH, TYPES, N, POL > tlm_utils::multi_to_multi_bind_base< tlm::tlm_base_protocol_types > tlm::tlm_target_socket< 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ONE_OR_MORE_BOUND > tlm_utils::multi_target_base_if< tlm::tlm_base_protocol_types > tlm_utils::multi_socket_base tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL > tlm_utils::convenience_socket_base tlm::tlm_base_socket_if tlm::tlm_base_target_socket_b< 32, tlm_fw_transport_if<>, tlm_bw_transport_if<> > sc_core::sc_export< tlm_fw_transport_if<> > sc_core::sc_export_base sc_core::sc_object

Public Member Functions

 multi_passthrough_target_socket_optional ()
 
 multi_passthrough_target_socket_optional (const char *name)
 
- Public Member Functions inherited from tlm_utils::multi_passthrough_target_socket< MODULE, 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ZERO_OR_MORE_BOUND >
 multi_passthrough_target_socket (const char *name=default_name())
 
 ~multi_passthrough_target_socket ()
 
void check_export_binding ()
 
void register_nb_transport_fw (MODULE *mod, nb_cb cb)
 
void register_b_transport (MODULE *mod, b_cb cb)
 
void register_transport_dbg (MODULE *mod, dbg_cb cb)
 
void register_get_direct_mem_ptr (MODULE *mod, dmi_cb cb)
 
virtual tlm::tlm_fw_transport_if< tlm::tlm_base_protocol_types > & get_base_interface ()
 
virtual const tlm::tlm_fw_transport_if< tlm::tlm_base_protocol_types > & get_base_interface () const
 
virtual sc_core::sc_export< tlm::tlm_fw_transport_if< tlm::tlm_base_protocol_types > > & get_base_export ()
 
virtual const sc_core::sc_export< tlm::tlm_fw_transport_if< tlm::tlm_base_protocol_types > > & get_base_export () const
 
void end_of_elaboration ()
 
virtual void bind (base_type &s)
 
void operator() (base_type &s)
 
tlm::tlm_bw_transport_if< tlm::tlm_base_protocol_types > * operator[] (int i)
 
unsigned int size ()
 
- Public Member Functions inherited from tlm_utils::multi_target_base< BUSWIDTH, TYPES, N, POL >
virtual void set_hierarch_bind (multi_target_base *)=0
 
virtual tlm::tlm_socket_category get_socket_category () const
 
virtual ~multi_target_base ()
 
 multi_target_base ()
 
 multi_target_base (const char *name)
 
- Public Member Functions inherited from tlm::tlm_target_socket< 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ONE_OR_MORE_BOUND >
 tlm_target_socket ()
 
 tlm_target_socket (const char *name)
 
virtual const char * kind () const
 
virtual std::type_index get_protocol_types () const
 
- Public Member Functions inherited from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >
 tlm_base_target_socket ()
 
 tlm_base_target_socket (const char *name)
 
virtual void bind (base_initiator_socket_type &s)
 
void operator() (base_initiator_socket_type &s)
 
void operator() (base_type &s)
 
virtual void bind (fw_interface_type &ifs)
 
void operator() (fw_interface_type &s)
 
int size () const
 
bw_interface_typeoperator-> ()
 
bw_interface_typeoperator[] (int i)
 
virtual sc_core::sc_port_baseget_port_base ()
 
virtual sc_core::sc_port_base const & get_port_base () const
 
virtual sc_core::sc_export_baseget_export_base ()
 
virtual sc_core::sc_export_base const & get_export_base () const
 
virtual unsigned int get_bus_width () const
 
virtual sc_core::sc_port_b< BW_IF > & get_base_port ()
 
virtual sc_core::sc_port_b< BW_IF > const & get_base_port () const
 
- Public Member Functions inherited from tlm::tlm_base_target_socket_b< 32, tlm_fw_transport_if<>, tlm_bw_transport_if<> >
virtual ~tlm_base_target_socket_b ()
 
- Public Member Functions inherited from sc_core::sc_export< tlm_fw_transport_if<> >
 sc_export ()
 
 sc_export (const char *n)
 
virtual ~sc_export ()
 
void operator() (tlm_fw_transport_if<> &i)
 
virtual void bind (tlm_fw_transport_if<> &i)
 
 operator tlm_fw_transport_if<> & ()
 
 operator const tlm_fw_transport_if<> & () const
 
tlm_fw_transport_if<> * operator-> ()
 
const tlm_fw_transport_if<> * operator-> () const
 
sc_interfaceget_iterface () override
 
const sc_interfaceget_interface () const override
 
- Public Member Functions inherited from sc_core::sc_export_base
 sc_export_base (const char *n)
 
 ~sc_export_base ()
 
- Public Member Functions inherited from sc_core::sc_object
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_objectget_parent_object () const
 
bool add_attribute (sc_attr_base &)
 
sc_attr_baseget_attribute (const std::string &)
 
sc_attr_baseremove_attribute (const std::string &)
 
void remove_all_attributes ()
 
int num_attributes () const
 
sc_attr_cltnattr_cltn ()
 
const sc_attr_cltnattr_cltn () const
 
sc_simcontextsimcontext () const
 
- Public Member Functions inherited from tlm_utils::multi_to_multi_bind_base< tlm::tlm_base_protocol_types >
virtual ~multi_to_multi_bind_base ()
 

Private Types

typedef multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, sc_core::SC_ZERO_OR_MORE_BOUNDsocket_b
 

Additional Inherited Members

- Public Types inherited from tlm_utils::multi_passthrough_target_socket< MODULE, 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ZERO_OR_MORE_BOUND >
typedef TYPES::tlm_payload_type transaction_type
 
typedef TYPES::tlm_phase_type phase_type
 
typedef tlm::tlm_sync_enum sync_enum_type
 
typedef sync_enum_type(MODULE::* nb_cb) (int, transaction_type &, phase_type &, sc_core::sc_time &)
 
typedef void(MODULE::* b_cb) (int, transaction_type &, sc_core::sc_time &)
 
typedef unsigned int(MODULE::* dbg_cb) (int, transaction_type &txn)
 
typedef bool(MODULE::* dmi_cb) (int, transaction_type &txn, tlm::tlm_dmi &dmi)
 
typedef multi_target_base< BUSWIDTH, tlm::tlm_base_protocol_types, N, POL > base_type
 
typedef base_type::base_initiator_socket_type base_initiator_socket_type
 
- Public Types inherited from tlm_utils::multi_target_base< BUSWIDTH, TYPES, N, POL >
typedef tlm::tlm_target_socket< BUSWIDTH, TYPES, N, POL > base_type
 
- Public Types inherited from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >
typedef FW_IF fw_interface_type
 
typedef BW_IF bw_interface_type
 
typedef sc_core::sc_port< bw_interface_type, N, POL > port_type
 
typedef sc_core::sc_export< fw_interface_typeexport_type
 
typedef tlm_base_initiator_socket_b< BUSWIDTH, fw_interface_type, bw_interface_typebase_initiator_socket_type
 
typedef tlm_base_target_socket_b< BUSWIDTH, fw_interface_type, bw_interface_typebase_type
 
- Static Public Member Functions inherited from tlm_utils::multi_passthrough_target_socket< MODULE, 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ZERO_OR_MORE_BOUND >
static const char * default_name ()
 
- Protected Member Functions inherited from tlm_utils::multi_passthrough_target_socket< MODULE, 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ZERO_OR_MORE_BOUND >
base_typeget_hierarch_bind ()
 
std::map< unsigned int, tlm::tlm_bw_transport_if< tlm::tlm_base_protocol_types > * > & get_multi_binds ()
 
void set_hierarch_bind (base_type *h)
 
tlm::tlm_fw_transport_if< tlm::tlm_base_protocol_types > * get_last_binder (tlm::tlm_bw_transport_if< tlm::tlm_base_protocol_types > *other)
 
void disable_cb_bind ()
 
std::vector< callback_binder_fw< tlm::tlm_base_protocol_types > * > & get_binders ()
 
- Protected Member Functions inherited from tlm::tlm_base_socket_if
virtual ~tlm_base_socket_if ()
 
- Protected Member Functions inherited from sc_core::sc_export< tlm_fw_transport_if<> >
void before_end_of_elaboration () override
 
void start_of_simulation () override
 
void end_of_simulation () override
 
- Protected Member Functions inherited from sc_core::sc_object
 sc_object ()
 
 sc_object (const char *)
 
 sc_object (const sc_object &)
 
sc_objectoperator= (const sc_object &)
 
virtual ~sc_object ()
 
- Protected Member Functions inherited from tlm_utils::multi_target_base_if< tlm::tlm_base_protocol_types >
virtual ~multi_target_base_if ()
 
- Protected Member Functions inherited from tlm_utils::convenience_socket_base
virtual ~convenience_socket_base ()
 
void display_warning (const char *msg) const
 
void display_error (const char *msg) const
 
- Protected Attributes inherited from tlm_utils::multi_passthrough_target_socket< MODULE, 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ZERO_OR_MORE_BOUND >
std::map< unsigned int, tlm::tlm_bw_transport_if< tlm::tlm_base_protocol_types > * > m_multi_binds
 
std::vector< tlm::tlm_bw_transport_if< tlm::tlm_base_protocol_types > * > m_sockets
 
std::vector< callback_binder_fw< tlm::tlm_base_protocol_types > * > m_binders
 
base_typem_hierarch_bind
 
bool m_eoe_disabled
 
bool m_export_callback_created
 
callback_binder_fw< tlm::tlm_base_protocol_types >::nb_func_type m_nb_f
 
callback_binder_fw< tlm::tlm_base_protocol_types >::b_func_type m_b_f
 
callback_binder_fw< tlm::tlm_base_protocol_types >::debug_func_type m_dbg_f
 
callback_binder_fw< tlm::tlm_base_protocol_types >::dmi_func_type m_dmi_f
 
- Protected Attributes inherited from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >
port_type m_port
 

Detailed Description

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0>
class tlm_utils::multi_passthrough_target_socket_optional< MODULE, BUSWIDTH, TYPES, N >

Definition at line 369 of file multi_passthrough_target_socket.h.

Member Typedef Documentation

◆ socket_b

template<typename MODULE , unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0>
typedef multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, sc_core::SC_ZERO_OR_MORE_BOUND> tlm_utils::multi_passthrough_target_socket_optional< MODULE, BUSWIDTH, TYPES, N >::socket_b
private

Definition at line 374 of file multi_passthrough_target_socket.h.

Constructor & Destructor Documentation

◆ multi_passthrough_target_socket_optional() [1/2]

template<typename MODULE , unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0>
tlm_utils::multi_passthrough_target_socket_optional< MODULE, BUSWIDTH, TYPES, N >::multi_passthrough_target_socket_optional ( )
inline

Definition at line 376 of file multi_passthrough_target_socket.h.

◆ multi_passthrough_target_socket_optional() [2/2]

template<typename MODULE , unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0>
tlm_utils::multi_passthrough_target_socket_optional< MODULE, BUSWIDTH, TYPES, N >::multi_passthrough_target_socket_optional ( const char *  name)
inlineexplicit

Definition at line 377 of file multi_passthrough_target_socket.h.


The documentation for this class was generated from the following file:

Generated on Wed Dec 21 2022 10:25:12 for gem5 by doxygen 1.9.1