16#ifndef SIMICS_SYSTEMC_IFACE_EXTENSION_SENDER_H
17#define SIMICS_SYSTEMC_IFACE_EXTENSION_SENDER_H
34template<
typename TSocket>
38 : socket_(NULL), delay_(
sc_core::SC_ZERO_TIME), payload_(NULL) {
40 void init(TSocket *socket) {
63 SC_REPORT_ERROR(
"/intel/ExtensionSender",
64 "Extension not processed correctly.");
70 sc_core::sc_time delay_;
71 tlm::tlm_generic_payload *payload_;
Interface used by Extension class to send the extension.
Definition: extension_sender_interface.h:26
Generic extension sender initialized with a TLM2 initiator socket of TSocket type.
Definition: extension_sender.h:35
virtual void send_failed(Transaction *transaction)
Called by extension if method_call invocation was missing.
Definition: extension_sender.h:58
void init(TSocket *socket)
Definition: extension_sender.h:40
virtual Transaction transaction()
Called by extension to get a new Transaction.
Definition: extension_sender.h:49
ExtensionSender()
Definition: extension_sender.h:37
virtual ~ExtensionSender()
Definition: extension_sender.h:66
void set_delay(sc_core::sc_time delay)
Definition: extension_sender.h:43
virtual void send_extension(Transaction *transaction)
Called by extension after the extension is set on the payload.
Definition: extension_sender.h:55
void set_payload(tlm::tlm_generic_payload *payload)
Definition: extension_sender.h:46
A memory manager that implements the tlm::tlm_mm_interface providing a pool of transaction objects.
Definition: transaction_pool.h:34
Transaction acquire()
Definition: transaction_pool.h:63
Class that encapsulates a generic_payload and returns it to the TransactionPool when the Transaction ...
Definition: transaction.h:31
Definition: argument_registry.h:26
Definition: pci_bus_interface.h:24