16#ifndef SIMICS_SYSTEMC_SIMICS2TLM_PCI_EXPRESS_GASKET_ADAPTER_H
17#define SIMICS_SYSTEMC_SIMICS2TLM_PCI_EXPRESS_GASKET_ADAPTER_H
19#if defined SIMICS_5_API || defined SIMICS_6_API
35class PciExpressGasketAdapter
36 :
public iface::PciExpressInterface,
37 public GasketAdapter<iface::PciExpressInterface> {
39 PciExpressGasketAdapter(PciExpressInterface *pci_express,
40 iface::SimulationInterface *simulation)
41 : pci_express_(pci_express), simulation_(simulation) {
43 int send_message(
int type,
const std::vector<uint8_t> &payload)
override {
44 Context context(simulation_);
45 return pci_express_->send_message(type, payload);
47 simics2tlm::GasketOwner *gasket_owner()
const override {
48 return dynamic_cast<simics2tlm::GasketOwner *
>(pci_express_);
52 PciExpressInterface *pci_express_;
53 iface::SimulationInterface *simulation_;
Definition: pci_bus_interface.h:24