UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ConversionHelpers.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
3
#pragma once
4
5
#include "
HAL/Platform.h
"
6
7
#include "
AudioMixer.h
"
8
#include "
Windows/AllowWindowsPlatformTypes.h
"
9
10
THIRD_PARTY_INCLUDES_START
11
#include <mmdeviceapi.h>
// IMMNotificationClient
12
#include <audiopolicy.h>
// IAudioSessionEvents
13
THIRD_PARTY_INCLUDES_END
14
15
#include "
Windows/HideWindowsPlatformTypes.h
"
16
17
namespace
Audio
18
{
19
static
inline
EAudioDeviceState
ConvertWordToDeviceState(DWORD
InWord
)
20
{
21
switch
(
InWord
)
22
{
23
case
DEVICE_STATE_ACTIVE
:
return
Audio::EAudioDeviceState::Active
;
24
case
DEVICE_STATE_DISABLED
:
return
Audio::EAudioDeviceState::Disabled
;
25
case
DEVICE_STATE_UNPLUGGED
:
return
Audio::EAudioDeviceState::Unplugged
;
26
case
DEVICE_STATE_NOTPRESENT
:
return
Audio::EAudioDeviceState::NotPresent
;
27
default
:
28
break
;
29
}
30
checkNoEntry
();
31
return
Audio::EAudioDeviceState::NotPresent
;
32
}
33
34
static
inline
IAudioMixerDeviceChangedListener::EDisconnectReason
AudioSessionDisconnectToEDisconnectReason(
AudioSessionDisconnectReason
InDisconnectReason
)
35
{
36
using namespace
Audio
;
37
switch
(
InDisconnectReason
)
38
{
39
case
DisconnectReasonDeviceRemoval
:
return
IAudioMixerDeviceChangedListener::EDisconnectReason::DeviceRemoval
;
40
case
DisconnectReasonServerShutdown
:
return
IAudioMixerDeviceChangedListener::EDisconnectReason::ServerShutdown
;
41
case
DisconnectReasonFormatChanged
:
return
IAudioMixerDeviceChangedListener::EDisconnectReason::FormatChanged
;
42
case
DisconnectReasonSessionLogoff
:
return
IAudioMixerDeviceChangedListener::EDisconnectReason::SessionLogoff
;
43
case
DisconnectReasonSessionDisconnected
:
return
IAudioMixerDeviceChangedListener::EDisconnectReason::SessionDisconnected
;
44
case
DisconnectReasonExclusiveModeOverride
:
return
IAudioMixerDeviceChangedListener::EDisconnectReason::ExclusiveModeOverride
;
45
default
:
break
;
46
}
47
48
checkNoEntry
();
49
return
IAudioMixerDeviceChangedListener::EDisconnectReason::DeviceRemoval
;
50
}
51
52
}
AllowWindowsPlatformTypes.h
checkNoEntry
#define checkNoEntry()
Definition
AssertionMacros.h:316
AudioMixer.h
Platform.h
StaticCastSharedRef
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition
SharedPointer.h:127
THIRD_PARTY_INCLUDES_START
#define THIRD_PARTY_INCLUDES_START
Definition
GenericPlatformCompilerPreSetup.h:63
HideWindowsPlatformTypes.h
Audio::IAudioMixerDeviceChangedListener::EDisconnectReason
EDisconnectReason
Definition
AudioMixer.h:427
Audio::IAudioMixerDeviceChangedListener::EDisconnectReason::ServerShutdown
@ ServerShutdown
Audio::IAudioMixerDeviceChangedListener::EDisconnectReason::ExclusiveModeOverride
@ ExclusiveModeOverride
Audio::IAudioMixerDeviceChangedListener::EDisconnectReason::DeviceRemoval
@ DeviceRemoval
Audio::IAudioMixerDeviceChangedListener::EDisconnectReason::SessionLogoff
@ SessionLogoff
Audio::IAudioMixerDeviceChangedListener::EDisconnectReason::SessionDisconnected
@ SessionDisconnected
Audio::IAudioMixerDeviceChangedListener::EDisconnectReason::FormatChanged
@ FormatChanged
Audio
NO_LOGGING.
Definition
AudioMixerPlatformAndroid.cpp:53
Audio::EAudioDeviceState
EAudioDeviceState
Definition
AudioMixer.h:340
Audio::EAudioDeviceState::Unplugged
@ Unplugged
Audio::EAudioDeviceState::NotPresent
@ NotPresent
Audio::EAudioDeviceState::Active
@ Active
Audio::EAudioDeviceState::Disabled
@ Disabled
THIRD_PARTY_INCLUDES_END
Definition
Voronoi.cpp:10
Engine
Source
Runtime
AudioDeviceEnumeration
Windows
WindowsMMDeviceEnumeration
Private
ConversionHelpers.h
Generated by
1.9.8