ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/activprof.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 50210 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

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