Skip to content

Commit

Permalink
xaudio2_6: Forward to xaudio2_7.
Browse files Browse the repository at this point in the history
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
  • Loading branch information
aeikum authored and julliard committed Oct 5, 2015
1 parent c4f49ac commit 7d7b117
Show file tree
Hide file tree
Showing 8 changed files with 103 additions and 0 deletions.
2 changes: 2 additions & 0 deletions configure
Expand Up @@ -1377,6 +1377,7 @@ enable_xapofx1_5
enable_xaudio2_3
enable_xaudio2_4
enable_xaudio2_5
enable_xaudio2_6
enable_xaudio2_7
enable_xaudio2_8
enable_xinput1_1
Expand Down Expand Up @@ -17917,6 +17918,7 @@ wine_fn_config_dll xapofx1_5 enable_xapofx1_5
wine_fn_config_dll xaudio2_3 enable_xaudio2_3 clean
wine_fn_config_dll xaudio2_4 enable_xaudio2_4 clean
wine_fn_config_dll xaudio2_5 enable_xaudio2_5 clean
wine_fn_config_dll xaudio2_6 enable_xaudio2_6 clean
wine_fn_config_dll xaudio2_7 enable_xaudio2_7 clean
wine_fn_config_test dlls/xaudio2_7/tests xaudio2_7_test
wine_fn_config_dll xaudio2_8 enable_xaudio2_8
Expand Down
1 change: 1 addition & 0 deletions configure.ac
Expand Up @@ -3463,6 +3463,7 @@ WINE_CONFIG_DLL(xapofx1_5)
WINE_CONFIG_DLL(xaudio2_3,,[clean])
WINE_CONFIG_DLL(xaudio2_4,,[clean])
WINE_CONFIG_DLL(xaudio2_5,,[clean])
WINE_CONFIG_DLL(xaudio2_6,,[clean])
WINE_CONFIG_DLL(xaudio2_7,,[clean])
WINE_CONFIG_TEST(dlls/xaudio2_7/tests)
WINE_CONFIG_DLL(xaudio2_8)
Expand Down
7 changes: 7 additions & 0 deletions dlls/xaudio2_6/Makefile.in
@@ -0,0 +1,7 @@
MODULE = xaudio2_6.dll
IMPORTS = ole32

C_SRCS = \
xaudio_dll.c

IDL_SRCS = xaudio_classes.idl
4 changes: 4 additions & 0 deletions dlls/xaudio2_6/xaudio2_6.spec
@@ -0,0 +1,4 @@
@ stdcall -private DllCanUnloadNow()
@ stdcall -private DllGetClassObject(ptr ptr ptr) xaudio2_7.DllGetClassObject
@ stdcall -private DllRegisterServer()
@ stdcall -private DllUnregisterServer()
28 changes: 28 additions & 0 deletions dlls/xaudio2_6/xaudio_classes.idl
@@ -0,0 +1,28 @@
/*
* COM Classes for xaudio
*
* Copyright 2015 Andrew Eikum for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/

#pragma makedep register

[
helpstring("XAudio2.6 Class"),
threading(both),
uuid(3eda9b49-2085-498b-9bb2-39a6778493de)
]
coclass XAudio26 { interface IXAudio27; }
52 changes: 52 additions & 0 deletions dlls/xaudio2_6/xaudio_dll.c
@@ -0,0 +1,52 @@
/*
* Copyright (c) 2015 Andrew Eikum for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/

#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "objbase.h"
#include "rpcproxy.h"

static HINSTANCE instance;

BOOL WINAPI DllMain(HINSTANCE hinstance, DWORD reason, LPVOID reserved)
{
switch (reason)
{
case DLL_PROCESS_ATTACH:
instance = hinstance;
DisableThreadLibraryCalls(hinstance);
break;
}
return TRUE;
}

HRESULT WINAPI DllCanUnloadNow(void)
{
return S_FALSE;
}

HRESULT WINAPI DllRegisterServer(void)
{
return __wine_register_resources(instance);
}

HRESULT WINAPI DllUnregisterServer(void)
{
return __wine_unregister_resources(instance);
}
2 changes: 2 additions & 0 deletions dlls/xaudio2_7/xaudio_dll.c
Expand Up @@ -2466,6 +2466,8 @@ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, void **ppv)
factory = make_xaudio2_factory(24);
}else if(IsEqualGUID(rclsid, &CLSID_XAudio25)){
factory = make_xaudio2_factory(25);
}else if(IsEqualGUID(rclsid, &CLSID_XAudio26)){
factory = make_xaudio2_factory(26);
}else if(IsEqualGUID(rclsid, &CLSID_XAudio2)){
factory = make_xaudio2_factory(27);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter)) {
Expand Down
7 changes: 7 additions & 0 deletions include/xaudio2.idl
Expand Up @@ -51,6 +51,13 @@ coclass XAudio25 {
interface IUnknown;
}

[
uuid(3eda9b49-2085-498b-9bb2-39a6778493de)
]
coclass XAudio26 {
interface IUnknown;
}

[
uuid(db05ea35-0329-4d4b-a53a-6dead03d3852)
]
Expand Down

0 comments on commit 7d7b117

Please sign in to comment.