blob: cc4d7beb71631305f4703c46330c15b481cd9dd7 [file] [log] [blame]
/*** Autogenerated by WIDL 6.3 from include/activprof.idl - Do not edit ***/
#ifdef _WIN32
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include <rpc.h>
#include <rpcndr.h>
#endif
#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif
#ifndef __activprof_h__
#define __activprof_h__
/* Forward declarations */
#ifndef __IActiveScriptProfilerControl_FWD_DEFINED__
#define __IActiveScriptProfilerControl_FWD_DEFINED__
typedef interface IActiveScriptProfilerControl IActiveScriptProfilerControl;
#ifdef __cplusplus
interface IActiveScriptProfilerControl;
#endif /* __cplusplus */
#endif
#ifndef __IActiveScriptProfilerControl2_FWD_DEFINED__
#define __IActiveScriptProfilerControl2_FWD_DEFINED__
typedef interface IActiveScriptProfilerControl2 IActiveScriptProfilerControl2;
#ifdef __cplusplus
interface IActiveScriptProfilerControl2;
#endif /* __cplusplus */
#endif
#ifndef __IActiveScriptProfilerHeapEnum_FWD_DEFINED__
#define __IActiveScriptProfilerHeapEnum_FWD_DEFINED__
typedef interface IActiveScriptProfilerHeapEnum IActiveScriptProfilerHeapEnum;
#ifdef __cplusplus
interface IActiveScriptProfilerHeapEnum;
#endif /* __cplusplus */
#endif
#ifndef __IActiveScriptProfilerControl3_FWD_DEFINED__
#define __IActiveScriptProfilerControl3_FWD_DEFINED__
typedef interface IActiveScriptProfilerControl3 IActiveScriptProfilerControl3;
#ifdef __cplusplus
interface IActiveScriptProfilerControl3;
#endif /* __cplusplus */
#endif
#ifndef __IActiveScriptProfilerCallback_FWD_DEFINED__
#define __IActiveScriptProfilerCallback_FWD_DEFINED__
typedef interface IActiveScriptProfilerCallback IActiveScriptProfilerCallback;
#ifdef __cplusplus
interface IActiveScriptProfilerCallback;
#endif /* __cplusplus */
#endif
#ifndef __IActiveScriptProfilerCallback2_FWD_DEFINED__
#define __IActiveScriptProfilerCallback2_FWD_DEFINED__
typedef interface IActiveScriptProfilerCallback2 IActiveScriptProfilerCallback2;
#ifdef __cplusplus
interface IActiveScriptProfilerCallback2;
#endif /* __cplusplus */
#endif
#ifndef __IActiveScriptProfilerCallback3_FWD_DEFINED__
#define __IActiveScriptProfilerCallback3_FWD_DEFINED__
typedef interface IActiveScriptProfilerCallback3 IActiveScriptProfilerCallback3;
#ifdef __cplusplus
interface IActiveScriptProfilerCallback3;
#endif /* __cplusplus */
#endif
/* Headers for imported files */
#include <unknwn.h>
#ifdef __cplusplus
extern "C" {
#endif
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
const HRESULT ACTIVPROF_E_PROFILER_PRESENT = MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0200);
const HRESULT ACTIVPROF_E_PROFILER_ABSENT = MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0201);
const HRESULT ACTIVPROF_E_UNABLE_TO_APPLY_ACTION = MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0202);
const ULONG PROFILER_HEAP_OBJECT_NAME_ID_UNAVAILABLE=(ULONG)-1;
#ifndef __ActivProf_h
#define __ActivProf_h
#ifndef _NO_SCRIPT_GUIDS
DEFINE_GUID(IID_IActiveScriptProfilerHeapEnum, 0x32e4694e, 0xd37, 0x419b, 0xb9, 0x3d, 0xfa, 0x20, 0xde, 0xd6, 0xe8, 0xea);
DEFINE_GUID(IID_IActiveScriptProfilerControl3, 0xb403015, 0xf381, 0x4023, 0xa5, 0xd0, 0x6f, 0xed, 0x7, 0x6d, 0xe7, 0x16);
#endif
typedef enum __WIDL_activprof_generated_name_0000000C {
PROFILER_SCRIPT_TYPE_USER = 0,
PROFILER_SCRIPT_TYPE_DYNAMIC = 1,
PROFILER_SCRIPT_TYPE_NATIVE = 2,
PROFILER_SCRIPT_TYPE_DOM = 3
} PROFILER_SCRIPT_TYPE;
typedef enum __WIDL_activprof_generated_name_0000000D {
PROFILER_EVENT_MASK_TRACE_SCRIPT_FUNCTION_CALL = 0x1,
PROFILER_EVENT_MASK_TRACE_NATIVE_FUNCTION_CALL = 0x2,
PROFILER_EVENT_MASK_TRACE_DOM_FUNCTION_CALL = 0x4,
PROFILER_EVENT_MASK_TRACE_ALL = PROFILER_EVENT_MASK_TRACE_SCRIPT_FUNCTION_CALL | PROFILER_EVENT_MASK_TRACE_NATIVE_FUNCTION_CALL,
PROFILER_EVENT_MASK_TRACE_ALL_WITH_DOM = PROFILER_EVENT_MASK_TRACE_ALL | PROFILER_EVENT_MASK_TRACE_DOM_FUNCTION_CALL
} PROFILER_EVENT_MASK;
typedef LONG PROFILER_TOKEN;
/*****************************************************************************
* IActiveScriptProfilerControl interface
*/
#ifndef __IActiveScriptProfilerControl_INTERFACE_DEFINED__
#define __IActiveScriptProfilerControl_INTERFACE_DEFINED__
DEFINE_GUID(IID_IActiveScriptProfilerControl, 0x784b5ff0, 0x69b0, 0x47d1, 0xa7,0xdc, 0x25,0x18,0xf4,0x23,0x0e,0x90);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("784b5ff0-69b0-47d1-a7dc-2518f4230e90")
IActiveScriptProfilerControl : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE StartProfiling(
REFCLSID clsidProfilerObject,
DWORD dwEventMask,
DWORD dwContext) = 0;
virtual HRESULT STDMETHODCALLTYPE SetProfilerEventMask(
DWORD dwEventMask) = 0;
virtual HRESULT STDMETHODCALLTYPE StopProfiling(
HRESULT hrShutdownReason) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IActiveScriptProfilerControl, 0x784b5ff0, 0x69b0, 0x47d1, 0xa7,0xdc, 0x25,0x18,0xf4,0x23,0x0e,0x90)
#endif
#else
typedef struct IActiveScriptProfilerControlVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IActiveScriptProfilerControl *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IActiveScriptProfilerControl *This);
ULONG (STDMETHODCALLTYPE *Release)(
IActiveScriptProfilerControl *This);
/*** IActiveScriptProfilerControl methods ***/
HRESULT (STDMETHODCALLTYPE *StartProfiling)(
IActiveScriptProfilerControl *This,
REFCLSID clsidProfilerObject,
DWORD dwEventMask,
DWORD dwContext);
HRESULT (STDMETHODCALLTYPE *SetProfilerEventMask)(
IActiveScriptProfilerControl *This,
DWORD dwEventMask);
HRESULT (STDMETHODCALLTYPE *StopProfiling)(
IActiveScriptProfilerControl *This,
HRESULT hrShutdownReason);
END_INTERFACE
} IActiveScriptProfilerControlVtbl;
interface IActiveScriptProfilerControl {
CONST_VTBL IActiveScriptProfilerControlVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IActiveScriptProfilerControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IActiveScriptProfilerControl_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IActiveScriptProfilerControl_Release(This) (This)->lpVtbl->Release(This)
/*** IActiveScriptProfilerControl methods ***/
#define IActiveScriptProfilerControl_StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext) (This)->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext)
#define IActiveScriptProfilerControl_SetProfilerEventMask(This,dwEventMask) (This)->lpVtbl->SetProfilerEventMask(This,dwEventMask)
#define IActiveScriptProfilerControl_StopProfiling(This,hrShutdownReason) (This)->lpVtbl->StopProfiling(This,hrShutdownReason)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerControl_QueryInterface(IActiveScriptProfilerControl* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IActiveScriptProfilerControl_AddRef(IActiveScriptProfilerControl* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IActiveScriptProfilerControl_Release(IActiveScriptProfilerControl* This) {
return This->lpVtbl->Release(This);
}
/*** IActiveScriptProfilerControl methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerControl_StartProfiling(IActiveScriptProfilerControl* This,REFCLSID clsidProfilerObject,DWORD dwEventMask,DWORD dwContext) {
return This->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerControl_SetProfilerEventMask(IActiveScriptProfilerControl* This,DWORD dwEventMask) {
return This->lpVtbl->SetProfilerEventMask(This,dwEventMask);
}
static FORCEINLINE HRESULT IActiveScriptProfilerControl_StopProfiling(IActiveScriptProfilerControl* This,HRESULT hrShutdownReason) {
return This->lpVtbl->StopProfiling(This,hrShutdownReason);
}
#endif
#endif
#endif
#endif /* __IActiveScriptProfilerControl_INTERFACE_DEFINED__ */
/*****************************************************************************
* IActiveScriptProfilerControl2 interface
*/
#ifndef __IActiveScriptProfilerControl2_INTERFACE_DEFINED__
#define __IActiveScriptProfilerControl2_INTERFACE_DEFINED__
DEFINE_GUID(IID_IActiveScriptProfilerControl2, 0x47810165, 0x498f, 0x40be, 0x94,0xf1, 0x65,0x35,0x57,0xe9,0xe7,0xda);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("47810165-498f-40be-94f1-653557e9e7da")
IActiveScriptProfilerControl2 : public IActiveScriptProfilerControl
{
virtual HRESULT STDMETHODCALLTYPE CompleteProfilerStart(
) = 0;
virtual HRESULT STDMETHODCALLTYPE PrepareProfilerStop(
) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IActiveScriptProfilerControl2, 0x47810165, 0x498f, 0x40be, 0x94,0xf1, 0x65,0x35,0x57,0xe9,0xe7,0xda)
#endif
#else
typedef struct IActiveScriptProfilerControl2Vtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IActiveScriptProfilerControl2 *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IActiveScriptProfilerControl2 *This);
ULONG (STDMETHODCALLTYPE *Release)(
IActiveScriptProfilerControl2 *This);
/*** IActiveScriptProfilerControl methods ***/
HRESULT (STDMETHODCALLTYPE *StartProfiling)(
IActiveScriptProfilerControl2 *This,
REFCLSID clsidProfilerObject,
DWORD dwEventMask,
DWORD dwContext);
HRESULT (STDMETHODCALLTYPE *SetProfilerEventMask)(
IActiveScriptProfilerControl2 *This,
DWORD dwEventMask);
HRESULT (STDMETHODCALLTYPE *StopProfiling)(
IActiveScriptProfilerControl2 *This,
HRESULT hrShutdownReason);
/*** IActiveScriptProfilerControl2 methods ***/
HRESULT (STDMETHODCALLTYPE *CompleteProfilerStart)(
IActiveScriptProfilerControl2 *This);
HRESULT (STDMETHODCALLTYPE *PrepareProfilerStop)(
IActiveScriptProfilerControl2 *This);
END_INTERFACE
} IActiveScriptProfilerControl2Vtbl;
interface IActiveScriptProfilerControl2 {
CONST_VTBL IActiveScriptProfilerControl2Vtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IActiveScriptProfilerControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IActiveScriptProfilerControl2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IActiveScriptProfilerControl2_Release(This) (This)->lpVtbl->Release(This)
/*** IActiveScriptProfilerControl methods ***/
#define IActiveScriptProfilerControl2_StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext) (This)->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext)
#define IActiveScriptProfilerControl2_SetProfilerEventMask(This,dwEventMask) (This)->lpVtbl->SetProfilerEventMask(This,dwEventMask)
#define IActiveScriptProfilerControl2_StopProfiling(This,hrShutdownReason) (This)->lpVtbl->StopProfiling(This,hrShutdownReason)
/*** IActiveScriptProfilerControl2 methods ***/
#define IActiveScriptProfilerControl2_CompleteProfilerStart(This) (This)->lpVtbl->CompleteProfilerStart(This)
#define IActiveScriptProfilerControl2_PrepareProfilerStop(This) (This)->lpVtbl->PrepareProfilerStop(This)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerControl2_QueryInterface(IActiveScriptProfilerControl2* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IActiveScriptProfilerControl2_AddRef(IActiveScriptProfilerControl2* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IActiveScriptProfilerControl2_Release(IActiveScriptProfilerControl2* This) {
return This->lpVtbl->Release(This);
}
/*** IActiveScriptProfilerControl methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerControl2_StartProfiling(IActiveScriptProfilerControl2* This,REFCLSID clsidProfilerObject,DWORD dwEventMask,DWORD dwContext) {
return This->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerControl2_SetProfilerEventMask(IActiveScriptProfilerControl2* This,DWORD dwEventMask) {
return This->lpVtbl->SetProfilerEventMask(This,dwEventMask);
}
static FORCEINLINE HRESULT IActiveScriptProfilerControl2_StopProfiling(IActiveScriptProfilerControl2* This,HRESULT hrShutdownReason) {
return This->lpVtbl->StopProfiling(This,hrShutdownReason);
}
/*** IActiveScriptProfilerControl2 methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerControl2_CompleteProfilerStart(IActiveScriptProfilerControl2* This) {
return This->lpVtbl->CompleteProfilerStart(This);
}
static FORCEINLINE HRESULT IActiveScriptProfilerControl2_PrepareProfilerStop(IActiveScriptProfilerControl2* This) {
return This->lpVtbl->PrepareProfilerStop(This);
}
#endif
#endif
#endif
#endif /* __IActiveScriptProfilerControl2_INTERFACE_DEFINED__ */
typedef DWORD_PTR PROFILER_HEAP_OBJECT_ID;
typedef UINT PROFILER_HEAP_OBJECT_NAME_ID;
typedef void *PROFILER_EXTERNAL_OBJECT_ADDRESS;
typedef enum __WIDL_activprof_generated_name_0000000E {
PROFILER_HEAP_OBJECT_FLAGS_NEW_OBJECT = 0x1,
PROFILER_HEAP_OBJECT_FLAGS_IS_ROOT = 0x2,
PROFILER_HEAP_OBJECT_FLAGS_SITE_CLOSED = 0x4,
PROFILER_HEAP_OBJECT_FLAGS_EXTERNAL = 0x8,
PROFILER_HEAP_OBJECT_FLAGS_EXTERNAL_UNKNOWN = 0x10,
PROFILER_HEAP_OBJECT_FLAGS_EXTERNAL_DISPATCH = 0x20,
PROFILER_HEAP_OBJECT_FLAGS_SIZE_APPROXIMATE = 0x40,
PROFILER_HEAP_OBJECT_FLAGS_SIZE_UNAVAILABLE = 0x80,
PROFILER_HEAP_OBJECT_FLAGS_NEW_STATE_UNAVAILABLE = 0x100,
PROFILER_HEAP_OBJECT_FLAGS_WINRT_INSTANCE = 0x200,
PROFILER_HEAP_OBJECT_FLAGS_WINRT_RUNTIMECLASS = 0x400,
PROFILER_HEAP_OBJECT_FLAGS_WINRT_DELEGATE = 0x800,
PROFILER_HEAP_OBJECT_FLAGS_WINRT_NAMESPACE = 0x1000
} PROFILER_HEAP_OBJECT_FLAGS;
typedef enum __WIDL_activprof_generated_name_0000000F {
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_PROTOTYPE = 0x1,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_FUNCTION_NAME = 0x2,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_SCOPE_LIST = 0x3,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_INTERNAL_PROPERTY = 0x4,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_NAME_PROPERTIES = 0x5,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_INDEX_PROPERTIES = 0x6,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_ELEMENT_ATTRIBUTES_SIZE = 0x7,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_ELEMENT_TEXT_CHILDREN_SIZE = 0x8,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_RELATIONSHIPS = 0x9,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_WINRTEVENTS = 0xa,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_MAX_VALUE = PROFILER_HEAP_OBJECT_OPTIONAL_INFO_WINRTEVENTS
} PROFILER_HEAP_OBJECT_OPTIONAL_INFO_TYPE;
typedef struct _PROFILER_HEAP_OBJECT_SCOPE_LIST {
UINT count;
PROFILER_HEAP_OBJECT_ID scopes[1];
} PROFILER_HEAP_OBJECT_SCOPE_LIST;
typedef enum __WIDL_activprof_generated_name_00000010 {
PROFILER_PROPERTY_TYPE_NUMBER = 0x1,
PROFILER_PROPERTY_TYPE_STRING = 0x2,
PROFILER_PROPERTY_TYPE_HEAP_OBJECT = 0x3,
PROFILER_PROPERTY_TYPE_EXTERNAL_OBJECT = 0x4,
PROFILER_PROPERTY_TYPE_BSTR = 0x5
} PROFILER_RELATIONSHIP_INFO;
typedef struct _PROFILER_HEAP_OBJECT_RELATIONSHIP {
PROFILER_HEAP_OBJECT_NAME_ID relationshipId;
PROFILER_RELATIONSHIP_INFO relationshipInfo;
__C89_NAMELESS union {
double numberValue;
LPCWSTR stringValue;
BSTR bstrValue;
PROFILER_HEAP_OBJECT_ID objectId;
PROFILER_EXTERNAL_OBJECT_ADDRESS externalObjectAddress;
} __C89_NAMELESSUNIONNAME;
} PROFILER_HEAP_OBJECT_RELATIONSHIP;
typedef struct _PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST {
UINT count;
PROFILER_HEAP_OBJECT_RELATIONSHIP elements[1];
} PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST;
typedef struct _PROFILER_HEAP_OBJECT_OPTIONAL_INFO {
PROFILER_HEAP_OBJECT_OPTIONAL_INFO_TYPE infoType;
__C89_NAMELESS union {
PROFILER_HEAP_OBJECT_ID prototype;
LPCWSTR functionName;
UINT elementAttributesSize;
UINT elementTextChildrenSize;
PROFILER_HEAP_OBJECT_SCOPE_LIST *scopeList;
PROFILER_HEAP_OBJECT_RELATIONSHIP *internalProperty;
PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST *namePropertyList;
PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST *indexPropertyList;
PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST *relationshipList;
PROFILER_HEAP_OBJECT_RELATIONSHIP_LIST *eventList;
} __C89_NAMELESSUNIONNAME;
} PROFILER_HEAP_OBJECT_OPTIONAL_INFO;
typedef struct _PROFILER_HEAP_OBJECT {
UINT size;
__C89_NAMELESS union {
PROFILER_HEAP_OBJECT_ID objectId;
PROFILER_EXTERNAL_OBJECT_ADDRESS externalObjectAddress;
} __C89_NAMELESSUNIONNAME;
PROFILER_HEAP_OBJECT_NAME_ID typeNameId;
ULONG flags;
USHORT unused;
USHORT optionalInfoCount;
} PROFILER_HEAP_OBJECT;
/*****************************************************************************
* IActiveScriptProfilerHeapEnum interface
*/
#ifndef __IActiveScriptProfilerHeapEnum_INTERFACE_DEFINED__
#define __IActiveScriptProfilerHeapEnum_INTERFACE_DEFINED__
DEFINE_GUID(IID_IActiveScriptProfilerHeapEnum, 0x32e4694e, 0x0d37, 0x419b, 0xb9,0x3d, 0xfa,0x20,0xde,0xd6,0xe8,0xea);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("32e4694e-0d37-419b-b93d-fa20ded6e8ea")
IActiveScriptProfilerHeapEnum : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE Next(
ULONG celt,
PROFILER_HEAP_OBJECT **heapObjects,
ULONG *pceltFetched) = 0;
virtual HRESULT STDMETHODCALLTYPE GetOptionalInfo(
PROFILER_HEAP_OBJECT *heapObject,
ULONG celt,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO *optionalInfo) = 0;
virtual HRESULT STDMETHODCALLTYPE FreeObjectAndOptionalInfo(
ULONG celt,
PROFILER_HEAP_OBJECT **heapObjects) = 0;
virtual HRESULT STDMETHODCALLTYPE GetNameIdMap(
LPCWSTR * pNameList[],
UINT *pcelt) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IActiveScriptProfilerHeapEnum, 0x32e4694e, 0x0d37, 0x419b, 0xb9,0x3d, 0xfa,0x20,0xde,0xd6,0xe8,0xea)
#endif
#else
typedef struct IActiveScriptProfilerHeapEnumVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IActiveScriptProfilerHeapEnum *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IActiveScriptProfilerHeapEnum *This);
ULONG (STDMETHODCALLTYPE *Release)(
IActiveScriptProfilerHeapEnum *This);
/*** IActiveScriptProfilerHeapEnum methods ***/
HRESULT (STDMETHODCALLTYPE *Next)(
IActiveScriptProfilerHeapEnum *This,
ULONG celt,
PROFILER_HEAP_OBJECT **heapObjects,
ULONG *pceltFetched);
HRESULT (STDMETHODCALLTYPE *GetOptionalInfo)(
IActiveScriptProfilerHeapEnum *This,
PROFILER_HEAP_OBJECT *heapObject,
ULONG celt,
PROFILER_HEAP_OBJECT_OPTIONAL_INFO *optionalInfo);
HRESULT (STDMETHODCALLTYPE *FreeObjectAndOptionalInfo)(
IActiveScriptProfilerHeapEnum *This,
ULONG celt,
PROFILER_HEAP_OBJECT **heapObjects);
HRESULT (STDMETHODCALLTYPE *GetNameIdMap)(
IActiveScriptProfilerHeapEnum *This,
LPCWSTR * pNameList[],
UINT *pcelt);
END_INTERFACE
} IActiveScriptProfilerHeapEnumVtbl;
interface IActiveScriptProfilerHeapEnum {
CONST_VTBL IActiveScriptProfilerHeapEnumVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IActiveScriptProfilerHeapEnum_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IActiveScriptProfilerHeapEnum_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IActiveScriptProfilerHeapEnum_Release(This) (This)->lpVtbl->Release(This)
/*** IActiveScriptProfilerHeapEnum methods ***/
#define IActiveScriptProfilerHeapEnum_Next(This,celt,heapObjects,pceltFetched) (This)->lpVtbl->Next(This,celt,heapObjects,pceltFetched)
#define IActiveScriptProfilerHeapEnum_GetOptionalInfo(This,heapObject,celt,optionalInfo) (This)->lpVtbl->GetOptionalInfo(This,heapObject,celt,optionalInfo)
#define IActiveScriptProfilerHeapEnum_FreeObjectAndOptionalInfo(This,celt,heapObjects) (This)->lpVtbl->FreeObjectAndOptionalInfo(This,celt,heapObjects)
#define IActiveScriptProfilerHeapEnum_GetNameIdMap(This,pNameList,pcelt) (This)->lpVtbl->GetNameIdMap(This,pNameList,pcelt)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_QueryInterface(IActiveScriptProfilerHeapEnum* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IActiveScriptProfilerHeapEnum_AddRef(IActiveScriptProfilerHeapEnum* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IActiveScriptProfilerHeapEnum_Release(IActiveScriptProfilerHeapEnum* This) {
return This->lpVtbl->Release(This);
}
/*** IActiveScriptProfilerHeapEnum methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_Next(IActiveScriptProfilerHeapEnum* This,ULONG celt,PROFILER_HEAP_OBJECT **heapObjects,ULONG *pceltFetched) {
return This->lpVtbl->Next(This,celt,heapObjects,pceltFetched);
}
static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_GetOptionalInfo(IActiveScriptProfilerHeapEnum* This,PROFILER_HEAP_OBJECT *heapObject,ULONG celt,PROFILER_HEAP_OBJECT_OPTIONAL_INFO *optionalInfo) {
return This->lpVtbl->GetOptionalInfo(This,heapObject,celt,optionalInfo);
}
static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_FreeObjectAndOptionalInfo(IActiveScriptProfilerHeapEnum* This,ULONG celt,PROFILER_HEAP_OBJECT **heapObjects) {
return This->lpVtbl->FreeObjectAndOptionalInfo(This,celt,heapObjects);
}
static FORCEINLINE HRESULT IActiveScriptProfilerHeapEnum_GetNameIdMap(IActiveScriptProfilerHeapEnum* This,LPCWSTR * pNameList[],UINT *pcelt) {
return This->lpVtbl->GetNameIdMap(This,pNameList,pcelt);
}
#endif
#endif
#endif
#endif /* __IActiveScriptProfilerHeapEnum_INTERFACE_DEFINED__ */
/*****************************************************************************
* IActiveScriptProfilerControl3 interface
*/
#ifndef __IActiveScriptProfilerControl3_INTERFACE_DEFINED__
#define __IActiveScriptProfilerControl3_INTERFACE_DEFINED__
DEFINE_GUID(IID_IActiveScriptProfilerControl3, 0x0b403015, 0xf381, 0x4023, 0xa5,0xd0, 0x6f,0xed,0x07,0x6d,0xe7,0x16);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("0b403015-f381-4023-a5d0-6fed076de716")
IActiveScriptProfilerControl3 : public IActiveScriptProfilerControl2
{
virtual HRESULT STDMETHODCALLTYPE EnumHeap(
IActiveScriptProfilerHeapEnum **ppEnum) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IActiveScriptProfilerControl3, 0x0b403015, 0xf381, 0x4023, 0xa5,0xd0, 0x6f,0xed,0x07,0x6d,0xe7,0x16)
#endif
#else
typedef struct IActiveScriptProfilerControl3Vtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IActiveScriptProfilerControl3 *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IActiveScriptProfilerControl3 *This);
ULONG (STDMETHODCALLTYPE *Release)(
IActiveScriptProfilerControl3 *This);
/*** IActiveScriptProfilerControl methods ***/
HRESULT (STDMETHODCALLTYPE *StartProfiling)(
IActiveScriptProfilerControl3 *This,
REFCLSID clsidProfilerObject,
DWORD dwEventMask,
DWORD dwContext);
HRESULT (STDMETHODCALLTYPE *SetProfilerEventMask)(
IActiveScriptProfilerControl3 *This,
DWORD dwEventMask);
HRESULT (STDMETHODCALLTYPE *StopProfiling)(
IActiveScriptProfilerControl3 *This,
HRESULT hrShutdownReason);
/*** IActiveScriptProfilerControl2 methods ***/
HRESULT (STDMETHODCALLTYPE *CompleteProfilerStart)(
IActiveScriptProfilerControl3 *This);
HRESULT (STDMETHODCALLTYPE *PrepareProfilerStop)(
IActiveScriptProfilerControl3 *This);
/*** IActiveScriptProfilerControl3 methods ***/
HRESULT (STDMETHODCALLTYPE *EnumHeap)(
IActiveScriptProfilerControl3 *This,
IActiveScriptProfilerHeapEnum **ppEnum);
END_INTERFACE
} IActiveScriptProfilerControl3Vtbl;
interface IActiveScriptProfilerControl3 {
CONST_VTBL IActiveScriptProfilerControl3Vtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IActiveScriptProfilerControl3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IActiveScriptProfilerControl3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IActiveScriptProfilerControl3_Release(This) (This)->lpVtbl->Release(This)
/*** IActiveScriptProfilerControl methods ***/
#define IActiveScriptProfilerControl3_StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext) (This)->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext)
#define IActiveScriptProfilerControl3_SetProfilerEventMask(This,dwEventMask) (This)->lpVtbl->SetProfilerEventMask(This,dwEventMask)
#define IActiveScriptProfilerControl3_StopProfiling(This,hrShutdownReason) (This)->lpVtbl->StopProfiling(This,hrShutdownReason)
/*** IActiveScriptProfilerControl2 methods ***/
#define IActiveScriptProfilerControl3_CompleteProfilerStart(This) (This)->lpVtbl->CompleteProfilerStart(This)
#define IActiveScriptProfilerControl3_PrepareProfilerStop(This) (This)->lpVtbl->PrepareProfilerStop(This)
/*** IActiveScriptProfilerControl3 methods ***/
#define IActiveScriptProfilerControl3_EnumHeap(This,ppEnum) (This)->lpVtbl->EnumHeap(This,ppEnum)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerControl3_QueryInterface(IActiveScriptProfilerControl3* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IActiveScriptProfilerControl3_AddRef(IActiveScriptProfilerControl3* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IActiveScriptProfilerControl3_Release(IActiveScriptProfilerControl3* This) {
return This->lpVtbl->Release(This);
}
/*** IActiveScriptProfilerControl methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerControl3_StartProfiling(IActiveScriptProfilerControl3* This,REFCLSID clsidProfilerObject,DWORD dwEventMask,DWORD dwContext) {
return This->lpVtbl->StartProfiling(This,clsidProfilerObject,dwEventMask,dwContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerControl3_SetProfilerEventMask(IActiveScriptProfilerControl3* This,DWORD dwEventMask) {
return This->lpVtbl->SetProfilerEventMask(This,dwEventMask);
}
static FORCEINLINE HRESULT IActiveScriptProfilerControl3_StopProfiling(IActiveScriptProfilerControl3* This,HRESULT hrShutdownReason) {
return This->lpVtbl->StopProfiling(This,hrShutdownReason);
}
/*** IActiveScriptProfilerControl2 methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerControl3_CompleteProfilerStart(IActiveScriptProfilerControl3* This) {
return This->lpVtbl->CompleteProfilerStart(This);
}
static FORCEINLINE HRESULT IActiveScriptProfilerControl3_PrepareProfilerStop(IActiveScriptProfilerControl3* This) {
return This->lpVtbl->PrepareProfilerStop(This);
}
/*** IActiveScriptProfilerControl3 methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerControl3_EnumHeap(IActiveScriptProfilerControl3* This,IActiveScriptProfilerHeapEnum **ppEnum) {
return This->lpVtbl->EnumHeap(This,ppEnum);
}
#endif
#endif
#endif
#endif /* __IActiveScriptProfilerControl3_INTERFACE_DEFINED__ */
/*****************************************************************************
* IActiveScriptProfilerCallback interface
*/
#ifndef __IActiveScriptProfilerCallback_INTERFACE_DEFINED__
#define __IActiveScriptProfilerCallback_INTERFACE_DEFINED__
DEFINE_GUID(IID_IActiveScriptProfilerCallback, 0x740eca23, 0x7d9d, 0x42e5, 0xba,0x9d, 0xf8,0xb2,0x4b,0x1c,0x7a,0x9b);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("740eca23-7d9d-42e5-ba9d-f8b24b1c7a9b")
IActiveScriptProfilerCallback : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE Initialize(
DWORD dwContext) = 0;
virtual HRESULT STDMETHODCALLTYPE Shutdown(
HRESULT hrReason) = 0;
virtual HRESULT STDMETHODCALLTYPE ScriptCompiled(
PROFILER_TOKEN scriptId,
PROFILER_SCRIPT_TYPE type,
IUnknown *pIDebugDocumentContext) = 0;
virtual HRESULT STDMETHODCALLTYPE FunctionCompiled(
PROFILER_TOKEN functionId,
PROFILER_TOKEN scriptId,
const WCHAR *pwszFunctionName,
const WCHAR *pwszFunctionNameHint,
IUnknown *pIDebugDocumentContext) = 0;
virtual HRESULT STDMETHODCALLTYPE OnFunctionEnter(
PROFILER_TOKEN scriptId,
PROFILER_TOKEN functionId) = 0;
virtual HRESULT STDMETHODCALLTYPE OnFunctionExit(
PROFILER_TOKEN scriptId,
PROFILER_TOKEN functionId) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IActiveScriptProfilerCallback, 0x740eca23, 0x7d9d, 0x42e5, 0xba,0x9d, 0xf8,0xb2,0x4b,0x1c,0x7a,0x9b)
#endif
#else
typedef struct IActiveScriptProfilerCallbackVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IActiveScriptProfilerCallback *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IActiveScriptProfilerCallback *This);
ULONG (STDMETHODCALLTYPE *Release)(
IActiveScriptProfilerCallback *This);
/*** IActiveScriptProfilerCallback methods ***/
HRESULT (STDMETHODCALLTYPE *Initialize)(
IActiveScriptProfilerCallback *This,
DWORD dwContext);
HRESULT (STDMETHODCALLTYPE *Shutdown)(
IActiveScriptProfilerCallback *This,
HRESULT hrReason);
HRESULT (STDMETHODCALLTYPE *ScriptCompiled)(
IActiveScriptProfilerCallback *This,
PROFILER_TOKEN scriptId,
PROFILER_SCRIPT_TYPE type,
IUnknown *pIDebugDocumentContext);
HRESULT (STDMETHODCALLTYPE *FunctionCompiled)(
IActiveScriptProfilerCallback *This,
PROFILER_TOKEN functionId,
PROFILER_TOKEN scriptId,
const WCHAR *pwszFunctionName,
const WCHAR *pwszFunctionNameHint,
IUnknown *pIDebugDocumentContext);
HRESULT (STDMETHODCALLTYPE *OnFunctionEnter)(
IActiveScriptProfilerCallback *This,
PROFILER_TOKEN scriptId,
PROFILER_TOKEN functionId);
HRESULT (STDMETHODCALLTYPE *OnFunctionExit)(
IActiveScriptProfilerCallback *This,
PROFILER_TOKEN scriptId,
PROFILER_TOKEN functionId);
END_INTERFACE
} IActiveScriptProfilerCallbackVtbl;
interface IActiveScriptProfilerCallback {
CONST_VTBL IActiveScriptProfilerCallbackVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IActiveScriptProfilerCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IActiveScriptProfilerCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IActiveScriptProfilerCallback_Release(This) (This)->lpVtbl->Release(This)
/*** IActiveScriptProfilerCallback methods ***/
#define IActiveScriptProfilerCallback_Initialize(This,dwContext) (This)->lpVtbl->Initialize(This,dwContext)
#define IActiveScriptProfilerCallback_Shutdown(This,hrReason) (This)->lpVtbl->Shutdown(This,hrReason)
#define IActiveScriptProfilerCallback_ScriptCompiled(This,scriptId,type,pIDebugDocumentContext) (This)->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext)
#define IActiveScriptProfilerCallback_FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext) (This)->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext)
#define IActiveScriptProfilerCallback_OnFunctionEnter(This,scriptId,functionId) (This)->lpVtbl->OnFunctionEnter(This,scriptId,functionId)
#define IActiveScriptProfilerCallback_OnFunctionExit(This,scriptId,functionId) (This)->lpVtbl->OnFunctionExit(This,scriptId,functionId)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerCallback_QueryInterface(IActiveScriptProfilerCallback* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IActiveScriptProfilerCallback_AddRef(IActiveScriptProfilerCallback* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IActiveScriptProfilerCallback_Release(IActiveScriptProfilerCallback* This) {
return This->lpVtbl->Release(This);
}
/*** IActiveScriptProfilerCallback methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerCallback_Initialize(IActiveScriptProfilerCallback* This,DWORD dwContext) {
return This->lpVtbl->Initialize(This,dwContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback_Shutdown(IActiveScriptProfilerCallback* This,HRESULT hrReason) {
return This->lpVtbl->Shutdown(This,hrReason);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback_ScriptCompiled(IActiveScriptProfilerCallback* This,PROFILER_TOKEN scriptId,PROFILER_SCRIPT_TYPE type,IUnknown *pIDebugDocumentContext) {
return This->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback_FunctionCompiled(IActiveScriptProfilerCallback* This,PROFILER_TOKEN functionId,PROFILER_TOKEN scriptId,const WCHAR *pwszFunctionName,const WCHAR *pwszFunctionNameHint,IUnknown *pIDebugDocumentContext) {
return This->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback_OnFunctionEnter(IActiveScriptProfilerCallback* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) {
return This->lpVtbl->OnFunctionEnter(This,scriptId,functionId);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback_OnFunctionExit(IActiveScriptProfilerCallback* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) {
return This->lpVtbl->OnFunctionExit(This,scriptId,functionId);
}
#endif
#endif
#endif
#endif /* __IActiveScriptProfilerCallback_INTERFACE_DEFINED__ */
/*****************************************************************************
* IActiveScriptProfilerCallback2 interface
*/
#ifndef __IActiveScriptProfilerCallback2_INTERFACE_DEFINED__
#define __IActiveScriptProfilerCallback2_INTERFACE_DEFINED__
DEFINE_GUID(IID_IActiveScriptProfilerCallback2, 0x31b7f8ad, 0xa637, 0x409c, 0xb2,0x2f, 0x04,0x09,0x95,0xb6,0x10,0x3d);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("31b7f8ad-a637-409c-b22f-040995b6103d")
IActiveScriptProfilerCallback2 : public IActiveScriptProfilerCallback
{
virtual HRESULT STDMETHODCALLTYPE OnFunctionEnterByName(
const WCHAR *pwszFunctionName,
PROFILER_SCRIPT_TYPE type) = 0;
virtual HRESULT STDMETHODCALLTYPE OnFunctionExitByName(
const WCHAR *pwszFunctionName,
PROFILER_SCRIPT_TYPE type) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IActiveScriptProfilerCallback2, 0x31b7f8ad, 0xa637, 0x409c, 0xb2,0x2f, 0x04,0x09,0x95,0xb6,0x10,0x3d)
#endif
#else
typedef struct IActiveScriptProfilerCallback2Vtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IActiveScriptProfilerCallback2 *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IActiveScriptProfilerCallback2 *This);
ULONG (STDMETHODCALLTYPE *Release)(
IActiveScriptProfilerCallback2 *This);
/*** IActiveScriptProfilerCallback methods ***/
HRESULT (STDMETHODCALLTYPE *Initialize)(
IActiveScriptProfilerCallback2 *This,
DWORD dwContext);
HRESULT (STDMETHODCALLTYPE *Shutdown)(
IActiveScriptProfilerCallback2 *This,
HRESULT hrReason);
HRESULT (STDMETHODCALLTYPE *ScriptCompiled)(
IActiveScriptProfilerCallback2 *This,
PROFILER_TOKEN scriptId,
PROFILER_SCRIPT_TYPE type,
IUnknown *pIDebugDocumentContext);
HRESULT (STDMETHODCALLTYPE *FunctionCompiled)(
IActiveScriptProfilerCallback2 *This,
PROFILER_TOKEN functionId,
PROFILER_TOKEN scriptId,
const WCHAR *pwszFunctionName,
const WCHAR *pwszFunctionNameHint,
IUnknown *pIDebugDocumentContext);
HRESULT (STDMETHODCALLTYPE *OnFunctionEnter)(
IActiveScriptProfilerCallback2 *This,
PROFILER_TOKEN scriptId,
PROFILER_TOKEN functionId);
HRESULT (STDMETHODCALLTYPE *OnFunctionExit)(
IActiveScriptProfilerCallback2 *This,
PROFILER_TOKEN scriptId,
PROFILER_TOKEN functionId);
/*** IActiveScriptProfilerCallback2 methods ***/
HRESULT (STDMETHODCALLTYPE *OnFunctionEnterByName)(
IActiveScriptProfilerCallback2 *This,
const WCHAR *pwszFunctionName,
PROFILER_SCRIPT_TYPE type);
HRESULT (STDMETHODCALLTYPE *OnFunctionExitByName)(
IActiveScriptProfilerCallback2 *This,
const WCHAR *pwszFunctionName,
PROFILER_SCRIPT_TYPE type);
END_INTERFACE
} IActiveScriptProfilerCallback2Vtbl;
interface IActiveScriptProfilerCallback2 {
CONST_VTBL IActiveScriptProfilerCallback2Vtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IActiveScriptProfilerCallback2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IActiveScriptProfilerCallback2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IActiveScriptProfilerCallback2_Release(This) (This)->lpVtbl->Release(This)
/*** IActiveScriptProfilerCallback methods ***/
#define IActiveScriptProfilerCallback2_Initialize(This,dwContext) (This)->lpVtbl->Initialize(This,dwContext)
#define IActiveScriptProfilerCallback2_Shutdown(This,hrReason) (This)->lpVtbl->Shutdown(This,hrReason)
#define IActiveScriptProfilerCallback2_ScriptCompiled(This,scriptId,type,pIDebugDocumentContext) (This)->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext)
#define IActiveScriptProfilerCallback2_FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext) (This)->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext)
#define IActiveScriptProfilerCallback2_OnFunctionEnter(This,scriptId,functionId) (This)->lpVtbl->OnFunctionEnter(This,scriptId,functionId)
#define IActiveScriptProfilerCallback2_OnFunctionExit(This,scriptId,functionId) (This)->lpVtbl->OnFunctionExit(This,scriptId,functionId)
/*** IActiveScriptProfilerCallback2 methods ***/
#define IActiveScriptProfilerCallback2_OnFunctionEnterByName(This,pwszFunctionName,type) (This)->lpVtbl->OnFunctionEnterByName(This,pwszFunctionName,type)
#define IActiveScriptProfilerCallback2_OnFunctionExitByName(This,pwszFunctionName,type) (This)->lpVtbl->OnFunctionExitByName(This,pwszFunctionName,type)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_QueryInterface(IActiveScriptProfilerCallback2* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IActiveScriptProfilerCallback2_AddRef(IActiveScriptProfilerCallback2* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IActiveScriptProfilerCallback2_Release(IActiveScriptProfilerCallback2* This) {
return This->lpVtbl->Release(This);
}
/*** IActiveScriptProfilerCallback methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_Initialize(IActiveScriptProfilerCallback2* This,DWORD dwContext) {
return This->lpVtbl->Initialize(This,dwContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_Shutdown(IActiveScriptProfilerCallback2* This,HRESULT hrReason) {
return This->lpVtbl->Shutdown(This,hrReason);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_ScriptCompiled(IActiveScriptProfilerCallback2* This,PROFILER_TOKEN scriptId,PROFILER_SCRIPT_TYPE type,IUnknown *pIDebugDocumentContext) {
return This->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_FunctionCompiled(IActiveScriptProfilerCallback2* This,PROFILER_TOKEN functionId,PROFILER_TOKEN scriptId,const WCHAR *pwszFunctionName,const WCHAR *pwszFunctionNameHint,IUnknown *pIDebugDocumentContext) {
return This->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_OnFunctionEnter(IActiveScriptProfilerCallback2* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) {
return This->lpVtbl->OnFunctionEnter(This,scriptId,functionId);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_OnFunctionExit(IActiveScriptProfilerCallback2* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) {
return This->lpVtbl->OnFunctionExit(This,scriptId,functionId);
}
/*** IActiveScriptProfilerCallback2 methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_OnFunctionEnterByName(IActiveScriptProfilerCallback2* This,const WCHAR *pwszFunctionName,PROFILER_SCRIPT_TYPE type) {
return This->lpVtbl->OnFunctionEnterByName(This,pwszFunctionName,type);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback2_OnFunctionExitByName(IActiveScriptProfilerCallback2* This,const WCHAR *pwszFunctionName,PROFILER_SCRIPT_TYPE type) {
return This->lpVtbl->OnFunctionExitByName(This,pwszFunctionName,type);
}
#endif
#endif
#endif
#endif /* __IActiveScriptProfilerCallback2_INTERFACE_DEFINED__ */
/*****************************************************************************
* IActiveScriptProfilerCallback3 interface
*/
#ifndef __IActiveScriptProfilerCallback3_INTERFACE_DEFINED__
#define __IActiveScriptProfilerCallback3_INTERFACE_DEFINED__
DEFINE_GUID(IID_IActiveScriptProfilerCallback3, 0x6ac5ad25, 0x2037, 0x4687, 0x91,0xdf, 0xb5,0x99,0x79,0xd9,0x3d,0x73);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("6ac5ad25-2037-4687-91df-b59979d93d73")
IActiveScriptProfilerCallback3 : public IActiveScriptProfilerCallback2
{
virtual HRESULT STDMETHODCALLTYPE SetWebWorkerId(
DWORD webWorkerId) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IActiveScriptProfilerCallback3, 0x6ac5ad25, 0x2037, 0x4687, 0x91,0xdf, 0xb5,0x99,0x79,0xd9,0x3d,0x73)
#endif
#else
typedef struct IActiveScriptProfilerCallback3Vtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IActiveScriptProfilerCallback3 *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IActiveScriptProfilerCallback3 *This);
ULONG (STDMETHODCALLTYPE *Release)(
IActiveScriptProfilerCallback3 *This);
/*** IActiveScriptProfilerCallback methods ***/
HRESULT (STDMETHODCALLTYPE *Initialize)(
IActiveScriptProfilerCallback3 *This,
DWORD dwContext);
HRESULT (STDMETHODCALLTYPE *Shutdown)(
IActiveScriptProfilerCallback3 *This,
HRESULT hrReason);
HRESULT (STDMETHODCALLTYPE *ScriptCompiled)(
IActiveScriptProfilerCallback3 *This,
PROFILER_TOKEN scriptId,
PROFILER_SCRIPT_TYPE type,
IUnknown *pIDebugDocumentContext);
HRESULT (STDMETHODCALLTYPE *FunctionCompiled)(
IActiveScriptProfilerCallback3 *This,
PROFILER_TOKEN functionId,
PROFILER_TOKEN scriptId,
const WCHAR *pwszFunctionName,
const WCHAR *pwszFunctionNameHint,
IUnknown *pIDebugDocumentContext);
HRESULT (STDMETHODCALLTYPE *OnFunctionEnter)(
IActiveScriptProfilerCallback3 *This,
PROFILER_TOKEN scriptId,
PROFILER_TOKEN functionId);
HRESULT (STDMETHODCALLTYPE *OnFunctionExit)(
IActiveScriptProfilerCallback3 *This,
PROFILER_TOKEN scriptId,
PROFILER_TOKEN functionId);
/*** IActiveScriptProfilerCallback2 methods ***/
HRESULT (STDMETHODCALLTYPE *OnFunctionEnterByName)(
IActiveScriptProfilerCallback3 *This,
const WCHAR *pwszFunctionName,
PROFILER_SCRIPT_TYPE type);
HRESULT (STDMETHODCALLTYPE *OnFunctionExitByName)(
IActiveScriptProfilerCallback3 *This,
const WCHAR *pwszFunctionName,
PROFILER_SCRIPT_TYPE type);
/*** IActiveScriptProfilerCallback3 methods ***/
HRESULT (STDMETHODCALLTYPE *SetWebWorkerId)(
IActiveScriptProfilerCallback3 *This,
DWORD webWorkerId);
END_INTERFACE
} IActiveScriptProfilerCallback3Vtbl;
interface IActiveScriptProfilerCallback3 {
CONST_VTBL IActiveScriptProfilerCallback3Vtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IActiveScriptProfilerCallback3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IActiveScriptProfilerCallback3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IActiveScriptProfilerCallback3_Release(This) (This)->lpVtbl->Release(This)
/*** IActiveScriptProfilerCallback methods ***/
#define IActiveScriptProfilerCallback3_Initialize(This,dwContext) (This)->lpVtbl->Initialize(This,dwContext)
#define IActiveScriptProfilerCallback3_Shutdown(This,hrReason) (This)->lpVtbl->Shutdown(This,hrReason)
#define IActiveScriptProfilerCallback3_ScriptCompiled(This,scriptId,type,pIDebugDocumentContext) (This)->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext)
#define IActiveScriptProfilerCallback3_FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext) (This)->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext)
#define IActiveScriptProfilerCallback3_OnFunctionEnter(This,scriptId,functionId) (This)->lpVtbl->OnFunctionEnter(This,scriptId,functionId)
#define IActiveScriptProfilerCallback3_OnFunctionExit(This,scriptId,functionId) (This)->lpVtbl->OnFunctionExit(This,scriptId,functionId)
/*** IActiveScriptProfilerCallback2 methods ***/
#define IActiveScriptProfilerCallback3_OnFunctionEnterByName(This,pwszFunctionName,type) (This)->lpVtbl->OnFunctionEnterByName(This,pwszFunctionName,type)
#define IActiveScriptProfilerCallback3_OnFunctionExitByName(This,pwszFunctionName,type) (This)->lpVtbl->OnFunctionExitByName(This,pwszFunctionName,type)
/*** IActiveScriptProfilerCallback3 methods ***/
#define IActiveScriptProfilerCallback3_SetWebWorkerId(This,webWorkerId) (This)->lpVtbl->SetWebWorkerId(This,webWorkerId)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_QueryInterface(IActiveScriptProfilerCallback3* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IActiveScriptProfilerCallback3_AddRef(IActiveScriptProfilerCallback3* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IActiveScriptProfilerCallback3_Release(IActiveScriptProfilerCallback3* This) {
return This->lpVtbl->Release(This);
}
/*** IActiveScriptProfilerCallback methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_Initialize(IActiveScriptProfilerCallback3* This,DWORD dwContext) {
return This->lpVtbl->Initialize(This,dwContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_Shutdown(IActiveScriptProfilerCallback3* This,HRESULT hrReason) {
return This->lpVtbl->Shutdown(This,hrReason);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_ScriptCompiled(IActiveScriptProfilerCallback3* This,PROFILER_TOKEN scriptId,PROFILER_SCRIPT_TYPE type,IUnknown *pIDebugDocumentContext) {
return This->lpVtbl->ScriptCompiled(This,scriptId,type,pIDebugDocumentContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_FunctionCompiled(IActiveScriptProfilerCallback3* This,PROFILER_TOKEN functionId,PROFILER_TOKEN scriptId,const WCHAR *pwszFunctionName,const WCHAR *pwszFunctionNameHint,IUnknown *pIDebugDocumentContext) {
return This->lpVtbl->FunctionCompiled(This,functionId,scriptId,pwszFunctionName,pwszFunctionNameHint,pIDebugDocumentContext);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_OnFunctionEnter(IActiveScriptProfilerCallback3* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) {
return This->lpVtbl->OnFunctionEnter(This,scriptId,functionId);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_OnFunctionExit(IActiveScriptProfilerCallback3* This,PROFILER_TOKEN scriptId,PROFILER_TOKEN functionId) {
return This->lpVtbl->OnFunctionExit(This,scriptId,functionId);
}
/*** IActiveScriptProfilerCallback2 methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_OnFunctionEnterByName(IActiveScriptProfilerCallback3* This,const WCHAR *pwszFunctionName,PROFILER_SCRIPT_TYPE type) {
return This->lpVtbl->OnFunctionEnterByName(This,pwszFunctionName,type);
}
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_OnFunctionExitByName(IActiveScriptProfilerCallback3* This,const WCHAR *pwszFunctionName,PROFILER_SCRIPT_TYPE type) {
return This->lpVtbl->OnFunctionExitByName(This,pwszFunctionName,type);
}
/*** IActiveScriptProfilerCallback3 methods ***/
static FORCEINLINE HRESULT IActiveScriptProfilerCallback3_SetWebWorkerId(IActiveScriptProfilerCallback3* This,DWORD webWorkerId) {
return This->lpVtbl->SetWebWorkerId(This,webWorkerId);
}
#endif
#endif
#endif
#endif /* __IActiveScriptProfilerCallback3_INTERFACE_DEFINED__ */
#endif
#endif
/* Begin additional prototypes for all interfaces */
/* End additional prototypes */
#ifdef __cplusplus
}
#endif
#endif /* __activprof_h__ */