From cee712105850ac3385cd0091a923438167433f9f Mon Sep 17 00:00:00 2001 From: TSR Berry <20988865+TSRBerry@users.noreply.github.com> Date: Sat, 8 Apr 2023 01:22:00 +0200 Subject: Move solution and projects to src --- .../Renderer/Server/MemoryPool/MemoryPoolState.cs | 130 --------------------- 1 file changed, 130 deletions(-) delete mode 100644 Ryujinx.Audio/Renderer/Server/MemoryPool/MemoryPoolState.cs (limited to 'Ryujinx.Audio/Renderer/Server/MemoryPool/MemoryPoolState.cs') diff --git a/Ryujinx.Audio/Renderer/Server/MemoryPool/MemoryPoolState.cs b/Ryujinx.Audio/Renderer/Server/MemoryPool/MemoryPoolState.cs deleted file mode 100644 index 69466bab..00000000 --- a/Ryujinx.Audio/Renderer/Server/MemoryPool/MemoryPoolState.cs +++ /dev/null @@ -1,130 +0,0 @@ -using System; -using System.Runtime.InteropServices; -using CpuAddress = System.UInt64; -using DspAddress = System.UInt64; - -namespace Ryujinx.Audio.Renderer.Server.MemoryPool -{ - /// - /// Server state for a memory pool. - /// - [StructLayout(LayoutKind.Sequential, Size = 0x20, Pack = Alignment)] - public struct MemoryPoolState - { - public const int Alignment = 0x10; - - /// - /// The location of the . - /// - public enum LocationType : uint - { - /// - /// located on the CPU side for user use. - /// - Cpu, - - /// - /// located on the DSP side for system use. - /// - Dsp - } - - /// - /// The CPU address associated to the . - /// - public CpuAddress CpuAddress; - - /// - /// The DSP address associated to the . - /// - public DspAddress DspAddress; - - /// - /// The size associated to the . - /// - public ulong Size; - - /// - /// The associated to the . - /// - public LocationType Location; - - /// - /// Set to true if the is used. - /// - [MarshalAs(UnmanagedType.I1)] - public bool IsUsed; - - public static unsafe MemoryPoolState* Null => (MemoryPoolState*)IntPtr.Zero.ToPointer(); - - /// - /// Create a new with the given . - /// - /// The location type to use. - /// A new with the given . - public static MemoryPoolState Create(LocationType location) - { - return new MemoryPoolState - { - CpuAddress = 0, - DspAddress = 0, - Size = 0, - Location = location - }; - } - - /// - /// Set the and size of the . - /// - /// The . - /// The size. - public void SetCpuAddress(CpuAddress cpuAddress, ulong size) - { - CpuAddress = cpuAddress; - Size = size; - } - - /// - /// Check if the given and size is contains in the . - /// - /// The . - /// The size. - /// True if the is contained inside the . - public bool Contains(CpuAddress targetCpuAddress, ulong size) - { - if (CpuAddress <= targetCpuAddress && size + targetCpuAddress <= Size + CpuAddress) - { - return true; - } - - return false; - } - - /// - /// Translate the given CPU address to a DSP address. - /// - /// The . - /// The size. - /// the target DSP address. - public DspAddress Translate(CpuAddress targetCpuAddress, ulong size) - { - if (Contains(targetCpuAddress, size) && IsMapped()) - { - ulong offset = targetCpuAddress - CpuAddress; - - return DspAddress + offset; - } - - return 0; - } - - /// - /// Is the mapped on the DSP? - /// - /// Returns true if the is mapped on the DSP. - public bool IsMapped() - { - return DspAddress != 0; - } - } -} \ No newline at end of file -- cgit v1.2.3