#include <multi_passthrough_target_socket.h>
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 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, TYPES, N, POL > | base_type |
typedef base_type::base_initiator_socket_type | base_initiator_socket_type |
typedef base_type::initiator_socket_type | initiator_socket_type |
Public Member Functions | |
multi_passthrough_target_socket (const char *name) | |
~multi_passthrough_target_socket () | |
void | display_warning (const std::string &text) |
void | display_error (const std::string &text) |
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 < TYPES > & | get_base_interface () |
virtual sc_core::sc_export < tlm::tlm_fw_transport_if < TYPES > > & | get_base_export () |
void | end_of_elaboration () |
void | bind (base_type &s) |
void | operator() (base_type &s) |
tlm::tlm_bw_transport_if < TYPES > * | operator[] (int i) |
unsigned int | size () |
Protected Member Functions | |
base_type * | get_hierarch_bind () |
std::map< unsigned int, tlm::tlm_bw_transport_if < TYPES > * > & | get_multi_binds () |
void | set_hierarch_bind (base_type *h) |
tlm::tlm_fw_transport_if < TYPES > * | get_last_binder (tlm::tlm_bw_transport_if< TYPES > *other) |
void | disable_cb_bind () |
std::vector < callback_binder_fw < TYPES > * > & | get_binders () |
Protected Attributes | |
std::map< unsigned int, tlm::tlm_bw_transport_if < TYPES > * > | m_multi_binds |
std::vector < tlm::tlm_bw_transport_if < TYPES > * > | m_sockets |
std::vector < callback_binder_fw < TYPES > * > | m_binders |
MODULE * | m_mod |
nb_cb | m_nb_cb |
b_cb | m_b_cb |
dbg_cb | m_dbg_cb |
dmi_cb | m_dmi_cb |
base_type * | m_hierarch_bind |
bool | m_eoe_disabled |
callback_binder_fw < TYPES > | m_dummy |
boost::function < sync_enum_type(int i, transaction_type &txn, phase_type &p, sc_core::sc_time &t)> | m_nb_f |
boost::function < void(int i, transaction_type &txn, sc_core::sc_time &t)> | m_b_f |
boost::function < unsigned int(int i, transaction_type &txn)> | m_dbg_f |
boost::function < bool(int i, transaction_type &txn, tlm::tlm_dmi &dmi)> | m_dmi_f |
Definition at line 44 of file multi_passthrough_target_socket.h.
typedef TYPES::tlm_payload_type tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::transaction_type |
Definition at line 58 of file multi_passthrough_target_socket.h.
typedef TYPES::tlm_phase_type tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::phase_type |
Definition at line 59 of file multi_passthrough_target_socket.h.
typedef tlm::tlm_sync_enum tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::sync_enum_type |
Definition at line 60 of file multi_passthrough_target_socket.h.
typedef sync_enum_type(MODULE::* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::nb_cb)(int, transaction_type &, phase_type &, sc_core::sc_time &) |
Definition at line 63 of file multi_passthrough_target_socket.h.
typedef void(MODULE::* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::b_cb)(int, transaction_type &, sc_core::sc_time &) |
Definition at line 64 of file multi_passthrough_target_socket.h.
typedef unsigned int(MODULE::* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::dbg_cb)(int, transaction_type &txn) |
Definition at line 65 of file multi_passthrough_target_socket.h.
typedef bool(MODULE::* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::dmi_cb)(int, transaction_type &txn, tlm::tlm_dmi &dmi) |
Definition at line 66 of file multi_passthrough_target_socket.h.
typedef multi_target_base<BUSWIDTH, TYPES, N ,POL > tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::base_type |
Reimplemented from tlm_utils::multi_target_base< BUSWIDTH, TYPES, N, POL >.
Definition at line 74 of file multi_passthrough_target_socket.h.
typedef base_type::base_initiator_socket_type tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::base_initiator_socket_type |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >.
Definition at line 76 of file multi_passthrough_target_socket.h.
typedef base_type::initiator_socket_type tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::initiator_socket_type |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >.
Definition at line 77 of file multi_passthrough_target_socket.h.
tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::multi_passthrough_target_socket | ( | const char * | name | ) | [inline] |
Definition at line 80 of file multi_passthrough_target_socket.h.
tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::~multi_passthrough_target_socket | ( | ) | [inline] |
Definition at line 93 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::display_warning | ( | const std::string & | text | ) | [inline] |
Definition at line 99 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::display_error | ( | const std::string & | text | ) | [inline] |
Definition at line 105 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::register_nb_transport_fw | ( | MODULE * | mod, | |
nb_cb | cb | |||
) | [inline] |
Definition at line 112 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::register_b_transport | ( | MODULE * | mod, | |
b_cb | cb | |||
) | [inline] |
Definition at line 139 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::register_transport_dbg | ( | MODULE * | mod, | |
dbg_cb | cb | |||
) | [inline] |
Definition at line 166 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::register_get_direct_mem_ptr | ( | MODULE * | mod, | |
dmi_cb | cb | |||
) | [inline] |
Definition at line 193 of file multi_passthrough_target_socket.h.
virtual tlm::tlm_fw_transport_if<TYPES>& tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_base_interface | ( | ) | [inline, virtual] |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >.
Definition at line 225 of file multi_passthrough_target_socket.h.
virtual sc_core::sc_export<tlm::tlm_fw_transport_if<TYPES> >& tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_base_export | ( | ) | [inline, virtual] |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >.
Definition at line 235 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::end_of_elaboration | ( | ) | [inline] |
Definition at line 241 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::bind | ( | base_type & | s | ) | [inline] |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >.
Definition at line 268 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::operator() | ( | base_type & | s | ) | [inline] |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >.
Definition at line 285 of file multi_passthrough_target_socket.h.
tlm::tlm_bw_transport_if<TYPES>* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::operator[] | ( | int | i | ) | [inline] |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >.
Definition at line 291 of file multi_passthrough_target_socket.h.
unsigned int tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::size | ( | ) | [inline] |
Definition at line 295 of file multi_passthrough_target_socket.h.
base_type* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_hierarch_bind | ( | ) | [inline, protected, virtual] |
Implements tlm_utils::multi_target_base< BUSWIDTH, TYPES, N, POL >.
Definition at line 299 of file multi_passthrough_target_socket.h.
std::map<unsigned int, tlm::tlm_bw_transport_if<TYPES>*>& tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_multi_binds | ( | ) | [inline, protected, virtual] |
Implements tlm_utils::multi_target_base< BUSWIDTH, TYPES, N, POL >.
Definition at line 300 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::set_hierarch_bind | ( | base_type * | h | ) | [inline, protected] |
Definition at line 301 of file multi_passthrough_target_socket.h.
tlm::tlm_fw_transport_if<TYPES>* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_last_binder | ( | tlm::tlm_bw_transport_if< TYPES > * | other | ) | [inline, protected, virtual] |
Implements tlm_utils::multi_to_multi_bind_base< TYPES >.
Definition at line 302 of file multi_passthrough_target_socket.h.
void tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::disable_cb_bind | ( | ) | [inline, protected] |
Definition at line 311 of file multi_passthrough_target_socket.h.
std::vector<callback_binder_fw<TYPES>* >& tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_binders | ( | ) | [inline, protected, virtual] |
Implements tlm_utils::multi_target_base< BUSWIDTH, TYPES, N, POL >.
Definition at line 312 of file multi_passthrough_target_socket.h.
std::map<unsigned int, tlm::tlm_bw_transport_if<TYPES>*> tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_multi_binds [protected] |
Definition at line 309 of file multi_passthrough_target_socket.h.
std::vector<tlm::tlm_bw_transport_if<TYPES>*> tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_sockets [protected] |
Definition at line 314 of file multi_passthrough_target_socket.h.
std::vector<callback_binder_fw<TYPES>*> tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_binders [protected] |
Definition at line 316 of file multi_passthrough_target_socket.h.
MODULE* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_mod [protected] |
Definition at line 318 of file multi_passthrough_target_socket.h.
nb_cb tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_nb_cb [protected] |
Definition at line 319 of file multi_passthrough_target_socket.h.
b_cb tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_b_cb [protected] |
Definition at line 320 of file multi_passthrough_target_socket.h.
dbg_cb tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_dbg_cb [protected] |
Definition at line 321 of file multi_passthrough_target_socket.h.
dmi_cb tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_dmi_cb [protected] |
Definition at line 322 of file multi_passthrough_target_socket.h.
base_type* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_hierarch_bind [protected] |
Definition at line 323 of file multi_passthrough_target_socket.h.
bool tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_eoe_disabled [protected] |
Definition at line 324 of file multi_passthrough_target_socket.h.
callback_binder_fw<TYPES> tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_dummy [protected] |
Definition at line 325 of file multi_passthrough_target_socket.h.
boost::function<sync_enum_type (int i, transaction_type& txn, phase_type& p, sc_core::sc_time& t)> tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_nb_f [protected] |
Definition at line 330 of file multi_passthrough_target_socket.h.
boost::function<void (int i, transaction_type& txn, sc_core::sc_time& t)> tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_b_f [protected] |
Definition at line 331 of file multi_passthrough_target_socket.h.
boost::function<unsigned int (int i, transaction_type& txn)> tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_dbg_f [protected] |
Definition at line 332 of file multi_passthrough_target_socket.h.
boost::function<bool (int i, transaction_type& txn, tlm::tlm_dmi& dmi)> tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_dmi_f [protected] |
Definition at line 333 of file multi_passthrough_target_socket.h.