14#ifndef SIMICS_SYSTEMC_SIMICS2TLM_DIRECT_MEMORY_UPDATE_GASKET_ADAPTER_H
15#define SIMICS_SYSTEMC_SIMICS2TLM_DIRECT_MEMORY_UPDATE_GASKET_ADAPTER_H
32 DirectMemoryUpdateInterface *direct_mem_update,
34 : direct_mem_update_(direct_mem_update),
35 simulation_(simulation) {
41 direct_memory_handle_t handle,
42 direct_memory_ack_id_t
id)
override {
45 direct_mem_update_->release(target, handle,
id);
47 direct_mem_update_->release(target, handle,
id);
51 direct_memory_handle_t handle,
53 access_t lost_permission,
54 access_t lost_inhibit,
55 direct_memory_ack_id_t
id)
override {
58 direct_mem_update_->update_permission(target, handle, lost_access,
59 lost_permission, lost_inhibit,
62 direct_mem_update_->update_permission(target, handle, lost_access,
63 lost_permission, lost_inhibit,
68 direct_memory_handle_t handle,
69 access_t conflicting_permission,
70 direct_memory_ack_id_t
id)
override {
73 direct_mem_update_->conflicting_access(target, handle,
74 conflicting_permission,
id);
76 direct_mem_update_->conflicting_access(target, handle,
77 conflicting_permission,
id);
87 DirectMemoryUpdateInterface *direct_mem_update_;
Utility class that handles the context switching, using RAII methodology.
Definition: context.h:31
Simics direct_memory_update interface.
Definition: direct_memory_update_interface.h:24
Interface to the SystemC simulation.
Definition: simulation_interface.h:25
Adapter for DirectMemoryUpdate gasket.
Definition: direct_memory_update_gasket_adapter.h:29
void conflicting_access(conf_object_t *target, direct_memory_handle_t handle, access_t conflicting_permission, direct_memory_ack_id_t id) override
Definition: direct_memory_update_gasket_adapter.h:67
void update_permission(conf_object_t *target, direct_memory_handle_t handle, access_t lost_access, access_t lost_permission, access_t lost_inhibit, direct_memory_ack_id_t id) override
Definition: direct_memory_update_gasket_adapter.h:50
DirectMemoryUpdateGasketAdapter(DirectMemoryUpdateInterface *direct_mem_update, iface::SimulationInterface *simulation)
Definition: direct_memory_update_gasket_adapter.h:31
virtual ~DirectMemoryUpdateGasketAdapter()=default
simics2tlm::GasketOwner * gasket_owner() const override
Definition: direct_memory_update_gasket_adapter.h:82
void release(conf_object_t *target, direct_memory_handle_t handle, direct_memory_ack_id_t id) override
Definition: direct_memory_update_gasket_adapter.h:40
Definition: gasket_adapter.h:43
Base class, responsible for handling a gasket.
Definition: gasket_owner.h:30