|
| DirectMemoryUpdate () |
|
| DirectMemoryUpdate (const DirectMemoryUpdate &)=delete |
|
DirectMemoryUpdate & | operator= (const DirectMemoryUpdate &)=delete |
|
virtual | ~DirectMemoryUpdate ()=default |
|
void | release (conf_object_t *target, direct_memory_handle_t handle, direct_memory_ack_id_t id) |
|
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) |
|
void | conflicting_access (conf_object_t *target, direct_memory_handle_t handle, access_t conflicting_permission, direct_memory_ack_id_t id) |
|
void | set_gasket (tlm2simics::GasketInterface::Ptr gasket) |
|
virtual void | release (conf_object_t *target, direct_memory_handle_t handle, direct_memory_ack_id_t id)=0 |
|
virtual 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)=0 |
|
virtual void | conflicting_access (conf_object_t *target, direct_memory_handle_t handle, access_t conflicting_permission, direct_memory_ack_id_t id)=0 |
|
virtual | ~DirectMemoryUpdateInterface () |
|
Class that implements the Simics direct_memory_update interface.
What makes this class a bit special, is that it is not derived from GasketOwner. This is because it does not carry any information for the forward-path TLM2 protocol. Instead, it is intended to be associated with a tlm2simics gasket and use this gasket to get the target socket so that it can invalidate the DMI using the backward-path of the TLM2 protocol.