123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428 |
- /*** Autogenerated by WIDL 7.7 from include/rtworkq.idl - Do not edit ***/
- #ifdef _WIN32
- #ifndef __REQUIRED_RPCNDR_H_VERSION__
- #define __REQUIRED_RPCNDR_H_VERSION__ 475
- #endif
- #include <rpc.h>
- #include <rpcndr.h>
- #endif
- #ifndef COM_NO_WINDOWS_H
- #include <windows.h>
- #include <ole2.h>
- #endif
- #ifndef __rtworkq_h__
- #define __rtworkq_h__
- /* Forward declarations */
- #ifndef __IRtwqAsyncResult_FWD_DEFINED__
- #define __IRtwqAsyncResult_FWD_DEFINED__
- typedef interface IRtwqAsyncResult IRtwqAsyncResult;
- #ifdef __cplusplus
- interface IRtwqAsyncResult;
- #endif /* __cplusplus */
- #endif
- #ifndef __IRtwqAsyncCallback_FWD_DEFINED__
- #define __IRtwqAsyncCallback_FWD_DEFINED__
- typedef interface IRtwqAsyncCallback IRtwqAsyncCallback;
- #ifdef __cplusplus
- interface IRtwqAsyncCallback;
- #endif /* __cplusplus */
- #endif
- #ifndef __IRtwqPlatformEvents_FWD_DEFINED__
- #define __IRtwqPlatformEvents_FWD_DEFINED__
- typedef interface IRtwqPlatformEvents IRtwqPlatformEvents;
- #ifdef __cplusplus
- interface IRtwqPlatformEvents;
- #endif /* __cplusplus */
- #endif
- /* Headers for imported files */
- #include <unknwn.h>
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef enum __WIDL_rtworkq_generated_name_0000000C {
- RTWQ_STANDARD_WORKQUEUE = 0,
- RTWQ_WINDOW_WORKQUEUE = 1,
- RTWQ_MULTITHREADED_WORKQUEUE = 2
- } RTWQ_WORKQUEUE_TYPE;
- typedef UINT64 RTWQWORKITEM_KEY;
- /*****************************************************************************
- * IRtwqAsyncResult interface
- */
- #ifndef __IRtwqAsyncResult_INTERFACE_DEFINED__
- #define __IRtwqAsyncResult_INTERFACE_DEFINED__
- DEFINE_GUID(IID_IRtwqAsyncResult, 0xac6b7889, 0x0740, 0x4d51, 0x86,0x19, 0x90,0x59,0x94,0xa5,0x5c,0xc6);
- #if defined(__cplusplus) && !defined(CINTERFACE)
- MIDL_INTERFACE("ac6b7889-0740-4d51-8619-905994a55cc6")
- IRtwqAsyncResult : public IUnknown
- {
- virtual HRESULT STDMETHODCALLTYPE GetState(
- IUnknown **state) = 0;
- virtual HRESULT STDMETHODCALLTYPE GetStatus(
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE SetStatus(
- HRESULT status) = 0;
- virtual HRESULT STDMETHODCALLTYPE GetObject(
- IUnknown **object) = 0;
- virtual IUnknown * STDMETHODCALLTYPE GetStateNoAddRef(
- ) = 0;
- };
- #ifdef __CRT_UUID_DECL
- __CRT_UUID_DECL(IRtwqAsyncResult, 0xac6b7889, 0x0740, 0x4d51, 0x86,0x19, 0x90,0x59,0x94,0xa5,0x5c,0xc6)
- #endif
- #else
- typedef struct IRtwqAsyncResultVtbl {
- BEGIN_INTERFACE
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IRtwqAsyncResult *This,
- REFIID riid,
- void **ppvObject);
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IRtwqAsyncResult *This);
- ULONG (STDMETHODCALLTYPE *Release)(
- IRtwqAsyncResult *This);
- /*** IRtwqAsyncResult methods ***/
- HRESULT (STDMETHODCALLTYPE *GetState)(
- IRtwqAsyncResult *This,
- IUnknown **state);
- HRESULT (STDMETHODCALLTYPE *GetStatus)(
- IRtwqAsyncResult *This);
- HRESULT (STDMETHODCALLTYPE *SetStatus)(
- IRtwqAsyncResult *This,
- HRESULT status);
- HRESULT (STDMETHODCALLTYPE *GetObject)(
- IRtwqAsyncResult *This,
- IUnknown **object);
- IUnknown * (STDMETHODCALLTYPE *GetStateNoAddRef)(
- IRtwqAsyncResult *This);
- END_INTERFACE
- } IRtwqAsyncResultVtbl;
- interface IRtwqAsyncResult {
- CONST_VTBL IRtwqAsyncResultVtbl* lpVtbl;
- };
- #ifdef COBJMACROS
- #ifndef WIDL_C_INLINE_WRAPPERS
- /*** IUnknown methods ***/
- #define IRtwqAsyncResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
- #define IRtwqAsyncResult_AddRef(This) (This)->lpVtbl->AddRef(This)
- #define IRtwqAsyncResult_Release(This) (This)->lpVtbl->Release(This)
- /*** IRtwqAsyncResult methods ***/
- #define IRtwqAsyncResult_GetState(This,state) (This)->lpVtbl->GetState(This,state)
- #define IRtwqAsyncResult_GetStatus(This) (This)->lpVtbl->GetStatus(This)
- #define IRtwqAsyncResult_SetStatus(This,status) (This)->lpVtbl->SetStatus(This,status)
- #define IRtwqAsyncResult_GetObject(This,object) (This)->lpVtbl->GetObject(This,object)
- #define IRtwqAsyncResult_GetStateNoAddRef(This) (This)->lpVtbl->GetStateNoAddRef(This)
- #else
- /*** IUnknown methods ***/
- static FORCEINLINE HRESULT IRtwqAsyncResult_QueryInterface(IRtwqAsyncResult* This,REFIID riid,void **ppvObject) {
- return This->lpVtbl->QueryInterface(This,riid,ppvObject);
- }
- static FORCEINLINE ULONG IRtwqAsyncResult_AddRef(IRtwqAsyncResult* This) {
- return This->lpVtbl->AddRef(This);
- }
- static FORCEINLINE ULONG IRtwqAsyncResult_Release(IRtwqAsyncResult* This) {
- return This->lpVtbl->Release(This);
- }
- /*** IRtwqAsyncResult methods ***/
- static FORCEINLINE HRESULT IRtwqAsyncResult_GetState(IRtwqAsyncResult* This,IUnknown **state) {
- return This->lpVtbl->GetState(This,state);
- }
- static FORCEINLINE HRESULT IRtwqAsyncResult_GetStatus(IRtwqAsyncResult* This) {
- return This->lpVtbl->GetStatus(This);
- }
- static FORCEINLINE HRESULT IRtwqAsyncResult_SetStatus(IRtwqAsyncResult* This,HRESULT status) {
- return This->lpVtbl->SetStatus(This,status);
- }
- static FORCEINLINE HRESULT IRtwqAsyncResult_GetObject(IRtwqAsyncResult* This,IUnknown **object) {
- return This->lpVtbl->GetObject(This,object);
- }
- static FORCEINLINE IUnknown * IRtwqAsyncResult_GetStateNoAddRef(IRtwqAsyncResult* This) {
- return This->lpVtbl->GetStateNoAddRef(This);
- }
- #endif
- #endif
- #endif
- #endif /* __IRtwqAsyncResult_INTERFACE_DEFINED__ */
- /*****************************************************************************
- * IRtwqAsyncCallback interface
- */
- #ifndef __IRtwqAsyncCallback_INTERFACE_DEFINED__
- #define __IRtwqAsyncCallback_INTERFACE_DEFINED__
- DEFINE_GUID(IID_IRtwqAsyncCallback, 0xa27003cf, 0x2354, 0x4f2a, 0x8d,0x6a, 0xab,0x7c,0xff,0x15,0x43,0x7e);
- #if defined(__cplusplus) && !defined(CINTERFACE)
- MIDL_INTERFACE("a27003cf-2354-4f2a-8d6a-ab7cff15437e")
- IRtwqAsyncCallback : public IUnknown
- {
- virtual HRESULT STDMETHODCALLTYPE GetParameters(
- DWORD *flags,
- DWORD *queue) = 0;
- virtual HRESULT STDMETHODCALLTYPE Invoke(
- IRtwqAsyncResult *result) = 0;
- };
- #ifdef __CRT_UUID_DECL
- __CRT_UUID_DECL(IRtwqAsyncCallback, 0xa27003cf, 0x2354, 0x4f2a, 0x8d,0x6a, 0xab,0x7c,0xff,0x15,0x43,0x7e)
- #endif
- #else
- typedef struct IRtwqAsyncCallbackVtbl {
- BEGIN_INTERFACE
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IRtwqAsyncCallback *This,
- REFIID riid,
- void **ppvObject);
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IRtwqAsyncCallback *This);
- ULONG (STDMETHODCALLTYPE *Release)(
- IRtwqAsyncCallback *This);
- /*** IRtwqAsyncCallback methods ***/
- HRESULT (STDMETHODCALLTYPE *GetParameters)(
- IRtwqAsyncCallback *This,
- DWORD *flags,
- DWORD *queue);
- HRESULT (STDMETHODCALLTYPE *Invoke)(
- IRtwqAsyncCallback *This,
- IRtwqAsyncResult *result);
- END_INTERFACE
- } IRtwqAsyncCallbackVtbl;
- interface IRtwqAsyncCallback {
- CONST_VTBL IRtwqAsyncCallbackVtbl* lpVtbl;
- };
- #ifdef COBJMACROS
- #ifndef WIDL_C_INLINE_WRAPPERS
- /*** IUnknown methods ***/
- #define IRtwqAsyncCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
- #define IRtwqAsyncCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
- #define IRtwqAsyncCallback_Release(This) (This)->lpVtbl->Release(This)
- /*** IRtwqAsyncCallback methods ***/
- #define IRtwqAsyncCallback_GetParameters(This,flags,queue) (This)->lpVtbl->GetParameters(This,flags,queue)
- #define IRtwqAsyncCallback_Invoke(This,result) (This)->lpVtbl->Invoke(This,result)
- #else
- /*** IUnknown methods ***/
- static FORCEINLINE HRESULT IRtwqAsyncCallback_QueryInterface(IRtwqAsyncCallback* This,REFIID riid,void **ppvObject) {
- return This->lpVtbl->QueryInterface(This,riid,ppvObject);
- }
- static FORCEINLINE ULONG IRtwqAsyncCallback_AddRef(IRtwqAsyncCallback* This) {
- return This->lpVtbl->AddRef(This);
- }
- static FORCEINLINE ULONG IRtwqAsyncCallback_Release(IRtwqAsyncCallback* This) {
- return This->lpVtbl->Release(This);
- }
- /*** IRtwqAsyncCallback methods ***/
- static FORCEINLINE HRESULT IRtwqAsyncCallback_GetParameters(IRtwqAsyncCallback* This,DWORD *flags,DWORD *queue) {
- return This->lpVtbl->GetParameters(This,flags,queue);
- }
- static FORCEINLINE HRESULT IRtwqAsyncCallback_Invoke(IRtwqAsyncCallback* This,IRtwqAsyncResult *result) {
- return This->lpVtbl->Invoke(This,result);
- }
- #endif
- #endif
- #endif
- #endif /* __IRtwqAsyncCallback_INTERFACE_DEFINED__ */
- /*****************************************************************************
- * IRtwqPlatformEvents interface
- */
- #ifndef __IRtwqPlatformEvents_INTERFACE_DEFINED__
- #define __IRtwqPlatformEvents_INTERFACE_DEFINED__
- DEFINE_GUID(IID_IRtwqPlatformEvents, 0x63d9255a, 0x7ff1, 0x4b61, 0x8f,0xaf, 0xed,0x64,0x60,0xda,0xcf,0x2b);
- #if defined(__cplusplus) && !defined(CINTERFACE)
- MIDL_INTERFACE("63d9255a-7ff1-4b61-8faf-ed6460dacf2b")
- IRtwqPlatformEvents : public IUnknown
- {
- virtual HRESULT STDMETHODCALLTYPE InitializationComplete(
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE ShutdownStart(
- ) = 0;
- virtual HRESULT STDMETHODCALLTYPE ShutdownComplete(
- ) = 0;
- };
- #ifdef __CRT_UUID_DECL
- __CRT_UUID_DECL(IRtwqPlatformEvents, 0x63d9255a, 0x7ff1, 0x4b61, 0x8f,0xaf, 0xed,0x64,0x60,0xda,0xcf,0x2b)
- #endif
- #else
- typedef struct IRtwqPlatformEventsVtbl {
- BEGIN_INTERFACE
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IRtwqPlatformEvents *This,
- REFIID riid,
- void **ppvObject);
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IRtwqPlatformEvents *This);
- ULONG (STDMETHODCALLTYPE *Release)(
- IRtwqPlatformEvents *This);
- /*** IRtwqPlatformEvents methods ***/
- HRESULT (STDMETHODCALLTYPE *InitializationComplete)(
- IRtwqPlatformEvents *This);
- HRESULT (STDMETHODCALLTYPE *ShutdownStart)(
- IRtwqPlatformEvents *This);
- HRESULT (STDMETHODCALLTYPE *ShutdownComplete)(
- IRtwqPlatformEvents *This);
- END_INTERFACE
- } IRtwqPlatformEventsVtbl;
- interface IRtwqPlatformEvents {
- CONST_VTBL IRtwqPlatformEventsVtbl* lpVtbl;
- };
- #ifdef COBJMACROS
- #ifndef WIDL_C_INLINE_WRAPPERS
- /*** IUnknown methods ***/
- #define IRtwqPlatformEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
- #define IRtwqPlatformEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
- #define IRtwqPlatformEvents_Release(This) (This)->lpVtbl->Release(This)
- /*** IRtwqPlatformEvents methods ***/
- #define IRtwqPlatformEvents_InitializationComplete(This) (This)->lpVtbl->InitializationComplete(This)
- #define IRtwqPlatformEvents_ShutdownStart(This) (This)->lpVtbl->ShutdownStart(This)
- #define IRtwqPlatformEvents_ShutdownComplete(This) (This)->lpVtbl->ShutdownComplete(This)
- #else
- /*** IUnknown methods ***/
- static FORCEINLINE HRESULT IRtwqPlatformEvents_QueryInterface(IRtwqPlatformEvents* This,REFIID riid,void **ppvObject) {
- return This->lpVtbl->QueryInterface(This,riid,ppvObject);
- }
- static FORCEINLINE ULONG IRtwqPlatformEvents_AddRef(IRtwqPlatformEvents* This) {
- return This->lpVtbl->AddRef(This);
- }
- static FORCEINLINE ULONG IRtwqPlatformEvents_Release(IRtwqPlatformEvents* This) {
- return This->lpVtbl->Release(This);
- }
- /*** IRtwqPlatformEvents methods ***/
- static FORCEINLINE HRESULT IRtwqPlatformEvents_InitializationComplete(IRtwqPlatformEvents* This) {
- return This->lpVtbl->InitializationComplete(This);
- }
- static FORCEINLINE HRESULT IRtwqPlatformEvents_ShutdownStart(IRtwqPlatformEvents* This) {
- return This->lpVtbl->ShutdownStart(This);
- }
- static FORCEINLINE HRESULT IRtwqPlatformEvents_ShutdownComplete(IRtwqPlatformEvents* This) {
- return This->lpVtbl->ShutdownComplete(This);
- }
- #endif
- #endif
- #endif
- #endif /* __IRtwqPlatformEvents_INTERFACE_DEFINED__ */
- #define RTWQ_E_ERROR(x) ((HRESULT)(0xc00d0000L+x))
- #define RTWQ_E_BUFFERTOOSMALL RTWQ_E_ERROR(14001)
- #define RTWQ_E_NOT_INITIALIZED RTWQ_E_ERROR(14006)
- #define RTWQ_E_UNEXPECTED RTWQ_E_ERROR(14011)
- #define RTWQ_E_NOT_FOUND RTWQ_E_ERROR(14037)
- #define RTWQ_E_OPERATION_CANCELLED RTWQ_E_ERROR(14061)
- #define RTWQ_E_INVALID_WORKQUEUE RTWQ_E_ERROR(14079)
- #define RTWQ_E_SHUTDOWN RTWQ_E_ERROR(16005)
- #ifdef __WINESRC__
- typedef struct tagRTWQASYNCRESULT
- {
- IRtwqAsyncResult AsyncResult;
- #else
- typedef struct tagRTWQASYNCRESULT : public IRtwqAsyncResult {
- #endif
- OVERLAPPED overlapped;
- IRtwqAsyncCallback *pCallback;
- HRESULT hrStatusResult;
- DWORD dwBytesTransferred;
- HANDLE hEvent;
- } RTWQASYNCRESULT;
- typedef void (WINAPI *RTWQPERIODICCALLBACK)(IUnknown *context);
- HRESULT WINAPI RtwqAddPeriodicCallback(RTWQPERIODICCALLBACK callback, IUnknown *context, DWORD *key);
- HRESULT WINAPI RtwqAllocateSerialWorkQueue(DWORD target_queue, DWORD *queue);
- HRESULT WINAPI RtwqAllocateWorkQueue(RTWQ_WORKQUEUE_TYPE queue_type, DWORD *queue);
- HRESULT WINAPI RtwqBeginRegisterWorkQueueWithMMCSS(DWORD queue, const WCHAR *mmcss_class, DWORD taskid, LONG priority, IRtwqAsyncCallback *callback, IUnknown *state);
- HRESULT WINAPI RtwqBeginUnregisterWorkQueueWithMMCSS(DWORD queue, IRtwqAsyncCallback *callback, IUnknown *state);
- HRESULT WINAPI RtwqCancelDeadline(HANDLE request);
- HRESULT WINAPI RtwqCancelWorkItem(RTWQWORKITEM_KEY key);
- HRESULT WINAPI RtwqCreateAsyncResult(IUnknown *object, IRtwqAsyncCallback *callback, IUnknown *state, IRtwqAsyncResult **result);
- HRESULT WINAPI RtwqEndRegisterWorkQueueWithMMCSS(IRtwqAsyncResult *result, DWORD *taskid);
- HRESULT WINAPI RtwqGetWorkQueueMMCSSClass(DWORD queue, WCHAR *mmcss_class, DWORD *length);
- HRESULT WINAPI RtwqGetWorkQueueMMCSSPriority(DWORD queue, LONG *priority);
- HRESULT WINAPI RtwqGetWorkQueueMMCSSTaskId(DWORD queue, DWORD *taskid);
- HRESULT WINAPI RtwqInvokeCallback(IRtwqAsyncResult *result);
- HRESULT WINAPI RtwqJoinWorkQueue(DWORD queue, HANDLE hFile, HANDLE *cookie);
- HRESULT WINAPI RtwqLockPlatform(void);
- HRESULT WINAPI RtwqLockSharedWorkQueue(const WCHAR *usageclass, LONG priority, DWORD *taskid, DWORD *queue);
- HRESULT WINAPI RtwqLockWorkQueue(DWORD queue);
- HRESULT WINAPI RtwqPutWaitingWorkItem(HANDLE event, LONG priority, IRtwqAsyncResult *result, RTWQWORKITEM_KEY *key);
- HRESULT WINAPI RtwqPutWorkItem(DWORD queue, LONG priority, IRtwqAsyncResult *result);
- HRESULT WINAPI RtwqRegisterPlatformEvents(IRtwqPlatformEvents *events);
- HRESULT WINAPI RtwqRegisterPlatformWithMMCSS(const WCHAR *mmcss_class, DWORD *taskid, LONG priority);
- HRESULT WINAPI RtwqRemovePeriodicCallback(DWORD key);
- HRESULT WINAPI RtwqScheduleWorkItem(IRtwqAsyncResult *result, INT64 timeout, RTWQWORKITEM_KEY *key);
- HRESULT WINAPI RtwqSetDeadline(DWORD queue_id, LONGLONG deadline, HANDLE *request);
- HRESULT WINAPI RtwqSetDeadline2(DWORD queue_id, LONGLONG deadline, LONGLONG predeadline, HANDLE *request);
- HRESULT WINAPI RtwqSetLongRunning(DWORD queue_id, WINBOOL enable);
- HRESULT WINAPI RtwqShutdown(void);
- HRESULT WINAPI RtwqStartup(void);
- HRESULT WINAPI RtwqUnjoinWorkQueue(DWORD queue, HANDLE cookie);
- HRESULT WINAPI RtwqUnlockPlatform(void);
- HRESULT WINAPI RtwqUnlockWorkQueue(DWORD queue);
- HRESULT WINAPI RtwqUnregisterPlatformEvents(IRtwqPlatformEvents *events);
- HRESULT WINAPI RtwqUnregisterPlatformFromMMCSS(void);
- /* Begin additional prototypes for all interfaces */
- /* End additional prototypes */
- #ifdef __cplusplus
- }
- #endif
- #endif /* __rtworkq_h__ */
|