1 /*** Autogenerated by WIDL 1.6 from include/activprof.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 __activprof_h__ 16 #define __activprof_h__ 17 18 /* Forward declarations */ 19 20 #ifndef __IActiveScriptProfilerControl_FWD_DEFINED__ 21 #define __IActiveScriptProfilerControl_FWD_DEFINED__ 22 typedef interface IActiveScriptProfilerControl IActiveScriptProfilerControl; 23 #endif 24 25 #ifndef __IActiveScriptProfilerControl2_FWD_DEFINED__ 26 #define __IActiveScriptProfilerControl2_FWD_DEFINED__ 27 typedef interface IActiveScriptProfilerControl2 IActiveScriptProfilerControl2; 28 #endif 29 30 #ifndef __IActiveScriptProfilerHeapEnum_FWD_DEFINED__ 31 #define __IActiveScriptProfilerHeapEnum_FWD_DEFINED__ 32 typedef interface IActiveScriptProfilerHeapEnum IActiveScriptProfilerHeapEnum; 33 #endif 34 35 #ifndef __IActiveScriptProfilerControl3_FWD_DEFINED__ 36 #define __IActiveScriptProfilerControl3_FWD_DEFINED__ 37 typedef interface IActiveScriptProfilerControl3 IActiveScriptProfilerControl3; 38 #endif 39 40 #ifndef __IActiveScriptProfilerCallback_FWD_DEFINED__ 41 #define __IActiveScriptProfilerCallback_FWD_DEFINED__ 42 typedef interface IActiveScriptProfilerCallback IActiveScriptProfilerCallback; 43 #endif 44 45 #ifndef __IActiveScriptProfilerCallback2_FWD_DEFINED__ 46 #define __IActiveScriptProfilerCallback2_FWD_DEFINED__ 47 typedef interface IActiveScriptProfilerCallback2 IActiveScriptProfilerCallback2; 48 #endif 49 50 #ifndef __IActiveScriptProfilerCallback3_FWD_DEFINED__ 51 #define __IActiveScriptProfilerCallback3_FWD_DEFINED__ 52 typedef interface IActiveScriptProfilerCallback3 IActiveScriptProfilerCallback3; 53 #endif 54 55 /* Headers for imported files */ 56 57 #include <unknwn.h> 58 59 #ifdef __cplusplus 60 extern "C" { 61 #endif 62 63 /** 64 * This file is part of the mingw-w64 runtime package. 65 * No warranty is given; refer to the file DISCLAIMER within this package. 66 */ 67 68 #include <winapifamily.h> 69 70 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 71 72 const HRESULT ACTIVPROF_E_PROFILER_PRESENT = MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0200); 73 const HRESULT ACTIVPROF_E_PROFILER_ABSENT = MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0201); 74 const HRESULT ACTIVPROF_E_UNABLE_TO_APPLY_ACTION = MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0202); 75 const ULONG PROFILER_HEAP_OBJECT_NAME_ID_UNAVAILABLE=(ULONG)-1; 76 77 #ifndef __ActivProf_h 78 #define __ActivProf_h 79 80 81 #ifndef _NO_SCRIPT_GUIDS 82 DEFINE_GUID(IID_IActiveScriptProfilerHeapEnum, 0x32e4694e, 0xd37, 0x419b, 0xb9, 0x3d, 0xfa, 0x20, 0xde, 0xd6, 0xe8, 0xea); 83 DEFINE_GUID(IID_IActiveScriptProfilerControl3, 0xb403015, 0xf381, 0x4023, 0xa5, 0xd0, 0x6f, 0xed, 0x7, 0x6d, 0xe7, 0x16); 84 #endif 85 86 typedef enum __WIDL_activprof_generated_name_00000002 { 87 PROFILER_SCRIPT_TYPE_USER = 0, 88 PROFILER_SCRIPT_TYPE_DYNAMIC = 1, 89 PROFILER_SCRIPT_TYPE_NATIVE = 2, 90 PROFILER_SCRIPT_TYPE_DOM = 3 91 } PROFILER_SCRIPT_TYPE; 92 93 typedef enum __WIDL_activprof_generated_name_00000003 { 94 PROFILER_EVENT_MASK_TRACE_SCRIPT_FUNCTION_CALL = 0x1, 95 PROFILER_EVENT_MASK_TRACE_NATIVE_FUNCTION_CALL = 0x2, 96 PROFILER_EVENT_MASK_TRACE_DOM_FUNCTION_CALL = 0x4, 97 PROFILER_EVENT_MASK_TRACE_ALL = PROFILER_EVENT_MASK_TRACE_SCRIPT_FUNCTION_CALL | PROFILER_EVENT_MASK_TRACE_NATIVE_FUNCTION_CALL, 98 PROFILER_EVENT_MASK_TRACE_ALL_WITH_DOM = PROFILER_EVENT_MASK_TRACE_ALL | PROFILER_EVENT_MASK_TRACE_DOM_FUNCTION_CALL 99 } PROFILER_EVENT_MASK; 100 101 typedef LONG PROFILER_TOKEN; 102 103 /***************************************************************************** 104 * IActiveScriptProfilerControl interface 105 */ 106 #ifndef __IActiveScriptProfilerControl_INTERFACE_DEFINED__ 107 #define __IActiveScriptProfilerControl_INTERFACE_DEFINED__ 108 109 DEFINE_GUID(IID_IActiveScriptProfilerControl, 0x784b5ff0, 0x69b0, 0x47d1, 0xa7,0xdc, 0x25,0x18,0xf4,0x23,0x0e,0x90); 110 #if defined(__cplusplus) && !defined(CINTERFACE) 111 MIDL_INTERFACE("784b5ff0-69b0-47d1-a7dc-2518f4230e90") 112 IActiveScriptProfilerControl : public IUnknown 113 { 114 virtual HRESULT STDMETHODCALLTYPE StartProfiling( 115 REFCLSID clsidProfilerObject, 116 DWORD dwEventMask, 117 DWORD dwContext) = 0; 118 119 virtual HRESULT STDMETHODCALLTYPE SetProfilerEventMask( 120 DWORD dwEventMask) = 0; 121 122 virtual HRESULT STDMETHODCALLTYPE StopProfiling( 123 HRESULT hrShutdownReason) = 0; 124 125 }; 126 #ifdef __CRT_UUID_DECL 127 __CRT_UUID_DECL(IActiveScriptProfilerControl, 0x784b5ff0, 0x69b0, 0x47d1, 0xa7,0xdc, 0x25,0x18,0xf4,0x23,0x0e,0x90) 128 #endif 129 #else 130 typedef struct IActiveScriptProfilerControlVtbl { 131 BEGIN_INTERFACE 132 133 /*** IUnknown methods ***/ 134 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 135 IActiveScriptProfilerControl* This, 136 REFIID riid, 137 void **ppvObject); 138 139 ULONG (STDMETHODCALLTYPE *AddRef)( 140 IActiveScriptProfilerControl* This); 141 142 ULONG (STDMETHODCALLTYPE *Release)( 143 IActiveScriptProfilerControl* This); 144 145 /*** IActiveScriptProfilerControl methods ***/ 146 HRESULT (STDMETHODCALLTYPE *StartProfiling)( 147 IActiveScriptProfilerControl* This, 148 REFCLSID clsidProfilerObject, 149 DWORD dwEventMask, 150 DWORD dwContext); 151 152 HRESULT (STDMETHODCALLTYPE *SetProfilerEventMask)( 153 IActiveScriptProfilerControl* This, 154 DWORD dwEventMask); 155 156 HRESULT (STDMETHODCALLTYPE *StopProfiling)( 157 IActiveScriptProfilerControl* This, 158 HRESULT hrShutdownReason); 159 160 END_INTERFACE 161 } IActiveScriptProfilerControlVtbl; 162 interface IActiveScriptProfilerControl { 163 CONST_VTBL IActiveScriptProfilerControlVtbl* lpVtbl; 164 }; 165 166 #ifdef COBJMACROS 167 #ifndef WIDL_C_INLINE_WRAPPERS 168 /*** IUnknown methods ***/ 169 #define IActiveScriptProfilerControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 170 #define IActiveScriptProfilerControl_AddRef(This) (This)->lpVtbl->AddRef(This) 171 #define IActiveScriptProfilerControl_Release(This) (This)->lpVtbl->Release(This) 172 /*** IActiveScriptProfilerControl methods ***/ 173 #define IActiveScriptProfilerControl_StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext) (This)->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext) 174 #define IActiveScriptProfilerControl_SetProfilerEventMask(This,dwEventMask) (This)->lpVtbl->SetProfilerEventMask(This,dwEventMask) 175 #define IActiveScriptProfilerControl_StopProfiling(This,hrShutdownReason) (This)->lpVtbl->StopProfiling(This,hrShutdownReason) 176 #else 177 /*** IUnknown methods ***/ 178 static FORCEINLINE HRESULT IActiveScriptProfilerControl_QueryInterface(IActiveScriptProfilerControl* This,REFIID riid,void **ppvObject) { 179 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 180 } 181 static FORCEINLINE ULONG IActiveScriptProfilerControl_AddRef(IActiveScriptProfilerControl* This) { 182 return This->lpVtbl->AddRef(This); 183 } 184 static FORCEINLINE ULONG IActiveScriptProfilerControl_Release(IActiveScriptProfilerControl* This) { 185 return This->lpVtbl->Release(This); 186 } 187 /*** IActiveScriptProfilerControl methods ***/ 188 static FORCEINLINE HRESULT IActiveScriptProfilerControl_StartProfiling(IActiveScriptProfilerControl* This,REFCLSID clsidProfilerObject,DWORD dwEventMask,DWORD dwContext) { 189 return This->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext); 190 } 191 static FORCEINLINE HRESULT IActiveScriptProfilerControl_SetProfilerEventMask(IActiveScriptProfilerControl* This,DWORD dwEventMask) { 192 return This->lpVtbl->SetProfilerEventMask(This,dwEventMask); 193 } 194 static FORCEINLINE HRESULT IActiveScriptProfilerControl_StopProfiling(IActiveScriptProfilerControl* This,HRESULT hrShutdownReason) { 195 return This->lpVtbl->StopProfiling(This,hrShutdownReason); 196 } 197 #endif 198 #endif 199 200 #endif 201 202 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerControl_StartProfiling_Proxy( 203 IActiveScriptProfilerControl* This, 204 REFCLSID clsidProfilerObject, 205 DWORD dwEventMask, 206 DWORD dwContext); 207 void __RPC_STUB IActiveScriptProfilerControl_StartProfiling_Stub( 208 IRpcStubBuffer* This, 209 IRpcChannelBuffer* pRpcChannelBuffer, 210 PRPC_MESSAGE pRpcMessage, 211 DWORD* pdwStubPhase); 212 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerControl_SetProfilerEventMask_Proxy( 213 IActiveScriptProfilerControl* This, 214 DWORD dwEventMask); 215 void __RPC_STUB IActiveScriptProfilerControl_SetProfilerEventMask_Stub( 216 IRpcStubBuffer* This, 217 IRpcChannelBuffer* pRpcChannelBuffer, 218 PRPC_MESSAGE pRpcMessage, 219 DWORD* pdwStubPhase); 220 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerControl_StopProfiling_Proxy( 221 IActiveScriptProfilerControl* This, 222 HRESULT hrShutdownReason); 223 void __RPC_STUB IActiveScriptProfilerControl_StopProfiling_Stub( 224 IRpcStubBuffer* This, 225 IRpcChannelBuffer* pRpcChannelBuffer, 226 PRPC_MESSAGE pRpcMessage, 227 DWORD* pdwStubPhase); 228 229 #endif /* __IActiveScriptProfilerControl_INTERFACE_DEFINED__ */ 230 231 232 /***************************************************************************** 233 * IActiveScriptProfilerControl2 interface 234 */ 235 #ifndef __IActiveScriptProfilerControl2_INTERFACE_DEFINED__ 236 #define __IActiveScriptProfilerControl2_INTERFACE_DEFINED__ 237 238 DEFINE_GUID(IID_IActiveScriptProfilerControl2, 0x47810165, 0x498f, 0x40be, 0x94,0xf1, 0x65,0x35,0x57,0xe9,0xe7,0xda); 239 #if defined(__cplusplus) && !defined(CINTERFACE) 240 MIDL_INTERFACE("47810165-498f-40be-94f1-653557e9e7da") 241 IActiveScriptProfilerControl2 : public IActiveScriptProfilerControl 242 { 243 virtual HRESULT STDMETHODCALLTYPE CompleteProfilerStart( 244 ) = 0; 245 246 virtual HRESULT STDMETHODCALLTYPE PrepareProfilerStop( 247 ) = 0; 248 249 }; 250 #ifdef __CRT_UUID_DECL 251 __CRT_UUID_DECL(IActiveScriptProfilerControl2, 0x47810165, 0x498f, 0x40be, 0x94,0xf1, 0x65,0x35,0x57,0xe9,0xe7,0xda) 252 #endif 253 #else 254 typedef struct IActiveScriptProfilerControl2Vtbl { 255 BEGIN_INTERFACE 256 257 /*** IUnknown methods ***/ 258 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 259 IActiveScriptProfilerControl2* This, 260 REFIID riid, 261 void **ppvObject); 262 263 ULONG (STDMETHODCALLTYPE *AddRef)( 264 IActiveScriptProfilerControl2* This); 265 266 ULONG (STDMETHODCALLTYPE *Release)( 267 IActiveScriptProfilerControl2* This); 268 269 /*** IActiveScriptProfilerControl methods ***/ 270 HRESULT (STDMETHODCALLTYPE *StartProfiling)( 271 IActiveScriptProfilerControl2* This, 272 REFCLSID clsidProfilerObject, 273 DWORD dwEventMask, 274 DWORD dwContext); 275 276 HRESULT (STDMETHODCALLTYPE *SetProfilerEventMask)( 277 IActiveScriptProfilerControl2* This, 278 DWORD dwEventMask); 279 280 HRESULT (STDMETHODCALLTYPE *StopProfiling)( 281 IActiveScriptProfilerControl2* This, 282 HRESULT hrShutdownReason); 283 284 /*** IActiveScriptProfilerControl2 methods ***/ 285 HRESULT (STDMETHODCALLTYPE *CompleteProfilerStart)( 286 IActiveScriptProfilerControl2* This); 287 288 HRESULT (STDMETHODCALLTYPE *PrepareProfilerStop)( 289 IActiveScriptProfilerControl2* This); 290 291 END_INTERFACE 292 } IActiveScriptProfilerControl2Vtbl; 293 interface IActiveScriptProfilerControl2 { 294 CONST_VTBL IActiveScriptProfilerControl2Vtbl* lpVtbl; 295 }; 296 297 #ifdef COBJMACROS 298 #ifndef WIDL_C_INLINE_WRAPPERS 299 /*** IUnknown methods ***/ 300 #define IActiveScriptProfilerControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 301 #define IActiveScriptProfilerControl2_AddRef(This) (This)->lpVtbl->AddRef(This) 302 #define IActiveScriptProfilerControl2_Release(This) (This)->lpVtbl->Release(This) 303 /*** IActiveScriptProfilerControl methods ***/ 304 #define IActiveScriptProfilerControl2_StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext) (This)->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext) 305 #define IActiveScriptProfilerControl2_SetProfilerEventMask(This,dwEventMask) (This)->lpVtbl->SetProfilerEventMask(This,dwEventMask) 306 #define IActiveScriptProfilerControl2_StopProfiling(This,hrShutdownReason) (This)->lpVtbl->StopProfiling(This,hrShutdownReason) 307 /*** IActiveScriptProfilerControl2 methods ***/ 308 #define IActiveScriptProfilerControl2_CompleteProfilerStart(This) (This)->lpVtbl->CompleteProfilerStart(This) 309 #define IActiveScriptProfilerControl2_PrepareProfilerStop(This) (This)->lpVtbl->PrepareProfilerStop(This) 310 #else 311 /*** IUnknown methods ***/ 312 static FORCEINLINE HRESULT IActiveScriptProfilerControl2_QueryInterface(IActiveScriptProfilerControl2* This,REFIID riid,void **ppvObject) { 313 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 314 } 315 static FORCEINLINE ULONG IActiveScriptProfilerControl2_AddRef(IActiveScriptProfilerControl2* This) { 316 return This->lpVtbl->AddRef(This); 317 } 318 static FORCEINLINE ULONG IActiveScriptProfilerControl2_Release(IActiveScriptProfilerControl2* This) { 319 return This->lpVtbl->Release(This); 320 } 321 /*** IActiveScriptProfilerControl methods ***/ 322 static FORCEINLINE HRESULT IActiveScriptProfilerControl2_StartProfiling(IActiveScriptProfilerControl2* This,REFCLSID clsidProfilerObject,DWORD dwEventMask,DWORD dwContext) { 323 return This->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext); 324 } 325 static FORCEINLINE HRESULT IActiveScriptProfilerControl2_SetProfilerEventMask(IActiveScriptProfilerControl2* This,DWORD dwEventMask) { 326 return This->lpVtbl->SetProfilerEventMask(This,dwEventMask); 327 } 328 static FORCEINLINE HRESULT IActiveScriptProfilerControl2_StopProfiling(IActiveScriptProfilerControl2* This,HRESULT hrShutdownReason) { 329 return This->lpVtbl->StopProfiling(This,hrShutdownReason); 330 } 331 /*** IActiveScriptProfilerControl2 methods ***/ 332 static FORCEINLINE HRESULT IActiveScriptProfilerControl2_CompleteProfilerStart(IActiveScriptProfilerControl2* This) { 333 return This->lpVtbl->CompleteProfilerStart(This); 334 } 335 static FORCEINLINE HRESULT IActiveScriptProfilerControl2_PrepareProfilerStop(IActiveScriptProfilerControl2* This) { 336 return This->lpVtbl->PrepareProfilerStop(This); 337 } 338 #endif 339 #endif 340 341 #endif 342 343 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerControl2_CompleteProfilerStart_Proxy( 344 IActiveScriptProfilerControl2* This); 345 void __RPC_STUB IActiveScriptProfilerControl2_CompleteProfilerStart_Stub( 346 IRpcStubBuffer* This, 347 IRpcChannelBuffer* pRpcChannelBuffer, 348 PRPC_MESSAGE pRpcMessage, 349 DWORD* pdwStubPhase); 350 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerControl2_PrepareProfilerStop_Proxy( 351 IActiveScriptProfilerControl2* This); 352 void __RPC_STUB IActiveScriptProfilerControl2_PrepareProfilerStop_Stub( 353 IRpcStubBuffer* This, 354 IRpcChannelBuffer* pRpcChannelBuffer, 355 PRPC_MESSAGE pRpcMessage, 356 DWORD* pdwStubPhase); 357 358 #endif /* __IActiveScriptProfilerControl2_INTERFACE_DEFINED__ */ 359 360 361 typedef DWORD_PTR PROFILER_HEAP_OBJECT_ID; 362 typedef UINT PROFILER_HEAP_OBJECT_NAME_ID; 363 typedef void *PROFILER_EXTERNAL_OBJECT_ADDRESS; 364 365 typedef enum __WIDL_activprof_generated_name_00000004 { 366 PROFILER_HEAP_OBJECT_FLAGS_NEW_OBJECT = 0x1, 367 PROFILER_HEAP_OBJECT_FLAGS_IS_ROOT = 0x2, 368 PROFILER_HEAP_OBJECT_FLAGS_SITE_CLOSED = 0x4, 369 PROFILER_HEAP_OBJECT_FLAGS_EXTERNAL = 0x8, 370 PROFILER_HEAP_OBJECT_FLAGS_EXTERNAL_UNKNOWN = 0x10, 371 PROFILER_HEAP_OBJECT_FLAGS_EXTERNAL_DISPATCH = 0x20, 372 PROFILER_HEAP_OBJECT_FLAGS_SIZE_APPROXIMATE = 0x40, 373 PROFILER_HEAP_OBJECT_FLAGS_SIZE_UNAVAILABLE = 0x80, 374 PROFILER_HEAP_OBJECT_FLAGS_NEW_STATE_UNAVAILABLE = 0x100, 375 PROFILER_HEAP_OBJECT_FLAGS_WINRT_INSTANCE = 0x200, 376 PROFILER_HEAP_OBJECT_FLAGS_WINRT_RUNTIMECLASS = 0x400, 377 PROFILER_HEAP_OBJECT_FLAGS_WINRT_DELEGATE = 0x800, 378 PROFILER_HEAP_OBJECT_FLAGS_WINRT_NAMESPACE = 0x1000 379 } PROFILER_HEAP_OBJECT_FLAGS; 380 381 typedef enum __WIDL_activprof_generated_name_00000005 { 382 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_PROTOTYPE = 0x1, 383 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_FUNCTION_NAME = 0x2, 384 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_SCOPE_LIST = 0x3, 385 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_INTERNAL_PROPERTY = 0x4, 386 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_NAME_PROPERTIES = 0x5, 387 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_INDEX_PROPERTIES = 0x6, 388 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_ELEMENT_ATTRIBUTES_SIZE = 0x7, 389 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_ELEMENT_TEXT_CHILDREN_SIZE = 0x8, 390 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_RELATIONSHIPS = 0x9, 391 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_WINRTEVENTS = 0xa, 392 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_MAX_VALUE = PROFILER_HEAP_OBJECT_OPTIONAL_INFO_WINRTEVENTS 393 } PROFILER_HEAP_OBJECT_OPTIONAL_INFO_TYPE; 394 395 typedef struct _PROFILER_HEAP_OBJECT_SCOPE_LIST { 396 UINT count; 397 PROFILER_HEAP_OBJECT_ID scopes[1]; 398 } PROFILER_HEAP_OBJECT_SCOPE_LIST; 399 400 typedef enum __WIDL_activprof_generated_name_00000006 { 401 PROFILER_PROPERTY_TYPE_NUMBER = 0x1, 402 PROFILER_PROPERTY_TYPE_STRING = 0x2, 403 PROFILER_PROPERTY_TYPE_HEAP_OBJECT = 0x3, 404 PROFILER_PROPERTY_TYPE_EXTERNAL_OBJECT = 0x4, 405 PROFILER_PROPERTY_TYPE_BSTR = 0x5 406 } PROFILER_RELATIONSHIP_INFO; 407 408 typedef struct _PROFILER_HEAP_OBJECT_RELATIONSHIP { 409 PROFILER_HEAP_OBJECT_NAME_ID relationshipId; 410 PROFILER_RELATIONSHIP_INFO relationshipInfo; 411 __C89_NAMELESS union { 412 double numberValue; 413 LPCWSTR stringValue; 414 BSTR bstrValue; 415 PROFILER_HEAP_OBJECT_ID objectId; 416 PROFILER_EXTERNAL_OBJECT_ADDRESS externalObjectAddress; 417 } __C89_NAMELESSUNIONNAME; 418 } PROFILER_HEAP_OBJECT_RELATIONSHIP; 419 420 typedef struct _PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST { 421 UINT count; 422 PROFILER_HEAP_OBJECT_RELATIONSHIP elements[1]; 423 } PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST; 424 425 typedef struct _PROFILER_HEAP_OBJECT_OPTIONAL_INFO { 426 PROFILER_HEAP_OBJECT_OPTIONAL_INFO_TYPE infoType; 427 __C89_NAMELESS union { 428 PROFILER_HEAP_OBJECT_ID prototype; 429 LPCWSTR functionName; 430 UINT elementAttributesSize; 431 UINT elementTextChildrenSize; 432 PROFILER_HEAP_OBJECT_SCOPE_LIST *scopeList; 433 PROFILER_HEAP_OBJECT_RELATIONSHIP *internalProperty; 434 PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST *namePropertyList; 435 PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST *indexPropertyList; 436 PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST *relationshipList; 437 PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST *eventList; 438 } __C89_NAMELESSUNIONNAME; 439 } PROFILER_HEAP_OBJECT_OPTIONAL_INFO; 440 441 typedef struct _PROFILER_HEAP_OBJECT { 442 UINT size; 443 __C89_NAMELESS union { 444 PROFILER_HEAP_OBJECT_ID objectId; 445 PROFILER_EXTERNAL_OBJECT_ADDRESS externalObjectAddress; 446 } __C89_NAMELESSUNIONNAME; 447 PROFILER_HEAP_OBJECT_NAME_ID typeNameId; 448 ULONG flags; 449 USHORT unused; 450 USHORT optionalInfoCount; 451 } PROFILER_HEAP_OBJECT; 452 453 /***************************************************************************** 454 * IActiveScriptProfilerHeapEnum interface 455 */ 456 #ifndef __IActiveScriptProfilerHeapEnum_INTERFACE_DEFINED__ 457 #define __IActiveScriptProfilerHeapEnum_INTERFACE_DEFINED__ 458 459 DEFINE_GUID(IID_IActiveScriptProfilerHeapEnum, 0x32e4694e, 0x0d37, 0x419b, 0xb9,0x3d, 0xfa,0x20,0xde,0xd6,0xe8,0xea); 460 #if defined(__cplusplus) && !defined(CINTERFACE) 461 MIDL_INTERFACE("32e4694e-0d37-419b-b93d-fa20ded6e8ea") 462 IActiveScriptProfilerHeapEnum : public IUnknown 463 { 464 virtual HRESULT STDMETHODCALLTYPE Next( 465 ULONG celt, 466 PROFILER_HEAP_OBJECT **heapObjects, 467 ULONG *pceltFetched) = 0; 468 469 virtual HRESULT STDMETHODCALLTYPE GetOptionalInfo( 470 PROFILER_HEAP_OBJECT *heapObject, 471 ULONG celt, 472 PROFILER_HEAP_OBJECT_OPTIONAL_INFO *optionalInfo) = 0; 473 474 virtual HRESULT STDMETHODCALLTYPE FreeObjectAndOptionalInfo( 475 ULONG celt, 476 PROFILER_HEAP_OBJECT **heapObjects) = 0; 477 478 virtual HRESULT STDMETHODCALLTYPE GetNameIdMap( 479 LPCWSTR * pNameList[], 480 UINT *pcelt) = 0; 481 482 }; 483 #ifdef __CRT_UUID_DECL 484 __CRT_UUID_DECL(IActiveScriptProfilerHeapEnum, 0x32e4694e, 0x0d37, 0x419b, 0xb9,0x3d, 0xfa,0x20,0xde,0xd6,0xe8,0xea) 485 #endif 486 #else 487 typedef struct IActiveScriptProfilerHeapEnumVtbl { 488 BEGIN_INTERFACE 489 490 /*** IUnknown methods ***/ 491 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 492 IActiveScriptProfilerHeapEnum* This, 493 REFIID riid, 494 void **ppvObject); 495 496 ULONG (STDMETHODCALLTYPE *AddRef)( 497 IActiveScriptProfilerHeapEnum* This); 498 499 ULONG (STDMETHODCALLTYPE *Release)( 500 IActiveScriptProfilerHeapEnum* This); 501 502 /*** IActiveScriptProfilerHeapEnum methods ***/ 503 HRESULT (STDMETHODCALLTYPE *Next)( 504 IActiveScriptProfilerHeapEnum* This, 505 ULONG celt, 506 PROFILER_HEAP_OBJECT **heapObjects, 507 ULONG *pceltFetched); 508 509 HRESULT (STDMETHODCALLTYPE *GetOptionalInfo)( 510 IActiveScriptProfilerHeapEnum* This, 511 PROFILER_HEAP_OBJECT *heapObject, 512 ULONG celt, 513 PROFILER_HEAP_OBJECT_OPTIONAL_INFO *optionalInfo); 514 515 HRESULT (STDMETHODCALLTYPE *FreeObjectAndOptionalInfo)( 516 IActiveScriptProfilerHeapEnum* This, 517 ULONG celt, 518 PROFILER_HEAP_OBJECT **heapObjects); 519 520 HRESULT (STDMETHODCALLTYPE *GetNameIdMap)( 521 IActiveScriptProfilerHeapEnum* This, 522 LPCWSTR * pNameList[], 523 UINT *pcelt); 524 525 END_INTERFACE 526 } IActiveScriptProfilerHeapEnumVtbl; 527 interface IActiveScriptProfilerHeapEnum { 528 CONST_VTBL IActiveScriptProfilerHeapEnumVtbl* lpVtbl; 529 }; 530 531 #ifdef COBJMACROS 532 #ifndef WIDL_C_INLINE_WRAPPERS 533 /*** IUnknown methods ***/ 534 #define IActiveScriptProfilerHeapEnum_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 535 #define IActiveScriptProfilerHeapEnum_AddRef(This) (This)->lpVtbl->AddRef(This) 536 #define IActiveScriptProfilerHeapEnum_Release(This) (This)->lpVtbl->Release(This) 537 /*** IActiveScriptProfilerHeapEnum methods ***/ 538 #define IActiveScriptProfilerHeapEnum_Next(This,celt,heapObjects,pceltFetched) (This)->lpVtbl->Next(This,celt,heapObjects,pceltFetched) 539 #define IActiveScriptProfilerHeapEnum_GetOptionalInfo(This,heapObject,celt,optionalInfo) (This)->lpVtbl->GetOptionalInfo(This,heapObject,celt,optionalInfo) 540 #define IActiveScriptProfilerHeapEnum_FreeObjectAndOptionalInfo(This,celt,heapObjects) (This)->lpVtbl->FreeObjectAndOptionalInfo(This,celt,heapObjects) 541 #define IActiveScriptProfilerHeapEnum_GetNameIdMap(This,pNameList,pcelt) (This)->lpVtbl->GetNameIdMap(This,pNameList,pcelt) 542 #else 543 /*** IUnknown methods ***/ 544 static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_QueryInterface(IActiveScriptProfilerHeapEnum* This,REFIID riid,void **ppvObject) { 545 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 546 } 547 static FORCEINLINE ULONG IActiveScriptProfilerHeapEnum_AddRef(IActiveScriptProfilerHeapEnum* This) { 548 return This->lpVtbl->AddRef(This); 549 } 550 static FORCEINLINE ULONG IActiveScriptProfilerHeapEnum_Release(IActiveScriptProfilerHeapEnum* This) { 551 return This->lpVtbl->Release(This); 552 } 553 /*** IActiveScriptProfilerHeapEnum methods ***/ 554 static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_Next(IActiveScriptProfilerHeapEnum* This,ULONG celt,PROFILER_HEAP_OBJECT **heapObjects,ULONG *pceltFetched) { 555 return This->lpVtbl->Next(This,celt,heapObjects,pceltFetched); 556 } 557 static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_GetOptionalInfo(IActiveScriptProfilerHeapEnum* This,PROFILER_HEAP_OBJECT *heapObject,ULONG celt,PROFILER_HEAP_OBJECT_OPTIONAL_INFO *optionalInfo) { 558 return This->lpVtbl->GetOptionalInfo(This,heapObject,celt,optionalInfo); 559 } 560 static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_FreeObjectAndOptionalInfo(IActiveScriptProfilerHeapEnum* This,ULONG celt,PROFILER_HEAP_OBJECT **heapObjects) { 561 return This->lpVtbl->FreeObjectAndOptionalInfo(This,celt,heapObjects); 562 } 563 static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_GetNameIdMap(IActiveScriptProfilerHeapEnum* This,LPCWSTR * pNameList[],UINT *pcelt) { 564 return This->lpVtbl->GetNameIdMap(This,pNameList,pcelt); 565 } 566 #endif 567 #endif 568 569 #endif 570 571 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerHeapEnum_Next_Proxy( 572 IActiveScriptProfilerHeapEnum* This, 573 ULONG celt, 574 PROFILER_HEAP_OBJECT **heapObjects, 575 ULONG *pceltFetched); 576 void __RPC_STUB IActiveScriptProfilerHeapEnum_Next_Stub( 577 IRpcStubBuffer* This, 578 IRpcChannelBuffer* pRpcChannelBuffer, 579 PRPC_MESSAGE pRpcMessage, 580 DWORD* pdwStubPhase); 581 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerHeapEnum_GetOptionalInfo_Proxy( 582 IActiveScriptProfilerHeapEnum* This, 583 PROFILER_HEAP_OBJECT *heapObject, 584 ULONG celt, 585 PROFILER_HEAP_OBJECT_OPTIONAL_INFO *optionalInfo); 586 void __RPC_STUB IActiveScriptProfilerHeapEnum_GetOptionalInfo_Stub( 587 IRpcStubBuffer* This, 588 IRpcChannelBuffer* pRpcChannelBuffer, 589 PRPC_MESSAGE pRpcMessage, 590 DWORD* pdwStubPhase); 591 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerHeapEnum_FreeObjectAndOptionalInfo_Proxy( 592 IActiveScriptProfilerHeapEnum* This, 593 ULONG celt, 594 PROFILER_HEAP_OBJECT **heapObjects); 595 void __RPC_STUB IActiveScriptProfilerHeapEnum_FreeObjectAndOptionalInfo_Stub( 596 IRpcStubBuffer* This, 597 IRpcChannelBuffer* pRpcChannelBuffer, 598 PRPC_MESSAGE pRpcMessage, 599 DWORD* pdwStubPhase); 600 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerHeapEnum_GetNameIdMap_Proxy( 601 IActiveScriptProfilerHeapEnum* This, 602 LPCWSTR * pNameList[], 603 UINT *pcelt); 604 void __RPC_STUB IActiveScriptProfilerHeapEnum_GetNameIdMap_Stub( 605 IRpcStubBuffer* This, 606 IRpcChannelBuffer* pRpcChannelBuffer, 607 PRPC_MESSAGE pRpcMessage, 608 DWORD* pdwStubPhase); 609 610 #endif /* __IActiveScriptProfilerHeapEnum_INTERFACE_DEFINED__ */ 611 612 613 /***************************************************************************** 614 * IActiveScriptProfilerControl3 interface 615 */ 616 #ifndef __IActiveScriptProfilerControl3_INTERFACE_DEFINED__ 617 #define __IActiveScriptProfilerControl3_INTERFACE_DEFINED__ 618 619 DEFINE_GUID(IID_IActiveScriptProfilerControl3, 0x0b403015, 0xf381, 0x4023, 0xa5,0xd0, 0x6f,0xed,0x07,0x6d,0xe7,0x16); 620 #if defined(__cplusplus) && !defined(CINTERFACE) 621 MIDL_INTERFACE("0b403015-f381-4023-a5d0-6fed076de716") 622 IActiveScriptProfilerControl3 : public IActiveScriptProfilerControl2 623 { 624 virtual HRESULT STDMETHODCALLTYPE EnumHeap( 625 IActiveScriptProfilerHeapEnum **ppEnum) = 0; 626 627 }; 628 #ifdef __CRT_UUID_DECL 629 __CRT_UUID_DECL(IActiveScriptProfilerControl3, 0x0b403015, 0xf381, 0x4023, 0xa5,0xd0, 0x6f,0xed,0x07,0x6d,0xe7,0x16) 630 #endif 631 #else 632 typedef struct IActiveScriptProfilerControl3Vtbl { 633 BEGIN_INTERFACE 634 635 /*** IUnknown methods ***/ 636 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 637 IActiveScriptProfilerControl3* This, 638 REFIID riid, 639 void **ppvObject); 640 641 ULONG (STDMETHODCALLTYPE *AddRef)( 642 IActiveScriptProfilerControl3* This); 643 644 ULONG (STDMETHODCALLTYPE *Release)( 645 IActiveScriptProfilerControl3* This); 646 647 /*** IActiveScriptProfilerControl methods ***/ 648 HRESULT (STDMETHODCALLTYPE *StartProfiling)( 649 IActiveScriptProfilerControl3* This, 650 REFCLSID clsidProfilerObject, 651 DWORD dwEventMask, 652 DWORD dwContext); 653 654 HRESULT (STDMETHODCALLTYPE *SetProfilerEventMask)( 655 IActiveScriptProfilerControl3* This, 656 DWORD dwEventMask); 657 658 HRESULT (STDMETHODCALLTYPE *StopProfiling)( 659 IActiveScriptProfilerControl3* This, 660 HRESULT hrShutdownReason); 661 662 /*** IActiveScriptProfilerControl2 methods ***/ 663 HRESULT (STDMETHODCALLTYPE *CompleteProfilerStart)( 664 IActiveScriptProfilerControl3* This); 665 666 HRESULT (STDMETHODCALLTYPE *PrepareProfilerStop)( 667 IActiveScriptProfilerControl3* This); 668 669 /*** IActiveScriptProfilerControl3 methods ***/ 670 HRESULT (STDMETHODCALLTYPE *EnumHeap)( 671 IActiveScriptProfilerControl3* This, 672 IActiveScriptProfilerHeapEnum **ppEnum); 673 674 END_INTERFACE 675 } IActiveScriptProfilerControl3Vtbl; 676 interface IActiveScriptProfilerControl3 { 677 CONST_VTBL IActiveScriptProfilerControl3Vtbl* lpVtbl; 678 }; 679 680 #ifdef COBJMACROS 681 #ifndef WIDL_C_INLINE_WRAPPERS 682 /*** IUnknown methods ***/ 683 #define IActiveScriptProfilerControl3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 684 #define IActiveScriptProfilerControl3_AddRef(This) (This)->lpVtbl->AddRef(This) 685 #define IActiveScriptProfilerControl3_Release(This) (This)->lpVtbl->Release(This) 686 /*** IActiveScriptProfilerControl methods ***/ 687 #define IActiveScriptProfilerControl3_StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext) (This)->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext) 688 #define IActiveScriptProfilerControl3_SetProfilerEventMask(This,dwEventMask) (This)->lpVtbl->SetProfilerEventMask(This,dwEventMask) 689 #define IActiveScriptProfilerControl3_StopProfiling(This,hrShutdownReason) (This)->lpVtbl->StopProfiling(This,hrShutdownReason) 690 /*** IActiveScriptProfilerControl2 methods ***/ 691 #define IActiveScriptProfilerControl3_CompleteProfilerStart(This) (This)->lpVtbl->CompleteProfilerStart(This) 692 #define IActiveScriptProfilerControl3_PrepareProfilerStop(This) (This)->lpVtbl->PrepareProfilerStop(This) 693 /*** IActiveScriptProfilerControl3 methods ***/ 694 #define IActiveScriptProfilerControl3_EnumHeap(This,ppEnum) (This)->lpVtbl->EnumHeap(This,ppEnum) 695 #else 696 /*** IUnknown methods ***/ 697 static FORCEINLINE HRESULT IActiveScriptProfilerControl3_QueryInterface(IActiveScriptProfilerControl3* This,REFIID riid,void **ppvObject) { 698 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 699 } 700 static FORCEINLINE ULONG IActiveScriptProfilerControl3_AddRef(IActiveScriptProfilerControl3* This) { 701 return This->lpVtbl->AddRef(This); 702 } 703 static FORCEINLINE ULONG IActiveScriptProfilerControl3_Release(IActiveScriptProfilerControl3* This) { 704 return This->lpVtbl->Release(This); 705 } 706 /*** IActiveScriptProfilerControl methods ***/ 707 static FORCEINLINE HRESULT IActiveScriptProfilerControl3_StartProfiling(IActiveScriptProfilerControl3* This,REFCLSID clsidProfilerObject,DWORD dwEventMask,DWORD dwContext) { 708 return This->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext); 709 } 710 static FORCEINLINE HRESULT IActiveScriptProfilerControl3_SetProfilerEventMask(IActiveScriptProfilerControl3* This,DWORD dwEventMask) { 711 return This->lpVtbl->SetProfilerEventMask(This,dwEventMask); 712 } 713 static FORCEINLINE HRESULT IActiveScriptProfilerControl3_StopProfiling(IActiveScriptProfilerControl3* This,HRESULT hrShutdownReason) { 714 return This->lpVtbl->StopProfiling(This,hrShutdownReason); 715 } 716 /*** IActiveScriptProfilerControl2 methods ***/ 717 static FORCEINLINE HRESULT IActiveScriptProfilerControl3_CompleteProfilerStart(IActiveScriptProfilerControl3* This) { 718 return This->lpVtbl->CompleteProfilerStart(This); 719 } 720 static FORCEINLINE HRESULT IActiveScriptProfilerControl3_PrepareProfilerStop(IActiveScriptProfilerControl3* This) { 721 return This->lpVtbl->PrepareProfilerStop(This); 722 } 723 /*** IActiveScriptProfilerControl3 methods ***/ 724 static FORCEINLINE HRESULT IActiveScriptProfilerControl3_EnumHeap(IActiveScriptProfilerControl3* This,IActiveScriptProfilerHeapEnum **ppEnum) { 725 return This->lpVtbl->EnumHeap(This,ppEnum); 726 } 727 #endif 728 #endif 729 730 #endif 731 732 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerControl3_EnumHeap_Proxy( 733 IActiveScriptProfilerControl3* This, 734 IActiveScriptProfilerHeapEnum **ppEnum); 735 void __RPC_STUB IActiveScriptProfilerControl3_EnumHeap_Stub( 736 IRpcStubBuffer* This, 737 IRpcChannelBuffer* pRpcChannelBuffer, 738 PRPC_MESSAGE pRpcMessage, 739 DWORD* pdwStubPhase); 740 741 #endif /* __IActiveScriptProfilerControl3_INTERFACE_DEFINED__ */ 742 743 744 /***************************************************************************** 745 * IActiveScriptProfilerCallback interface 746 */ 747 #ifndef __IActiveScriptProfilerCallback_INTERFACE_DEFINED__ 748 #define __IActiveScriptProfilerCallback_INTERFACE_DEFINED__ 749 750 DEFINE_GUID(IID_IActiveScriptProfilerCallback, 0x740eca23, 0x7d9d, 0x42e5, 0xba,0x9d, 0xf8,0xb2,0x4b,0x1c,0x7a,0x9b); 751 #if defined(__cplusplus) && !defined(CINTERFACE) 752 MIDL_INTERFACE("740eca23-7d9d-42e5-ba9d-f8b24b1c7a9b") 753 IActiveScriptProfilerCallback : public IUnknown 754 { 755 virtual HRESULT STDMETHODCALLTYPE Initialize( 756 DWORD dwContext) = 0; 757 758 virtual HRESULT STDMETHODCALLTYPE Shutdown( 759 HRESULT hrReason) = 0; 760 761 virtual HRESULT STDMETHODCALLTYPE ScriptCompiled( 762 PROFILER_TOKEN scriptId, 763 PROFILER_SCRIPT_TYPE type, 764 IUnknown *pIDebugDocumentContext) = 0; 765 766 virtual HRESULT STDMETHODCALLTYPE FunctionCompiled( 767 PROFILER_TOKEN functionId, 768 PROFILER_TOKEN scriptId, 769 const WCHAR *pwszFunctionName, 770 const WCHAR *pwszFunctionNameHint, 771 IUnknown *pIDebugDocumentContext) = 0; 772 773 virtual HRESULT STDMETHODCALLTYPE OnFunctionEnter( 774 PROFILER_TOKEN scriptId, 775 PROFILER_TOKEN functionId) = 0; 776 777 virtual HRESULT STDMETHODCALLTYPE OnFunctionExit( 778 PROFILER_TOKEN scriptId, 779 PROFILER_TOKEN functionId) = 0; 780 781 }; 782 #ifdef __CRT_UUID_DECL 783 __CRT_UUID_DECL(IActiveScriptProfilerCallback, 0x740eca23, 0x7d9d, 0x42e5, 0xba,0x9d, 0xf8,0xb2,0x4b,0x1c,0x7a,0x9b) 784 #endif 785 #else 786 typedef struct IActiveScriptProfilerCallbackVtbl { 787 BEGIN_INTERFACE 788 789 /*** IUnknown methods ***/ 790 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 791 IActiveScriptProfilerCallback* This, 792 REFIID riid, 793 void **ppvObject); 794 795 ULONG (STDMETHODCALLTYPE *AddRef)( 796 IActiveScriptProfilerCallback* This); 797 798 ULONG (STDMETHODCALLTYPE *Release)( 799 IActiveScriptProfilerCallback* This); 800 801 /*** IActiveScriptProfilerCallback methods ***/ 802 HRESULT (STDMETHODCALLTYPE *Initialize)( 803 IActiveScriptProfilerCallback* This, 804 DWORD dwContext); 805 806 HRESULT (STDMETHODCALLTYPE *Shutdown)( 807 IActiveScriptProfilerCallback* This, 808 HRESULT hrReason); 809 810 HRESULT (STDMETHODCALLTYPE *ScriptCompiled)( 811 IActiveScriptProfilerCallback* This, 812 PROFILER_TOKEN scriptId, 813 PROFILER_SCRIPT_TYPE type, 814 IUnknown *pIDebugDocumentContext); 815 816 HRESULT (STDMETHODCALLTYPE *FunctionCompiled)( 817 IActiveScriptProfilerCallback* This, 818 PROFILER_TOKEN functionId, 819 PROFILER_TOKEN scriptId, 820 const WCHAR *pwszFunctionName, 821 const WCHAR *pwszFunctionNameHint, 822 IUnknown *pIDebugDocumentContext); 823 824 HRESULT (STDMETHODCALLTYPE *OnFunctionEnter)( 825 IActiveScriptProfilerCallback* This, 826 PROFILER_TOKEN scriptId, 827 PROFILER_TOKEN functionId); 828 829 HRESULT (STDMETHODCALLTYPE *OnFunctionExit)( 830 IActiveScriptProfilerCallback* This, 831 PROFILER_TOKEN scriptId, 832 PROFILER_TOKEN functionId); 833 834 END_INTERFACE 835 } IActiveScriptProfilerCallbackVtbl; 836 interface IActiveScriptProfilerCallback { 837 CONST_VTBL IActiveScriptProfilerCallbackVtbl* lpVtbl; 838 }; 839 840 #ifdef COBJMACROS 841 #ifndef WIDL_C_INLINE_WRAPPERS 842 /*** IUnknown methods ***/ 843 #define IActiveScriptProfilerCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 844 #define IActiveScriptProfilerCallback_AddRef(This) (This)->lpVtbl->AddRef(This) 845 #define IActiveScriptProfilerCallback_Release(This) (This)->lpVtbl->Release(This) 846 /*** IActiveScriptProfilerCallback methods ***/ 847 #define IActiveScriptProfilerCallback_Initialize(This,dwContext) (This)->lpVtbl->Initialize(This,dwContext) 848 #define IActiveScriptProfilerCallback_Shutdown(This,hrReason) (This)->lpVtbl->Shutdown(This,hrReason) 849 #define IActiveScriptProfilerCallback_ScriptCompiled(This,scriptId,type,pIDebugDocumentContext) (This)->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext) 850 #define IActiveScriptProfilerCallback_FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext) (This)->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext) 851 #define IActiveScriptProfilerCallback_OnFunctionEnter(This,scriptId,functionId) (This)->lpVtbl->OnFunctionEnter(This,scriptId,functionId) 852 #define IActiveScriptProfilerCallback_OnFunctionExit(This,scriptId,functionId) (This)->lpVtbl->OnFunctionExit(This,scriptId,functionId) 853 #else 854 /*** IUnknown methods ***/ 855 static FORCEINLINE HRESULT IActiveScriptProfilerCallback_QueryInterface(IActiveScriptProfilerCallback* This,REFIID riid,void **ppvObject) { 856 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 857 } 858 static FORCEINLINE ULONG IActiveScriptProfilerCallback_AddRef(IActiveScriptProfilerCallback* This) { 859 return This->lpVtbl->AddRef(This); 860 } 861 static FORCEINLINE ULONG IActiveScriptProfilerCallback_Release(IActiveScriptProfilerCallback* This) { 862 return This->lpVtbl->Release(This); 863 } 864 /*** IActiveScriptProfilerCallback methods ***/ 865 static FORCEINLINE HRESULT IActiveScriptProfilerCallback_Initialize(IActiveScriptProfilerCallback* This,DWORD dwContext) { 866 return This->lpVtbl->Initialize(This,dwContext); 867 } 868 static FORCEINLINE HRESULT IActiveScriptProfilerCallback_Shutdown(IActiveScriptProfilerCallback* This,HRESULT hrReason) { 869 return This->lpVtbl->Shutdown(This,hrReason); 870 } 871 static FORCEINLINE HRESULT IActiveScriptProfilerCallback_ScriptCompiled(IActiveScriptProfilerCallback* This,PROFILER_TOKEN scriptId,PROFILER_SCRIPT_TYPE type,IUnknown *pIDebugDocumentContext) { 872 return This->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext); 873 } 874 static FORCEINLINE HRESULT IActiveScriptProfilerCallback_FunctionCompiled(IActiveScriptProfilerCallback* This,PROFILER_TOKEN functionId,PROFILER_TOKEN scriptId,const WCHAR *pwszFunctionName,const WCHAR *pwszFunctionNameHint,IUnknown *pIDebugDocumentContext) { 875 return This->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext); 876 } 877 static FORCEINLINE HRESULT IActiveScriptProfilerCallback_OnFunctionEnter(IActiveScriptProfilerCallback* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) { 878 return This->lpVtbl->OnFunctionEnter(This,scriptId,functionId); 879 } 880 static FORCEINLINE HRESULT IActiveScriptProfilerCallback_OnFunctionExit(IActiveScriptProfilerCallback* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) { 881 return This->lpVtbl->OnFunctionExit(This,scriptId,functionId); 882 } 883 #endif 884 #endif 885 886 #endif 887 888 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerCallback_Initialize_Proxy( 889 IActiveScriptProfilerCallback* This, 890 DWORD dwContext); 891 void __RPC_STUB IActiveScriptProfilerCallback_Initialize_Stub( 892 IRpcStubBuffer* This, 893 IRpcChannelBuffer* pRpcChannelBuffer, 894 PRPC_MESSAGE pRpcMessage, 895 DWORD* pdwStubPhase); 896 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerCallback_Shutdown_Proxy( 897 IActiveScriptProfilerCallback* This, 898 HRESULT hrReason); 899 void __RPC_STUB IActiveScriptProfilerCallback_Shutdown_Stub( 900 IRpcStubBuffer* This, 901 IRpcChannelBuffer* pRpcChannelBuffer, 902 PRPC_MESSAGE pRpcMessage, 903 DWORD* pdwStubPhase); 904 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerCallback_ScriptCompiled_Proxy( 905 IActiveScriptProfilerCallback* This, 906 PROFILER_TOKEN scriptId, 907 PROFILER_SCRIPT_TYPE type, 908 IUnknown *pIDebugDocumentContext); 909 void __RPC_STUB IActiveScriptProfilerCallback_ScriptCompiled_Stub( 910 IRpcStubBuffer* This, 911 IRpcChannelBuffer* pRpcChannelBuffer, 912 PRPC_MESSAGE pRpcMessage, 913 DWORD* pdwStubPhase); 914 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerCallback_FunctionCompiled_Proxy( 915 IActiveScriptProfilerCallback* This, 916 PROFILER_TOKEN functionId, 917 PROFILER_TOKEN scriptId, 918 const WCHAR *pwszFunctionName, 919 const WCHAR *pwszFunctionNameHint, 920 IUnknown *pIDebugDocumentContext); 921 void __RPC_STUB IActiveScriptProfilerCallback_FunctionCompiled_Stub( 922 IRpcStubBuffer* This, 923 IRpcChannelBuffer* pRpcChannelBuffer, 924 PRPC_MESSAGE pRpcMessage, 925 DWORD* pdwStubPhase); 926 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerCallback_OnFunctionEnter_Proxy( 927 IActiveScriptProfilerCallback* This, 928 PROFILER_TOKEN scriptId, 929 PROFILER_TOKEN functionId); 930 void __RPC_STUB IActiveScriptProfilerCallback_OnFunctionEnter_Stub( 931 IRpcStubBuffer* This, 932 IRpcChannelBuffer* pRpcChannelBuffer, 933 PRPC_MESSAGE pRpcMessage, 934 DWORD* pdwStubPhase); 935 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerCallback_OnFunctionExit_Proxy( 936 IActiveScriptProfilerCallback* This, 937 PROFILER_TOKEN scriptId, 938 PROFILER_TOKEN functionId); 939 void __RPC_STUB IActiveScriptProfilerCallback_OnFunctionExit_Stub( 940 IRpcStubBuffer* This, 941 IRpcChannelBuffer* pRpcChannelBuffer, 942 PRPC_MESSAGE pRpcMessage, 943 DWORD* pdwStubPhase); 944 945 #endif /* __IActiveScriptProfilerCallback_INTERFACE_DEFINED__ */ 946 947 948 /***************************************************************************** 949 * IActiveScriptProfilerCallback2 interface 950 */ 951 #ifndef __IActiveScriptProfilerCallback2_INTERFACE_DEFINED__ 952 #define __IActiveScriptProfilerCallback2_INTERFACE_DEFINED__ 953 954 DEFINE_GUID(IID_IActiveScriptProfilerCallback2, 0x31b7f8ad, 0xa637, 0x409c, 0xb2,0x2f, 0x04,0x09,0x95,0xb6,0x10,0x3d); 955 #if defined(__cplusplus) && !defined(CINTERFACE) 956 MIDL_INTERFACE("31b7f8ad-a637-409c-b22f-040995b6103d") 957 IActiveScriptProfilerCallback2 : public IActiveScriptProfilerCallback 958 { 959 virtual HRESULT STDMETHODCALLTYPE OnFunctionEnterByName( 960 const WCHAR *pwszFunctionName, 961 PROFILER_SCRIPT_TYPE type) = 0; 962 963 virtual HRESULT STDMETHODCALLTYPE OnFunctionExitByName( 964 const WCHAR *pwszFunctionName, 965 PROFILER_SCRIPT_TYPE type) = 0; 966 967 }; 968 #ifdef __CRT_UUID_DECL 969 __CRT_UUID_DECL(IActiveScriptProfilerCallback2, 0x31b7f8ad, 0xa637, 0x409c, 0xb2,0x2f, 0x04,0x09,0x95,0xb6,0x10,0x3d) 970 #endif 971 #else 972 typedef struct IActiveScriptProfilerCallback2Vtbl { 973 BEGIN_INTERFACE 974 975 /*** IUnknown methods ***/ 976 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 977 IActiveScriptProfilerCallback2* This, 978 REFIID riid, 979 void **ppvObject); 980 981 ULONG (STDMETHODCALLTYPE *AddRef)( 982 IActiveScriptProfilerCallback2* This); 983 984 ULONG (STDMETHODCALLTYPE *Release)( 985 IActiveScriptProfilerCallback2* This); 986 987 /*** IActiveScriptProfilerCallback methods ***/ 988 HRESULT (STDMETHODCALLTYPE *Initialize)( 989 IActiveScriptProfilerCallback2* This, 990 DWORD dwContext); 991 992 HRESULT (STDMETHODCALLTYPE *Shutdown)( 993 IActiveScriptProfilerCallback2* This, 994 HRESULT hrReason); 995 996 HRESULT (STDMETHODCALLTYPE *ScriptCompiled)( 997 IActiveScriptProfilerCallback2* This, 998 PROFILER_TOKEN scriptId, 999 PROFILER_SCRIPT_TYPE type, 1000 IUnknown *pIDebugDocumentContext); 1001 1002 HRESULT (STDMETHODCALLTYPE *FunctionCompiled)( 1003 IActiveScriptProfilerCallback2* This, 1004 PROFILER_TOKEN functionId, 1005 PROFILER_TOKEN scriptId, 1006 const WCHAR *pwszFunctionName, 1007 const WCHAR *pwszFunctionNameHint, 1008 IUnknown *pIDebugDocumentContext); 1009 1010 HRESULT (STDMETHODCALLTYPE *OnFunctionEnter)( 1011 IActiveScriptProfilerCallback2* This, 1012 PROFILER_TOKEN scriptId, 1013 PROFILER_TOKEN functionId); 1014 1015 HRESULT (STDMETHODCALLTYPE *OnFunctionExit)( 1016 IActiveScriptProfilerCallback2* This, 1017 PROFILER_TOKEN scriptId, 1018 PROFILER_TOKEN functionId); 1019 1020 /*** IActiveScriptProfilerCallback2 methods ***/ 1021 HRESULT (STDMETHODCALLTYPE *OnFunctionEnterByName)( 1022 IActiveScriptProfilerCallback2* This, 1023 const WCHAR *pwszFunctionName, 1024 PROFILER_SCRIPT_TYPE type); 1025 1026 HRESULT (STDMETHODCALLTYPE *OnFunctionExitByName)( 1027 IActiveScriptProfilerCallback2* This, 1028 const WCHAR *pwszFunctionName, 1029 PROFILER_SCRIPT_TYPE type); 1030 1031 END_INTERFACE 1032 } IActiveScriptProfilerCallback2Vtbl; 1033 interface IActiveScriptProfilerCallback2 { 1034 CONST_VTBL IActiveScriptProfilerCallback2Vtbl* lpVtbl; 1035 }; 1036 1037 #ifdef COBJMACROS 1038 #ifndef WIDL_C_INLINE_WRAPPERS 1039 /*** IUnknown methods ***/ 1040 #define IActiveScriptProfilerCallback2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1041 #define IActiveScriptProfilerCallback2_AddRef(This) (This)->lpVtbl->AddRef(This) 1042 #define IActiveScriptProfilerCallback2_Release(This) (This)->lpVtbl->Release(This) 1043 /*** IActiveScriptProfilerCallback methods ***/ 1044 #define IActiveScriptProfilerCallback2_Initialize(This,dwContext) (This)->lpVtbl->Initialize(This,dwContext) 1045 #define IActiveScriptProfilerCallback2_Shutdown(This,hrReason) (This)->lpVtbl->Shutdown(This,hrReason) 1046 #define IActiveScriptProfilerCallback2_ScriptCompiled(This,scriptId,type,pIDebugDocumentContext) (This)->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext) 1047 #define IActiveScriptProfilerCallback2_FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext) (This)->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext) 1048 #define IActiveScriptProfilerCallback2_OnFunctionEnter(This,scriptId,functionId) (This)->lpVtbl->OnFunctionEnter(This,scriptId,functionId) 1049 #define IActiveScriptProfilerCallback2_OnFunctionExit(This,scriptId,functionId) (This)->lpVtbl->OnFunctionExit(This,scriptId,functionId) 1050 /*** IActiveScriptProfilerCallback2 methods ***/ 1051 #define IActiveScriptProfilerCallback2_OnFunctionEnterByName(This,pwszFunctionName,type) (This)->lpVtbl->OnFunctionEnterByName(This,pwszFunctionName,type) 1052 #define IActiveScriptProfilerCallback2_OnFunctionExitByName(This,pwszFunctionName,type) (This)->lpVtbl->OnFunctionExitByName(This,pwszFunctionName,type) 1053 #else 1054 /*** IUnknown methods ***/ 1055 static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_QueryInterface(IActiveScriptProfilerCallback2* This,REFIID riid,void **ppvObject) { 1056 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1057 } 1058 static FORCEINLINE ULONG IActiveScriptProfilerCallback2_AddRef(IActiveScriptProfilerCallback2* This) { 1059 return This->lpVtbl->AddRef(This); 1060 } 1061 static FORCEINLINE ULONG IActiveScriptProfilerCallback2_Release(IActiveScriptProfilerCallback2* This) { 1062 return This->lpVtbl->Release(This); 1063 } 1064 /*** IActiveScriptProfilerCallback methods ***/ 1065 static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_Initialize(IActiveScriptProfilerCallback2* This,DWORD dwContext) { 1066 return This->lpVtbl->Initialize(This,dwContext); 1067 } 1068 static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_Shutdown(IActiveScriptProfilerCallback2* This,HRESULT hrReason) { 1069 return This->lpVtbl->Shutdown(This,hrReason); 1070 } 1071 static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_ScriptCompiled(IActiveScriptProfilerCallback2* This,PROFILER_TOKEN scriptId,PROFILER_SCRIPT_TYPE type,IUnknown *pIDebugDocumentContext) { 1072 return This->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext); 1073 } 1074 static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_FunctionCompiled(IActiveScriptProfilerCallback2* This,PROFILER_TOKEN functionId,PROFILER_TOKEN scriptId,const WCHAR *pwszFunctionName,const WCHAR *pwszFunctionNameHint,IUnknown *pIDebugDocumentContext) { 1075 return This->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext); 1076 } 1077 static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_OnFunctionEnter(IActiveScriptProfilerCallback2* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) { 1078 return This->lpVtbl->OnFunctionEnter(This,scriptId,functionId); 1079 } 1080 static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_OnFunctionExit(IActiveScriptProfilerCallback2* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) { 1081 return This->lpVtbl->OnFunctionExit(This,scriptId,functionId); 1082 } 1083 /*** IActiveScriptProfilerCallback2 methods ***/ 1084 static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_OnFunctionEnterByName(IActiveScriptProfilerCallback2* This,const WCHAR *pwszFunctionName,PROFILER_SCRIPT_TYPE type) { 1085 return This->lpVtbl->OnFunctionEnterByName(This,pwszFunctionName,type); 1086 } 1087 static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_OnFunctionExitByName(IActiveScriptProfilerCallback2* This,const WCHAR *pwszFunctionName,PROFILER_SCRIPT_TYPE type) { 1088 return This->lpVtbl->OnFunctionExitByName(This,pwszFunctionName,type); 1089 } 1090 #endif 1091 #endif 1092 1093 #endif 1094 1095 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerCallback2_OnFunctionEnterByName_Proxy( 1096 IActiveScriptProfilerCallback2* This, 1097 const WCHAR *pwszFunctionName, 1098 PROFILER_SCRIPT_TYPE type); 1099 void __RPC_STUB IActiveScriptProfilerCallback2_OnFunctionEnterByName_Stub( 1100 IRpcStubBuffer* This, 1101 IRpcChannelBuffer* pRpcChannelBuffer, 1102 PRPC_MESSAGE pRpcMessage, 1103 DWORD* pdwStubPhase); 1104 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerCallback2_OnFunctionExitByName_Proxy( 1105 IActiveScriptProfilerCallback2* This, 1106 const WCHAR *pwszFunctionName, 1107 PROFILER_SCRIPT_TYPE type); 1108 void __RPC_STUB IActiveScriptProfilerCallback2_OnFunctionExitByName_Stub( 1109 IRpcStubBuffer* This, 1110 IRpcChannelBuffer* pRpcChannelBuffer, 1111 PRPC_MESSAGE pRpcMessage, 1112 DWORD* pdwStubPhase); 1113 1114 #endif /* __IActiveScriptProfilerCallback2_INTERFACE_DEFINED__ */ 1115 1116 1117 /***************************************************************************** 1118 * IActiveScriptProfilerCallback3 interface 1119 */ 1120 #ifndef __IActiveScriptProfilerCallback3_INTERFACE_DEFINED__ 1121 #define __IActiveScriptProfilerCallback3_INTERFACE_DEFINED__ 1122 1123 DEFINE_GUID(IID_IActiveScriptProfilerCallback3, 0x6ac5ad25, 0x2037, 0x4687, 0x91,0xdf, 0xb5,0x99,0x79,0xd9,0x3d,0x73); 1124 #if defined(__cplusplus) && !defined(CINTERFACE) 1125 MIDL_INTERFACE("6ac5ad25-2037-4687-91df-b59979d93d73") 1126 IActiveScriptProfilerCallback3 : public IActiveScriptProfilerCallback2 1127 { 1128 virtual HRESULT STDMETHODCALLTYPE SetWebWorkerId( 1129 DWORD webWorkerId) = 0; 1130 1131 }; 1132 #ifdef __CRT_UUID_DECL 1133 __CRT_UUID_DECL(IActiveScriptProfilerCallback3, 0x6ac5ad25, 0x2037, 0x4687, 0x91,0xdf, 0xb5,0x99,0x79,0xd9,0x3d,0x73) 1134 #endif 1135 #else 1136 typedef struct IActiveScriptProfilerCallback3Vtbl { 1137 BEGIN_INTERFACE 1138 1139 /*** IUnknown methods ***/ 1140 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1141 IActiveScriptProfilerCallback3* This, 1142 REFIID riid, 1143 void **ppvObject); 1144 1145 ULONG (STDMETHODCALLTYPE *AddRef)( 1146 IActiveScriptProfilerCallback3* This); 1147 1148 ULONG (STDMETHODCALLTYPE *Release)( 1149 IActiveScriptProfilerCallback3* This); 1150 1151 /*** IActiveScriptProfilerCallback methods ***/ 1152 HRESULT (STDMETHODCALLTYPE *Initialize)( 1153 IActiveScriptProfilerCallback3* This, 1154 DWORD dwContext); 1155 1156 HRESULT (STDMETHODCALLTYPE *Shutdown)( 1157 IActiveScriptProfilerCallback3* This, 1158 HRESULT hrReason); 1159 1160 HRESULT (STDMETHODCALLTYPE *ScriptCompiled)( 1161 IActiveScriptProfilerCallback3* This, 1162 PROFILER_TOKEN scriptId, 1163 PROFILER_SCRIPT_TYPE type, 1164 IUnknown *pIDebugDocumentContext); 1165 1166 HRESULT (STDMETHODCALLTYPE *FunctionCompiled)( 1167 IActiveScriptProfilerCallback3* This, 1168 PROFILER_TOKEN functionId, 1169 PROFILER_TOKEN scriptId, 1170 const WCHAR *pwszFunctionName, 1171 const WCHAR *pwszFunctionNameHint, 1172 IUnknown *pIDebugDocumentContext); 1173 1174 HRESULT (STDMETHODCALLTYPE *OnFunctionEnter)( 1175 IActiveScriptProfilerCallback3* This, 1176 PROFILER_TOKEN scriptId, 1177 PROFILER_TOKEN functionId); 1178 1179 HRESULT (STDMETHODCALLTYPE *OnFunctionExit)( 1180 IActiveScriptProfilerCallback3* This, 1181 PROFILER_TOKEN scriptId, 1182 PROFILER_TOKEN functionId); 1183 1184 /*** IActiveScriptProfilerCallback2 methods ***/ 1185 HRESULT (STDMETHODCALLTYPE *OnFunctionEnterByName)( 1186 IActiveScriptProfilerCallback3* This, 1187 const WCHAR *pwszFunctionName, 1188 PROFILER_SCRIPT_TYPE type); 1189 1190 HRESULT (STDMETHODCALLTYPE *OnFunctionExitByName)( 1191 IActiveScriptProfilerCallback3* This, 1192 const WCHAR *pwszFunctionName, 1193 PROFILER_SCRIPT_TYPE type); 1194 1195 /*** IActiveScriptProfilerCallback3 methods ***/ 1196 HRESULT (STDMETHODCALLTYPE *SetWebWorkerId)( 1197 IActiveScriptProfilerCallback3* This, 1198 DWORD webWorkerId); 1199 1200 END_INTERFACE 1201 } IActiveScriptProfilerCallback3Vtbl; 1202 interface IActiveScriptProfilerCallback3 { 1203 CONST_VTBL IActiveScriptProfilerCallback3Vtbl* lpVtbl; 1204 }; 1205 1206 #ifdef COBJMACROS 1207 #ifndef WIDL_C_INLINE_WRAPPERS 1208 /*** IUnknown methods ***/ 1209 #define IActiveScriptProfilerCallback3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1210 #define IActiveScriptProfilerCallback3_AddRef(This) (This)->lpVtbl->AddRef(This) 1211 #define IActiveScriptProfilerCallback3_Release(This) (This)->lpVtbl->Release(This) 1212 /*** IActiveScriptProfilerCallback methods ***/ 1213 #define IActiveScriptProfilerCallback3_Initialize(This,dwContext) (This)->lpVtbl->Initialize(This,dwContext) 1214 #define IActiveScriptProfilerCallback3_Shutdown(This,hrReason) (This)->lpVtbl->Shutdown(This,hrReason) 1215 #define IActiveScriptProfilerCallback3_ScriptCompiled(This,scriptId,type,pIDebugDocumentContext) (This)->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext) 1216 #define IActiveScriptProfilerCallback3_FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext) (This)->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext) 1217 #define IActiveScriptProfilerCallback3_OnFunctionEnter(This,scriptId,functionId) (This)->lpVtbl->OnFunctionEnter(This,scriptId,functionId) 1218 #define IActiveScriptProfilerCallback3_OnFunctionExit(This,scriptId,functionId) (This)->lpVtbl->OnFunctionExit(This,scriptId,functionId) 1219 /*** IActiveScriptProfilerCallback2 methods ***/ 1220 #define IActiveScriptProfilerCallback3_OnFunctionEnterByName(This,pwszFunctionName,type) (This)->lpVtbl->OnFunctionEnterByName(This,pwszFunctionName,type) 1221 #define IActiveScriptProfilerCallback3_OnFunctionExitByName(This,pwszFunctionName,type) (This)->lpVtbl->OnFunctionExitByName(This,pwszFunctionName,type) 1222 /*** IActiveScriptProfilerCallback3 methods ***/ 1223 #define IActiveScriptProfilerCallback3_SetWebWorkerId(This,webWorkerId) (This)->lpVtbl->SetWebWorkerId(This,webWorkerId) 1224 #else 1225 /*** IUnknown methods ***/ 1226 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_QueryInterface(IActiveScriptProfilerCallback3* This,REFIID riid,void **ppvObject) { 1227 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1228 } 1229 static FORCEINLINE ULONG IActiveScriptProfilerCallback3_AddRef(IActiveScriptProfilerCallback3* This) { 1230 return This->lpVtbl->AddRef(This); 1231 } 1232 static FORCEINLINE ULONG IActiveScriptProfilerCallback3_Release(IActiveScriptProfilerCallback3* This) { 1233 return This->lpVtbl->Release(This); 1234 } 1235 /*** IActiveScriptProfilerCallback methods ***/ 1236 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_Initialize(IActiveScriptProfilerCallback3* This,DWORD dwContext) { 1237 return This->lpVtbl->Initialize(This,dwContext); 1238 } 1239 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_Shutdown(IActiveScriptProfilerCallback3* This,HRESULT hrReason) { 1240 return This->lpVtbl->Shutdown(This,hrReason); 1241 } 1242 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_ScriptCompiled(IActiveScriptProfilerCallback3* This,PROFILER_TOKEN scriptId,PROFILER_SCRIPT_TYPE type,IUnknown *pIDebugDocumentContext) { 1243 return This->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext); 1244 } 1245 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_FunctionCompiled(IActiveScriptProfilerCallback3* This,PROFILER_TOKEN functionId,PROFILER_TOKEN scriptId,const WCHAR *pwszFunctionName,const WCHAR *pwszFunctionNameHint,IUnknown *pIDebugDocumentContext) { 1246 return This->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext); 1247 } 1248 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_OnFunctionEnter(IActiveScriptProfilerCallback3* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) { 1249 return This->lpVtbl->OnFunctionEnter(This,scriptId,functionId); 1250 } 1251 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_OnFunctionExit(IActiveScriptProfilerCallback3* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) { 1252 return This->lpVtbl->OnFunctionExit(This,scriptId,functionId); 1253 } 1254 /*** IActiveScriptProfilerCallback2 methods ***/ 1255 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_OnFunctionEnterByName(IActiveScriptProfilerCallback3* This,const WCHAR *pwszFunctionName,PROFILER_SCRIPT_TYPE type) { 1256 return This->lpVtbl->OnFunctionEnterByName(This,pwszFunctionName,type); 1257 } 1258 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_OnFunctionExitByName(IActiveScriptProfilerCallback3* This,const WCHAR *pwszFunctionName,PROFILER_SCRIPT_TYPE type) { 1259 return This->lpVtbl->OnFunctionExitByName(This,pwszFunctionName,type); 1260 } 1261 /*** IActiveScriptProfilerCallback3 methods ***/ 1262 static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_SetWebWorkerId(IActiveScriptProfilerCallback3* This,DWORD webWorkerId) { 1263 return This->lpVtbl->SetWebWorkerId(This,webWorkerId); 1264 } 1265 #endif 1266 #endif 1267 1268 #endif 1269 1270 HRESULT STDMETHODCALLTYPE IActiveScriptProfilerCallback3_SetWebWorkerId_Proxy( 1271 IActiveScriptProfilerCallback3* This, 1272 DWORD webWorkerId); 1273 void __RPC_STUB IActiveScriptProfilerCallback3_SetWebWorkerId_Stub( 1274 IRpcStubBuffer* This, 1275 IRpcChannelBuffer* pRpcChannelBuffer, 1276 PRPC_MESSAGE pRpcMessage, 1277 DWORD* pdwStubPhase); 1278 1279 #endif /* __IActiveScriptProfilerCallback3_INTERFACE_DEFINED__ */ 1280 1281 #endif 1282 1283 #endif 1284 /* Begin additional prototypes for all interfaces */ 1285 1286 1287 /* End additional prototypes */ 1288 1289 #ifdef __cplusplus 1290 } 1291 #endif 1292 1293 #endif /* __activprof_h__ */ 1294