mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-14 17:45:09 +00:00
winepulse: Move AudioClient's QueryInterface into mmdevapi.
This commit is contained in:
parent
71500094c4
commit
ab33114c69
|
@ -406,6 +406,31 @@ const IAudioCaptureClientVtbl AudioCaptureClient_Vtbl =
|
||||||
capture_GetNextPacketSize
|
capture_GetNextPacketSize
|
||||||
};
|
};
|
||||||
|
|
||||||
|
HRESULT WINAPI client_QueryInterface(IAudioClient3 *iface, REFIID riid, void **ppv)
|
||||||
|
{
|
||||||
|
TRACE("(%p)->(%s, %p)\n", iface, debugstr_guid(riid), ppv);
|
||||||
|
|
||||||
|
if (!ppv)
|
||||||
|
return E_POINTER;
|
||||||
|
|
||||||
|
if (IsEqualIID(riid, &IID_IUnknown) ||
|
||||||
|
IsEqualIID(riid, &IID_IAudioClient) ||
|
||||||
|
IsEqualIID(riid, &IID_IAudioClient2) ||
|
||||||
|
IsEqualIID(riid, &IID_IAudioClient3))
|
||||||
|
*ppv = iface;
|
||||||
|
else if(IsEqualIID(riid, &IID_IMarshal)) {
|
||||||
|
struct audio_client *This = impl_from_IAudioClient3(iface);
|
||||||
|
return IUnknown_QueryInterface(This->marshal, riid, ppv);
|
||||||
|
} else {
|
||||||
|
*ppv = NULL;
|
||||||
|
return E_NOINTERFACE;
|
||||||
|
}
|
||||||
|
|
||||||
|
IUnknown_AddRef((IUnknown *)*ppv);
|
||||||
|
|
||||||
|
return S_OK;
|
||||||
|
}
|
||||||
|
|
||||||
ULONG WINAPI client_AddRef(IAudioClient3 *iface)
|
ULONG WINAPI client_AddRef(IAudioClient3 *iface)
|
||||||
{
|
{
|
||||||
struct audio_client *This = impl_from_IAudioClient3(iface);
|
struct audio_client *This = impl_from_IAudioClient3(iface);
|
||||||
|
|
|
@ -377,33 +377,8 @@ HRESULT WINAPI AUDDRV_GetAudioEndpoint(GUID *guid, IMMDevice *dev, IAudioClient
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT WINAPI AudioClient_QueryInterface(IAudioClient3 *iface,
|
extern HRESULT WINAPI client_QueryInterface(IAudioClient3 *iface,
|
||||||
REFIID riid, void **ppv)
|
REFIID riid, void **ppv);
|
||||||
{
|
|
||||||
ACImpl *This = impl_from_IAudioClient3(iface);
|
|
||||||
|
|
||||||
TRACE("(%p)->(%s, %p)\n", iface, debugstr_guid(riid), ppv);
|
|
||||||
|
|
||||||
if (!ppv)
|
|
||||||
return E_POINTER;
|
|
||||||
|
|
||||||
*ppv = NULL;
|
|
||||||
if (IsEqualIID(riid, &IID_IUnknown) ||
|
|
||||||
IsEqualIID(riid, &IID_IAudioClient) ||
|
|
||||||
IsEqualIID(riid, &IID_IAudioClient2) ||
|
|
||||||
IsEqualIID(riid, &IID_IAudioClient3))
|
|
||||||
*ppv = iface;
|
|
||||||
if (*ppv) {
|
|
||||||
IUnknown_AddRef((IUnknown*)*ppv);
|
|
||||||
return S_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (IsEqualIID(riid, &IID_IMarshal))
|
|
||||||
return IUnknown_QueryInterface(This->marshal, riid, ppv);
|
|
||||||
|
|
||||||
WARN("Unknown interface %s\n", debugstr_guid(riid));
|
|
||||||
return E_NOINTERFACE;
|
|
||||||
}
|
|
||||||
|
|
||||||
extern ULONG WINAPI client_AddRef(IAudioClient3 *iface);
|
extern ULONG WINAPI client_AddRef(IAudioClient3 *iface);
|
||||||
|
|
||||||
|
@ -547,7 +522,7 @@ extern HRESULT WINAPI client_InitializeSharedAudioStream(IAudioClient3 *iface,
|
||||||
|
|
||||||
static const IAudioClient3Vtbl AudioClient3_Vtbl =
|
static const IAudioClient3Vtbl AudioClient3_Vtbl =
|
||||||
{
|
{
|
||||||
AudioClient_QueryInterface,
|
client_QueryInterface,
|
||||||
client_AddRef,
|
client_AddRef,
|
||||||
client_Release,
|
client_Release,
|
||||||
client_Initialize,
|
client_Initialize,
|
||||||
|
|
Loading…
Reference in a new issue