using System;
using System.Runtime.InteropServices;
namespace Susurrus.XAudio2
{
///
/// The XAUDIO2_BUFFER that hands a source voice a run of samples to play.
///
// xaudio2.h packs every struct to one byte, so the trailing pointer isn't aligned on x64.
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct XAudio2Buffer
{
public const uint EndOfStream = 0x0040;
///
/// The loop count that repeats until the voice is stopped.
///
public const uint LoopInfinite = 255;
public uint Flags;
public uint AudioBytes;
public IntPtr AudioData;
public uint PlayBegin;
public uint PlayLength;
public uint LoopBegin;
public uint LoopLength;
public uint LoopCount;
public IntPtr Context;
}
}