|
| | 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.