gem5 [DEVELOP-FOR-25.0]
Loading...
Searching...
No Matches
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< TRANS, PHASE > tlm::tlm_blocking_transport_if< TRANS > tlm::tlm_fw_direct_mem_if< TRANS > tlm::tlm_transport_dbg_if< TRANS > 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 tlm::tlm_fw_nonblocking_transport_if< TRANS, PHASE >
virtual tlm_sync_enum nb_transport_fw (TRANS &trans, PHASE &phase, sc_core::sc_time &t)=0
 
- Public Member Functions inherited from sc_core::sc_interface
virtual const sc_eventdefault_event () const
 
virtual ~sc_interface ()
 
- Public Member Functions inherited from tlm::tlm_blocking_transport_if< TRANS >
virtual void b_transport (TRANS &trans, sc_core::sc_time &t)=0
 
- Public Member Functions inherited from tlm::tlm_fw_direct_mem_if< TRANS >
virtual bool get_direct_mem_ptr (TRANS &trans, tlm_dmi &dmi_data)=0
 
- Public Member Functions inherited from tlm::tlm_transport_dbg_if< TRANS >
virtual unsigned int transport_dbg (TRANS &trans)=0
 

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

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 )
inline

◆ 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 )
inline

◆ get_other_side()

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

Definition at line 263 of file multi_socket_bases.h.

References m_caller_port.

◆ 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 )
inline

◆ register_port()

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

Reimplemented from sc_core::sc_interface.

Definition at line 244 of file multi_socket_bases.h.

References b, and m_caller_port.

◆ 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

Definition at line 251 of file multi_socket_bases.h.

References m_b_f, m_dbg_f, m_dmi_f, and m_nb_f.

◆ transport_dbg()

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

Definition at line 230 of file multi_socket_bases.h.

References m_dbg_f, and m_id.

Member Data Documentation

◆ m_b_f

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

Definition at line 271 of file multi_socket_bases.h.

Referenced by b_transport(), callback_binder_fw(), and set_callbacks().

◆ m_caller_port

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

Definition at line 276 of file multi_socket_bases.h.

Referenced by callback_binder_fw(), get_other_side(), and register_port().

◆ m_dbg_f

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

Definition at line 272 of file multi_socket_bases.h.

Referenced by callback_binder_fw(), set_callbacks(), and transport_dbg().

◆ m_dmi_f

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

Definition at line 273 of file multi_socket_bases.h.

Referenced by callback_binder_fw(), get_direct_mem_ptr(), and set_callbacks().

◆ 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

Definition at line 270 of file multi_socket_bases.h.

Referenced by callback_binder_fw(), nb_transport_fw(), and set_callbacks().


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

Generated on Mon May 26 2025 09:20:45 for gem5 by doxygen 1.13.2