Nikolay Sivov : include: Add mfplay event macros.

Alexandre Julliard julliard at winehq.org
Tue Apr 20 16:27:44 CDT 2021


Module: wine
Branch: master
Commit: 11d3f6976d0c4e8c937891bc9c6c4c86e455e01e
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=11d3f6976d0c4e8c937891bc9c6c4c86e455e01e

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Tue Apr 20 12:05:59 2021 +0300

include: Add mfplay event macros.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/mfplay.idl | 19 ++++++++++++++++++-
 1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/include/mfplay.idl b/include/mfplay.idl
index f130ce12287..7d4345e69e7 100644
--- a/include/mfplay.idl
+++ b/include/mfplay.idl
@@ -22,13 +22,15 @@ import "evr.idl";
 
 interface IMFNetCredential;
 
+typedef UINT32 MFP_CREATION_OPTIONS;
+
 typedef [v1_enum] enum _MFP_CREATION_OPTIONS
 {
     MFP_OPTION_NONE = 0,
     MFP_OPTION_FREE_THREADED_CALLBACK = 0x1,
     MFP_OPTION_NO_MMCSS = 0x2,
     MFP_OPTION_NO_REMOTE_DESKTOP_OPTIMIZATION = 0x4,
-} MFP_CREATION_OPTIONS;
+} _MFP_CREATION_OPTIONS;
 
 typedef [v1_enum] enum MFP_MEDIAPLAYER_STATE
 {
@@ -180,6 +182,21 @@ typedef struct MFP_ACQUIRE_USER_CREDENTIAL_EVENT
     IMFNetCredential *pCredential;
 } MFP_ACQUIRE_USER_CREDENTIAL_EVENT;
 
+cpp_quote("#define __MFP_CAST_EVENT(hdr, tag)                 (((hdr)->eEventType == MFP_EVENT_TYPE_##tag) ? (MFP_##Tag##_EVENT *)(hdr) : NULL)")
+cpp_quote("#define MFP_GET_PLAY_EVENT(hdr)                    __MFP_CAST_EVENT(hdr, PLAY)")
+cpp_quote("#define MFP_GET_PAUSE_EVENT(hdr)                   __MFP_CAST_EVENT(hdr, PAUSE)")
+cpp_quote("#define MFP_GET_STOP_EVENT(hdr)                    __MFP_CAST_EVENT(hdr, STOP)")
+cpp_quote("#define MFP_GET_POSITION_SET_EVENT(hdr)            __MFP_CAST_EVENT(hdr, POSITION_SET)")
+cpp_quote("#define MFP_GET_RATE_SET_EVENT(hdr)                __MFP_CAST_EVENT(hdr, RATE_SET)")
+cpp_quote("#define MFP_GET_MEDIAITEM_CREATED_EVENT(hdr)       __MFP_CAST_EVENT(hdr, MEDIAITEM_CREATED)")
+cpp_quote("#define MFP_GET_MEDIAITEM_SET_EVENT(hdr)           __MFP_CAST_EVENT(hdr, MEDIAITEM_SET)")
+cpp_quote("#define MFP_GET_FRAME_STEP_EVENT(hdr)              __MFP_CAST_EVENT(hdr, FRAME_STEP)")
+cpp_quote("#define MFP_GET_MEDIAITEM_CLEARED_EVENT(hdr)       __MFP_CAST_EVENT(hdr, MEDIAITEM_CLEARED)")
+cpp_quote("#define MFP_GET_MF_EVENT(hdr)                      __MFP_CAST_EVENT(hdr, MF)")
+cpp_quote("#define MFP_GET_ERROR_EVENT(hdr)                   __MFP_CAST_EVENT(hdr, ERROR)")
+cpp_quote("#define MFP_GET_PLAYBACK_ENDED_EVENT(hdr)          __MFP_CAST_EVENT(hdr, PLAYBACK_ENDED)")
+cpp_quote("#define MFP_GET_ACQUIRE_USER_CREDENTIAL_EVENT(hdr) __MFP_CAST_EVENT(hdr, ACQUIRE_USER_CREDENTIAL)")
+
 [
     object,
     uuid(766c8ffb-5fdb-4fea-a28d-b912996f51bd),




More information about the wine-cvs mailing list