1 /*** Autogenerated by WIDL 1.6 from include/windows.system.threading.idl - Do not edit ***/ 2 3 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 4 #define __REQUIRED_RPCNDR_H_VERSION__ 475 5 #endif 6 7 #include <rpc.h> 8 #include <rpcndr.h> 9 10 #ifndef COM_NO_WINDOWS_H 11 #include <windows.h> 12 #include <ole2.h> 13 #endif 14 15 #ifndef __windows_system_threading_h__ 16 #define __windows_system_threading_h__ 17 18 /* Forward declarations */ 19 20 #ifndef __TimerElapsedHandler_FWD_DEFINED__ 21 #define __TimerElapsedHandler_FWD_DEFINED__ 22 typedef interface TimerElapsedHandler TimerElapsedHandler; 23 #endif 24 25 #ifndef __TimerDestroyedHandler_FWD_DEFINED__ 26 #define __TimerDestroyedHandler_FWD_DEFINED__ 27 typedef interface TimerDestroyedHandler TimerDestroyedHandler; 28 #endif 29 30 #ifndef __WorkItemHandler_FWD_DEFINED__ 31 #define __WorkItemHandler_FWD_DEFINED__ 32 typedef interface WorkItemHandler WorkItemHandler; 33 #endif 34 35 #ifndef __IThreadPoolStatics_FWD_DEFINED__ 36 #define __IThreadPoolStatics_FWD_DEFINED__ 37 typedef interface IThreadPoolStatics IThreadPoolStatics; 38 #endif 39 40 #ifndef __IThreadPoolTimer_FWD_DEFINED__ 41 #define __IThreadPoolTimer_FWD_DEFINED__ 42 typedef interface IThreadPoolTimer IThreadPoolTimer; 43 #endif 44 45 #ifndef __IThreadPoolTimerStatics_FWD_DEFINED__ 46 #define __IThreadPoolTimerStatics_FWD_DEFINED__ 47 typedef interface IThreadPoolTimerStatics IThreadPoolTimerStatics; 48 #endif 49 50 /* Headers for imported files */ 51 52 #include <inspectable.h> 53 #include <windows.foundation.h> 54 55 #ifdef __cplusplus 56 extern "C" { 57 #endif 58 59 #ifndef __IAsyncAction_FWD_DEFINED__ 60 #define __IAsyncAction_FWD_DEFINED__ 61 typedef interface IAsyncAction IAsyncAction; 62 #endif 63 64 struct TimeSpan; 65 66 enum WorkItemPriority; 67 68 enum WorkItemOptions; 69 70 #ifndef __TimerElapsedHandler_FWD_DEFINED__ 71 #define __TimerElapsedHandler_FWD_DEFINED__ 72 typedef interface TimerElapsedHandler TimerElapsedHandler; 73 #endif 74 75 #ifndef __TimerDestroyedHandler_FWD_DEFINED__ 76 #define __TimerDestroyedHandler_FWD_DEFINED__ 77 typedef interface TimerDestroyedHandler TimerDestroyedHandler; 78 #endif 79 80 #ifndef __WorkItemHandler_FWD_DEFINED__ 81 #define __WorkItemHandler_FWD_DEFINED__ 82 typedef interface WorkItemHandler WorkItemHandler; 83 #endif 84 85 #ifndef __IThreadPoolStatics_FWD_DEFINED__ 86 #define __IThreadPoolStatics_FWD_DEFINED__ 87 typedef interface IThreadPoolStatics IThreadPoolStatics; 88 #endif 89 90 #ifndef __IThreadPoolTimer_FWD_DEFINED__ 91 #define __IThreadPoolTimer_FWD_DEFINED__ 92 typedef interface IThreadPoolTimer IThreadPoolTimer; 93 #endif 94 95 #ifndef __IThreadPoolTimerStatics_FWD_DEFINED__ 96 #define __IThreadPoolTimerStatics_FWD_DEFINED__ 97 typedef interface IThreadPoolTimerStatics IThreadPoolTimerStatics; 98 #endif 99 100 typedef enum WorkItemPriority { 101 Low = -1, 102 Normal = 0, 103 High = 1 104 } WorkItemPriority; 105 typedef enum WorkItemOptions { 106 None = 0, 107 TimeSliced = 1 108 } WorkItemOptions; 109 typedef struct TimeSpan { 110 INT64 Duration; 111 } TimeSpan; 112 /***************************************************************************** 113 * TimerElapsedHandler interface 114 */ 115 #ifndef __TimerElapsedHandler_INTERFACE_DEFINED__ 116 #define __TimerElapsedHandler_INTERFACE_DEFINED__ 117 118 DEFINE_GUID(IID_TimerElapsedHandler, 0xfaaea667, 0xfbeb, 0x49cb, 0xad,0xb2, 0x71,0x18,0x4c,0x55,0x6e,0x43); 119 #if defined(__cplusplus) && !defined(CINTERFACE) 120 MIDL_INTERFACE("faaea667-fbeb-49cb-adb2-71184c556e43") 121 TimerElapsedHandler : public IUnknown 122 { 123 virtual HRESULT STDMETHODCALLTYPE Invoke( 124 IThreadPoolTimer *timer) = 0; 125 126 }; 127 #ifdef __CRT_UUID_DECL 128 __CRT_UUID_DECL(TimerElapsedHandler, 0xfaaea667, 0xfbeb, 0x49cb, 0xad,0xb2, 0x71,0x18,0x4c,0x55,0x6e,0x43) 129 #endif 130 #else 131 typedef struct TimerElapsedHandlerVtbl { 132 BEGIN_INTERFACE 133 134 /*** IUnknown methods ***/ 135 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 136 TimerElapsedHandler* This, 137 REFIID riid, 138 void **ppvObject); 139 140 ULONG (STDMETHODCALLTYPE *AddRef)( 141 TimerElapsedHandler* This); 142 143 ULONG (STDMETHODCALLTYPE *Release)( 144 TimerElapsedHandler* This); 145 146 /*** TimerElapsedHandler methods ***/ 147 HRESULT (STDMETHODCALLTYPE *Invoke)( 148 TimerElapsedHandler* This, 149 IThreadPoolTimer *timer); 150 151 END_INTERFACE 152 } TimerElapsedHandlerVtbl; 153 interface TimerElapsedHandler { 154 CONST_VTBL TimerElapsedHandlerVtbl* lpVtbl; 155 }; 156 157 #ifdef COBJMACROS 158 #ifndef WIDL_C_INLINE_WRAPPERS 159 /*** IUnknown methods ***/ 160 #define TimerElapsedHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 161 #define TimerElapsedHandler_AddRef(This) (This)->lpVtbl->AddRef(This) 162 #define TimerElapsedHandler_Release(This) (This)->lpVtbl->Release(This) 163 /*** TimerElapsedHandler methods ***/ 164 #define TimerElapsedHandler_Invoke(This,timer) (This)->lpVtbl->Invoke(This,timer) 165 #else 166 /*** IUnknown methods ***/ 167 static FORCEINLINE HRESULT TimerElapsedHandler_QueryInterface(TimerElapsedHandler* This,REFIID riid,void **ppvObject) { 168 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 169 } 170 static FORCEINLINE ULONG TimerElapsedHandler_AddRef(TimerElapsedHandler* This) { 171 return This->lpVtbl->AddRef(This); 172 } 173 static FORCEINLINE ULONG TimerElapsedHandler_Release(TimerElapsedHandler* This) { 174 return This->lpVtbl->Release(This); 175 } 176 /*** TimerElapsedHandler methods ***/ 177 static FORCEINLINE HRESULT TimerElapsedHandler_Invoke(TimerElapsedHandler* This,IThreadPoolTimer *timer) { 178 return This->lpVtbl->Invoke(This,timer); 179 } 180 #endif 181 #endif 182 183 #endif 184 185 HRESULT STDMETHODCALLTYPE TimerElapsedHandler_Invoke_Proxy( 186 TimerElapsedHandler* This, 187 IThreadPoolTimer *timer); 188 void __RPC_STUB TimerElapsedHandler_Invoke_Stub( 189 IRpcStubBuffer* This, 190 IRpcChannelBuffer* pRpcChannelBuffer, 191 PRPC_MESSAGE pRpcMessage, 192 DWORD* pdwStubPhase); 193 194 #endif /* __TimerElapsedHandler_INTERFACE_DEFINED__ */ 195 196 /***************************************************************************** 197 * TimerDestroyedHandler interface 198 */ 199 #ifndef __TimerDestroyedHandler_INTERFACE_DEFINED__ 200 #define __TimerDestroyedHandler_INTERFACE_DEFINED__ 201 202 DEFINE_GUID(IID_TimerDestroyedHandler, 0x34ed19fa, 0x8384, 0x4eb9, 0x82,0x09, 0xfb,0x50,0x94,0xee,0xec,0x35); 203 #if defined(__cplusplus) && !defined(CINTERFACE) 204 MIDL_INTERFACE("34ed19fa-8384-4eb9-8209-fb5094eeec35") 205 TimerDestroyedHandler : public IUnknown 206 { 207 virtual HRESULT STDMETHODCALLTYPE Invoke( 208 IThreadPoolTimer *timer) = 0; 209 210 }; 211 #ifdef __CRT_UUID_DECL 212 __CRT_UUID_DECL(TimerDestroyedHandler, 0x34ed19fa, 0x8384, 0x4eb9, 0x82,0x09, 0xfb,0x50,0x94,0xee,0xec,0x35) 213 #endif 214 #else 215 typedef struct TimerDestroyedHandlerVtbl { 216 BEGIN_INTERFACE 217 218 /*** IUnknown methods ***/ 219 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 220 TimerDestroyedHandler* This, 221 REFIID riid, 222 void **ppvObject); 223 224 ULONG (STDMETHODCALLTYPE *AddRef)( 225 TimerDestroyedHandler* This); 226 227 ULONG (STDMETHODCALLTYPE *Release)( 228 TimerDestroyedHandler* This); 229 230 /*** TimerDestroyedHandler methods ***/ 231 HRESULT (STDMETHODCALLTYPE *Invoke)( 232 TimerDestroyedHandler* This, 233 IThreadPoolTimer *timer); 234 235 END_INTERFACE 236 } TimerDestroyedHandlerVtbl; 237 interface TimerDestroyedHandler { 238 CONST_VTBL TimerDestroyedHandlerVtbl* lpVtbl; 239 }; 240 241 #ifdef COBJMACROS 242 #ifndef WIDL_C_INLINE_WRAPPERS 243 /*** IUnknown methods ***/ 244 #define TimerDestroyedHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 245 #define TimerDestroyedHandler_AddRef(This) (This)->lpVtbl->AddRef(This) 246 #define TimerDestroyedHandler_Release(This) (This)->lpVtbl->Release(This) 247 /*** TimerDestroyedHandler methods ***/ 248 #define TimerDestroyedHandler_Invoke(This,timer) (This)->lpVtbl->Invoke(This,timer) 249 #else 250 /*** IUnknown methods ***/ 251 static FORCEINLINE HRESULT TimerDestroyedHandler_QueryInterface(TimerDestroyedHandler* This,REFIID riid,void **ppvObject) { 252 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 253 } 254 static FORCEINLINE ULONG TimerDestroyedHandler_AddRef(TimerDestroyedHandler* This) { 255 return This->lpVtbl->AddRef(This); 256 } 257 static FORCEINLINE ULONG TimerDestroyedHandler_Release(TimerDestroyedHandler* This) { 258 return This->lpVtbl->Release(This); 259 } 260 /*** TimerDestroyedHandler methods ***/ 261 static FORCEINLINE HRESULT TimerDestroyedHandler_Invoke(TimerDestroyedHandler* This,IThreadPoolTimer *timer) { 262 return This->lpVtbl->Invoke(This,timer); 263 } 264 #endif 265 #endif 266 267 #endif 268 269 HRESULT STDMETHODCALLTYPE TimerDestroyedHandler_Invoke_Proxy( 270 TimerDestroyedHandler* This, 271 IThreadPoolTimer *timer); 272 void __RPC_STUB TimerDestroyedHandler_Invoke_Stub( 273 IRpcStubBuffer* This, 274 IRpcChannelBuffer* pRpcChannelBuffer, 275 PRPC_MESSAGE pRpcMessage, 276 DWORD* pdwStubPhase); 277 278 #endif /* __TimerDestroyedHandler_INTERFACE_DEFINED__ */ 279 280 /***************************************************************************** 281 * WorkItemHandler interface 282 */ 283 #ifndef __WorkItemHandler_INTERFACE_DEFINED__ 284 #define __WorkItemHandler_INTERFACE_DEFINED__ 285 286 DEFINE_GUID(IID_WorkItemHandler, 0x1d1a8b8b, 0xfa66, 0x414f, 0x9c,0xbd, 0xb6,0x5f,0xc9,0x9d,0x17,0xfa); 287 #if defined(__cplusplus) && !defined(CINTERFACE) 288 MIDL_INTERFACE("1d1a8b8b-fa66-414f-9cbd-b65fc99d17fa") 289 WorkItemHandler : public IUnknown 290 { 291 virtual HRESULT STDMETHODCALLTYPE Invoke( 292 IAsyncAction *operation) = 0; 293 294 }; 295 #ifdef __CRT_UUID_DECL 296 __CRT_UUID_DECL(WorkItemHandler, 0x1d1a8b8b, 0xfa66, 0x414f, 0x9c,0xbd, 0xb6,0x5f,0xc9,0x9d,0x17,0xfa) 297 #endif 298 #else 299 typedef struct WorkItemHandlerVtbl { 300 BEGIN_INTERFACE 301 302 /*** IUnknown methods ***/ 303 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 304 WorkItemHandler* This, 305 REFIID riid, 306 void **ppvObject); 307 308 ULONG (STDMETHODCALLTYPE *AddRef)( 309 WorkItemHandler* This); 310 311 ULONG (STDMETHODCALLTYPE *Release)( 312 WorkItemHandler* This); 313 314 /*** WorkItemHandler methods ***/ 315 HRESULT (STDMETHODCALLTYPE *Invoke)( 316 WorkItemHandler* This, 317 IAsyncAction *operation); 318 319 END_INTERFACE 320 } WorkItemHandlerVtbl; 321 interface WorkItemHandler { 322 CONST_VTBL WorkItemHandlerVtbl* lpVtbl; 323 }; 324 325 #ifdef COBJMACROS 326 #ifndef WIDL_C_INLINE_WRAPPERS 327 /*** IUnknown methods ***/ 328 #define WorkItemHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 329 #define WorkItemHandler_AddRef(This) (This)->lpVtbl->AddRef(This) 330 #define WorkItemHandler_Release(This) (This)->lpVtbl->Release(This) 331 /*** WorkItemHandler methods ***/ 332 #define WorkItemHandler_Invoke(This,operation) (This)->lpVtbl->Invoke(This,operation) 333 #else 334 /*** IUnknown methods ***/ 335 static FORCEINLINE HRESULT WorkItemHandler_QueryInterface(WorkItemHandler* This,REFIID riid,void **ppvObject) { 336 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 337 } 338 static FORCEINLINE ULONG WorkItemHandler_AddRef(WorkItemHandler* This) { 339 return This->lpVtbl->AddRef(This); 340 } 341 static FORCEINLINE ULONG WorkItemHandler_Release(WorkItemHandler* This) { 342 return This->lpVtbl->Release(This); 343 } 344 /*** WorkItemHandler methods ***/ 345 static FORCEINLINE HRESULT WorkItemHandler_Invoke(WorkItemHandler* This,IAsyncAction *operation) { 346 return This->lpVtbl->Invoke(This,operation); 347 } 348 #endif 349 #endif 350 351 #endif 352 353 HRESULT STDMETHODCALLTYPE WorkItemHandler_Invoke_Proxy( 354 WorkItemHandler* This, 355 IAsyncAction *operation); 356 void __RPC_STUB WorkItemHandler_Invoke_Stub( 357 IRpcStubBuffer* This, 358 IRpcChannelBuffer* pRpcChannelBuffer, 359 PRPC_MESSAGE pRpcMessage, 360 DWORD* pdwStubPhase); 361 362 #endif /* __WorkItemHandler_INTERFACE_DEFINED__ */ 363 364 /***************************************************************************** 365 * IThreadPoolStatics interface 366 */ 367 #ifndef __IThreadPoolStatics_INTERFACE_DEFINED__ 368 #define __IThreadPoolStatics_INTERFACE_DEFINED__ 369 370 DEFINE_GUID(IID_IThreadPoolStatics, 0xb6bf67dd, 0x84bd, 0x44f8, 0xac,0x1c, 0x93,0xeb,0xcb,0x9d,0xba,0x91); 371 #if defined(__cplusplus) && !defined(CINTERFACE) 372 MIDL_INTERFACE("b6bf67dd-84bd-44f8-ac1c-93ebcb9dba91") 373 IThreadPoolStatics : public IInspectable 374 { 375 virtual HRESULT STDMETHODCALLTYPE RunAsync( 376 WorkItemHandler *handler, 377 IAsyncAction **operation) = 0; 378 379 virtual HRESULT STDMETHODCALLTYPE RunWithPriorityAsync( 380 WorkItemHandler *handler, 381 WorkItemPriority priority, 382 IAsyncAction **operation) = 0; 383 384 virtual HRESULT STDMETHODCALLTYPE RunWithPriorityAndOptionsAsync( 385 WorkItemHandler *handler, 386 WorkItemPriority priority, 387 WorkItemOptions options, 388 IAsyncAction **operation) = 0; 389 390 }; 391 #ifdef __CRT_UUID_DECL 392 __CRT_UUID_DECL(IThreadPoolStatics, 0xb6bf67dd, 0x84bd, 0x44f8, 0xac,0x1c, 0x93,0xeb,0xcb,0x9d,0xba,0x91) 393 #endif 394 #else 395 typedef struct IThreadPoolStaticsVtbl { 396 BEGIN_INTERFACE 397 398 /*** IUnknown methods ***/ 399 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 400 IThreadPoolStatics* This, 401 REFIID riid, 402 void **ppvObject); 403 404 ULONG (STDMETHODCALLTYPE *AddRef)( 405 IThreadPoolStatics* This); 406 407 ULONG (STDMETHODCALLTYPE *Release)( 408 IThreadPoolStatics* This); 409 410 /*** IInspectable methods ***/ 411 HRESULT (STDMETHODCALLTYPE *GetIids)( 412 IThreadPoolStatics* This, 413 ULONG *iidCount, 414 IID **iids); 415 416 HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( 417 IThreadPoolStatics* This, 418 HSTRING *className); 419 420 HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( 421 IThreadPoolStatics* This, 422 TrustLevel *trustLevel); 423 424 /*** IThreadPoolStatics methods ***/ 425 HRESULT (STDMETHODCALLTYPE *RunAsync)( 426 IThreadPoolStatics* This, 427 WorkItemHandler *handler, 428 IAsyncAction **operation); 429 430 HRESULT (STDMETHODCALLTYPE *RunWithPriorityAsync)( 431 IThreadPoolStatics* This, 432 WorkItemHandler *handler, 433 WorkItemPriority priority, 434 IAsyncAction **operation); 435 436 HRESULT (STDMETHODCALLTYPE *RunWithPriorityAndOptionsAsync)( 437 IThreadPoolStatics* This, 438 WorkItemHandler *handler, 439 WorkItemPriority priority, 440 WorkItemOptions options, 441 IAsyncAction **operation); 442 443 END_INTERFACE 444 } IThreadPoolStaticsVtbl; 445 interface IThreadPoolStatics { 446 CONST_VTBL IThreadPoolStaticsVtbl* lpVtbl; 447 }; 448 449 #ifdef COBJMACROS 450 #ifndef WIDL_C_INLINE_WRAPPERS 451 /*** IUnknown methods ***/ 452 #define IThreadPoolStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 453 #define IThreadPoolStatics_AddRef(This) (This)->lpVtbl->AddRef(This) 454 #define IThreadPoolStatics_Release(This) (This)->lpVtbl->Release(This) 455 /*** IInspectable methods ***/ 456 #define IThreadPoolStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) 457 #define IThreadPoolStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) 458 #define IThreadPoolStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) 459 /*** IThreadPoolStatics methods ***/ 460 #define IThreadPoolStatics_RunAsync(This,handler,operation) (This)->lpVtbl->RunAsync(This,handler,operation) 461 #define IThreadPoolStatics_RunWithPriorityAsync(This,handler,priority,operation) (This)->lpVtbl->RunWithPriorityAsync(This,handler,priority,operation) 462 #define IThreadPoolStatics_RunWithPriorityAndOptionsAsync(This,handler,priority,options,operation) (This)->lpVtbl->RunWithPriorityAndOptionsAsync(This,handler,priority,options,operation) 463 #else 464 /*** IUnknown methods ***/ 465 static FORCEINLINE HRESULT IThreadPoolStatics_QueryInterface(IThreadPoolStatics* This,REFIID riid,void **ppvObject) { 466 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 467 } 468 static FORCEINLINE ULONG IThreadPoolStatics_AddRef(IThreadPoolStatics* This) { 469 return This->lpVtbl->AddRef(This); 470 } 471 static FORCEINLINE ULONG IThreadPoolStatics_Release(IThreadPoolStatics* This) { 472 return This->lpVtbl->Release(This); 473 } 474 /*** IInspectable methods ***/ 475 static FORCEINLINE HRESULT IThreadPoolStatics_GetIids(IThreadPoolStatics* This,ULONG *iidCount,IID **iids) { 476 return This->lpVtbl->GetIids(This,iidCount,iids); 477 } 478 static FORCEINLINE HRESULT IThreadPoolStatics_GetRuntimeClassName(IThreadPoolStatics* This,HSTRING *className) { 479 return This->lpVtbl->GetRuntimeClassName(This,className); 480 } 481 static FORCEINLINE HRESULT IThreadPoolStatics_GetTrustLevel(IThreadPoolStatics* This,TrustLevel *trustLevel) { 482 return This->lpVtbl->GetTrustLevel(This,trustLevel); 483 } 484 /*** IThreadPoolStatics methods ***/ 485 static FORCEINLINE HRESULT IThreadPoolStatics_RunAsync(IThreadPoolStatics* This,WorkItemHandler *handler,IAsyncAction **operation) { 486 return This->lpVtbl->RunAsync(This,handler,operation); 487 } 488 static FORCEINLINE HRESULT IThreadPoolStatics_RunWithPriorityAsync(IThreadPoolStatics* This,WorkItemHandler *handler,WorkItemPriority priority,IAsyncAction **operation) { 489 return This->lpVtbl->RunWithPriorityAsync(This,handler,priority,operation); 490 } 491 static FORCEINLINE HRESULT IThreadPoolStatics_RunWithPriorityAndOptionsAsync(IThreadPoolStatics* This,WorkItemHandler *handler,WorkItemPriority priority,WorkItemOptions options,IAsyncAction **operation) { 492 return This->lpVtbl->RunWithPriorityAndOptionsAsync(This,handler,priority,options,operation); 493 } 494 #endif 495 #endif 496 497 #endif 498 499 HRESULT STDMETHODCALLTYPE IThreadPoolStatics_RunAsync_Proxy( 500 IThreadPoolStatics* This, 501 WorkItemHandler *handler, 502 IAsyncAction **operation); 503 void __RPC_STUB IThreadPoolStatics_RunAsync_Stub( 504 IRpcStubBuffer* This, 505 IRpcChannelBuffer* pRpcChannelBuffer, 506 PRPC_MESSAGE pRpcMessage, 507 DWORD* pdwStubPhase); 508 HRESULT STDMETHODCALLTYPE IThreadPoolStatics_RunWithPriorityAsync_Proxy( 509 IThreadPoolStatics* This, 510 WorkItemHandler *handler, 511 WorkItemPriority priority, 512 IAsyncAction **operation); 513 void __RPC_STUB IThreadPoolStatics_RunWithPriorityAsync_Stub( 514 IRpcStubBuffer* This, 515 IRpcChannelBuffer* pRpcChannelBuffer, 516 PRPC_MESSAGE pRpcMessage, 517 DWORD* pdwStubPhase); 518 HRESULT STDMETHODCALLTYPE IThreadPoolStatics_RunWithPriorityAndOptionsAsync_Proxy( 519 IThreadPoolStatics* This, 520 WorkItemHandler *handler, 521 WorkItemPriority priority, 522 WorkItemOptions options, 523 IAsyncAction **operation); 524 void __RPC_STUB IThreadPoolStatics_RunWithPriorityAndOptionsAsync_Stub( 525 IRpcStubBuffer* This, 526 IRpcChannelBuffer* pRpcChannelBuffer, 527 PRPC_MESSAGE pRpcMessage, 528 DWORD* pdwStubPhase); 529 530 #endif /* __IThreadPoolStatics_INTERFACE_DEFINED__ */ 531 532 /***************************************************************************** 533 * IThreadPoolTimer interface 534 */ 535 #ifndef __IThreadPoolTimer_INTERFACE_DEFINED__ 536 #define __IThreadPoolTimer_INTERFACE_DEFINED__ 537 538 DEFINE_GUID(IID_IThreadPoolTimer, 0x594ebe78, 0x55ea, 0x4a88, 0xa5,0x0d, 0x34,0x02,0xae,0x1f,0x9c,0xf2); 539 #if defined(__cplusplus) && !defined(CINTERFACE) 540 MIDL_INTERFACE("594ebe78-55ea-4a88-a50d-3402ae1f9cf2") 541 IThreadPoolTimer : public IInspectable 542 { 543 virtual HRESULT STDMETHODCALLTYPE get_Period( 544 TimeSpan *value) = 0; 545 546 virtual HRESULT STDMETHODCALLTYPE get_Delay( 547 TimeSpan *value) = 0; 548 549 virtual HRESULT STDMETHODCALLTYPE Cancel( 550 ) = 0; 551 552 }; 553 #ifdef __CRT_UUID_DECL 554 __CRT_UUID_DECL(IThreadPoolTimer, 0x594ebe78, 0x55ea, 0x4a88, 0xa5,0x0d, 0x34,0x02,0xae,0x1f,0x9c,0xf2) 555 #endif 556 #else 557 typedef struct IThreadPoolTimerVtbl { 558 BEGIN_INTERFACE 559 560 /*** IUnknown methods ***/ 561 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 562 IThreadPoolTimer* This, 563 REFIID riid, 564 void **ppvObject); 565 566 ULONG (STDMETHODCALLTYPE *AddRef)( 567 IThreadPoolTimer* This); 568 569 ULONG (STDMETHODCALLTYPE *Release)( 570 IThreadPoolTimer* This); 571 572 /*** IInspectable methods ***/ 573 HRESULT (STDMETHODCALLTYPE *GetIids)( 574 IThreadPoolTimer* This, 575 ULONG *iidCount, 576 IID **iids); 577 578 HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( 579 IThreadPoolTimer* This, 580 HSTRING *className); 581 582 HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( 583 IThreadPoolTimer* This, 584 TrustLevel *trustLevel); 585 586 /*** IThreadPoolTimer methods ***/ 587 HRESULT (STDMETHODCALLTYPE *get_Period)( 588 IThreadPoolTimer* This, 589 TimeSpan *value); 590 591 HRESULT (STDMETHODCALLTYPE *get_Delay)( 592 IThreadPoolTimer* This, 593 TimeSpan *value); 594 595 HRESULT (STDMETHODCALLTYPE *Cancel)( 596 IThreadPoolTimer* This); 597 598 END_INTERFACE 599 } IThreadPoolTimerVtbl; 600 interface IThreadPoolTimer { 601 CONST_VTBL IThreadPoolTimerVtbl* lpVtbl; 602 }; 603 604 #ifdef COBJMACROS 605 #ifndef WIDL_C_INLINE_WRAPPERS 606 /*** IUnknown methods ***/ 607 #define IThreadPoolTimer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 608 #define IThreadPoolTimer_AddRef(This) (This)->lpVtbl->AddRef(This) 609 #define IThreadPoolTimer_Release(This) (This)->lpVtbl->Release(This) 610 /*** IInspectable methods ***/ 611 #define IThreadPoolTimer_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) 612 #define IThreadPoolTimer_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) 613 #define IThreadPoolTimer_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) 614 /*** IThreadPoolTimer methods ***/ 615 #define IThreadPoolTimer_get_Period(This,value) (This)->lpVtbl->get_Period(This,value) 616 #define IThreadPoolTimer_get_Delay(This,value) (This)->lpVtbl->get_Delay(This,value) 617 #define IThreadPoolTimer_Cancel(This) (This)->lpVtbl->Cancel(This) 618 #else 619 /*** IUnknown methods ***/ 620 static FORCEINLINE HRESULT IThreadPoolTimer_QueryInterface(IThreadPoolTimer* This,REFIID riid,void **ppvObject) { 621 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 622 } 623 static FORCEINLINE ULONG IThreadPoolTimer_AddRef(IThreadPoolTimer* This) { 624 return This->lpVtbl->AddRef(This); 625 } 626 static FORCEINLINE ULONG IThreadPoolTimer_Release(IThreadPoolTimer* This) { 627 return This->lpVtbl->Release(This); 628 } 629 /*** IInspectable methods ***/ 630 static FORCEINLINE HRESULT IThreadPoolTimer_GetIids(IThreadPoolTimer* This,ULONG *iidCount,IID **iids) { 631 return This->lpVtbl->GetIids(This,iidCount,iids); 632 } 633 static FORCEINLINE HRESULT IThreadPoolTimer_GetRuntimeClassName(IThreadPoolTimer* This,HSTRING *className) { 634 return This->lpVtbl->GetRuntimeClassName(This,className); 635 } 636 static FORCEINLINE HRESULT IThreadPoolTimer_GetTrustLevel(IThreadPoolTimer* This,TrustLevel *trustLevel) { 637 return This->lpVtbl->GetTrustLevel(This,trustLevel); 638 } 639 /*** IThreadPoolTimer methods ***/ 640 static FORCEINLINE HRESULT IThreadPoolTimer_get_Period(IThreadPoolTimer* This,TimeSpan *value) { 641 return This->lpVtbl->get_Period(This,value); 642 } 643 static FORCEINLINE HRESULT IThreadPoolTimer_get_Delay(IThreadPoolTimer* This,TimeSpan *value) { 644 return This->lpVtbl->get_Delay(This,value); 645 } 646 static FORCEINLINE HRESULT IThreadPoolTimer_Cancel(IThreadPoolTimer* This) { 647 return This->lpVtbl->Cancel(This); 648 } 649 #endif 650 #endif 651 652 #endif 653 654 HRESULT STDMETHODCALLTYPE IThreadPoolTimer_get_Period_Proxy( 655 IThreadPoolTimer* This, 656 TimeSpan *value); 657 void __RPC_STUB IThreadPoolTimer_get_Period_Stub( 658 IRpcStubBuffer* This, 659 IRpcChannelBuffer* pRpcChannelBuffer, 660 PRPC_MESSAGE pRpcMessage, 661 DWORD* pdwStubPhase); 662 HRESULT STDMETHODCALLTYPE IThreadPoolTimer_get_Delay_Proxy( 663 IThreadPoolTimer* This, 664 TimeSpan *value); 665 void __RPC_STUB IThreadPoolTimer_get_Delay_Stub( 666 IRpcStubBuffer* This, 667 IRpcChannelBuffer* pRpcChannelBuffer, 668 PRPC_MESSAGE pRpcMessage, 669 DWORD* pdwStubPhase); 670 HRESULT STDMETHODCALLTYPE IThreadPoolTimer_Cancel_Proxy( 671 IThreadPoolTimer* This); 672 void __RPC_STUB IThreadPoolTimer_Cancel_Stub( 673 IRpcStubBuffer* This, 674 IRpcChannelBuffer* pRpcChannelBuffer, 675 PRPC_MESSAGE pRpcMessage, 676 DWORD* pdwStubPhase); 677 678 #endif /* __IThreadPoolTimer_INTERFACE_DEFINED__ */ 679 680 /***************************************************************************** 681 * IThreadPoolTimerStatics interface 682 */ 683 #ifndef __IThreadPoolTimerStatics_INTERFACE_DEFINED__ 684 #define __IThreadPoolTimerStatics_INTERFACE_DEFINED__ 685 686 DEFINE_GUID(IID_IThreadPoolTimerStatics, 0x1a8a9d02, 0xe482, 0x461b, 0xb8,0xc7, 0x8e,0xfa,0xd1,0xcc,0xe5,0x90); 687 #if defined(__cplusplus) && !defined(CINTERFACE) 688 MIDL_INTERFACE("1a8a9d02-e482-461b-b8c7-8efad1cce590") 689 IThreadPoolTimerStatics : public IInspectable 690 { 691 virtual HRESULT STDMETHODCALLTYPE CreatePeriodicTimer( 692 TimerElapsedHandler *handler, 693 TimeSpan period, 694 IThreadPoolTimer **timer) = 0; 695 696 virtual HRESULT STDMETHODCALLTYPE CreateTimer( 697 TimerElapsedHandler *handler, 698 TimeSpan delay, 699 IThreadPoolTimer **timer) = 0; 700 701 virtual HRESULT STDMETHODCALLTYPE CreatePeriodicTimerWithCompletion( 702 TimerElapsedHandler *handler, 703 TimeSpan period, 704 TimerDestroyedHandler *destroyed, 705 IThreadPoolTimer **timer) = 0; 706 707 virtual HRESULT STDMETHODCALLTYPE CreateTimerWithCompletion( 708 TimerElapsedHandler *handler, 709 TimeSpan delay, 710 TimerDestroyedHandler *destroyed, 711 IThreadPoolTimer **timer) = 0; 712 713 }; 714 #ifdef __CRT_UUID_DECL 715 __CRT_UUID_DECL(IThreadPoolTimerStatics, 0x1a8a9d02, 0xe482, 0x461b, 0xb8,0xc7, 0x8e,0xfa,0xd1,0xcc,0xe5,0x90) 716 #endif 717 #else 718 typedef struct IThreadPoolTimerStaticsVtbl { 719 BEGIN_INTERFACE 720 721 /*** IUnknown methods ***/ 722 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 723 IThreadPoolTimerStatics* This, 724 REFIID riid, 725 void **ppvObject); 726 727 ULONG (STDMETHODCALLTYPE *AddRef)( 728 IThreadPoolTimerStatics* This); 729 730 ULONG (STDMETHODCALLTYPE *Release)( 731 IThreadPoolTimerStatics* This); 732 733 /*** IInspectable methods ***/ 734 HRESULT (STDMETHODCALLTYPE *GetIids)( 735 IThreadPoolTimerStatics* This, 736 ULONG *iidCount, 737 IID **iids); 738 739 HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( 740 IThreadPoolTimerStatics* This, 741 HSTRING *className); 742 743 HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( 744 IThreadPoolTimerStatics* This, 745 TrustLevel *trustLevel); 746 747 /*** IThreadPoolTimerStatics methods ***/ 748 HRESULT (STDMETHODCALLTYPE *CreatePeriodicTimer)( 749 IThreadPoolTimerStatics* This, 750 TimerElapsedHandler *handler, 751 TimeSpan period, 752 IThreadPoolTimer **timer); 753 754 HRESULT (STDMETHODCALLTYPE *CreateTimer)( 755 IThreadPoolTimerStatics* This, 756 TimerElapsedHandler *handler, 757 TimeSpan delay, 758 IThreadPoolTimer **timer); 759 760 HRESULT (STDMETHODCALLTYPE *CreatePeriodicTimerWithCompletion)( 761 IThreadPoolTimerStatics* This, 762 TimerElapsedHandler *handler, 763 TimeSpan period, 764 TimerDestroyedHandler *destroyed, 765 IThreadPoolTimer **timer); 766 767 HRESULT (STDMETHODCALLTYPE *CreateTimerWithCompletion)( 768 IThreadPoolTimerStatics* This, 769 TimerElapsedHandler *handler, 770 TimeSpan delay, 771 TimerDestroyedHandler *destroyed, 772 IThreadPoolTimer **timer); 773 774 END_INTERFACE 775 } IThreadPoolTimerStaticsVtbl; 776 interface IThreadPoolTimerStatics { 777 CONST_VTBL IThreadPoolTimerStaticsVtbl* lpVtbl; 778 }; 779 780 #ifdef COBJMACROS 781 #ifndef WIDL_C_INLINE_WRAPPERS 782 /*** IUnknown methods ***/ 783 #define IThreadPoolTimerStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 784 #define IThreadPoolTimerStatics_AddRef(This) (This)->lpVtbl->AddRef(This) 785 #define IThreadPoolTimerStatics_Release(This) (This)->lpVtbl->Release(This) 786 /*** IInspectable methods ***/ 787 #define IThreadPoolTimerStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) 788 #define IThreadPoolTimerStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) 789 #define IThreadPoolTimerStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) 790 /*** IThreadPoolTimerStatics methods ***/ 791 #define IThreadPoolTimerStatics_CreatePeriodicTimer(This,handler,period,timer) (This)->lpVtbl->CreatePeriodicTimer(This,handler,period,timer) 792 #define IThreadPoolTimerStatics_CreateTimer(This,handler,delay,timer) (This)->lpVtbl->CreateTimer(This,handler,delay,timer) 793 #define IThreadPoolTimerStatics_CreatePeriodicTimerWithCompletion(This,handler,period,destroyed,timer) (This)->lpVtbl->CreatePeriodicTimerWithCompletion(This,handler,period,destroyed,timer) 794 #define IThreadPoolTimerStatics_CreateTimerWithCompletion(This,handler,delay,destroyed,timer) (This)->lpVtbl->CreateTimerWithCompletion(This,handler,delay,destroyed,timer) 795 #else 796 /*** IUnknown methods ***/ 797 static FORCEINLINE HRESULT IThreadPoolTimerStatics_QueryInterface(IThreadPoolTimerStatics* This,REFIID riid,void **ppvObject) { 798 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 799 } 800 static FORCEINLINE ULONG IThreadPoolTimerStatics_AddRef(IThreadPoolTimerStatics* This) { 801 return This->lpVtbl->AddRef(This); 802 } 803 static FORCEINLINE ULONG IThreadPoolTimerStatics_Release(IThreadPoolTimerStatics* This) { 804 return This->lpVtbl->Release(This); 805 } 806 /*** IInspectable methods ***/ 807 static FORCEINLINE HRESULT IThreadPoolTimerStatics_GetIids(IThreadPoolTimerStatics* This,ULONG *iidCount,IID **iids) { 808 return This->lpVtbl->GetIids(This,iidCount,iids); 809 } 810 static FORCEINLINE HRESULT IThreadPoolTimerStatics_GetRuntimeClassName(IThreadPoolTimerStatics* This,HSTRING *className) { 811 return This->lpVtbl->GetRuntimeClassName(This,className); 812 } 813 static FORCEINLINE HRESULT IThreadPoolTimerStatics_GetTrustLevel(IThreadPoolTimerStatics* This,TrustLevel *trustLevel) { 814 return This->lpVtbl->GetTrustLevel(This,trustLevel); 815 } 816 /*** IThreadPoolTimerStatics methods ***/ 817 static FORCEINLINE HRESULT IThreadPoolTimerStatics_CreatePeriodicTimer(IThreadPoolTimerStatics* This,TimerElapsedHandler *handler,TimeSpan period,IThreadPoolTimer **timer) { 818 return This->lpVtbl->CreatePeriodicTimer(This,handler,period,timer); 819 } 820 static FORCEINLINE HRESULT IThreadPoolTimerStatics_CreateTimer(IThreadPoolTimerStatics* This,TimerElapsedHandler *handler,TimeSpan delay,IThreadPoolTimer **timer) { 821 return This->lpVtbl->CreateTimer(This,handler,delay,timer); 822 } 823 static FORCEINLINE HRESULT IThreadPoolTimerStatics_CreatePeriodicTimerWithCompletion(IThreadPoolTimerStatics* This,TimerElapsedHandler *handler,TimeSpan period,TimerDestroyedHandler *destroyed,IThreadPoolTimer **timer) { 824 return This->lpVtbl->CreatePeriodicTimerWithCompletion(This,handler,period,destroyed,timer); 825 } 826 static FORCEINLINE HRESULT IThreadPoolTimerStatics_CreateTimerWithCompletion(IThreadPoolTimerStatics* This,TimerElapsedHandler *handler,TimeSpan delay,TimerDestroyedHandler *destroyed,IThreadPoolTimer **timer) { 827 return This->lpVtbl->CreateTimerWithCompletion(This,handler,delay,destroyed,timer); 828 } 829 #endif 830 #endif 831 832 #endif 833 834 HRESULT STDMETHODCALLTYPE IThreadPoolTimerStatics_CreatePeriodicTimer_Proxy( 835 IThreadPoolTimerStatics* This, 836 TimerElapsedHandler *handler, 837 TimeSpan period, 838 IThreadPoolTimer **timer); 839 void __RPC_STUB IThreadPoolTimerStatics_CreatePeriodicTimer_Stub( 840 IRpcStubBuffer* This, 841 IRpcChannelBuffer* pRpcChannelBuffer, 842 PRPC_MESSAGE pRpcMessage, 843 DWORD* pdwStubPhase); 844 HRESULT STDMETHODCALLTYPE IThreadPoolTimerStatics_CreateTimer_Proxy( 845 IThreadPoolTimerStatics* This, 846 TimerElapsedHandler *handler, 847 TimeSpan delay, 848 IThreadPoolTimer **timer); 849 void __RPC_STUB IThreadPoolTimerStatics_CreateTimer_Stub( 850 IRpcStubBuffer* This, 851 IRpcChannelBuffer* pRpcChannelBuffer, 852 PRPC_MESSAGE pRpcMessage, 853 DWORD* pdwStubPhase); 854 HRESULT STDMETHODCALLTYPE IThreadPoolTimerStatics_CreatePeriodicTimerWithCompletion_Proxy( 855 IThreadPoolTimerStatics* This, 856 TimerElapsedHandler *handler, 857 TimeSpan period, 858 TimerDestroyedHandler *destroyed, 859 IThreadPoolTimer **timer); 860 void __RPC_STUB IThreadPoolTimerStatics_CreatePeriodicTimerWithCompletion_Stub( 861 IRpcStubBuffer* This, 862 IRpcChannelBuffer* pRpcChannelBuffer, 863 PRPC_MESSAGE pRpcMessage, 864 DWORD* pdwStubPhase); 865 HRESULT STDMETHODCALLTYPE IThreadPoolTimerStatics_CreateTimerWithCompletion_Proxy( 866 IThreadPoolTimerStatics* This, 867 TimerElapsedHandler *handler, 868 TimeSpan delay, 869 TimerDestroyedHandler *destroyed, 870 IThreadPoolTimer **timer); 871 void __RPC_STUB IThreadPoolTimerStatics_CreateTimerWithCompletion_Stub( 872 IRpcStubBuffer* This, 873 IRpcChannelBuffer* pRpcChannelBuffer, 874 PRPC_MESSAGE pRpcMessage, 875 DWORD* pdwStubPhase); 876 877 #endif /* __IThreadPoolTimerStatics_INTERFACE_DEFINED__ */ 878 879 /* Begin additional prototypes for all interfaces */ 880 881 882 /* End additional prototypes */ 883 884 #ifdef __cplusplus 885 } 886 #endif 887 888 #endif /* __windows_system_threading_h__ */ 889