aboutsummaryrefslogtreecommitdiffstats
path: root/alc/events.h
diff options
context:
space:
mode:
authorMathiusD <[email protected]>2023-11-26 03:33:00 +0100
committerGitHub <[email protected]>2023-11-26 02:33:00 +0000
commitc03603b58d4cf6a25d36bca00305970bc9f163b4 (patch)
tree5f6f2944daf11a43779e8a483c749b190d11fc55 /alc/events.h
parent1f6d19fd4a4fec15da4181a40ed443174bb95384 (diff)
Add query fonction in ALC_SOFT_system_events unreleased extension (#938)
* feat(ALC_SOFT_system_events): Add alcEventIsSupportedSOFT method in ALC_SOFT_system_events unreleased extension The purpose of this addition (to my collection) are allow to retrieve which events are supported and if events are fully supported or if some case isn't managed for some reason For exemple only some backends provide system events: * pipewire -> Full support of extension * wasapi -> Full support of extension * pulseaudio -> Support of add and remove devices events only * coreaudio -> Support of default device change only * feat(ALC_SOFT_system_events): Fix typo in alext.h Cf following review : https://github.com/kcat/openal-soft/pull/938#discussion_r1404509828 * feat(ALC_SOFT_system_events): Remove ALC_EVENT_NOT_SUPPORTED_SOFT token Cf following discussions between this comment : https://github.com/kcat/openal-soft/pull/938#issuecomment-1825876452 to this comment : https://github.com/kcat/openal-soft/pull/938#issuecomment-1826419406
Diffstat (limited to 'alc/events.h')
-rw-r--r--alc/events.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/alc/events.h b/alc/events.h
index 4acc505d..3f53ec76 100644
--- a/alc/events.h
+++ b/alc/events.h
@@ -6,6 +6,7 @@
#include <bitset>
#include <mutex>
+#include <optional>
#include <string_view>
@@ -19,6 +20,13 @@ enum class EventType : uint8_t {
Count
};
+std::optional<alc::EventType> GetEventType(ALCenum type);
+
+enum class EventSupport : ALCenum {
+ FullSupport = ALC_EVENT_SUPPORTED_SOFT,
+ NoSupport = ALC_EVENT_NOT_SUPPORTED_SOFT,
+};
+
enum class DeviceType : ALCenum {
Playback = ALC_PLAYBACK_DEVICE_SOFT,
Capture = ALC_CAPTURE_DEVICE_SOFT,