From 7b8ea9767f141069925216f25db938d357fb19e6 Mon Sep 17 00:00:00 2001 From: Susko3 Date: Sat, 6 Apr 2024 13:42:10 +0200 Subject: [PATCH] Manually implement endianness-specific audio formats --- SDL3-CS/SDL3/ClangSharp/SDL_audio.g.cs | 9 --------- SDL3-CS/SDL3/SDL_audio.cs | 12 ++++++++++++ 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/SDL3-CS/SDL3/ClangSharp/SDL_audio.g.cs b/SDL3-CS/SDL3/ClangSharp/SDL_audio.g.cs index 1a6699b..1be047b 100644 --- a/SDL3-CS/SDL3/ClangSharp/SDL_audio.g.cs +++ b/SDL3-CS/SDL3/ClangSharp/SDL_audio.g.cs @@ -205,15 +205,6 @@ namespace SDL [NativeTypeName("#define SDL_AUDIO_F32BE 0x9120")] public const int SDL_AUDIO_F32BE = 0x9120; - [NativeTypeName("#define SDL_AUDIO_S16 SDL_AUDIO_S16LE")] - public const int SDL_AUDIO_S16 = 0x8010; - - [NativeTypeName("#define SDL_AUDIO_S32 SDL_AUDIO_S32LE")] - public const int SDL_AUDIO_S32 = 0x8020; - - [NativeTypeName("#define SDL_AUDIO_F32 SDL_AUDIO_F32LE")] - public const int SDL_AUDIO_F32 = 0x8120; - [NativeTypeName("#define SDL_AUDIO_DEVICE_DEFAULT_OUTPUT ((SDL_AudioDeviceID) 0xFFFFFFFF)")] public const SDL_AudioDeviceID SDL_AUDIO_DEVICE_DEFAULT_OUTPUT = ((SDL_AudioDeviceID)(0xFFFFFFFF)); diff --git a/SDL3-CS/SDL3/SDL_audio.cs b/SDL3-CS/SDL3/SDL_audio.cs index 31248f0..777cc84 100644 --- a/SDL3-CS/SDL3/SDL_audio.cs +++ b/SDL3-CS/SDL3/SDL_audio.cs @@ -20,4 +20,16 @@ namespace SDL SDL_AUDIO_F32LE = SDL3.SDL_AUDIO_F32LE, SDL_AUDIO_F32BE = SDL3.SDL_AUDIO_F32BE, } + + public static partial class SDL3 + { + [Constant] + public static readonly SDL_AudioFormat SDL_AUDIO_S16 = BitConverter.IsLittleEndian ? SDL_AudioFormat.SDL_AUDIO_S16LE : SDL_AudioFormat.SDL_AUDIO_S16BE; + + [Constant] + public static readonly SDL_AudioFormat SDL_AUDIO_S32 = BitConverter.IsLittleEndian ? SDL_AudioFormat.SDL_AUDIO_S32LE : SDL_AudioFormat.SDL_AUDIO_S32BE; + + [Constant] + public static readonly SDL_AudioFormat SDL_AUDIO_F32 = BitConverter.IsLittleEndian ? SDL_AudioFormat.SDL_AUDIO_F32LE : SDL_AudioFormat.SDL_AUDIO_F32BE; + } }