1
2
3 /* this ALWAYS GENERATED file contains the definitions for the interfaces */
4
5
6  /* File created by MIDL compiler version 6.00.0366 */
7 /* Compiler settings for gchost.idl:
8       Oicf, W1, Zp8, env=Win32 (32b run)
9       protocol : dce , ms_ext, c_ext, robust
10       error checks: allocation ref bounds_check enum stub_data 
11       VC __declspec() decoration level: 
12                __declspec(uuid()), __declspec(selectany), __declspec(novtable)
13                DECLSPEC_UUID(), MIDL_INTERFACE()
14 */
15 //@@MIDL_FILE_HEADING(  )
16
17 #pragma warning( disable: 4049 )  /* more than 64k source lines */
18
19
20 /* verify that the <rpcndr.h> version is high enough to compile this file*/
21 #ifndef __REQUIRED_RPCNDR_H_VERSION__
22 #define __REQUIRED_RPCNDR_H_VERSION__ 475
23 #endif
24
25 #include "rpc.h"
26 #include "rpcndr.h"
27
28 #ifndef __RPCNDR_H_VERSION__
29 #error this stub requires an updated version of <rpcndr.h>
30 #endif // __RPCNDR_H_VERSION__
31
32 #ifndef COM_NO_WINDOWS_H
33 #include "windows.h"
34 #include "ole2.h"
35 #endif /*COM_NO_WINDOWS_H*/
36
37 #ifndef __gchost_h__
38 #define __gchost_h__
39
40 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
41 #pragma once
42 #endif
43
44 /* Forward Declarations */ 
45
46 #ifndef __IGCHost_FWD_DEFINED__
47 #define __IGCHost_FWD_DEFINED__
48 typedef interface IGCHost IGCHost;
49 #endif     /* __IGCHost_FWD_DEFINED__ */
50
51
52 /* header files for imported files */
53 #include "unknwn.h"
54
55 #ifdef __cplusplus
56 extern "C"{
57 #endif 
58
59 void * __RPC_USER MIDL_user_allocate(size_t);
60 void __RPC_USER MIDL_user_free( void * ); 
61
62 /* interface __MIDL_itf_gchost_0000 */
63 /* [local] */ 
64
65 typedef /* [public] */ 
66 enum __MIDL___MIDL_itf_gchost_0000_0001
67       {    COR_GC_COUNTS    = 0x1,
68     COR_GC_MEMORYUSAGE    = 0x2
69       }     COR_GC_STAT_TYPES;
70
71 typedef /* [public] */ 
72 enum __MIDL___MIDL_itf_gchost_0000_0002
73       {    COR_GC_THREAD_HAS_PROMOTED_BYTES    = 0x1
74       }     COR_GC_THREAD_STATS_TYPES;
75
76 typedef struct _COR_GC_STATS
77       {
78       ULONG Flags;
79       SIZE_T ExplicitGCCount;
80       SIZE_T GenCollectionsTaken[ 3 ];
81       SIZE_T CommittedKBytes;
82       SIZE_T ReservedKBytes;
83       SIZE_T Gen0HeapSizeKBytes;
84       SIZE_T Gen1HeapSizeKBytes;
85       SIZE_T Gen2HeapSizeKBytes;
86       SIZE_T LargeObjectHeapSizeKBytes;
87       SIZE_T KBytesPromotedFromGen0;
88       SIZE_T KBytesPromotedFromGen1;
89       }     COR_GC_STATS;
90
91 typedef struct _COR_GC_THREAD_STATS
92       {
93       ULONGLONG PerThreadAllocation;
94       ULONG Flags;
95       }     COR_GC_THREAD_STATS;
96
97
98
99 extern RPC_IF_HANDLE __MIDL_itf_gchost_0000_v0_0_c_ifspec;
100 extern RPC_IF_HANDLE __MIDL_itf_gchost_0000_v0_0_s_ifspec;
101
102 #ifndef __IGCHost_INTERFACE_DEFINED__
103 #define __IGCHost_INTERFACE_DEFINED__
104
105 /* interface IGCHost */
106 /* [local][unique][uuid][object] */ 
107
108
109 EXTERN_C const IID IID_IGCHost;
110
111 #if defined(__cplusplus) && !defined(CINTERFACE)
112       
113       MIDL_INTERFACE("FAC34F6E-0DCD-47b5-8021-531BC5ECCA63")
114       IGCHost : public IUnknown
115       {
116       public:
117              virtual HRESULT STDMETHODCALLTYPE SetGCStartupLimits( 
118                     /* [in] */ DWORD SegmentSize,
119                     /* [in] */ DWORD MaxGen0Size) = 0;
120              
121              virtual HRESULT STDMETHODCALLTYPE Collect( 
122                     /* [in] */ LONG Generation) = 0;
123              
124              virtual HRESULT STDMETHODCALLTYPE GetStats( 
125                     /* [out][in] */ COR_GC_STATS *pStats) = 0;
126              
127              virtual HRESULT STDMETHODCALLTYPE GetThreadStats( 
128                     /* [in] */ DWORD *pFiberCookie,
129                     /* [out][in] */ COR_GC_THREAD_STATS *pStats) = 0;
130              
131              virtual HRESULT STDMETHODCALLTYPE SetVirtualMemLimit( 
132                     /* [in] */ SIZE_T sztMaxVirtualMemMB) = 0;
133              
134       };
135       
136 #else     /* C style interface */
137
138       typedef struct IGCHostVtbl
139       {
140              BEGIN_INTERFACE
141              
142              HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
143                     IGCHost * This,
144                     /* [in] */ REFIID riid,
145                     /* [iid_is][out] */ void **ppvObject);
146              
147              ULONG ( STDMETHODCALLTYPE *AddRef )( 
148                     IGCHost * This);
149              
150              ULONG ( STDMETHODCALLTYPE *Release )( 
151                     IGCHost * This);
152              
153              HRESULT ( STDMETHODCALLTYPE *SetGCStartupLimits )( 
154                     IGCHost * This,
Lines 155 ... 164 are skipped.
165              
166              HRESULT ( STDMETHODCALLTYPE *GetThreadStats )( 
167                     IGCHost * This,
168                     /* [in] */ DWORD *pFiberCookie,
169                     /* [out][in] */ COR_GC_THREAD_STATS *pStats);
170              
171              HRESULT ( STDMETHODCALLTYPE *SetVirtualMemLimit )( 
172                     IGCHost * This,
173                     /* [in] */ SIZE_T sztMaxVirtualMemMB);
174              
175              END_INTERFACE
176       } IGCHostVtbl;
177
178       interface IGCHost
179       {
180              CONST_VTBL struct IGCHostVtbl *lpVtbl;
181       };
182
183       
184
185 #ifdef COBJMACROS
186
187
188 #define IGCHost_QueryInterface(This,riid,ppvObject)    \
189       (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
190
191 #define IGCHost_AddRef(This)    \
192       (This)->lpVtbl -> AddRef(This)
193
194 #define IGCHost_Release(This)    \
195       (This)->lpVtbl -> Release(This)
196
197
198 #define IGCHost_SetGCStartupLimits(This,SegmentSize,MaxGen0Size)    \
199       (This)->lpVtbl -> SetGCStartupLimits(This,SegmentSize,MaxGen0Size)
200
201 #define IGCHost_Collect(This,Generation)    \
202       (This)->lpVtbl -> Collect(This,Generation)
203
204 #define IGCHost_GetStats(This,pStats)    \
205       (This)->lpVtbl -> GetStats(This,pStats)
206
207 #define IGCHost_GetThreadStats(This,pFiberCookie,pStats)    \
208       (This)->lpVtbl -> GetThreadStats(This,pFiberCookie,pStats)
209
210 #define IGCHost_SetVirtualMemLimit(This,sztMaxVirtualMemMB)    \
211       (This)->lpVtbl -> SetVirtualMemLimit(This,sztMaxVirtualMemMB)
212
213 #endif /* COBJMACROS */
214
215
216 #endif     /* C style interface */
217
218
219
220 HRESULT STDMETHODCALLTYPE IGCHost_SetGCStartupLimits_Proxy( 
221       IGCHost * This,
222       /* [in] */ DWORD SegmentSize,
223       /* [in] */ DWORD MaxGen0Size);
224
225
226 void __RPC_STUB IGCHost_SetGCStartupLimits_Stub(
227       IRpcStubBuffer *This,
228       IRpcChannelBuffer *_pRpcChannelBuffer,
229       PRPC_MESSAGE _pRpcMessage,
230       DWORD *_pdwStubPhase);
231
232
233 HRESULT STDMETHODCALLTYPE IGCHost_Collect_Proxy( 
234       IGCHost * This,
235       /* [in] */ LONG Generation);
236
237
238 void __RPC_STUB IGCHost_Collect_Stub(
239       IRpcStubBuffer *This,
240       IRpcChannelBuffer *_pRpcChannelBuffer,
241       PRPC_MESSAGE _pRpcMessage,
242       DWORD *_pdwStubPhase);
243
244
245 HRESULT STDMETHODCALLTYPE IGCHost_GetStats_Proxy( 
246       IGCHost * This,
247       /* [out][in] */ COR_GC_STATS *pStats);
248
249
250 void __RPC_STUB IGCHost_GetStats_Stub(
251       IRpcStubBuffer *This,
252       IRpcChannelBuffer *_pRpcChannelBuffer,
253       PRPC_MESSAGE _pRpcMessage,
254       DWORD *_pdwStubPhase);
255
256
257 HRESULT STDMETHODCALLTYPE IGCHost_GetThreadStats_Proxy( 
258       IGCHost * This,
259       /* [in] */ DWORD *pFiberCookie,
260       /* [out][in] */ COR_GC_THREAD_STATS *pStats);
261
262
263 void __RPC_STUB IGCHost_GetThreadStats_Stub(
264       IRpcStubBuffer *This,
265       IRpcChannelBuffer *_pRpcChannelBuffer,
266       PRPC_MESSAGE _pRpcMessage,
267       DWORD *_pdwStubPhase);
268
269
270 HRESULT STDMETHODCALLTYPE IGCHost_SetVirtualMemLimit_Proxy( 
271       IGCHost * This,
272       /* [in] */ SIZE_T sztMaxVirtualMemMB);
273
274
275 void __RPC_STUB IGCHost_SetVirtualMemLimit_Stub(
276       IRpcStubBuffer *This,
277       IRpcChannelBuffer *_pRpcChannelBuffer,
278       PRPC_MESSAGE _pRpcMessage,
279       DWORD *_pdwStubPhase);
280
281
282
283 #endif     /* __IGCHost_INTERFACE_DEFINED__ */
284
285
286 /* Additional Prototypes for ALL interfaces */
287
288 /* end of Additional Prototypes */
289
290 #ifdef __cplusplus
291 }
292 #endif
293
294 #endif
295
296
297