diff options
Diffstat (limited to 'src/Ryujinx.Audio/Renderer/Parameter/SplitterInParameter.cs')
| -rw-r--r-- | src/Ryujinx.Audio/Renderer/Parameter/SplitterInParameter.cs | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/Ryujinx.Audio/Renderer/Parameter/SplitterInParameter.cs b/src/Ryujinx.Audio/Renderer/Parameter/SplitterInParameter.cs new file mode 100644 index 00000000..0220497d --- /dev/null +++ b/src/Ryujinx.Audio/Renderer/Parameter/SplitterInParameter.cs @@ -0,0 +1,46 @@ +using System.Runtime.InteropServices; + +namespace Ryujinx.Audio.Renderer.Parameter +{ + /// <summary> + /// Input header for a splitter state update. + /// </summary> + [StructLayout(LayoutKind.Sequential, Pack = 1)] + public struct SplitterInParameter + { + /// <summary> + /// Magic of the input header. + /// </summary> + public uint Magic; + + /// <summary> + /// Target splitter id. + /// </summary> + public int Id; + + /// <summary> + /// Target sample rate to use on the splitter. + /// </summary> + public uint SampleRate; + + /// <summary> + /// Count of splitter destinations. + /// </summary> + /// <remarks>Splitter destination ids are defined right after this header.</remarks> + public int DestinationCount; + + /// <summary> + /// The expected constant of any input header. + /// </summary> + private const uint ValidMagic = 0x49444E53; + + /// <summary> + /// Check if the magic is valid. + /// </summary> + /// <returns>Returns true if the magic is valid.</returns> + public bool IsMagicValid() + { + return Magic == ValidMagic; + } + } +}
\ No newline at end of file |
