[PATCH 1/3] xaudio2: Explicitly version the 2.7 coclasses
Andrew Eikum
aeikum at codeweavers.com
Mon Jan 11 13:52:02 CST 2016
In versions 2.8 and later, no coclasses are provided by the API, so we
should version the old ones to make it clear they're out of date.
Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
---
dlls/xaudio2_7/tests/xaudio2.c | 10 +++++-----
dlls/xaudio2_7/xapofx.c | 4 ++--
dlls/xaudio2_7/xaudio_classes.idl | 2 +-
dlls/xaudio2_7/xaudio_dll.c | 40 +++++++++++++++++++--------------------
dlls/xaudio2_8/xaudio_dll.c | 6 +++---
include/xapofx.h | 8 ++++----
include/xaudio2.idl | 14 +++++++-------
include/xaudio2fx.idl | 18 +++++++++---------
8 files changed, 51 insertions(+), 51 deletions(-)
diff --git a/dlls/xaudio2_7/tests/xaudio2.c b/dlls/xaudio2_7/tests/xaudio2.c
index c7ae982..9a7b011 100644
--- a/dlls/xaudio2_7/tests/xaudio2.c
+++ b/dlls/xaudio2_7/tests/xaudio2.c
@@ -249,7 +249,7 @@ static void test_simple_streaming(IXAudio2 *xa)
if(xaudio27){
IXAPO *xapo;
- hr = CoCreateInstance(&CLSID_AudioVolumeMeter, NULL,
+ hr = CoCreateInstance(&CLSID_AudioVolumeMeter27, NULL,
CLSCTX_INPROC_SERVER, &IID_IUnknown, (void**)&vumeter);
ok(hr == S_OK, "CoCreateInstance(AudioVolumeMeter) failed: %08x\n", hr);
@@ -834,7 +834,7 @@ static void test_xapo_creation_legacy(const char *module, unsigned int version)
&CLSID_AudioVolumeMeter24,
&CLSID_AudioVolumeMeter25,
&CLSID_AudioVolumeMeter26,
- &CLSID_AudioVolumeMeter
+ &CLSID_AudioVolumeMeter27
};
static const GUID *ar_clsids[] = {
@@ -845,7 +845,7 @@ static void test_xapo_creation_legacy(const char *module, unsigned int version)
&CLSID_AudioReverb24,
&CLSID_AudioReverb25,
&CLSID_AudioReverb26,
- &CLSID_AudioReverb
+ &CLSID_AudioReverb27
};
xapofxdll = LoadLibraryA(module);
@@ -973,7 +973,7 @@ static void test_xapo_creation_modern(const char *module)
}
/* test legacy CLSID */
- hr = pCreateFX(&CLSID_AudioVolumeMeter, &fx_unk, NULL, 0);
+ hr = pCreateFX(&CLSID_AudioVolumeMeter27, &fx_unk, NULL, 0);
ok(hr == S_OK, "%s: CreateFX(CLSID_AudioVolumeMeter) failed: %08x\n", module, hr);
if(SUCCEEDED(hr)){
IXAPO *xapo;
@@ -1060,7 +1060,7 @@ START_TEST(xaudio2)
test_xapo_creation();
/* XAudio 2.7 (Jun 2010 DirectX) */
- hr = CoCreateInstance(&CLSID_XAudio2, NULL, CLSCTX_INPROC_SERVER,
+ hr = CoCreateInstance(&CLSID_XAudio27, NULL, CLSCTX_INPROC_SERVER,
&IID_IXAudio27, (void**)&xa27);
if(hr == S_OK){
xaudio27 = TRUE;
diff --git a/dlls/xaudio2_7/xapofx.c b/dlls/xaudio2_7/xapofx.c
index e4e4bf8..f71d2f0 100644
--- a/dlls/xaudio2_7/xapofx.c
+++ b/dlls/xaudio2_7/xapofx.c
@@ -699,7 +699,7 @@ static HRESULT WINAPI xapocf_CreateInstance(IClassFactory *iface, IUnknown *pOut
if(pOuter)
return CLASS_E_NOAGGREGATION;
- if(IsEqualGUID(This->class, &CLSID_AudioVolumeMeter)){
+ if(IsEqualGUID(This->class, &CLSID_AudioVolumeMeter27)){
VUMeterImpl *object;
object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));
@@ -715,7 +715,7 @@ static HRESULT WINAPI xapocf_CreateInstance(IClassFactory *iface, IUnknown *pOut
HeapFree(GetProcessHeap(), 0, object);
return hr;
}
- }else if(IsEqualGUID(This->class, &CLSID_AudioReverb)){
+ }else if(IsEqualGUID(This->class, &CLSID_AudioReverb27)){
ReverbImpl *object;
object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));
diff --git a/dlls/xaudio2_7/xaudio_classes.idl b/dlls/xaudio2_7/xaudio_classes.idl
index a8ee9bf..2055a26 100644
--- a/dlls/xaudio2_7/xaudio_classes.idl
+++ b/dlls/xaudio2_7/xaudio_classes.idl
@@ -25,7 +25,7 @@
threading(both),
uuid(5a508685-a254-4fba-9b82-9a24b00306af)
]
-coclass XAudio2 { interface IXAudio2; }
+coclass XAudio27 { interface IXAudio27; }
[
helpstring("XAudio2 Volume Meter Class"),
diff --git a/dlls/xaudio2_7/xaudio_dll.c b/dlls/xaudio2_7/xaudio_dll.c
index 5f30432..103641d 100644
--- a/dlls/xaudio2_7/xaudio_dll.c
+++ b/dlls/xaudio2_7/xaudio_dll.c
@@ -2024,58 +2024,58 @@ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, void **ppv)
factory = make_xaudio2_factory(25);
}else if(IsEqualGUID(rclsid, &CLSID_XAudio26)){
factory = make_xaudio2_factory(26);
- }else if(IsEqualGUID(rclsid, &CLSID_XAudio2)){
+ }else if(IsEqualGUID(rclsid, &CLSID_XAudio27)){
factory = make_xaudio2_factory(27);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter20)){
- factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 20);
+ factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 20);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter21)){
- factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 21);
+ factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 21);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter22)){
- factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 22);
+ factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 22);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter23)){
- factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 23);
+ factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 23);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter24)){
- factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 24);
+ factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 24);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter25)){
- factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 25);
+ factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 25);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter26)){
- factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 26);
- }else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter)){
- factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 27);
+ factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 26);
+ }else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter27)){
+ factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 27);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb20)){
- factory = make_xapo_factory(&CLSID_AudioReverb, 20);
+ factory = make_xapo_factory(&CLSID_AudioReverb27, 20);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb21) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb10)){
- factory = make_xapo_factory(&CLSID_AudioReverb, 21);
+ factory = make_xapo_factory(&CLSID_AudioReverb27, 21);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb22) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb11)){
- factory = make_xapo_factory(&CLSID_AudioReverb, 22);
+ factory = make_xapo_factory(&CLSID_AudioReverb27, 22);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb23) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb12)){
- factory = make_xapo_factory(&CLSID_AudioReverb, 23);
+ factory = make_xapo_factory(&CLSID_AudioReverb27, 23);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb24) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb13)){
- factory = make_xapo_factory(&CLSID_AudioReverb, 24);
+ factory = make_xapo_factory(&CLSID_AudioReverb27, 24);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb25)){
- factory = make_xapo_factory(&CLSID_AudioReverb, 25);
+ factory = make_xapo_factory(&CLSID_AudioReverb27, 25);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb26) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb14)){
- factory = make_xapo_factory(&CLSID_AudioReverb, 26);
+ factory = make_xapo_factory(&CLSID_AudioReverb27, 26);
- }else if(IsEqualGUID(rclsid, &CLSID_AudioReverb) ||
+ }else if(IsEqualGUID(rclsid, &CLSID_AudioReverb27) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb15)){
- factory = make_xapo_factory(&CLSID_AudioReverb, 27);
+ factory = make_xapo_factory(&CLSID_AudioReverb27, 27);
}else if(IsEqualGUID(rclsid, &CLSID_WINE_FXReverb28)){
- factory = make_xapo_factory(&CLSID_AudioReverb, 28);
+ factory = make_xapo_factory(&CLSID_AudioReverb27, 28);
}else if(IsEqualGUID(rclsid, &CLSID_WINE_FXEQ10)){
diff --git a/dlls/xaudio2_8/xaudio_dll.c b/dlls/xaudio2_8/xaudio_dll.c
index b381324..8d7b06f 100644
--- a/dlls/xaudio2_8/xaudio_dll.c
+++ b/dlls/xaudio2_8/xaudio_dll.c
@@ -54,7 +54,7 @@ HRESULT WINAPI XAudio2Create(IXAudio2 **ppxa2, UINT32 flags, XAUDIO2_PROCESSOR p
IXAudio27 *xa27;
/* create XAudio2 2.8 instance */
- hr = CoCreateInstance(&CLSID_XAudio2, NULL, CLSCTX_INPROC_SERVER,
+ hr = CoCreateInstance(&CLSID_XAudio27, NULL, CLSCTX_INPROC_SERVER,
&IID_IXAudio2, (void**)&xa2);
if(FAILED(hr))
return hr;
@@ -81,13 +81,13 @@ HRESULT WINAPI XAudio2Create(IXAudio2 **ppxa2, UINT32 flags, XAUDIO2_PROCESSOR p
HRESULT WINAPI CreateAudioVolumeMeter(IUnknown **out)
{
- return CoCreateInstance(&CLSID_AudioVolumeMeter, NULL, CLSCTX_INPROC_SERVER,
+ return CoCreateInstance(&CLSID_AudioVolumeMeter27, NULL, CLSCTX_INPROC_SERVER,
&IID_IUnknown, (void**)out);
}
HRESULT WINAPI CreateAudioReverb(IUnknown **out)
{
- return CoCreateInstance(&CLSID_AudioReverb, NULL, CLSCTX_INPROC_SERVER,
+ return CoCreateInstance(&CLSID_AudioReverb27, NULL, CLSCTX_INPROC_SERVER,
&IID_IUnknown, (void**)out);
}
diff --git a/include/xapofx.h b/include/xapofx.h
index 9a51689..86d909d 100644
--- a/include/xapofx.h
+++ b/include/xapofx.h
@@ -23,7 +23,7 @@
/* xapofx 1.0 through 1.5 */
DEFINE_GUID(CLSID_FXEQ27, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0x55, 0x00, 0x00, 0x00, 0x00);
-/* xaudio 2.8 */
+/* xaudio >= 2.8 */
DEFINE_GUID(CLSID_FXEQ, 0xf5e01117, 0xd6c4, 0x485a, 0xa3, 0xf5, 0x69, 0x51, 0x96, 0xf3, 0xdb, 0xfa);
/* wine internal */
DEFINE_GUID(CLSID_WINE_FXEQ10, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xFF, 0x00, 0x00, 0x01, 0x00);
@@ -36,7 +36,7 @@ DEFINE_GUID(CLSID_WINE_FXEQ28, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xF
/* xapofx 1.0 through 1.5 */
DEFINE_GUID(CLSID_FXMasteringLimiter27, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0x55, 0x00, 0x00, 0x00, 0x01);
-/* xaudio 2.8 */
+/* xaudio >= 2.8 */
DEFINE_GUID(CLSID_FXMasteringLimiter, 0xc4137916, 0x2be1, 0x46fd, 0x85, 0x99, 0x44, 0x15, 0x36, 0xf4, 0x98, 0x56);
/* wine internal */
DEFINE_GUID(CLSID_WINE_FXMasteringLimiter10, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xFF, 0x01, 0x00, 0x01, 0x00);
@@ -49,7 +49,7 @@ DEFINE_GUID(CLSID_WINE_FXMasteringLimiter28, 0xa90bc001, 0xe897, 0xe897, 0x74, 0
/* xapofx 1.0 through 1.5 */
DEFINE_GUID(CLSID_FXReverb27, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0x55, 0x00, 0x00, 0x00, 0x02);
-/* xaudio 2.8 */
+/* xaudio >= 2.8 */
DEFINE_GUID(CLSID_FXReverb, 0x7d9aca56, 0xcb68, 0x4807, 0xb6, 0x32, 0xb1, 0x37, 0x35, 0x2e, 0x85, 0x96);
/* wine internal */
DEFINE_GUID(CLSID_WINE_FXReverb10, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xFF, 0x02, 0x00, 0x01, 0x00);
@@ -62,7 +62,7 @@ DEFINE_GUID(CLSID_WINE_FXReverb28, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43,
/* xapofx 1.0 through 1.5 */
DEFINE_GUID(CLSID_FXEcho27, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0x55, 0x00, 0x00, 0x00, 0x03);
-/* xaudio 2.8 */
+/* xaudio >= 2.8 */
DEFINE_GUID(CLSID_FXEcho, 0x5039d740, 0xf736, 0x449a, 0x84, 0xd3, 0xa5, 0x62, 0x02, 0x55, 0x7b, 0x87);
/* wine internal */
DEFINE_GUID(CLSID_WINE_FXEcho10, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xFF, 0x03, 0x00, 0x01, 0x00);
diff --git a/include/xaudio2.idl b/include/xaudio2.idl
index 84bd456..58cbe0a 100644
--- a/include/xaudio2.idl
+++ b/include/xaudio2.idl
@@ -24,13 +24,6 @@ import "audiosessiontypes.h";
cpp_quote("#include <pshpack1.h>")
[
- uuid(5a508685-a254-4fba-9b82-9a24b00306af)
-]
-coclass XAudio2 {
- interface IUnknown;
-}
-
-[
uuid(fac23f48-31f5-45a8-b49b-5225d61401aa)
]
coclass XAudio20 {
@@ -80,6 +73,13 @@ coclass XAudio26 {
}
[
+ uuid(5a508685-a254-4fba-9b82-9a24b00306af)
+]
+coclass XAudio27 {
+ interface IUnknown;
+}
+
+[
uuid(db05ea35-0329-4d4b-a53a-6dead03d3852)
]
coclass XAudio2Debug {
diff --git a/include/xaudio2fx.idl b/include/xaudio2fx.idl
index ad58232..224c660 100644
--- a/include/xaudio2fx.idl
+++ b/include/xaudio2fx.idl
@@ -19,13 +19,6 @@
import "unknwn.idl";
[
- uuid(cac1105f-619b-4d04-831a-44e1cbf12d57)
-]
-coclass AudioVolumeMeter {
- interface IUnknown;
-}
-
-[
uuid(c0c56f46-29b1-44e9-9939-a32ce86867e2)
]
coclass AudioVolumeMeter20 {
@@ -75,9 +68,9 @@ coclass AudioVolumeMeter26 {
}
[
- uuid(6a93130e-1d53-41d1-a9cf-e758800bb179)
+ uuid(cac1105f-619b-4d04-831a-44e1cbf12d57)
]
-coclass AudioReverb {
+coclass AudioVolumeMeter27 {
interface IUnknown;
}
@@ -129,3 +122,10 @@ coclass AudioReverb25 {
coclass AudioReverb26 {
interface IUnknown;
}
+
+[
+ uuid(6a93130e-1d53-41d1-a9cf-e758800bb179)
+]
+coclass AudioReverb27 {
+ interface IUnknown;
+}
--
2.7.0
More information about the wine-patches
mailing list