diff options
Diffstat (limited to 'Ryujinx.Audio/Renderer/Server/Effect/CaptureBufferEffect.cs')
| -rw-r--r-- | Ryujinx.Audio/Renderer/Server/Effect/CaptureBufferEffect.cs | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/Ryujinx.Audio/Renderer/Server/Effect/CaptureBufferEffect.cs b/Ryujinx.Audio/Renderer/Server/Effect/CaptureBufferEffect.cs deleted file mode 100644 index c445798d..00000000 --- a/Ryujinx.Audio/Renderer/Server/Effect/CaptureBufferEffect.cs +++ /dev/null @@ -1,82 +0,0 @@ -using Ryujinx.Audio.Renderer.Common; -using Ryujinx.Audio.Renderer.Dsp.State; -using Ryujinx.Audio.Renderer.Parameter; -using Ryujinx.Audio.Renderer.Parameter.Effect; -using Ryujinx.Audio.Renderer.Server.MemoryPool; -using System.Diagnostics; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; -using DspAddress = System.UInt64; - -namespace Ryujinx.Audio.Renderer.Server.Effect -{ - /// <summary> - /// Server state for an capture buffer effect. - /// </summary> - public class CaptureBufferEffect : BaseEffect - { - /// <summary> - /// The capture buffer parameter. - /// </summary> - public AuxiliaryBufferParameter Parameter; - - /// <summary> - /// Capture buffer state. - /// </summary> - public AuxiliaryBufferAddresses State; - - public override EffectType TargetEffectType => EffectType.CaptureBuffer; - - public override DspAddress GetWorkBuffer(int index) - { - return WorkBuffers[index].GetReference(true); - } - - public override void Update(out BehaviourParameter.ErrorInfo updateErrorInfo, ref EffectInParameterVersion1 parameter, PoolMapper mapper) - { - Update(out updateErrorInfo, ref parameter, mapper); - } - - public override void Update(out BehaviourParameter.ErrorInfo updateErrorInfo, ref EffectInParameterVersion2 parameter, PoolMapper mapper) - { - Update(out updateErrorInfo, ref parameter, mapper); - } - - public void Update<T>(out BehaviourParameter.ErrorInfo updateErrorInfo, ref T parameter, PoolMapper mapper) where T : unmanaged, IEffectInParameter - { - Debug.Assert(IsTypeValid(ref parameter)); - - UpdateParameterBase(ref parameter); - - Parameter = MemoryMarshal.Cast<byte, AuxiliaryBufferParameter>(parameter.SpecificData)[0]; - IsEnabled = parameter.IsEnabled; - - updateErrorInfo = new BehaviourParameter.ErrorInfo(); - - if (BufferUnmapped || parameter.IsNew) - { - ulong bufferSize = (ulong)Unsafe.SizeOf<int>() * Parameter.BufferStorageSize + (ulong)Unsafe.SizeOf<AuxiliaryBufferHeader>(); - - bool sendBufferUnmapped = !mapper.TryAttachBuffer(out updateErrorInfo, ref WorkBuffers[0], Parameter.SendBufferInfoAddress, bufferSize); - - BufferUnmapped = sendBufferUnmapped; - - if (!BufferUnmapped) - { - DspAddress sendDspAddress = WorkBuffers[0].GetReference(false); - - // NOTE: Nintendo directly interact with the CPU side structure in the processing of the DSP command. - State.SendBufferInfo = sendDspAddress; - State.SendBufferInfoBase = sendDspAddress + (ulong)Unsafe.SizeOf<AuxiliaryBufferHeader>(); - State.ReturnBufferInfo = 0; - State.ReturnBufferInfoBase = 0; - } - } - } - - public override void UpdateForCommandGeneration() - { - UpdateUsageStateForCommandGeneration(); - } - } -}
\ No newline at end of file |
