diff options
Diffstat (limited to 'src/Ryujinx.Graphics.Vulkan/Queries')
-rw-r--r-- | src/Ryujinx.Graphics.Vulkan/Queries/BufferedQuery.cs | 18 | ||||
-rw-r--r-- | src/Ryujinx.Graphics.Vulkan/Queries/CounterQueue.cs | 18 | ||||
-rw-r--r-- | src/Ryujinx.Graphics.Vulkan/Queries/CounterQueueEvent.cs | 6 |
3 files changed, 20 insertions, 22 deletions
diff --git a/src/Ryujinx.Graphics.Vulkan/Queries/BufferedQuery.cs b/src/Ryujinx.Graphics.Vulkan/Queries/BufferedQuery.cs index 861155a3..8d4fdc19 100644 --- a/src/Ryujinx.Graphics.Vulkan/Queries/BufferedQuery.cs +++ b/src/Ryujinx.Graphics.Vulkan/Queries/BufferedQuery.cs @@ -23,10 +23,10 @@ namespace Ryujinx.Graphics.Vulkan.Queries private readonly BufferHolder _buffer; private readonly IntPtr _bufferMap; private readonly CounterType _type; - private bool _result32Bit; - private bool _isSupported; + private readonly bool _result32Bit; + private readonly bool _isSupported; - private long _defaultValue; + private readonly long _defaultValue; private int? _resetSequence; public unsafe BufferedQuery(VulkanRenderer gd, Device device, PipelineFull pipeline, CounterType type, bool result32Bit) @@ -44,12 +44,12 @@ namespace Ryujinx.Graphics.Vulkan.Queries QueryPipelineStatisticFlags flags = type == CounterType.PrimitivesGenerated ? QueryPipelineStatisticFlags.GeometryShaderPrimitivesBit : 0; - var queryPoolCreateInfo = new QueryPoolCreateInfo() + var queryPoolCreateInfo = new QueryPoolCreateInfo { SType = StructureType.QueryPoolCreateInfo, QueryCount = 1, QueryType = GetQueryType(type), - PipelineStatistics = flags + PipelineStatistics = flags, }; gd.Api.CreateQueryPool(device, queryPoolCreateInfo, null, out _queryPool).ThrowOnError(); @@ -63,14 +63,14 @@ namespace Ryujinx.Graphics.Vulkan.Queries _buffer = buffer; } - private bool QueryTypeSupported(VulkanRenderer gd, CounterType type) + private static bool QueryTypeSupported(VulkanRenderer gd, CounterType type) { return type switch { CounterType.SamplesPassed => true, CounterType.PrimitivesGenerated => gd.Capabilities.SupportsPipelineStatisticsQuery, CounterType.TransformFeedbackPrimitivesWritten => gd.Capabilities.SupportsTransformFeedbackQueries, - _ => false + _ => false, }; } @@ -81,7 +81,7 @@ namespace Ryujinx.Graphics.Vulkan.Queries CounterType.SamplesPassed => QueryType.Occlusion, CounterType.PrimitivesGenerated => QueryType.PipelineStatistics, CounterType.TransformFeedbackPrimitivesWritten => QueryType.TransformFeedbackStreamExt, - _ => QueryType.Occlusion + _ => QueryType.Occlusion, }; } @@ -107,7 +107,7 @@ namespace Ryujinx.Graphics.Vulkan.Queries _resetSequence = null; } - public unsafe void End(bool withResult) + public void End(bool withResult) { if (_isSupported) { diff --git a/src/Ryujinx.Graphics.Vulkan/Queries/CounterQueue.cs b/src/Ryujinx.Graphics.Vulkan/Queries/CounterQueue.cs index 2fdddaea..724588d5 100644 --- a/src/Ryujinx.Graphics.Vulkan/Queries/CounterQueue.cs +++ b/src/Ryujinx.Graphics.Vulkan/Queries/CounterQueue.cs @@ -18,7 +18,7 @@ namespace Ryujinx.Graphics.Vulkan.Queries public CounterType Type { get; } public bool Disposed { get; private set; } - private Queue<CounterQueueEvent> _events = new Queue<CounterQueueEvent>(); + private readonly Queue<CounterQueueEvent> _events = new(); private CounterQueueEvent _current; private ulong _accumulatedCounter; @@ -26,12 +26,12 @@ namespace Ryujinx.Graphics.Vulkan.Queries private readonly object _lock = new(); - private Queue<BufferedQuery> _queryPool; - private AutoResetEvent _queuedEvent = new AutoResetEvent(false); - private AutoResetEvent _wakeSignal = new AutoResetEvent(false); - private AutoResetEvent _eventConsumed = new AutoResetEvent(false); + private readonly Queue<BufferedQuery> _queryPool; + private readonly AutoResetEvent _queuedEvent = new(false); + private readonly AutoResetEvent _wakeSignal = new(false); + private readonly AutoResetEvent _eventConsumed = new(false); - private Thread _consumerThread; + private readonly Thread _consumerThread; public int ResetSequence { get; private set; } @@ -116,10 +116,8 @@ namespace Ryujinx.Graphics.Vulkan.Queries BufferedQuery result = _queryPool.Dequeue(); return result; } - else - { - return new BufferedQuery(_gd, _device, _pipeline, Type, _gd.IsAmdWindows); - } + + return new BufferedQuery(_gd, _device, _pipeline, Type, _gd.IsAmdWindows); } } diff --git a/src/Ryujinx.Graphics.Vulkan/Queries/CounterQueueEvent.cs b/src/Ryujinx.Graphics.Vulkan/Queries/CounterQueueEvent.cs index 9d0a674b..77d9a355 100644 --- a/src/Ryujinx.Graphics.Vulkan/Queries/CounterQueueEvent.cs +++ b/src/Ryujinx.Graphics.Vulkan/Queries/CounterQueueEvent.cs @@ -16,10 +16,10 @@ namespace Ryujinx.Graphics.Vulkan.Queries public ulong DrawIndex { get; } - private CounterQueue _queue; - private BufferedQuery _counter; + private readonly CounterQueue _queue; + private readonly BufferedQuery _counter; - private bool _hostAccessReserved = false; + private bool _hostAccessReserved; private int _refCount = 1; // Starts with a reference from the counter queue. private readonly object _lock = new(); |