20#ifndef __SYSTEMC_EXT_TLM_CORE_2_SOCKETS_INITIATOR_SOCKET_HH__
21#define __SYSTEMC_EXT_TLM_CORE_2_SOCKETS_INITIATOR_SOCKET_HH__
25#include "../interfaces/fw_bw_ifs.hh"
31template <
unsigned int BUSWIDTH=32,
32 typename FW_IF=tlm_fw_transport_if<>,
33 typename BW_IF=tlm_bw_transport_if<>>
47template <
unsigned int BUSWIDTH,
typename FW_IF,
typename BW_IF>
50template <
unsigned int BUSWIDTH,
typename FW_IF,
typename BW_IF,
int N,
54template <
unsigned int BUSWIDTH=32,
typename FW_IF=tlm_fw_transport_if<>,
55 typename BW_IF=tlm_bw_transport_if<>,
int N=1,
56 sc_core::sc_port_policy POL=sc_core::SC_ONE_OR_MORE_BOUND>
75 template <
unsigned int,
typename,
typename,
int, sc_core::sc_port_policy>
82 "tlm_base_initiator_socket_export"))
87 (
std::string(
name) +
"_export").c_str()))
90 virtual const char*
kind()
const {
return "tlm_base_initiator_socket"; }
100#pragma GCC diagnostic push
108#if defined(__clang__) || (defined(__GNUC__) && (__GNUC__ >= 13))
109#pragma GCC diagnostic ignored "-Woverloaded-virtual"
143#pragma GCC diagnostic pop
194 BUSWIDTH, tlm_fw_transport_if<TYPES>,
195 tlm_bw_transport_if<TYPES>, N, POL>
208 virtual const char *
kind()
const {
return "tlm_initiator_socket"; }
210 virtual std::type_index
213 return typeid(TYPES);
virtual sc_core::sc_export< BW_IF > const & get_base_export() const =0
virtual sc_core::sc_export< BW_IF > & get_base_export()=0
virtual ~tlm_base_initiator_socket_b()
virtual BW_IF const & get_base_interface() const =0
virtual sc_core::sc_port_b< FW_IF > & get_base_port()=0
virtual sc_core::sc_port_b< FW_IF > const & get_base_port() const =0
virtual BW_IF & get_base_interface()=0
virtual void bind(base_type &s)
virtual BW_IF const & get_base_interface() const
sc_core::sc_export< bw_interface_type > export_type
virtual sc_core::sc_export< BW_IF > & get_base_export()
tlm_base_initiator_socket_b< BUSWIDTH, fw_interface_type, bw_interface_type > base_type
tlm_base_initiator_socket(const char *name)
virtual sc_core::sc_port_base & get_port_base()
virtual void bind(base_target_socket_type &s)
The following warning is disabled because the bind methods are overloaded in the derived class and th...
virtual BW_IF & get_base_interface()
virtual void bind(bw_interface_type &ifs)
virtual sc_core::sc_port_b< FW_IF > const & get_base_port() const
sc_core::sc_port< fw_interface_type, N, POL > port_type
tlm_base_target_socket_b< BUSWIDTH, fw_interface_type, bw_interface_type > base_target_socket_type
virtual sc_core::sc_export_base const & get_export_base() const
virtual sc_core::sc_export_base & get_export_base()
virtual sc_core::sc_port_base const & get_port_base() const
virtual unsigned int get_bus_width() const
virtual tlm_socket_category get_socket_category() const
tlm_base_initiator_socket()
virtual const char * kind() const
virtual sc_core::sc_export< BW_IF > const & get_base_export() const
void operator()(base_target_socket_type &s)
virtual sc_core::sc_port_b< FW_IF > & get_base_port()
virtual const char * kind() const
tlm_initiator_socket(const char *name)
virtual std::type_index get_protocol_types() const
Overload hash function for BasicBlockRange type.
const std::string & name()