@@ -205,6 +205,7 @@ typedef int VCSHeapType;
205
205
typedef enum { TYPEDEFTOMETHODTABLE, TYPEREFTOMETHODTABLE } ModuleMapType;
206
206
typedef enum {IndcellHeap, LookupHeap, ResolveHeap, DispatchHeap, CacheEntryHeap, VtableHeap} VCSHeapType;
207
207
typedef enum {LoaderHeapKindNormal = 0 , LoaderHeapKindExplicitControl = 1 } LoaderHeapKind;
208
+ typedef enum {MethodTableInitialized = 1 , MethodTableInitializationFailed = 2 } MethodTableInitializationFlags;
208
209
typedef enum {FreeUnknownRegion = 0 , FreeGlobalHugeRegion = 1 , FreeGlobalRegion = 2 , FreeRegion = 3 , FreeSohSegment = 4 , FreeUohSegment = 5 } FreeRegionKind;
209
210
typedef void ( *MODULEMAPTRAVERSE )(
210
211
UINT index,
@@ -3343,6 +3344,118 @@ EXTERN_C const IID IID_ISOSDacInterface13;
3343
3344
#endif /* __ISOSDacInterface13_INTERFACE_DEFINED__ */
3344
3345
3345
3346
3347
+ #ifndef __ISOSDacInterface14_INTERFACE_DEFINED__
3348
+ #define __ISOSDacInterface14_INTERFACE_DEFINED__
3349
+
3350
+ /* interface ISOSDacInterface14 */
3351
+ /* [uuid][local][object] */
3352
+
3353
+
3354
+ EXTERN_C const IID IID_ISOSDacInterface14;
3355
+
3356
+ #if defined(__cplusplus) && !defined(CINTERFACE)
3357
+
3358
+ MIDL_INTERFACE (" 9aa22aca-6dc6-4a0c-b4e0-70d2416b9837" )
3359
+ ISOSDacInterface14 : public IUnknown
3360
+ {
3361
+ public:
3362
+ virtual HRESULT STDMETHODCALLTYPE GetStaticBaseAddress (
3363
+ CLRDATA_ADDRESS methodTable,
3364
+ CLRDATA_ADDRESS *nonGCStaticsAddress,
3365
+ CLRDATA_ADDRESS *GCStaticsAddress) = 0 ;
3366
+
3367
+ virtual HRESULT STDMETHODCALLTYPE GetThreadStaticBaseAddress (
3368
+ CLRDATA_ADDRESS methodTable,
3369
+ CLRDATA_ADDRESS thread,
3370
+ CLRDATA_ADDRESS *nonGCStaticsAddress,
3371
+ CLRDATA_ADDRESS *GCStaticsAddress) = 0 ;
3372
+
3373
+ virtual HRESULT STDMETHODCALLTYPE GetMethodTableInitializationFlags (
3374
+ CLRDATA_ADDRESS methodTable,
3375
+ MethodTableInitializationFlags *initializationStatus) = 0 ;
3376
+
3377
+ };
3378
+
3379
+
3380
+ #else /* C style interface */
3381
+
3382
+ typedef struct ISOSDacInterface14Vtbl
3383
+ {
3384
+ BEGIN_INTERFACE
3385
+
3386
+ HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
3387
+ ISOSDacInterface14 * This,
3388
+ /* [in] */ REFIID riid,
3389
+ /* [annotation][iid_is][out] */
3390
+ _COM_Outptr_ void **ppvObject);
3391
+
3392
+ ULONG ( STDMETHODCALLTYPE *AddRef )(
3393
+ ISOSDacInterface14 * This);
3394
+
3395
+ ULONG ( STDMETHODCALLTYPE *Release )(
3396
+ ISOSDacInterface14 * This);
3397
+
3398
+ HRESULT ( STDMETHODCALLTYPE *GetStaticBaseAddress )(
3399
+ ISOSDacInterface14 * This,
3400
+ CLRDATA_ADDRESS methodTable,
3401
+ CLRDATA_ADDRESS *nonGCStaticsAddress,
3402
+ CLRDATA_ADDRESS *GCStaticsAddress);
3403
+
3404
+ HRESULT ( STDMETHODCALLTYPE *GetThreadStaticBaseAddress )(
3405
+ ISOSDacInterface14 * This,
3406
+ CLRDATA_ADDRESS methodTable,
3407
+ CLRDATA_ADDRESS thread,
3408
+ CLRDATA_ADDRESS *nonGCStaticsAddress,
3409
+ CLRDATA_ADDRESS *GCStaticsAddress);
3410
+
3411
+ HRESULT ( STDMETHODCALLTYPE *GetMethodTableInitializationFlags )(
3412
+ ISOSDacInterface14 * This,
3413
+ CLRDATA_ADDRESS methodTable,
3414
+ MethodTableInitializationFlags *initializationStatus);
3415
+
3416
+ END_INTERFACE
3417
+ } ISOSDacInterface14Vtbl;
3418
+
3419
+ interface ISOSDacInterface14
3420
+ {
3421
+ CONST_VTBL struct ISOSDacInterface14Vtbl *lpVtbl;
3422
+ };
3423
+
3424
+
3425
+
3426
+ #ifdef COBJMACROS
3427
+
3428
+
3429
+ #define ISOSDacInterface14_QueryInterface (This,riid,ppvObject ) \
3430
+ ( (This)->lpVtbl -> QueryInterface (This,riid,ppvObject) )
3431
+
3432
+ #define ISOSDacInterface14_AddRef (This ) \
3433
+ ( (This)->lpVtbl -> AddRef (This) )
3434
+
3435
+ #define ISOSDacInterface14_Release (This ) \
3436
+ ( (This)->lpVtbl -> Release (This) )
3437
+
3438
+
3439
+ #define ISOSDacInterface14_GetStaticBaseAddress (This,methodTable,nonGCStaticsAddress,GCStaticsAddress ) \
3440
+ ( (This)->lpVtbl -> GetStaticBaseAddress (This,methodTable,nonGCStaticsAddress,GCStaticsAddress) )
3441
+
3442
+ #define ISOSDacInterface14_GetThreadStaticBaseAddress (This,methodTable,thread,nonGCStaticsAddress,GCStaticsAddress ) \
3443
+ ( (This)->lpVtbl -> GetThreadStaticBaseAddress (This,methodTable,thread,nonGCStaticsAddress,GCStaticsAddress) )
3444
+
3445
+ #define ISOSDacInterface14_GetMethodTableInitializationFlags (This,methodTable,initializationStatus ) \
3446
+ ( (This)->lpVtbl -> GetMethodTableInitializationFlags (This,methodTable,initializationStatus) )
3447
+
3448
+ #endif /* COBJMACROS */
3449
+
3450
+
3451
+ #endif /* C style interface */
3452
+
3453
+
3454
+
3455
+
3456
+ #endif /* __ISOSDacInterface14_INTERFACE_DEFINED__ */
3457
+
3458
+
3346
3459
/* Additional Prototypes for ALL interfaces */
3347
3460
3348
3461
/* end of Additional Prototypes */
@@ -3353,3 +3466,4 @@ EXTERN_C const IID IID_ISOSDacInterface13;
3353
3466
3354
3467
#endif
3355
3468
3469
+
0 commit comments