headers: fix IAsyncAction definition in windows.foundation
diff --git a/mingw-w64-headers/include/windows.foundation.h b/mingw-w64-headers/include/windows.foundation.h
index d5eb590..0cc7bd2 100644
--- a/mingw-w64-headers/include/windows.foundation.h
+++ b/mingw-w64-headers/include/windows.foundation.h
@@ -381,7 +381,7 @@
namespace Windows {
namespace Foundation {
MIDL_INTERFACE("5a648006-843a-4da9-865b-9d26e5dfad7b")
- IASyncAction : public IInspectable
+ IASyncAction : public IAsyncInfo
{
virtual HRESULT STDMETHODCALLTYPE put_Completed(
AsyncActionCompletedHandler *handler) = 0;
@@ -430,6 +430,25 @@
__x_ABI_CWindows_CFoundation_CIASyncAction *This,
TrustLevel *trustLevel);
+ /*** IAsyncInfo methods ***/
+ HRESULT (STDMETHODCALLTYPE *get_Id)(
+ __x_ABI_CWindows_CFoundation_CIASyncAction *This,
+ unsigned int *id);
+
+ HRESULT (STDMETHODCALLTYPE *get_Status)(
+ __x_ABI_CWindows_CFoundation_CIASyncAction *This,
+ enum __x_ABI_CWindows_CFoundation_CAsyncStatus *status);
+
+ HRESULT (STDMETHODCALLTYPE *get_ErrorCode)(
+ __x_ABI_CWindows_CFoundation_CIASyncAction *This,
+ HRESULT *errorCode);
+
+ HRESULT (STDMETHODCALLTYPE *Cancel)(
+ __x_ABI_CWindows_CFoundation_CIASyncAction *This);
+
+ HRESULT (STDMETHODCALLTYPE *Close)(
+ __x_ABI_CWindows_CFoundation_CIASyncAction *This);
+
/*** IASyncAction methods ***/
HRESULT (STDMETHODCALLTYPE *put_Completed)(
__x_ABI_CWindows_CFoundation_CIASyncAction *This,
@@ -459,6 +478,12 @@
#define __x_ABI_CWindows_CFoundation_CIASyncAction_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIASyncAction_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIASyncAction_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
+/*** IAsyncInfo methods ***/
+#define __x_ABI_CWindows_CFoundation_CIASyncAction_get_Id(This,id) (This)->lpVtbl->get_Id(This,id)
+#define __x_ABI_CWindows_CFoundation_CIASyncAction_get_Status(This,status) (This)->lpVtbl->get_Status(This,status)
+#define __x_ABI_CWindows_CFoundation_CIASyncAction_get_ErrorCode(This,errorCode) (This)->lpVtbl->get_ErrorCode(This,errorCode)
+#define __x_ABI_CWindows_CFoundation_CIASyncAction_Cancel(This) (This)->lpVtbl->Cancel(This)
+#define __x_ABI_CWindows_CFoundation_CIASyncAction_Close(This) (This)->lpVtbl->Close(This)
/*** IASyncAction methods ***/
#define __x_ABI_CWindows_CFoundation_CIASyncAction_put_Completed(This,handler) (This)->lpVtbl->put_Completed(This,handler)
#define __x_ABI_CWindows_CFoundation_CIASyncAction_get_Completed(This,handler) (This)->lpVtbl->get_Completed(This,handler)
@@ -484,6 +509,22 @@
static FORCEINLINE HRESULT __x_ABI_CWindows_CFoundation_CIASyncAction_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIASyncAction* This,TrustLevel *trustLevel) {
return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
+/*** IAsyncInfo methods ***/
+static FORCEINLINE HRESULT __x_ABI_CWindows_CFoundation_CIASyncAction_get_Id(__x_ABI_CWindows_CFoundation_CIASyncAction* This,unsigned int *id) {
+ return This->lpVtbl->get_Id(This,id);
+}
+static FORCEINLINE HRESULT __x_ABI_CWindows_CFoundation_CIASyncAction_get_Status(__x_ABI_CWindows_CFoundation_CIASyncAction* This,enum __x_ABI_CWindows_CFoundation_CAsyncStatus *status) {
+ return This->lpVtbl->get_Status(This,status);
+}
+static FORCEINLINE HRESULT __x_ABI_CWindows_CFoundation_CIASyncAction_get_ErrorCode(__x_ABI_CWindows_CFoundation_CIASyncAction* This,HRESULT *errorCode) {
+ return This->lpVtbl->get_ErrorCode(This,errorCode);
+}
+static FORCEINLINE HRESULT __x_ABI_CWindows_CFoundation_CIASyncAction_Cancel(__x_ABI_CWindows_CFoundation_CIASyncAction* This) {
+ return This->lpVtbl->Cancel(This);
+}
+static FORCEINLINE HRESULT __x_ABI_CWindows_CFoundation_CIASyncAction_Close(__x_ABI_CWindows_CFoundation_CIASyncAction* This) {
+ return This->lpVtbl->Close(This);
+}
/*** IASyncAction methods ***/
static FORCEINLINE HRESULT __x_ABI_CWindows_CFoundation_CIASyncAction_put_Completed(__x_ABI_CWindows_CFoundation_CIASyncAction* This,__x_ABI_CWindows_CFoundation_CAsyncActionCompletedHandler *handler) {
return This->lpVtbl->put_Completed(This,handler);
@@ -518,7 +559,7 @@
AsyncActionCompletedHandler : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE Invoke(
- IInspectable *asyncAction,
+ IAsyncAction *asyncAction,
enum AsyncStatus status) = 0;
};
@@ -548,7 +589,7 @@
/*** AsyncActionCompletedHandler methods ***/
HRESULT (STDMETHODCALLTYPE *Invoke)(
__x_ABI_CWindows_CFoundation_CAsyncActionCompletedHandler *This,
- IInspectable *asyncAction,
+ __x_ABI_CWindows_CFoundation_CIAsyncAction *asyncAction,
enum __x_ABI_CWindows_CFoundation_CAsyncStatus status);
END_INTERFACE
@@ -578,7 +619,7 @@
return This->lpVtbl->Release(This);
}
/*** AsyncActionCompletedHandler methods ***/
-static FORCEINLINE HRESULT __x_ABI_CWindows_CFoundation_CAsyncActionCompletedHandler_Invoke(__x_ABI_CWindows_CFoundation_CAsyncActionCompletedHandler* This,IInspectable *asyncAction,enum __x_ABI_CWindows_CFoundation_CAsyncStatus status) {
+static FORCEINLINE HRESULT __x_ABI_CWindows_CFoundation_CAsyncActionCompletedHandler_Invoke(__x_ABI_CWindows_CFoundation_CAsyncActionCompletedHandler* This,__x_ABI_CWindows_CFoundation_CIAsyncAction *asyncAction,enum __x_ABI_CWindows_CFoundation_CAsyncStatus status) {
return This->lpVtbl->Invoke(This,asyncAction,status);
}
#endif
diff --git a/mingw-w64-headers/include/windows.foundation.idl b/mingw-w64-headers/include/windows.foundation.idl
index 9962df9..fa76a44 100644
--- a/mingw-w64-headers/include/windows.foundation.idl
+++ b/mingw-w64-headers/include/windows.foundation.idl
@@ -55,7 +55,7 @@
}
[uuid(5A648006-843A-4DA9-865B-9D26E5DFAD7B)]
- interface IASyncAction : IInspectable {
+ interface IASyncAction : IAsyncInfo {
[propput] HRESULT Completed(AsyncActionCompletedHandler* handler);
[propget] HRESULT Completed(AsyncActionCompletedHandler** handler);
HRESULT GetResults();
@@ -64,7 +64,7 @@
[uuid(A4ED5C81-76C9-40BD-8BE6-B1D90FB20AE7)]
interface AsyncActionCompletedHandler : IUnknown {
//FIXME: should support cyclic dependency
- HRESULT Invoke(/*IAsyncAction*/ IInspectable *asyncAction, AsyncStatus status);
+ HRESULT Invoke(IAsyncAction *asyncAction, AsyncStatus status);
}
//FIXME: WHERE IS IT?