forked from Mirror/Ryujinx
1825bd87b4
This is the first commit of a series of reformat around the codebase as discussed internally some weeks ago. This project being one that isn't touched that much, it shouldn't cause conflict with any opened PRs.
63 lines
No EOL
1.9 KiB
C#
63 lines
No EOL
1.9 KiB
C#
using System;
|
|
|
|
namespace Ryujinx.Audio.Renderer.Server.Upsampler
|
|
{
|
|
/// <summary>
|
|
/// Server state for a upsampling.
|
|
/// </summary>
|
|
public class UpsamplerState
|
|
{
|
|
/// <summary>
|
|
/// The output buffer containing the target samples.
|
|
/// </summary>
|
|
public Memory<float> OutputBuffer { get; }
|
|
|
|
/// <summary>
|
|
/// The target sample count.
|
|
/// </summary>
|
|
public uint SampleCount { get; }
|
|
|
|
/// <summary>
|
|
/// The index of the <see cref="UpsamplerState"/>. (used to free it)
|
|
/// </summary>
|
|
private int _index;
|
|
|
|
/// <summary>
|
|
/// The <see cref="UpsamplerManager"/>.
|
|
/// </summary>
|
|
private UpsamplerManager _manager;
|
|
|
|
/// <summary>
|
|
/// The source sample count.
|
|
/// </summary>
|
|
public uint SourceSampleCount;
|
|
|
|
/// <summary>
|
|
/// The input buffer indices of the buffers holding the samples that need upsampling.
|
|
/// </summary>
|
|
public ushort[] InputBufferIndices;
|
|
|
|
/// <summary>
|
|
/// Create a new <see cref="UpsamplerState"/>.
|
|
/// </summary>
|
|
/// <param name="manager">The upsampler manager.</param>
|
|
/// <param name="index">The index of the <see cref="UpsamplerState"/>. (used to free it)</param>
|
|
/// <param name="outputBuffer">The output buffer used to contain the target samples.</param>
|
|
/// <param name="sampleCount">The target sample count.</param>
|
|
public UpsamplerState(UpsamplerManager manager, int index, Memory<float> outputBuffer, uint sampleCount)
|
|
{
|
|
_manager = manager;
|
|
_index = index;
|
|
OutputBuffer = outputBuffer;
|
|
SampleCount = sampleCount;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Release the <see cref="UpsamplerState"/>.
|
|
/// </summary>
|
|
public void Release()
|
|
{
|
|
_manager.Free(_index);
|
|
}
|
|
}
|
|
} |