mirror of
https://github.com/ryujinx-mirror/ryujinx.git
synced 2024-10-02 16:50:20 -07:00

* Move support buffer update out of the backends * Fix render scale init and remove redundant state from SupportBufferUpdater * Stop passing texture scale to the backends * XML docs for SupportBufferUpdater
33 lines
1.2 KiB
C#
33 lines
1.2 KiB
C#
using Ryujinx.Graphics.GAL.Multithreading.Model;
|
|
using Ryujinx.Graphics.GAL.Multithreading.Resources;
|
|
using System;
|
|
|
|
namespace Ryujinx.Graphics.GAL.Multithreading.Commands.Renderer
|
|
{
|
|
struct ReportCounterCommand : IGALCommand, IGALCommand<ReportCounterCommand>
|
|
{
|
|
public readonly CommandType CommandType => CommandType.ReportCounter;
|
|
private TableRef<ThreadedCounterEvent> _event;
|
|
private CounterType _type;
|
|
private TableRef<EventHandler<ulong>> _resultHandler;
|
|
private float _divisor;
|
|
private bool _hostReserved;
|
|
|
|
public void Set(TableRef<ThreadedCounterEvent> evt, CounterType type, TableRef<EventHandler<ulong>> resultHandler, float divisor, bool hostReserved)
|
|
{
|
|
_event = evt;
|
|
_type = type;
|
|
_resultHandler = resultHandler;
|
|
_divisor = divisor;
|
|
_hostReserved = hostReserved;
|
|
}
|
|
|
|
public static void Run(ref ReportCounterCommand command, ThreadedRenderer threaded, IRenderer renderer)
|
|
{
|
|
ThreadedCounterEvent evt = command._event.Get(threaded);
|
|
|
|
evt.Create(renderer, command._type, command._resultHandler.Get(threaded), command._divisor, command._hostReserved);
|
|
}
|
|
}
|
|
}
|