1
2
3/* this ALWAYS GENERATED file contains the definitions for the interfaces */
4
5
6 /* File created by MIDL compiler version 8.00.0613 */
7/* at Mon Jan 18 19:14:07 2038
8 */
9/* Compiler settings for C:/ssd/coreclr/src/inc/sospriv.idl:
10 Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.00.0613
11 protocol : dce , ms_ext, c_ext, robust
12 error checks: allocation ref bounds_check enum stub_data
13 VC __declspec() decoration level:
14 __declspec(uuid()), __declspec(selectany), __declspec(novtable)
15 DECLSPEC_UUID(), MIDL_INTERFACE()
16*/
17/* @@MIDL_FILE_HEADING( ) */
18
19#pragma warning( disable: 4049 ) /* more than 64k source lines */
20
21
22/* verify that the <rpcndr.h> version is high enough to compile this file*/
23#ifndef __REQUIRED_RPCNDR_H_VERSION__
24#define __REQUIRED_RPCNDR_H_VERSION__ 475
25#endif
26
27#include "rpc.h"
28#include "rpcndr.h"
29
30#ifndef __RPCNDR_H_VERSION__
31#error this stub requires an updated version of <rpcndr.h>
32#endif /* __RPCNDR_H_VERSION__ */
33
34#ifndef COM_NO_WINDOWS_H
35#include "windows.h"
36#include "ole2.h"
37#endif /*COM_NO_WINDOWS_H*/
38
39#ifndef __sospriv_h__
40#define __sospriv_h__
41
42#if defined(_MSC_VER) && (_MSC_VER >= 1020)
43#pragma once
44#endif
45
46/* Forward Declarations */
47
48#ifndef __ISOSEnum_FWD_DEFINED__
49#define __ISOSEnum_FWD_DEFINED__
50typedef interface ISOSEnum ISOSEnum;
51
52#endif /* __ISOSEnum_FWD_DEFINED__ */
53
54
55#ifndef __ISOSHandleEnum_FWD_DEFINED__
56#define __ISOSHandleEnum_FWD_DEFINED__
57typedef interface ISOSHandleEnum ISOSHandleEnum;
58
59#endif /* __ISOSHandleEnum_FWD_DEFINED__ */
60
61
62#ifndef __ISOSStackRefErrorEnum_FWD_DEFINED__
63#define __ISOSStackRefErrorEnum_FWD_DEFINED__
64typedef interface ISOSStackRefErrorEnum ISOSStackRefErrorEnum;
65
66#endif /* __ISOSStackRefErrorEnum_FWD_DEFINED__ */
67
68
69#ifndef __ISOSStackRefEnum_FWD_DEFINED__
70#define __ISOSStackRefEnum_FWD_DEFINED__
71typedef interface ISOSStackRefEnum ISOSStackRefEnum;
72
73#endif /* __ISOSStackRefEnum_FWD_DEFINED__ */
74
75
76#ifndef __ISOSDacInterface_FWD_DEFINED__
77#define __ISOSDacInterface_FWD_DEFINED__
78typedef interface ISOSDacInterface ISOSDacInterface;
79
80#endif /* __ISOSDacInterface_FWD_DEFINED__ */
81
82
83#ifndef __ISOSDacInterface2_FWD_DEFINED__
84#define __ISOSDacInterface2_FWD_DEFINED__
85typedef interface ISOSDacInterface2 ISOSDacInterface2;
86
87#endif /* __ISOSDacInterface2_FWD_DEFINED__ */
88
89
90#ifndef __ISOSDacInterface3_FWD_DEFINED__
91#define __ISOSDacInterface3_FWD_DEFINED__
92typedef interface ISOSDacInterface3 ISOSDacInterface3;
93
94#endif /* __ISOSDacInterface3_FWD_DEFINED__ */
95
96
97#ifndef __ISOSDacInterface4_FWD_DEFINED__
98#define __ISOSDacInterface4_FWD_DEFINED__
99typedef interface ISOSDacInterface4 ISOSDacInterface4;
100
101#endif /* __ISOSDacInterface4_FWD_DEFINED__ */
102
103
104/* header files for imported files */
105#include "unknwn.h"
106#include "xclrdata.h"
107
108#ifdef __cplusplus
109extern "C"{
110#endif
111
112
113/* interface __MIDL_itf_sospriv_0000_0000 */
114/* [local] */
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140#if 0
141typedef ULONG64 CLRDATA_ADDRESS;
142
143typedef int CONTEXT;
144
145typedef int T_CONTEXT;
146
147typedef int mdToken;
148
149typedef unsigned int size_t;
150
151typedef int ModuleMapType;
152
153typedef int VCSHeapType;
154
155#endif
156enum ModuleMapType { TYPEDEFTOMETHODTABLE, TYPEREFTOMETHODTABLE };
157enum VCSHeapType {IndcellHeap, LookupHeap, ResolveHeap, DispatchHeap, CacheEntryHeap};
158typedef void ( *MODULEMAPTRAVERSE )(
159 UINT index,
160 CLRDATA_ADDRESS methodTable,
161 LPVOID token);
162
163typedef void ( *VISITHEAP )(
164 CLRDATA_ADDRESS blockData,
165 size_t blockSize,
166 BOOL blockIsCurrentBlock);
167
168typedef BOOL ( *VISITRCWFORCLEANUP )(
169 CLRDATA_ADDRESS RCW,
170 CLRDATA_ADDRESS Context,
171 CLRDATA_ADDRESS Thread,
172 BOOL bIsFreeThreaded,
173 LPVOID token);
174
175typedef BOOL ( *DUMPEHINFO )(
176 UINT clauseIndex,
177 UINT totalClauses,
178 struct DACEHInfo *pEHInfo,
179 LPVOID token);
180
181#ifndef _SOS_HandleData
182#define _SOS_HandleData
183typedef struct _SOSHandleData
184 {
185 CLRDATA_ADDRESS AppDomain;
186 CLRDATA_ADDRESS Handle;
187 CLRDATA_ADDRESS Secondary;
188 unsigned int Type;
189 BOOL StrongReference;
190 unsigned int RefCount;
191 unsigned int JupiterRefCount;
192 BOOL IsPegged;
193 } SOSHandleData;
194
195#endif //HandleData
196
197
198extern RPC_IF_HANDLE __MIDL_itf_sospriv_0000_0000_v0_0_c_ifspec;
199extern RPC_IF_HANDLE __MIDL_itf_sospriv_0000_0000_v0_0_s_ifspec;
200
201#ifndef __ISOSEnum_INTERFACE_DEFINED__
202#define __ISOSEnum_INTERFACE_DEFINED__
203
204/* interface ISOSEnum */
205/* [uuid][local][object] */
206
207
208EXTERN_C const IID IID_ISOSEnum;
209
210#if defined(__cplusplus) && !defined(CINTERFACE)
211
212 MIDL_INTERFACE("286CA186-E763-4F61-9760-487D43AE4341")
213 ISOSEnum : public IUnknown
214 {
215 public:
216 virtual HRESULT STDMETHODCALLTYPE Skip(
217 /* [in] */ unsigned int count) = 0;
218
219 virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
220
221 virtual HRESULT STDMETHODCALLTYPE GetCount(
222 /* [out] */ unsigned int *pCount) = 0;
223
224 };
225
226
227#else /* C style interface */
228
229 typedef struct ISOSEnumVtbl
230 {
231 BEGIN_INTERFACE
232
233 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
234 ISOSEnum * This,
235 /* [in] */ REFIID riid,
236 /* [annotation][iid_is][out] */
237 _COM_Outptr_ void **ppvObject);
238
239 ULONG ( STDMETHODCALLTYPE *AddRef )(
240 ISOSEnum * This);
241
242 ULONG ( STDMETHODCALLTYPE *Release )(
243 ISOSEnum * This);
244
245 HRESULT ( STDMETHODCALLTYPE *Skip )(
246 ISOSEnum * This,
247 /* [in] */ unsigned int count);
248
249 HRESULT ( STDMETHODCALLTYPE *Reset )(
250 ISOSEnum * This);
251
252 HRESULT ( STDMETHODCALLTYPE *GetCount )(
253 ISOSEnum * This,
254 /* [out] */ unsigned int *pCount);
255
256 END_INTERFACE
257 } ISOSEnumVtbl;
258
259 interface ISOSEnum
260 {
261 CONST_VTBL struct ISOSEnumVtbl *lpVtbl;
262 };
263
264
265
266#ifdef COBJMACROS
267
268
269#define ISOSEnum_QueryInterface(This,riid,ppvObject) \
270 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
271
272#define ISOSEnum_AddRef(This) \
273 ( (This)->lpVtbl -> AddRef(This) )
274
275#define ISOSEnum_Release(This) \
276 ( (This)->lpVtbl -> Release(This) )
277
278
279#define ISOSEnum_Skip(This,count) \
280 ( (This)->lpVtbl -> Skip(This,count) )
281
282#define ISOSEnum_Reset(This) \
283 ( (This)->lpVtbl -> Reset(This) )
284
285#define ISOSEnum_GetCount(This,pCount) \
286 ( (This)->lpVtbl -> GetCount(This,pCount) )
287
288#endif /* COBJMACROS */
289
290
291#endif /* C style interface */
292
293
294
295
296#endif /* __ISOSEnum_INTERFACE_DEFINED__ */
297
298
299#ifndef __ISOSHandleEnum_INTERFACE_DEFINED__
300#define __ISOSHandleEnum_INTERFACE_DEFINED__
301
302/* interface ISOSHandleEnum */
303/* [uuid][local][object] */
304
305
306EXTERN_C const IID IID_ISOSHandleEnum;
307
308#if defined(__cplusplus) && !defined(CINTERFACE)
309
310 MIDL_INTERFACE("3E269830-4A2B-4301-8EE2-D6805B29B2FA")
311 ISOSHandleEnum : public ISOSEnum
312 {
313 public:
314 virtual HRESULT STDMETHODCALLTYPE Next(
315 /* [in] */ unsigned int count,
316 /* [length_is][size_is][out] */ SOSHandleData handles[ ],
317 /* [out] */ unsigned int *pNeeded) = 0;
318
319 };
320
321
322#else /* C style interface */
323
324 typedef struct ISOSHandleEnumVtbl
325 {
326 BEGIN_INTERFACE
327
328 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
329 ISOSHandleEnum * This,
330 /* [in] */ REFIID riid,
331 /* [annotation][iid_is][out] */
332 _COM_Outptr_ void **ppvObject);
333
334 ULONG ( STDMETHODCALLTYPE *AddRef )(
335 ISOSHandleEnum * This);
336
337 ULONG ( STDMETHODCALLTYPE *Release )(
338 ISOSHandleEnum * This);
339
340 HRESULT ( STDMETHODCALLTYPE *Skip )(
341 ISOSHandleEnum * This,
342 /* [in] */ unsigned int count);
343
344 HRESULT ( STDMETHODCALLTYPE *Reset )(
345 ISOSHandleEnum * This);
346
347 HRESULT ( STDMETHODCALLTYPE *GetCount )(
348 ISOSHandleEnum * This,
349 /* [out] */ unsigned int *pCount);
350
351 HRESULT ( STDMETHODCALLTYPE *Next )(
352 ISOSHandleEnum * This,
353 /* [in] */ unsigned int count,
354 /* [length_is][size_is][out] */ SOSHandleData handles[ ],
355 /* [out] */ unsigned int *pNeeded);
356
357 END_INTERFACE
358 } ISOSHandleEnumVtbl;
359
360 interface ISOSHandleEnum
361 {
362 CONST_VTBL struct ISOSHandleEnumVtbl *lpVtbl;
363 };
364
365
366
367#ifdef COBJMACROS
368
369
370#define ISOSHandleEnum_QueryInterface(This,riid,ppvObject) \
371 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
372
373#define ISOSHandleEnum_AddRef(This) \
374 ( (This)->lpVtbl -> AddRef(This) )
375
376#define ISOSHandleEnum_Release(This) \
377 ( (This)->lpVtbl -> Release(This) )
378
379
380#define ISOSHandleEnum_Skip(This,count) \
381 ( (This)->lpVtbl -> Skip(This,count) )
382
383#define ISOSHandleEnum_Reset(This) \
384 ( (This)->lpVtbl -> Reset(This) )
385
386#define ISOSHandleEnum_GetCount(This,pCount) \
387 ( (This)->lpVtbl -> GetCount(This,pCount) )
388
389
390#define ISOSHandleEnum_Next(This,count,handles,pNeeded) \
391 ( (This)->lpVtbl -> Next(This,count,handles,pNeeded) )
392
393#endif /* COBJMACROS */
394
395
396#endif /* C style interface */
397
398
399
400
401#endif /* __ISOSHandleEnum_INTERFACE_DEFINED__ */
402
403
404/* interface __MIDL_itf_sospriv_0000_0002 */
405/* [local] */
406
407#ifndef _SOS_StackReference_
408#define _SOS_StackReference_
409typedef
410enum SOSStackSourceType
411 {
412 SOS_StackSourceIP = 0,
413 SOS_StackSourceFrame = ( SOS_StackSourceIP + 1 )
414 } SOSStackSourceType;
415
416typedef
417enum SOSRefFlags
418 {
419 SOSRefInterior = 1,
420 SOSRefPinned = 2
421 } SOSRefFlags;
422
423typedef struct _SOS_StackRefData
424 {
425 BOOL HasRegisterInformation;
426 int Register;
427 int Offset;
428 CLRDATA_ADDRESS Address;
429 CLRDATA_ADDRESS Object;
430 unsigned int Flags;
431 SOSStackSourceType SourceType;
432 CLRDATA_ADDRESS Source;
433 CLRDATA_ADDRESS StackPointer;
434 } SOSStackRefData;
435
436typedef struct _SOS_StackRefError
437 {
438 SOSStackSourceType SourceType;
439 CLRDATA_ADDRESS Source;
440 CLRDATA_ADDRESS StackPointer;
441 } SOSStackRefError;
442
443#endif // _SOS_StackReference_
444
445
446extern RPC_IF_HANDLE __MIDL_itf_sospriv_0000_0002_v0_0_c_ifspec;
447extern RPC_IF_HANDLE __MIDL_itf_sospriv_0000_0002_v0_0_s_ifspec;
448
449#ifndef __ISOSStackRefErrorEnum_INTERFACE_DEFINED__
450#define __ISOSStackRefErrorEnum_INTERFACE_DEFINED__
451
452/* interface ISOSStackRefErrorEnum */
453/* [uuid][local][object] */
454
455
456EXTERN_C const IID IID_ISOSStackRefErrorEnum;
457
458#if defined(__cplusplus) && !defined(CINTERFACE)
459
460 MIDL_INTERFACE("774F4E1B-FB7B-491B-976D-A8130FE355E9")
461 ISOSStackRefErrorEnum : public ISOSEnum
462 {
463 public:
464 virtual HRESULT STDMETHODCALLTYPE Next(
465 /* [in] */ unsigned int count,
466 /* [length_is][size_is][out] */ SOSStackRefError ref[ ],
467 /* [out] */ unsigned int *pFetched) = 0;
468
469 };
470
471
472#else /* C style interface */
473
474 typedef struct ISOSStackRefErrorEnumVtbl
475 {
476 BEGIN_INTERFACE
477
478 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
479 ISOSStackRefErrorEnum * This,
480 /* [in] */ REFIID riid,
481 /* [annotation][iid_is][out] */
482 _COM_Outptr_ void **ppvObject);
483
484 ULONG ( STDMETHODCALLTYPE *AddRef )(
485 ISOSStackRefErrorEnum * This);
486
487 ULONG ( STDMETHODCALLTYPE *Release )(
488 ISOSStackRefErrorEnum * This);
489
490 HRESULT ( STDMETHODCALLTYPE *Skip )(
491 ISOSStackRefErrorEnum * This,
492 /* [in] */ unsigned int count);
493
494 HRESULT ( STDMETHODCALLTYPE *Reset )(
495 ISOSStackRefErrorEnum * This);
496
497 HRESULT ( STDMETHODCALLTYPE *GetCount )(
498 ISOSStackRefErrorEnum * This,
499 /* [out] */ unsigned int *pCount);
500
501 HRESULT ( STDMETHODCALLTYPE *Next )(
502 ISOSStackRefErrorEnum * This,
503 /* [in] */ unsigned int count,
504 /* [length_is][size_is][out] */ SOSStackRefError ref[ ],
505 /* [out] */ unsigned int *pFetched);
506
507 END_INTERFACE
508 } ISOSStackRefErrorEnumVtbl;
509
510 interface ISOSStackRefErrorEnum
511 {
512 CONST_VTBL struct ISOSStackRefErrorEnumVtbl *lpVtbl;
513 };
514
515
516
517#ifdef COBJMACROS
518
519
520#define ISOSStackRefErrorEnum_QueryInterface(This,riid,ppvObject) \
521 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
522
523#define ISOSStackRefErrorEnum_AddRef(This) \
524 ( (This)->lpVtbl -> AddRef(This) )
525
526#define ISOSStackRefErrorEnum_Release(This) \
527 ( (This)->lpVtbl -> Release(This) )
528
529
530#define ISOSStackRefErrorEnum_Skip(This,count) \
531 ( (This)->lpVtbl -> Skip(This,count) )
532
533#define ISOSStackRefErrorEnum_Reset(This) \
534 ( (This)->lpVtbl -> Reset(This) )
535
536#define ISOSStackRefErrorEnum_GetCount(This,pCount) \
537 ( (This)->lpVtbl -> GetCount(This,pCount) )
538
539
540#define ISOSStackRefErrorEnum_Next(This,count,ref,pFetched) \
541 ( (This)->lpVtbl -> Next(This,count,ref,pFetched) )
542
543#endif /* COBJMACROS */
544
545
546#endif /* C style interface */
547
548
549
550
551#endif /* __ISOSStackRefErrorEnum_INTERFACE_DEFINED__ */
552
553
554#ifndef __ISOSStackRefEnum_INTERFACE_DEFINED__
555#define __ISOSStackRefEnum_INTERFACE_DEFINED__
556
557/* interface ISOSStackRefEnum */
558/* [uuid][local][object] */
559
560
561EXTERN_C const IID IID_ISOSStackRefEnum;
562
563#if defined(__cplusplus) && !defined(CINTERFACE)
564
565 MIDL_INTERFACE("8FA642BD-9F10-4799-9AA3-512AE78C77EE")
566 ISOSStackRefEnum : public ISOSEnum
567 {
568 public:
569 virtual HRESULT STDMETHODCALLTYPE Next(
570 /* [in] */ unsigned int count,
571 /* [length_is][size_is][out] */ SOSStackRefData ref[ ],
572 /* [out] */ unsigned int *pFetched) = 0;
573
574 virtual HRESULT STDMETHODCALLTYPE EnumerateErrors(
575 /* [out] */ ISOSStackRefErrorEnum **ppEnum) = 0;
576
577 };
578
579
580#else /* C style interface */
581
582 typedef struct ISOSStackRefEnumVtbl
583 {
584 BEGIN_INTERFACE
585
586 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
587 ISOSStackRefEnum * This,
588 /* [in] */ REFIID riid,
589 /* [annotation][iid_is][out] */
590 _COM_Outptr_ void **ppvObject);
591
592 ULONG ( STDMETHODCALLTYPE *AddRef )(
593 ISOSStackRefEnum * This);
594
595 ULONG ( STDMETHODCALLTYPE *Release )(
596 ISOSStackRefEnum * This);
597
598 HRESULT ( STDMETHODCALLTYPE *Skip )(
599 ISOSStackRefEnum * This,
600 /* [in] */ unsigned int count);
601
602 HRESULT ( STDMETHODCALLTYPE *Reset )(
603 ISOSStackRefEnum * This);
604
605 HRESULT ( STDMETHODCALLTYPE *GetCount )(
606 ISOSStackRefEnum * This,
607 /* [out] */ unsigned int *pCount);
608
609 HRESULT ( STDMETHODCALLTYPE *Next )(
610 ISOSStackRefEnum * This,
611 /* [in] */ unsigned int count,
612 /* [length_is][size_is][out] */ SOSStackRefData ref[ ],
613 /* [out] */ unsigned int *pFetched);
614
615 HRESULT ( STDMETHODCALLTYPE *EnumerateErrors )(
616 ISOSStackRefEnum * This,
617 /* [out] */ ISOSStackRefErrorEnum **ppEnum);
618
619 END_INTERFACE
620 } ISOSStackRefEnumVtbl;
621
622 interface ISOSStackRefEnum
623 {
624 CONST_VTBL struct ISOSStackRefEnumVtbl *lpVtbl;
625 };
626
627
628
629#ifdef COBJMACROS
630
631
632#define ISOSStackRefEnum_QueryInterface(This,riid,ppvObject) \
633 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
634
635#define ISOSStackRefEnum_AddRef(This) \
636 ( (This)->lpVtbl -> AddRef(This) )
637
638#define ISOSStackRefEnum_Release(This) \
639 ( (This)->lpVtbl -> Release(This) )
640
641
642#define ISOSStackRefEnum_Skip(This,count) \
643 ( (This)->lpVtbl -> Skip(This,count) )
644
645#define ISOSStackRefEnum_Reset(This) \
646 ( (This)->lpVtbl -> Reset(This) )
647
648#define ISOSStackRefEnum_GetCount(This,pCount) \
649 ( (This)->lpVtbl -> GetCount(This,pCount) )
650
651
652#define ISOSStackRefEnum_Next(This,count,ref,pFetched) \
653 ( (This)->lpVtbl -> Next(This,count,ref,pFetched) )
654
655#define ISOSStackRefEnum_EnumerateErrors(This,ppEnum) \
656 ( (This)->lpVtbl -> EnumerateErrors(This,ppEnum) )
657
658#endif /* COBJMACROS */
659
660
661#endif /* C style interface */
662
663
664
665
666#endif /* __ISOSStackRefEnum_INTERFACE_DEFINED__ */
667
668
669#ifndef __ISOSDacInterface_INTERFACE_DEFINED__
670#define __ISOSDacInterface_INTERFACE_DEFINED__
671
672/* interface ISOSDacInterface */
673/* [uuid][local][object] */
674
675
676EXTERN_C const IID IID_ISOSDacInterface;
677
678#if defined(__cplusplus) && !defined(CINTERFACE)
679
680 MIDL_INTERFACE("436f00f2-b42a-4b9f-870c-e73db66ae930")
681 ISOSDacInterface : public IUnknown
682 {
683 public:
684 virtual HRESULT STDMETHODCALLTYPE GetThreadStoreData(
685 struct DacpThreadStoreData *data) = 0;
686
687 virtual HRESULT STDMETHODCALLTYPE GetAppDomainStoreData(
688 struct DacpAppDomainStoreData *data) = 0;
689
690 virtual HRESULT STDMETHODCALLTYPE GetAppDomainList(
691 unsigned int count,
692 CLRDATA_ADDRESS values[ ],
693 unsigned int *pNeeded) = 0;
694
695 virtual HRESULT STDMETHODCALLTYPE GetAppDomainData(
696 CLRDATA_ADDRESS addr,
697 struct DacpAppDomainData *data) = 0;
698
699 virtual HRESULT STDMETHODCALLTYPE GetAppDomainName(
700 CLRDATA_ADDRESS addr,
701 unsigned int count,
702 WCHAR *name,
703 unsigned int *pNeeded) = 0;
704
705 virtual HRESULT STDMETHODCALLTYPE GetDomainFromContext(
706 CLRDATA_ADDRESS context,
707 CLRDATA_ADDRESS *domain) = 0;
708
709 virtual HRESULT STDMETHODCALLTYPE GetAssemblyList(
710 CLRDATA_ADDRESS appDomain,
711 int count,
712 CLRDATA_ADDRESS values[ ],
713 int *pNeeded) = 0;
714
715 virtual HRESULT STDMETHODCALLTYPE GetAssemblyData(
716 CLRDATA_ADDRESS baseDomainPtr,
717 CLRDATA_ADDRESS assembly,
718 struct DacpAssemblyData *data) = 0;
719
720 virtual HRESULT STDMETHODCALLTYPE GetAssemblyName(
721 CLRDATA_ADDRESS assembly,
722 unsigned int count,
723 WCHAR *name,
724 unsigned int *pNeeded) = 0;
725
726 virtual HRESULT STDMETHODCALLTYPE GetModule(
727 CLRDATA_ADDRESS addr,
728 IXCLRDataModule **mod) = 0;
729
730 virtual HRESULT STDMETHODCALLTYPE GetModuleData(
731 CLRDATA_ADDRESS moduleAddr,
732 struct DacpModuleData *data) = 0;
733
734 virtual HRESULT STDMETHODCALLTYPE TraverseModuleMap(
735 ModuleMapType mmt,
736 CLRDATA_ADDRESS moduleAddr,
737 MODULEMAPTRAVERSE pCallback,
738 LPVOID token) = 0;
739
740 virtual HRESULT STDMETHODCALLTYPE GetAssemblyModuleList(
741 CLRDATA_ADDRESS assembly,
742 unsigned int count,
743 CLRDATA_ADDRESS modules[ ],
744 unsigned int *pNeeded) = 0;
745
746 virtual HRESULT STDMETHODCALLTYPE GetILForModule(
747 CLRDATA_ADDRESS moduleAddr,
748 DWORD rva,
749 CLRDATA_ADDRESS *il) = 0;
750
751 virtual HRESULT STDMETHODCALLTYPE GetThreadData(
752 CLRDATA_ADDRESS thread,
753 struct DacpThreadData *data) = 0;
754
755 virtual HRESULT STDMETHODCALLTYPE GetThreadFromThinlockID(
756 UINT thinLockId,
757 CLRDATA_ADDRESS *pThread) = 0;
758
759 virtual HRESULT STDMETHODCALLTYPE GetStackLimits(
760 CLRDATA_ADDRESS threadPtr,
761 CLRDATA_ADDRESS *lower,
762 CLRDATA_ADDRESS *upper,
763 CLRDATA_ADDRESS *fp) = 0;
764
765 virtual HRESULT STDMETHODCALLTYPE GetMethodDescData(
766 CLRDATA_ADDRESS methodDesc,
767 CLRDATA_ADDRESS ip,
768 struct DacpMethodDescData *data,
769 ULONG cRevertedRejitVersions,
770 struct DacpReJitData *rgRevertedRejitData,
771 ULONG *pcNeededRevertedRejitData) = 0;
772
773 virtual HRESULT STDMETHODCALLTYPE GetMethodDescPtrFromIP(
774 CLRDATA_ADDRESS ip,
775 CLRDATA_ADDRESS *ppMD) = 0;
776
777 virtual HRESULT STDMETHODCALLTYPE GetMethodDescName(
778 CLRDATA_ADDRESS methodDesc,
779 unsigned int count,
780 WCHAR *name,
781 unsigned int *pNeeded) = 0;
782
783 virtual HRESULT STDMETHODCALLTYPE GetMethodDescPtrFromFrame(
784 CLRDATA_ADDRESS frameAddr,
785 CLRDATA_ADDRESS *ppMD) = 0;
786
787 virtual HRESULT STDMETHODCALLTYPE GetMethodDescFromToken(
788 CLRDATA_ADDRESS moduleAddr,
789 mdToken token,
790 CLRDATA_ADDRESS *methodDesc) = 0;
791
792 virtual HRESULT STDMETHODCALLTYPE GetMethodDescTransparencyData(
793 CLRDATA_ADDRESS methodDesc,
794 struct DacpMethodDescTransparencyData *data) = 0;
795
796 virtual HRESULT STDMETHODCALLTYPE GetCodeHeaderData(
797 CLRDATA_ADDRESS ip,
798 struct DacpCodeHeaderData *data) = 0;
799
800 virtual HRESULT STDMETHODCALLTYPE GetJitManagerList(
801 unsigned int count,
802 struct DacpJitManagerInfo *managers,
803 unsigned int *pNeeded) = 0;
804
805 virtual HRESULT STDMETHODCALLTYPE GetJitHelperFunctionName(
806 CLRDATA_ADDRESS ip,
807 unsigned int count,
808 char *name,
809 unsigned int *pNeeded) = 0;
810
811 virtual HRESULT STDMETHODCALLTYPE GetJumpThunkTarget(
812 T_CONTEXT *ctx,
813 CLRDATA_ADDRESS *targetIP,
814 CLRDATA_ADDRESS *targetMD) = 0;
815
816 virtual HRESULT STDMETHODCALLTYPE GetThreadpoolData(
817 struct DacpThreadpoolData *data) = 0;
818
819 virtual HRESULT STDMETHODCALLTYPE GetWorkRequestData(
820 CLRDATA_ADDRESS addrWorkRequest,
821 struct DacpWorkRequestData *data) = 0;
822
823 virtual HRESULT STDMETHODCALLTYPE GetHillClimbingLogEntry(
824 CLRDATA_ADDRESS addr,
825 struct DacpHillClimbingLogEntry *data) = 0;
826
827 virtual HRESULT STDMETHODCALLTYPE GetObjectData(
828 CLRDATA_ADDRESS objAddr,
829 struct DacpObjectData *data) = 0;
830
831 virtual HRESULT STDMETHODCALLTYPE GetObjectStringData(
832 CLRDATA_ADDRESS obj,
833 unsigned int count,
834 WCHAR *stringData,
835 unsigned int *pNeeded) = 0;
836
837 virtual HRESULT STDMETHODCALLTYPE GetObjectClassName(
838 CLRDATA_ADDRESS obj,
839 unsigned int count,
840 WCHAR *className,
841 unsigned int *pNeeded) = 0;
842
843 virtual HRESULT STDMETHODCALLTYPE GetMethodTableName(
844 CLRDATA_ADDRESS mt,
845 unsigned int count,
846 WCHAR *mtName,
847 unsigned int *pNeeded) = 0;
848
849 virtual HRESULT STDMETHODCALLTYPE GetMethodTableData(
850 CLRDATA_ADDRESS mt,
851 struct DacpMethodTableData *data) = 0;
852
853 virtual HRESULT STDMETHODCALLTYPE GetMethodTableSlot(
854 CLRDATA_ADDRESS mt,
855 unsigned int slot,
856 CLRDATA_ADDRESS *value) = 0;
857
858 virtual HRESULT STDMETHODCALLTYPE GetMethodTableFieldData(
859 CLRDATA_ADDRESS mt,
860 struct DacpMethodTableFieldData *data) = 0;
861
862 virtual HRESULT STDMETHODCALLTYPE GetMethodTableTransparencyData(
863 CLRDATA_ADDRESS mt,
864 struct DacpMethodTableTransparencyData *data) = 0;
865
866 virtual HRESULT STDMETHODCALLTYPE GetMethodTableForEEClass(
867 CLRDATA_ADDRESS eeClass,
868 CLRDATA_ADDRESS *value) = 0;
869
870 virtual HRESULT STDMETHODCALLTYPE GetFieldDescData(
871 CLRDATA_ADDRESS fieldDesc,
872 struct DacpFieldDescData *data) = 0;
873
874 virtual HRESULT STDMETHODCALLTYPE GetFrameName(
875 CLRDATA_ADDRESS vtable,
876 unsigned int count,
877 WCHAR *frameName,
878 unsigned int *pNeeded) = 0;
879
880 virtual HRESULT STDMETHODCALLTYPE GetPEFileBase(
881 CLRDATA_ADDRESS addr,
882 CLRDATA_ADDRESS *base) = 0;
883
884 virtual HRESULT STDMETHODCALLTYPE GetPEFileName(
885 CLRDATA_ADDRESS addr,
886 unsigned int count,
887 WCHAR *fileName,
888 unsigned int *pNeeded) = 0;
889
890 virtual HRESULT STDMETHODCALLTYPE GetGCHeapData(
891 struct DacpGcHeapData *data) = 0;
892
893 virtual HRESULT STDMETHODCALLTYPE GetGCHeapList(
894 unsigned int count,
895 CLRDATA_ADDRESS heaps[ ],
896 unsigned int *pNeeded) = 0;
897
898 virtual HRESULT STDMETHODCALLTYPE GetGCHeapDetails(
899 CLRDATA_ADDRESS heap,
900 struct DacpGcHeapDetails *details) = 0;
901
902 virtual HRESULT STDMETHODCALLTYPE GetGCHeapStaticData(
903 struct DacpGcHeapDetails *data) = 0;
904
905 virtual HRESULT STDMETHODCALLTYPE GetHeapSegmentData(
906 CLRDATA_ADDRESS seg,
907 struct DacpHeapSegmentData *data) = 0;
908
909 virtual HRESULT STDMETHODCALLTYPE GetOOMData(
910 CLRDATA_ADDRESS oomAddr,
911 struct DacpOomData *data) = 0;
912
913 virtual HRESULT STDMETHODCALLTYPE GetOOMStaticData(
914 struct DacpOomData *data) = 0;
915
916 virtual HRESULT STDMETHODCALLTYPE GetHeapAnalyzeData(
917 CLRDATA_ADDRESS addr,
918 struct DacpGcHeapAnalyzeData *data) = 0;
919
920 virtual HRESULT STDMETHODCALLTYPE GetHeapAnalyzeStaticData(
921 struct DacpGcHeapAnalyzeData *data) = 0;
922
923 virtual HRESULT STDMETHODCALLTYPE GetDomainLocalModuleData(
924 CLRDATA_ADDRESS addr,
925 struct DacpDomainLocalModuleData *data) = 0;
926
927 virtual HRESULT STDMETHODCALLTYPE GetDomainLocalModuleDataFromAppDomain(
928 CLRDATA_ADDRESS appDomainAddr,
929 int moduleID,
930 struct DacpDomainLocalModuleData *data) = 0;
931
932 virtual HRESULT STDMETHODCALLTYPE GetDomainLocalModuleDataFromModule(
933 CLRDATA_ADDRESS moduleAddr,
934 struct DacpDomainLocalModuleData *data) = 0;
935
936 virtual HRESULT STDMETHODCALLTYPE GetThreadLocalModuleData(
937 CLRDATA_ADDRESS thread,
938 unsigned int index,
939 struct DacpThreadLocalModuleData *data) = 0;
940
941 virtual HRESULT STDMETHODCALLTYPE GetSyncBlockData(
942 unsigned int number,
943 struct DacpSyncBlockData *data) = 0;
944
945 virtual HRESULT STDMETHODCALLTYPE GetSyncBlockCleanupData(
946 CLRDATA_ADDRESS addr,
947 struct DacpSyncBlockCleanupData *data) = 0;
948
949 virtual HRESULT STDMETHODCALLTYPE GetHandleEnum(
950 ISOSHandleEnum **ppHandleEnum) = 0;
951
952 virtual HRESULT STDMETHODCALLTYPE GetHandleEnumForTypes(
953 unsigned int types[ ],
954 unsigned int count,
955 ISOSHandleEnum **ppHandleEnum) = 0;
956
957 virtual HRESULT STDMETHODCALLTYPE GetHandleEnumForGC(
958 unsigned int gen,
959 ISOSHandleEnum **ppHandleEnum) = 0;
960
961 virtual HRESULT STDMETHODCALLTYPE TraverseEHInfo(
962 CLRDATA_ADDRESS ip,
963 DUMPEHINFO pCallback,
964 LPVOID token) = 0;
965
966 virtual HRESULT STDMETHODCALLTYPE GetNestedExceptionData(
967 CLRDATA_ADDRESS exception,
968 CLRDATA_ADDRESS *exceptionObject,
969 CLRDATA_ADDRESS *nextNestedException) = 0;
970
971 virtual HRESULT STDMETHODCALLTYPE GetStressLogAddress(
972 CLRDATA_ADDRESS *stressLog) = 0;
973
974 virtual HRESULT STDMETHODCALLTYPE TraverseLoaderHeap(
975 CLRDATA_ADDRESS loaderHeapAddr,
976 VISITHEAP pCallback) = 0;
977
978 virtual HRESULT STDMETHODCALLTYPE GetCodeHeapList(
979 CLRDATA_ADDRESS jitManager,
980 unsigned int count,
981 struct DacpJitCodeHeapInfo *codeHeaps,
982 unsigned int *pNeeded) = 0;
983
984 virtual HRESULT STDMETHODCALLTYPE TraverseVirtCallStubHeap(
985 CLRDATA_ADDRESS pAppDomain,
986 VCSHeapType heaptype,
987 VISITHEAP pCallback) = 0;
988
989 virtual HRESULT STDMETHODCALLTYPE GetUsefulGlobals(
990 struct DacpUsefulGlobalsData *data) = 0;
991
992 virtual HRESULT STDMETHODCALLTYPE GetClrWatsonBuckets(
993 CLRDATA_ADDRESS thread,
994 void *pGenericModeBlock) = 0;
995
996 virtual HRESULT STDMETHODCALLTYPE GetTLSIndex(
997 ULONG *pIndex) = 0;
998
999 virtual HRESULT STDMETHODCALLTYPE GetDacModuleHandle(
1000 HMODULE *phModule) = 0;
1001
1002 virtual HRESULT STDMETHODCALLTYPE GetRCWData(
1003 CLRDATA_ADDRESS addr,
1004 struct DacpRCWData *data) = 0;
1005
1006 virtual HRESULT STDMETHODCALLTYPE GetRCWInterfaces(
1007 CLRDATA_ADDRESS rcw,
1008 unsigned int count,
1009 struct DacpCOMInterfacePointerData *interfaces,
1010 unsigned int *pNeeded) = 0;
1011
1012 virtual HRESULT STDMETHODCALLTYPE GetCCWData(
1013 CLRDATA_ADDRESS ccw,
1014 struct DacpCCWData *data) = 0;
1015
1016 virtual HRESULT STDMETHODCALLTYPE GetCCWInterfaces(
1017 CLRDATA_ADDRESS ccw,
1018 unsigned int count,
1019 struct DacpCOMInterfacePointerData *interfaces,
1020 unsigned int *pNeeded) = 0;
1021
1022 virtual HRESULT STDMETHODCALLTYPE TraverseRCWCleanupList(
1023 CLRDATA_ADDRESS cleanupListPtr,
1024 VISITRCWFORCLEANUP pCallback,
1025 LPVOID token) = 0;
1026
1027 virtual HRESULT STDMETHODCALLTYPE GetStackReferences(
1028 /* [in] */ DWORD osThreadID,
1029 /* [out] */ ISOSStackRefEnum **ppEnum) = 0;
1030
1031 virtual HRESULT STDMETHODCALLTYPE GetRegisterName(
1032 /* [in] */ int regName,
1033 /* [in] */ unsigned int count,
1034 /* [out] */ WCHAR *buffer,
1035 /* [out] */ unsigned int *pNeeded) = 0;
1036
1037 virtual HRESULT STDMETHODCALLTYPE GetThreadAllocData(
1038 CLRDATA_ADDRESS thread,
1039 struct DacpAllocData *data) = 0;
1040
1041 virtual HRESULT STDMETHODCALLTYPE GetHeapAllocData(
1042 unsigned int count,
1043 struct DacpGenerationAllocData *data,
1044 unsigned int *pNeeded) = 0;
1045
1046 virtual HRESULT STDMETHODCALLTYPE GetFailedAssemblyList(
1047 CLRDATA_ADDRESS appDomain,
1048 int count,
1049 CLRDATA_ADDRESS values[ ],
1050 unsigned int *pNeeded) = 0;
1051
1052 virtual HRESULT STDMETHODCALLTYPE GetPrivateBinPaths(
1053 CLRDATA_ADDRESS appDomain,
1054 int count,
1055 WCHAR *paths,
1056 unsigned int *pNeeded) = 0;
1057
1058 virtual HRESULT STDMETHODCALLTYPE GetAssemblyLocation(
1059 CLRDATA_ADDRESS assembly,
1060 int count,
1061 WCHAR *location,
1062 unsigned int *pNeeded) = 0;
1063
1064 virtual HRESULT STDMETHODCALLTYPE GetAppDomainConfigFile(
1065 CLRDATA_ADDRESS appDomain,
1066 int count,
1067 WCHAR *configFile,
1068 unsigned int *pNeeded) = 0;
1069
1070 virtual HRESULT STDMETHODCALLTYPE GetApplicationBase(
1071 CLRDATA_ADDRESS appDomain,
1072 int count,
1073 WCHAR *base,
1074 unsigned int *pNeeded) = 0;
1075
1076 virtual HRESULT STDMETHODCALLTYPE GetFailedAssemblyData(
1077 CLRDATA_ADDRESS assembly,
1078 unsigned int *pContext,
1079 HRESULT *pResult) = 0;
1080
1081 virtual HRESULT STDMETHODCALLTYPE GetFailedAssemblyLocation(
1082 CLRDATA_ADDRESS assesmbly,
1083 unsigned int count,
1084 WCHAR *location,
1085 unsigned int *pNeeded) = 0;
1086
1087 virtual HRESULT STDMETHODCALLTYPE GetFailedAssemblyDisplayName(
1088 CLRDATA_ADDRESS assembly,
1089 unsigned int count,
1090 WCHAR *name,
1091 unsigned int *pNeeded) = 0;
1092
1093 };
1094
1095
1096#else /* C style interface */
1097
1098 typedef struct ISOSDacInterfaceVtbl
1099 {
1100 BEGIN_INTERFACE
1101
1102 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1103 ISOSDacInterface * This,
1104 /* [in] */ REFIID riid,
1105 /* [annotation][iid_is][out] */
1106 _COM_Outptr_ void **ppvObject);
1107
1108 ULONG ( STDMETHODCALLTYPE *AddRef )(
1109 ISOSDacInterface * This);
1110
1111 ULONG ( STDMETHODCALLTYPE *Release )(
1112 ISOSDacInterface * This);
1113
1114 HRESULT ( STDMETHODCALLTYPE *GetThreadStoreData )(
1115 ISOSDacInterface * This,
1116 struct DacpThreadStoreData *data);
1117
1118 HRESULT ( STDMETHODCALLTYPE *GetAppDomainStoreData )(
1119 ISOSDacInterface * This,
1120 struct DacpAppDomainStoreData *data);
1121
1122 HRESULT ( STDMETHODCALLTYPE *GetAppDomainList )(
1123 ISOSDacInterface * This,
1124 unsigned int count,
1125 CLRDATA_ADDRESS values[ ],
1126 unsigned int *pNeeded);
1127
1128 HRESULT ( STDMETHODCALLTYPE *GetAppDomainData )(
1129 ISOSDacInterface * This,
1130 CLRDATA_ADDRESS addr,
1131 struct DacpAppDomainData *data);
1132
1133 HRESULT ( STDMETHODCALLTYPE *GetAppDomainName )(
1134 ISOSDacInterface * This,
1135 CLRDATA_ADDRESS addr,
1136 unsigned int count,
1137 WCHAR *name,
1138 unsigned int *pNeeded);
1139
1140 HRESULT ( STDMETHODCALLTYPE *GetDomainFromContext )(
1141 ISOSDacInterface * This,
1142 CLRDATA_ADDRESS context,
1143 CLRDATA_ADDRESS *domain);
1144
1145 HRESULT ( STDMETHODCALLTYPE *GetAssemblyList )(
1146 ISOSDacInterface * This,
1147 CLRDATA_ADDRESS appDomain,
1148 int count,
1149 CLRDATA_ADDRESS values[ ],
1150 int *pNeeded);
1151
1152 HRESULT ( STDMETHODCALLTYPE *GetAssemblyData )(
1153 ISOSDacInterface * This,
1154 CLRDATA_ADDRESS baseDomainPtr,
1155 CLRDATA_ADDRESS assembly,
1156 struct DacpAssemblyData *data);
1157
1158 HRESULT ( STDMETHODCALLTYPE *GetAssemblyName )(
1159 ISOSDacInterface * This,
1160 CLRDATA_ADDRESS assembly,
1161 unsigned int count,
1162 WCHAR *name,
1163 unsigned int *pNeeded);
1164
1165 HRESULT ( STDMETHODCALLTYPE *GetModule )(
1166 ISOSDacInterface * This,
1167 CLRDATA_ADDRESS addr,
1168 IXCLRDataModule **mod);
1169
1170 HRESULT ( STDMETHODCALLTYPE *GetModuleData )(
1171 ISOSDacInterface * This,
1172 CLRDATA_ADDRESS moduleAddr,
1173 struct DacpModuleData *data);
1174
1175 HRESULT ( STDMETHODCALLTYPE *TraverseModuleMap )(
1176 ISOSDacInterface * This,
1177 ModuleMapType mmt,
1178 CLRDATA_ADDRESS moduleAddr,
1179 MODULEMAPTRAVERSE pCallback,
1180 LPVOID token);
1181
1182 HRESULT ( STDMETHODCALLTYPE *GetAssemblyModuleList )(
1183 ISOSDacInterface * This,
1184 CLRDATA_ADDRESS assembly,
1185 unsigned int count,
1186 CLRDATA_ADDRESS modules[ ],
1187 unsigned int *pNeeded);
1188
1189 HRESULT ( STDMETHODCALLTYPE *GetILForModule )(
1190 ISOSDacInterface * This,
1191 CLRDATA_ADDRESS moduleAddr,
1192 DWORD rva,
1193 CLRDATA_ADDRESS *il);
1194
1195 HRESULT ( STDMETHODCALLTYPE *GetThreadData )(
1196 ISOSDacInterface * This,
1197 CLRDATA_ADDRESS thread,
1198 struct DacpThreadData *data);
1199
1200 HRESULT ( STDMETHODCALLTYPE *GetThreadFromThinlockID )(
1201 ISOSDacInterface * This,
1202 UINT thinLockId,
1203 CLRDATA_ADDRESS *pThread);
1204
1205 HRESULT ( STDMETHODCALLTYPE *GetStackLimits )(
1206 ISOSDacInterface * This,
1207 CLRDATA_ADDRESS threadPtr,
1208 CLRDATA_ADDRESS *lower,
1209 CLRDATA_ADDRESS *upper,
1210 CLRDATA_ADDRESS *fp);
1211
1212 HRESULT ( STDMETHODCALLTYPE *GetMethodDescData )(
1213 ISOSDacInterface * This,
1214 CLRDATA_ADDRESS methodDesc,
1215 CLRDATA_ADDRESS ip,
1216 struct DacpMethodDescData *data,
1217 ULONG cRevertedRejitVersions,
1218 struct DacpReJitData *rgRevertedRejitData,
1219 ULONG *pcNeededRevertedRejitData);
1220
1221 HRESULT ( STDMETHODCALLTYPE *GetMethodDescPtrFromIP )(
1222 ISOSDacInterface * This,
1223 CLRDATA_ADDRESS ip,
1224 CLRDATA_ADDRESS *ppMD);
1225
1226 HRESULT ( STDMETHODCALLTYPE *GetMethodDescName )(
1227 ISOSDacInterface * This,
1228 CLRDATA_ADDRESS methodDesc,
1229 unsigned int count,
1230 WCHAR *name,
1231 unsigned int *pNeeded);
1232
1233 HRESULT ( STDMETHODCALLTYPE *GetMethodDescPtrFromFrame )(
1234 ISOSDacInterface * This,
1235 CLRDATA_ADDRESS frameAddr,
1236 CLRDATA_ADDRESS *ppMD);
1237
1238 HRESULT ( STDMETHODCALLTYPE *GetMethodDescFromToken )(
1239 ISOSDacInterface * This,
1240 CLRDATA_ADDRESS moduleAddr,
1241 mdToken token,
1242 CLRDATA_ADDRESS *methodDesc);
1243
1244 HRESULT ( STDMETHODCALLTYPE *GetMethodDescTransparencyData )(
1245 ISOSDacInterface * This,
1246 CLRDATA_ADDRESS methodDesc,
1247 struct DacpMethodDescTransparencyData *data);
1248
1249 HRESULT ( STDMETHODCALLTYPE *GetCodeHeaderData )(
1250 ISOSDacInterface * This,
1251 CLRDATA_ADDRESS ip,
1252 struct DacpCodeHeaderData *data);
1253
1254 HRESULT ( STDMETHODCALLTYPE *GetJitManagerList )(
1255 ISOSDacInterface * This,
1256 unsigned int count,
1257 struct DacpJitManagerInfo *managers,
1258 unsigned int *pNeeded);
1259
1260 HRESULT ( STDMETHODCALLTYPE *GetJitHelperFunctionName )(
1261 ISOSDacInterface * This,
1262 CLRDATA_ADDRESS ip,
1263 unsigned int count,
1264 char *name,
1265 unsigned int *pNeeded);
1266
1267 HRESULT ( STDMETHODCALLTYPE *GetJumpThunkTarget )(
1268 ISOSDacInterface * This,
1269 T_CONTEXT *ctx,
1270 CLRDATA_ADDRESS *targetIP,
1271 CLRDATA_ADDRESS *targetMD);
1272
1273 HRESULT ( STDMETHODCALLTYPE *GetThreadpoolData )(
1274 ISOSDacInterface * This,
1275 struct DacpThreadpoolData *data);
1276
1277 HRESULT ( STDMETHODCALLTYPE *GetWorkRequestData )(
1278 ISOSDacInterface * This,
1279 CLRDATA_ADDRESS addrWorkRequest,
1280 struct DacpWorkRequestData *data);
1281
1282 HRESULT ( STDMETHODCALLTYPE *GetHillClimbingLogEntry )(
1283 ISOSDacInterface * This,
1284 CLRDATA_ADDRESS addr,
1285 struct DacpHillClimbingLogEntry *data);
1286
1287 HRESULT ( STDMETHODCALLTYPE *GetObjectData )(
1288 ISOSDacInterface * This,
1289 CLRDATA_ADDRESS objAddr,
1290 struct DacpObjectData *data);
1291
1292 HRESULT ( STDMETHODCALLTYPE *GetObjectStringData )(
1293 ISOSDacInterface * This,
1294 CLRDATA_ADDRESS obj,
1295 unsigned int count,
1296 WCHAR *stringData,
1297 unsigned int *pNeeded);
1298
1299 HRESULT ( STDMETHODCALLTYPE *GetObjectClassName )(
1300 ISOSDacInterface * This,
1301 CLRDATA_ADDRESS obj,
1302 unsigned int count,
1303 WCHAR *className,
1304 unsigned int *pNeeded);
1305
1306 HRESULT ( STDMETHODCALLTYPE *GetMethodTableName )(
1307 ISOSDacInterface * This,
1308 CLRDATA_ADDRESS mt,
1309 unsigned int count,
1310 WCHAR *mtName,
1311 unsigned int *pNeeded);
1312
1313 HRESULT ( STDMETHODCALLTYPE *GetMethodTableData )(
1314 ISOSDacInterface * This,
1315 CLRDATA_ADDRESS mt,
1316 struct DacpMethodTableData *data);
1317
1318 HRESULT ( STDMETHODCALLTYPE *GetMethodTableSlot )(
1319 ISOSDacInterface * This,
1320 CLRDATA_ADDRESS mt,
1321 unsigned int slot,
1322 CLRDATA_ADDRESS *value);
1323
1324 HRESULT ( STDMETHODCALLTYPE *GetMethodTableFieldData )(
1325 ISOSDacInterface * This,
1326 CLRDATA_ADDRESS mt,
1327 struct DacpMethodTableFieldData *data);
1328
1329 HRESULT ( STDMETHODCALLTYPE *GetMethodTableTransparencyData )(
1330 ISOSDacInterface * This,
1331 CLRDATA_ADDRESS mt,
1332 struct DacpMethodTableTransparencyData *data);
1333
1334 HRESULT ( STDMETHODCALLTYPE *GetMethodTableForEEClass )(
1335 ISOSDacInterface * This,
1336 CLRDATA_ADDRESS eeClass,
1337 CLRDATA_ADDRESS *value);
1338
1339 HRESULT ( STDMETHODCALLTYPE *GetFieldDescData )(
1340 ISOSDacInterface * This,
1341 CLRDATA_ADDRESS fieldDesc,
1342 struct DacpFieldDescData *data);
1343
1344 HRESULT ( STDMETHODCALLTYPE *GetFrameName )(
1345 ISOSDacInterface * This,
1346 CLRDATA_ADDRESS vtable,
1347 unsigned int count,
1348 WCHAR *frameName,
1349 unsigned int *pNeeded);
1350
1351 HRESULT ( STDMETHODCALLTYPE *GetPEFileBase )(
1352 ISOSDacInterface * This,
1353 CLRDATA_ADDRESS addr,
1354 CLRDATA_ADDRESS *base);
1355
1356 HRESULT ( STDMETHODCALLTYPE *GetPEFileName )(
1357 ISOSDacInterface * This,
1358 CLRDATA_ADDRESS addr,
1359 unsigned int count,
1360 WCHAR *fileName,
1361 unsigned int *pNeeded);
1362
1363 HRESULT ( STDMETHODCALLTYPE *GetGCHeapData )(
1364 ISOSDacInterface * This,
1365 struct DacpGcHeapData *data);
1366
1367 HRESULT ( STDMETHODCALLTYPE *GetGCHeapList )(
1368 ISOSDacInterface * This,
1369 unsigned int count,
1370 CLRDATA_ADDRESS heaps[ ],
1371 unsigned int *pNeeded);
1372
1373 HRESULT ( STDMETHODCALLTYPE *GetGCHeapDetails )(
1374 ISOSDacInterface * This,
1375 CLRDATA_ADDRESS heap,
1376 struct DacpGcHeapDetails *details);
1377
1378 HRESULT ( STDMETHODCALLTYPE *GetGCHeapStaticData )(
1379 ISOSDacInterface * This,
1380 struct DacpGcHeapDetails *data);
1381
1382 HRESULT ( STDMETHODCALLTYPE *GetHeapSegmentData )(
1383 ISOSDacInterface * This,
1384 CLRDATA_ADDRESS seg,
1385 struct DacpHeapSegmentData *data);
1386
1387 HRESULT ( STDMETHODCALLTYPE *GetOOMData )(
1388 ISOSDacInterface * This,
1389 CLRDATA_ADDRESS oomAddr,
1390 struct DacpOomData *data);
1391
1392 HRESULT ( STDMETHODCALLTYPE *GetOOMStaticData )(
1393 ISOSDacInterface * This,
1394 struct DacpOomData *data);
1395
1396 HRESULT ( STDMETHODCALLTYPE *GetHeapAnalyzeData )(
1397 ISOSDacInterface * This,
1398 CLRDATA_ADDRESS addr,
1399 struct DacpGcHeapAnalyzeData *data);
1400
1401 HRESULT ( STDMETHODCALLTYPE *GetHeapAnalyzeStaticData )(
1402 ISOSDacInterface * This,
1403 struct DacpGcHeapAnalyzeData *data);
1404
1405 HRESULT ( STDMETHODCALLTYPE *GetDomainLocalModuleData )(
1406 ISOSDacInterface * This,
1407 CLRDATA_ADDRESS addr,
1408 struct DacpDomainLocalModuleData *data);
1409
1410 HRESULT ( STDMETHODCALLTYPE *GetDomainLocalModuleDataFromAppDomain )(
1411 ISOSDacInterface * This,
1412 CLRDATA_ADDRESS appDomainAddr,
1413 int moduleID,
1414 struct DacpDomainLocalModuleData *data);
1415
1416 HRESULT ( STDMETHODCALLTYPE *GetDomainLocalModuleDataFromModule )(
1417 ISOSDacInterface * This,
1418 CLRDATA_ADDRESS moduleAddr,
1419 struct DacpDomainLocalModuleData *data);
1420
1421 HRESULT ( STDMETHODCALLTYPE *GetThreadLocalModuleData )(
1422 ISOSDacInterface * This,
1423 CLRDATA_ADDRESS thread,
1424 unsigned int index,
1425 struct DacpThreadLocalModuleData *data);
1426
1427 HRESULT ( STDMETHODCALLTYPE *GetSyncBlockData )(
1428 ISOSDacInterface * This,
1429 unsigned int number,
1430 struct DacpSyncBlockData *data);
1431
1432 HRESULT ( STDMETHODCALLTYPE *GetSyncBlockCleanupData )(
1433 ISOSDacInterface * This,
1434 CLRDATA_ADDRESS addr,
1435 struct DacpSyncBlockCleanupData *data);
1436
1437 HRESULT ( STDMETHODCALLTYPE *GetHandleEnum )(
1438 ISOSDacInterface * This,
1439 ISOSHandleEnum **ppHandleEnum);
1440
1441 HRESULT ( STDMETHODCALLTYPE *GetHandleEnumForTypes )(
1442 ISOSDacInterface * This,
1443 unsigned int types[ ],
1444 unsigned int count,
1445 ISOSHandleEnum **ppHandleEnum);
1446
1447 HRESULT ( STDMETHODCALLTYPE *GetHandleEnumForGC )(
1448 ISOSDacInterface * This,
1449 unsigned int gen,
1450 ISOSHandleEnum **ppHandleEnum);
1451
1452 HRESULT ( STDMETHODCALLTYPE *TraverseEHInfo )(
1453 ISOSDacInterface * This,
1454 CLRDATA_ADDRESS ip,
1455 DUMPEHINFO pCallback,
1456 LPVOID token);
1457
1458 HRESULT ( STDMETHODCALLTYPE *GetNestedExceptionData )(
1459 ISOSDacInterface * This,
1460 CLRDATA_ADDRESS exception,
1461 CLRDATA_ADDRESS *exceptionObject,
1462 CLRDATA_ADDRESS *nextNestedException);
1463
1464 HRESULT ( STDMETHODCALLTYPE *GetStressLogAddress )(
1465 ISOSDacInterface * This,
1466 CLRDATA_ADDRESS *stressLog);
1467
1468 HRESULT ( STDMETHODCALLTYPE *TraverseLoaderHeap )(
1469 ISOSDacInterface * This,
1470 CLRDATA_ADDRESS loaderHeapAddr,
1471 VISITHEAP pCallback);
1472
1473 HRESULT ( STDMETHODCALLTYPE *GetCodeHeapList )(
1474 ISOSDacInterface * This,
1475 CLRDATA_ADDRESS jitManager,
1476 unsigned int count,
1477 struct DacpJitCodeHeapInfo *codeHeaps,
1478 unsigned int *pNeeded);
1479
1480 HRESULT ( STDMETHODCALLTYPE *TraverseVirtCallStubHeap )(
1481 ISOSDacInterface * This,
1482 CLRDATA_ADDRESS pAppDomain,
1483 VCSHeapType heaptype,
1484 VISITHEAP pCallback);
1485
1486 HRESULT ( STDMETHODCALLTYPE *GetUsefulGlobals )(
1487 ISOSDacInterface * This,
1488 struct DacpUsefulGlobalsData *data);
1489
1490 HRESULT ( STDMETHODCALLTYPE *GetClrWatsonBuckets )(
1491 ISOSDacInterface * This,
1492 CLRDATA_ADDRESS thread,
1493 void *pGenericModeBlock);
1494
1495 HRESULT ( STDMETHODCALLTYPE *GetTLSIndex )(
1496 ISOSDacInterface * This,
1497 ULONG *pIndex);
1498
1499 HRESULT ( STDMETHODCALLTYPE *GetDacModuleHandle )(
1500 ISOSDacInterface * This,
1501 HMODULE *phModule);
1502
1503 HRESULT ( STDMETHODCALLTYPE *GetRCWData )(
1504 ISOSDacInterface * This,
1505 CLRDATA_ADDRESS addr,
1506 struct DacpRCWData *data);
1507
1508 HRESULT ( STDMETHODCALLTYPE *GetRCWInterfaces )(
1509 ISOSDacInterface * This,
1510 CLRDATA_ADDRESS rcw,
1511 unsigned int count,
1512 struct DacpCOMInterfacePointerData *interfaces,
1513 unsigned int *pNeeded);
1514
1515 HRESULT ( STDMETHODCALLTYPE *GetCCWData )(
1516 ISOSDacInterface * This,
1517 CLRDATA_ADDRESS ccw,
1518 struct DacpCCWData *data);
1519
1520 HRESULT ( STDMETHODCALLTYPE *GetCCWInterfaces )(
1521 ISOSDacInterface * This,
1522 CLRDATA_ADDRESS ccw,
1523 unsigned int count,
1524 struct DacpCOMInterfacePointerData *interfaces,
1525 unsigned int *pNeeded);
1526
1527 HRESULT ( STDMETHODCALLTYPE *TraverseRCWCleanupList )(
1528 ISOSDacInterface * This,
1529 CLRDATA_ADDRESS cleanupListPtr,
1530 VISITRCWFORCLEANUP pCallback,
1531 LPVOID token);
1532
1533 HRESULT ( STDMETHODCALLTYPE *GetStackReferences )(
1534 ISOSDacInterface * This,
1535 /* [in] */ DWORD osThreadID,
1536 /* [out] */ ISOSStackRefEnum **ppEnum);
1537
1538 HRESULT ( STDMETHODCALLTYPE *GetRegisterName )(
1539 ISOSDacInterface * This,
1540 /* [in] */ int regName,
1541 /* [in] */ unsigned int count,
1542 /* [out] */ WCHAR *buffer,
1543 /* [out] */ unsigned int *pNeeded);
1544
1545 HRESULT ( STDMETHODCALLTYPE *GetThreadAllocData )(
1546 ISOSDacInterface * This,
1547 CLRDATA_ADDRESS thread,
1548 struct DacpAllocData *data);
1549
1550 HRESULT ( STDMETHODCALLTYPE *GetHeapAllocData )(
1551 ISOSDacInterface * This,
1552 unsigned int count,
1553 struct DacpGenerationAllocData *data,
1554 unsigned int *pNeeded);
1555
1556 HRESULT ( STDMETHODCALLTYPE *GetFailedAssemblyList )(
1557 ISOSDacInterface * This,
1558 CLRDATA_ADDRESS appDomain,
1559 int count,
1560 CLRDATA_ADDRESS values[ ],
1561 unsigned int *pNeeded);
1562
1563 HRESULT ( STDMETHODCALLTYPE *GetPrivateBinPaths )(
1564 ISOSDacInterface * This,
1565 CLRDATA_ADDRESS appDomain,
1566 int count,
1567 WCHAR *paths,
1568 unsigned int *pNeeded);
1569
1570 HRESULT ( STDMETHODCALLTYPE *GetAssemblyLocation )(
1571 ISOSDacInterface * This,
1572 CLRDATA_ADDRESS assembly,
1573 int count,
1574 WCHAR *location,
1575 unsigned int *pNeeded);
1576
1577 HRESULT ( STDMETHODCALLTYPE *GetAppDomainConfigFile )(
1578 ISOSDacInterface * This,
1579 CLRDATA_ADDRESS appDomain,
1580 int count,
1581 WCHAR *configFile,
1582 unsigned int *pNeeded);
1583
1584 HRESULT ( STDMETHODCALLTYPE *GetApplicationBase )(
1585 ISOSDacInterface * This,
1586 CLRDATA_ADDRESS appDomain,
1587 int count,
1588 WCHAR *base,
1589 unsigned int *pNeeded);
1590
1591 HRESULT ( STDMETHODCALLTYPE *GetFailedAssemblyData )(
1592 ISOSDacInterface * This,
1593 CLRDATA_ADDRESS assembly,
1594 unsigned int *pContext,
1595 HRESULT *pResult);
1596
1597 HRESULT ( STDMETHODCALLTYPE *GetFailedAssemblyLocation )(
1598 ISOSDacInterface * This,
1599 CLRDATA_ADDRESS assesmbly,
1600 unsigned int count,
1601 WCHAR *location,
1602 unsigned int *pNeeded);
1603
1604 HRESULT ( STDMETHODCALLTYPE *GetFailedAssemblyDisplayName )(
1605 ISOSDacInterface * This,
1606 CLRDATA_ADDRESS assembly,
1607 unsigned int count,
1608 WCHAR *name,
1609 unsigned int *pNeeded);
1610
1611 END_INTERFACE
1612 } ISOSDacInterfaceVtbl;
1613
1614 interface ISOSDacInterface
1615 {
1616 CONST_VTBL struct ISOSDacInterfaceVtbl *lpVtbl;
1617 };
1618
1619
1620
1621#ifdef COBJMACROS
1622
1623
1624#define ISOSDacInterface_QueryInterface(This,riid,ppvObject) \
1625 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
1626
1627#define ISOSDacInterface_AddRef(This) \
1628 ( (This)->lpVtbl -> AddRef(This) )
1629
1630#define ISOSDacInterface_Release(This) \
1631 ( (This)->lpVtbl -> Release(This) )
1632
1633
1634#define ISOSDacInterface_GetThreadStoreData(This,data) \
1635 ( (This)->lpVtbl -> GetThreadStoreData(This,data) )
1636
1637#define ISOSDacInterface_GetAppDomainStoreData(This,data) \
1638 ( (This)->lpVtbl -> GetAppDomainStoreData(This,data) )
1639
1640#define ISOSDacInterface_GetAppDomainList(This,count,values,pNeeded) \
1641 ( (This)->lpVtbl -> GetAppDomainList(This,count,values,pNeeded) )
1642
1643#define ISOSDacInterface_GetAppDomainData(This,addr,data) \
1644 ( (This)->lpVtbl -> GetAppDomainData(This,addr,data) )
1645
1646#define ISOSDacInterface_GetAppDomainName(This,addr,count,name,pNeeded) \
1647 ( (This)->lpVtbl -> GetAppDomainName(This,addr,count,name,pNeeded) )
1648
1649#define ISOSDacInterface_GetDomainFromContext(This,context,domain) \
1650 ( (This)->lpVtbl -> GetDomainFromContext(This,context,domain) )
1651
1652#define ISOSDacInterface_GetAssemblyList(This,appDomain,count,values,pNeeded) \
1653 ( (This)->lpVtbl -> GetAssemblyList(This,appDomain,count,values,pNeeded) )
1654
1655#define ISOSDacInterface_GetAssemblyData(This,baseDomainPtr,assembly,data) \
1656 ( (This)->lpVtbl -> GetAssemblyData(This,baseDomainPtr,assembly,data) )
1657
1658#define ISOSDacInterface_GetAssemblyName(This,assembly,count,name,pNeeded) \
1659 ( (This)->lpVtbl -> GetAssemblyName(This,assembly,count,name,pNeeded) )
1660
1661#define ISOSDacInterface_GetModule(This,addr,mod) \
1662 ( (This)->lpVtbl -> GetModule(This,addr,mod) )
1663
1664#define ISOSDacInterface_GetModuleData(This,moduleAddr,data) \
1665 ( (This)->lpVtbl -> GetModuleData(This,moduleAddr,data) )
1666
1667#define ISOSDacInterface_TraverseModuleMap(This,mmt,moduleAddr,pCallback,token) \
1668 ( (This)->lpVtbl -> TraverseModuleMap(This,mmt,moduleAddr,pCallback,token) )
1669
1670#define ISOSDacInterface_GetAssemblyModuleList(This,assembly,count,modules,pNeeded) \
1671 ( (This)->lpVtbl -> GetAssemblyModuleList(This,assembly,count,modules,pNeeded) )
1672
1673#define ISOSDacInterface_GetILForModule(This,moduleAddr,rva,il) \
1674 ( (This)->lpVtbl -> GetILForModule(This,moduleAddr,rva,il) )
1675
1676#define ISOSDacInterface_GetThreadData(This,thread,data) \
1677 ( (This)->lpVtbl -> GetThreadData(This,thread,data) )
1678
1679#define ISOSDacInterface_GetThreadFromThinlockID(This,thinLockId,pThread) \
1680 ( (This)->lpVtbl -> GetThreadFromThinlockID(This,thinLockId,pThread) )
1681
1682#define ISOSDacInterface_GetStackLimits(This,threadPtr,lower,upper,fp) \
1683 ( (This)->lpVtbl -> GetStackLimits(This,threadPtr,lower,upper,fp) )
1684
1685#define ISOSDacInterface_GetMethodDescData(This,methodDesc,ip,data,cRevertedRejitVersions,rgRevertedRejitData,pcNeededRevertedRejitData) \
1686 ( (This)->lpVtbl -> GetMethodDescData(This,methodDesc,ip,data,cRevertedRejitVersions,rgRevertedRejitData,pcNeededRevertedRejitData) )
1687
1688#define ISOSDacInterface_GetMethodDescPtrFromIP(This,ip,ppMD) \
1689 ( (This)->lpVtbl -> GetMethodDescPtrFromIP(This,ip,ppMD) )
1690
1691#define ISOSDacInterface_GetMethodDescName(This,methodDesc,count,name,pNeeded) \
1692 ( (This)->lpVtbl -> GetMethodDescName(This,methodDesc,count,name,pNeeded) )
1693
1694#define ISOSDacInterface_GetMethodDescPtrFromFrame(This,frameAddr,ppMD) \
1695 ( (This)->lpVtbl -> GetMethodDescPtrFromFrame(This,frameAddr,ppMD) )
1696
1697#define ISOSDacInterface_GetMethodDescFromToken(This,moduleAddr,token,methodDesc) \
1698 ( (This)->lpVtbl -> GetMethodDescFromToken(This,moduleAddr,token,methodDesc) )
1699
1700#define ISOSDacInterface_GetMethodDescTransparencyData(This,methodDesc,data) \
1701 ( (This)->lpVtbl -> GetMethodDescTransparencyData(This,methodDesc,data) )
1702
1703#define ISOSDacInterface_GetCodeHeaderData(This,ip,data) \
1704 ( (This)->lpVtbl -> GetCodeHeaderData(This,ip,data) )
1705
1706#define ISOSDacInterface_GetJitManagerList(This,count,managers,pNeeded) \
1707 ( (This)->lpVtbl -> GetJitManagerList(This,count,managers,pNeeded) )
1708
1709#define ISOSDacInterface_GetJitHelperFunctionName(This,ip,count,name,pNeeded) \
1710 ( (This)->lpVtbl -> GetJitHelperFunctionName(This,ip,count,name,pNeeded) )
1711
1712#define ISOSDacInterface_GetJumpThunkTarget(This,ctx,targetIP,targetMD) \
1713 ( (This)->lpVtbl -> GetJumpThunkTarget(This,ctx,targetIP,targetMD) )
1714
1715#define ISOSDacInterface_GetThreadpoolData(This,data) \
1716 ( (This)->lpVtbl -> GetThreadpoolData(This,data) )
1717
1718#define ISOSDacInterface_GetWorkRequestData(This,addrWorkRequest,data) \
1719 ( (This)->lpVtbl -> GetWorkRequestData(This,addrWorkRequest,data) )
1720
1721#define ISOSDacInterface_GetHillClimbingLogEntry(This,addr,data) \
1722 ( (This)->lpVtbl -> GetHillClimbingLogEntry(This,addr,data) )
1723
1724#define ISOSDacInterface_GetObjectData(This,objAddr,data) \
1725 ( (This)->lpVtbl -> GetObjectData(This,objAddr,data) )
1726
1727#define ISOSDacInterface_GetObjectStringData(This,obj,count,stringData,pNeeded) \
1728 ( (This)->lpVtbl -> GetObjectStringData(This,obj,count,stringData,pNeeded) )
1729
1730#define ISOSDacInterface_GetObjectClassName(This,obj,count,className,pNeeded) \
1731 ( (This)->lpVtbl -> GetObjectClassName(This,obj,count,className,pNeeded) )
1732
1733#define ISOSDacInterface_GetMethodTableName(This,mt,count,mtName,pNeeded) \
1734 ( (This)->lpVtbl -> GetMethodTableName(This,mt,count,mtName,pNeeded) )
1735
1736#define ISOSDacInterface_GetMethodTableData(This,mt,data) \
1737 ( (This)->lpVtbl -> GetMethodTableData(This,mt,data) )
1738
1739#define ISOSDacInterface_GetMethodTableSlot(This,mt,slot,value) \
1740 ( (This)->lpVtbl -> GetMethodTableSlot(This,mt,slot,value) )
1741
1742#define ISOSDacInterface_GetMethodTableFieldData(This,mt,data) \
1743 ( (This)->lpVtbl -> GetMethodTableFieldData(This,mt,data) )
1744
1745#define ISOSDacInterface_GetMethodTableTransparencyData(This,mt,data) \
1746 ( (This)->lpVtbl -> GetMethodTableTransparencyData(This,mt,data) )
1747
1748#define ISOSDacInterface_GetMethodTableForEEClass(This,eeClass,value) \
1749 ( (This)->lpVtbl -> GetMethodTableForEEClass(This,eeClass,value) )
1750
1751#define ISOSDacInterface_GetFieldDescData(This,fieldDesc,data) \
1752 ( (This)->lpVtbl -> GetFieldDescData(This,fieldDesc,data) )
1753
1754#define ISOSDacInterface_GetFrameName(This,vtable,count,frameName,pNeeded) \
1755 ( (This)->lpVtbl -> GetFrameName(This,vtable,count,frameName,pNeeded) )
1756
1757#define ISOSDacInterface_GetPEFileBase(This,addr,base) \
1758 ( (This)->lpVtbl -> GetPEFileBase(This,addr,base) )
1759
1760#define ISOSDacInterface_GetPEFileName(This,addr,count,fileName,pNeeded) \
1761 ( (This)->lpVtbl -> GetPEFileName(This,addr,count,fileName,pNeeded) )
1762
1763#define ISOSDacInterface_GetGCHeapData(This,data) \
1764 ( (This)->lpVtbl -> GetGCHeapData(This,data) )
1765
1766#define ISOSDacInterface_GetGCHeapList(This,count,heaps,pNeeded) \
1767 ( (This)->lpVtbl -> GetGCHeapList(This,count,heaps,pNeeded) )
1768
1769#define ISOSDacInterface_GetGCHeapDetails(This,heap,details) \
1770 ( (This)->lpVtbl -> GetGCHeapDetails(This,heap,details) )
1771
1772#define ISOSDacInterface_GetGCHeapStaticData(This,data) \
1773 ( (This)->lpVtbl -> GetGCHeapStaticData(This,data) )
1774
1775#define ISOSDacInterface_GetHeapSegmentData(This,seg,data) \
1776 ( (This)->lpVtbl -> GetHeapSegmentData(This,seg,data) )
1777
1778#define ISOSDacInterface_GetOOMData(This,oomAddr,data) \
1779 ( (This)->lpVtbl -> GetOOMData(This,oomAddr,data) )
1780
1781#define ISOSDacInterface_GetOOMStaticData(This,data) \
1782 ( (This)->lpVtbl -> GetOOMStaticData(This,data) )
1783
1784#define ISOSDacInterface_GetHeapAnalyzeData(This,addr,data) \
1785 ( (This)->lpVtbl -> GetHeapAnalyzeData(This,addr,data) )
1786
1787#define ISOSDacInterface_GetHeapAnalyzeStaticData(This,data) \
1788 ( (This)->lpVtbl -> GetHeapAnalyzeStaticData(This,data) )
1789
1790#define ISOSDacInterface_GetDomainLocalModuleData(This,addr,data) \
1791 ( (This)->lpVtbl -> GetDomainLocalModuleData(This,addr,data) )
1792
1793#define ISOSDacInterface_GetDomainLocalModuleDataFromAppDomain(This,appDomainAddr,moduleID,data) \
1794 ( (This)->lpVtbl -> GetDomainLocalModuleDataFromAppDomain(This,appDomainAddr,moduleID,data) )
1795
1796#define ISOSDacInterface_GetDomainLocalModuleDataFromModule(This,moduleAddr,data) \
1797 ( (This)->lpVtbl -> GetDomainLocalModuleDataFromModule(This,moduleAddr,data) )
1798
1799#define ISOSDacInterface_GetThreadLocalModuleData(This,thread,index,data) \
1800 ( (This)->lpVtbl -> GetThreadLocalModuleData(This,thread,index,data) )
1801
1802#define ISOSDacInterface_GetSyncBlockData(This,number,data) \
1803 ( (This)->lpVtbl -> GetSyncBlockData(This,number,data) )
1804
1805#define ISOSDacInterface_GetSyncBlockCleanupData(This,addr,data) \
1806 ( (This)->lpVtbl -> GetSyncBlockCleanupData(This,addr,data) )
1807
1808#define ISOSDacInterface_GetHandleEnum(This,ppHandleEnum) \
1809 ( (This)->lpVtbl -> GetHandleEnum(This,ppHandleEnum) )
1810
1811#define ISOSDacInterface_GetHandleEnumForTypes(This,types,count,ppHandleEnum) \
1812 ( (This)->lpVtbl -> GetHandleEnumForTypes(This,types,count,ppHandleEnum) )
1813
1814#define ISOSDacInterface_GetHandleEnumForGC(This,gen,ppHandleEnum) \
1815 ( (This)->lpVtbl -> GetHandleEnumForGC(This,gen,ppHandleEnum) )
1816
1817#define ISOSDacInterface_TraverseEHInfo(This,ip,pCallback,token) \
1818 ( (This)->lpVtbl -> TraverseEHInfo(This,ip,pCallback,token) )
1819
1820#define ISOSDacInterface_GetNestedExceptionData(This,exception,exceptionObject,nextNestedException) \
1821 ( (This)->lpVtbl -> GetNestedExceptionData(This,exception,exceptionObject,nextNestedException) )
1822
1823#define ISOSDacInterface_GetStressLogAddress(This,stressLog) \
1824 ( (This)->lpVtbl -> GetStressLogAddress(This,stressLog) )
1825
1826#define ISOSDacInterface_TraverseLoaderHeap(This,loaderHeapAddr,pCallback) \
1827 ( (This)->lpVtbl -> TraverseLoaderHeap(This,loaderHeapAddr,pCallback) )
1828
1829#define ISOSDacInterface_GetCodeHeapList(This,jitManager,count,codeHeaps,pNeeded) \
1830 ( (This)->lpVtbl -> GetCodeHeapList(This,jitManager,count,codeHeaps,pNeeded) )
1831
1832#define ISOSDacInterface_TraverseVirtCallStubHeap(This,pAppDomain,heaptype,pCallback) \
1833 ( (This)->lpVtbl -> TraverseVirtCallStubHeap(This,pAppDomain,heaptype,pCallback) )
1834
1835#define ISOSDacInterface_GetUsefulGlobals(This,data) \
1836 ( (This)->lpVtbl -> GetUsefulGlobals(This,data) )
1837
1838#define ISOSDacInterface_GetClrWatsonBuckets(This,thread,pGenericModeBlock) \
1839 ( (This)->lpVtbl -> GetClrWatsonBuckets(This,thread,pGenericModeBlock) )
1840
1841#define ISOSDacInterface_GetTLSIndex(This,pIndex) \
1842 ( (This)->lpVtbl -> GetTLSIndex(This,pIndex) )
1843
1844#define ISOSDacInterface_GetDacModuleHandle(This,phModule) \
1845 ( (This)->lpVtbl -> GetDacModuleHandle(This,phModule) )
1846
1847#define ISOSDacInterface_GetRCWData(This,addr,data) \
1848 ( (This)->lpVtbl -> GetRCWData(This,addr,data) )
1849
1850#define ISOSDacInterface_GetRCWInterfaces(This,rcw,count,interfaces,pNeeded) \
1851 ( (This)->lpVtbl -> GetRCWInterfaces(This,rcw,count,interfaces,pNeeded) )
1852
1853#define ISOSDacInterface_GetCCWData(This,ccw,data) \
1854 ( (This)->lpVtbl -> GetCCWData(This,ccw,data) )
1855
1856#define ISOSDacInterface_GetCCWInterfaces(This,ccw,count,interfaces,pNeeded) \
1857 ( (This)->lpVtbl -> GetCCWInterfaces(This,ccw,count,interfaces,pNeeded) )
1858
1859#define ISOSDacInterface_TraverseRCWCleanupList(This,cleanupListPtr,pCallback,token) \
1860 ( (This)->lpVtbl -> TraverseRCWCleanupList(This,cleanupListPtr,pCallback,token) )
1861
1862#define ISOSDacInterface_GetStackReferences(This,osThreadID,ppEnum) \
1863 ( (This)->lpVtbl -> GetStackReferences(This,osThreadID,ppEnum) )
1864
1865#define ISOSDacInterface_GetRegisterName(This,regName,count,buffer,pNeeded) \
1866 ( (This)->lpVtbl -> GetRegisterName(This,regName,count,buffer,pNeeded) )
1867
1868#define ISOSDacInterface_GetThreadAllocData(This,thread,data) \
1869 ( (This)->lpVtbl -> GetThreadAllocData(This,thread,data) )
1870
1871#define ISOSDacInterface_GetHeapAllocData(This,count,data,pNeeded) \
1872 ( (This)->lpVtbl -> GetHeapAllocData(This,count,data,pNeeded) )
1873
1874#define ISOSDacInterface_GetFailedAssemblyList(This,appDomain,count,values,pNeeded) \
1875 ( (This)->lpVtbl -> GetFailedAssemblyList(This,appDomain,count,values,pNeeded) )
1876
1877#define ISOSDacInterface_GetPrivateBinPaths(This,appDomain,count,paths,pNeeded) \
1878 ( (This)->lpVtbl -> GetPrivateBinPaths(This,appDomain,count,paths,pNeeded) )
1879
1880#define ISOSDacInterface_GetAssemblyLocation(This,assembly,count,location,pNeeded) \
1881 ( (This)->lpVtbl -> GetAssemblyLocation(This,assembly,count,location,pNeeded) )
1882
1883#define ISOSDacInterface_GetAppDomainConfigFile(This,appDomain,count,configFile,pNeeded) \
1884 ( (This)->lpVtbl -> GetAppDomainConfigFile(This,appDomain,count,configFile,pNeeded) )
1885
1886#define ISOSDacInterface_GetApplicationBase(This,appDomain,count,base,pNeeded) \
1887 ( (This)->lpVtbl -> GetApplicationBase(This,appDomain,count,base,pNeeded) )
1888
1889#define ISOSDacInterface_GetFailedAssemblyData(This,assembly,pContext,pResult) \
1890 ( (This)->lpVtbl -> GetFailedAssemblyData(This,assembly,pContext,pResult) )
1891
1892#define ISOSDacInterface_GetFailedAssemblyLocation(This,assesmbly,count,location,pNeeded) \
1893 ( (This)->lpVtbl -> GetFailedAssemblyLocation(This,assesmbly,count,location,pNeeded) )
1894
1895#define ISOSDacInterface_GetFailedAssemblyDisplayName(This,assembly,count,name,pNeeded) \
1896 ( (This)->lpVtbl -> GetFailedAssemblyDisplayName(This,assembly,count,name,pNeeded) )
1897
1898#endif /* COBJMACROS */
1899
1900
1901#endif /* C style interface */
1902
1903
1904
1905
1906#endif /* __ISOSDacInterface_INTERFACE_DEFINED__ */
1907
1908
1909#ifndef __ISOSDacInterface2_INTERFACE_DEFINED__
1910#define __ISOSDacInterface2_INTERFACE_DEFINED__
1911
1912/* interface ISOSDacInterface2 */
1913/* [uuid][local][object] */
1914
1915
1916EXTERN_C const IID IID_ISOSDacInterface2;
1917
1918#if defined(__cplusplus) && !defined(CINTERFACE)
1919
1920 MIDL_INTERFACE("A16026EC-96F4-40BA-87FB-5575986FB7AF")
1921 ISOSDacInterface2 : public IUnknown
1922 {
1923 public:
1924 virtual HRESULT STDMETHODCALLTYPE GetObjectExceptionData(
1925 CLRDATA_ADDRESS objAddr,
1926 struct DacpExceptionObjectData *data) = 0;
1927
1928 virtual HRESULT STDMETHODCALLTYPE IsRCWDCOMProxy(
1929 CLRDATA_ADDRESS rcwAddr,
1930 BOOL *isDCOMProxy) = 0;
1931
1932 };
1933
1934
1935#else /* C style interface */
1936
1937 typedef struct ISOSDacInterface2Vtbl
1938 {
1939 BEGIN_INTERFACE
1940
1941 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1942 ISOSDacInterface2 * This,
1943 /* [in] */ REFIID riid,
1944 /* [annotation][iid_is][out] */
1945 _COM_Outptr_ void **ppvObject);
1946
1947 ULONG ( STDMETHODCALLTYPE *AddRef )(
1948 ISOSDacInterface2 * This);
1949
1950 ULONG ( STDMETHODCALLTYPE *Release )(
1951 ISOSDacInterface2 * This);
1952
1953 HRESULT ( STDMETHODCALLTYPE *GetObjectExceptionData )(
1954 ISOSDacInterface2 * This,
1955 CLRDATA_ADDRESS objAddr,
1956 struct DacpExceptionObjectData *data);
1957
1958 HRESULT ( STDMETHODCALLTYPE *IsRCWDCOMProxy )(
1959 ISOSDacInterface2 * This,
1960 CLRDATA_ADDRESS rcwAddr,
1961 BOOL *isDCOMProxy);
1962
1963 END_INTERFACE
1964 } ISOSDacInterface2Vtbl;
1965
1966 interface ISOSDacInterface2
1967 {
1968 CONST_VTBL struct ISOSDacInterface2Vtbl *lpVtbl;
1969 };
1970
1971
1972
1973#ifdef COBJMACROS
1974
1975
1976#define ISOSDacInterface2_QueryInterface(This,riid,ppvObject) \
1977 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
1978
1979#define ISOSDacInterface2_AddRef(This) \
1980 ( (This)->lpVtbl -> AddRef(This) )
1981
1982#define ISOSDacInterface2_Release(This) \
1983 ( (This)->lpVtbl -> Release(This) )
1984
1985
1986#define ISOSDacInterface2_GetObjectExceptionData(This,objAddr,data) \
1987 ( (This)->lpVtbl -> GetObjectExceptionData(This,objAddr,data) )
1988
1989#define ISOSDacInterface2_IsRCWDCOMProxy(This,rcwAddr,isDCOMProxy) \
1990 ( (This)->lpVtbl -> IsRCWDCOMProxy(This,rcwAddr,isDCOMProxy) )
1991
1992#endif /* COBJMACROS */
1993
1994
1995#endif /* C style interface */
1996
1997
1998
1999
2000#endif /* __ISOSDacInterface2_INTERFACE_DEFINED__ */
2001
2002
2003#ifndef __ISOSDacInterface3_INTERFACE_DEFINED__
2004#define __ISOSDacInterface3_INTERFACE_DEFINED__
2005
2006/* interface ISOSDacInterface3 */
2007/* [uuid][local][object] */
2008
2009
2010EXTERN_C const IID IID_ISOSDacInterface3;
2011
2012#if defined(__cplusplus) && !defined(CINTERFACE)
2013
2014 MIDL_INTERFACE("B08C5CDC-FD8A-49C5-AB38-5FEEF35235B4")
2015 ISOSDacInterface3 : public IUnknown
2016 {
2017 public:
2018 virtual HRESULT STDMETHODCALLTYPE GetGCInterestingInfoData(
2019 CLRDATA_ADDRESS interestingInfoAddr,
2020 struct DacpGCInterestingInfoData *data) = 0;
2021
2022 virtual HRESULT STDMETHODCALLTYPE GetGCInterestingInfoStaticData(
2023 struct DacpGCInterestingInfoData *data) = 0;
2024
2025 virtual HRESULT STDMETHODCALLTYPE GetGCGlobalMechanisms(
2026 size_t *globalMechanisms) = 0;
2027
2028 };
2029
2030
2031#else /* C style interface */
2032
2033 typedef struct ISOSDacInterface3Vtbl
2034 {
2035 BEGIN_INTERFACE
2036
2037 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2038 ISOSDacInterface3 * This,
2039 /* [in] */ REFIID riid,
2040 /* [annotation][iid_is][out] */
2041 _COM_Outptr_ void **ppvObject);
2042
2043 ULONG ( STDMETHODCALLTYPE *AddRef )(
2044 ISOSDacInterface3 * This);
2045
2046 ULONG ( STDMETHODCALLTYPE *Release )(
2047 ISOSDacInterface3 * This);
2048
2049 HRESULT ( STDMETHODCALLTYPE *GetGCInterestingInfoData )(
2050 ISOSDacInterface3 * This,
2051 CLRDATA_ADDRESS interestingInfoAddr,
2052 struct DacpGCInterestingInfoData *data);
2053
2054 HRESULT ( STDMETHODCALLTYPE *GetGCInterestingInfoStaticData )(
2055 ISOSDacInterface3 * This,
2056 struct DacpGCInterestingInfoData *data);
2057
2058 HRESULT ( STDMETHODCALLTYPE *GetGCGlobalMechanisms )(
2059 ISOSDacInterface3 * This,
2060 size_t *globalMechanisms);
2061
2062 END_INTERFACE
2063 } ISOSDacInterface3Vtbl;
2064
2065 interface ISOSDacInterface3
2066 {
2067 CONST_VTBL struct ISOSDacInterface3Vtbl *lpVtbl;
2068 };
2069
2070
2071
2072#ifdef COBJMACROS
2073
2074
2075#define ISOSDacInterface3_QueryInterface(This,riid,ppvObject) \
2076 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2077
2078#define ISOSDacInterface3_AddRef(This) \
2079 ( (This)->lpVtbl -> AddRef(This) )
2080
2081#define ISOSDacInterface3_Release(This) \
2082 ( (This)->lpVtbl -> Release(This) )
2083
2084
2085#define ISOSDacInterface3_GetGCInterestingInfoData(This,interestingInfoAddr,data) \
2086 ( (This)->lpVtbl -> GetGCInterestingInfoData(This,interestingInfoAddr,data) )
2087
2088#define ISOSDacInterface3_GetGCInterestingInfoStaticData(This,data) \
2089 ( (This)->lpVtbl -> GetGCInterestingInfoStaticData(This,data) )
2090
2091#define ISOSDacInterface3_GetGCGlobalMechanisms(This,globalMechanisms) \
2092 ( (This)->lpVtbl -> GetGCGlobalMechanisms(This,globalMechanisms) )
2093
2094#endif /* COBJMACROS */
2095
2096
2097#endif /* C style interface */
2098
2099
2100
2101
2102#endif /* __ISOSDacInterface3_INTERFACE_DEFINED__ */
2103
2104
2105#ifndef __ISOSDacInterface4_INTERFACE_DEFINED__
2106#define __ISOSDacInterface4_INTERFACE_DEFINED__
2107
2108/* interface ISOSDacInterface4 */
2109/* [uuid][local][object] */
2110
2111
2112EXTERN_C const IID IID_ISOSDacInterface4;
2113
2114#if defined(__cplusplus) && !defined(CINTERFACE)
2115
2116 MIDL_INTERFACE("74B9D34C-A612-4B07-93DD-5462178FCE11")
2117 ISOSDacInterface4 : public IUnknown
2118 {
2119 public:
2120 virtual HRESULT STDMETHODCALLTYPE GetClrNotification(
2121 CLRDATA_ADDRESS arguments[ ],
2122 int count,
2123 int *pNeeded) = 0;
2124
2125 };
2126
2127
2128#else /* C style interface */
2129
2130 typedef struct ISOSDacInterface4Vtbl
2131 {
2132 BEGIN_INTERFACE
2133
2134 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2135 ISOSDacInterface4 * This,
2136 /* [in] */ REFIID riid,
2137 /* [annotation][iid_is][out] */
2138 _COM_Outptr_ void **ppvObject);
2139
2140 ULONG ( STDMETHODCALLTYPE *AddRef )(
2141 ISOSDacInterface4 * This);
2142
2143 ULONG ( STDMETHODCALLTYPE *Release )(
2144 ISOSDacInterface4 * This);
2145
2146 HRESULT ( STDMETHODCALLTYPE *GetClrNotification )(
2147 ISOSDacInterface4 * This,
2148 CLRDATA_ADDRESS arguments[ ],
2149 int count,
2150 int *pNeeded);
2151
2152 END_INTERFACE
2153 } ISOSDacInterface4Vtbl;
2154
2155 interface ISOSDacInterface4
2156 {
2157 CONST_VTBL struct ISOSDacInterface4Vtbl *lpVtbl;
2158 };
2159
2160
2161
2162#ifdef COBJMACROS
2163
2164
2165#define ISOSDacInterface4_QueryInterface(This,riid,ppvObject) \
2166 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2167
2168#define ISOSDacInterface4_AddRef(This) \
2169 ( (This)->lpVtbl -> AddRef(This) )
2170
2171#define ISOSDacInterface4_Release(This) \
2172 ( (This)->lpVtbl -> Release(This) )
2173
2174
2175#define ISOSDacInterface4_GetClrNotification(This,arguments,count,pNeeded) \
2176 ( (This)->lpVtbl -> GetClrNotification(This,arguments,count,pNeeded) )
2177
2178#endif /* COBJMACROS */
2179
2180
2181#endif /* C style interface */
2182
2183
2184
2185
2186#endif /* __ISOSDacInterface4_INTERFACE_DEFINED__ */
2187
2188
2189#ifndef __ISOSDacInterface5_INTERFACE_DEFINED__
2190#define __ISOSDacInterface5_INTERFACE_DEFINED__
2191
2192/* interface ISOSDacInterface5 */
2193/* [uuid][local][object] */
2194
2195
2196EXTERN_C const IID IID_ISOSDacInterface5;
2197
2198#if defined(__cplusplus) && !defined(CINTERFACE)
2199
2200 MIDL_INTERFACE("127d6abe-6c86-4e48-8e7b-220781c58101")
2201 ISOSDacInterface5 : public IUnknown
2202 {
2203 public:
2204 virtual HRESULT STDMETHODCALLTYPE GetTieredVersions(
2205 CLRDATA_ADDRESS methodDesc,
2206 int rejitId,
2207 struct DacpTieredVersionData *nativeCodeAddrs,
2208 int cNativeCodeAddrs,
2209 int *pcNativeCodeAddrs) = 0;
2210
2211 };
2212
2213
2214#else /* C style interface */
2215
2216 typedef struct ISOSDacInterface5Vtbl
2217 {
2218 BEGIN_INTERFACE
2219
2220 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2221 ISOSDacInterface5 * This,
2222 /* [in] */ REFIID riid,
2223 /* [annotation][iid_is][out] */
2224 _COM_Outptr_ void **ppvObject);
2225
2226 ULONG ( STDMETHODCALLTYPE *AddRef )(
2227 ISOSDacInterface5 * This);
2228
2229 ULONG ( STDMETHODCALLTYPE *Release )(
2230 ISOSDacInterface5 * This);
2231
2232 HRESULT ( STDMETHODCALLTYPE *GetTieredVersions )(
2233 ISOSDacInterface5 * This,
2234 CLRDATA_ADDRESS methodDesc,
2235 int rejitId,
2236 CLRDATA_ADDRESS *nativeCodeAddrs,
2237 int cNativeCodeAddrs);
2238
2239 END_INTERFACE
2240 } ISOSDacInterface5Vtbl;
2241
2242 interface ISOSDacInterface5
2243 {
2244 CONST_VTBL struct ISOSDacInterface5Vtbl *lpVtbl;
2245 };
2246
2247
2248
2249#ifdef COBJMACROS
2250
2251
2252#define ISOSDacInterface5_QueryInterface(This,riid,ppvObject) \
2253 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2254
2255#define ISOSDacInterface5_AddRef(This) \
2256 ( (This)->lpVtbl -> AddRef(This) )
2257
2258#define ISOSDacInterface5_Release(This) \
2259 ( (This)->lpVtbl -> Release(This) )
2260
2261
2262#define ISOSDacInterface5_GetTieredVersions(This,methodDesc,rejitId,nativeCodeAddrs,cNativeCodeAddrs) \
2263 ( (This)->lpVtbl -> GetTieredVersions(This,methodDesc,rejitId,nativeCodeAddrs,cNativeCodeAddrs) )
2264
2265#endif /* COBJMACROS */
2266
2267
2268#endif /* C style interface */
2269
2270
2271
2272
2273#endif /* __ISOSDacInterface5_INTERFACE_DEFINED__ */
2274
2275
2276#ifndef __ISOSDacInterface6_INTERFACE_DEFINED__
2277#define __ISOSDacInterface6_INTERFACE_DEFINED__
2278
2279 /* interface ISOSDacInterface6 */
2280 /* [uuid][local][object] */
2281
2282
2283 EXTERN_C const IID IID_ISOSDacInterface6;
2284
2285#if defined(__cplusplus) && !defined(CINTERFACE)
2286
2287 MIDL_INTERFACE("11206399-4B66-4EDB-98EA-85654E59AD45")
2288 ISOSDacInterface6 : public IUnknown
2289 {
2290 public:
2291 virtual HRESULT STDMETHODCALLTYPE GetMethodTableCollectibleData(
2292 CLRDATA_ADDRESS mt,
2293 struct DacpMethodTableCollectibleData *data) = 0;
2294 };
2295
2296
2297#else /* C style interface */
2298
2299 typedef struct ISOSDacInterface6Vtbl
2300 {
2301 BEGIN_INTERFACE
2302
2303 HRESULT(STDMETHODCALLTYPE *QueryInterface)(
2304 ISOSDacInterface5 * This,
2305 /* [in] */ REFIID riid,
2306 /* [annotation][iid_is][out] */
2307 _COM_Outptr_ void **ppvObject);
2308
2309 ULONG(STDMETHODCALLTYPE *AddRef)(
2310 ISOSDacInterface5 * This);
2311
2312 ULONG(STDMETHODCALLTYPE *Release)(
2313 ISOSDacInterface5 * This);
2314
2315 HRESULT(STDMETHODCALLTYPE *GetMethodTableCollectibleData)(
2316 CLRDATA_ADDRESS mt,
2317 struct DacpMethodTableCollectibleData *data);
2318
2319 END_INTERFACE
2320 } ISOSDacInterface6Vtbl;
2321
2322 interface ISOSDacInterface6
2323 {
2324 CONST_VTBL struct ISOSDacInterface6Vtbl *lpVtbl;
2325 };
2326
2327
2328
2329#ifdef COBJMACROS
2330
2331
2332#define ISOSDacInterface6_QueryInterface(This,riid,ppvObject) \
2333 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2334
2335#define ISOSDacInterface6_AddRef(This) \
2336 ( (This)->lpVtbl -> AddRef(This) )
2337
2338#define ISOSDacInterface6_Release(This) \
2339 ( (This)->lpVtbl -> Release(This) )
2340
2341
2342#define ISOSDacInterface6_GetMethodTableCollectibleData(This,mt,data) \
2343 ( (This)->lpVtbl -> GetMethodTableCollectibleData(This,mt,data) )
2344
2345#endif /* COBJMACROS */
2346
2347
2348#endif /* C style interface */
2349
2350
2351
2352
2353#endif /* __ISOSDacInterface6_INTERFACE_DEFINED__ */
2354
2355/* Additional Prototypes for ALL interfaces */
2356
2357/* end of Additional Prototypes */
2358
2359#ifdef __cplusplus
2360}
2361#endif
2362
2363#endif
2364
2365
2366