29 lines
769 B
C#
29 lines
769 B
C#
|
using Ryujinx.Graphics.Gpu.Memory;
|
|||
|
using System;
|
|||
|
|
|||
|
namespace Ryujinx.Graphics.Nvdec
|
|||
|
{
|
|||
|
static class MemoryExtensions
|
|||
|
{
|
|||
|
public static T DeviceRead<T>(this MemoryManager gmm, uint offset) where T : unmanaged
|
|||
|
{
|
|||
|
return gmm.Read<T>((ulong)offset << 8);
|
|||
|
}
|
|||
|
|
|||
|
public static ReadOnlySpan<byte> DeviceGetSpan(this MemoryManager gmm, uint offset, int size)
|
|||
|
{
|
|||
|
return gmm.GetSpan((ulong)offset << 8, size);
|
|||
|
}
|
|||
|
|
|||
|
public static void DeviceWrite(this MemoryManager gmm, uint offset, ReadOnlySpan<byte> data)
|
|||
|
{
|
|||
|
gmm.Write((ulong)offset << 8, data);
|
|||
|
}
|
|||
|
|
|||
|
public static ulong ExtendOffset(uint offset)
|
|||
|
{
|
|||
|
return (ulong)offset << 8;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|