gem5  v22.1.0.0
Public Types | Public Member Functions | Private Attributes | List of all members
tlm_utils::callback_binder_fw< TYPES > Class Template Reference

#include <multi_socket_bases.h>

Inheritance diagram for tlm_utils::callback_binder_fw< TYPES >:
tlm::tlm_fw_transport_if< TYPES > tlm_utils::convenience_socket_cb_holder tlm::tlm_fw_nonblocking_transport_if< TYPES::tlm_payload_type, TYPES::tlm_phase_type > tlm::tlm_blocking_transport_if< TYPES::tlm_payload_type > tlm::tlm_fw_direct_mem_if< TYPES::tlm_payload_type > tlm::tlm_transport_dbg_if< TYPES::tlm_payload_type > sc_core::sc_interface sc_core::sc_interface sc_core::sc_interface sc_core::sc_interface

Public Types

typedef TYPES::tlm_payload_type transaction_type
 
typedef TYPES::tlm_phase_type phase_type
 
typedef tlm::tlm_sync_enum sync_enum_type
 
typedef nb_transport_functor< TYPES > nb_func_type
 
typedef b_transport_functor< TYPES > b_func_type
 
typedef debug_transport_functor< TYPES > debug_func_type
 
typedef get_dmi_ptr_functor< TYPES > dmi_func_type
 

Public Member Functions

 callback_binder_fw (multi_socket_base *owner, int id)
 
sync_enum_type nb_transport_fw (transaction_type &txn, phase_type &p, sc_core::sc_time &t)
 
void b_transport (transaction_type &trans, sc_core::sc_time &t)
 
bool get_direct_mem_ptr (transaction_type &trans, tlm::tlm_dmi &dmi_data)
 
unsigned int transport_dbg (transaction_type &trans)
 
void register_port (sc_core::sc_port_base &b, const char *)
 
void set_callbacks (nb_func_type &cb1, b_func_type &cb2, dmi_func_type &cb3, debug_func_type &cb4)
 
sc_core::sc_port_baseget_other_side ()
 
- Public Member Functions inherited from sc_core::sc_interface
virtual const sc_eventdefault_event () const
 
virtual ~sc_interface ()
 

Private Attributes

int m_id
 
nb_func_typem_nb_f
 
b_func_typem_b_f
 
debug_func_typem_dbg_f
 
dmi_func_typem_dmi_f
 
sc_core::sc_port_basem_caller_port
 

Additional Inherited Members

- Protected Member Functions inherited from sc_core::sc_interface
 sc_interface ()
 
- Protected Member Functions inherited from tlm_utils::convenience_socket_cb_holder
 convenience_socket_cb_holder (convenience_socket_base *owner)
 
void display_warning (const char *msg) const
 
void display_error (const char *msg) const
 

Detailed Description

template<typename TYPES>
class tlm_utils::callback_binder_fw< TYPES >

Definition at line 164 of file multi_socket_bases.h.

Member Typedef Documentation

◆ b_func_type

template<typename TYPES >
typedef b_transport_functor<TYPES> tlm_utils::callback_binder_fw< TYPES >::b_func_type

Definition at line 175 of file multi_socket_bases.h.

◆ debug_func_type

template<typename TYPES >
typedef debug_transport_functor<TYPES> tlm_utils::callback_binder_fw< TYPES >::debug_func_type

Definition at line 176 of file multi_socket_bases.h.

◆ dmi_func_type

template<typename TYPES >
typedef get_dmi_ptr_functor<TYPES> tlm_utils::callback_binder_fw< TYPES >::dmi_func_type

Definition at line 177 of file multi_socket_bases.h.

◆ nb_func_type

template<typename TYPES >
typedef nb_transport_functor<TYPES> tlm_utils::callback_binder_fw< TYPES >::nb_func_type

Definition at line 174 of file multi_socket_bases.h.

◆ phase_type

template<typename TYPES >
typedef TYPES::tlm_phase_type tlm_utils::callback_binder_fw< TYPES >::phase_type

Definition at line 170 of file multi_socket_bases.h.

◆ sync_enum_type

template<typename TYPES >
typedef tlm::tlm_sync_enum tlm_utils::callback_binder_fw< TYPES >::sync_enum_type

Definition at line 171 of file multi_socket_bases.h.

◆ transaction_type

template<typename TYPES >
typedef TYPES::tlm_payload_type tlm_utils::callback_binder_fw< TYPES >::transaction_type

Definition at line 169 of file multi_socket_bases.h.

Constructor & Destructor Documentation

◆ callback_binder_fw()

template<typename TYPES >
tlm_utils::callback_binder_fw< TYPES >::callback_binder_fw ( multi_socket_base owner,
int  id 
)
inline

Definition at line 179 of file multi_socket_bases.h.

Member Function Documentation

◆ b_transport()

template<typename TYPES >
void tlm_utils::callback_binder_fw< TYPES >::b_transport ( transaction_type trans,
sc_core::sc_time t 
)
inlinevirtual

◆ get_direct_mem_ptr()

template<typename TYPES >
bool tlm_utils::callback_binder_fw< TYPES >::get_direct_mem_ptr ( transaction_type trans,
tlm::tlm_dmi dmi_data 
)
inlinevirtual

◆ get_other_side()

template<typename TYPES >
sc_core::sc_port_base* tlm_utils::callback_binder_fw< TYPES >::get_other_side ( )
inline

◆ nb_transport_fw()

template<typename TYPES >
sync_enum_type tlm_utils::callback_binder_fw< TYPES >::nb_transport_fw ( transaction_type txn,
phase_type p,
sc_core::sc_time t 
)
inlinevirtual

◆ register_port()

template<typename TYPES >
void tlm_utils::callback_binder_fw< TYPES >::register_port ( sc_core::sc_port_base b,
const char *   
)
inlinevirtual

◆ set_callbacks()

template<typename TYPES >
void tlm_utils::callback_binder_fw< TYPES >::set_callbacks ( nb_func_type cb1,
b_func_type cb2,
dmi_func_type cb3,
debug_func_type cb4 
)
inline

◆ transport_dbg()

template<typename TYPES >
unsigned int tlm_utils::callback_binder_fw< TYPES >::transport_dbg ( transaction_type trans)
inlinevirtual

Member Data Documentation

◆ m_b_f

template<typename TYPES >
b_func_type* tlm_utils::callback_binder_fw< TYPES >::m_b_f
private

◆ m_caller_port

template<typename TYPES >
sc_core::sc_port_base* tlm_utils::callback_binder_fw< TYPES >::m_caller_port
private

◆ m_dbg_f

template<typename TYPES >
debug_func_type* tlm_utils::callback_binder_fw< TYPES >::m_dbg_f
private

◆ m_dmi_f

template<typename TYPES >
dmi_func_type* tlm_utils::callback_binder_fw< TYPES >::m_dmi_f
private

◆ m_id

template<typename TYPES >
int tlm_utils::callback_binder_fw< TYPES >::m_id
private

◆ m_nb_f

template<typename TYPES >
nb_func_type* tlm_utils::callback_binder_fw< TYPES >::m_nb_f
private

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