---
mingw-w64-headers/Makefile.am | 1 +
mingw-w64-headers/include/windows.foundation.h | 716 +++++++++++++++++++++++
mingw-w64-headers/include/windows.foundation.idl | 85 +++
3 files changed, 802 insertions(+)
create mode 100644 mingw-w64-headers/include/windows.foundation.h
create mode 100644 mingw-w64-headers/include/windows.foundation.idl
diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index 863ed6c..085532d 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -109,6 +109,7 @@ IDL_SRCS = \
include/urlmon.idl \
include/wincodec.idl \
include/wtypesbase.idl \
+ include/windows.foundation.idl \
include/wmcodecdsp.idl \
include/wpcapi.idl \
include/wtypes.idl \
diff --git a/mingw-w64-headers/include/windows.foundation.h
b/mingw-w64-headers/include/windows.foundation.h
new file mode 100644
index 0000000..6c4d3ec
--- /dev/null
+++ b/mingw-w64-headers/include/windows.foundation.h
@@ -0,0 +1,716 @@
+/*** Autogenerated by WIDL 1.5.31 from include/windows.foundation.idl - Do not
edit ***/
+
+#ifndef __REQUIRED_RPCNDR_H_VERSION__
+#define __REQUIRED_RPCNDR_H_VERSION__ 475
+#endif
+
+#include <rpc.h>
+#include <rpcndr.h>
+
+#ifndef COM_NO_WINDOWS_H
+#include <windows.h>
+#include <ole2.h>
+#endif
+
+#ifndef __windows_foundation_h__
+#define __windows_foundation_h__
+
+/* Forward declarations */
+
+#ifndef __IAsyncInfo_FWD_DEFINED__
+#define __IAsyncInfo_FWD_DEFINED__
+typedef interface IAsyncInfo IAsyncInfo;
+#endif
+
+#ifndef __IASyncAction_FWD_DEFINED__
+#define __IASyncAction_FWD_DEFINED__
+typedef interface IASyncAction IASyncAction;
+#endif
+
+#ifndef __AsyncActionCompletedHandler_FWD_DEFINED__
+#define __AsyncActionCompletedHandler_FWD_DEFINED__
+typedef interface AsyncActionCompletedHandler AsyncActionCompletedHandler;
+#endif
+
+#ifndef __IAsyncOperation_FWD_DEFINED__
+#define __IAsyncOperation_FWD_DEFINED__
+typedef interface IAsyncOperation IAsyncOperation;
+#endif
+
+/* Headers for imported files */
+
+#include <inspectable.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef __IAsyncInfo_FWD_DEFINED__
+#define __IAsyncInfo_FWD_DEFINED__
+typedef interface IAsyncInfo IAsyncInfo;
+#endif
+
+#ifndef __IAsyncAction_FWD_DEFINED__
+#define __IAsyncAction_FWD_DEFINED__
+typedef interface IAsyncAction IAsyncAction;
+#endif
+
+#ifndef __IAsyncOperation_FWD_DEFINED__
+#define __IAsyncOperation_FWD_DEFINED__
+typedef interface IAsyncOperation IAsyncOperation;
+#endif
+
+#ifndef __AsyncActionCompletedHandler_FWD_DEFINED__
+#define __AsyncActionCompletedHandler_FWD_DEFINED__
+typedef interface AsyncActionCompletedHandler AsyncActionCompletedHandler;
+#endif
+
+#ifndef __TypedEventHandler_FWD_DEFINED__
+#define __TypedEventHandler_FWD_DEFINED__
+typedef interface TypedEventHandler TypedEventHandler;
+#endif
+
+struct DateTime;
+
+struct EventRegistrationToken;
+
+#ifndef __IVectorView_FWD_DEFINED__
+#define __IVectorView_FWD_DEFINED__
+typedef interface IVectorView IVectorView;
+#endif
+
+#ifndef __IPropertySet_FWD_DEFINED__
+#define __IPropertySet_FWD_DEFINED__
+typedef interface IPropertySet IPropertySet;
+#endif
+
+typedef enum AsyncStatus {
+ Started = 0,
+ Completed = 1,
+ Canceled = 2,
+ Error = 3
+} AsyncStatus;
+typedef struct DateTime {
+ UINT64 UniversalTime;
+} DateTime;
+typedef struct EventRegistrationToken {
+ UINT64 Value;
+} EventRegistrationToken;
+/*****************************************************************************
+ * IAsyncInfo interface
+ */
+#ifndef __IAsyncInfo_INTERFACE_DEFINED__
+#define __IAsyncInfo_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_IAsyncInfo, 0x00000036, 0x0000, 0x0000, 0xc0,0x00,
0x00,0x00,0x00,0x00,0x00,0x46);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("00000036-0000-0000-c000-000000000046")
+IAsyncInfo : public IInspectable
+{
+ virtual HRESULT STDMETHODCALLTYPE get_Id(
+ unsigned int *id) = 0;
+
+ virtual HRESULT STDMETHODCALLTYPE get_Status(
+ AsyncStatus *status) = 0;
+
+ virtual HRESULT STDMETHODCALLTYPE get_ErrorCode(
+ HRESULT *errorCode) = 0;
+
+ virtual HRESULT STDMETHODCALLTYPE Cancel(
+ ) = 0;
+
+ virtual HRESULT STDMETHODCALLTYPE Close(
+ ) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(IAsyncInfo, 0x00000036, 0x0000, 0x0000, 0xc0,0x00,
0x00,0x00,0x00,0x00,0x00,0x46)
+#endif
+#else
+typedef struct IAsyncInfoVtbl {
+ BEGIN_INTERFACE
+
+ /*** IUnknown methods ***/
+ HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+ IAsyncInfo* This,
+ REFIID riid,
+ void **ppvObject);
+
+ ULONG (STDMETHODCALLTYPE *AddRef)(
+ IAsyncInfo* This);
+
+ ULONG (STDMETHODCALLTYPE *Release)(
+ IAsyncInfo* This);
+
+ /*** IInspectable methods ***/
+ HRESULT (STDMETHODCALLTYPE *GetIids)(
+ IAsyncInfo* This,
+ ULONG *iidCount,
+ IID **iids);
+
+ HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
+ IAsyncInfo* This,
+ HSTRING *className);
+
+ HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
+ IAsyncInfo* This,
+ TrustLevel *trustLevel);
+
+ /*** IAsyncInfo methods ***/
+ HRESULT (STDMETHODCALLTYPE *get_Id)(
+ IAsyncInfo* This,
+ unsigned int *id);
+
+ HRESULT (STDMETHODCALLTYPE *get_Status)(
+ IAsyncInfo* This,
+ AsyncStatus *status);
+
+ HRESULT (STDMETHODCALLTYPE *get_ErrorCode)(
+ IAsyncInfo* This,
+ HRESULT *errorCode);
+
+ HRESULT (STDMETHODCALLTYPE *Cancel)(
+ IAsyncInfo* This);
+
+ HRESULT (STDMETHODCALLTYPE *Close)(
+ IAsyncInfo* This);
+
+ END_INTERFACE
+} IAsyncInfoVtbl;
+interface IAsyncInfo {
+ CONST_VTBL IAsyncInfoVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define IAsyncInfo_QueryInterface(This,riid,ppvObject)
(This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define IAsyncInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define IAsyncInfo_Release(This) (This)->lpVtbl->Release(This)
+/*** IInspectable methods ***/
+#define IAsyncInfo_GetIids(This,iidCount,iids)
(This)->lpVtbl->GetIids(This,iidCount,iids)
+#define IAsyncInfo_GetRuntimeClassName(This,className)
(This)->lpVtbl->GetRuntimeClassName(This,className)
+#define IAsyncInfo_GetTrustLevel(This,trustLevel)
(This)->lpVtbl->GetTrustLevel(This,trustLevel)
+/*** IAsyncInfo methods ***/
+#define IAsyncInfo_get_Id(This,id) (This)->lpVtbl->get_Id(This,id)
+#define IAsyncInfo_get_Status(This,status)
(This)->lpVtbl->get_Status(This,status)
+#define IAsyncInfo_get_ErrorCode(This,errorCode)
(This)->lpVtbl->get_ErrorCode(This,errorCode)
+#define IAsyncInfo_Cancel(This) (This)->lpVtbl->Cancel(This)
+#define IAsyncInfo_Close(This) (This)->lpVtbl->Close(This)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT IAsyncInfo_QueryInterface(IAsyncInfo* This,REFIID
riid,void **ppvObject) {
+ return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG IAsyncInfo_AddRef(IAsyncInfo* This) {
+ return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG IAsyncInfo_Release(IAsyncInfo* This) {
+ return This->lpVtbl->Release(This);
+}
+/*** IInspectable methods ***/
+static FORCEINLINE HRESULT IAsyncInfo_GetIids(IAsyncInfo* This,ULONG
*iidCount,IID **iids) {
+ return This->lpVtbl->GetIids(This,iidCount,iids);
+}
+static FORCEINLINE HRESULT IAsyncInfo_GetRuntimeClassName(IAsyncInfo*
This,HSTRING *className) {
+ return This->lpVtbl->GetRuntimeClassName(This,className);
+}
+static FORCEINLINE HRESULT IAsyncInfo_GetTrustLevel(IAsyncInfo*
This,TrustLevel *trustLevel) {
+ return This->lpVtbl->GetTrustLevel(This,trustLevel);
+}
+/*** IAsyncInfo methods ***/
+static FORCEINLINE HRESULT IAsyncInfo_get_Id(IAsyncInfo* This,unsigned int
*id) {
+ return This->lpVtbl->get_Id(This,id);
+}
+static FORCEINLINE HRESULT IAsyncInfo_get_Status(IAsyncInfo* This,AsyncStatus
*status) {
+ return This->lpVtbl->get_Status(This,status);
+}
+static FORCEINLINE HRESULT IAsyncInfo_get_ErrorCode(IAsyncInfo* This,HRESULT
*errorCode) {
+ return This->lpVtbl->get_ErrorCode(This,errorCode);
+}
+static FORCEINLINE HRESULT IAsyncInfo_Cancel(IAsyncInfo* This) {
+ return This->lpVtbl->Cancel(This);
+}
+static FORCEINLINE HRESULT IAsyncInfo_Close(IAsyncInfo* This) {
+ return This->lpVtbl->Close(This);
+}
+#endif
+#endif
+
+#endif
+
+HRESULT STDMETHODCALLTYPE IAsyncInfo_get_Id_Proxy(
+ IAsyncInfo* This,
+ unsigned int *id);
+void __RPC_STUB IAsyncInfo_get_Id_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAsyncInfo_get_Status_Proxy(
+ IAsyncInfo* This,
+ AsyncStatus *status);
+void __RPC_STUB IAsyncInfo_get_Status_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAsyncInfo_get_ErrorCode_Proxy(
+ IAsyncInfo* This,
+ HRESULT *errorCode);
+void __RPC_STUB IAsyncInfo_get_ErrorCode_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAsyncInfo_Cancel_Proxy(
+ IAsyncInfo* This);
+void __RPC_STUB IAsyncInfo_Cancel_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAsyncInfo_Close_Proxy(
+ IAsyncInfo* This);
+void __RPC_STUB IAsyncInfo_Close_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+
+#endif /* __IAsyncInfo_INTERFACE_DEFINED__ */
+
+/*****************************************************************************
+ * IASyncAction interface
+ */
+#ifndef __IASyncAction_INTERFACE_DEFINED__
+#define __IASyncAction_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_IASyncAction, 0x5a648006, 0x843a, 0x4da9, 0x86,0x5b,
0x9d,0x26,0xe5,0xdf,0xad,0x7b);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("5a648006-843a-4da9-865b-9d26e5dfad7b")
+IASyncAction : public IInspectable
+{
+ virtual HRESULT STDMETHODCALLTYPE put_Completed(
+ AsyncActionCompletedHandler *handler) = 0;
+
+ virtual HRESULT STDMETHODCALLTYPE get_Completed(
+ AsyncActionCompletedHandler **handler) = 0;
+
+ virtual HRESULT STDMETHODCALLTYPE GetResults(
+ ) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(IASyncAction, 0x5a648006, 0x843a, 0x4da9, 0x86,0x5b,
0x9d,0x26,0xe5,0xdf,0xad,0x7b)
+#endif
+#else
+typedef struct IASyncActionVtbl {
+ BEGIN_INTERFACE
+
+ /*** IUnknown methods ***/
+ HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+ IASyncAction* This,
+ REFIID riid,
+ void **ppvObject);
+
+ ULONG (STDMETHODCALLTYPE *AddRef)(
+ IASyncAction* This);
+
+ ULONG (STDMETHODCALLTYPE *Release)(
+ IASyncAction* This);
+
+ /*** IInspectable methods ***/
+ HRESULT (STDMETHODCALLTYPE *GetIids)(
+ IASyncAction* This,
+ ULONG *iidCount,
+ IID **iids);
+
+ HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
+ IASyncAction* This,
+ HSTRING *className);
+
+ HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
+ IASyncAction* This,
+ TrustLevel *trustLevel);
+
+ /*** IASyncAction methods ***/
+ HRESULT (STDMETHODCALLTYPE *put_Completed)(
+ IASyncAction* This,
+ AsyncActionCompletedHandler *handler);
+
+ HRESULT (STDMETHODCALLTYPE *get_Completed)(
+ IASyncAction* This,
+ AsyncActionCompletedHandler **handler);
+
+ HRESULT (STDMETHODCALLTYPE *GetResults)(
+ IASyncAction* This);
+
+ END_INTERFACE
+} IASyncActionVtbl;
+interface IASyncAction {
+ CONST_VTBL IASyncActionVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define IASyncAction_QueryInterface(This,riid,ppvObject)
(This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define IASyncAction_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define IASyncAction_Release(This) (This)->lpVtbl->Release(This)
+/*** IInspectable methods ***/
+#define IASyncAction_GetIids(This,iidCount,iids)
(This)->lpVtbl->GetIids(This,iidCount,iids)
+#define IASyncAction_GetRuntimeClassName(This,className)
(This)->lpVtbl->GetRuntimeClassName(This,className)
+#define IASyncAction_GetTrustLevel(This,trustLevel)
(This)->lpVtbl->GetTrustLevel(This,trustLevel)
+/*** IASyncAction methods ***/
+#define IASyncAction_put_Completed(This,handler)
(This)->lpVtbl->put_Completed(This,handler)
+#define IASyncAction_get_Completed(This,handler)
(This)->lpVtbl->get_Completed(This,handler)
+#define IASyncAction_GetResults(This) (This)->lpVtbl->GetResults(This)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT IASyncAction_QueryInterface(IASyncAction*
This,REFIID riid,void **ppvObject) {
+ return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG IASyncAction_AddRef(IASyncAction* This) {
+ return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG IASyncAction_Release(IASyncAction* This) {
+ return This->lpVtbl->Release(This);
+}
+/*** IInspectable methods ***/
+static FORCEINLINE HRESULT IASyncAction_GetIids(IASyncAction* This,ULONG
*iidCount,IID **iids) {
+ return This->lpVtbl->GetIids(This,iidCount,iids);
+}
+static FORCEINLINE HRESULT IASyncAction_GetRuntimeClassName(IASyncAction*
This,HSTRING *className) {
+ return This->lpVtbl->GetRuntimeClassName(This,className);
+}
+static FORCEINLINE HRESULT IASyncAction_GetTrustLevel(IASyncAction*
This,TrustLevel *trustLevel) {
+ return This->lpVtbl->GetTrustLevel(This,trustLevel);
+}
+/*** IASyncAction methods ***/
+static FORCEINLINE HRESULT IASyncAction_put_Completed(IASyncAction*
This,AsyncActionCompletedHandler *handler) {
+ return This->lpVtbl->put_Completed(This,handler);
+}
+static FORCEINLINE HRESULT IASyncAction_get_Completed(IASyncAction*
This,AsyncActionCompletedHandler **handler) {
+ return This->lpVtbl->get_Completed(This,handler);
+}
+static FORCEINLINE HRESULT IASyncAction_GetResults(IASyncAction* This) {
+ return This->lpVtbl->GetResults(This);
+}
+#endif
+#endif
+
+#endif
+
+HRESULT STDMETHODCALLTYPE IASyncAction_put_Completed_Proxy(
+ IASyncAction* This,
+ AsyncActionCompletedHandler *handler);
+void __RPC_STUB IASyncAction_put_Completed_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IASyncAction_get_Completed_Proxy(
+ IASyncAction* This,
+ AsyncActionCompletedHandler **handler);
+void __RPC_STUB IASyncAction_get_Completed_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IASyncAction_GetResults_Proxy(
+ IASyncAction* This);
+void __RPC_STUB IASyncAction_GetResults_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+
+#endif /* __IASyncAction_INTERFACE_DEFINED__ */
+
+/*****************************************************************************
+ * AsyncActionCompletedHandler interface
+ */
+#ifndef __AsyncActionCompletedHandler_INTERFACE_DEFINED__
+#define __AsyncActionCompletedHandler_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_AsyncActionCompletedHandler, 0xa4ed5c81, 0x76c9, 0x40bd,
0x8b,0xe6, 0xb1,0xd9,0x0f,0xb2,0x0a,0xe7);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("a4ed5c81-76c9-40bd-8be6-b1d90fb20ae7")
+AsyncActionCompletedHandler : public IUnknown
+{
+ virtual HRESULT STDMETHODCALLTYPE Invoke(
+ IInspectable *asyncAction,
+ AsyncStatus status) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(AsyncActionCompletedHandler, 0xa4ed5c81, 0x76c9, 0x40bd,
0x8b,0xe6, 0xb1,0xd9,0x0f,0xb2,0x0a,0xe7)
+#endif
+#else
+typedef struct AsyncActionCompletedHandlerVtbl {
+ BEGIN_INTERFACE
+
+ /*** IUnknown methods ***/
+ HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+ AsyncActionCompletedHandler* This,
+ REFIID riid,
+ void **ppvObject);
+
+ ULONG (STDMETHODCALLTYPE *AddRef)(
+ AsyncActionCompletedHandler* This);
+
+ ULONG (STDMETHODCALLTYPE *Release)(
+ AsyncActionCompletedHandler* This);
+
+ /*** AsyncActionCompletedHandler methods ***/
+ HRESULT (STDMETHODCALLTYPE *Invoke)(
+ AsyncActionCompletedHandler* This,
+ IInspectable *asyncAction,
+ AsyncStatus status);
+
+ END_INTERFACE
+} AsyncActionCompletedHandlerVtbl;
+interface AsyncActionCompletedHandler {
+ CONST_VTBL AsyncActionCompletedHandlerVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define AsyncActionCompletedHandler_QueryInterface(This,riid,ppvObject)
(This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define AsyncActionCompletedHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define AsyncActionCompletedHandler_Release(This) (This)->lpVtbl->Release(This)
+/*** AsyncActionCompletedHandler methods ***/
+#define AsyncActionCompletedHandler_Invoke(This,asyncAction,status)
(This)->lpVtbl->Invoke(This,asyncAction,status)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT
AsyncActionCompletedHandler_QueryInterface(AsyncActionCompletedHandler*
This,REFIID riid,void **ppvObject) {
+ return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG
AsyncActionCompletedHandler_AddRef(AsyncActionCompletedHandler* This) {
+ return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG
AsyncActionCompletedHandler_Release(AsyncActionCompletedHandler* This) {
+ return This->lpVtbl->Release(This);
+}
+/*** AsyncActionCompletedHandler methods ***/
+static FORCEINLINE HRESULT
AsyncActionCompletedHandler_Invoke(AsyncActionCompletedHandler*
This,IInspectable *asyncAction,AsyncStatus status) {
+ return This->lpVtbl->Invoke(This,asyncAction,status);
+}
+#endif
+#endif
+
+#endif
+
+HRESULT STDMETHODCALLTYPE AsyncActionCompletedHandler_Invoke_Proxy(
+ AsyncActionCompletedHandler* This,
+ IInspectable *asyncAction,
+ AsyncStatus status);
+void __RPC_STUB AsyncActionCompletedHandler_Invoke_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+
+#endif /* __AsyncActionCompletedHandler_INTERFACE_DEFINED__ */
+
+/*****************************************************************************
+ * IAsyncOperation interface
+ */
+#ifndef __IAsyncOperation_INTERFACE_DEFINED__
+#define __IAsyncOperation_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_IAsyncOperation, 0x9fc2b0bb, 0xe446, 0x44e2, 0xaa,0x61,
0x9c,0xab,0x8f,0x63,0x6a,0xf2);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("9fc2b0bb-e446-44e2-aa61-9cab8f636af2")
+IAsyncOperation : public IAsyncInfo
+{
+ virtual HRESULT STDMETHODCALLTYPE put_Completed(
+ AsyncActionCompletedHandler *handler) = 0;
+
+ virtual HRESULT STDMETHODCALLTYPE get_Completed(
+ AsyncActionCompletedHandler **handler) = 0;
+
+ virtual IInspectable * STDMETHODCALLTYPE GetResults(
+ ) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(IAsyncOperation, 0x9fc2b0bb, 0xe446, 0x44e2, 0xaa,0x61,
0x9c,0xab,0x8f,0x63,0x6a,0xf2)
+#endif
+#else
+typedef struct IAsyncOperationVtbl {
+ BEGIN_INTERFACE
+
+ /*** IUnknown methods ***/
+ HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+ IAsyncOperation* This,
+ REFIID riid,
+ void **ppvObject);
+
+ ULONG (STDMETHODCALLTYPE *AddRef)(
+ IAsyncOperation* This);
+
+ ULONG (STDMETHODCALLTYPE *Release)(
+ IAsyncOperation* This);
+
+ /*** IInspectable methods ***/
+ HRESULT (STDMETHODCALLTYPE *GetIids)(
+ IAsyncOperation* This,
+ ULONG *iidCount,
+ IID **iids);
+
+ HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
+ IAsyncOperation* This,
+ HSTRING *className);
+
+ HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
+ IAsyncOperation* This,
+ TrustLevel *trustLevel);
+
+ /*** IAsyncInfo methods ***/
+ HRESULT (STDMETHODCALLTYPE *get_Id)(
+ IAsyncOperation* This,
+ unsigned int *id);
+
+ HRESULT (STDMETHODCALLTYPE *get_Status)(
+ IAsyncOperation* This,
+ AsyncStatus *status);
+
+ HRESULT (STDMETHODCALLTYPE *get_ErrorCode)(
+ IAsyncOperation* This,
+ HRESULT *errorCode);
+
+ HRESULT (STDMETHODCALLTYPE *Cancel)(
+ IAsyncOperation* This);
+
+ HRESULT (STDMETHODCALLTYPE *Close)(
+ IAsyncOperation* This);
+
+ /*** IAsyncOperation methods ***/
+ HRESULT (STDMETHODCALLTYPE *put_Completed)(
+ IAsyncOperation* This,
+ AsyncActionCompletedHandler *handler);
+
+ HRESULT (STDMETHODCALLTYPE *get_Completed)(
+ IAsyncOperation* This,
+ AsyncActionCompletedHandler **handler);
+
+ IInspectable * (STDMETHODCALLTYPE *GetResults)(
+ IAsyncOperation* This);
+
+ END_INTERFACE
+} IAsyncOperationVtbl;
+interface IAsyncOperation {
+ CONST_VTBL IAsyncOperationVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define IAsyncOperation_QueryInterface(This,riid,ppvObject)
(This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define IAsyncOperation_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define IAsyncOperation_Release(This) (This)->lpVtbl->Release(This)
+/*** IInspectable methods ***/
+#define IAsyncOperation_GetIids(This,iidCount,iids)
(This)->lpVtbl->GetIids(This,iidCount,iids)
+#define IAsyncOperation_GetRuntimeClassName(This,className)
(This)->lpVtbl->GetRuntimeClassName(This,className)
+#define IAsyncOperation_GetTrustLevel(This,trustLevel)
(This)->lpVtbl->GetTrustLevel(This,trustLevel)
+/*** IAsyncInfo methods ***/
+#define IAsyncOperation_get_Id(This,id) (This)->lpVtbl->get_Id(This,id)
+#define IAsyncOperation_get_Status(This,status)
(This)->lpVtbl->get_Status(This,status)
+#define IAsyncOperation_get_ErrorCode(This,errorCode)
(This)->lpVtbl->get_ErrorCode(This,errorCode)
+#define IAsyncOperation_Cancel(This) (This)->lpVtbl->Cancel(This)
+#define IAsyncOperation_Close(This) (This)->lpVtbl->Close(This)
+/*** IAsyncOperation methods ***/
+#define IAsyncOperation_put_Completed(This,handler)
(This)->lpVtbl->put_Completed(This,handler)
+#define IAsyncOperation_get_Completed(This,handler)
(This)->lpVtbl->get_Completed(This,handler)
+#define IAsyncOperation_GetResults(This) (This)->lpVtbl->GetResults(This)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT IAsyncOperation_QueryInterface(IAsyncOperation*
This,REFIID riid,void **ppvObject) {
+ return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG IAsyncOperation_AddRef(IAsyncOperation* This) {
+ return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG IAsyncOperation_Release(IAsyncOperation* This) {
+ return This->lpVtbl->Release(This);
+}
+/*** IInspectable methods ***/
+static FORCEINLINE HRESULT IAsyncOperation_GetIids(IAsyncOperation* This,ULONG
*iidCount,IID **iids) {
+ return This->lpVtbl->GetIids(This,iidCount,iids);
+}
+static FORCEINLINE HRESULT
IAsyncOperation_GetRuntimeClassName(IAsyncOperation* This,HSTRING *className) {
+ return This->lpVtbl->GetRuntimeClassName(This,className);
+}
+static FORCEINLINE HRESULT IAsyncOperation_GetTrustLevel(IAsyncOperation*
This,TrustLevel *trustLevel) {
+ return This->lpVtbl->GetTrustLevel(This,trustLevel);
+}
+/*** IAsyncInfo methods ***/
+static FORCEINLINE HRESULT IAsyncOperation_get_Id(IAsyncOperation*
This,unsigned int *id) {
+ return This->lpVtbl->get_Id(This,id);
+}
+static FORCEINLINE HRESULT IAsyncOperation_get_Status(IAsyncOperation*
This,AsyncStatus *status) {
+ return This->lpVtbl->get_Status(This,status);
+}
+static FORCEINLINE HRESULT IAsyncOperation_get_ErrorCode(IAsyncOperation*
This,HRESULT *errorCode) {
+ return This->lpVtbl->get_ErrorCode(This,errorCode);
+}
+static FORCEINLINE HRESULT IAsyncOperation_Cancel(IAsyncOperation* This) {
+ return This->lpVtbl->Cancel(This);
+}
+static FORCEINLINE HRESULT IAsyncOperation_Close(IAsyncOperation* This) {
+ return This->lpVtbl->Close(This);
+}
+/*** IAsyncOperation methods ***/
+static FORCEINLINE HRESULT IAsyncOperation_put_Completed(IAsyncOperation*
This,AsyncActionCompletedHandler *handler) {
+ return This->lpVtbl->put_Completed(This,handler);
+}
+static FORCEINLINE HRESULT IAsyncOperation_get_Completed(IAsyncOperation*
This,AsyncActionCompletedHandler **handler) {
+ return This->lpVtbl->get_Completed(This,handler);
+}
+static FORCEINLINE IInspectable * IAsyncOperation_GetResults(IAsyncOperation*
This) {
+ return This->lpVtbl->GetResults(This);
+}
+#endif
+#endif
+
+#endif
+
+HRESULT STDMETHODCALLTYPE IAsyncOperation_put_Completed_Proxy(
+ IAsyncOperation* This,
+ AsyncActionCompletedHandler *handler);
+void __RPC_STUB IAsyncOperation_put_Completed_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAsyncOperation_get_Completed_Proxy(
+ IAsyncOperation* This,
+ AsyncActionCompletedHandler **handler);
+void __RPC_STUB IAsyncOperation_get_Completed_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+IInspectable * STDMETHODCALLTYPE IAsyncOperation_GetResults_Proxy(
+ IAsyncOperation* This);
+void __RPC_STUB IAsyncOperation_GetResults_Stub(
+ IRpcStubBuffer* This,
+ IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+
+#endif /* __IAsyncOperation_INTERFACE_DEFINED__ */
+
+/* Begin additional prototypes for all interfaces */
+
+
+/* End additional prototypes */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __windows_foundation_h__ */
diff --git a/mingw-w64-headers/include/windows.foundation.idl
b/mingw-w64-headers/include/windows.foundation.idl
new file mode 100644
index 0000000..875341a
--- /dev/null
+++ b/mingw-w64-headers/include/windows.foundation.idl
@@ -0,0 +1,85 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+import "inspectable.idl";
+
+namespace Windows {
+ namespace Foundation {
+ interface IAsyncInfo;
+ interface IAsyncAction;
+ interface IAsyncOperation;
+ interface AsyncActionCompletedHandler; // delegate
+ interface TypedEventHandler; // delegate
+ struct DateTime;
+ struct EventRegistrationToken;
+
+ namespace Collections {
+ interface IVectorView;
+ interface IPropertySet;
+ }
+ }
+}
+
+namespace Windows {
+ namespace Foundation {
+ typedef enum AsyncStatus {
+ Started,
+ Completed,
+ Canceled,
+ Error
+ } AsyncStatus;
+
+ typedef struct DateTime {
+ UINT64 UniversalTime;
+ } DateTime;
+
+ typedef struct EventRegistrationToken {
+ UINT64 Value;
+ } EventRegistrationToken;
+
+ [uuid(00000036-0000-0000-C000-000000000046)]
+ interface IAsyncInfo : IInspectable
+ {
+ [propget] HRESULT Id(unsigned int *id);
+ [propget] HRESULT Status(AsyncStatus *status);
+ [propget] HRESULT ErrorCode(HRESULT *errorCode);
+ HRESULT Cancel();
+ HRESULT Close();
+ }
+
+ [uuid(5A648006-843A-4DA9-865B-9D26E5DFAD7B)]
+ interface IASyncAction : IInspectable {
+ [propput] HRESULT Completed(AsyncActionCompletedHandler* handler);
+ [propget] HRESULT Completed(AsyncActionCompletedHandler** handler);
+ HRESULT GetResults();
+ }
+
+ [uuid(A4ED5C81-76C9-40BD-8BE6-B1D90FB20AE7)]
+ interface AsyncActionCompletedHandler : IUnknown {
+ //FIXME: should support cyclic dependency
+ HRESULT Invoke(/*IAsyncAction*/ IInspectable *asyncAction, AsyncStatus
status);
+ }
+
+ //FIXME: WHERE IS IT?
+ //generic <typename TResult>
+ [uuid("9fc2b0bb-e446-44e2-aa61-9cab8f636af2")]
+ interface IAsyncOperation : IAsyncInfo {
+ [propput] HRESULT Completed(AsyncActionCompletedHandler* handler);
+ [propget] HRESULT Completed(AsyncActionCompletedHandler** handler);
+ //FIXME: implement generics
+ /*TResult*/ IInspectable* GetResults();
+ }
+
+
+ namespace Collections {
+ //interface IVectorView;
+ /*[uuid(8A43ED9F-F4E6-4421-ACF9-1DAB2986820C)]
+ interface IPropertySet : IInspectable {
+ //
+ }*/
+ }
+ }
+}
--
1.8.3.4
------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public