Spaces:
Runtime error
Runtime error
/* this ALWAYS GENERATED file contains the definitions for the interfaces */ | |
/* File created by MIDL compiler version 7.00.0499 */ | |
/* Compiler settings for mmdeviceapi.idl: | |
Oicf, W1, Zp8, env=Win32 (32b run) | |
protocol : dce , ms_ext, c_ext, robust | |
error checks: allocation ref bounds_check enum stub_data | |
VC __declspec() decoration level: | |
__declspec(uuid()), __declspec(selectany), __declspec(novtable) | |
DECLSPEC_UUID(), MIDL_INTERFACE() | |
*/ | |
//@@MIDL_FILE_HEADING( ) | |
/* verify that the <rpcndr.h> version is high enough to compile this file*/ | |
/* verify that the <rpcsal.h> version is high enough to compile this file*/ | |
/* Forward Declarations */ | |
typedef interface IMMNotificationClient IMMNotificationClient; | |
typedef interface IMMDevice IMMDevice; | |
typedef interface IMMDeviceCollection IMMDeviceCollection; | |
typedef interface IMMEndpoint IMMEndpoint; | |
typedef interface IMMDeviceEnumerator IMMDeviceEnumerator; | |
typedef interface IMMDeviceActivator IMMDeviceActivator; | |
typedef class MMDeviceEnumerator MMDeviceEnumerator; | |
typedef struct MMDeviceEnumerator MMDeviceEnumerator; | |
/* header files for imported files */ | |
extern "C"{ | |
/* interface __MIDL_itf_mmdeviceapi_0000_0000 */ | |
/* [local] */ | |
DEFINE_PROPERTYKEY(PKEY_AudioEndpoint_FormFactor, 0x1da5d803, 0xd492, 0x4edd, 0x8c, 0x23, 0xe0, 0xc0, 0xff, 0xee, 0x7f, 0x0e, 0); | |
DEFINE_PROPERTYKEY(PKEY_AudioEndpoint_ControlPanelPageProvider, 0x1da5d803, 0xd492, 0x4edd, 0x8c, 0x23, 0xe0, 0xc0, 0xff, 0xee, 0x7f, 0x0e, 1); | |
DEFINE_PROPERTYKEY(PKEY_AudioEndpoint_Association, 0x1da5d803, 0xd492, 0x4edd, 0x8c, 0x23, 0xe0, 0xc0, 0xff, 0xee, 0x7f, 0x0e, 2); | |
DEFINE_PROPERTYKEY(PKEY_AudioEndpoint_PhysicalSpeakers, 0x1da5d803, 0xd492, 0x4edd, 0x8c, 0x23, 0xe0, 0xc0, 0xff, 0xee, 0x7f, 0x0e, 3); | |
DEFINE_PROPERTYKEY(PKEY_AudioEndpoint_GUID, 0x1da5d803, 0xd492, 0x4edd, 0x8c, 0x23, 0xe0, 0xc0, 0xff, 0xee, 0x7f, 0x0e, 4); | |
DEFINE_PROPERTYKEY(PKEY_AudioEndpoint_Disable_SysFx, 0x1da5d803, 0xd492, 0x4edd, 0x8c, 0x23, 0xe0, 0xc0, 0xff, 0xee, 0x7f, 0x0e, 5); | |
DEFINE_PROPERTYKEY(PKEY_AudioEndpoint_FullRangeSpeakers, 0x1da5d803, 0xd492, 0x4edd, 0x8c, 0x23, 0xe0, 0xc0, 0xff, 0xee, 0x7f, 0x0e, 6); | |
DEFINE_PROPERTYKEY(PKEY_AudioEngine_DeviceFormat, 0xf19f064d, 0x82c, 0x4e27, 0xbc, 0x73, 0x68, 0x82, 0xa1, 0xbb, 0x8e, 0x4c, 0); | |
typedef struct tagDIRECTX_AUDIO_ACTIVATION_PARAMS | |
{ | |
DWORD cbDirectXAudioActivationParams; | |
GUID guidAudioSession; | |
DWORD dwAudioStreamFlags; | |
} DIRECTX_AUDIO_ACTIVATION_PARAMS; | |
typedef struct tagDIRECTX_AUDIO_ACTIVATION_PARAMS *PDIRECTX_AUDIO_ACTIVATION_PARAMS; | |
typedef /* [public][public][public][public][public] */ | |
enum __MIDL___MIDL_itf_mmdeviceapi_0000_0000_0001 | |
{ eRender = 0, | |
eCapture = ( eRender + 1 ) , | |
eAll = ( eCapture + 1 ) , | |
EDataFlow_enum_count = ( eAll + 1 ) | |
} EDataFlow; | |
typedef /* [public][public][public] */ | |
enum __MIDL___MIDL_itf_mmdeviceapi_0000_0000_0002 | |
{ eConsole = 0, | |
eMultimedia = ( eConsole + 1 ) , | |
eCommunications = ( eMultimedia + 1 ) , | |
ERole_enum_count = ( eCommunications + 1 ) | |
} ERole; | |
typedef /* [public] */ | |
enum __MIDL___MIDL_itf_mmdeviceapi_0000_0000_0003 | |
{ RemoteNetworkDevice = 0, | |
Speakers = ( RemoteNetworkDevice + 1 ) , | |
LineLevel = ( Speakers + 1 ) , | |
Headphones = ( LineLevel + 1 ) , | |
Microphone = ( Headphones + 1 ) , | |
Headset = ( Microphone + 1 ) , | |
Handset = ( Headset + 1 ) , | |
UnknownDigitalPassthrough = ( Handset + 1 ) , | |
SPDIF = ( UnknownDigitalPassthrough + 1 ) , | |
HDMI = ( SPDIF + 1 ) , | |
UnknownFormFactor = ( HDMI + 1 ) | |
} EndpointFormFactor; | |
extern RPC_IF_HANDLE __MIDL_itf_mmdeviceapi_0000_0000_v0_0_c_ifspec; | |
extern RPC_IF_HANDLE __MIDL_itf_mmdeviceapi_0000_0000_v0_0_s_ifspec; | |
/* interface IMMNotificationClient */ | |
/* [unique][helpstring][nonextensible][uuid][local][object] */ | |
EXTERN_C const IID IID_IMMNotificationClient; | |
MIDL_INTERFACE("7991EEC9-7E89-4D85-8390-6C703CEC60C0") | |
IMMNotificationClient : public IUnknown | |
{ | |
public: | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OnDeviceStateChanged( | |
/* [in] */ | |
__in LPCWSTR pwstrDeviceId, | |
/* [in] */ | |
__in DWORD dwNewState) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OnDeviceAdded( | |
/* [in] */ | |
__in LPCWSTR pwstrDeviceId) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OnDeviceRemoved( | |
/* [in] */ | |
__in LPCWSTR pwstrDeviceId) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OnDefaultDeviceChanged( | |
/* [in] */ | |
__in EDataFlow flow, | |
/* [in] */ | |
__in ERole role, | |
/* [in] */ | |
__in LPCWSTR pwstrDefaultDeviceId) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OnPropertyValueChanged( | |
/* [in] */ | |
__in LPCWSTR pwstrDeviceId, | |
/* [in] */ | |
__in const PROPERTYKEY key) = 0; | |
}; | |
typedef struct IMMNotificationClientVtbl | |
{ | |
BEGIN_INTERFACE | |
HRESULT ( STDMETHODCALLTYPE *QueryInterface )( | |
IMMNotificationClient * This, | |
/* [in] */ REFIID riid, | |
/* [iid_is][out] */ | |
__RPC__deref_out void **ppvObject); | |
ULONG ( STDMETHODCALLTYPE *AddRef )( | |
IMMNotificationClient * This); | |
ULONG ( STDMETHODCALLTYPE *Release )( | |
IMMNotificationClient * This); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OnDeviceStateChanged )( | |
IMMNotificationClient * This, | |
/* [in] */ | |
__in LPCWSTR pwstrDeviceId, | |
/* [in] */ | |
__in DWORD dwNewState); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OnDeviceAdded )( | |
IMMNotificationClient * This, | |
/* [in] */ | |
__in LPCWSTR pwstrDeviceId); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OnDeviceRemoved )( | |
IMMNotificationClient * This, | |
/* [in] */ | |
__in LPCWSTR pwstrDeviceId); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OnDefaultDeviceChanged )( | |
IMMNotificationClient * This, | |
/* [in] */ | |
__in EDataFlow flow, | |
/* [in] */ | |
__in ERole role, | |
/* [in] */ | |
__in LPCWSTR pwstrDefaultDeviceId); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OnPropertyValueChanged )( | |
IMMNotificationClient * This, | |
/* [in] */ | |
__in LPCWSTR pwstrDeviceId, | |
/* [in] */ | |
__in const PROPERTYKEY key); | |
END_INTERFACE | |
} IMMNotificationClientVtbl; | |
interface IMMNotificationClient | |
{ | |
CONST_VTBL struct IMMNotificationClientVtbl *lpVtbl; | |
}; | |
/* interface IMMDevice */ | |
/* [unique][helpstring][nonextensible][uuid][local][object] */ | |
EXTERN_C const IID IID_IMMDevice; | |
MIDL_INTERFACE("D666063F-1587-4E43-81F1-B948E807363F") | |
IMMDevice : public IUnknown | |
{ | |
public: | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Activate( | |
/* [in] */ | |
__in REFIID iid, | |
/* [in] */ | |
__in DWORD dwClsCtx, | |
/* [unique][in] */ | |
__in_opt PROPVARIANT *pActivationParams, | |
/* [iid_is][out] */ | |
__out void **ppInterface) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OpenPropertyStore( | |
/* [in] */ | |
__in DWORD stgmAccess, | |
/* [out] */ | |
__out IPropertyStore **ppProperties) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetId( | |
/* [out] */ | |
__deref_out LPWSTR *ppstrId) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetState( | |
/* [out] */ | |
__out DWORD *pdwState) = 0; | |
}; | |
typedef struct IMMDeviceVtbl | |
{ | |
BEGIN_INTERFACE | |
HRESULT ( STDMETHODCALLTYPE *QueryInterface )( | |
IMMDevice * This, | |
/* [in] */ REFIID riid, | |
/* [iid_is][out] */ | |
__RPC__deref_out void **ppvObject); | |
ULONG ( STDMETHODCALLTYPE *AddRef )( | |
IMMDevice * This); | |
ULONG ( STDMETHODCALLTYPE *Release )( | |
IMMDevice * This); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Activate )( | |
IMMDevice * This, | |
/* [in] */ | |
__in REFIID iid, | |
/* [in] */ | |
__in DWORD dwClsCtx, | |
/* [unique][in] */ | |
__in_opt PROPVARIANT *pActivationParams, | |
/* [iid_is][out] */ | |
__out void **ppInterface); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OpenPropertyStore )( | |
IMMDevice * This, | |
/* [in] */ | |
__in DWORD stgmAccess, | |
/* [out] */ | |
__out IPropertyStore **ppProperties); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetId )( | |
IMMDevice * This, | |
/* [out] */ | |
__deref_out LPWSTR *ppstrId); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetState )( | |
IMMDevice * This, | |
/* [out] */ | |
__out DWORD *pdwState); | |
END_INTERFACE | |
} IMMDeviceVtbl; | |
interface IMMDevice | |
{ | |
CONST_VTBL struct IMMDeviceVtbl *lpVtbl; | |
}; | |
/* interface IMMDeviceCollection */ | |
/* [unique][helpstring][nonextensible][uuid][local][object] */ | |
EXTERN_C const IID IID_IMMDeviceCollection; | |
MIDL_INTERFACE("0BD7A1BE-7A1A-44DB-8397-CC5392387B5E") | |
IMMDeviceCollection : public IUnknown | |
{ | |
public: | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCount( | |
/* [out] */ | |
__out UINT *pcDevices) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Item( | |
/* [in] */ | |
__in UINT nDevice, | |
/* [out] */ | |
__out IMMDevice **ppDevice) = 0; | |
}; | |
typedef struct IMMDeviceCollectionVtbl | |
{ | |
BEGIN_INTERFACE | |
HRESULT ( STDMETHODCALLTYPE *QueryInterface )( | |
IMMDeviceCollection * This, | |
/* [in] */ REFIID riid, | |
/* [iid_is][out] */ | |
__RPC__deref_out void **ppvObject); | |
ULONG ( STDMETHODCALLTYPE *AddRef )( | |
IMMDeviceCollection * This); | |
ULONG ( STDMETHODCALLTYPE *Release )( | |
IMMDeviceCollection * This); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCount )( | |
IMMDeviceCollection * This, | |
/* [out] */ | |
__out UINT *pcDevices); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Item )( | |
IMMDeviceCollection * This, | |
/* [in] */ | |
__in UINT nDevice, | |
/* [out] */ | |
__out IMMDevice **ppDevice); | |
END_INTERFACE | |
} IMMDeviceCollectionVtbl; | |
interface IMMDeviceCollection | |
{ | |
CONST_VTBL struct IMMDeviceCollectionVtbl *lpVtbl; | |
}; | |
/* interface IMMEndpoint */ | |
/* [unique][helpstring][nonextensible][uuid][local][object] */ | |
EXTERN_C const IID IID_IMMEndpoint; | |
MIDL_INTERFACE("1BE09788-6894-4089-8586-9A2A6C265AC5") | |
IMMEndpoint : public IUnknown | |
{ | |
public: | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDataFlow( | |
/* [out] */ | |
__out EDataFlow *pDataFlow) = 0; | |
}; | |
typedef struct IMMEndpointVtbl | |
{ | |
BEGIN_INTERFACE | |
HRESULT ( STDMETHODCALLTYPE *QueryInterface )( | |
IMMEndpoint * This, | |
/* [in] */ REFIID riid, | |
/* [iid_is][out] */ | |
__RPC__deref_out void **ppvObject); | |
ULONG ( STDMETHODCALLTYPE *AddRef )( | |
IMMEndpoint * This); | |
ULONG ( STDMETHODCALLTYPE *Release )( | |
IMMEndpoint * This); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDataFlow )( | |
IMMEndpoint * This, | |
/* [out] */ | |
__out EDataFlow *pDataFlow); | |
END_INTERFACE | |
} IMMEndpointVtbl; | |
interface IMMEndpoint | |
{ | |
CONST_VTBL struct IMMEndpointVtbl *lpVtbl; | |
}; | |
/* interface IMMDeviceEnumerator */ | |
/* [unique][helpstring][nonextensible][uuid][local][object] */ | |
EXTERN_C const IID IID_IMMDeviceEnumerator; | |
MIDL_INTERFACE("A95664D2-9614-4F35-A746-DE8DB63617E6") | |
IMMDeviceEnumerator : public IUnknown | |
{ | |
public: | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EnumAudioEndpoints( | |
/* [in] */ | |
__in EDataFlow dataFlow, | |
/* [in] */ | |
__in DWORD dwStateMask, | |
/* [out] */ | |
__out IMMDeviceCollection **ppDevices) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDefaultAudioEndpoint( | |
/* [in] */ | |
__in EDataFlow dataFlow, | |
/* [in] */ | |
__in ERole role, | |
/* [out] */ | |
__out IMMDevice **ppEndpoint) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDevice( | |
/* */ | |
__in LPCWSTR pwstrId, | |
/* [out] */ | |
__out IMMDevice **ppDevice) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RegisterEndpointNotificationCallback( | |
/* [in] */ | |
__in IMMNotificationClient *pClient) = 0; | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnregisterEndpointNotificationCallback( | |
/* [in] */ | |
__in IMMNotificationClient *pClient) = 0; | |
}; | |
typedef struct IMMDeviceEnumeratorVtbl | |
{ | |
BEGIN_INTERFACE | |
HRESULT ( STDMETHODCALLTYPE *QueryInterface )( | |
IMMDeviceEnumerator * This, | |
/* [in] */ REFIID riid, | |
/* [iid_is][out] */ | |
__RPC__deref_out void **ppvObject); | |
ULONG ( STDMETHODCALLTYPE *AddRef )( | |
IMMDeviceEnumerator * This); | |
ULONG ( STDMETHODCALLTYPE *Release )( | |
IMMDeviceEnumerator * This); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EnumAudioEndpoints )( | |
IMMDeviceEnumerator * This, | |
/* [in] */ | |
__in EDataFlow dataFlow, | |
/* [in] */ | |
__in DWORD dwStateMask, | |
/* [out] */ | |
__out IMMDeviceCollection **ppDevices); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDefaultAudioEndpoint )( | |
IMMDeviceEnumerator * This, | |
/* [in] */ | |
__in EDataFlow dataFlow, | |
/* [in] */ | |
__in ERole role, | |
/* [out] */ | |
__out IMMDevice **ppEndpoint); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDevice )( | |
IMMDeviceEnumerator * This, | |
/* */ | |
__in LPCWSTR pwstrId, | |
/* [out] */ | |
__out IMMDevice **ppDevice); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RegisterEndpointNotificationCallback )( | |
IMMDeviceEnumerator * This, | |
/* [in] */ | |
__in IMMNotificationClient *pClient); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnregisterEndpointNotificationCallback )( | |
IMMDeviceEnumerator * This, | |
/* [in] */ | |
__in IMMNotificationClient *pClient); | |
END_INTERFACE | |
} IMMDeviceEnumeratorVtbl; | |
interface IMMDeviceEnumerator | |
{ | |
CONST_VTBL struct IMMDeviceEnumeratorVtbl *lpVtbl; | |
}; | |
/* interface IMMDeviceActivator */ | |
/* [unique][helpstring][nonextensible][uuid][local][object] */ | |
EXTERN_C const IID IID_IMMDeviceActivator; | |
MIDL_INTERFACE("3B0D0EA4-D0A9-4B0E-935B-09516746FAC0") | |
IMMDeviceActivator : public IUnknown | |
{ | |
public: | |
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Activate( | |
/* [in] */ | |
__in REFIID iid, | |
/* [in] */ | |
__in IMMDevice *pDevice, | |
/* [in] */ | |
__in_opt PROPVARIANT *pActivationParams, | |
/* [iid_is][out] */ | |
__out void **ppInterface) = 0; | |
}; | |
typedef struct IMMDeviceActivatorVtbl | |
{ | |
BEGIN_INTERFACE | |
HRESULT ( STDMETHODCALLTYPE *QueryInterface )( | |
IMMDeviceActivator * This, | |
/* [in] */ REFIID riid, | |
/* [iid_is][out] */ | |
__RPC__deref_out void **ppvObject); | |
ULONG ( STDMETHODCALLTYPE *AddRef )( | |
IMMDeviceActivator * This); | |
ULONG ( STDMETHODCALLTYPE *Release )( | |
IMMDeviceActivator * This); | |
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Activate )( | |
IMMDeviceActivator * This, | |
/* [in] */ | |
__in REFIID iid, | |
/* [in] */ | |
__in IMMDevice *pDevice, | |
/* [in] */ | |
__in_opt PROPVARIANT *pActivationParams, | |
/* [iid_is][out] */ | |
__out void **ppInterface); | |
END_INTERFACE | |
} IMMDeviceActivatorVtbl; | |
interface IMMDeviceActivator | |
{ | |
CONST_VTBL struct IMMDeviceActivatorVtbl *lpVtbl; | |
}; | |
/* interface __MIDL_itf_mmdeviceapi_0000_0006 */ | |
/* [local] */ | |
typedef /* [public] */ struct __MIDL___MIDL_itf_mmdeviceapi_0000_0006_0001 | |
{ | |
LPARAM AddPageParam; | |
IMMDevice *pEndpoint; | |
IMMDevice *pPnpInterface; | |
IMMDevice *pPnpDevnode; | |
} AudioExtensionParams; | |
extern RPC_IF_HANDLE __MIDL_itf_mmdeviceapi_0000_0006_v0_0_c_ifspec; | |
extern RPC_IF_HANDLE __MIDL_itf_mmdeviceapi_0000_0006_v0_0_s_ifspec; | |
/* library MMDeviceAPILib */ | |
/* [helpstring][version][uuid] */ | |
EXTERN_C const IID LIBID_MMDeviceAPILib; | |
EXTERN_C const CLSID CLSID_MMDeviceEnumerator; | |
class DECLSPEC_UUID("BCDE0395-E52F-467C-8E3D-C4579291692E") | |
MMDeviceEnumerator; | |
/* Additional Prototypes for ALL interfaces */ | |
/* end of Additional Prototypes */ | |
} | |