From 686b0c686a6321e2807809fc8bcbb374562e489f Mon Sep 17 00:00:00 2001 From: Isaac Marovitz Date: Fri, 21 Jun 2024 00:26:46 +0100 Subject: [PATCH] Housekeeping --- src/Ryujinx.Graphics.Metal/Auto.cs | 6 +++--- src/Ryujinx.Graphics.Metal/BackgroundResources.cs | 2 +- src/Ryujinx.Graphics.Metal/BufferHolder.cs | 2 +- src/Ryujinx.Graphics.Metal/BufferManager.cs | 4 ++-- src/Ryujinx.Graphics.Metal/CacheByRange.cs | 5 ++--- src/Ryujinx.Graphics.Metal/CommandBufferPool.cs | 7 ++----- src/Ryujinx.Graphics.Metal/CommandBufferScoped.cs | 2 +- src/Ryujinx.Graphics.Metal/EncoderState.cs | 4 ++-- src/Ryujinx.Graphics.Metal/HelperShader.cs | 2 +- src/Ryujinx.Graphics.Metal/MetalRenderer.cs | 3 +-- src/Ryujinx.Graphics.Metal/MultiFenceHolder.cs | 2 +- src/Ryujinx.Graphics.Metal/Pipeline.cs | 10 +++++----- src/Ryujinx.Graphics.Metal/StagingBuffer.cs | 4 ++-- 13 files changed, 24 insertions(+), 29 deletions(-) diff --git a/src/Ryujinx.Graphics.Metal/Auto.cs b/src/Ryujinx.Graphics.Metal/Auto.cs index 8793923a76..7e79ecbc37 100644 --- a/src/Ryujinx.Graphics.Metal/Auto.cs +++ b/src/Ryujinx.Graphics.Metal/Auto.cs @@ -5,7 +5,7 @@ using System.Threading; namespace Ryujinx.Graphics.Metal { - public interface IAuto + interface IAuto { bool HasCommandBufferDependency(CommandBufferScoped cbs); @@ -14,13 +14,13 @@ namespace Ryujinx.Graphics.Metal void DecrementReferenceCount(); } - public interface IAutoPrivate : IAuto + interface IAutoPrivate : IAuto { void AddCommandBufferDependencies(CommandBufferScoped cbs); } [SupportedOSPlatform("macos")] - public class Auto : IAutoPrivate, IDisposable where T : IDisposable + class Auto : IAutoPrivate, IDisposable where T : IDisposable { private int _referenceCount; private T _value; diff --git a/src/Ryujinx.Graphics.Metal/BackgroundResources.cs b/src/Ryujinx.Graphics.Metal/BackgroundResources.cs index 2f846392e4..f02fd72058 100644 --- a/src/Ryujinx.Graphics.Metal/BackgroundResources.cs +++ b/src/Ryujinx.Graphics.Metal/BackgroundResources.cs @@ -26,7 +26,7 @@ namespace Ryujinx.Graphics.Metal if (_pool == null) { MTLCommandQueue queue = _renderer.BackgroundQueue; - _pool = new CommandBufferPool(queue.Device, queue); + _pool = new CommandBufferPool(queue); } return _pool; diff --git a/src/Ryujinx.Graphics.Metal/BufferHolder.cs b/src/Ryujinx.Graphics.Metal/BufferHolder.cs index 075ac21fe4..af1d427441 100644 --- a/src/Ryujinx.Graphics.Metal/BufferHolder.cs +++ b/src/Ryujinx.Graphics.Metal/BufferHolder.cs @@ -8,7 +8,7 @@ using System.Threading; namespace Ryujinx.Graphics.Metal { [SupportedOSPlatform("macos")] - public class BufferHolder : IDisposable + class BufferHolder : IDisposable { private CacheByRange _cachedConvertedBuffers; diff --git a/src/Ryujinx.Graphics.Metal/BufferManager.cs b/src/Ryujinx.Graphics.Metal/BufferManager.cs index bf7f009013..766c1dea25 100644 --- a/src/Ryujinx.Graphics.Metal/BufferManager.cs +++ b/src/Ryujinx.Graphics.Metal/BufferManager.cs @@ -8,7 +8,7 @@ using System.Runtime.Versioning; namespace Ryujinx.Graphics.Metal { - public readonly struct ScopedTemporaryBuffer : IDisposable + readonly struct ScopedTemporaryBuffer : IDisposable { private readonly BufferManager _bufferManager; private readonly bool _isReserved; @@ -39,7 +39,7 @@ namespace Ryujinx.Graphics.Metal } [SupportedOSPlatform("macos")] - public class BufferManager : IDisposable + class BufferManager : IDisposable { private readonly IdList _buffers; diff --git a/src/Ryujinx.Graphics.Metal/CacheByRange.cs b/src/Ryujinx.Graphics.Metal/CacheByRange.cs index d507dcaeb7..39255de396 100644 --- a/src/Ryujinx.Graphics.Metal/CacheByRange.cs +++ b/src/Ryujinx.Graphics.Metal/CacheByRange.cs @@ -1,11 +1,10 @@ -using SharpMetal.Metal; using System; using System.Collections.Generic; using System.Runtime.Versioning; namespace Ryujinx.Graphics.Metal { - public interface ICacheKey : IDisposable + interface ICacheKey : IDisposable { bool KeyEqual(ICacheKey other); } @@ -116,7 +115,7 @@ namespace Ryujinx.Graphics.Metal } [SupportedOSPlatform("macos")] - public readonly struct Dependency + readonly struct Dependency { private readonly BufferHolder _buffer; private readonly int _offset; diff --git a/src/Ryujinx.Graphics.Metal/CommandBufferPool.cs b/src/Ryujinx.Graphics.Metal/CommandBufferPool.cs index aa659775ad..925e4980b5 100644 --- a/src/Ryujinx.Graphics.Metal/CommandBufferPool.cs +++ b/src/Ryujinx.Graphics.Metal/CommandBufferPool.cs @@ -7,14 +7,12 @@ using System.Runtime.Versioning; namespace Ryujinx.Graphics.Metal { [SupportedOSPlatform("macos")] - public class CommandBufferPool : IDisposable + class CommandBufferPool : IDisposable { public const int MaxCommandBuffers = 16; private readonly int _totalCommandBuffers; private readonly int _totalCommandBuffersMask; - - private readonly MTLDevice _device; private readonly MTLCommandQueue _queue; [SupportedOSPlatform("macos")] @@ -45,9 +43,8 @@ namespace Ryujinx.Graphics.Metal private int _queuedCount; private int _inUseCount; - public CommandBufferPool(MTLDevice device, MTLCommandQueue queue) + public CommandBufferPool(MTLCommandQueue queue) { - _device = device; _queue = queue; _totalCommandBuffers = MaxCommandBuffers; diff --git a/src/Ryujinx.Graphics.Metal/CommandBufferScoped.cs b/src/Ryujinx.Graphics.Metal/CommandBufferScoped.cs index 48c4d3a1ee..43cea6fe9f 100644 --- a/src/Ryujinx.Graphics.Metal/CommandBufferScoped.cs +++ b/src/Ryujinx.Graphics.Metal/CommandBufferScoped.cs @@ -5,7 +5,7 @@ using System.Runtime.Versioning; namespace Ryujinx.Graphics.Metal { [SupportedOSPlatform("macos")] - public readonly struct CommandBufferScoped : IDisposable + readonly struct CommandBufferScoped : IDisposable { private readonly CommandBufferPool _pool; public MTLCommandBuffer CommandBuffer { get; } diff --git a/src/Ryujinx.Graphics.Metal/EncoderState.cs b/src/Ryujinx.Graphics.Metal/EncoderState.cs index f99f52aec8..72422c70d7 100644 --- a/src/Ryujinx.Graphics.Metal/EncoderState.cs +++ b/src/Ryujinx.Graphics.Metal/EncoderState.cs @@ -5,7 +5,7 @@ using System.Runtime.Versioning; namespace Ryujinx.Graphics.Metal { - public struct DirtyFlags + struct DirtyFlags { public bool RenderPipeline = false; public bool ComputePipeline = false; @@ -21,7 +21,7 @@ namespace Ryujinx.Graphics.Metal } } - public record struct BufferRef + record struct BufferRef { public Auto Buffer; public int Index; diff --git a/src/Ryujinx.Graphics.Metal/HelperShader.cs b/src/Ryujinx.Graphics.Metal/HelperShader.cs index 12cdeb47a8..dcb5a4f62e 100644 --- a/src/Ryujinx.Graphics.Metal/HelperShader.cs +++ b/src/Ryujinx.Graphics.Metal/HelperShader.cs @@ -10,7 +10,7 @@ using System.Runtime.Versioning; namespace Ryujinx.Graphics.Metal { [SupportedOSPlatform("macos")] - public class HelperShader : IDisposable + class HelperShader : IDisposable { private const int ConvertElementsPerWorkgroup = 32 * 100; // Work group size of 32 times 100 elements. private const string ShadersSourcePath = "/Ryujinx.Graphics.Metal/Shaders"; diff --git a/src/Ryujinx.Graphics.Metal/MetalRenderer.cs b/src/Ryujinx.Graphics.Metal/MetalRenderer.cs index 9dfdb8656f..c68da5a4ad 100644 --- a/src/Ryujinx.Graphics.Metal/MetalRenderer.cs +++ b/src/Ryujinx.Graphics.Metal/MetalRenderer.cs @@ -21,7 +21,6 @@ namespace Ryujinx.Graphics.Metal public event EventHandler ScreenCaptured; public bool PreferThreading => true; - public IPipeline Pipeline => _pipeline; public IWindow Window => _window; @@ -54,7 +53,7 @@ namespace Ryujinx.Graphics.Metal layer.Device = _device; layer.FramebufferOnly = false; - CommandBufferPool = new CommandBufferPool(_device, _queue); + CommandBufferPool = new CommandBufferPool(_queue); _window = new Window(this, layer); _pipeline = new Pipeline(_device, this); BufferManager = new BufferManager(_device, this, _pipeline); diff --git a/src/Ryujinx.Graphics.Metal/MultiFenceHolder.cs b/src/Ryujinx.Graphics.Metal/MultiFenceHolder.cs index 481580b8ee..cd5ad08ba1 100644 --- a/src/Ryujinx.Graphics.Metal/MultiFenceHolder.cs +++ b/src/Ryujinx.Graphics.Metal/MultiFenceHolder.cs @@ -8,7 +8,7 @@ namespace Ryujinx.Graphics.Metal /// Holder for multiple host GPU fences. /// [SupportedOSPlatform("macos")] - public class MultiFenceHolder + class MultiFenceHolder { private const int BufferUsageTrackingGranularity = 4096; diff --git a/src/Ryujinx.Graphics.Metal/Pipeline.cs b/src/Ryujinx.Graphics.Metal/Pipeline.cs index f13cb43dd2..648e8f0f29 100644 --- a/src/Ryujinx.Graphics.Metal/Pipeline.cs +++ b/src/Ryujinx.Graphics.Metal/Pipeline.cs @@ -41,7 +41,7 @@ namespace Ryujinx.Graphics.Metal CommandBuffer = (Cbs = _renderer.CommandBufferPool.Rent()).CommandBuffer; } - public void InitEncoderStateManager(BufferManager bufferManager) + internal void InitEncoderStateManager(BufferManager bufferManager) { _encoderStateManager = new EncoderStateManager(_device, bufferManager, this); } @@ -142,7 +142,7 @@ namespace Ryujinx.Graphics.Metal } } - public MTLRenderCommandEncoder BeginRenderPass() + private MTLRenderCommandEncoder BeginRenderPass() { EndCurrentPass(); @@ -154,7 +154,7 @@ namespace Ryujinx.Graphics.Metal return renderCommandEncoder; } - public MTLBlitCommandEncoder BeginBlitPass() + private MTLBlitCommandEncoder BeginBlitPass() { EndCurrentPass(); @@ -166,7 +166,7 @@ namespace Ryujinx.Graphics.Metal return blitCommandEncoder; } - public MTLComputeCommandEncoder BeginComputePass() + private MTLComputeCommandEncoder BeginComputePass() { EndCurrentPass(); @@ -536,7 +536,7 @@ namespace Ryujinx.Graphics.Metal _encoderStateManager.UpdateStorageBuffers(buffers); } - public void SetStorageBuffers(int first, ReadOnlySpan> buffers) + internal void SetStorageBuffers(int first, ReadOnlySpan> buffers) { _encoderStateManager.UpdateStorageBuffers(first, buffers); } diff --git a/src/Ryujinx.Graphics.Metal/StagingBuffer.cs b/src/Ryujinx.Graphics.Metal/StagingBuffer.cs index 81adcd1165..07450f6b0a 100644 --- a/src/Ryujinx.Graphics.Metal/StagingBuffer.cs +++ b/src/Ryujinx.Graphics.Metal/StagingBuffer.cs @@ -8,7 +8,7 @@ using System.Runtime.Versioning; namespace Ryujinx.Graphics.Metal { - public readonly struct StagingBufferReserved + readonly struct StagingBufferReserved { public readonly BufferHolder Buffer; public readonly int Offset; @@ -23,7 +23,7 @@ namespace Ryujinx.Graphics.Metal } [SupportedOSPlatform("macos")] - public class StagingBuffer : IDisposable + class StagingBuffer : IDisposable { private const int BufferSize = 32 * 1024 * 1024;