xaudio2: Explicitly version the 2.7 coclasses.
authorAndrew Eikum <aeikum@codeweavers.com>
Mon, 11 Jan 2016 19:52:02 +0000 (13:52 -0600)
committerAlexandre Julliard <julliard@winehq.org>
Tue, 12 Jan 2016 07:05:02 +0000 (16:05 +0900)
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@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
dlls/xaudio2_7/tests/xaudio2.c
dlls/xaudio2_7/xapofx.c
dlls/xaudio2_7/xaudio_classes.idl
dlls/xaudio2_7/xaudio_dll.c
dlls/xaudio2_8/xaudio_dll.c
include/xapofx.h
include/xaudio2.idl
include/xaudio2fx.idl

index c7ae9828fd8bc5b6187dba95ac6a3afc96e255ec..9a7b0110e84ed7d866f99f44f3e3fbb6ec1c54aa 100644 (file)
@@ -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;
index e4e4bf88a7eacc8a2a75c77e2dffb1f4400868c5..f71d2f094d1bf64b77c625f79cb43d368e3c9cbc 100644 (file)
@@ -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));
index a8ee9bf72ce3d0b77284f743cc4651e789a34c55..2055a265709c1355b96ec838739faae7c4acbfcb 100644 (file)
@@ -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"),
index 5f304324af41b0a769bfc685716110eaf20e2294..103641de1a5a6c6f014b075f74939843a02e5143 100644 (file)
@@ -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)){
index b3813240acf7418d53449b085748df09ed47ce13..8d7b06fb6d0c6f20d7ce894962b43ec68ee21197 100644 (file)
@@ -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);
 }
 
index 9a51689a912e74d611778e4cb3978563f274b194..86d909df3249b09702cd9c22c8aa401baf56f04c 100644 (file)
@@ -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);
index 84bd4564aa48820e303d777f9a80cb30c518c9ac..58cbe0af344a2a6a973c7b880716d30a6b32ed8a 100644 (file)
@@ -23,13 +23,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)
 ]
@@ -79,6 +72,13 @@ coclass XAudio26 {
     interface IUnknown;
 }
 
+[
+    uuid(5a508685-a254-4fba-9b82-9a24b00306af)
+]
+coclass XAudio27 {
+    interface IUnknown;
+}
+
 [
     uuid(db05ea35-0329-4d4b-a53a-6dead03d3852)
 ]
index ad582321b921a0d118494da6ebc58372ccc318e4..224c660a610fcb836acd1336354db55af0d173e6 100644 (file)
 
 import "unknwn.idl";
 
-[
-    uuid(cac1105f-619b-4d04-831a-44e1cbf12d57)
-]
-coclass AudioVolumeMeter {
-    interface IUnknown;
-}
-
 [
     uuid(c0c56f46-29b1-44e9-9939-a32ce86867e2)
 ]
@@ -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;
+}