gem5  v21.2.0.0
Classes | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL > Class Template Reference

#include <simple_initiator_socket.h>

Inheritance diagram for tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >:
tlm::tlm_initiator_socket< BUSWIDTH, TYPES, 1, sc_core::SC_ONE_OR_MORE_BOUND > tlm_utils::simple_socket_base tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES >, tlm_bw_transport_if< TYPES >, N, POL > tlm_utils::convenience_socket_base tlm::tlm_base_socket_if tlm::tlm_base_initiator_socket_b< BUSWIDTH, tlm_fw_transport_if< TYPES >, tlm_bw_transport_if< TYPES > > sc_core::sc_port< tlm_fw_transport_if< TYPES >, N, POL > sc_core::sc_port_b< tlm_fw_transport_if< TYPES > > sc_core::sc_port_base sc_core::sc_object

Classes

class  process
 

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 tlm::tlm_fw_transport_if< TYPES > fw_interface_type
 
typedef tlm::tlm_bw_transport_if< TYPES > bw_interface_type
 
typedef tlm::tlm_initiator_socket< BUSWIDTH, TYPES, 1, POL > base_type
 
- Public Types inherited from tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES >, tlm_bw_transport_if< TYPES >, N, POL >
typedef tlm_fw_transport_if< TYPES > fw_interface_type
 
typedef tlm_bw_transport_if< TYPES > bw_interface_type
 
typedef sc_core::sc_port< fw_interface_type, N, POL > port_type
 
typedef sc_core::sc_export< bw_interface_typeexport_type
 
typedef tlm_base_target_socket_b< BUSWIDTH, fw_interface_type, bw_interface_typebase_target_socket_type
 
typedef tlm_base_initiator_socket_b< BUSWIDTH, fw_interface_type, bw_interface_typebase_type
 

Public Member Functions

 simple_initiator_socket_b (const char *n=default_name())
 
void register_nb_transport_bw (MODULE *mod, sync_enum_type(MODULE::*cb)(transaction_type &, phase_type &, sc_core::sc_time &))
 
void register_invalidate_direct_mem_ptr (MODULE *mod, void(MODULE::*cb)(sc_dt::uint64, sc_dt::uint64))
 
- Public Member Functions inherited from tlm::tlm_initiator_socket< BUSWIDTH, TYPES, 1, sc_core::SC_ONE_OR_MORE_BOUND >
 tlm_initiator_socket ()
 
 tlm_initiator_socket (const char *name)
 
virtual const char * kind () const
 
virtual std::type_index get_protocol_types () const
 
- Public Member Functions inherited from tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES >, tlm_bw_transport_if< TYPES >, N, POL >
 tlm_base_initiator_socket ()
 
 tlm_base_initiator_socket (const char *name)
 
virtual void bind (base_target_socket_type &s)
 
virtual void bind (base_type &s)
 
virtual void bind (bw_interface_type &ifs)
 
void operator() (base_target_socket_type &s)
 
void operator() (base_type &s)
 
void operator() (bw_interface_type &s)
 
virtual sc_core::sc_port_baseget_port_base ()
 
virtual const sc_core::sc_port_baseget_port_base () const
 
virtual sc_core::sc_export_baseget_export_base ()
 
virtual const sc_core::sc_export_baseget_export_base () const
 
virtual unsigned int get_bus_width () const
 
virtual tlm_socket_category get_socket_category () const
 
virtual sc_core::sc_port_b< tlm_fw_transport_if< TYPES > > & get_base_port ()
 
virtual const sc_core::sc_port_b< tlm_fw_transport_if< TYPES > > & get_base_port () const
 
virtual tlm_bw_transport_if< TYPES > & get_base_interface ()
 
virtual const tlm_bw_transport_if< TYPES > & get_base_interface () const
 
virtual sc_core::sc_export< tlm_bw_transport_if< TYPES > > & get_base_export ()
 
virtual const sc_core::sc_export< tlm_bw_transport_if< TYPES > > & get_base_export () const
 
- Public Member Functions inherited from tlm::tlm_base_socket_if
virtual const sc_core::sc_port_baseget_port_base () const =0
 
virtual const sc_core::sc_export_baseget_export_base () const =0
 
virtual unsigned int get_bus_width () const =0
 
virtual std::type_index get_protocol_types () const =0
 
virtual tlm_socket_category get_socket_category () const =0
 
- Public Member Functions inherited from tlm::tlm_base_initiator_socket_b< BUSWIDTH, tlm_fw_transport_if< TYPES >, tlm_bw_transport_if< TYPES > >
virtual ~tlm_base_initiator_socket_b ()
 
- Public Member Functions inherited from sc_core::sc_port< tlm_fw_transport_if< TYPES >, N, POL >
 sc_port ()
 
 sc_port (const char *name)
 
 sc_port (const tlm_fw_transport_if< TYPES > &interface)
 
 sc_port (const char *name, const tlm_fw_transport_if< TYPES > &interface)
 
 sc_port (sc_port_b< tlm_fw_transport_if< TYPES > > &parent)
 
 sc_port (const char *name, sc_port_b< tlm_fw_transport_if< TYPES > > &parent)
 
 sc_port (sc_port< tlm_fw_transport_if< TYPES >, N, P > &parent)
 
 sc_port (const char *name, sc_port< tlm_fw_transport_if< TYPES >, N, P > &parent)
 
virtual ~sc_port ()
 
- Public Member Functions inherited from sc_core::sc_port_b< tlm_fw_transport_if< TYPES > >
void operator() (tlm_fw_transport_if< TYPES > &i)
 
void operator() (sc_port_b< tlm_fw_transport_if< TYPES > > &p)
 
virtual void bind (tlm_fw_transport_if< TYPES > &i)
 
virtual void bind (sc_port_b< tlm_fw_transport_if< TYPES > > &p)
 
tlm_fw_transport_if< TYPES > * operator-> ()
 
const tlm_fw_transport_if< TYPES > * operator-> () const
 
tlm_fw_transport_if< TYPES > * operator[] (int n)
 
const tlm_fw_transport_if< TYPES > * operator[] (int n) const
 
sc_interfaceget_interface ()
 
const sc_interfaceget_interface () const
 
- Public Member Functions inherited from sc_core::sc_port_base
 sc_port_base (const char *name, int n, sc_port_policy p)
 
virtual ~sc_port_base ()
 
void warn_port_constructor () const
 
int maxSize () const
 
int size () const
 
const char * kind () const
 
- 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
 

Static Public Member Functions

static const char * default_name ()
 

Private Member Functions

const sc_core::sc_objectget_socket () const
 

Private Attributes

process m_process
 

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_port_b< tlm_fw_transport_if< TYPES > >
void before_end_of_elaboration () override
 
void end_of_elaboration () override
 
void start_of_simulation () override
 
void end_of_simulation () override
 
 sc_port_b (int n, sc_port_policy p)
 
 sc_port_b (const char *name, int n, sc_port_policy p)
 
virtual ~sc_port_b ()
 
int vbind (sc_interface &i) override
 
int vbind (sc_port_base &pb) override
 
- Protected Member Functions inherited from sc_core::sc_port_base
void bind (sc_interface &)
 
void bind (sc_port_base &)
 
void report_error (const char *id, const char *add_msg) const
 
- 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 ()
 
- Protected Member Functions inherited from tlm_utils::simple_socket_base
void elaboration_check (const char *action) const
 
- Protected Member Functions inherited from tlm_utils::convenience_socket_base
virtual ~convenience_socket_base ()
 
void display_warning (const char *msg) const
 
void display_error (const char *msg) const
 
- Protected Attributes inherited from tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES >, tlm_bw_transport_if< TYPES >, N, POL >
export_type m_export
 

Detailed Description

template<typename MODULE, unsigned int BUSWIDTH, typename TYPES, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
class tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >

Definition at line 54 of file simple_initiator_socket.h.

Member Typedef Documentation

◆ base_type

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef tlm::tlm_initiator_socket<BUSWIDTH, TYPES, 1, POL> tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::base_type

Definition at line 81 of file simple_initiator_socket.h.

◆ bw_interface_type

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef tlm::tlm_bw_transport_if<TYPES> tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::bw_interface_type

Definition at line 80 of file simple_initiator_socket.h.

◆ fw_interface_type

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef tlm::tlm_fw_transport_if<TYPES> tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::fw_interface_type

Definition at line 79 of file simple_initiator_socket.h.

◆ phase_type

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef TYPES::tlm_phase_type tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::phase_type

Definition at line 77 of file simple_initiator_socket.h.

◆ sync_enum_type

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef tlm::tlm_sync_enum tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::sync_enum_type

Definition at line 78 of file simple_initiator_socket.h.

◆ transaction_type

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef TYPES::tlm_payload_type tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::transaction_type

Definition at line 76 of file simple_initiator_socket.h.

Constructor & Destructor Documentation

◆ simple_initiator_socket_b()

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::simple_initiator_socket_b ( const char *  n = default_name())
inlineexplicit

Definition at line 90 of file simple_initiator_socket.h.

Member Function Documentation

◆ default_name()

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
static const char* tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::default_name ( )
inlinestatic

Definition at line 85 of file simple_initiator_socket.h.

◆ get_socket()

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
const sc_core::sc_object* tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::get_socket ( ) const
inlineprivatevirtual

Implements tlm_utils::convenience_socket_base.

Definition at line 182 of file simple_initiator_socket.h.

◆ register_invalidate_direct_mem_ptr()

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
void tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::register_invalidate_direct_mem_ptr ( MODULE *  mod,
void(MODULE::*)(sc_dt::uint64, sc_dt::uint64 cb 
)
inline

Definition at line 105 of file simple_initiator_socket.h.

Referenced by adapt_gp2ext< BUSWIDTH >::adapt_gp2ext().

◆ register_nb_transport_bw()

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
void tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::register_nb_transport_bw ( MODULE *  mod,
sync_enum_type(MODULE::*)(transaction_type &, phase_type &, sc_core::sc_time &)  cb 
)
inline

Member Data Documentation

◆ m_process

template<typename MODULE , unsigned int BUSWIDTH, typename TYPES , sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
process tlm_utils::simple_initiator_socket_b< MODULE, BUSWIDTH, TYPES, POL >::m_process
private

Definition at line 185 of file simple_initiator_socket.h.


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

Generated on Tue Dec 21 2021 11:37:17 for gem5 by doxygen 1.8.17