Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com --- include/xact3.h | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-)
diff --git a/include/xact3.h b/include/xact3.h index 80059c124a5..2b4f0e07f3c 100644 --- a/include/xact3.h +++ b/include/xact3.h @@ -30,11 +30,34 @@ extern "C" { #endif
-DEFINE_GUID(CLSID_XACTEngine, 0xbcc782bc, 0x6492, 0x4c22, 0x8c, 0x35, 0xf5, 0xd7, 0x2f, 0xe7, 0x3c, 0x6e); +#if XACT3_VER == 0x0300 + DEFINE_GUID(CLSID_XACTEngine, 0x3b80ee2a, 0xb0f5, 0x4780, 0x9e, 0x30, 0x90, 0xcb, 0x39, 0x68, 0x5b, 0x03); +#elif XACT3_VER == 0x0301 + DEFINE_GUID(CLSID_XACTEngine, 0x962f5027, 0x99be, 0x4692, 0xa4, 0x68, 0x85, 0x80, 0x2c, 0xf8, 0xde, 0x61); +#elif XACT3_VER == 0x0302 + DEFINE_GUID(CLSID_XACTEngine, 0xd3332f02, 0x3dd0, 0x4de9, 0x9a, 0xec, 0x20, 0xd8, 0x5c, 0x41, 0x11, 0xb6); +#elif XACT3_VER == 0x0303 + DEFINE_GUID(CLSID_XACTEngine, 0x94c1affa, 0x66e7, 0x4961, 0x95, 0x21, 0xcf, 0xde, 0xf3, 0x12, 0x8d, 0x4f); +#elif XACT3_VER == 0x0304 + DEFINE_GUID(CLSID_XACTEngine, 0x0977d092, 0x2d95, 0x4e43, 0x8d, 0x42, 0x9d, 0xdc, 0xc2, 0x54, 0x5e, 0xd5); +#elif XACT3_VER == 0x0305 + DEFINE_GUID(CLSID_XACTEngine, 0x074b110f, 0x7f58, 0x4743, 0xae, 0xa5, 0x12, 0xf1, 0x5b, 0x50, 0x74, 0xed); +#elif XACT3_VER == 0x0306 + DEFINE_GUID(CLSID_XACTEngine, 0x248d8a3b, 0x6256, 0x44d3, 0xa0, 0x18, 0x2a, 0xc9, 0x6c, 0x45, 0x9f, 0x47); +#else /* XACT3_VER == 0x0307 or not defined */ + DEFINE_GUID(CLSID_XACTEngine, 0xbcc782bc, 0x6492, 0x4c22, 0x8c, 0x35, 0xf5, 0xd7, 0x2f, 0xe7, 0x3c, 0x6e); +#endif + DEFINE_GUID(CLSID_XACTAuditionEngine, 0x9ecdd80d, 0x0e81, 0x40d8, 0x89, 0x03, 0x2b, 0xf7, 0xb1, 0x31, 0xac, 0x43); DEFINE_GUID(CLSID_XACTDebugEngine, 0x02860630, 0xbf3b, 0x42a8, 0xb1, 0x4e, 0x91, 0xed, 0xa2, 0xf5, 0x1e, 0xa5);
-DEFINE_GUID(IID_IXACT3Engine, 0xb1ee676a, 0xd9cd, 0x4d2a, 0x89, 0xa8, 0xfa, 0x53, 0xeb, 0x9e, 0x48, 0x0b); +#if XACT3_VER == 0x0300 + DEFINE_GUID(IID_IXACT3Engine, 0x9e33f661, 0x2d07, 0x43ec, 0x97, 0x04, 0xbb, 0xcb, 0x71, 0xa5, 0x49, 0x72); +#elif XACT3_VER >= 0x0301 && XACT3_VER <= 0x304 + DEFINE_GUID(IID_IXACT3Engine, 0xe72c1b9a, 0xd717, 0x41c0, 0x81, 0xa6, 0x50, 0xeb, 0x56, 0xe8, 0x06, 0x49); +#else + DEFINE_GUID(IID_IXACT3Engine, 0xb1ee676a, 0xd9cd, 0x4d2a, 0x89, 0xa8, 0xfa, 0x53, 0xeb, 0x9e, 0x48, 0x0b); +#endif
typedef struct IXACT3SoundBank IXACT3SoundBank; typedef struct IXACT3WaveBank IXACT3WaveBank;
These patches look good to me, though note that we'll also need to do the same thing with the idl, so that the right classes get registered.