git add -f bin/default/librpc/gen_ndr/*.[ch] bin/default/source*/librpc/gen_ndr/...
[metze/samba/wip.git] / bin.gen_ndr / default / librpc / gen_ndr / com_wmi.h
1 #include "librpc/gen_ndr/orpc.h"
2 #include "bin/default/librpc/gen_ndr/ndr_wmi.h"
3
4 struct IWbemClassObject;
5 struct IWbemServices;
6 struct IEnumWbemClassObject;
7 struct IWbemContext;
8 struct IWbemLevel1Login;
9 struct IWbemWCOSmartEnum;
10 struct IWbemFetchSmartEnum;
11 struct IWbemCallResult;
12 struct IWbemObjectSink;
13 #define CLSID_WBEMLEVEL1LOGIN "8BC3F05E-D86B-11d0-A075-00C04FB68820"
14
15
16 #ifndef _IWbemClassObject_
17 #define _IWbemClassObject_
18
19
20 /* IWbemClassObject */
21 #define COM_IWBEMCLASSOBJECT_UUID "dc12a681-737f-11cf-884d-00aa004b2e24"
22
23 struct IWbemClassObject_vtable;
24
25 struct IWbemClassObject {
26         struct OBJREF obj;
27         struct com_context *ctx;
28         struct IWbemClassObject_vtable *vtable;
29         void *object_data;
30 };
31
32 #define IWBEMCLASSOBJECT_METHODS \
33         IUNKNOWN_METHODS\
34         WERROR (*Delete) (struct IWbemClassObject *d, TALLOC_CTX *mem_ctx, uint16_t *wszName);\
35
36 struct IWbemClassObject_vtable {
37         struct GUID iid;
38         IWBEMCLASSOBJECT_METHODS
39 };
40
41 #define IWbemClassObject_Delete(interface, mem_ctx, wszName) ((interface)->vtable->Delete(interface, mem_ctx, wszName))
42 #endif
43 #define CLSID_WBEMCLASSOBJECT 9A653086-174F-11d2-B5F9-00104B703EFD
44
45
46 #ifndef _IWbemServices_
47 #define _IWbemServices_
48
49
50 /* IWbemServices */
51 #define COM_IWBEMSERVICES_UUID "9556dc99-828c-11cf-a37e-00aa003240c7"
52
53 struct IWbemServices_vtable;
54
55 struct IWbemServices {
56         struct OBJREF obj;
57         struct com_context *ctx;
58         struct IWbemServices_vtable *vtable;
59         void *object_data;
60 };
61
62 #define IWBEMSERVICES_METHODS \
63         IUNKNOWN_METHODS\
64         WERROR (*OpenNamespace) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strNamespace, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemServices **ppWorkingNamespace, struct IWbemCallResult **ppResult);\
65         WERROR (*CancelAsyncCall) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct IWbemObjectSink *pSink);\
66         WERROR (*QueryObjectSink) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, int32_t lFlags, struct IWbemObjectSink **ppResponseHandler);\
67         WERROR (*GetObject) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strObjectPath, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemClassObject **ppObject, struct IWbemCallResult **ppCallResult);\
68         WERROR (*GetObjectAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strObjectPath, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemObjectSink *pResponseHandler);\
69         WERROR (*PutClass) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct IWbemClassObject *pObject, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemCallResult **ppCallResult);\
70         WERROR (*PutClassAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct IWbemClassObject *pObject, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemObjectSink *pResponseHandler);\
71         WERROR (*DeleteClass) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strClass, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemCallResult **ppCallResult);\
72         WERROR (*DeleteClassAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strClass, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemObjectSink *pResponseHandler);\
73         WERROR (*CreateClassEnum) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strSuperclass, int32_t lFlags, struct IWbemContext *pCtx, struct IEnumWbemClassObject **ppEnum);\
74         WERROR (*CreateClassEnumAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strSuperclass, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemObjectSink *pResponseHandler);\
75         WERROR (*PutInstance) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct IWbemClassObject *pInst, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemCallResult **ppCallResult);\
76         WERROR (*PutInstanceAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct IWbemClassObject *pInst, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemObjectSink *pResponseHandler);\
77         WERROR (*DeleteInstance) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strObjectPath, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemCallResult **ppCallResult);\
78         WERROR (*DeleteInstanceAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strObjectPath, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemObjectSink *pResponseHandler);\
79         WERROR (*CreateInstanceEnum) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strFilter, int32_t lFlags, struct IWbemContext *pCtx, struct IEnumWbemClassObject **ppEnum);\
80         WERROR (*CreateInstanceEnumAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strSuperClass, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemObjectSink *pResponseHandler);\
81         WERROR (*ExecQuery) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strQueryLanguage, struct BSTR strQuery, int32_t lFlags, struct IWbemContext *pCtx, struct IEnumWbemClassObject **ppEnum);\
82         WERROR (*ExecQueryAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strQueryLanguage, struct BSTR strQuery, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemObjectSink *pResponseHandler);\
83         WERROR (*ExecNotificationQuery) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strQueryLanguage, struct BSTR strQuery, int32_t lFlags, struct IWbemContext *pCtx, struct IEnumWbemClassObject **ppEnum);\
84         WERROR (*ExecNotificationQueryAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strQueryLanguage, struct BSTR strQuery, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemObjectSink *pResponseHandler);\
85         WERROR (*ExecMethod) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strObjectPath, struct BSTR strMethodName, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemClassObject *pInParams, struct IWbemClassObject **ppOutParams, struct IWbemCallResult **ppCallResult);\
86         WERROR (*ExecMethodAsync) (struct IWbemServices *d, TALLOC_CTX *mem_ctx, struct BSTR strObjectPath, struct BSTR strMethodName, uint32_t lFlags, struct IWbemContext *pCtx, struct IWbemClassObject *pInParams, struct IWbemObjectSink *pResponseHandler);\
87
88 struct IWbemServices_vtable {
89         struct GUID iid;
90         IWBEMSERVICES_METHODS
91 };
92
93 #define IWbemServices_OpenNamespace(interface, mem_ctx, strNamespace, lFlags, pCtx, ppWorkingNamespace, ppResult) ((interface)->vtable->OpenNamespace(interface, mem_ctx, strNamespace, lFlags, pCtx, ppWorkingNamespace, ppResult))
94 #define IWbemServices_CancelAsyncCall(interface, mem_ctx, pSink) ((interface)->vtable->CancelAsyncCall(interface, mem_ctx, pSink))
95 #define IWbemServices_QueryObjectSink(interface, mem_ctx, lFlags, ppResponseHandler) ((interface)->vtable->QueryObjectSink(interface, mem_ctx, lFlags, ppResponseHandler))
96 #define IWbemServices_GetObject(interface, mem_ctx, strObjectPath, lFlags, pCtx, ppObject, ppCallResult) ((interface)->vtable->GetObject(interface, mem_ctx, strObjectPath, lFlags, pCtx, ppObject, ppCallResult))
97 #define IWbemServices_GetObjectAsync(interface, mem_ctx, strObjectPath, lFlags, pCtx, pResponseHandler) ((interface)->vtable->GetObjectAsync(interface, mem_ctx, strObjectPath, lFlags, pCtx, pResponseHandler))
98 #define IWbemServices_PutClass(interface, mem_ctx, pObject, lFlags, pCtx, ppCallResult) ((interface)->vtable->PutClass(interface, mem_ctx, pObject, lFlags, pCtx, ppCallResult))
99 #define IWbemServices_PutClassAsync(interface, mem_ctx, pObject, lFlags, pCtx, pResponseHandler) ((interface)->vtable->PutClassAsync(interface, mem_ctx, pObject, lFlags, pCtx, pResponseHandler))
100 #define IWbemServices_DeleteClass(interface, mem_ctx, strClass, lFlags, pCtx, ppCallResult) ((interface)->vtable->DeleteClass(interface, mem_ctx, strClass, lFlags, pCtx, ppCallResult))
101 #define IWbemServices_DeleteClassAsync(interface, mem_ctx, strClass, lFlags, pCtx, pResponseHandler) ((interface)->vtable->DeleteClassAsync(interface, mem_ctx, strClass, lFlags, pCtx, pResponseHandler))
102 #define IWbemServices_CreateClassEnum(interface, mem_ctx, strSuperclass, lFlags, pCtx, ppEnum) ((interface)->vtable->CreateClassEnum(interface, mem_ctx, strSuperclass, lFlags, pCtx, ppEnum))
103 #define IWbemServices_CreateClassEnumAsync(interface, mem_ctx, strSuperclass, lFlags, pCtx, pResponseHandler) ((interface)->vtable->CreateClassEnumAsync(interface, mem_ctx, strSuperclass, lFlags, pCtx, pResponseHandler))
104 #define IWbemServices_PutInstance(interface, mem_ctx, pInst, lFlags, pCtx, ppCallResult) ((interface)->vtable->PutInstance(interface, mem_ctx, pInst, lFlags, pCtx, ppCallResult))
105 #define IWbemServices_PutInstanceAsync(interface, mem_ctx, pInst, lFlags, pCtx, pResponseHandler) ((interface)->vtable->PutInstanceAsync(interface, mem_ctx, pInst, lFlags, pCtx, pResponseHandler))
106 #define IWbemServices_DeleteInstance(interface, mem_ctx, strObjectPath, lFlags, pCtx, ppCallResult) ((interface)->vtable->DeleteInstance(interface, mem_ctx, strObjectPath, lFlags, pCtx, ppCallResult))
107 #define IWbemServices_DeleteInstanceAsync(interface, mem_ctx, strObjectPath, lFlags, pCtx, pResponseHandler) ((interface)->vtable->DeleteInstanceAsync(interface, mem_ctx, strObjectPath, lFlags, pCtx, pResponseHandler))
108 #define IWbemServices_CreateInstanceEnum(interface, mem_ctx, strFilter, lFlags, pCtx, ppEnum) ((interface)->vtable->CreateInstanceEnum(interface, mem_ctx, strFilter, lFlags, pCtx, ppEnum))
109 #define IWbemServices_CreateInstanceEnumAsync(interface, mem_ctx, strSuperClass, lFlags, pCtx, pResponseHandler) ((interface)->vtable->CreateInstanceEnumAsync(interface, mem_ctx, strSuperClass, lFlags, pCtx, pResponseHandler))
110 #define IWbemServices_ExecQuery(interface, mem_ctx, strQueryLanguage, strQuery, lFlags, pCtx, ppEnum) ((interface)->vtable->ExecQuery(interface, mem_ctx, strQueryLanguage, strQuery, lFlags, pCtx, ppEnum))
111 #define IWbemServices_ExecQueryAsync(interface, mem_ctx, strQueryLanguage, strQuery, lFlags, pCtx, pResponseHandler) ((interface)->vtable->ExecQueryAsync(interface, mem_ctx, strQueryLanguage, strQuery, lFlags, pCtx, pResponseHandler))
112 #define IWbemServices_ExecNotificationQuery(interface, mem_ctx, strQueryLanguage, strQuery, lFlags, pCtx, ppEnum) ((interface)->vtable->ExecNotificationQuery(interface, mem_ctx, strQueryLanguage, strQuery, lFlags, pCtx, ppEnum))
113 #define IWbemServices_ExecNotificationQueryAsync(interface, mem_ctx, strQueryLanguage, strQuery, lFlags, pCtx, pResponseHandler) ((interface)->vtable->ExecNotificationQueryAsync(interface, mem_ctx, strQueryLanguage, strQuery, lFlags, pCtx, pResponseHandler))
114 #define IWbemServices_ExecMethod(interface, mem_ctx, strObjectPath, strMethodName, lFlags, pCtx, pInParams, ppOutParams, ppCallResult) ((interface)->vtable->ExecMethod(interface, mem_ctx, strObjectPath, strMethodName, lFlags, pCtx, pInParams, ppOutParams, ppCallResult))
115 #define IWbemServices_ExecMethodAsync(interface, mem_ctx, strObjectPath, strMethodName, lFlags, pCtx, pInParams, pResponseHandler) ((interface)->vtable->ExecMethodAsync(interface, mem_ctx, strObjectPath, strMethodName, lFlags, pCtx, pInParams, pResponseHandler))
116 #endif
117
118 #ifndef _IEnumWbemClassObject_
119 #define _IEnumWbemClassObject_
120
121
122 /* IEnumWbemClassObject */
123 #define COM_IENUMWBEMCLASSOBJECT_UUID 027947e1-d731-11ce-a357-000000000001
124
125 struct IEnumWbemClassObject_vtable;
126
127 struct IEnumWbemClassObject {
128         struct OBJREF obj;
129         struct com_context *ctx;
130         struct IEnumWbemClassObject_vtable *vtable;
131         void *object_data;
132 };
133
134 #define IENUMWBEMCLASSOBJECT_METHODS \
135         IUNKNOWN_METHODS\
136         WERROR (*Reset) (struct IEnumWbemClassObject *d, TALLOC_CTX *mem_ctx);\
137         WERROR (*IEnumWbemClassObject_Next) (struct IEnumWbemClassObject *d, TALLOC_CTX *mem_ctx, int32_t lTimeout, uint32_t uCount, struct IWbemClassObject **apObjects, uint32_t *puReturned);\
138         WERROR (*NextAsync) (struct IEnumWbemClassObject *d, TALLOC_CTX *mem_ctx, uint32_t uCount, struct IWbemObjectSink *pSink);\
139         WERROR (*IEnumWbemClassObject_Clone) (struct IEnumWbemClassObject *d, TALLOC_CTX *mem_ctx, struct IEnumWbemClassObject **ppEnum);\
140         WERROR (*Skip) (struct IEnumWbemClassObject *d, TALLOC_CTX *mem_ctx, int32_t lTimeout, uint32_t nCount);\
141
142 struct IEnumWbemClassObject_vtable {
143         struct GUID iid;
144         IENUMWBEMCLASSOBJECT_METHODS
145 };
146
147 #define IEnumWbemClassObject_Reset(interface, mem_ctx) ((interface)->vtable->Reset(interface, mem_ctx))
148 #define IEnumWbemClassObject_IEnumWbemClassObject_Next(interface, mem_ctx, lTimeout, uCount, apObjects, puReturned) ((interface)->vtable->IEnumWbemClassObject_Next(interface, mem_ctx, lTimeout, uCount, apObjects, puReturned))
149 #define IEnumWbemClassObject_NextAsync(interface, mem_ctx, uCount, pSink) ((interface)->vtable->NextAsync(interface, mem_ctx, uCount, pSink))
150 #define IEnumWbemClassObject_IEnumWbemClassObject_Clone(interface, mem_ctx, ppEnum) ((interface)->vtable->IEnumWbemClassObject_Clone(interface, mem_ctx, ppEnum))
151 #define IEnumWbemClassObject_Skip(interface, mem_ctx, lTimeout, nCount) ((interface)->vtable->Skip(interface, mem_ctx, lTimeout, nCount))
152 #endif
153
154 #ifndef _IWbemContext_
155 #define _IWbemContext_
156
157
158 /* IWbemContext */
159 #define COM_IWBEMCONTEXT_UUID "44aca674-e8fc-11d0-a07c-00c04fb68820"
160
161 struct IWbemContext_vtable;
162
163 struct IWbemContext {
164         struct OBJREF obj;
165         struct com_context *ctx;
166         struct IWbemContext_vtable *vtable;
167         void *object_data;
168 };
169
170 #define IWBEMCONTEXT_METHODS \
171         IUNKNOWN_METHODS\
172         WERROR (*Clone) (struct IWbemContext *d, TALLOC_CTX *mem_ctx, struct IWbemContext **ppNewCopy);\
173         WERROR (*GetNames) (struct IWbemContext *d, TALLOC_CTX *mem_ctx);\
174         WERROR (*BeginEnumeration) (struct IWbemContext *d, TALLOC_CTX *mem_ctx, int32_t lFlags);\
175         WERROR (*Next) (struct IWbemContext *d, TALLOC_CTX *mem_ctx);\
176         WERROR (*EndEnumeration) (struct IWbemContext *d, TALLOC_CTX *mem_ctx);\
177         WERROR (*SetValue) (struct IWbemContext *d, TALLOC_CTX *mem_ctx);\
178         WERROR (*GetValue) (struct IWbemContext *d, TALLOC_CTX *mem_ctx);\
179         WERROR (*DeleteValue) (struct IWbemContext *d, TALLOC_CTX *mem_ctx);\
180         WERROR (*DeleteAll) (struct IWbemContext *d, TALLOC_CTX *mem_ctx);\
181
182 struct IWbemContext_vtable {
183         struct GUID iid;
184         IWBEMCONTEXT_METHODS
185 };
186
187 #define IWbemContext_Clone(interface, mem_ctx, ppNewCopy) ((interface)->vtable->Clone(interface, mem_ctx, ppNewCopy))
188 #define IWbemContext_GetNames(interface, mem_ctx) ((interface)->vtable->GetNames(interface, mem_ctx))
189 #define IWbemContext_BeginEnumeration(interface, mem_ctx, lFlags) ((interface)->vtable->BeginEnumeration(interface, mem_ctx, lFlags))
190 #define IWbemContext_Next(interface, mem_ctx) ((interface)->vtable->Next(interface, mem_ctx))
191 #define IWbemContext_EndEnumeration(interface, mem_ctx) ((interface)->vtable->EndEnumeration(interface, mem_ctx))
192 #define IWbemContext_SetValue(interface, mem_ctx) ((interface)->vtable->SetValue(interface, mem_ctx))
193 #define IWbemContext_GetValue(interface, mem_ctx) ((interface)->vtable->GetValue(interface, mem_ctx))
194 #define IWbemContext_DeleteValue(interface, mem_ctx) ((interface)->vtable->DeleteValue(interface, mem_ctx))
195 #define IWbemContext_DeleteAll(interface, mem_ctx) ((interface)->vtable->DeleteAll(interface, mem_ctx))
196 #endif
197
198 #ifndef _IWbemLevel1Login_
199 #define _IWbemLevel1Login_
200
201
202 /* IWbemLevel1Login */
203 #define COM_IWBEMLEVEL1LOGIN_UUID "F309AD18-D86A-11d0-A075-00C04FB68820"
204
205 struct IWbemLevel1Login_vtable;
206
207 struct IWbemLevel1Login {
208         struct OBJREF obj;
209         struct com_context *ctx;
210         struct IWbemLevel1Login_vtable *vtable;
211         void *object_data;
212 };
213
214 #define IWBEMLEVEL1LOGIN_METHODS \
215         IUNKNOWN_METHODS\
216         WERROR (*EstablishPosition) (struct IWbemLevel1Login *d, TALLOC_CTX *mem_ctx, uint16_t *wszLocaleList, uint32_t dwNumLocales, uint32_t *reserved);\
217         WERROR (*RequestChallenge) (struct IWbemLevel1Login *d, TALLOC_CTX *mem_ctx, uint16_t *wszNetworkResource, uint16_t *wszUser, uint8_t *Nonce);\
218         WERROR (*WBEMLogin) (struct IWbemLevel1Login *d, TALLOC_CTX *mem_ctx, uint16_t *wszPreferredLocale, uint8_t *AccessToken, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemServices **ppNamespace);\
219         WERROR (*NTLMLogin) (struct IWbemLevel1Login *d, TALLOC_CTX *mem_ctx, uint16_t *wszNetworkResource, uint16_t *wszPreferredLocale, int32_t lFlags, struct IWbemContext *pCtx, struct IWbemServices **ppNamespace);\
220
221 struct IWbemLevel1Login_vtable {
222         struct GUID iid;
223         IWBEMLEVEL1LOGIN_METHODS
224 };
225
226 #define IWbemLevel1Login_EstablishPosition(interface, mem_ctx, wszLocaleList, dwNumLocales, reserved) ((interface)->vtable->EstablishPosition(interface, mem_ctx, wszLocaleList, dwNumLocales, reserved))
227 #define IWbemLevel1Login_RequestChallenge(interface, mem_ctx, wszNetworkResource, wszUser, Nonce) ((interface)->vtable->RequestChallenge(interface, mem_ctx, wszNetworkResource, wszUser, Nonce))
228 #define IWbemLevel1Login_WBEMLogin(interface, mem_ctx, wszPreferredLocale, AccessToken, lFlags, pCtx, ppNamespace) ((interface)->vtable->WBEMLogin(interface, mem_ctx, wszPreferredLocale, AccessToken, lFlags, pCtx, ppNamespace))
229 #define IWbemLevel1Login_NTLMLogin(interface, mem_ctx, wszNetworkResource, wszPreferredLocale, lFlags, pCtx, ppNamespace) ((interface)->vtable->NTLMLogin(interface, mem_ctx, wszNetworkResource, wszPreferredLocale, lFlags, pCtx, ppNamespace))
230 #endif
231
232 #ifndef _IWbemWCOSmartEnum_
233 #define _IWbemWCOSmartEnum_
234
235
236 /* IWbemWCOSmartEnum */
237 #define COM_IWBEMWCOSMARTENUM_UUID "423ec01e-2e35-11d2-b604-00104b703efd"
238
239 struct IWbemWCOSmartEnum_vtable;
240
241 struct IWbemWCOSmartEnum {
242         struct OBJREF obj;
243         struct com_context *ctx;
244         struct IWbemWCOSmartEnum_vtable *vtable;
245         void *object_data;
246 };
247
248 #define IWBEMWCOSMARTENUM_METHODS \
249         IUNKNOWN_METHODS\
250         WERROR (*IWbemWCOSmartEnum_Next) (struct IWbemWCOSmartEnum *d, TALLOC_CTX *mem_ctx, struct GUID *gEWCO, uint32_t lTimeOut, uint32_t uCount, uint32_t unknown, struct GUID *gWCO, uint32_t *puReturned, uint32_t *pSize, uint8_t **pData);\
251
252 struct IWbemWCOSmartEnum_vtable {
253         struct GUID iid;
254         IWBEMWCOSMARTENUM_METHODS
255 };
256
257 #define IWbemWCOSmartEnum_IWbemWCOSmartEnum_Next(interface, mem_ctx, gEWCO, lTimeOut, uCount, unknown, gWCO, puReturned, pSize, pData) ((interface)->vtable->IWbemWCOSmartEnum_Next(interface, mem_ctx, gEWCO, lTimeOut, uCount, unknown, gWCO, puReturned, pSize, pData))
258 #endif
259
260 #ifndef _IWbemFetchSmartEnum_
261 #define _IWbemFetchSmartEnum_
262
263
264 /* IWbemFetchSmartEnum */
265 #define COM_IWBEMFETCHSMARTENUM_UUID "1c1c45ee-4395-11d2-b60b-00104b703efd"
266
267 struct IWbemFetchSmartEnum_vtable;
268
269 struct IWbemFetchSmartEnum {
270         struct OBJREF obj;
271         struct com_context *ctx;
272         struct IWbemFetchSmartEnum_vtable *vtable;
273         void *object_data;
274 };
275
276 #define IWBEMFETCHSMARTENUM_METHODS \
277         IUNKNOWN_METHODS\
278         WERROR (*Fetch) (struct IWbemFetchSmartEnum *d, TALLOC_CTX *mem_ctx, struct IWbemWCOSmartEnum **ppEnum);\
279         WERROR (*Test) (struct IWbemFetchSmartEnum *d, TALLOC_CTX *mem_ctx, struct IWbemClassObject **ppEnum);\
280
281 struct IWbemFetchSmartEnum_vtable {
282         struct GUID iid;
283         IWBEMFETCHSMARTENUM_METHODS
284 };
285
286 #define IWbemFetchSmartEnum_Fetch(interface, mem_ctx, ppEnum) ((interface)->vtable->Fetch(interface, mem_ctx, ppEnum))
287 #define IWbemFetchSmartEnum_Test(interface, mem_ctx, ppEnum) ((interface)->vtable->Test(interface, mem_ctx, ppEnum))
288 #endif
289
290 #ifndef _IWbemCallResult_
291 #define _IWbemCallResult_
292
293
294 /* IWbemCallResult */
295 #define COM_IWBEMCALLRESULT_UUID 44aca675-e8fc-11d0-a07c-00c04fb68820
296
297 struct IWbemCallResult_vtable;
298
299 struct IWbemCallResult {
300         struct OBJREF obj;
301         struct com_context *ctx;
302         struct IWbemCallResult_vtable *vtable;
303         void *object_data;
304 };
305
306 #define IWBEMCALLRESULT_METHODS \
307         IUNKNOWN_METHODS\
308         WERROR (*GetResultObject) (struct IWbemCallResult *d, TALLOC_CTX *mem_ctx, int32_t lTimeout, struct IWbemClassObject **ppResultObject);\
309         WERROR (*GetResultString) (struct IWbemCallResult *d, TALLOC_CTX *mem_ctx, int32_t lTimeout, struct BSTR *pstrResultString);\
310         WERROR (*GetResultServices) (struct IWbemCallResult *d, TALLOC_CTX *mem_ctx, int32_t lTimeout, struct IWbemServices **ppServices);\
311         WERROR (*GetCallStatus) (struct IWbemCallResult *d, TALLOC_CTX *mem_ctx, int32_t lTimeout, int32_t *plStatus);\
312
313 struct IWbemCallResult_vtable {
314         struct GUID iid;
315         IWBEMCALLRESULT_METHODS
316 };
317
318 #define IWbemCallResult_GetResultObject(interface, mem_ctx, lTimeout, ppResultObject) ((interface)->vtable->GetResultObject(interface, mem_ctx, lTimeout, ppResultObject))
319 #define IWbemCallResult_GetResultString(interface, mem_ctx, lTimeout, pstrResultString) ((interface)->vtable->GetResultString(interface, mem_ctx, lTimeout, pstrResultString))
320 #define IWbemCallResult_GetResultServices(interface, mem_ctx, lTimeout, ppServices) ((interface)->vtable->GetResultServices(interface, mem_ctx, lTimeout, ppServices))
321 #define IWbemCallResult_GetCallStatus(interface, mem_ctx, lTimeout, plStatus) ((interface)->vtable->GetCallStatus(interface, mem_ctx, lTimeout, plStatus))
322 #endif
323
324 #ifndef _IWbemObjectSink_
325 #define _IWbemObjectSink_
326
327
328 /* IWbemObjectSink */
329 #define COM_IWBEMOBJECTSINK_UUID 7c857801-7381-11cf-884d-00aa004b2e24
330
331 struct IWbemObjectSink_vtable;
332
333 struct IWbemObjectSink {
334         struct OBJREF obj;
335         struct com_context *ctx;
336         struct IWbemObjectSink_vtable *vtable;
337         void *object_data;
338 };
339
340 #define IWBEMOBJECTSINK_METHODS \
341         IUNKNOWN_METHODS\
342         WERROR (*SetStatus) (struct IWbemObjectSink *d, TALLOC_CTX *mem_ctx, int32_t lFlags, WERROR hResult, struct BSTR strParam, struct IWbemClassObject *pObjParam);\
343         WERROR (*Indicate) (struct IWbemObjectSink *d, TALLOC_CTX *mem_ctx, int32_t lObjectCount, struct IWbemClassObject **apObjArray);\
344
345 struct IWbemObjectSink_vtable {
346         struct GUID iid;
347         IWBEMOBJECTSINK_METHODS
348 };
349
350 #define IWbemObjectSink_SetStatus(interface, mem_ctx, lFlags, hResult, strParam, pObjParam) ((interface)->vtable->SetStatus(interface, mem_ctx, lFlags, hResult, strParam, pObjParam))
351 #define IWbemObjectSink_Indicate(interface, mem_ctx, lObjectCount, apObjArray) ((interface)->vtable->Indicate(interface, mem_ctx, lObjectCount, apObjArray))
352 #endif