gem5  v22.1.0.0
Public Types | Public Member Functions | Protected Attributes | Friends | List of all members
tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL > Class Template Reference

#include <target_socket.hh>

Inheritance diagram for tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >:
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 tlm::tlm_target_socket< 32 > tlm::tlm_target_socket< 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ONE_OR_MORE_BOUND > tlm::tlm_target_socket< BUSWIDTH, TYPES, 1, sc_core::SC_ONE_OR_MORE_BOUND > tlm::tlm_target_socket< BUSWIDTH, tlm::tlm_base_protocol_types, 1, POL > tlm::tlm_target_socket< BUSWIDTH, tlm::tlm_base_protocol_types, 1, sc_core::SC_ONE_OR_MORE_BOUND > tlm_utils::multi_target_base< BUSWIDTH, TYPES, N, POL > tlm_utils::passthrough_target_socket_b< MODULE, BUSWIDTH, TYPES, POL > tlm_utils::passthrough_target_socket_tagged_b< MODULE, BUSWIDTH, TYPES, POL > tlm_utils::simple_target_socket_b< MODULE, BUSWIDTH, TYPES, POL > tlm_utils::simple_target_socket_tagged_b< MODULE, BUSWIDTH, TYPES, POL > tlm_utils::passthrough_target_socket_b< MODULE, 32, tlm::tlm_base_protocol_types, sc_core::SC_ZERO_OR_MORE_BOUND > tlm_utils::passthrough_target_socket_tagged_b< MODULE, 32, tlm::tlm_base_protocol_types, sc_core::SC_ZERO_OR_MORE_BOUND > tlm_utils::simple_target_socket_b< MODULE, 32, tlm::tlm_base_protocol_types, sc_core::SC_ZERO_OR_MORE_BOUND > tlm_utils::simple_target_socket_tagged_b< MODULE, 32, tlm::tlm_base_protocol_types, sc_core::SC_ZERO_OR_MORE_BOUND > tlm_utils::passthrough_target_socket_b< MODULE, 32, tlm::tlm_base_protocol_types > tlm_utils::passthrough_target_socket_tagged_b< MODULE, 32, tlm::tlm_base_protocol_types > tlm_utils::simple_target_socket_b< MODULE, 32, tlm::tlm_base_protocol_types > tlm_utils::simple_target_socket_tagged_b< MODULE, 32, tlm::tlm_base_protocol_types >

Public Types

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
 

Public Member Functions

 tlm_base_target_socket ()
 
 tlm_base_target_socket (const char *name)
 
virtual const char * kind () const
 
virtual void bind (base_initiator_socket_type &s)
 
void operator() (base_initiator_socket_type &s)
 
virtual void bind (base_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 tlm_socket_category get_socket_category () 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
 
virtual FW_IF & get_base_interface ()
 
virtual FW_IF const & get_base_interface () const
 
virtual sc_core::sc_export< FW_IF > & get_base_export ()
 
virtual sc_core::sc_export< FW_IF > const & get_base_export () const
 
- Public Member Functions inherited from tlm::tlm_base_socket_if
virtual std::type_index get_protocol_types () const =0
 
- 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
 

Protected Attributes

port_type m_port
 

Friends

template<unsigned int , typename , typename , int , sc_core::sc_port_policy >
class tlm_base_initiator_socket
 

Additional Inherited Members

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

Detailed Description

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
class tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >

Definition at line 53 of file target_socket.hh.

Member Typedef Documentation

◆ base_initiator_socket_type

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef tlm_base_initiator_socket_b< BUSWIDTH, fw_interface_type, bw_interface_type> tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::base_initiator_socket_type

Definition at line 66 of file target_socket.hh.

◆ base_type

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef tlm_base_target_socket_b< BUSWIDTH, fw_interface_type, bw_interface_type> tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::base_type

Definition at line 69 of file target_socket.hh.

◆ bw_interface_type

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef BW_IF tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::bw_interface_type

Definition at line 60 of file target_socket.hh.

◆ export_type

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef sc_core::sc_export<fw_interface_type> tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::export_type

Definition at line 63 of file target_socket.hh.

◆ fw_interface_type

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef FW_IF tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::fw_interface_type

Definition at line 59 of file target_socket.hh.

◆ port_type

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef sc_core::sc_port<bw_interface_type, N, POL> tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::port_type

Definition at line 61 of file target_socket.hh.

Constructor & Destructor Documentation

◆ tlm_base_target_socket() [1/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::tlm_base_target_socket ( )
inline

Definition at line 75 of file target_socket.hh.

◆ tlm_base_target_socket() [2/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::tlm_base_target_socket ( const char *  name)
inlineexplicit

Definition at line 80 of file target_socket.hh.

Member Function Documentation

◆ bind() [1/3]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual void tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::bind ( base_initiator_socket_type s)
inlinevirtual

◆ bind() [2/3]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual void tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::bind ( base_type s)
inlinevirtual

◆ bind() [3/3]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual void tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::bind ( fw_interface_type ifs)
inlinevirtual

◆ get_base_export() [1/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual sc_core::sc_export<FW_IF>& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_base_export ( )
inlinevirtual

◆ get_base_export() [2/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual sc_core::sc_export<FW_IF> const& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_base_export ( ) const
inlinevirtual

◆ get_base_interface() [1/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual FW_IF& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_base_interface ( )
inlinevirtual

◆ get_base_interface() [2/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual FW_IF const& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_base_interface ( ) const
inlinevirtual

◆ get_base_port() [1/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual sc_core::sc_port_b<BW_IF>& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_base_port ( )
inlinevirtual

◆ get_base_port() [2/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual sc_core::sc_port_b<BW_IF> const& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_base_port ( ) const
inlinevirtual

◆ get_bus_width()

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual unsigned int tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_bus_width ( ) const
inlinevirtual

Implements tlm::tlm_base_socket_if.

Definition at line 165 of file target_socket.hh.

◆ get_export_base() [1/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual sc_core::sc_export_base& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_export_base ( )
inlinevirtual

Implements tlm::tlm_base_socket_if.

Definition at line 159 of file target_socket.hh.

◆ get_export_base() [2/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual sc_core::sc_export_base const& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_export_base ( ) const
inlinevirtual

Implements tlm::tlm_base_socket_if.

Definition at line 161 of file target_socket.hh.

◆ get_port_base() [1/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual sc_core::sc_port_base& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_port_base ( )
inlinevirtual

◆ get_port_base() [2/2]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual sc_core::sc_port_base const& tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_port_base ( ) const
inlinevirtual

◆ get_socket_category()

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual tlm_socket_category tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::get_socket_category ( ) const
inlinevirtual

◆ kind()

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual const char* tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::kind ( ) const
inlinevirtual

◆ operator()() [1/3]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
void tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::operator() ( base_initiator_socket_type s)
inline

◆ operator()() [2/3]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
void tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::operator() ( base_type s)
inline

◆ operator()() [3/3]

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
void tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::operator() ( fw_interface_type s)
inline

◆ operator->()

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
bw_interface_type* tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::operator-> ( )
inline

◆ operator[]()

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
bw_interface_type* tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::operator[] ( int  i)
inline

◆ size()

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
int tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::size ( ) const
inline

Friends And Related Function Documentation

◆ tlm_base_initiator_socket

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
template<unsigned int , typename , typename , int , sc_core::sc_port_policy >
friend class tlm_base_initiator_socket
friend

Definition at line 72 of file target_socket.hh.

Member Data Documentation

◆ m_port

template<unsigned int BUSWIDTH = 32, typename FW_IF = tlm_fw_transport_if<>, typename BW_IF = tlm_bw_transport_if<>, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
port_type tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >::m_port
protected

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

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