diff options
Diffstat (limited to 'src/Ryujinx.Cpu/Tracking/CpuMultiRegionHandle.cs')
-rw-r--r-- | src/Ryujinx.Cpu/Tracking/CpuMultiRegionHandle.cs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/Ryujinx.Cpu/Tracking/CpuMultiRegionHandle.cs b/src/Ryujinx.Cpu/Tracking/CpuMultiRegionHandle.cs new file mode 100644 index 00000000..0ed8bfc5 --- /dev/null +++ b/src/Ryujinx.Cpu/Tracking/CpuMultiRegionHandle.cs @@ -0,0 +1,28 @@ +using Ryujinx.Memory.Tracking; +using System; +using System.Collections.Generic; + +namespace Ryujinx.Cpu.Tracking +{ + public class CpuMultiRegionHandle : IMultiRegionHandle + { + private readonly MultiRegionHandle _impl; + + public bool Dirty => _impl.Dirty; + + internal CpuMultiRegionHandle(MultiRegionHandle impl) + { + _impl = impl; + } + + public void Dispose() => _impl.Dispose(); + public void ForceDirty(ulong address, ulong size) => _impl.ForceDirty(address, size); + public IEnumerable<IRegionHandle> GetHandles() => _impl.GetHandles(); + public void QueryModified(Action<ulong, ulong> modifiedAction) => _impl.QueryModified(modifiedAction); + public void QueryModified(ulong address, ulong size, Action<ulong, ulong> modifiedAction) => _impl.QueryModified(address, size, modifiedAction); + public void QueryModified(ulong address, ulong size, Action<ulong, ulong> modifiedAction, int sequenceNumber) => _impl.QueryModified(address, size, modifiedAction, sequenceNumber); + public void RegisterAction(ulong address, ulong size, RegionSignal action) => _impl.RegisterAction(address, size, action); + public void RegisterPreciseAction(ulong address, ulong size, PreciseRegionSignal action) => _impl.RegisterPreciseAction(address, size, action); + public void SignalWrite() => _impl.SignalWrite(); + } +} |