SystemC Library API Reference Manual
Reference documentation for the Simics SystemC Library.
 
Loading...
Searching...
No Matches
simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES > Class Template Reference

Implements core functionality for sending a TLM2 transaction over a socket. More...

#include <gasket.h>

Inheritance diagram for simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >:
simics::systemc::simics2tlm::GasketInterface simics::systemc::ThreadCallbackInterface

Public Member Functions

 SC_HAS_PROCESS (Gasket)
 
 Gasket (sc_core::sc_module_name, const ConfObjectRef &obj)
 
virtual ~Gasket ()=default
 
void init (iface::SimulationInterface *simulation, InternalInterface *internal)
 
bool trigger (iface::Transaction *transaction) override
 
ConfObjectRef & simics_obj () override
 
DmiDataTableget_dmi_data_table () override
 
void set_type (ClassType *type) override
 
ClassTypetype () override
 
sc_core::sc_object * get_target_socket () override
 
void set_dmi (bool enable) override
 
bool is_dmi_enabled () override
 
std::string gasket_name () const override
 
tlm::tlm_generic_payload & payload () override
 Deprecated, use the TransactionPool::acquire() instead.
 
bool trigger_transaction () override
 Deprecated, use the trigger(iface::Transaction *transaction) instead.
 
void set_inquiry (bool inquiry) override
 Deprecated, use the TransactionExtension::set_transport_debug(bool) instead.
 
template<typename Socket >
void bind (Socket &sock)
 
- Public Member Functions inherited from simics::systemc::simics2tlm::GasketInterface
virtual bool trigger (iface::Transaction *transaction)=0
 
virtual ConfObjectRef & simics_obj ()=0
 
virtual DmiDataTableget_dmi_data_table ()=0
 
virtual void set_type (ClassType *type)=0
 
virtual ClassTypetype ()=0
 
virtual sc_core::sc_object * get_target_socket ()=0
 
virtual void set_dmi (bool enable)=0
 
virtual bool is_dmi_enabled ()=0
 
virtual std::string gasket_name () const =0
 
virtual ~GasketInterface ()
 
virtual tlm::tlm_generic_payload & payload ()=0
 Deprecated, use the TransactionPool::acquire() instead.
 
virtual bool trigger_transaction ()=0
 Deprecated, use the trigger(iface::Transaction *transaction) instead.
 
virtual void set_inquiry (bool inquiry)=0
 Deprecated, use the TransactionExtension::set_transport_debug(bool) instead.
 
- Public Member Functions inherited from simics::systemc::ThreadCallbackInterface
virtual ~ThreadCallbackInterface ()
 
virtual void run (ThreadInterface *call)=0
 
virtual void block (ThreadInterface *call)=0
 
virtual void finish (ThreadInterface *call)=0
 
virtual void exception (ThreadInterface *call)=0
 
virtual iface::SimulationInterfacesimulation (ThreadInterface *call)=0
 

Additional Inherited Members

- Public Types inherited from simics::systemc::simics2tlm::GasketInterface
typedef std::shared_ptr< GasketInterfacePtr
 

Detailed Description

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
class simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >

Implements core functionality for sending a TLM2 transaction over a socket.

This class is used by all simics2tlm gaskets through the GasketOwner or MultiGasketOwner base classes.

Constructor & Destructor Documentation

◆ Gasket()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::Gasket ( sc_core::sc_module_name  ,
const ConfObjectRef &  obj 
)

◆ ~Gasket()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
virtual simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::~Gasket ( )
virtualdefault

Member Function Documentation

◆ bind()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
template<typename Socket >
void simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::bind ( Socket &  sock)
inline

◆ gasket_name()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
std::string simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::gasket_name ( ) const
overridevirtual

◆ get_dmi_data_table()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
DmiDataTable * simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::get_dmi_data_table ( )
overridevirtual

◆ get_target_socket()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
sc_core::sc_object * simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::get_target_socket ( )
overridevirtual

◆ init()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
void simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::init ( iface::SimulationInterface simulation,
InternalInterface internal 
)

◆ is_dmi_enabled()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
bool simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::is_dmi_enabled ( )
overridevirtual

◆ payload()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
tlm::tlm_generic_payload & simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::payload ( )
overridevirtual

Deprecated, use the TransactionPool::acquire() instead.

Implements simics::systemc::simics2tlm::GasketInterface.

◆ SC_HAS_PROCESS()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::SC_HAS_PROCESS ( Gasket< BUSWIDTH, TYPES >  )

◆ set_dmi()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
void simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::set_dmi ( bool  enable)
overridevirtual

◆ set_inquiry()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
void simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::set_inquiry ( bool  inquiry)
overridevirtual

Deprecated, use the TransactionExtension::set_transport_debug(bool) instead.

Implements simics::systemc::simics2tlm::GasketInterface.

◆ set_type()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
void simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::set_type ( ClassType type)
overridevirtual

◆ simics_obj()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
ConfObjectRef & simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::simics_obj ( )
overridevirtual

◆ trigger()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
bool simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::trigger ( iface::Transaction transaction)
overridevirtual

◆ trigger_transaction()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
bool simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::trigger_transaction ( )
overridevirtual

◆ type()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
ClassType * simics::systemc::simics2tlm::Gasket< BUSWIDTH, TYPES >::type ( )
overridevirtual

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