The Windows SDK defines the following type:
struct __declspec(novtable) GdiplusAbort { virtual HRESULT __stdcall Abort(void) = 0; };
I think that the following is a workable translation:
diff --git a/include/gdiplustypes.h b/include/gdiplustypes.h index 4f97432..444123f 100644 --- a/include/gdiplustypes.h +++ b/include/gdiplustypes.h @@ -55,6 +55,18 @@ typedef BOOL (CALLBACK * ImageAbort)(VOID *); typedef ImageAbort DrawImageAbort; typedef ImageAbort GetThumbnailImageAbort;
+struct GdiplusAbort; + +typedef struct gpabort_vtable +{ + HRESULT WINAPI (*Abort)(struct GdiplusAbort*); +} + +typedef struct GdiplusAbort +{ + struct gpabort_vtable *vtable_ptr; +} GdiplusAbort; + #ifdef __cplusplus } #endif
I don't think I can provide a proper C++ definition because the abi depends on the compiler.
Does this look correct?