1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
2 #[link(name = "windows")]
3 extern "system" {
MI_Application_InitializeV1(flags: u32, applicationid: *const u16, extendederror: *mut *mut MI_Instance, application: *mut MI_Application) -> MI_Result4     pub fn MI_Application_InitializeV1(flags: u32, applicationid: *const u16, extendederror: *mut *mut MI_Instance, application: *mut MI_Application) -> MI_Result;
5 }
6 pub type CIMTYPE_ENUMERATION = i32;
7 pub const CIM_ILLEGAL: CIMTYPE_ENUMERATION = 4095i32;
8 pub const CIM_EMPTY: CIMTYPE_ENUMERATION = 0i32;
9 pub const CIM_SINT8: CIMTYPE_ENUMERATION = 16i32;
10 pub const CIM_UINT8: CIMTYPE_ENUMERATION = 17i32;
11 pub const CIM_SINT16: CIMTYPE_ENUMERATION = 2i32;
12 pub const CIM_UINT16: CIMTYPE_ENUMERATION = 18i32;
13 pub const CIM_SINT32: CIMTYPE_ENUMERATION = 3i32;
14 pub const CIM_UINT32: CIMTYPE_ENUMERATION = 19i32;
15 pub const CIM_SINT64: CIMTYPE_ENUMERATION = 20i32;
16 pub const CIM_UINT64: CIMTYPE_ENUMERATION = 21i32;
17 pub const CIM_REAL32: CIMTYPE_ENUMERATION = 4i32;
18 pub const CIM_REAL64: CIMTYPE_ENUMERATION = 5i32;
19 pub const CIM_BOOLEAN: CIMTYPE_ENUMERATION = 11i32;
20 pub const CIM_STRING: CIMTYPE_ENUMERATION = 8i32;
21 pub const CIM_DATETIME: CIMTYPE_ENUMERATION = 101i32;
22 pub const CIM_REFERENCE: CIMTYPE_ENUMERATION = 102i32;
23 pub const CIM_CHAR16: CIMTYPE_ENUMERATION = 103i32;
24 pub const CIM_OBJECT: CIMTYPE_ENUMERATION = 13i32;
25 pub const CIM_FLAG_ARRAY: CIMTYPE_ENUMERATION = 8192i32;
26 pub type IEnumWbemClassObject = *mut ::core::ffi::c_void;
27 pub type IMofCompiler = *mut ::core::ffi::c_void;
28 pub type ISWbemDateTime = *mut ::core::ffi::c_void;
29 pub type ISWbemEventSource = *mut ::core::ffi::c_void;
30 pub type ISWbemLastError = *mut ::core::ffi::c_void;
31 pub type ISWbemLocator = *mut ::core::ffi::c_void;
32 pub type ISWbemMethod = *mut ::core::ffi::c_void;
33 pub type ISWbemMethodSet = *mut ::core::ffi::c_void;
34 pub type ISWbemNamedValue = *mut ::core::ffi::c_void;
35 pub type ISWbemNamedValueSet = *mut ::core::ffi::c_void;
36 pub type ISWbemObject = *mut ::core::ffi::c_void;
37 pub type ISWbemObjectEx = *mut ::core::ffi::c_void;
38 pub type ISWbemObjectPath = *mut ::core::ffi::c_void;
39 pub type ISWbemObjectSet = *mut ::core::ffi::c_void;
40 pub type ISWbemPrivilege = *mut ::core::ffi::c_void;
41 pub type ISWbemPrivilegeSet = *mut ::core::ffi::c_void;
42 pub type ISWbemProperty = *mut ::core::ffi::c_void;
43 pub type ISWbemPropertySet = *mut ::core::ffi::c_void;
44 pub type ISWbemQualifier = *mut ::core::ffi::c_void;
45 pub type ISWbemQualifierSet = *mut ::core::ffi::c_void;
46 pub type ISWbemRefreshableItem = *mut ::core::ffi::c_void;
47 pub type ISWbemRefresher = *mut ::core::ffi::c_void;
48 pub type ISWbemSecurity = *mut ::core::ffi::c_void;
49 pub type ISWbemServices = *mut ::core::ffi::c_void;
50 pub type ISWbemServicesEx = *mut ::core::ffi::c_void;
51 pub type ISWbemSink = *mut ::core::ffi::c_void;
52 pub type ISWbemSinkEvents = *mut ::core::ffi::c_void;
53 pub type IUnsecuredApartment = *mut ::core::ffi::c_void;
54 pub type IWMIExtension = *mut ::core::ffi::c_void;
55 pub type IWbemAddressResolution = *mut ::core::ffi::c_void;
56 pub type IWbemBackupRestore = *mut ::core::ffi::c_void;
57 pub type IWbemBackupRestoreEx = *mut ::core::ffi::c_void;
58 pub type IWbemCallResult = *mut ::core::ffi::c_void;
59 pub type IWbemClassObject = *mut ::core::ffi::c_void;
60 pub type IWbemClientConnectionTransport = *mut ::core::ffi::c_void;
61 pub type IWbemClientTransport = *mut ::core::ffi::c_void;
62 pub type IWbemConfigureRefresher = *mut ::core::ffi::c_void;
63 pub type IWbemConnectorLogin = *mut ::core::ffi::c_void;
64 pub type IWbemConstructClassObject = *mut ::core::ffi::c_void;
65 pub type IWbemContext = *mut ::core::ffi::c_void;
66 pub type IWbemDecoupledBasicEventProvider = *mut ::core::ffi::c_void;
67 pub type IWbemDecoupledRegistrar = *mut ::core::ffi::c_void;
68 pub type IWbemEventConsumerProvider = *mut ::core::ffi::c_void;
69 pub type IWbemEventProvider = *mut ::core::ffi::c_void;
70 pub type IWbemEventProviderQuerySink = *mut ::core::ffi::c_void;
71 pub type IWbemEventProviderSecurity = *mut ::core::ffi::c_void;
72 pub type IWbemEventSink = *mut ::core::ffi::c_void;
73 pub type IWbemHiPerfEnum = *mut ::core::ffi::c_void;
74 pub type IWbemHiPerfProvider = *mut ::core::ffi::c_void;
75 pub type IWbemLevel1Login = *mut ::core::ffi::c_void;
76 pub type IWbemLocator = *mut ::core::ffi::c_void;
77 pub type IWbemObjectAccess = *mut ::core::ffi::c_void;
78 pub type IWbemObjectSink = *mut ::core::ffi::c_void;
79 pub type IWbemObjectSinkEx = *mut ::core::ffi::c_void;
80 pub type IWbemObjectTextSrc = *mut ::core::ffi::c_void;
81 pub type IWbemPath = *mut ::core::ffi::c_void;
82 pub type IWbemPathKeyList = *mut ::core::ffi::c_void;
83 pub type IWbemPropertyProvider = *mut ::core::ffi::c_void;
84 pub type IWbemProviderIdentity = *mut ::core::ffi::c_void;
85 pub type IWbemProviderInit = *mut ::core::ffi::c_void;
86 pub type IWbemProviderInitSink = *mut ::core::ffi::c_void;
87 pub type IWbemQualifierSet = *mut ::core::ffi::c_void;
88 pub type IWbemQuery = *mut ::core::ffi::c_void;
89 pub type IWbemRefresher = *mut ::core::ffi::c_void;
90 pub type IWbemServices = *mut ::core::ffi::c_void;
91 pub type IWbemShutdown = *mut ::core::ffi::c_void;
92 pub type IWbemStatusCodeText = *mut ::core::ffi::c_void;
93 pub type IWbemTransport = *mut ::core::ffi::c_void;
94 pub type IWbemUnboundObjectSink = *mut ::core::ffi::c_void;
95 pub type IWbemUnsecuredApartment = *mut ::core::ffi::c_void;
96 #[repr(C)]
97 pub struct MI_Application {
98     pub reserved1: u64,
99     pub reserved2: isize,
100     pub ft: *mut MI_ApplicationFT,
101 }
102 impl ::core::marker::Copy for MI_Application {}
103 impl ::core::clone::Clone for MI_Application {
clone(&self) -> Self104     fn clone(&self) -> Self {
105         *self
106     }
107 }
108 #[repr(C)]
109 pub struct MI_ApplicationFT {
110     pub Close: isize,
111     pub NewSession: isize,
112     pub NewHostedProvider: isize,
113     pub NewInstance: isize,
114     pub NewDestinationOptions: isize,
115     pub NewOperationOptions: isize,
116     pub NewSubscriptionDeliveryOptions: isize,
117     pub NewSerializer: isize,
118     pub NewDeserializer: isize,
119     pub NewInstanceFromClass: isize,
120     pub NewClass: isize,
121 }
122 impl ::core::marker::Copy for MI_ApplicationFT {}
123 impl ::core::clone::Clone for MI_ApplicationFT {
clone(&self) -> Self124     fn clone(&self) -> Self {
125         *self
126     }
127 }
128 #[repr(C)]
129 pub struct MI_Array {
130     pub data: *mut ::core::ffi::c_void,
131     pub size: u32,
132 }
133 impl ::core::marker::Copy for MI_Array {}
134 impl ::core::clone::Clone for MI_Array {
clone(&self) -> Self135     fn clone(&self) -> Self {
136         *self
137     }
138 }
139 #[repr(C)]
140 pub struct MI_ArrayField {
141     pub value: MI_Array,
142     pub exists: u8,
143     pub flags: u8,
144 }
145 impl ::core::marker::Copy for MI_ArrayField {}
146 impl ::core::clone::Clone for MI_ArrayField {
clone(&self) -> Self147     fn clone(&self) -> Self {
148         *self
149     }
150 }
151 #[repr(C)]
152 pub struct MI_BooleanA {
153     pub data: *mut u8,
154     pub size: u32,
155 }
156 impl ::core::marker::Copy for MI_BooleanA {}
157 impl ::core::clone::Clone for MI_BooleanA {
clone(&self) -> Self158     fn clone(&self) -> Self {
159         *self
160     }
161 }
162 #[repr(C)]
163 pub struct MI_BooleanAField {
164     pub value: MI_BooleanA,
165     pub exists: u8,
166     pub flags: u8,
167 }
168 impl ::core::marker::Copy for MI_BooleanAField {}
169 impl ::core::clone::Clone for MI_BooleanAField {
clone(&self) -> Self170     fn clone(&self) -> Self {
171         *self
172     }
173 }
174 #[repr(C)]
175 pub struct MI_BooleanField {
176     pub value: u8,
177     pub exists: u8,
178     pub flags: u8,
179 }
180 impl ::core::marker::Copy for MI_BooleanField {}
181 impl ::core::clone::Clone for MI_BooleanField {
clone(&self) -> Self182     fn clone(&self) -> Self {
183         *self
184     }
185 }
186 pub const MI_CALL_VERSION: u32 = 1u32;
187 pub type MI_CallbackMode = i32;
188 pub const MI_CALLBACKMODE_REPORT: MI_CallbackMode = 0i32;
189 pub const MI_CALLBACKMODE_INQUIRE: MI_CallbackMode = 1i32;
190 pub const MI_CALLBACKMODE_IGNORE: MI_CallbackMode = 2i32;
191 pub type MI_CancelCallback = unsafe extern "system" fn(reason: MI_CancellationReason, callbackdata: *const ::core::ffi::c_void);
192 pub type MI_CancellationReason = i32;
193 pub const MI_REASON_NONE: MI_CancellationReason = 0i32;
194 pub const MI_REASON_TIMEOUT: MI_CancellationReason = 1i32;
195 pub const MI_REASON_SHUTDOWN: MI_CancellationReason = 2i32;
196 pub const MI_REASON_SERVICESTOP: MI_CancellationReason = 3i32;
197 #[repr(C)]
198 pub struct MI_Char16A {
199     pub data: *mut u16,
200     pub size: u32,
201 }
202 impl ::core::marker::Copy for MI_Char16A {}
203 impl ::core::clone::Clone for MI_Char16A {
clone(&self) -> Self204     fn clone(&self) -> Self {
205         *self
206     }
207 }
208 #[repr(C)]
209 pub struct MI_Char16AField {
210     pub value: MI_Char16A,
211     pub exists: u8,
212     pub flags: u8,
213 }
214 impl ::core::marker::Copy for MI_Char16AField {}
215 impl ::core::clone::Clone for MI_Char16AField {
clone(&self) -> Self216     fn clone(&self) -> Self {
217         *self
218     }
219 }
220 #[repr(C)]
221 pub struct MI_Char16Field {
222     pub value: u16,
223     pub exists: u8,
224     pub flags: u8,
225 }
226 impl ::core::marker::Copy for MI_Char16Field {}
227 impl ::core::clone::Clone for MI_Char16Field {
clone(&self) -> Self228     fn clone(&self) -> Self {
229         *self
230     }
231 }
232 #[repr(C)]
233 pub struct MI_Class {
234     pub ft: *mut MI_ClassFT,
235     pub classDecl: *mut MI_ClassDecl,
236     pub namespaceName: *mut u16,
237     pub serverName: *mut u16,
238     pub reserved: [isize; 4],
239 }
240 impl ::core::marker::Copy for MI_Class {}
241 impl ::core::clone::Clone for MI_Class {
clone(&self) -> Self242     fn clone(&self) -> Self {
243         *self
244     }
245 }
246 #[repr(C)]
247 pub struct MI_ClassDecl {
248     pub flags: u32,
249     pub code: u32,
250     pub name: *mut u16,
251     pub qualifiers: *mut *mut MI_Qualifier,
252     pub numQualifiers: u32,
253     pub properties: *mut *mut MI_PropertyDecl,
254     pub numProperties: u32,
255     pub size: u32,
256     pub superClass: *mut u16,
257     pub superClassDecl: *mut MI_ClassDecl,
258     pub methods: *mut *mut MI_MethodDecl,
259     pub numMethods: u32,
260     pub schema: *mut MI_SchemaDecl,
261     pub providerFT: *mut MI_ProviderFT,
262     pub owningClass: *mut MI_Class,
263 }
264 impl ::core::marker::Copy for MI_ClassDecl {}
265 impl ::core::clone::Clone for MI_ClassDecl {
clone(&self) -> Self266     fn clone(&self) -> Self {
267         *self
268     }
269 }
270 #[repr(C)]
271 pub struct MI_ClassFT {
272     pub GetClassNameA: isize,
273     pub GetNameSpace: isize,
274     pub GetServerName: isize,
275     pub GetElementCount: isize,
276     pub GetElement: isize,
277     pub GetElementAt: isize,
278     pub GetClassQualifierSet: isize,
279     pub GetMethodCount: isize,
280     pub GetMethodAt: isize,
281     pub GetMethod: isize,
282     pub GetParentClassName: isize,
283     pub GetParentClass: isize,
284     pub Delete: isize,
285     pub Clone: isize,
286 }
287 impl ::core::marker::Copy for MI_ClassFT {}
288 impl ::core::clone::Clone for MI_ClassFT {
clone(&self) -> Self289     fn clone(&self) -> Self {
290         *self
291     }
292 }
293 #[repr(C)]
294 pub struct MI_ClientFT_V1 {
295     pub applicationFT: *mut MI_ApplicationFT,
296     pub sessionFT: *mut MI_SessionFT,
297     pub operationFT: *mut MI_OperationFT,
298     pub hostedProviderFT: *mut MI_HostedProviderFT,
299     pub serializerFT: *mut MI_SerializerFT,
300     pub deserializerFT: *mut MI_DeserializerFT,
301     pub subscribeDeliveryOptionsFT: *mut MI_SubscriptionDeliveryOptionsFT,
302     pub destinationOptionsFT: *mut MI_DestinationOptionsFT,
303     pub operationOptionsFT: *mut MI_OperationOptionsFT,
304     pub utilitiesFT: *mut MI_UtilitiesFT,
305 }
306 impl ::core::marker::Copy for MI_ClientFT_V1 {}
307 impl ::core::clone::Clone for MI_ClientFT_V1 {
clone(&self) -> Self308     fn clone(&self) -> Self {
309         *self
310     }
311 }
312 #[repr(C)]
313 pub struct MI_ConstBooleanA {
314     pub data: *mut u8,
315     pub size: u32,
316 }
317 impl ::core::marker::Copy for MI_ConstBooleanA {}
318 impl ::core::clone::Clone for MI_ConstBooleanA {
clone(&self) -> Self319     fn clone(&self) -> Self {
320         *self
321     }
322 }
323 #[repr(C)]
324 pub struct MI_ConstBooleanAField {
325     pub value: MI_ConstBooleanA,
326     pub exists: u8,
327     pub flags: u8,
328 }
329 impl ::core::marker::Copy for MI_ConstBooleanAField {}
330 impl ::core::clone::Clone for MI_ConstBooleanAField {
clone(&self) -> Self331     fn clone(&self) -> Self {
332         *self
333     }
334 }
335 #[repr(C)]
336 pub struct MI_ConstBooleanField {
337     pub value: u8,
338     pub exists: u8,
339     pub flags: u8,
340 }
341 impl ::core::marker::Copy for MI_ConstBooleanField {}
342 impl ::core::clone::Clone for MI_ConstBooleanField {
clone(&self) -> Self343     fn clone(&self) -> Self {
344         *self
345     }
346 }
347 #[repr(C)]
348 pub struct MI_ConstChar16A {
349     pub data: *mut u16,
350     pub size: u32,
351 }
352 impl ::core::marker::Copy for MI_ConstChar16A {}
353 impl ::core::clone::Clone for MI_ConstChar16A {
clone(&self) -> Self354     fn clone(&self) -> Self {
355         *self
356     }
357 }
358 #[repr(C)]
359 pub struct MI_ConstChar16AField {
360     pub value: MI_ConstChar16A,
361     pub exists: u8,
362     pub flags: u8,
363 }
364 impl ::core::marker::Copy for MI_ConstChar16AField {}
365 impl ::core::clone::Clone for MI_ConstChar16AField {
clone(&self) -> Self366     fn clone(&self) -> Self {
367         *self
368     }
369 }
370 #[repr(C)]
371 pub struct MI_ConstChar16Field {
372     pub value: u16,
373     pub exists: u8,
374     pub flags: u8,
375 }
376 impl ::core::marker::Copy for MI_ConstChar16Field {}
377 impl ::core::clone::Clone for MI_ConstChar16Field {
clone(&self) -> Self378     fn clone(&self) -> Self {
379         *self
380     }
381 }
382 #[repr(C)]
383 pub struct MI_ConstDatetimeA {
384     pub data: *mut MI_Datetime,
385     pub size: u32,
386 }
387 impl ::core::marker::Copy for MI_ConstDatetimeA {}
388 impl ::core::clone::Clone for MI_ConstDatetimeA {
clone(&self) -> Self389     fn clone(&self) -> Self {
390         *self
391     }
392 }
393 #[repr(C)]
394 pub struct MI_ConstDatetimeAField {
395     pub value: MI_ConstDatetimeA,
396     pub exists: u8,
397     pub flags: u8,
398 }
399 impl ::core::marker::Copy for MI_ConstDatetimeAField {}
400 impl ::core::clone::Clone for MI_ConstDatetimeAField {
clone(&self) -> Self401     fn clone(&self) -> Self {
402         *self
403     }
404 }
405 #[repr(C)]
406 pub struct MI_ConstDatetimeField {
407     pub value: MI_Datetime,
408     pub exists: u8,
409     pub flags: u8,
410 }
411 impl ::core::marker::Copy for MI_ConstDatetimeField {}
412 impl ::core::clone::Clone for MI_ConstDatetimeField {
clone(&self) -> Self413     fn clone(&self) -> Self {
414         *self
415     }
416 }
417 #[repr(C)]
418 pub struct MI_ConstInstanceA {
419     pub data: *mut *mut MI_Instance,
420     pub size: u32,
421 }
422 impl ::core::marker::Copy for MI_ConstInstanceA {}
423 impl ::core::clone::Clone for MI_ConstInstanceA {
clone(&self) -> Self424     fn clone(&self) -> Self {
425         *self
426     }
427 }
428 #[repr(C)]
429 pub struct MI_ConstInstanceAField {
430     pub value: MI_ConstInstanceA,
431     pub exists: u8,
432     pub flags: u8,
433 }
434 impl ::core::marker::Copy for MI_ConstInstanceAField {}
435 impl ::core::clone::Clone for MI_ConstInstanceAField {
clone(&self) -> Self436     fn clone(&self) -> Self {
437         *self
438     }
439 }
440 #[repr(C)]
441 pub struct MI_ConstInstanceField {
442     pub value: *mut MI_Instance,
443     pub exists: u8,
444     pub flags: u8,
445 }
446 impl ::core::marker::Copy for MI_ConstInstanceField {}
447 impl ::core::clone::Clone for MI_ConstInstanceField {
clone(&self) -> Self448     fn clone(&self) -> Self {
449         *self
450     }
451 }
452 #[repr(C)]
453 pub struct MI_ConstReal32A {
454     pub data: *mut f32,
455     pub size: u32,
456 }
457 impl ::core::marker::Copy for MI_ConstReal32A {}
458 impl ::core::clone::Clone for MI_ConstReal32A {
clone(&self) -> Self459     fn clone(&self) -> Self {
460         *self
461     }
462 }
463 #[repr(C)]
464 pub struct MI_ConstReal32AField {
465     pub value: MI_ConstReal32A,
466     pub exists: u8,
467     pub flags: u8,
468 }
469 impl ::core::marker::Copy for MI_ConstReal32AField {}
470 impl ::core::clone::Clone for MI_ConstReal32AField {
clone(&self) -> Self471     fn clone(&self) -> Self {
472         *self
473     }
474 }
475 #[repr(C)]
476 pub struct MI_ConstReal32Field {
477     pub value: f32,
478     pub exists: u8,
479     pub flags: u8,
480 }
481 impl ::core::marker::Copy for MI_ConstReal32Field {}
482 impl ::core::clone::Clone for MI_ConstReal32Field {
clone(&self) -> Self483     fn clone(&self) -> Self {
484         *self
485     }
486 }
487 #[repr(C)]
488 pub struct MI_ConstReal64A {
489     pub data: *mut f64,
490     pub size: u32,
491 }
492 impl ::core::marker::Copy for MI_ConstReal64A {}
493 impl ::core::clone::Clone for MI_ConstReal64A {
clone(&self) -> Self494     fn clone(&self) -> Self {
495         *self
496     }
497 }
498 #[repr(C)]
499 pub struct MI_ConstReal64AField {
500     pub value: MI_ConstReal64A,
501     pub exists: u8,
502     pub flags: u8,
503 }
504 impl ::core::marker::Copy for MI_ConstReal64AField {}
505 impl ::core::clone::Clone for MI_ConstReal64AField {
clone(&self) -> Self506     fn clone(&self) -> Self {
507         *self
508     }
509 }
510 #[repr(C)]
511 pub struct MI_ConstReal64Field {
512     pub value: f64,
513     pub exists: u8,
514     pub flags: u8,
515 }
516 impl ::core::marker::Copy for MI_ConstReal64Field {}
517 impl ::core::clone::Clone for MI_ConstReal64Field {
clone(&self) -> Self518     fn clone(&self) -> Self {
519         *self
520     }
521 }
522 #[repr(C)]
523 pub struct MI_ConstReferenceA {
524     pub data: *mut *mut MI_Instance,
525     pub size: u32,
526 }
527 impl ::core::marker::Copy for MI_ConstReferenceA {}
528 impl ::core::clone::Clone for MI_ConstReferenceA {
clone(&self) -> Self529     fn clone(&self) -> Self {
530         *self
531     }
532 }
533 #[repr(C)]
534 pub struct MI_ConstReferenceAField {
535     pub value: MI_ConstReferenceA,
536     pub exists: u8,
537     pub flags: u8,
538 }
539 impl ::core::marker::Copy for MI_ConstReferenceAField {}
540 impl ::core::clone::Clone for MI_ConstReferenceAField {
clone(&self) -> Self541     fn clone(&self) -> Self {
542         *self
543     }
544 }
545 #[repr(C)]
546 pub struct MI_ConstReferenceField {
547     pub value: *mut MI_Instance,
548     pub exists: u8,
549     pub flags: u8,
550 }
551 impl ::core::marker::Copy for MI_ConstReferenceField {}
552 impl ::core::clone::Clone for MI_ConstReferenceField {
clone(&self) -> Self553     fn clone(&self) -> Self {
554         *self
555     }
556 }
557 #[repr(C)]
558 pub struct MI_ConstSint16A {
559     pub data: *mut i16,
560     pub size: u32,
561 }
562 impl ::core::marker::Copy for MI_ConstSint16A {}
563 impl ::core::clone::Clone for MI_ConstSint16A {
clone(&self) -> Self564     fn clone(&self) -> Self {
565         *self
566     }
567 }
568 #[repr(C)]
569 pub struct MI_ConstSint16AField {
570     pub value: MI_ConstSint16A,
571     pub exists: u8,
572     pub flags: u8,
573 }
574 impl ::core::marker::Copy for MI_ConstSint16AField {}
575 impl ::core::clone::Clone for MI_ConstSint16AField {
clone(&self) -> Self576     fn clone(&self) -> Self {
577         *self
578     }
579 }
580 #[repr(C)]
581 pub struct MI_ConstSint16Field {
582     pub value: i16,
583     pub exists: u8,
584     pub flags: u8,
585 }
586 impl ::core::marker::Copy for MI_ConstSint16Field {}
587 impl ::core::clone::Clone for MI_ConstSint16Field {
clone(&self) -> Self588     fn clone(&self) -> Self {
589         *self
590     }
591 }
592 #[repr(C)]
593 pub struct MI_ConstSint32A {
594     pub data: *mut i32,
595     pub size: u32,
596 }
597 impl ::core::marker::Copy for MI_ConstSint32A {}
598 impl ::core::clone::Clone for MI_ConstSint32A {
clone(&self) -> Self599     fn clone(&self) -> Self {
600         *self
601     }
602 }
603 #[repr(C)]
604 pub struct MI_ConstSint32AField {
605     pub value: MI_ConstSint32A,
606     pub exists: u8,
607     pub flags: u8,
608 }
609 impl ::core::marker::Copy for MI_ConstSint32AField {}
610 impl ::core::clone::Clone for MI_ConstSint32AField {
clone(&self) -> Self611     fn clone(&self) -> Self {
612         *self
613     }
614 }
615 #[repr(C)]
616 pub struct MI_ConstSint32Field {
617     pub value: i32,
618     pub exists: u8,
619     pub flags: u8,
620 }
621 impl ::core::marker::Copy for MI_ConstSint32Field {}
622 impl ::core::clone::Clone for MI_ConstSint32Field {
clone(&self) -> Self623     fn clone(&self) -> Self {
624         *self
625     }
626 }
627 #[repr(C)]
628 pub struct MI_ConstSint64A {
629     pub data: *mut i64,
630     pub size: u32,
631 }
632 impl ::core::marker::Copy for MI_ConstSint64A {}
633 impl ::core::clone::Clone for MI_ConstSint64A {
clone(&self) -> Self634     fn clone(&self) -> Self {
635         *self
636     }
637 }
638 #[repr(C)]
639 pub struct MI_ConstSint64AField {
640     pub value: MI_ConstSint64A,
641     pub exists: u8,
642     pub flags: u8,
643 }
644 impl ::core::marker::Copy for MI_ConstSint64AField {}
645 impl ::core::clone::Clone for MI_ConstSint64AField {
clone(&self) -> Self646     fn clone(&self) -> Self {
647         *self
648     }
649 }
650 #[repr(C)]
651 pub struct MI_ConstSint64Field {
652     pub value: i64,
653     pub exists: u8,
654     pub flags: u8,
655 }
656 impl ::core::marker::Copy for MI_ConstSint64Field {}
657 impl ::core::clone::Clone for MI_ConstSint64Field {
clone(&self) -> Self658     fn clone(&self) -> Self {
659         *self
660     }
661 }
662 #[repr(C)]
663 pub struct MI_ConstSint8A {
664     pub data: *mut i8,
665     pub size: u32,
666 }
667 impl ::core::marker::Copy for MI_ConstSint8A {}
668 impl ::core::clone::Clone for MI_ConstSint8A {
clone(&self) -> Self669     fn clone(&self) -> Self {
670         *self
671     }
672 }
673 #[repr(C)]
674 pub struct MI_ConstSint8AField {
675     pub value: MI_ConstSint8A,
676     pub exists: u8,
677     pub flags: u8,
678 }
679 impl ::core::marker::Copy for MI_ConstSint8AField {}
680 impl ::core::clone::Clone for MI_ConstSint8AField {
clone(&self) -> Self681     fn clone(&self) -> Self {
682         *self
683     }
684 }
685 #[repr(C)]
686 pub struct MI_ConstSint8Field {
687     pub value: i8,
688     pub exists: u8,
689     pub flags: u8,
690 }
691 impl ::core::marker::Copy for MI_ConstSint8Field {}
692 impl ::core::clone::Clone for MI_ConstSint8Field {
clone(&self) -> Self693     fn clone(&self) -> Self {
694         *self
695     }
696 }
697 #[repr(C)]
698 pub struct MI_ConstStringA {
699     pub data: *mut *mut u16,
700     pub size: u32,
701 }
702 impl ::core::marker::Copy for MI_ConstStringA {}
703 impl ::core::clone::Clone for MI_ConstStringA {
clone(&self) -> Self704     fn clone(&self) -> Self {
705         *self
706     }
707 }
708 #[repr(C)]
709 pub struct MI_ConstStringAField {
710     pub value: MI_ConstStringA,
711     pub exists: u8,
712     pub flags: u8,
713 }
714 impl ::core::marker::Copy for MI_ConstStringAField {}
715 impl ::core::clone::Clone for MI_ConstStringAField {
clone(&self) -> Self716     fn clone(&self) -> Self {
717         *self
718     }
719 }
720 #[repr(C)]
721 pub struct MI_ConstStringField {
722     pub value: *mut u16,
723     pub exists: u8,
724     pub flags: u8,
725 }
726 impl ::core::marker::Copy for MI_ConstStringField {}
727 impl ::core::clone::Clone for MI_ConstStringField {
clone(&self) -> Self728     fn clone(&self) -> Self {
729         *self
730     }
731 }
732 #[repr(C)]
733 pub struct MI_ConstUint16A {
734     pub data: *mut u16,
735     pub size: u32,
736 }
737 impl ::core::marker::Copy for MI_ConstUint16A {}
738 impl ::core::clone::Clone for MI_ConstUint16A {
clone(&self) -> Self739     fn clone(&self) -> Self {
740         *self
741     }
742 }
743 #[repr(C)]
744 pub struct MI_ConstUint16AField {
745     pub value: MI_ConstUint16A,
746     pub exists: u8,
747     pub flags: u8,
748 }
749 impl ::core::marker::Copy for MI_ConstUint16AField {}
750 impl ::core::clone::Clone for MI_ConstUint16AField {
clone(&self) -> Self751     fn clone(&self) -> Self {
752         *self
753     }
754 }
755 #[repr(C)]
756 pub struct MI_ConstUint16Field {
757     pub value: u16,
758     pub exists: u8,
759     pub flags: u8,
760 }
761 impl ::core::marker::Copy for MI_ConstUint16Field {}
762 impl ::core::clone::Clone for MI_ConstUint16Field {
clone(&self) -> Self763     fn clone(&self) -> Self {
764         *self
765     }
766 }
767 #[repr(C)]
768 pub struct MI_ConstUint32A {
769     pub data: *mut u32,
770     pub size: u32,
771 }
772 impl ::core::marker::Copy for MI_ConstUint32A {}
773 impl ::core::clone::Clone for MI_ConstUint32A {
clone(&self) -> Self774     fn clone(&self) -> Self {
775         *self
776     }
777 }
778 #[repr(C)]
779 pub struct MI_ConstUint32AField {
780     pub value: MI_ConstUint32A,
781     pub exists: u8,
782     pub flags: u8,
783 }
784 impl ::core::marker::Copy for MI_ConstUint32AField {}
785 impl ::core::clone::Clone for MI_ConstUint32AField {
clone(&self) -> Self786     fn clone(&self) -> Self {
787         *self
788     }
789 }
790 #[repr(C)]
791 pub struct MI_ConstUint32Field {
792     pub value: u32,
793     pub exists: u8,
794     pub flags: u8,
795 }
796 impl ::core::marker::Copy for MI_ConstUint32Field {}
797 impl ::core::clone::Clone for MI_ConstUint32Field {
clone(&self) -> Self798     fn clone(&self) -> Self {
799         *self
800     }
801 }
802 #[repr(C)]
803 pub struct MI_ConstUint64A {
804     pub data: *mut u64,
805     pub size: u32,
806 }
807 impl ::core::marker::Copy for MI_ConstUint64A {}
808 impl ::core::clone::Clone for MI_ConstUint64A {
clone(&self) -> Self809     fn clone(&self) -> Self {
810         *self
811     }
812 }
813 #[repr(C)]
814 pub struct MI_ConstUint64AField {
815     pub value: MI_ConstUint64A,
816     pub exists: u8,
817     pub flags: u8,
818 }
819 impl ::core::marker::Copy for MI_ConstUint64AField {}
820 impl ::core::clone::Clone for MI_ConstUint64AField {
clone(&self) -> Self821     fn clone(&self) -> Self {
822         *self
823     }
824 }
825 #[repr(C)]
826 pub struct MI_ConstUint64Field {
827     pub value: u64,
828     pub exists: u8,
829     pub flags: u8,
830 }
831 impl ::core::marker::Copy for MI_ConstUint64Field {}
832 impl ::core::clone::Clone for MI_ConstUint64Field {
clone(&self) -> Self833     fn clone(&self) -> Self {
834         *self
835     }
836 }
837 #[repr(C)]
838 pub struct MI_ConstUint8A {
839     pub data: *mut u8,
840     pub size: u32,
841 }
842 impl ::core::marker::Copy for MI_ConstUint8A {}
843 impl ::core::clone::Clone for MI_ConstUint8A {
clone(&self) -> Self844     fn clone(&self) -> Self {
845         *self
846     }
847 }
848 #[repr(C)]
849 pub struct MI_ConstUint8AField {
850     pub value: MI_ConstUint8A,
851     pub exists: u8,
852     pub flags: u8,
853 }
854 impl ::core::marker::Copy for MI_ConstUint8AField {}
855 impl ::core::clone::Clone for MI_ConstUint8AField {
clone(&self) -> Self856     fn clone(&self) -> Self {
857         *self
858     }
859 }
860 #[repr(C)]
861 pub struct MI_ConstUint8Field {
862     pub value: u8,
863     pub exists: u8,
864     pub flags: u8,
865 }
866 impl ::core::marker::Copy for MI_ConstUint8Field {}
867 impl ::core::clone::Clone for MI_ConstUint8Field {
clone(&self) -> Self868     fn clone(&self) -> Self {
869         *self
870     }
871 }
872 #[repr(C)]
873 pub struct MI_Context {
874     pub ft: *mut MI_ContextFT,
875     pub reserved: [isize; 3],
876 }
877 impl ::core::marker::Copy for MI_Context {}
878 impl ::core::clone::Clone for MI_Context {
clone(&self) -> Self879     fn clone(&self) -> Self {
880         *self
881     }
882 }
883 #[repr(C)]
884 pub struct MI_ContextFT {
885     pub PostResult: isize,
886     pub PostInstance: isize,
887     pub PostIndication: isize,
888     pub ConstructInstance: isize,
889     pub ConstructParameters: isize,
890     pub NewInstance: isize,
891     pub NewDynamicInstance: isize,
892     pub NewParameters: isize,
893     pub Canceled: isize,
894     pub GetLocale: isize,
895     pub RegisterCancel: isize,
896     pub RequestUnload: isize,
897     pub RefuseUnload: isize,
898     pub GetLocalSession: isize,
899     pub SetStringOption: isize,
900     pub GetStringOption: isize,
901     pub GetNumberOption: isize,
902     pub GetCustomOption: isize,
903     pub GetCustomOptionCount: isize,
904     pub GetCustomOptionAt: isize,
905     pub WriteMessage: isize,
906     pub WriteProgress: isize,
907     pub WriteStreamParameter: isize,
908     pub WriteCimError: isize,
909     pub PromptUser: isize,
910     pub ShouldProcess: isize,
911     pub ShouldContinue: isize,
912     pub PostError: isize,
913     pub PostCimError: isize,
914     pub WriteError: isize,
915 }
916 impl ::core::marker::Copy for MI_ContextFT {}
917 impl ::core::clone::Clone for MI_ContextFT {
clone(&self) -> Self918     fn clone(&self) -> Self {
919         *self
920     }
921 }
922 #[repr(C)]
923 pub struct MI_Datetime {
924     pub isTimestamp: u32,
925     pub u: MI_Datetime_0,
926 }
927 impl ::core::marker::Copy for MI_Datetime {}
928 impl ::core::clone::Clone for MI_Datetime {
clone(&self) -> Self929     fn clone(&self) -> Self {
930         *self
931     }
932 }
933 #[repr(C)]
934 pub union MI_Datetime_0 {
935     pub timestamp: MI_Timestamp,
936     pub interval: MI_Interval,
937 }
938 impl ::core::marker::Copy for MI_Datetime_0 {}
939 impl ::core::clone::Clone for MI_Datetime_0 {
clone(&self) -> Self940     fn clone(&self) -> Self {
941         *self
942     }
943 }
944 #[repr(C)]
945 pub struct MI_DatetimeA {
946     pub data: *mut MI_Datetime,
947     pub size: u32,
948 }
949 impl ::core::marker::Copy for MI_DatetimeA {}
950 impl ::core::clone::Clone for MI_DatetimeA {
clone(&self) -> Self951     fn clone(&self) -> Self {
952         *self
953     }
954 }
955 #[repr(C)]
956 pub struct MI_DatetimeAField {
957     pub value: MI_DatetimeA,
958     pub exists: u8,
959     pub flags: u8,
960 }
961 impl ::core::marker::Copy for MI_DatetimeAField {}
962 impl ::core::clone::Clone for MI_DatetimeAField {
clone(&self) -> Self963     fn clone(&self) -> Self {
964         *self
965     }
966 }
967 #[repr(C)]
968 pub struct MI_DatetimeField {
969     pub value: MI_Datetime,
970     pub exists: u8,
971     pub flags: u8,
972 }
973 impl ::core::marker::Copy for MI_DatetimeField {}
974 impl ::core::clone::Clone for MI_DatetimeField {
clone(&self) -> Self975     fn clone(&self) -> Self {
976         *self
977     }
978 }
979 #[repr(C)]
980 pub struct MI_Deserializer {
981     pub reserved1: u64,
982     pub reserved2: isize,
983 }
984 impl ::core::marker::Copy for MI_Deserializer {}
985 impl ::core::clone::Clone for MI_Deserializer {
clone(&self) -> Self986     fn clone(&self) -> Self {
987         *self
988     }
989 }
990 #[repr(C)]
991 pub struct MI_DeserializerFT {
992     pub Close: isize,
993     pub DeserializeClass: isize,
994     pub Class_GetClassName: isize,
995     pub Class_GetParentClassName: isize,
996     pub DeserializeInstance: isize,
997     pub Instance_GetClassName: isize,
998 }
999 impl ::core::marker::Copy for MI_DeserializerFT {}
1000 impl ::core::clone::Clone for MI_DeserializerFT {
clone(&self) -> Self1001     fn clone(&self) -> Self {
1002         *self
1003     }
1004 }
1005 pub type MI_Deserializer_ClassObjectNeeded = unsafe extern "system" fn(context: *const ::core::ffi::c_void, servername: *const u16, namespacename: *const u16, classname: *const u16, requestedclassobject: *mut *mut MI_Class) -> MI_Result;
1006 #[repr(C)]
1007 pub struct MI_DestinationOptions {
1008     pub reserved1: u64,
1009     pub reserved2: isize,
1010     pub ft: *mut MI_DestinationOptionsFT,
1011 }
1012 impl ::core::marker::Copy for MI_DestinationOptions {}
1013 impl ::core::clone::Clone for MI_DestinationOptions {
clone(&self) -> Self1014     fn clone(&self) -> Self {
1015         *self
1016     }
1017 }
1018 #[repr(C)]
1019 pub struct MI_DestinationOptionsFT {
1020     pub Delete: isize,
1021     pub SetString: isize,
1022     pub SetNumber: isize,
1023     pub AddCredentials: isize,
1024     pub GetString: isize,
1025     pub GetNumber: isize,
1026     pub GetOptionCount: isize,
1027     pub GetOptionAt: isize,
1028     pub GetOption: isize,
1029     pub GetCredentialsCount: isize,
1030     pub GetCredentialsAt: isize,
1031     pub GetCredentialsPasswordAt: isize,
1032     pub Clone: isize,
1033     pub SetInterval: isize,
1034     pub GetInterval: isize,
1035 }
1036 impl ::core::marker::Copy for MI_DestinationOptionsFT {}
1037 impl ::core::clone::Clone for MI_DestinationOptionsFT {
clone(&self) -> Self1038     fn clone(&self) -> Self {
1039         *self
1040     }
1041 }
1042 pub type MI_DestinationOptions_ImpersonationType = i32;
1043 pub const MI_DestinationOptions_ImpersonationType_Default: MI_DestinationOptions_ImpersonationType = 0i32;
1044 pub const MI_DestinationOptions_ImpersonationType_None: MI_DestinationOptions_ImpersonationType = 1i32;
1045 pub const MI_DestinationOptions_ImpersonationType_Identify: MI_DestinationOptions_ImpersonationType = 2i32;
1046 pub const MI_DestinationOptions_ImpersonationType_Impersonate: MI_DestinationOptions_ImpersonationType = 3i32;
1047 pub const MI_DestinationOptions_ImpersonationType_Delegate: MI_DestinationOptions_ImpersonationType = 4i32;
1048 pub type MI_ErrorCategory = i32;
1049 pub const MI_ERRORCATEGORY_NOT_SPECIFIED: MI_ErrorCategory = 0i32;
1050 pub const MI_ERRORCATEGORY_OPEN_ERROR: MI_ErrorCategory = 1i32;
1051 pub const MI_ERRORCATEGORY_CLOS_EERROR: MI_ErrorCategory = 2i32;
1052 pub const MI_ERRORCATEGORY_DEVICE_ERROR: MI_ErrorCategory = 3i32;
1053 pub const MI_ERRORCATEGORY_DEADLOCK_DETECTED: MI_ErrorCategory = 4i32;
1054 pub const MI_ERRORCATEGORY_INVALID_ARGUMENT: MI_ErrorCategory = 5i32;
1055 pub const MI_ERRORCATEGORY_INVALID_DATA: MI_ErrorCategory = 6i32;
1056 pub const MI_ERRORCATEGORY_INVALID_OPERATION: MI_ErrorCategory = 7i32;
1057 pub const MI_ERRORCATEGORY_INVALID_RESULT: MI_ErrorCategory = 8i32;
1058 pub const MI_ERRORCATEGORY_INVALID_TYPE: MI_ErrorCategory = 9i32;
1059 pub const MI_ERRORCATEGORY_METADATA_ERROR: MI_ErrorCategory = 10i32;
1060 pub const MI_ERRORCATEGORY_NOT_IMPLEMENTED: MI_ErrorCategory = 11i32;
1061 pub const MI_ERRORCATEGORY_NOT_INSTALLED: MI_ErrorCategory = 12i32;
1062 pub const MI_ERRORCATEGORY_OBJECT_NOT_FOUND: MI_ErrorCategory = 13i32;
1063 pub const MI_ERRORCATEGORY_OPERATION_STOPPED: MI_ErrorCategory = 14i32;
1064 pub const MI_ERRORCATEGORY_OPERATION_TIMEOUT: MI_ErrorCategory = 15i32;
1065 pub const MI_ERRORCATEGORY_SYNTAX_ERROR: MI_ErrorCategory = 16i32;
1066 pub const MI_ERRORCATEGORY_PARSER_ERROR: MI_ErrorCategory = 17i32;
1067 pub const MI_ERRORCATEGORY_ACCESS_DENIED: MI_ErrorCategory = 18i32;
1068 pub const MI_ERRORCATEGORY_RESOURCE_BUSY: MI_ErrorCategory = 19i32;
1069 pub const MI_ERRORCATEGORY_RESOURCE_EXISTS: MI_ErrorCategory = 20i32;
1070 pub const MI_ERRORCATEGORY_RESOURCE_UNAVAILABLE: MI_ErrorCategory = 21i32;
1071 pub const MI_ERRORCATEGORY_READ_ERROR: MI_ErrorCategory = 22i32;
1072 pub const MI_ERRORCATEGORY_WRITE_ERROR: MI_ErrorCategory = 23i32;
1073 pub const MI_ERRORCATEGORY_FROM_STDERR: MI_ErrorCategory = 24i32;
1074 pub const MI_ERRORCATEGORY_SECURITY_ERROR: MI_ErrorCategory = 25i32;
1075 pub const MI_ERRORCATEGORY_PROTOCOL_ERROR: MI_ErrorCategory = 26i32;
1076 pub const MI_ERRORCATEGORY_CONNECTION_ERROR: MI_ErrorCategory = 27i32;
1077 pub const MI_ERRORCATEGORY_AUTHENTICATION_ERROR: MI_ErrorCategory = 28i32;
1078 pub const MI_ERRORCATEGORY_LIMITS_EXCEEDED: MI_ErrorCategory = 29i32;
1079 pub const MI_ERRORCATEGORY_QUOTA_EXCEEDED: MI_ErrorCategory = 30i32;
1080 pub const MI_ERRORCATEGORY_NOT_ENABLED: MI_ErrorCategory = 31i32;
1081 pub const MI_FLAG_ABSTRACT: u32 = 131072u32;
1082 pub const MI_FLAG_ADOPT: u32 = 2147483648u32;
1083 pub const MI_FLAG_ANY: u32 = 127u32;
1084 pub const MI_FLAG_ASSOCIATION: u32 = 16u32;
1085 pub const MI_FLAG_BORROW: u32 = 1073741824u32;
1086 pub const MI_FLAG_CLASS: u32 = 1u32;
1087 pub const MI_FLAG_DISABLEOVERRIDE: u32 = 256u32;
1088 pub const MI_FLAG_ENABLEOVERRIDE: u32 = 128u32;
1089 pub const MI_FLAG_EXPENSIVE: u32 = 524288u32;
1090 pub const MI_FLAG_EXTENDED: u32 = 4096u32;
1091 pub const MI_FLAG_IN: u32 = 8192u32;
1092 pub const MI_FLAG_INDICATION: u32 = 32u32;
1093 pub const MI_FLAG_KEY: u32 = 4096u32;
1094 pub const MI_FLAG_METHOD: u32 = 2u32;
1095 pub const MI_FLAG_NOT_MODIFIED: u32 = 33554432u32;
1096 pub const MI_FLAG_NULL: u32 = 536870912u32;
1097 pub const MI_FLAG_OUT: u32 = 16384u32;
1098 pub const MI_FLAG_PARAMETER: u32 = 8u32;
1099 pub const MI_FLAG_PROPERTY: u32 = 4u32;
1100 pub const MI_FLAG_READONLY: u32 = 2097152u32;
1101 pub const MI_FLAG_REFERENCE: u32 = 64u32;
1102 pub const MI_FLAG_REQUIRED: u32 = 32768u32;
1103 pub const MI_FLAG_RESTRICTED: u32 = 512u32;
1104 pub const MI_FLAG_STATIC: u32 = 65536u32;
1105 pub const MI_FLAG_STREAM: u32 = 1048576u32;
1106 pub const MI_FLAG_TERMINAL: u32 = 262144u32;
1107 pub const MI_FLAG_TOSUBCLASS: u32 = 1024u32;
1108 pub const MI_FLAG_TRANSLATABLE: u32 = 2048u32;
1109 pub const MI_FLAG_VERSION: u32 = 469762048u32;
1110 #[repr(C)]
1111 pub struct MI_FeatureDecl {
1112     pub flags: u32,
1113     pub code: u32,
1114     pub name: *mut u16,
1115     pub qualifiers: *mut *mut MI_Qualifier,
1116     pub numQualifiers: u32,
1117 }
1118 impl ::core::marker::Copy for MI_FeatureDecl {}
1119 impl ::core::clone::Clone for MI_FeatureDecl {
clone(&self) -> Self1120     fn clone(&self) -> Self {
1121         *self
1122     }
1123 }
1124 #[repr(C)]
1125 pub struct MI_Filter {
1126     pub ft: *mut MI_FilterFT,
1127     pub reserved: [isize; 3],
1128 }
1129 impl ::core::marker::Copy for MI_Filter {}
1130 impl ::core::clone::Clone for MI_Filter {
clone(&self) -> Self1131     fn clone(&self) -> Self {
1132         *self
1133     }
1134 }
1135 #[repr(C)]
1136 pub struct MI_FilterFT {
1137     pub Evaluate: isize,
1138     pub GetExpression: isize,
1139 }
1140 impl ::core::marker::Copy for MI_FilterFT {}
1141 impl ::core::clone::Clone for MI_FilterFT {
clone(&self) -> Self1142     fn clone(&self) -> Self {
1143         *self
1144     }
1145 }
1146 #[repr(C)]
1147 pub struct MI_HostedProvider {
1148     pub reserved1: u64,
1149     pub reserved2: isize,
1150     pub ft: *mut MI_HostedProviderFT,
1151 }
1152 impl ::core::marker::Copy for MI_HostedProvider {}
1153 impl ::core::clone::Clone for MI_HostedProvider {
clone(&self) -> Self1154     fn clone(&self) -> Self {
1155         *self
1156     }
1157 }
1158 #[repr(C)]
1159 pub struct MI_HostedProviderFT {
1160     pub Close: isize,
1161     pub GetApplication: isize,
1162 }
1163 impl ::core::marker::Copy for MI_HostedProviderFT {}
1164 impl ::core::clone::Clone for MI_HostedProviderFT {
clone(&self) -> Self1165     fn clone(&self) -> Self {
1166         *self
1167     }
1168 }
1169 #[repr(C)]
1170 pub struct MI_Instance {
1171     pub ft: *mut MI_InstanceFT,
1172     pub classDecl: *mut MI_ClassDecl,
1173     pub serverName: *mut u16,
1174     pub nameSpace: *mut u16,
1175     pub reserved: [isize; 4],
1176 }
1177 impl ::core::marker::Copy for MI_Instance {}
1178 impl ::core::clone::Clone for MI_Instance {
clone(&self) -> Self1179     fn clone(&self) -> Self {
1180         *self
1181     }
1182 }
1183 #[repr(C)]
1184 pub struct MI_InstanceA {
1185     pub data: *mut *mut MI_Instance,
1186     pub size: u32,
1187 }
1188 impl ::core::marker::Copy for MI_InstanceA {}
1189 impl ::core::clone::Clone for MI_InstanceA {
clone(&self) -> Self1190     fn clone(&self) -> Self {
1191         *self
1192     }
1193 }
1194 #[repr(C)]
1195 pub struct MI_InstanceAField {
1196     pub value: MI_InstanceA,
1197     pub exists: u8,
1198     pub flags: u8,
1199 }
1200 impl ::core::marker::Copy for MI_InstanceAField {}
1201 impl ::core::clone::Clone for MI_InstanceAField {
clone(&self) -> Self1202     fn clone(&self) -> Self {
1203         *self
1204     }
1205 }
1206 #[repr(C)]
1207 pub struct MI_InstanceExFT {
1208     pub parent: MI_InstanceFT,
1209     pub Normalize: isize,
1210 }
1211 impl ::core::marker::Copy for MI_InstanceExFT {}
1212 impl ::core::clone::Clone for MI_InstanceExFT {
clone(&self) -> Self1213     fn clone(&self) -> Self {
1214         *self
1215     }
1216 }
1217 #[repr(C)]
1218 pub struct MI_InstanceFT {
1219     pub Clone: isize,
1220     pub Destruct: isize,
1221     pub Delete: isize,
1222     pub IsA: isize,
1223     pub GetClassNameA: isize,
1224     pub SetNameSpace: isize,
1225     pub GetNameSpace: isize,
1226     pub GetElementCount: isize,
1227     pub AddElement: isize,
1228     pub SetElement: isize,
1229     pub SetElementAt: isize,
1230     pub GetElement: isize,
1231     pub GetElementAt: isize,
1232     pub ClearElement: isize,
1233     pub ClearElementAt: isize,
1234     pub GetServerName: isize,
1235     pub SetServerName: isize,
1236     pub GetClass: isize,
1237 }
1238 impl ::core::marker::Copy for MI_InstanceFT {}
1239 impl ::core::clone::Clone for MI_InstanceFT {
clone(&self) -> Self1240     fn clone(&self) -> Self {
1241         *self
1242     }
1243 }
1244 #[repr(C)]
1245 pub struct MI_InstanceField {
1246     pub value: *mut MI_Instance,
1247     pub exists: u8,
1248     pub flags: u8,
1249 }
1250 impl ::core::marker::Copy for MI_InstanceField {}
1251 impl ::core::clone::Clone for MI_InstanceField {
clone(&self) -> Self1252     fn clone(&self) -> Self {
1253         *self
1254     }
1255 }
1256 #[repr(C)]
1257 pub struct MI_Interval {
1258     pub days: u32,
1259     pub hours: u32,
1260     pub minutes: u32,
1261     pub seconds: u32,
1262     pub microseconds: u32,
1263     pub __padding1: u32,
1264     pub __padding2: u32,
1265     pub __padding3: u32,
1266 }
1267 impl ::core::marker::Copy for MI_Interval {}
1268 impl ::core::clone::Clone for MI_Interval {
clone(&self) -> Self1269     fn clone(&self) -> Self {
1270         *self
1271     }
1272 }
1273 pub type MI_LocaleType = i32;
1274 pub const MI_LOCALE_TYPE_REQUESTED_UI: MI_LocaleType = 0i32;
1275 pub const MI_LOCALE_TYPE_REQUESTED_DATA: MI_LocaleType = 1i32;
1276 pub const MI_LOCALE_TYPE_CLOSEST_UI: MI_LocaleType = 2i32;
1277 pub const MI_LOCALE_TYPE_CLOSEST_DATA: MI_LocaleType = 3i32;
1278 pub const MI_MAX_LOCALE_SIZE: u32 = 128u32;
1279 pub const MI_MODULE_FLAG_BOOLEANS: u32 = 16u32;
1280 pub const MI_MODULE_FLAG_CPLUSPLUS: u32 = 32u32;
1281 pub const MI_MODULE_FLAG_DESCRIPTIONS: u32 = 2u32;
1282 pub const MI_MODULE_FLAG_FILTER_SUPPORT: u32 = 128u32;
1283 pub const MI_MODULE_FLAG_LOCALIZED: u32 = 64u32;
1284 pub const MI_MODULE_FLAG_MAPPING_STRINGS: u32 = 8u32;
1285 pub const MI_MODULE_FLAG_STANDARD_QUALIFIERS: u32 = 1u32;
1286 pub const MI_MODULE_FLAG_VALUES: u32 = 4u32;
1287 pub type MI_MainFunction = unsafe extern "system" fn(server: *mut MI_Server) -> *mut MI_Module;
1288 #[repr(C)]
1289 pub struct MI_MethodDecl {
1290     pub flags: u32,
1291     pub code: u32,
1292     pub name: *mut u16,
1293     pub qualifiers: *mut *mut MI_Qualifier,
1294     pub numQualifiers: u32,
1295     pub parameters: *mut *mut MI_ParameterDecl,
1296     pub numParameters: u32,
1297     pub size: u32,
1298     pub returnType: u32,
1299     pub origin: *mut u16,
1300     pub propagator: *mut u16,
1301     pub schema: *mut MI_SchemaDecl,
1302     pub function: MI_MethodDecl_Invoke,
1303 }
1304 impl ::core::marker::Copy for MI_MethodDecl {}
1305 impl ::core::clone::Clone for MI_MethodDecl {
clone(&self) -> Self1306     fn clone(&self) -> Self {
1307         *self
1308     }
1309 }
1310 pub type MI_MethodDecl_Invoke = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, methodname: *const u16, instancename: *const MI_Instance, parameters: *const MI_Instance);
1311 #[repr(C)]
1312 pub struct MI_Module {
1313     pub version: u32,
1314     pub generatorVersion: u32,
1315     pub flags: u32,
1316     pub charSize: u32,
1317     pub schemaDecl: *mut MI_SchemaDecl,
1318     pub Load: MI_Module_Load,
1319     pub Unload: MI_Module_Unload,
1320     pub dynamicProviderFT: *mut MI_ProviderFT,
1321 }
1322 impl ::core::marker::Copy for MI_Module {}
1323 impl ::core::clone::Clone for MI_Module {
clone(&self) -> Self1324     fn clone(&self) -> Self {
1325         *self
1326     }
1327 }
1328 pub type MI_Module_Load = unsafe extern "system" fn(self_: *mut *mut MI_Module_Self, context: *const MI_Context);
1329 #[repr(C)]
1330 pub struct MI_Module_Self(pub u8);
1331 pub type MI_Module_Unload = unsafe extern "system" fn(self_: *const MI_Module_Self, context: *const MI_Context);
1332 pub const MI_OPERATIONFLAGS_BASIC_RTTI: u32 = 2u32;
1333 pub const MI_OPERATIONFLAGS_DEFAULT_RTTI: u32 = 0u32;
1334 pub const MI_OPERATIONFLAGS_EXPENSIVE_PROPERTIES: u32 = 64u32;
1335 pub const MI_OPERATIONFLAGS_FULL_RTTI: u32 = 4u32;
1336 pub const MI_OPERATIONFLAGS_LOCALIZED_QUALIFIERS: u32 = 8u32;
1337 pub const MI_OPERATIONFLAGS_MANUAL_ACK_RESULTS: u32 = 1u32;
1338 pub const MI_OPERATIONFLAGS_NO_RTTI: u32 = 1024u32;
1339 pub const MI_OPERATIONFLAGS_POLYMORPHISM_DEEP_BASE_PROPS_ONLY: u32 = 384u32;
1340 pub const MI_OPERATIONFLAGS_POLYMORPHISM_SHALLOW: u32 = 128u32;
1341 pub const MI_OPERATIONFLAGS_REPORT_OPERATION_STARTED: u32 = 512u32;
1342 pub const MI_OPERATIONFLAGS_STANDARD_RTTI: u32 = 2048u32;
1343 #[repr(C)]
1344 pub struct MI_ObjectDecl {
1345     pub flags: u32,
1346     pub code: u32,
1347     pub name: *mut u16,
1348     pub qualifiers: *mut *mut MI_Qualifier,
1349     pub numQualifiers: u32,
1350     pub properties: *mut *mut MI_PropertyDecl,
1351     pub numProperties: u32,
1352     pub size: u32,
1353 }
1354 impl ::core::marker::Copy for MI_ObjectDecl {}
1355 impl ::core::clone::Clone for MI_ObjectDecl {
clone(&self) -> Self1356     fn clone(&self) -> Self {
1357         *self
1358     }
1359 }
1360 #[repr(C)]
1361 pub struct MI_Operation {
1362     pub reserved1: u64,
1363     pub reserved2: isize,
1364     pub ft: *mut MI_OperationFT,
1365 }
1366 impl ::core::marker::Copy for MI_Operation {}
1367 impl ::core::clone::Clone for MI_Operation {
clone(&self) -> Self1368     fn clone(&self) -> Self {
1369         *self
1370     }
1371 }
1372 pub type MI_OperationCallback_Class = unsafe extern "system" fn(operation: *const MI_Operation, callbackcontext: *const ::core::ffi::c_void, classresult: *const MI_Class, moreresults: u8, resultcode: MI_Result, errorstring: *const u16, errordetails: *const MI_Instance, resultacknowledgement: isize);
1373 pub type MI_OperationCallback_Indication = unsafe extern "system" fn(operation: *const MI_Operation, callbackcontext: *const ::core::ffi::c_void, instance: *const MI_Instance, bookmark: *const u16, machineid: *const u16, moreresults: u8, resultcode: MI_Result, errorstring: *const u16, errordetails: *const MI_Instance, resultacknowledgement: isize);
1374 pub type MI_OperationCallback_Instance = unsafe extern "system" fn(operation: *const MI_Operation, callbackcontext: *const ::core::ffi::c_void, instance: *const MI_Instance, moreresults: u8, resultcode: MI_Result, errorstring: *const u16, errordetails: *const MI_Instance, resultacknowledgement: isize);
1375 pub type MI_OperationCallback_PromptUser = unsafe extern "system" fn(operation: *const MI_Operation, callbackcontext: *const ::core::ffi::c_void, message: *const u16, prompttype: MI_PromptType, promptuserresult: isize);
1376 pub type MI_OperationCallback_ResponseType = i32;
1377 pub const MI_OperationCallback_ResponseType_No: MI_OperationCallback_ResponseType = 0i32;
1378 pub const MI_OperationCallback_ResponseType_Yes: MI_OperationCallback_ResponseType = 1i32;
1379 pub const MI_OperationCallback_ResponseType_NoToAll: MI_OperationCallback_ResponseType = 2i32;
1380 pub const MI_OperationCallback_ResponseType_YesToAll: MI_OperationCallback_ResponseType = 3i32;
1381 pub type MI_OperationCallback_StreamedParameter = unsafe extern "system" fn(operation: *const MI_Operation, callbackcontext: *const ::core::ffi::c_void, parametername: *const u16, resulttype: MI_Type, result: *const MI_Value, resultacknowledgement: isize);
1382 pub type MI_OperationCallback_WriteError = unsafe extern "system" fn(operation: *const MI_Operation, callbackcontext: *const ::core::ffi::c_void, instance: *const MI_Instance, writeerrorresult: isize);
1383 pub type MI_OperationCallback_WriteMessage = unsafe extern "system" fn(operation: *const MI_Operation, callbackcontext: *const ::core::ffi::c_void, channel: u32, message: *const u16);
1384 pub type MI_OperationCallback_WriteProgress = unsafe extern "system" fn(operation: *const MI_Operation, callbackcontext: *const ::core::ffi::c_void, activity: *const u16, currentoperation: *const u16, statusdescription: *const u16, percentagecomplete: u32, secondsremaining: u32);
1385 #[repr(C)]
1386 pub struct MI_OperationCallbacks {
1387     pub callbackContext: *mut ::core::ffi::c_void,
1388     pub promptUser: MI_OperationCallback_PromptUser,
1389     pub writeError: MI_OperationCallback_WriteError,
1390     pub writeMessage: MI_OperationCallback_WriteMessage,
1391     pub writeProgress: MI_OperationCallback_WriteProgress,
1392     pub instanceResult: MI_OperationCallback_Instance,
1393     pub indicationResult: MI_OperationCallback_Indication,
1394     pub classResult: MI_OperationCallback_Class,
1395     pub streamedParameterResult: MI_OperationCallback_StreamedParameter,
1396 }
1397 impl ::core::marker::Copy for MI_OperationCallbacks {}
1398 impl ::core::clone::Clone for MI_OperationCallbacks {
clone(&self) -> Self1399     fn clone(&self) -> Self {
1400         *self
1401     }
1402 }
1403 #[repr(C)]
1404 pub struct MI_OperationFT {
1405     pub Close: isize,
1406     pub Cancel: isize,
1407     pub GetSession: isize,
1408     pub GetInstance: isize,
1409     pub GetIndication: isize,
1410     pub GetClass: isize,
1411 }
1412 impl ::core::marker::Copy for MI_OperationFT {}
1413 impl ::core::clone::Clone for MI_OperationFT {
clone(&self) -> Self1414     fn clone(&self) -> Self {
1415         *self
1416     }
1417 }
1418 #[repr(C)]
1419 pub struct MI_OperationOptions {
1420     pub reserved1: u64,
1421     pub reserved2: isize,
1422     pub ft: *mut MI_OperationOptionsFT,
1423 }
1424 impl ::core::marker::Copy for MI_OperationOptions {}
1425 impl ::core::clone::Clone for MI_OperationOptions {
clone(&self) -> Self1426     fn clone(&self) -> Self {
1427         *self
1428     }
1429 }
1430 #[repr(C)]
1431 pub struct MI_OperationOptionsFT {
1432     pub Delete: isize,
1433     pub SetString: isize,
1434     pub SetNumber: isize,
1435     pub SetCustomOption: isize,
1436     pub GetString: isize,
1437     pub GetNumber: isize,
1438     pub GetOptionCount: isize,
1439     pub GetOptionAt: isize,
1440     pub GetOption: isize,
1441     pub GetEnabledChannels: isize,
1442     pub Clone: isize,
1443     pub SetInterval: isize,
1444     pub GetInterval: isize,
1445 }
1446 impl ::core::marker::Copy for MI_OperationOptionsFT {}
1447 impl ::core::clone::Clone for MI_OperationOptionsFT {
clone(&self) -> Self1448     fn clone(&self) -> Self {
1449         *self
1450     }
1451 }
1452 #[repr(C)]
1453 pub struct MI_ParameterDecl {
1454     pub flags: u32,
1455     pub code: u32,
1456     pub name: *mut u16,
1457     pub qualifiers: *mut *mut MI_Qualifier,
1458     pub numQualifiers: u32,
1459     pub r#type: u32,
1460     pub className: *mut u16,
1461     pub subscript: u32,
1462     pub offset: u32,
1463 }
1464 impl ::core::marker::Copy for MI_ParameterDecl {}
1465 impl ::core::clone::Clone for MI_ParameterDecl {
clone(&self) -> Self1466     fn clone(&self) -> Self {
1467         *self
1468     }
1469 }
1470 #[repr(C)]
1471 pub struct MI_ParameterSet {
1472     pub reserved1: u64,
1473     pub reserved2: isize,
1474     pub ft: *mut MI_ParameterSetFT,
1475 }
1476 impl ::core::marker::Copy for MI_ParameterSet {}
1477 impl ::core::clone::Clone for MI_ParameterSet {
clone(&self) -> Self1478     fn clone(&self) -> Self {
1479         *self
1480     }
1481 }
1482 #[repr(C)]
1483 pub struct MI_ParameterSetFT {
1484     pub GetMethodReturnType: isize,
1485     pub GetParameterCount: isize,
1486     pub GetParameterAt: isize,
1487     pub GetParameter: isize,
1488 }
1489 impl ::core::marker::Copy for MI_ParameterSetFT {}
1490 impl ::core::clone::Clone for MI_ParameterSetFT {
clone(&self) -> Self1491     fn clone(&self) -> Self {
1492         *self
1493     }
1494 }
1495 pub type MI_PromptType = i32;
1496 pub const MI_PROMPTTYPE_NORMAL: MI_PromptType = 0i32;
1497 pub const MI_PROMPTTYPE_CRITICAL: MI_PromptType = 1i32;
1498 #[repr(C)]
1499 pub struct MI_PropertyDecl {
1500     pub flags: u32,
1501     pub code: u32,
1502     pub name: *mut u16,
1503     pub qualifiers: *mut *mut MI_Qualifier,
1504     pub numQualifiers: u32,
1505     pub r#type: u32,
1506     pub className: *mut u16,
1507     pub subscript: u32,
1508     pub offset: u32,
1509     pub origin: *mut u16,
1510     pub propagator: *mut u16,
1511     pub value: *mut ::core::ffi::c_void,
1512 }
1513 impl ::core::marker::Copy for MI_PropertyDecl {}
1514 impl ::core::clone::Clone for MI_PropertyDecl {
clone(&self) -> Self1515     fn clone(&self) -> Self {
1516         *self
1517     }
1518 }
1519 #[repr(C)]
1520 pub struct MI_PropertySet {
1521     pub ft: *mut MI_PropertySetFT,
1522     pub reserved: [isize; 3],
1523 }
1524 impl ::core::marker::Copy for MI_PropertySet {}
1525 impl ::core::clone::Clone for MI_PropertySet {
clone(&self) -> Self1526     fn clone(&self) -> Self {
1527         *self
1528     }
1529 }
1530 #[repr(C)]
1531 pub struct MI_PropertySetFT {
1532     pub GetElementCount: isize,
1533     pub ContainsElement: isize,
1534     pub AddElement: isize,
1535     pub GetElementAt: isize,
1536     pub Clear: isize,
1537     pub Destruct: isize,
1538     pub Delete: isize,
1539     pub Clone: isize,
1540 }
1541 impl ::core::marker::Copy for MI_PropertySetFT {}
1542 impl ::core::clone::Clone for MI_PropertySetFT {
clone(&self) -> Self1543     fn clone(&self) -> Self {
1544         *self
1545     }
1546 }
1547 pub type MI_ProviderArchitecture = i32;
1548 pub const MI_PROVIDER_ARCHITECTURE_32BIT: MI_ProviderArchitecture = 0i32;
1549 pub const MI_PROVIDER_ARCHITECTURE_64BIT: MI_ProviderArchitecture = 1i32;
1550 #[repr(C)]
1551 pub struct MI_ProviderFT {
1552     pub Load: MI_ProviderFT_Load,
1553     pub Unload: MI_ProviderFT_Unload,
1554     pub GetInstance: MI_ProviderFT_GetInstance,
1555     pub EnumerateInstances: MI_ProviderFT_EnumerateInstances,
1556     pub CreateInstance: MI_ProviderFT_CreateInstance,
1557     pub ModifyInstance: MI_ProviderFT_ModifyInstance,
1558     pub DeleteInstance: MI_ProviderFT_DeleteInstance,
1559     pub AssociatorInstances: MI_ProviderFT_AssociatorInstances,
1560     pub ReferenceInstances: MI_ProviderFT_ReferenceInstances,
1561     pub EnableIndications: MI_ProviderFT_EnableIndications,
1562     pub DisableIndications: MI_ProviderFT_DisableIndications,
1563     pub Subscribe: MI_ProviderFT_Subscribe,
1564     pub Unsubscribe: MI_ProviderFT_Unsubscribe,
1565     pub Invoke: MI_ProviderFT_Invoke,
1566 }
1567 impl ::core::marker::Copy for MI_ProviderFT {}
1568 impl ::core::clone::Clone for MI_ProviderFT {
clone(&self) -> Self1569     fn clone(&self) -> Self {
1570         *self
1571     }
1572 }
1573 pub type MI_ProviderFT_AssociatorInstances = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, instancename: *const MI_Instance, resultclass: *const u16, role: *const u16, resultrole: *const u16, propertyset: *const MI_PropertySet, keysonly: u8, filter: *const MI_Filter);
1574 pub type MI_ProviderFT_CreateInstance = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, newinstance: *const MI_Instance);
1575 pub type MI_ProviderFT_DeleteInstance = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, instancename: *const MI_Instance);
1576 pub type MI_ProviderFT_DisableIndications = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, indicationscontext: *const MI_Context, namespace: *const u16, classname: *const u16);
1577 pub type MI_ProviderFT_EnableIndications = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, indicationscontext: *const MI_Context, namespace: *const u16, classname: *const u16);
1578 pub type MI_ProviderFT_EnumerateInstances = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, propertyset: *const MI_PropertySet, keysonly: u8, filter: *const MI_Filter);
1579 pub type MI_ProviderFT_GetInstance = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, instancename: *const MI_Instance, propertyset: *const MI_PropertySet);
1580 pub type MI_ProviderFT_Invoke = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, methodname: *const u16, instancename: *const MI_Instance, inputparameters: *const MI_Instance);
1581 pub type MI_ProviderFT_Load = unsafe extern "system" fn(self_: *mut *mut ::core::ffi::c_void, selfmodule: *const MI_Module_Self, context: *const MI_Context);
1582 pub type MI_ProviderFT_ModifyInstance = unsafe extern "system" fn(self_: *mut ::core::ffi::c_void, context: *mut MI_Context, namespace: *const u16, classname: *const u16, modifiedinstance: *const MI_Instance, propertyset: *const MI_PropertySet);
1583 pub type MI_ProviderFT_ReferenceInstances = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, instancename: *const MI_Instance, role: *const u16, propertyset: *const MI_PropertySet, keysonly: u8, filter: *const MI_Filter);
1584 pub type MI_ProviderFT_Subscribe = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, filter: *const MI_Filter, bookmark: *const u16, subscriptionid: u64, subscriptionself: *mut *mut ::core::ffi::c_void);
1585 pub type MI_ProviderFT_Unload = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context);
1586 pub type MI_ProviderFT_Unsubscribe = unsafe extern "system" fn(self_: *const ::core::ffi::c_void, context: *const MI_Context, namespace: *const u16, classname: *const u16, subscriptionid: u64, subscriptionself: *const ::core::ffi::c_void);
1587 #[repr(C)]
1588 pub struct MI_Qualifier {
1589     pub name: *mut u16,
1590     pub r#type: u32,
1591     pub flavor: u32,
1592     pub value: *mut ::core::ffi::c_void,
1593 }
1594 impl ::core::marker::Copy for MI_Qualifier {}
1595 impl ::core::clone::Clone for MI_Qualifier {
clone(&self) -> Self1596     fn clone(&self) -> Self {
1597         *self
1598     }
1599 }
1600 #[repr(C)]
1601 pub struct MI_QualifierDecl {
1602     pub name: *mut u16,
1603     pub r#type: u32,
1604     pub scope: u32,
1605     pub flavor: u32,
1606     pub subscript: u32,
1607     pub value: *mut ::core::ffi::c_void,
1608 }
1609 impl ::core::marker::Copy for MI_QualifierDecl {}
1610 impl ::core::clone::Clone for MI_QualifierDecl {
clone(&self) -> Self1611     fn clone(&self) -> Self {
1612         *self
1613     }
1614 }
1615 #[repr(C)]
1616 pub struct MI_QualifierSet {
1617     pub reserved1: u64,
1618     pub reserved2: isize,
1619     pub ft: *mut MI_QualifierSetFT,
1620 }
1621 impl ::core::marker::Copy for MI_QualifierSet {}
1622 impl ::core::clone::Clone for MI_QualifierSet {
clone(&self) -> Self1623     fn clone(&self) -> Self {
1624         *self
1625     }
1626 }
1627 #[repr(C)]
1628 pub struct MI_QualifierSetFT {
1629     pub GetQualifierCount: isize,
1630     pub GetQualifierAt: isize,
1631     pub GetQualifier: isize,
1632 }
1633 impl ::core::marker::Copy for MI_QualifierSetFT {}
1634 impl ::core::clone::Clone for MI_QualifierSetFT {
clone(&self) -> Self1635     fn clone(&self) -> Self {
1636         *self
1637     }
1638 }
1639 #[repr(C)]
1640 pub struct MI_Real32A {
1641     pub data: *mut f32,
1642     pub size: u32,
1643 }
1644 impl ::core::marker::Copy for MI_Real32A {}
1645 impl ::core::clone::Clone for MI_Real32A {
clone(&self) -> Self1646     fn clone(&self) -> Self {
1647         *self
1648     }
1649 }
1650 #[repr(C)]
1651 pub struct MI_Real32AField {
1652     pub value: MI_Real32A,
1653     pub exists: u8,
1654     pub flags: u8,
1655 }
1656 impl ::core::marker::Copy for MI_Real32AField {}
1657 impl ::core::clone::Clone for MI_Real32AField {
clone(&self) -> Self1658     fn clone(&self) -> Self {
1659         *self
1660     }
1661 }
1662 #[repr(C)]
1663 pub struct MI_Real32Field {
1664     pub value: f32,
1665     pub exists: u8,
1666     pub flags: u8,
1667 }
1668 impl ::core::marker::Copy for MI_Real32Field {}
1669 impl ::core::clone::Clone for MI_Real32Field {
clone(&self) -> Self1670     fn clone(&self) -> Self {
1671         *self
1672     }
1673 }
1674 #[repr(C)]
1675 pub struct MI_Real64A {
1676     pub data: *mut f64,
1677     pub size: u32,
1678 }
1679 impl ::core::marker::Copy for MI_Real64A {}
1680 impl ::core::clone::Clone for MI_Real64A {
clone(&self) -> Self1681     fn clone(&self) -> Self {
1682         *self
1683     }
1684 }
1685 #[repr(C)]
1686 pub struct MI_Real64AField {
1687     pub value: MI_Real64A,
1688     pub exists: u8,
1689     pub flags: u8,
1690 }
1691 impl ::core::marker::Copy for MI_Real64AField {}
1692 impl ::core::clone::Clone for MI_Real64AField {
clone(&self) -> Self1693     fn clone(&self) -> Self {
1694         *self
1695     }
1696 }
1697 #[repr(C)]
1698 pub struct MI_Real64Field {
1699     pub value: f64,
1700     pub exists: u8,
1701     pub flags: u8,
1702 }
1703 impl ::core::marker::Copy for MI_Real64Field {}
1704 impl ::core::clone::Clone for MI_Real64Field {
clone(&self) -> Self1705     fn clone(&self) -> Self {
1706         *self
1707     }
1708 }
1709 #[repr(C)]
1710 pub struct MI_ReferenceA {
1711     pub data: *mut *mut MI_Instance,
1712     pub size: u32,
1713 }
1714 impl ::core::marker::Copy for MI_ReferenceA {}
1715 impl ::core::clone::Clone for MI_ReferenceA {
clone(&self) -> Self1716     fn clone(&self) -> Self {
1717         *self
1718     }
1719 }
1720 #[repr(C)]
1721 pub struct MI_ReferenceAField {
1722     pub value: MI_ReferenceA,
1723     pub exists: u8,
1724     pub flags: u8,
1725 }
1726 impl ::core::marker::Copy for MI_ReferenceAField {}
1727 impl ::core::clone::Clone for MI_ReferenceAField {
clone(&self) -> Self1728     fn clone(&self) -> Self {
1729         *self
1730     }
1731 }
1732 #[repr(C)]
1733 pub struct MI_ReferenceField {
1734     pub value: *mut MI_Instance,
1735     pub exists: u8,
1736     pub flags: u8,
1737 }
1738 impl ::core::marker::Copy for MI_ReferenceField {}
1739 impl ::core::clone::Clone for MI_ReferenceField {
clone(&self) -> Self1740     fn clone(&self) -> Self {
1741         *self
1742     }
1743 }
1744 pub type MI_Result = i32;
1745 pub const MI_RESULT_OK: MI_Result = 0i32;
1746 pub const MI_RESULT_FAILED: MI_Result = 1i32;
1747 pub const MI_RESULT_ACCESS_DENIED: MI_Result = 2i32;
1748 pub const MI_RESULT_INVALID_NAMESPACE: MI_Result = 3i32;
1749 pub const MI_RESULT_INVALID_PARAMETER: MI_Result = 4i32;
1750 pub const MI_RESULT_INVALID_CLASS: MI_Result = 5i32;
1751 pub const MI_RESULT_NOT_FOUND: MI_Result = 6i32;
1752 pub const MI_RESULT_NOT_SUPPORTED: MI_Result = 7i32;
1753 pub const MI_RESULT_CLASS_HAS_CHILDREN: MI_Result = 8i32;
1754 pub const MI_RESULT_CLASS_HAS_INSTANCES: MI_Result = 9i32;
1755 pub const MI_RESULT_INVALID_SUPERCLASS: MI_Result = 10i32;
1756 pub const MI_RESULT_ALREADY_EXISTS: MI_Result = 11i32;
1757 pub const MI_RESULT_NO_SUCH_PROPERTY: MI_Result = 12i32;
1758 pub const MI_RESULT_TYPE_MISMATCH: MI_Result = 13i32;
1759 pub const MI_RESULT_QUERY_LANGUAGE_NOT_SUPPORTED: MI_Result = 14i32;
1760 pub const MI_RESULT_INVALID_QUERY: MI_Result = 15i32;
1761 pub const MI_RESULT_METHOD_NOT_AVAILABLE: MI_Result = 16i32;
1762 pub const MI_RESULT_METHOD_NOT_FOUND: MI_Result = 17i32;
1763 pub const MI_RESULT_NAMESPACE_NOT_EMPTY: MI_Result = 20i32;
1764 pub const MI_RESULT_INVALID_ENUMERATION_CONTEXT: MI_Result = 21i32;
1765 pub const MI_RESULT_INVALID_OPERATION_TIMEOUT: MI_Result = 22i32;
1766 pub const MI_RESULT_PULL_HAS_BEEN_ABANDONED: MI_Result = 23i32;
1767 pub const MI_RESULT_PULL_CANNOT_BE_ABANDONED: MI_Result = 24i32;
1768 pub const MI_RESULT_FILTERED_ENUMERATION_NOT_SUPPORTED: MI_Result = 25i32;
1769 pub const MI_RESULT_CONTINUATION_ON_ERROR_NOT_SUPPORTED: MI_Result = 26i32;
1770 pub const MI_RESULT_SERVER_LIMITS_EXCEEDED: MI_Result = 27i32;
1771 pub const MI_RESULT_SERVER_IS_SHUTTING_DOWN: MI_Result = 28i32;
1772 pub const MI_SERIALIZER_FLAGS_CLASS_DEEP: u32 = 1u32;
1773 pub const MI_SERIALIZER_FLAGS_INSTANCE_WITH_CLASS: u32 = 1u32;
1774 #[repr(C)]
1775 pub struct MI_SchemaDecl {
1776     pub qualifierDecls: *mut *mut MI_QualifierDecl,
1777     pub numQualifierDecls: u32,
1778     pub classDecls: *mut *mut MI_ClassDecl,
1779     pub numClassDecls: u32,
1780 }
1781 impl ::core::marker::Copy for MI_SchemaDecl {}
1782 impl ::core::clone::Clone for MI_SchemaDecl {
clone(&self) -> Self1783     fn clone(&self) -> Self {
1784         *self
1785     }
1786 }
1787 #[repr(C)]
1788 pub struct MI_Serializer {
1789     pub reserved1: u64,
1790     pub reserved2: isize,
1791 }
1792 impl ::core::marker::Copy for MI_Serializer {}
1793 impl ::core::clone::Clone for MI_Serializer {
clone(&self) -> Self1794     fn clone(&self) -> Self {
1795         *self
1796     }
1797 }
1798 #[repr(C)]
1799 pub struct MI_SerializerFT {
1800     pub Close: isize,
1801     pub SerializeClass: isize,
1802     pub SerializeInstance: isize,
1803 }
1804 impl ::core::marker::Copy for MI_SerializerFT {}
1805 impl ::core::clone::Clone for MI_SerializerFT {
clone(&self) -> Self1806     fn clone(&self) -> Self {
1807         *self
1808     }
1809 }
1810 #[repr(C)]
1811 pub struct MI_Server {
1812     pub serverFT: *mut MI_ServerFT,
1813     pub contextFT: *mut MI_ContextFT,
1814     pub instanceFT: *mut MI_InstanceFT,
1815     pub propertySetFT: *mut MI_PropertySetFT,
1816     pub filterFT: *mut MI_FilterFT,
1817 }
1818 impl ::core::marker::Copy for MI_Server {}
1819 impl ::core::clone::Clone for MI_Server {
clone(&self) -> Self1820     fn clone(&self) -> Self {
1821         *self
1822     }
1823 }
1824 #[repr(C)]
1825 pub struct MI_ServerFT {
1826     pub GetVersion: isize,
1827     pub GetSystemName: isize,
1828 }
1829 impl ::core::marker::Copy for MI_ServerFT {}
1830 impl ::core::clone::Clone for MI_ServerFT {
clone(&self) -> Self1831     fn clone(&self) -> Self {
1832         *self
1833     }
1834 }
1835 #[repr(C)]
1836 pub struct MI_Session {
1837     pub reserved1: u64,
1838     pub reserved2: isize,
1839     pub ft: *mut MI_SessionFT,
1840 }
1841 impl ::core::marker::Copy for MI_Session {}
1842 impl ::core::clone::Clone for MI_Session {
clone(&self) -> Self1843     fn clone(&self) -> Self {
1844         *self
1845     }
1846 }
1847 #[repr(C)]
1848 pub struct MI_SessionCallbacks {
1849     pub callbackContext: *mut ::core::ffi::c_void,
1850     pub writeMessage: isize,
1851     pub writeError: isize,
1852 }
1853 impl ::core::marker::Copy for MI_SessionCallbacks {}
1854 impl ::core::clone::Clone for MI_SessionCallbacks {
clone(&self) -> Self1855     fn clone(&self) -> Self {
1856         *self
1857     }
1858 }
1859 #[repr(C)]
1860 pub struct MI_SessionFT {
1861     pub Close: isize,
1862     pub GetApplication: isize,
1863     pub GetInstance: isize,
1864     pub ModifyInstance: isize,
1865     pub CreateInstance: isize,
1866     pub DeleteInstance: isize,
1867     pub Invoke: isize,
1868     pub EnumerateInstances: isize,
1869     pub QueryInstances: isize,
1870     pub AssociatorInstances: isize,
1871     pub ReferenceInstances: isize,
1872     pub Subscribe: isize,
1873     pub GetClass: isize,
1874     pub EnumerateClasses: isize,
1875     pub TestConnection: isize,
1876 }
1877 impl ::core::marker::Copy for MI_SessionFT {}
1878 impl ::core::clone::Clone for MI_SessionFT {
clone(&self) -> Self1879     fn clone(&self) -> Self {
1880         *self
1881     }
1882 }
1883 #[repr(C)]
1884 pub struct MI_Sint16A {
1885     pub data: *mut i16,
1886     pub size: u32,
1887 }
1888 impl ::core::marker::Copy for MI_Sint16A {}
1889 impl ::core::clone::Clone for MI_Sint16A {
clone(&self) -> Self1890     fn clone(&self) -> Self {
1891         *self
1892     }
1893 }
1894 #[repr(C)]
1895 pub struct MI_Sint16AField {
1896     pub value: MI_Sint16A,
1897     pub exists: u8,
1898     pub flags: u8,
1899 }
1900 impl ::core::marker::Copy for MI_Sint16AField {}
1901 impl ::core::clone::Clone for MI_Sint16AField {
clone(&self) -> Self1902     fn clone(&self) -> Self {
1903         *self
1904     }
1905 }
1906 #[repr(C)]
1907 pub struct MI_Sint16Field {
1908     pub value: i16,
1909     pub exists: u8,
1910     pub flags: u8,
1911 }
1912 impl ::core::marker::Copy for MI_Sint16Field {}
1913 impl ::core::clone::Clone for MI_Sint16Field {
clone(&self) -> Self1914     fn clone(&self) -> Self {
1915         *self
1916     }
1917 }
1918 #[repr(C)]
1919 pub struct MI_Sint32A {
1920     pub data: *mut i32,
1921     pub size: u32,
1922 }
1923 impl ::core::marker::Copy for MI_Sint32A {}
1924 impl ::core::clone::Clone for MI_Sint32A {
clone(&self) -> Self1925     fn clone(&self) -> Self {
1926         *self
1927     }
1928 }
1929 #[repr(C)]
1930 pub struct MI_Sint32AField {
1931     pub value: MI_Sint32A,
1932     pub exists: u8,
1933     pub flags: u8,
1934 }
1935 impl ::core::marker::Copy for MI_Sint32AField {}
1936 impl ::core::clone::Clone for MI_Sint32AField {
clone(&self) -> Self1937     fn clone(&self) -> Self {
1938         *self
1939     }
1940 }
1941 #[repr(C)]
1942 pub struct MI_Sint32Field {
1943     pub value: i32,
1944     pub exists: u8,
1945     pub flags: u8,
1946 }
1947 impl ::core::marker::Copy for MI_Sint32Field {}
1948 impl ::core::clone::Clone for MI_Sint32Field {
clone(&self) -> Self1949     fn clone(&self) -> Self {
1950         *self
1951     }
1952 }
1953 #[repr(C)]
1954 pub struct MI_Sint64A {
1955     pub data: *mut i64,
1956     pub size: u32,
1957 }
1958 impl ::core::marker::Copy for MI_Sint64A {}
1959 impl ::core::clone::Clone for MI_Sint64A {
clone(&self) -> Self1960     fn clone(&self) -> Self {
1961         *self
1962     }
1963 }
1964 #[repr(C)]
1965 pub struct MI_Sint64AField {
1966     pub value: MI_Sint64A,
1967     pub exists: u8,
1968     pub flags: u8,
1969 }
1970 impl ::core::marker::Copy for MI_Sint64AField {}
1971 impl ::core::clone::Clone for MI_Sint64AField {
clone(&self) -> Self1972     fn clone(&self) -> Self {
1973         *self
1974     }
1975 }
1976 #[repr(C)]
1977 pub struct MI_Sint64Field {
1978     pub value: i64,
1979     pub exists: u8,
1980     pub flags: u8,
1981 }
1982 impl ::core::marker::Copy for MI_Sint64Field {}
1983 impl ::core::clone::Clone for MI_Sint64Field {
clone(&self) -> Self1984     fn clone(&self) -> Self {
1985         *self
1986     }
1987 }
1988 #[repr(C)]
1989 pub struct MI_Sint8A {
1990     pub data: *mut i8,
1991     pub size: u32,
1992 }
1993 impl ::core::marker::Copy for MI_Sint8A {}
1994 impl ::core::clone::Clone for MI_Sint8A {
clone(&self) -> Self1995     fn clone(&self) -> Self {
1996         *self
1997     }
1998 }
1999 #[repr(C)]
2000 pub struct MI_Sint8AField {
2001     pub value: MI_Sint8A,
2002     pub exists: u8,
2003     pub flags: u8,
2004 }
2005 impl ::core::marker::Copy for MI_Sint8AField {}
2006 impl ::core::clone::Clone for MI_Sint8AField {
clone(&self) -> Self2007     fn clone(&self) -> Self {
2008         *self
2009     }
2010 }
2011 #[repr(C)]
2012 pub struct MI_Sint8Field {
2013     pub value: i8,
2014     pub exists: u8,
2015     pub flags: u8,
2016 }
2017 impl ::core::marker::Copy for MI_Sint8Field {}
2018 impl ::core::clone::Clone for MI_Sint8Field {
clone(&self) -> Self2019     fn clone(&self) -> Self {
2020         *self
2021     }
2022 }
2023 #[repr(C)]
2024 pub struct MI_StringA {
2025     pub data: *mut *mut u16,
2026     pub size: u32,
2027 }
2028 impl ::core::marker::Copy for MI_StringA {}
2029 impl ::core::clone::Clone for MI_StringA {
clone(&self) -> Self2030     fn clone(&self) -> Self {
2031         *self
2032     }
2033 }
2034 #[repr(C)]
2035 pub struct MI_StringAField {
2036     pub value: MI_StringA,
2037     pub exists: u8,
2038     pub flags: u8,
2039 }
2040 impl ::core::marker::Copy for MI_StringAField {}
2041 impl ::core::clone::Clone for MI_StringAField {
clone(&self) -> Self2042     fn clone(&self) -> Self {
2043         *self
2044     }
2045 }
2046 #[repr(C)]
2047 pub struct MI_StringField {
2048     pub value: *mut u16,
2049     pub exists: u8,
2050     pub flags: u8,
2051 }
2052 impl ::core::marker::Copy for MI_StringField {}
2053 impl ::core::clone::Clone for MI_StringField {
clone(&self) -> Self2054     fn clone(&self) -> Self {
2055         *self
2056     }
2057 }
2058 #[repr(C)]
2059 pub struct MI_SubscriptionDeliveryOptions {
2060     pub reserved1: u64,
2061     pub reserved2: isize,
2062     pub ft: *mut MI_SubscriptionDeliveryOptionsFT,
2063 }
2064 impl ::core::marker::Copy for MI_SubscriptionDeliveryOptions {}
2065 impl ::core::clone::Clone for MI_SubscriptionDeliveryOptions {
clone(&self) -> Self2066     fn clone(&self) -> Self {
2067         *self
2068     }
2069 }
2070 #[repr(C)]
2071 pub struct MI_SubscriptionDeliveryOptionsFT {
2072     pub SetString: isize,
2073     pub SetNumber: isize,
2074     pub SetDateTime: isize,
2075     pub SetInterval: isize,
2076     pub AddCredentials: isize,
2077     pub Delete: isize,
2078     pub GetString: isize,
2079     pub GetNumber: isize,
2080     pub GetDateTime: isize,
2081     pub GetInterval: isize,
2082     pub GetOptionCount: isize,
2083     pub GetOptionAt: isize,
2084     pub GetOption: isize,
2085     pub GetCredentialsCount: isize,
2086     pub GetCredentialsAt: isize,
2087     pub GetCredentialsPasswordAt: isize,
2088     pub Clone: isize,
2089 }
2090 impl ::core::marker::Copy for MI_SubscriptionDeliveryOptionsFT {}
2091 impl ::core::clone::Clone for MI_SubscriptionDeliveryOptionsFT {
clone(&self) -> Self2092     fn clone(&self) -> Self {
2093         *self
2094     }
2095 }
2096 pub type MI_SubscriptionDeliveryType = i32;
2097 pub const MI_SubscriptionDeliveryType_Pull: MI_SubscriptionDeliveryType = 1i32;
2098 pub const MI_SubscriptionDeliveryType_Push: MI_SubscriptionDeliveryType = 2i32;
2099 #[repr(C)]
2100 pub struct MI_Timestamp {
2101     pub year: u32,
2102     pub month: u32,
2103     pub day: u32,
2104     pub hour: u32,
2105     pub minute: u32,
2106     pub second: u32,
2107     pub microseconds: u32,
2108     pub utc: i32,
2109 }
2110 impl ::core::marker::Copy for MI_Timestamp {}
2111 impl ::core::clone::Clone for MI_Timestamp {
clone(&self) -> Self2112     fn clone(&self) -> Self {
2113         *self
2114     }
2115 }
2116 pub type MI_Type = i32;
2117 pub const MI_BOOLEAN: MI_Type = 0i32;
2118 pub const MI_UINT8: MI_Type = 1i32;
2119 pub const MI_SINT8: MI_Type = 2i32;
2120 pub const MI_UINT16: MI_Type = 3i32;
2121 pub const MI_SINT16: MI_Type = 4i32;
2122 pub const MI_UINT32: MI_Type = 5i32;
2123 pub const MI_SINT32: MI_Type = 6i32;
2124 pub const MI_UINT64: MI_Type = 7i32;
2125 pub const MI_SINT64: MI_Type = 8i32;
2126 pub const MI_REAL32: MI_Type = 9i32;
2127 pub const MI_REAL64: MI_Type = 10i32;
2128 pub const MI_CHAR16: MI_Type = 11i32;
2129 pub const MI_DATETIME: MI_Type = 12i32;
2130 pub const MI_STRING: MI_Type = 13i32;
2131 pub const MI_REFERENCE: MI_Type = 14i32;
2132 pub const MI_INSTANCE: MI_Type = 15i32;
2133 pub const MI_BOOLEANA: MI_Type = 16i32;
2134 pub const MI_UINT8A: MI_Type = 17i32;
2135 pub const MI_SINT8A: MI_Type = 18i32;
2136 pub const MI_UINT16A: MI_Type = 19i32;
2137 pub const MI_SINT16A: MI_Type = 20i32;
2138 pub const MI_UINT32A: MI_Type = 21i32;
2139 pub const MI_SINT32A: MI_Type = 22i32;
2140 pub const MI_UINT64A: MI_Type = 23i32;
2141 pub const MI_SINT64A: MI_Type = 24i32;
2142 pub const MI_REAL32A: MI_Type = 25i32;
2143 pub const MI_REAL64A: MI_Type = 26i32;
2144 pub const MI_CHAR16A: MI_Type = 27i32;
2145 pub const MI_DATETIMEA: MI_Type = 28i32;
2146 pub const MI_STRINGA: MI_Type = 29i32;
2147 pub const MI_REFERENCEA: MI_Type = 30i32;
2148 pub const MI_INSTANCEA: MI_Type = 31i32;
2149 pub const MI_ARRAY: MI_Type = 16i32;
2150 #[repr(C)]
2151 pub struct MI_Uint16A {
2152     pub data: *mut u16,
2153     pub size: u32,
2154 }
2155 impl ::core::marker::Copy for MI_Uint16A {}
2156 impl ::core::clone::Clone for MI_Uint16A {
clone(&self) -> Self2157     fn clone(&self) -> Self {
2158         *self
2159     }
2160 }
2161 #[repr(C)]
2162 pub struct MI_Uint16AField {
2163     pub value: MI_Uint16A,
2164     pub exists: u8,
2165     pub flags: u8,
2166 }
2167 impl ::core::marker::Copy for MI_Uint16AField {}
2168 impl ::core::clone::Clone for MI_Uint16AField {
clone(&self) -> Self2169     fn clone(&self) -> Self {
2170         *self
2171     }
2172 }
2173 #[repr(C)]
2174 pub struct MI_Uint16Field {
2175     pub value: u16,
2176     pub exists: u8,
2177     pub flags: u8,
2178 }
2179 impl ::core::marker::Copy for MI_Uint16Field {}
2180 impl ::core::clone::Clone for MI_Uint16Field {
clone(&self) -> Self2181     fn clone(&self) -> Self {
2182         *self
2183     }
2184 }
2185 #[repr(C)]
2186 pub struct MI_Uint32A {
2187     pub data: *mut u32,
2188     pub size: u32,
2189 }
2190 impl ::core::marker::Copy for MI_Uint32A {}
2191 impl ::core::clone::Clone for MI_Uint32A {
clone(&self) -> Self2192     fn clone(&self) -> Self {
2193         *self
2194     }
2195 }
2196 #[repr(C)]
2197 pub struct MI_Uint32AField {
2198     pub value: MI_Uint32A,
2199     pub exists: u8,
2200     pub flags: u8,
2201 }
2202 impl ::core::marker::Copy for MI_Uint32AField {}
2203 impl ::core::clone::Clone for MI_Uint32AField {
clone(&self) -> Self2204     fn clone(&self) -> Self {
2205         *self
2206     }
2207 }
2208 #[repr(C)]
2209 pub struct MI_Uint32Field {
2210     pub value: u32,
2211     pub exists: u8,
2212     pub flags: u8,
2213 }
2214 impl ::core::marker::Copy for MI_Uint32Field {}
2215 impl ::core::clone::Clone for MI_Uint32Field {
clone(&self) -> Self2216     fn clone(&self) -> Self {
2217         *self
2218     }
2219 }
2220 #[repr(C)]
2221 pub struct MI_Uint64A {
2222     pub data: *mut u64,
2223     pub size: u32,
2224 }
2225 impl ::core::marker::Copy for MI_Uint64A {}
2226 impl ::core::clone::Clone for MI_Uint64A {
clone(&self) -> Self2227     fn clone(&self) -> Self {
2228         *self
2229     }
2230 }
2231 #[repr(C)]
2232 pub struct MI_Uint64AField {
2233     pub value: MI_Uint64A,
2234     pub exists: u8,
2235     pub flags: u8,
2236 }
2237 impl ::core::marker::Copy for MI_Uint64AField {}
2238 impl ::core::clone::Clone for MI_Uint64AField {
clone(&self) -> Self2239     fn clone(&self) -> Self {
2240         *self
2241     }
2242 }
2243 #[repr(C)]
2244 pub struct MI_Uint64Field {
2245     pub value: u64,
2246     pub exists: u8,
2247     pub flags: u8,
2248 }
2249 impl ::core::marker::Copy for MI_Uint64Field {}
2250 impl ::core::clone::Clone for MI_Uint64Field {
clone(&self) -> Self2251     fn clone(&self) -> Self {
2252         *self
2253     }
2254 }
2255 #[repr(C)]
2256 pub struct MI_Uint8A {
2257     pub data: *mut u8,
2258     pub size: u32,
2259 }
2260 impl ::core::marker::Copy for MI_Uint8A {}
2261 impl ::core::clone::Clone for MI_Uint8A {
clone(&self) -> Self2262     fn clone(&self) -> Self {
2263         *self
2264     }
2265 }
2266 #[repr(C)]
2267 pub struct MI_Uint8AField {
2268     pub value: MI_Uint8A,
2269     pub exists: u8,
2270     pub flags: u8,
2271 }
2272 impl ::core::marker::Copy for MI_Uint8AField {}
2273 impl ::core::clone::Clone for MI_Uint8AField {
clone(&self) -> Self2274     fn clone(&self) -> Self {
2275         *self
2276     }
2277 }
2278 #[repr(C)]
2279 pub struct MI_Uint8Field {
2280     pub value: u8,
2281     pub exists: u8,
2282     pub flags: u8,
2283 }
2284 impl ::core::marker::Copy for MI_Uint8Field {}
2285 impl ::core::clone::Clone for MI_Uint8Field {
clone(&self) -> Self2286     fn clone(&self) -> Self {
2287         *self
2288     }
2289 }
2290 #[repr(C)]
2291 pub struct MI_UserCredentials {
2292     pub authenticationType: *mut u16,
2293     pub credentials: MI_UserCredentials_0,
2294 }
2295 impl ::core::marker::Copy for MI_UserCredentials {}
2296 impl ::core::clone::Clone for MI_UserCredentials {
clone(&self) -> Self2297     fn clone(&self) -> Self {
2298         *self
2299     }
2300 }
2301 #[repr(C)]
2302 pub union MI_UserCredentials_0 {
2303     pub usernamePassword: MI_UsernamePasswordCreds,
2304     pub certificateThumbprint: *mut u16,
2305 }
2306 impl ::core::marker::Copy for MI_UserCredentials_0 {}
2307 impl ::core::clone::Clone for MI_UserCredentials_0 {
clone(&self) -> Self2308     fn clone(&self) -> Self {
2309         *self
2310     }
2311 }
2312 #[repr(C)]
2313 pub struct MI_UsernamePasswordCreds {
2314     pub domain: *mut u16,
2315     pub username: *mut u16,
2316     pub password: *mut u16,
2317 }
2318 impl ::core::marker::Copy for MI_UsernamePasswordCreds {}
2319 impl ::core::clone::Clone for MI_UsernamePasswordCreds {
clone(&self) -> Self2320     fn clone(&self) -> Self {
2321         *self
2322     }
2323 }
2324 #[repr(C)]
2325 pub struct MI_UtilitiesFT {
2326     pub MapErrorToMiErrorCategory: isize,
2327     pub CimErrorFromErrorCode: isize,
2328 }
2329 impl ::core::marker::Copy for MI_UtilitiesFT {}
2330 impl ::core::clone::Clone for MI_UtilitiesFT {
clone(&self) -> Self2331     fn clone(&self) -> Self {
2332         *self
2333     }
2334 }
2335 #[repr(C)]
2336 pub union MI_Value {
2337     pub boolean: u8,
2338     pub uint8: u8,
2339     pub sint8: i8,
2340     pub uint16: u16,
2341     pub sint16: i16,
2342     pub uint32: u32,
2343     pub sint32: i32,
2344     pub uint64: u64,
2345     pub sint64: i64,
2346     pub real32: f32,
2347     pub real64: f64,
2348     pub char16: u16,
2349     pub datetime: MI_Datetime,
2350     pub string: *mut u16,
2351     pub instance: *mut MI_Instance,
2352     pub reference: *mut MI_Instance,
2353     pub booleana: MI_BooleanA,
2354     pub uint8a: MI_Uint8A,
2355     pub sint8a: MI_Sint8A,
2356     pub uint16a: MI_Uint16A,
2357     pub sint16a: MI_Sint16A,
2358     pub uint32a: MI_Uint32A,
2359     pub sint32a: MI_Sint32A,
2360     pub uint64a: MI_Uint64A,
2361     pub sint64a: MI_Sint64A,
2362     pub real32a: MI_Real32A,
2363     pub real64a: MI_Real64A,
2364     pub char16a: MI_Char16A,
2365     pub datetimea: MI_DatetimeA,
2366     pub stringa: MI_StringA,
2367     pub referencea: MI_ReferenceA,
2368     pub instancea: MI_InstanceA,
2369     pub array: MI_Array,
2370 }
2371 impl ::core::marker::Copy for MI_Value {}
2372 impl ::core::clone::Clone for MI_Value {
clone(&self) -> Self2373     fn clone(&self) -> Self {
2374         *self
2375     }
2376 }
2377 pub const MI_WRITEMESSAGE_CHANNEL_DEBUG: u32 = 2u32;
2378 pub const MI_WRITEMESSAGE_CHANNEL_VERBOSE: u32 = 1u32;
2379 pub const MI_WRITEMESSAGE_CHANNEL_WARNING: u32 = 0u32;
2380 pub const MofCompiler: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1840224087, data2: 11831, data3: 4562, data4: [174, 201, 0, 192, 79, 182, 136, 32] };
2381 #[repr(C)]
2382 #[cfg(feature = "Win32_Foundation")]
2383 pub struct SWbemAnalysisMatrix {
2384     pub m_uVersion: u32,
2385     pub m_uMatrixType: u32,
2386     pub m_pszProperty: super::super::Foundation::PWSTR,
2387     pub m_uPropertyType: u32,
2388     pub m_uEntries: u32,
2389     pub m_pValues: *mut *mut ::core::ffi::c_void,
2390     pub m_pbTruthTable: *mut super::super::Foundation::BOOL,
2391 }
2392 #[cfg(feature = "Win32_Foundation")]
2393 impl ::core::marker::Copy for SWbemAnalysisMatrix {}
2394 #[cfg(feature = "Win32_Foundation")]
2395 impl ::core::clone::Clone for SWbemAnalysisMatrix {
clone(&self) -> Self2396     fn clone(&self) -> Self {
2397         *self
2398     }
2399 }
2400 #[repr(C)]
2401 #[cfg(feature = "Win32_Foundation")]
2402 pub struct SWbemAnalysisMatrixList {
2403     pub m_uVersion: u32,
2404     pub m_uMatrixType: u32,
2405     pub m_uNumMatrices: u32,
2406     pub m_pMatrices: *mut SWbemAnalysisMatrix,
2407 }
2408 #[cfg(feature = "Win32_Foundation")]
2409 impl ::core::marker::Copy for SWbemAnalysisMatrixList {}
2410 #[cfg(feature = "Win32_Foundation")]
2411 impl ::core::clone::Clone for SWbemAnalysisMatrixList {
clone(&self) -> Self2412     fn clone(&self) -> Self {
2413         *self
2414     }
2415 }
2416 #[repr(C)]
2417 #[cfg(feature = "Win32_Foundation")]
2418 pub struct SWbemAssocQueryInf {
2419     pub m_uVersion: u32,
2420     pub m_uAnalysisType: u32,
2421     pub m_uFeatureMask: u32,
2422     pub m_pPath: IWbemPath,
2423     pub m_pszPath: super::super::Foundation::PWSTR,
2424     pub m_pszQueryText: super::super::Foundation::PWSTR,
2425     pub m_pszResultClass: super::super::Foundation::PWSTR,
2426     pub m_pszAssocClass: super::super::Foundation::PWSTR,
2427     pub m_pszRole: super::super::Foundation::PWSTR,
2428     pub m_pszResultRole: super::super::Foundation::PWSTR,
2429     pub m_pszRequiredQualifier: super::super::Foundation::PWSTR,
2430     pub m_pszRequiredAssocQualifier: super::super::Foundation::PWSTR,
2431 }
2432 #[cfg(feature = "Win32_Foundation")]
2433 impl ::core::marker::Copy for SWbemAssocQueryInf {}
2434 #[cfg(feature = "Win32_Foundation")]
2435 impl ::core::clone::Clone for SWbemAssocQueryInf {
clone(&self) -> Self2436     fn clone(&self) -> Self {
2437         *self
2438     }
2439 }
2440 pub const SWbemDateTime: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1205845588, data2: 53110, data3: 4563, data4: [179, 143, 0, 16, 90, 31, 71, 58] };
2441 pub const SWbemEventSource: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183192, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2442 pub const SWbemLastError: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3271487148, data2: 53197, data3: 4561, data4: [139, 5, 0, 96, 8, 6, 217, 182] };
2443 pub const SWbemLocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1990607192, data2: 52033, data3: 4561, data4: [139, 2, 0, 96, 8, 6, 217, 182] };
2444 pub const SWbemMethod: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183195, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2445 pub const SWbemMethodSet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183194, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2446 pub const SWbemNamedValue: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183200, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2447 pub const SWbemNamedValueSet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2599237710, data2: 52875, data3: 4561, data4: [139, 5, 0, 96, 8, 6, 217, 182] };
2448 pub const SWbemObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183202, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2449 pub const SWbemObjectEx: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
2450     data1: 3602755506,
2451     data2: 37941,
2452     data3: 18719,
2453     data4: [187, 135, 106, 160, 240, 188, 49, 162],
2454 };
2455 pub const SWbemObjectPath: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1469168678, data2: 52892, data3: 4561, data4: [151, 191, 0, 0, 248, 30, 132, 156] };
2456 pub const SWbemObjectSet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183201, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2457 pub const SWbemPrivilege: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 653158332, data2: 22532, data3: 4562, data4: [139, 74, 0, 96, 8, 6, 217, 182] };
2458 pub const SWbemPrivilegeSet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 653158334, data2: 22532, data3: 4562, data4: [139, 74, 0, 96, 8, 6, 217, 182] };
2459 pub const SWbemProperty: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183197, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2460 pub const SWbemPropertySet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183196, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2461 pub const SWbemQualifier: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183199, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2462 pub const SWbemQualifierSet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183198, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2463 #[repr(C)]
2464 #[cfg(feature = "Win32_Foundation")]
2465 pub struct SWbemQueryQualifiedName {
2466     pub m_uVersion: u32,
2467     pub m_uTokenType: u32,
2468     pub m_uNameListSize: u32,
2469     pub m_ppszNameList: *mut super::super::Foundation::PWSTR,
2470     pub m_bArraysUsed: super::super::Foundation::BOOL,
2471     pub m_pbArrayElUsed: *mut super::super::Foundation::BOOL,
2472     pub m_puArrayIndex: *mut u32,
2473 }
2474 #[cfg(feature = "Win32_Foundation")]
2475 impl ::core::marker::Copy for SWbemQueryQualifiedName {}
2476 #[cfg(feature = "Win32_Foundation")]
2477 impl ::core::clone::Clone for SWbemQueryQualifiedName {
clone(&self) -> Self2478     fn clone(&self) -> Self {
2479         *self
2480     }
2481 }
2482 pub const SWbemRefreshableItem: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2355647676, data2: 56907, data3: 4563, data4: [179, 144, 0, 16, 90, 31, 71, 58] };
2483 pub const SWbemRefresher: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3530145628, data2: 55745, data3: 4563, data4: [179, 143, 0, 16, 90, 31, 71, 58] };
2484 #[repr(C)]
2485 #[cfg(feature = "Win32_Foundation")]
2486 pub union SWbemRpnConst {
2487     pub m_pszStrVal: super::super::Foundation::PWSTR,
2488     pub m_bBoolVal: super::super::Foundation::BOOL,
2489     pub m_lLongVal: i32,
2490     pub m_uLongVal: u32,
2491     pub m_dblVal: f64,
2492     pub m_lVal64: i64,
2493     pub m_uVal64: i64,
2494 }
2495 #[cfg(feature = "Win32_Foundation")]
2496 impl ::core::marker::Copy for SWbemRpnConst {}
2497 #[cfg(feature = "Win32_Foundation")]
2498 impl ::core::clone::Clone for SWbemRpnConst {
clone(&self) -> Self2499     fn clone(&self) -> Self {
2500         *self
2501     }
2502 }
2503 #[repr(C)]
2504 #[cfg(feature = "Win32_Foundation")]
2505 pub struct SWbemRpnEncodedQuery {
2506     pub m_uVersion: u32,
2507     pub m_uTokenType: u32,
2508     pub m_uParsedFeatureMask: u64,
2509     pub m_uDetectedArraySize: u32,
2510     pub m_puDetectedFeatures: *mut u32,
2511     pub m_uSelectListSize: u32,
2512     pub m_ppSelectList: *mut *mut SWbemQueryQualifiedName,
2513     pub m_uFromTargetType: u32,
2514     pub m_pszOptionalFromPath: super::super::Foundation::PWSTR,
2515     pub m_uFromListSize: u32,
2516     pub m_ppszFromList: *mut super::super::Foundation::PWSTR,
2517     pub m_uWhereClauseSize: u32,
2518     pub m_ppRpnWhereClause: *mut *mut SWbemRpnQueryToken,
2519     pub m_dblWithinPolling: f64,
2520     pub m_dblWithinWindow: f64,
2521     pub m_uOrderByListSize: u32,
2522     pub m_ppszOrderByList: *mut super::super::Foundation::PWSTR,
2523     pub m_uOrderDirectionEl: *mut u32,
2524 }
2525 #[cfg(feature = "Win32_Foundation")]
2526 impl ::core::marker::Copy for SWbemRpnEncodedQuery {}
2527 #[cfg(feature = "Win32_Foundation")]
2528 impl ::core::clone::Clone for SWbemRpnEncodedQuery {
clone(&self) -> Self2529     fn clone(&self) -> Self {
2530         *self
2531     }
2532 }
2533 #[repr(C)]
2534 #[cfg(feature = "Win32_Foundation")]
2535 pub struct SWbemRpnQueryToken {
2536     pub m_uVersion: u32,
2537     pub m_uTokenType: u32,
2538     pub m_uSubexpressionShape: u32,
2539     pub m_uOperator: u32,
2540     pub m_pRightIdent: *mut SWbemQueryQualifiedName,
2541     pub m_pLeftIdent: *mut SWbemQueryQualifiedName,
2542     pub m_uConstApparentType: u32,
2543     pub m_Const: SWbemRpnConst,
2544     pub m_uConst2ApparentType: u32,
2545     pub m_Const2: SWbemRpnConst,
2546     pub m_pszRightFunc: super::super::Foundation::PWSTR,
2547     pub m_pszLeftFunc: super::super::Foundation::PWSTR,
2548 }
2549 #[cfg(feature = "Win32_Foundation")]
2550 impl ::core::marker::Copy for SWbemRpnQueryToken {}
2551 #[cfg(feature = "Win32_Foundation")]
2552 impl ::core::clone::Clone for SWbemRpnQueryToken {
clone(&self) -> Self2553     fn clone(&self) -> Self {
2554         *self
2555     }
2556 }
2557 #[repr(C)]
2558 pub struct SWbemRpnTokenList {
2559     pub m_uVersion: u32,
2560     pub m_uTokenType: u32,
2561     pub m_uNumTokens: u32,
2562 }
2563 impl ::core::marker::Copy for SWbemRpnTokenList {}
2564 impl ::core::clone::Clone for SWbemRpnTokenList {
clone(&self) -> Self2565     fn clone(&self) -> Self {
2566         *self
2567     }
2568 }
2569 pub const SWbemSecurity: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3041748713, data2: 8839, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2570 pub const SWbemServices: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 79183203, data2: 8622, data3: 4562, data4: [139, 51, 0, 96, 8, 6, 217, 182] };
2571 pub const SWbemServicesEx: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1659183836, data2: 36083, data3: 16552, data4: [139, 46, 55, 213, 149, 101, 30, 64] };
2572 pub const SWbemSink: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1970375834, data2: 61481, data3: 4561, data4: [161, 172, 0, 192, 79, 182, 194, 35] };
2573 pub const UnsecuredApartment: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1237131304, data2: 5411, data3: 4561, data4: [173, 121, 0, 192, 79, 216, 253, 255] };
2574 pub type WBEMSTATUS = i32;
2575 pub const WBEM_NO_ERROR: WBEMSTATUS = 0i32;
2576 pub const WBEM_S_NO_ERROR: WBEMSTATUS = 0i32;
2577 pub const WBEM_S_SAME: WBEMSTATUS = 0i32;
2578 pub const WBEM_S_FALSE: WBEMSTATUS = 1i32;
2579 pub const WBEM_S_ALREADY_EXISTS: WBEMSTATUS = 262145i32;
2580 pub const WBEM_S_RESET_TO_DEFAULT: WBEMSTATUS = 262146i32;
2581 pub const WBEM_S_DIFFERENT: WBEMSTATUS = 262147i32;
2582 pub const WBEM_S_TIMEDOUT: WBEMSTATUS = 262148i32;
2583 pub const WBEM_S_NO_MORE_DATA: WBEMSTATUS = 262149i32;
2584 pub const WBEM_S_OPERATION_CANCELLED: WBEMSTATUS = 262150i32;
2585 pub const WBEM_S_PENDING: WBEMSTATUS = 262151i32;
2586 pub const WBEM_S_DUPLICATE_OBJECTS: WBEMSTATUS = 262152i32;
2587 pub const WBEM_S_ACCESS_DENIED: WBEMSTATUS = 262153i32;
2588 pub const WBEM_S_PARTIAL_RESULTS: WBEMSTATUS = 262160i32;
2589 pub const WBEM_S_SOURCE_NOT_AVAILABLE: WBEMSTATUS = 262167i32;
2590 pub const WBEM_E_FAILED: WBEMSTATUS = -2147217407i32;
2591 pub const WBEM_E_NOT_FOUND: WBEMSTATUS = -2147217406i32;
2592 pub const WBEM_E_ACCESS_DENIED: WBEMSTATUS = -2147217405i32;
2593 pub const WBEM_E_PROVIDER_FAILURE: WBEMSTATUS = -2147217404i32;
2594 pub const WBEM_E_TYPE_MISMATCH: WBEMSTATUS = -2147217403i32;
2595 pub const WBEM_E_OUT_OF_MEMORY: WBEMSTATUS = -2147217402i32;
2596 pub const WBEM_E_INVALID_CONTEXT: WBEMSTATUS = -2147217401i32;
2597 pub const WBEM_E_INVALID_PARAMETER: WBEMSTATUS = -2147217400i32;
2598 pub const WBEM_E_NOT_AVAILABLE: WBEMSTATUS = -2147217399i32;
2599 pub const WBEM_E_CRITICAL_ERROR: WBEMSTATUS = -2147217398i32;
2600 pub const WBEM_E_INVALID_STREAM: WBEMSTATUS = -2147217397i32;
2601 pub const WBEM_E_NOT_SUPPORTED: WBEMSTATUS = -2147217396i32;
2602 pub const WBEM_E_INVALID_SUPERCLASS: WBEMSTATUS = -2147217395i32;
2603 pub const WBEM_E_INVALID_NAMESPACE: WBEMSTATUS = -2147217394i32;
2604 pub const WBEM_E_INVALID_OBJECT: WBEMSTATUS = -2147217393i32;
2605 pub const WBEM_E_INVALID_CLASS: WBEMSTATUS = -2147217392i32;
2606 pub const WBEM_E_PROVIDER_NOT_FOUND: WBEMSTATUS = -2147217391i32;
2607 pub const WBEM_E_INVALID_PROVIDER_REGISTRATION: WBEMSTATUS = -2147217390i32;
2608 pub const WBEM_E_PROVIDER_LOAD_FAILURE: WBEMSTATUS = -2147217389i32;
2609 pub const WBEM_E_INITIALIZATION_FAILURE: WBEMSTATUS = -2147217388i32;
2610 pub const WBEM_E_TRANSPORT_FAILURE: WBEMSTATUS = -2147217387i32;
2611 pub const WBEM_E_INVALID_OPERATION: WBEMSTATUS = -2147217386i32;
2612 pub const WBEM_E_INVALID_QUERY: WBEMSTATUS = -2147217385i32;
2613 pub const WBEM_E_INVALID_QUERY_TYPE: WBEMSTATUS = -2147217384i32;
2614 pub const WBEM_E_ALREADY_EXISTS: WBEMSTATUS = -2147217383i32;
2615 pub const WBEM_E_OVERRIDE_NOT_ALLOWED: WBEMSTATUS = -2147217382i32;
2616 pub const WBEM_E_PROPAGATED_QUALIFIER: WBEMSTATUS = -2147217381i32;
2617 pub const WBEM_E_PROPAGATED_PROPERTY: WBEMSTATUS = -2147217380i32;
2618 pub const WBEM_E_UNEXPECTED: WBEMSTATUS = -2147217379i32;
2619 pub const WBEM_E_ILLEGAL_OPERATION: WBEMSTATUS = -2147217378i32;
2620 pub const WBEM_E_CANNOT_BE_KEY: WBEMSTATUS = -2147217377i32;
2621 pub const WBEM_E_INCOMPLETE_CLASS: WBEMSTATUS = -2147217376i32;
2622 pub const WBEM_E_INVALID_SYNTAX: WBEMSTATUS = -2147217375i32;
2623 pub const WBEM_E_NONDECORATED_OBJECT: WBEMSTATUS = -2147217374i32;
2624 pub const WBEM_E_READ_ONLY: WBEMSTATUS = -2147217373i32;
2625 pub const WBEM_E_PROVIDER_NOT_CAPABLE: WBEMSTATUS = -2147217372i32;
2626 pub const WBEM_E_CLASS_HAS_CHILDREN: WBEMSTATUS = -2147217371i32;
2627 pub const WBEM_E_CLASS_HAS_INSTANCES: WBEMSTATUS = -2147217370i32;
2628 pub const WBEM_E_QUERY_NOT_IMPLEMENTED: WBEMSTATUS = -2147217369i32;
2629 pub const WBEM_E_ILLEGAL_NULL: WBEMSTATUS = -2147217368i32;
2630 pub const WBEM_E_INVALID_QUALIFIER_TYPE: WBEMSTATUS = -2147217367i32;
2631 pub const WBEM_E_INVALID_PROPERTY_TYPE: WBEMSTATUS = -2147217366i32;
2632 pub const WBEM_E_VALUE_OUT_OF_RANGE: WBEMSTATUS = -2147217365i32;
2633 pub const WBEM_E_CANNOT_BE_SINGLETON: WBEMSTATUS = -2147217364i32;
2634 pub const WBEM_E_INVALID_CIM_TYPE: WBEMSTATUS = -2147217363i32;
2635 pub const WBEM_E_INVALID_METHOD: WBEMSTATUS = -2147217362i32;
2636 pub const WBEM_E_INVALID_METHOD_PARAMETERS: WBEMSTATUS = -2147217361i32;
2637 pub const WBEM_E_SYSTEM_PROPERTY: WBEMSTATUS = -2147217360i32;
2638 pub const WBEM_E_INVALID_PROPERTY: WBEMSTATUS = -2147217359i32;
2639 pub const WBEM_E_CALL_CANCELLED: WBEMSTATUS = -2147217358i32;
2640 pub const WBEM_E_SHUTTING_DOWN: WBEMSTATUS = -2147217357i32;
2641 pub const WBEM_E_PROPAGATED_METHOD: WBEMSTATUS = -2147217356i32;
2642 pub const WBEM_E_UNSUPPORTED_PARAMETER: WBEMSTATUS = -2147217355i32;
2643 pub const WBEM_E_MISSING_PARAMETER_ID: WBEMSTATUS = -2147217354i32;
2644 pub const WBEM_E_INVALID_PARAMETER_ID: WBEMSTATUS = -2147217353i32;
2645 pub const WBEM_E_NONCONSECUTIVE_PARAMETER_IDS: WBEMSTATUS = -2147217352i32;
2646 pub const WBEM_E_PARAMETER_ID_ON_RETVAL: WBEMSTATUS = -2147217351i32;
2647 pub const WBEM_E_INVALID_OBJECT_PATH: WBEMSTATUS = -2147217350i32;
2648 pub const WBEM_E_OUT_OF_DISK_SPACE: WBEMSTATUS = -2147217349i32;
2649 pub const WBEM_E_BUFFER_TOO_SMALL: WBEMSTATUS = -2147217348i32;
2650 pub const WBEM_E_UNSUPPORTED_PUT_EXTENSION: WBEMSTATUS = -2147217347i32;
2651 pub const WBEM_E_UNKNOWN_OBJECT_TYPE: WBEMSTATUS = -2147217346i32;
2652 pub const WBEM_E_UNKNOWN_PACKET_TYPE: WBEMSTATUS = -2147217345i32;
2653 pub const WBEM_E_MARSHAL_VERSION_MISMATCH: WBEMSTATUS = -2147217344i32;
2654 pub const WBEM_E_MARSHAL_INVALID_SIGNATURE: WBEMSTATUS = -2147217343i32;
2655 pub const WBEM_E_INVALID_QUALIFIER: WBEMSTATUS = -2147217342i32;
2656 pub const WBEM_E_INVALID_DUPLICATE_PARAMETER: WBEMSTATUS = -2147217341i32;
2657 pub const WBEM_E_TOO_MUCH_DATA: WBEMSTATUS = -2147217340i32;
2658 pub const WBEM_E_SERVER_TOO_BUSY: WBEMSTATUS = -2147217339i32;
2659 pub const WBEM_E_INVALID_FLAVOR: WBEMSTATUS = -2147217338i32;
2660 pub const WBEM_E_CIRCULAR_REFERENCE: WBEMSTATUS = -2147217337i32;
2661 pub const WBEM_E_UNSUPPORTED_CLASS_UPDATE: WBEMSTATUS = -2147217336i32;
2662 pub const WBEM_E_CANNOT_CHANGE_KEY_INHERITANCE: WBEMSTATUS = -2147217335i32;
2663 pub const WBEM_E_CANNOT_CHANGE_INDEX_INHERITANCE: WBEMSTATUS = -2147217328i32;
2664 pub const WBEM_E_TOO_MANY_PROPERTIES: WBEMSTATUS = -2147217327i32;
2665 pub const WBEM_E_UPDATE_TYPE_MISMATCH: WBEMSTATUS = -2147217326i32;
2666 pub const WBEM_E_UPDATE_OVERRIDE_NOT_ALLOWED: WBEMSTATUS = -2147217325i32;
2667 pub const WBEM_E_UPDATE_PROPAGATED_METHOD: WBEMSTATUS = -2147217324i32;
2668 pub const WBEM_E_METHOD_NOT_IMPLEMENTED: WBEMSTATUS = -2147217323i32;
2669 pub const WBEM_E_METHOD_DISABLED: WBEMSTATUS = -2147217322i32;
2670 pub const WBEM_E_REFRESHER_BUSY: WBEMSTATUS = -2147217321i32;
2671 pub const WBEM_E_UNPARSABLE_QUERY: WBEMSTATUS = -2147217320i32;
2672 pub const WBEM_E_NOT_EVENT_CLASS: WBEMSTATUS = -2147217319i32;
2673 pub const WBEM_E_MISSING_GROUP_WITHIN: WBEMSTATUS = -2147217318i32;
2674 pub const WBEM_E_MISSING_AGGREGATION_LIST: WBEMSTATUS = -2147217317i32;
2675 pub const WBEM_E_PROPERTY_NOT_AN_OBJECT: WBEMSTATUS = -2147217316i32;
2676 pub const WBEM_E_AGGREGATING_BY_OBJECT: WBEMSTATUS = -2147217315i32;
2677 pub const WBEM_E_UNINTERPRETABLE_PROVIDER_QUERY: WBEMSTATUS = -2147217313i32;
2678 pub const WBEM_E_BACKUP_RESTORE_WINMGMT_RUNNING: WBEMSTATUS = -2147217312i32;
2679 pub const WBEM_E_QUEUE_OVERFLOW: WBEMSTATUS = -2147217311i32;
2680 pub const WBEM_E_PRIVILEGE_NOT_HELD: WBEMSTATUS = -2147217310i32;
2681 pub const WBEM_E_INVALID_OPERATOR: WBEMSTATUS = -2147217309i32;
2682 pub const WBEM_E_LOCAL_CREDENTIALS: WBEMSTATUS = -2147217308i32;
2683 pub const WBEM_E_CANNOT_BE_ABSTRACT: WBEMSTATUS = -2147217307i32;
2684 pub const WBEM_E_AMENDED_OBJECT: WBEMSTATUS = -2147217306i32;
2685 pub const WBEM_E_CLIENT_TOO_SLOW: WBEMSTATUS = -2147217305i32;
2686 pub const WBEM_E_NULL_SECURITY_DESCRIPTOR: WBEMSTATUS = -2147217304i32;
2687 pub const WBEM_E_TIMED_OUT: WBEMSTATUS = -2147217303i32;
2688 pub const WBEM_E_INVALID_ASSOCIATION: WBEMSTATUS = -2147217302i32;
2689 pub const WBEM_E_AMBIGUOUS_OPERATION: WBEMSTATUS = -2147217301i32;
2690 pub const WBEM_E_QUOTA_VIOLATION: WBEMSTATUS = -2147217300i32;
2691 pub const WBEM_E_RESERVED_001: WBEMSTATUS = -2147217299i32;
2692 pub const WBEM_E_RESERVED_002: WBEMSTATUS = -2147217298i32;
2693 pub const WBEM_E_UNSUPPORTED_LOCALE: WBEMSTATUS = -2147217297i32;
2694 pub const WBEM_E_HANDLE_OUT_OF_DATE: WBEMSTATUS = -2147217296i32;
2695 pub const WBEM_E_CONNECTION_FAILED: WBEMSTATUS = -2147217295i32;
2696 pub const WBEM_E_INVALID_HANDLE_REQUEST: WBEMSTATUS = -2147217294i32;
2697 pub const WBEM_E_PROPERTY_NAME_TOO_WIDE: WBEMSTATUS = -2147217293i32;
2698 pub const WBEM_E_CLASS_NAME_TOO_WIDE: WBEMSTATUS = -2147217292i32;
2699 pub const WBEM_E_METHOD_NAME_TOO_WIDE: WBEMSTATUS = -2147217291i32;
2700 pub const WBEM_E_QUALIFIER_NAME_TOO_WIDE: WBEMSTATUS = -2147217290i32;
2701 pub const WBEM_E_RERUN_COMMAND: WBEMSTATUS = -2147217289i32;
2702 pub const WBEM_E_DATABASE_VER_MISMATCH: WBEMSTATUS = -2147217288i32;
2703 pub const WBEM_E_VETO_DELETE: WBEMSTATUS = -2147217287i32;
2704 pub const WBEM_E_VETO_PUT: WBEMSTATUS = -2147217286i32;
2705 pub const WBEM_E_INVALID_LOCALE: WBEMSTATUS = -2147217280i32;
2706 pub const WBEM_E_PROVIDER_SUSPENDED: WBEMSTATUS = -2147217279i32;
2707 pub const WBEM_E_SYNCHRONIZATION_REQUIRED: WBEMSTATUS = -2147217278i32;
2708 pub const WBEM_E_NO_SCHEMA: WBEMSTATUS = -2147217277i32;
2709 pub const WBEM_E_PROVIDER_ALREADY_REGISTERED: WBEMSTATUS = -2147217276i32;
2710 pub const WBEM_E_PROVIDER_NOT_REGISTERED: WBEMSTATUS = -2147217275i32;
2711 pub const WBEM_E_FATAL_TRANSPORT_ERROR: WBEMSTATUS = -2147217274i32;
2712 pub const WBEM_E_ENCRYPTED_CONNECTION_REQUIRED: WBEMSTATUS = -2147217273i32;
2713 pub const WBEM_E_PROVIDER_TIMED_OUT: WBEMSTATUS = -2147217272i32;
2714 pub const WBEM_E_NO_KEY: WBEMSTATUS = -2147217271i32;
2715 pub const WBEM_E_PROVIDER_DISABLED: WBEMSTATUS = -2147217270i32;
2716 pub const WBEMESS_E_REGISTRATION_TOO_BROAD: WBEMSTATUS = -2147213311i32;
2717 pub const WBEMESS_E_REGISTRATION_TOO_PRECISE: WBEMSTATUS = -2147213310i32;
2718 pub const WBEMESS_E_AUTHZ_NOT_PRIVILEGED: WBEMSTATUS = -2147213309i32;
2719 pub const WBEMMOF_E_EXPECTED_QUALIFIER_NAME: WBEMSTATUS = -2147205119i32;
2720 pub const WBEMMOF_E_EXPECTED_SEMI: WBEMSTATUS = -2147205118i32;
2721 pub const WBEMMOF_E_EXPECTED_OPEN_BRACE: WBEMSTATUS = -2147205117i32;
2722 pub const WBEMMOF_E_EXPECTED_CLOSE_BRACE: WBEMSTATUS = -2147205116i32;
2723 pub const WBEMMOF_E_EXPECTED_CLOSE_BRACKET: WBEMSTATUS = -2147205115i32;
2724 pub const WBEMMOF_E_EXPECTED_CLOSE_PAREN: WBEMSTATUS = -2147205114i32;
2725 pub const WBEMMOF_E_ILLEGAL_CONSTANT_VALUE: WBEMSTATUS = -2147205113i32;
2726 pub const WBEMMOF_E_EXPECTED_TYPE_IDENTIFIER: WBEMSTATUS = -2147205112i32;
2727 pub const WBEMMOF_E_EXPECTED_OPEN_PAREN: WBEMSTATUS = -2147205111i32;
2728 pub const WBEMMOF_E_UNRECOGNIZED_TOKEN: WBEMSTATUS = -2147205110i32;
2729 pub const WBEMMOF_E_UNRECOGNIZED_TYPE: WBEMSTATUS = -2147205109i32;
2730 pub const WBEMMOF_E_EXPECTED_PROPERTY_NAME: WBEMSTATUS = -2147205108i32;
2731 pub const WBEMMOF_E_TYPEDEF_NOT_SUPPORTED: WBEMSTATUS = -2147205107i32;
2732 pub const WBEMMOF_E_UNEXPECTED_ALIAS: WBEMSTATUS = -2147205106i32;
2733 pub const WBEMMOF_E_UNEXPECTED_ARRAY_INIT: WBEMSTATUS = -2147205105i32;
2734 pub const WBEMMOF_E_INVALID_AMENDMENT_SYNTAX: WBEMSTATUS = -2147205104i32;
2735 pub const WBEMMOF_E_INVALID_DUPLICATE_AMENDMENT: WBEMSTATUS = -2147205103i32;
2736 pub const WBEMMOF_E_INVALID_PRAGMA: WBEMSTATUS = -2147205102i32;
2737 pub const WBEMMOF_E_INVALID_NAMESPACE_SYNTAX: WBEMSTATUS = -2147205101i32;
2738 pub const WBEMMOF_E_EXPECTED_CLASS_NAME: WBEMSTATUS = -2147205100i32;
2739 pub const WBEMMOF_E_TYPE_MISMATCH: WBEMSTATUS = -2147205099i32;
2740 pub const WBEMMOF_E_EXPECTED_ALIAS_NAME: WBEMSTATUS = -2147205098i32;
2741 pub const WBEMMOF_E_INVALID_CLASS_DECLARATION: WBEMSTATUS = -2147205097i32;
2742 pub const WBEMMOF_E_INVALID_INSTANCE_DECLARATION: WBEMSTATUS = -2147205096i32;
2743 pub const WBEMMOF_E_EXPECTED_DOLLAR: WBEMSTATUS = -2147205095i32;
2744 pub const WBEMMOF_E_CIMTYPE_QUALIFIER: WBEMSTATUS = -2147205094i32;
2745 pub const WBEMMOF_E_DUPLICATE_PROPERTY: WBEMSTATUS = -2147205093i32;
2746 pub const WBEMMOF_E_INVALID_NAMESPACE_SPECIFICATION: WBEMSTATUS = -2147205092i32;
2747 pub const WBEMMOF_E_OUT_OF_RANGE: WBEMSTATUS = -2147205091i32;
2748 pub const WBEMMOF_E_INVALID_FILE: WBEMSTATUS = -2147205090i32;
2749 pub const WBEMMOF_E_ALIASES_IN_EMBEDDED: WBEMSTATUS = -2147205089i32;
2750 pub const WBEMMOF_E_NULL_ARRAY_ELEM: WBEMSTATUS = -2147205088i32;
2751 pub const WBEMMOF_E_DUPLICATE_QUALIFIER: WBEMSTATUS = -2147205087i32;
2752 pub const WBEMMOF_E_EXPECTED_FLAVOR_TYPE: WBEMSTATUS = -2147205086i32;
2753 pub const WBEMMOF_E_INCOMPATIBLE_FLAVOR_TYPES: WBEMSTATUS = -2147205085i32;
2754 pub const WBEMMOF_E_MULTIPLE_ALIASES: WBEMSTATUS = -2147205084i32;
2755 pub const WBEMMOF_E_INCOMPATIBLE_FLAVOR_TYPES2: WBEMSTATUS = -2147205083i32;
2756 pub const WBEMMOF_E_NO_ARRAYS_RETURNED: WBEMSTATUS = -2147205082i32;
2757 pub const WBEMMOF_E_MUST_BE_IN_OR_OUT: WBEMSTATUS = -2147205081i32;
2758 pub const WBEMMOF_E_INVALID_FLAGS_SYNTAX: WBEMSTATUS = -2147205080i32;
2759 pub const WBEMMOF_E_EXPECTED_BRACE_OR_BAD_TYPE: WBEMSTATUS = -2147205079i32;
2760 pub const WBEMMOF_E_UNSUPPORTED_CIMV22_QUAL_VALUE: WBEMSTATUS = -2147205078i32;
2761 pub const WBEMMOF_E_UNSUPPORTED_CIMV22_DATA_TYPE: WBEMSTATUS = -2147205077i32;
2762 pub const WBEMMOF_E_INVALID_DELETEINSTANCE_SYNTAX: WBEMSTATUS = -2147205076i32;
2763 pub const WBEMMOF_E_INVALID_QUALIFIER_SYNTAX: WBEMSTATUS = -2147205075i32;
2764 pub const WBEMMOF_E_QUALIFIER_USED_OUTSIDE_SCOPE: WBEMSTATUS = -2147205074i32;
2765 pub const WBEMMOF_E_ERROR_CREATING_TEMP_FILE: WBEMSTATUS = -2147205073i32;
2766 pub const WBEMMOF_E_ERROR_INVALID_INCLUDE_FILE: WBEMSTATUS = -2147205072i32;
2767 pub const WBEMMOF_E_INVALID_DELETECLASS_SYNTAX: WBEMSTATUS = -2147205071i32;
2768 pub type WBEMSTATUS_FORMAT = i32;
2769 pub const WBEMSTATUS_FORMAT_NEWLINE: WBEMSTATUS_FORMAT = 0i32;
2770 pub const WBEMSTATUS_FORMAT_NO_NEWLINE: WBEMSTATUS_FORMAT = 1i32;
2771 pub const WBEMS_DISPID_COMPLETED: u32 = 2u32;
2772 pub const WBEMS_DISPID_CONNECTION_READY: u32 = 5u32;
2773 pub const WBEMS_DISPID_DERIVATION: u32 = 23u32;
2774 pub const WBEMS_DISPID_OBJECT_PUT: u32 = 4u32;
2775 pub const WBEMS_DISPID_OBJECT_READY: u32 = 1u32;
2776 pub const WBEMS_DISPID_PROGRESS: u32 = 3u32;
2777 pub type WBEM_BACKUP_RESTORE_FLAGS = i32;
2778 pub const WBEM_FLAG_BACKUP_RESTORE_DEFAULT: WBEM_BACKUP_RESTORE_FLAGS = 0i32;
2779 pub const WBEM_FLAG_BACKUP_RESTORE_FORCE_SHUTDOWN: WBEM_BACKUP_RESTORE_FLAGS = 1i32;
2780 pub type WBEM_BATCH_TYPE = i32;
2781 pub const WBEM_FLAG_BATCH_IF_NEEDED: WBEM_BATCH_TYPE = 0i32;
2782 pub const WBEM_FLAG_MUST_BATCH: WBEM_BATCH_TYPE = 1i32;
2783 pub const WBEM_FLAG_MUST_NOT_BATCH: WBEM_BATCH_TYPE = 2i32;
2784 pub type WBEM_CHANGE_FLAG_TYPE = i32;
2785 pub const WBEM_FLAG_CREATE_OR_UPDATE: WBEM_CHANGE_FLAG_TYPE = 0i32;
2786 pub const WBEM_FLAG_UPDATE_ONLY: WBEM_CHANGE_FLAG_TYPE = 1i32;
2787 pub const WBEM_FLAG_CREATE_ONLY: WBEM_CHANGE_FLAG_TYPE = 2i32;
2788 pub const WBEM_FLAG_UPDATE_COMPATIBLE: WBEM_CHANGE_FLAG_TYPE = 0i32;
2789 pub const WBEM_FLAG_UPDATE_SAFE_MODE: WBEM_CHANGE_FLAG_TYPE = 32i32;
2790 pub const WBEM_FLAG_UPDATE_FORCE_MODE: WBEM_CHANGE_FLAG_TYPE = 64i32;
2791 pub const WBEM_MASK_UPDATE_MODE: WBEM_CHANGE_FLAG_TYPE = 96i32;
2792 pub const WBEM_FLAG_ADVISORY: WBEM_CHANGE_FLAG_TYPE = 65536i32;
2793 pub type WBEM_COMPARISON_FLAG = i32;
2794 pub const WBEM_COMPARISON_INCLUDE_ALL: WBEM_COMPARISON_FLAG = 0i32;
2795 pub const WBEM_FLAG_IGNORE_QUALIFIERS: WBEM_COMPARISON_FLAG = 1i32;
2796 pub const WBEM_FLAG_IGNORE_OBJECT_SOURCE: WBEM_COMPARISON_FLAG = 2i32;
2797 pub const WBEM_FLAG_IGNORE_DEFAULT_VALUES: WBEM_COMPARISON_FLAG = 4i32;
2798 pub const WBEM_FLAG_IGNORE_CLASS: WBEM_COMPARISON_FLAG = 8i32;
2799 pub const WBEM_FLAG_IGNORE_CASE: WBEM_COMPARISON_FLAG = 16i32;
2800 pub const WBEM_FLAG_IGNORE_FLAVOR: WBEM_COMPARISON_FLAG = 32i32;
2801 pub type WBEM_COMPILER_OPTIONS = i32;
2802 pub const WBEM_FLAG_CHECK_ONLY: WBEM_COMPILER_OPTIONS = 1i32;
2803 pub const WBEM_FLAG_AUTORECOVER: WBEM_COMPILER_OPTIONS = 2i32;
2804 pub const WBEM_FLAG_WMI_CHECK: WBEM_COMPILER_OPTIONS = 4i32;
2805 pub const WBEM_FLAG_CONSOLE_PRINT: WBEM_COMPILER_OPTIONS = 8i32;
2806 pub const WBEM_FLAG_DONT_ADD_TO_LIST: WBEM_COMPILER_OPTIONS = 16i32;
2807 pub const WBEM_FLAG_SPLIT_FILES: WBEM_COMPILER_OPTIONS = 32i32;
2808 pub const WBEM_FLAG_STORE_FILE: WBEM_COMPILER_OPTIONS = 256i32;
2809 #[repr(C)]
2810 pub struct WBEM_COMPILE_STATUS_INFO {
2811     pub lPhaseError: i32,
2812     pub hRes: ::windows_sys::core::HRESULT,
2813     pub ObjectNum: i32,
2814     pub FirstLine: i32,
2815     pub LastLine: i32,
2816     pub dwOutFlags: u32,
2817 }
2818 impl ::core::marker::Copy for WBEM_COMPILE_STATUS_INFO {}
2819 impl ::core::clone::Clone for WBEM_COMPILE_STATUS_INFO {
clone(&self) -> Self2820     fn clone(&self) -> Self {
2821         *self
2822     }
2823 }
2824 pub type WBEM_CONDITION_FLAG_TYPE = i32;
2825 pub const WBEM_FLAG_ALWAYS: WBEM_CONDITION_FLAG_TYPE = 0i32;
2826 pub const WBEM_FLAG_ONLY_IF_TRUE: WBEM_CONDITION_FLAG_TYPE = 1i32;
2827 pub const WBEM_FLAG_ONLY_IF_FALSE: WBEM_CONDITION_FLAG_TYPE = 2i32;
2828 pub const WBEM_FLAG_ONLY_IF_IDENTICAL: WBEM_CONDITION_FLAG_TYPE = 3i32;
2829 pub const WBEM_MASK_PRIMARY_CONDITION: WBEM_CONDITION_FLAG_TYPE = 3i32;
2830 pub const WBEM_FLAG_KEYS_ONLY: WBEM_CONDITION_FLAG_TYPE = 4i32;
2831 pub const WBEM_FLAG_REFS_ONLY: WBEM_CONDITION_FLAG_TYPE = 8i32;
2832 pub const WBEM_FLAG_LOCAL_ONLY: WBEM_CONDITION_FLAG_TYPE = 16i32;
2833 pub const WBEM_FLAG_PROPAGATED_ONLY: WBEM_CONDITION_FLAG_TYPE = 32i32;
2834 pub const WBEM_FLAG_SYSTEM_ONLY: WBEM_CONDITION_FLAG_TYPE = 48i32;
2835 pub const WBEM_FLAG_NONSYSTEM_ONLY: WBEM_CONDITION_FLAG_TYPE = 64i32;
2836 pub const WBEM_MASK_CONDITION_ORIGIN: WBEM_CONDITION_FLAG_TYPE = 112i32;
2837 pub const WBEM_FLAG_CLASS_OVERRIDES_ONLY: WBEM_CONDITION_FLAG_TYPE = 256i32;
2838 pub const WBEM_FLAG_CLASS_LOCAL_AND_OVERRIDES: WBEM_CONDITION_FLAG_TYPE = 512i32;
2839 pub const WBEM_MASK_CLASS_CONDITION: WBEM_CONDITION_FLAG_TYPE = 768i32;
2840 pub type WBEM_CONNECT_OPTIONS = i32;
2841 pub const WBEM_FLAG_CONNECT_REPOSITORY_ONLY: WBEM_CONNECT_OPTIONS = 64i32;
2842 pub const WBEM_FLAG_CONNECT_USE_MAX_WAIT: WBEM_CONNECT_OPTIONS = 128i32;
2843 pub const WBEM_FLAG_CONNECT_PROVIDERS: WBEM_CONNECT_OPTIONS = 256i32;
2844 pub type WBEM_EXTRA_RETURN_CODES = i32;
2845 pub const WBEM_S_INITIALIZED: WBEM_EXTRA_RETURN_CODES = 0i32;
2846 pub const WBEM_S_LIMITED_SERVICE: WBEM_EXTRA_RETURN_CODES = 274433i32;
2847 pub const WBEM_S_INDIRECTLY_UPDATED: WBEM_EXTRA_RETURN_CODES = 274434i32;
2848 pub const WBEM_S_SUBJECT_TO_SDS: WBEM_EXTRA_RETURN_CODES = 274435i32;
2849 pub const WBEM_E_RETRY_LATER: WBEM_EXTRA_RETURN_CODES = -2147209215i32;
2850 pub const WBEM_E_RESOURCE_CONTENTION: WBEM_EXTRA_RETURN_CODES = -2147209214i32;
2851 pub type WBEM_FLAVOR_TYPE = i32;
2852 pub const WBEM_FLAVOR_DONT_PROPAGATE: WBEM_FLAVOR_TYPE = 0i32;
2853 pub const WBEM_FLAVOR_FLAG_PROPAGATE_TO_INSTANCE: WBEM_FLAVOR_TYPE = 1i32;
2854 pub const WBEM_FLAVOR_FLAG_PROPAGATE_TO_DERIVED_CLASS: WBEM_FLAVOR_TYPE = 2i32;
2855 pub const WBEM_FLAVOR_MASK_PROPAGATION: WBEM_FLAVOR_TYPE = 15i32;
2856 pub const WBEM_FLAVOR_OVERRIDABLE: WBEM_FLAVOR_TYPE = 0i32;
2857 pub const WBEM_FLAVOR_NOT_OVERRIDABLE: WBEM_FLAVOR_TYPE = 16i32;
2858 pub const WBEM_FLAVOR_MASK_PERMISSIONS: WBEM_FLAVOR_TYPE = 16i32;
2859 pub const WBEM_FLAVOR_ORIGIN_LOCAL: WBEM_FLAVOR_TYPE = 0i32;
2860 pub const WBEM_FLAVOR_ORIGIN_PROPAGATED: WBEM_FLAVOR_TYPE = 32i32;
2861 pub const WBEM_FLAVOR_ORIGIN_SYSTEM: WBEM_FLAVOR_TYPE = 64i32;
2862 pub const WBEM_FLAVOR_MASK_ORIGIN: WBEM_FLAVOR_TYPE = 96i32;
2863 pub const WBEM_FLAVOR_NOT_AMENDED: WBEM_FLAVOR_TYPE = 0i32;
2864 pub const WBEM_FLAVOR_AMENDED: WBEM_FLAVOR_TYPE = 128i32;
2865 pub const WBEM_FLAVOR_MASK_AMENDED: WBEM_FLAVOR_TYPE = 128i32;
2866 pub type WBEM_GENERIC_FLAG_TYPE = i32;
2867 pub const WBEM_FLAG_RETURN_IMMEDIATELY: WBEM_GENERIC_FLAG_TYPE = 16i32;
2868 pub const WBEM_FLAG_RETURN_WBEM_COMPLETE: WBEM_GENERIC_FLAG_TYPE = 0i32;
2869 pub const WBEM_FLAG_BIDIRECTIONAL: WBEM_GENERIC_FLAG_TYPE = 0i32;
2870 pub const WBEM_FLAG_FORWARD_ONLY: WBEM_GENERIC_FLAG_TYPE = 32i32;
2871 pub const WBEM_FLAG_NO_ERROR_OBJECT: WBEM_GENERIC_FLAG_TYPE = 64i32;
2872 pub const WBEM_FLAG_RETURN_ERROR_OBJECT: WBEM_GENERIC_FLAG_TYPE = 0i32;
2873 pub const WBEM_FLAG_SEND_STATUS: WBEM_GENERIC_FLAG_TYPE = 128i32;
2874 pub const WBEM_FLAG_DONT_SEND_STATUS: WBEM_GENERIC_FLAG_TYPE = 0i32;
2875 pub const WBEM_FLAG_ENSURE_LOCATABLE: WBEM_GENERIC_FLAG_TYPE = 256i32;
2876 pub const WBEM_FLAG_DIRECT_READ: WBEM_GENERIC_FLAG_TYPE = 512i32;
2877 pub const WBEM_FLAG_SEND_ONLY_SELECTED: WBEM_GENERIC_FLAG_TYPE = 0i32;
2878 pub const WBEM_RETURN_WHEN_COMPLETE: WBEM_GENERIC_FLAG_TYPE = 0i32;
2879 pub const WBEM_RETURN_IMMEDIATELY: WBEM_GENERIC_FLAG_TYPE = 16i32;
2880 pub const WBEM_MASK_RESERVED_FLAGS: WBEM_GENERIC_FLAG_TYPE = 126976i32;
2881 pub const WBEM_FLAG_USE_AMENDED_QUALIFIERS: WBEM_GENERIC_FLAG_TYPE = 131072i32;
2882 pub const WBEM_FLAG_STRONG_VALIDATION: WBEM_GENERIC_FLAG_TYPE = 1048576i32;
2883 pub type WBEM_GENUS_TYPE = i32;
2884 pub const WBEM_GENUS_CLASS: WBEM_GENUS_TYPE = 1i32;
2885 pub const WBEM_GENUS_INSTANCE: WBEM_GENUS_TYPE = 2i32;
2886 pub type WBEM_GET_KEY_FLAGS = i32;
2887 pub const WBEMPATH_TEXT: WBEM_GET_KEY_FLAGS = 1i32;
2888 pub const WBEMPATH_QUOTEDTEXT: WBEM_GET_KEY_FLAGS = 2i32;
2889 pub type WBEM_GET_TEXT_FLAGS = i32;
2890 pub const WBEMPATH_COMPRESSED: WBEM_GET_TEXT_FLAGS = 1i32;
2891 pub const WBEMPATH_GET_RELATIVE_ONLY: WBEM_GET_TEXT_FLAGS = 2i32;
2892 pub const WBEMPATH_GET_SERVER_TOO: WBEM_GET_TEXT_FLAGS = 4i32;
2893 pub const WBEMPATH_GET_SERVER_AND_NAMESPACE_ONLY: WBEM_GET_TEXT_FLAGS = 8i32;
2894 pub const WBEMPATH_GET_NAMESPACE_ONLY: WBEM_GET_TEXT_FLAGS = 16i32;
2895 pub const WBEMPATH_GET_ORIGINAL: WBEM_GET_TEXT_FLAGS = 32i32;
2896 pub type WBEM_INFORMATION_FLAG_TYPE = i32;
2897 pub const WBEM_FLAG_SHORT_NAME: WBEM_INFORMATION_FLAG_TYPE = 1i32;
2898 pub const WBEM_FLAG_LONG_NAME: WBEM_INFORMATION_FLAG_TYPE = 2i32;
2899 pub type WBEM_LIMITATION_FLAG_TYPE = i32;
2900 pub const WBEM_FLAG_EXCLUDE_OBJECT_QUALIFIERS: WBEM_LIMITATION_FLAG_TYPE = 16i32;
2901 pub const WBEM_FLAG_EXCLUDE_PROPERTY_QUALIFIERS: WBEM_LIMITATION_FLAG_TYPE = 32i32;
2902 pub type WBEM_LIMITS = i32;
2903 pub const WBEM_MAX_IDENTIFIER: WBEM_LIMITS = 4096i32;
2904 pub const WBEM_MAX_QUERY: WBEM_LIMITS = 16384i32;
2905 pub const WBEM_MAX_PATH: WBEM_LIMITS = 8192i32;
2906 pub const WBEM_MAX_OBJECT_NESTING: WBEM_LIMITS = 64i32;
2907 pub const WBEM_MAX_USER_PROPERTIES: WBEM_LIMITS = 1024i32;
2908 pub type WBEM_LOCKING = i32;
2909 pub const WBEM_FLAG_ALLOW_READ: WBEM_LOCKING = 1i32;
2910 pub type WBEM_PATH_CREATE_FLAG = i32;
2911 pub const WBEMPATH_CREATE_ACCEPT_RELATIVE: WBEM_PATH_CREATE_FLAG = 1i32;
2912 pub const WBEMPATH_CREATE_ACCEPT_ABSOLUTE: WBEM_PATH_CREATE_FLAG = 2i32;
2913 pub const WBEMPATH_CREATE_ACCEPT_ALL: WBEM_PATH_CREATE_FLAG = 4i32;
2914 pub const WBEMPATH_TREAT_SINGLE_IDENT_AS_NS: WBEM_PATH_CREATE_FLAG = 8i32;
2915 pub type WBEM_PATH_STATUS_FLAG = i32;
2916 pub const WBEMPATH_INFO_ANON_LOCAL_MACHINE: WBEM_PATH_STATUS_FLAG = 1i32;
2917 pub const WBEMPATH_INFO_HAS_MACHINE_NAME: WBEM_PATH_STATUS_FLAG = 2i32;
2918 pub const WBEMPATH_INFO_IS_CLASS_REF: WBEM_PATH_STATUS_FLAG = 4i32;
2919 pub const WBEMPATH_INFO_IS_INST_REF: WBEM_PATH_STATUS_FLAG = 8i32;
2920 pub const WBEMPATH_INFO_HAS_SUBSCOPES: WBEM_PATH_STATUS_FLAG = 16i32;
2921 pub const WBEMPATH_INFO_IS_COMPOUND: WBEM_PATH_STATUS_FLAG = 32i32;
2922 pub const WBEMPATH_INFO_HAS_V2_REF_PATHS: WBEM_PATH_STATUS_FLAG = 64i32;
2923 pub const WBEMPATH_INFO_HAS_IMPLIED_KEY: WBEM_PATH_STATUS_FLAG = 128i32;
2924 pub const WBEMPATH_INFO_CONTAINS_SINGLETON: WBEM_PATH_STATUS_FLAG = 256i32;
2925 pub const WBEMPATH_INFO_V1_COMPLIANT: WBEM_PATH_STATUS_FLAG = 512i32;
2926 pub const WBEMPATH_INFO_V2_COMPLIANT: WBEM_PATH_STATUS_FLAG = 1024i32;
2927 pub const WBEMPATH_INFO_CIM_COMPLIANT: WBEM_PATH_STATUS_FLAG = 2048i32;
2928 pub const WBEMPATH_INFO_IS_SINGLETON: WBEM_PATH_STATUS_FLAG = 4096i32;
2929 pub const WBEMPATH_INFO_IS_PARENT: WBEM_PATH_STATUS_FLAG = 8192i32;
2930 pub const WBEMPATH_INFO_SERVER_NAMESPACE_ONLY: WBEM_PATH_STATUS_FLAG = 16384i32;
2931 pub const WBEMPATH_INFO_NATIVE_PATH: WBEM_PATH_STATUS_FLAG = 32768i32;
2932 pub const WBEMPATH_INFO_WMI_PATH: WBEM_PATH_STATUS_FLAG = 65536i32;
2933 pub const WBEMPATH_INFO_PATH_HAD_SERVER: WBEM_PATH_STATUS_FLAG = 131072i32;
2934 pub type WBEM_PROVIDER_FLAGS = i32;
2935 pub const WBEM_FLAG_OWNER_UPDATE: WBEM_PROVIDER_FLAGS = 65536i32;
2936 pub type WBEM_PROVIDER_REQUIREMENTS_TYPE = i32;
2937 pub const WBEM_REQUIREMENTS_START_POSTFILTER: WBEM_PROVIDER_REQUIREMENTS_TYPE = 0i32;
2938 pub const WBEM_REQUIREMENTS_STOP_POSTFILTER: WBEM_PROVIDER_REQUIREMENTS_TYPE = 1i32;
2939 pub const WBEM_REQUIREMENTS_RECHECK_SUBSCRIPTIONS: WBEM_PROVIDER_REQUIREMENTS_TYPE = 2i32;
2940 pub type WBEM_QUERY_FLAG_TYPE = i32;
2941 pub const WBEM_FLAG_DEEP: WBEM_QUERY_FLAG_TYPE = 0i32;
2942 pub const WBEM_FLAG_SHALLOW: WBEM_QUERY_FLAG_TYPE = 1i32;
2943 pub const WBEM_FLAG_PROTOTYPE: WBEM_QUERY_FLAG_TYPE = 2i32;
2944 pub type WBEM_REFRESHER_FLAGS = i32;
2945 pub const WBEM_FLAG_REFRESH_AUTO_RECONNECT: WBEM_REFRESHER_FLAGS = 0i32;
2946 pub const WBEM_FLAG_REFRESH_NO_AUTO_RECONNECT: WBEM_REFRESHER_FLAGS = 1i32;
2947 pub type WBEM_SECURITY_FLAGS = i32;
2948 pub const WBEM_ENABLE: WBEM_SECURITY_FLAGS = 1i32;
2949 pub const WBEM_METHOD_EXECUTE: WBEM_SECURITY_FLAGS = 2i32;
2950 pub const WBEM_FULL_WRITE_REP: WBEM_SECURITY_FLAGS = 4i32;
2951 pub const WBEM_PARTIAL_WRITE_REP: WBEM_SECURITY_FLAGS = 8i32;
2952 pub const WBEM_WRITE_PROVIDER: WBEM_SECURITY_FLAGS = 16i32;
2953 pub const WBEM_REMOTE_ACCESS: WBEM_SECURITY_FLAGS = 32i32;
2954 pub const WBEM_RIGHT_SUBSCRIBE: WBEM_SECURITY_FLAGS = 64i32;
2955 pub const WBEM_RIGHT_PUBLISH: WBEM_SECURITY_FLAGS = 128i32;
2956 pub type WBEM_SHUTDOWN_FLAGS = i32;
2957 pub const WBEM_SHUTDOWN_UNLOAD_COMPONENT: WBEM_SHUTDOWN_FLAGS = 1i32;
2958 pub const WBEM_SHUTDOWN_WMI: WBEM_SHUTDOWN_FLAGS = 2i32;
2959 pub const WBEM_SHUTDOWN_OS: WBEM_SHUTDOWN_FLAGS = 3i32;
2960 pub type WBEM_STATUS_TYPE = i32;
2961 pub const WBEM_STATUS_COMPLETE: WBEM_STATUS_TYPE = 0i32;
2962 pub const WBEM_STATUS_REQUIREMENTS: WBEM_STATUS_TYPE = 1i32;
2963 pub const WBEM_STATUS_PROGRESS: WBEM_STATUS_TYPE = 2i32;
2964 pub const WBEM_STATUS_LOGGING_INFORMATION: WBEM_STATUS_TYPE = 256i32;
2965 pub const WBEM_STATUS_LOGGING_INFORMATION_PROVIDER: WBEM_STATUS_TYPE = 512i32;
2966 pub const WBEM_STATUS_LOGGING_INFORMATION_HOST: WBEM_STATUS_TYPE = 1024i32;
2967 pub const WBEM_STATUS_LOGGING_INFORMATION_REPOSITORY: WBEM_STATUS_TYPE = 2048i32;
2968 pub const WBEM_STATUS_LOGGING_INFORMATION_ESS: WBEM_STATUS_TYPE = 4096i32;
2969 pub type WBEM_TEXT_FLAG_TYPE = i32;
2970 pub const WBEM_FLAG_NO_FLAVORS: WBEM_TEXT_FLAG_TYPE = 1i32;
2971 pub type WBEM_TIMEOUT_TYPE = i32;
2972 pub const WBEM_NO_WAIT: WBEM_TIMEOUT_TYPE = 0i32;
2973 pub const WBEM_INFINITE: WBEM_TIMEOUT_TYPE = -1i32;
2974 pub type WBEM_UNSECAPP_FLAG_TYPE = i32;
2975 pub const WBEM_FLAG_UNSECAPP_DEFAULT_CHECK_ACCESS: WBEM_UNSECAPP_FLAG_TYPE = 0i32;
2976 pub const WBEM_FLAG_UNSECAPP_CHECK_ACCESS: WBEM_UNSECAPP_FLAG_TYPE = 1i32;
2977 pub const WBEM_FLAG_UNSECAPP_DONT_CHECK_ACCESS: WBEM_UNSECAPP_FLAG_TYPE = 2i32;
2978 pub const WMIExtension: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4036451070, data2: 23679, data3: 4562, data4: [139, 116, 0, 16, 75, 42, 251, 65] };
2979 pub type WMIQ_ANALYSIS_TYPE = i32;
2980 pub const WMIQ_ANALYSIS_RPN_SEQUENCE: WMIQ_ANALYSIS_TYPE = 1i32;
2981 pub const WMIQ_ANALYSIS_ASSOC_QUERY: WMIQ_ANALYSIS_TYPE = 2i32;
2982 pub const WMIQ_ANALYSIS_PROP_ANALYSIS_MATRIX: WMIQ_ANALYSIS_TYPE = 3i32;
2983 pub const WMIQ_ANALYSIS_QUERY_TEXT: WMIQ_ANALYSIS_TYPE = 4i32;
2984 pub const WMIQ_ANALYSIS_RESERVED: WMIQ_ANALYSIS_TYPE = 134217728i32;
2985 pub type WMIQ_ASSOCQ_FLAGS = i32;
2986 pub const WMIQ_ASSOCQ_ASSOCIATORS: WMIQ_ASSOCQ_FLAGS = 1i32;
2987 pub const WMIQ_ASSOCQ_REFERENCES: WMIQ_ASSOCQ_FLAGS = 2i32;
2988 pub const WMIQ_ASSOCQ_RESULTCLASS: WMIQ_ASSOCQ_FLAGS = 4i32;
2989 pub const WMIQ_ASSOCQ_ASSOCCLASS: WMIQ_ASSOCQ_FLAGS = 8i32;
2990 pub const WMIQ_ASSOCQ_ROLE: WMIQ_ASSOCQ_FLAGS = 16i32;
2991 pub const WMIQ_ASSOCQ_RESULTROLE: WMIQ_ASSOCQ_FLAGS = 32i32;
2992 pub const WMIQ_ASSOCQ_REQUIREDQUALIFIER: WMIQ_ASSOCQ_FLAGS = 64i32;
2993 pub const WMIQ_ASSOCQ_REQUIREDASSOCQUALIFIER: WMIQ_ASSOCQ_FLAGS = 128i32;
2994 pub const WMIQ_ASSOCQ_CLASSDEFSONLY: WMIQ_ASSOCQ_FLAGS = 256i32;
2995 pub const WMIQ_ASSOCQ_KEYSONLY: WMIQ_ASSOCQ_FLAGS = 512i32;
2996 pub const WMIQ_ASSOCQ_SCHEMAONLY: WMIQ_ASSOCQ_FLAGS = 1024i32;
2997 pub const WMIQ_ASSOCQ_CLASSREFSONLY: WMIQ_ASSOCQ_FLAGS = 2048i32;
2998 pub type WMIQ_LANGUAGE_FEATURES = i32;
2999 pub const WMIQ_LF1_BASIC_SELECT: WMIQ_LANGUAGE_FEATURES = 1i32;
3000 pub const WMIQ_LF2_CLASS_NAME_IN_QUERY: WMIQ_LANGUAGE_FEATURES = 2i32;
3001 pub const WMIQ_LF3_STRING_CASE_FUNCTIONS: WMIQ_LANGUAGE_FEATURES = 3i32;
3002 pub const WMIQ_LF4_PROP_TO_PROP_TESTS: WMIQ_LANGUAGE_FEATURES = 4i32;
3003 pub const WMIQ_LF5_COUNT_STAR: WMIQ_LANGUAGE_FEATURES = 5i32;
3004 pub const WMIQ_LF6_ORDER_BY: WMIQ_LANGUAGE_FEATURES = 6i32;
3005 pub const WMIQ_LF7_DISTINCT: WMIQ_LANGUAGE_FEATURES = 7i32;
3006 pub const WMIQ_LF8_ISA: WMIQ_LANGUAGE_FEATURES = 8i32;
3007 pub const WMIQ_LF9_THIS: WMIQ_LANGUAGE_FEATURES = 9i32;
3008 pub const WMIQ_LF10_COMPEX_SUBEXPRESSIONS: WMIQ_LANGUAGE_FEATURES = 10i32;
3009 pub const WMIQ_LF11_ALIASING: WMIQ_LANGUAGE_FEATURES = 11i32;
3010 pub const WMIQ_LF12_GROUP_BY_HAVING: WMIQ_LANGUAGE_FEATURES = 12i32;
3011 pub const WMIQ_LF13_WMI_WITHIN: WMIQ_LANGUAGE_FEATURES = 13i32;
3012 pub const WMIQ_LF14_SQL_WRITE_OPERATIONS: WMIQ_LANGUAGE_FEATURES = 14i32;
3013 pub const WMIQ_LF15_GO: WMIQ_LANGUAGE_FEATURES = 15i32;
3014 pub const WMIQ_LF16_SINGLE_LEVEL_TRANSACTIONS: WMIQ_LANGUAGE_FEATURES = 16i32;
3015 pub const WMIQ_LF17_QUALIFIED_NAMES: WMIQ_LANGUAGE_FEATURES = 17i32;
3016 pub const WMIQ_LF18_ASSOCIATONS: WMIQ_LANGUAGE_FEATURES = 18i32;
3017 pub const WMIQ_LF19_SYSTEM_PROPERTIES: WMIQ_LANGUAGE_FEATURES = 19i32;
3018 pub const WMIQ_LF20_EXTENDED_SYSTEM_PROPERTIES: WMIQ_LANGUAGE_FEATURES = 20i32;
3019 pub const WMIQ_LF21_SQL89_JOINS: WMIQ_LANGUAGE_FEATURES = 21i32;
3020 pub const WMIQ_LF22_SQL92_JOINS: WMIQ_LANGUAGE_FEATURES = 22i32;
3021 pub const WMIQ_LF23_SUBSELECTS: WMIQ_LANGUAGE_FEATURES = 23i32;
3022 pub const WMIQ_LF24_UMI_EXTENSIONS: WMIQ_LANGUAGE_FEATURES = 24i32;
3023 pub const WMIQ_LF25_DATEPART: WMIQ_LANGUAGE_FEATURES = 25i32;
3024 pub const WMIQ_LF26_LIKE: WMIQ_LANGUAGE_FEATURES = 26i32;
3025 pub const WMIQ_LF27_CIM_TEMPORAL_CONSTRUCTS: WMIQ_LANGUAGE_FEATURES = 27i32;
3026 pub const WMIQ_LF28_STANDARD_AGGREGATES: WMIQ_LANGUAGE_FEATURES = 28i32;
3027 pub const WMIQ_LF29_MULTI_LEVEL_ORDER_BY: WMIQ_LANGUAGE_FEATURES = 29i32;
3028 pub const WMIQ_LF30_WMI_PRAGMAS: WMIQ_LANGUAGE_FEATURES = 30i32;
3029 pub const WMIQ_LF31_QUALIFIER_TESTS: WMIQ_LANGUAGE_FEATURES = 31i32;
3030 pub const WMIQ_LF32_SP_EXECUTE: WMIQ_LANGUAGE_FEATURES = 32i32;
3031 pub const WMIQ_LF33_ARRAY_ACCESS: WMIQ_LANGUAGE_FEATURES = 33i32;
3032 pub const WMIQ_LF34_UNION: WMIQ_LANGUAGE_FEATURES = 34i32;
3033 pub const WMIQ_LF35_COMPLEX_SELECT_TARGET: WMIQ_LANGUAGE_FEATURES = 35i32;
3034 pub const WMIQ_LF36_REFERENCE_TESTS: WMIQ_LANGUAGE_FEATURES = 36i32;
3035 pub const WMIQ_LF37_SELECT_INTO: WMIQ_LANGUAGE_FEATURES = 37i32;
3036 pub const WMIQ_LF38_BASIC_DATETIME_TESTS: WMIQ_LANGUAGE_FEATURES = 38i32;
3037 pub const WMIQ_LF39_COUNT_COLUMN: WMIQ_LANGUAGE_FEATURES = 39i32;
3038 pub const WMIQ_LF40_BETWEEN: WMIQ_LANGUAGE_FEATURES = 40i32;
3039 pub const WMIQ_LF_LAST: WMIQ_LANGUAGE_FEATURES = 40i32;
3040 pub type WMIQ_RPNQ_FEATURE = i32;
3041 pub const WMIQ_RPNF_WHERE_CLAUSE_PRESENT: WMIQ_RPNQ_FEATURE = 1i32;
3042 pub const WMIQ_RPNF_QUERY_IS_CONJUNCTIVE: WMIQ_RPNQ_FEATURE = 2i32;
3043 pub const WMIQ_RPNF_QUERY_IS_DISJUNCTIVE: WMIQ_RPNQ_FEATURE = 4i32;
3044 pub const WMIQ_RPNF_PROJECTION: WMIQ_RPNQ_FEATURE = 8i32;
3045 pub const WMIQ_RPNF_FEATURE_SELECT_STAR: WMIQ_RPNQ_FEATURE = 16i32;
3046 pub const WMIQ_RPNF_EQUALITY_TESTS_ONLY: WMIQ_RPNQ_FEATURE = 32i32;
3047 pub const WMIQ_RPNF_COUNT_STAR: WMIQ_RPNQ_FEATURE = 64i32;
3048 pub const WMIQ_RPNF_QUALIFIED_NAMES_USED: WMIQ_RPNQ_FEATURE = 128i32;
3049 pub const WMIQ_RPNF_SYSPROP_CLASS_USED: WMIQ_RPNQ_FEATURE = 256i32;
3050 pub const WMIQ_RPNF_PROP_TO_PROP_TESTS: WMIQ_RPNQ_FEATURE = 512i32;
3051 pub const WMIQ_RPNF_ORDER_BY: WMIQ_RPNQ_FEATURE = 1024i32;
3052 pub const WMIQ_RPNF_ISA_USED: WMIQ_RPNQ_FEATURE = 2048i32;
3053 pub const WMIQ_RPNF_GROUP_BY_HAVING: WMIQ_RPNQ_FEATURE = 4096i32;
3054 pub const WMIQ_RPNF_ARRAY_ACCESS_USED: WMIQ_RPNQ_FEATURE = 8192i32;
3055 pub type WMIQ_RPN_TOKEN_FLAGS = i32;
3056 pub const WMIQ_RPN_TOKEN_EXPRESSION: WMIQ_RPN_TOKEN_FLAGS = 1i32;
3057 pub const WMIQ_RPN_TOKEN_AND: WMIQ_RPN_TOKEN_FLAGS = 2i32;
3058 pub const WMIQ_RPN_TOKEN_OR: WMIQ_RPN_TOKEN_FLAGS = 3i32;
3059 pub const WMIQ_RPN_TOKEN_NOT: WMIQ_RPN_TOKEN_FLAGS = 4i32;
3060 pub const WMIQ_RPN_OP_UNDEFINED: WMIQ_RPN_TOKEN_FLAGS = 0i32;
3061 pub const WMIQ_RPN_OP_EQ: WMIQ_RPN_TOKEN_FLAGS = 1i32;
3062 pub const WMIQ_RPN_OP_NE: WMIQ_RPN_TOKEN_FLAGS = 2i32;
3063 pub const WMIQ_RPN_OP_GE: WMIQ_RPN_TOKEN_FLAGS = 3i32;
3064 pub const WMIQ_RPN_OP_LE: WMIQ_RPN_TOKEN_FLAGS = 4i32;
3065 pub const WMIQ_RPN_OP_LT: WMIQ_RPN_TOKEN_FLAGS = 5i32;
3066 pub const WMIQ_RPN_OP_GT: WMIQ_RPN_TOKEN_FLAGS = 6i32;
3067 pub const WMIQ_RPN_OP_LIKE: WMIQ_RPN_TOKEN_FLAGS = 7i32;
3068 pub const WMIQ_RPN_OP_ISA: WMIQ_RPN_TOKEN_FLAGS = 8i32;
3069 pub const WMIQ_RPN_OP_ISNOTA: WMIQ_RPN_TOKEN_FLAGS = 9i32;
3070 pub const WMIQ_RPN_OP_ISNULL: WMIQ_RPN_TOKEN_FLAGS = 10i32;
3071 pub const WMIQ_RPN_OP_ISNOTNULL: WMIQ_RPN_TOKEN_FLAGS = 11i32;
3072 pub const WMIQ_RPN_LEFT_PROPERTY_NAME: WMIQ_RPN_TOKEN_FLAGS = 1i32;
3073 pub const WMIQ_RPN_RIGHT_PROPERTY_NAME: WMIQ_RPN_TOKEN_FLAGS = 2i32;
3074 pub const WMIQ_RPN_CONST2: WMIQ_RPN_TOKEN_FLAGS = 4i32;
3075 pub const WMIQ_RPN_CONST: WMIQ_RPN_TOKEN_FLAGS = 8i32;
3076 pub const WMIQ_RPN_RELOP: WMIQ_RPN_TOKEN_FLAGS = 16i32;
3077 pub const WMIQ_RPN_LEFT_FUNCTION: WMIQ_RPN_TOKEN_FLAGS = 32i32;
3078 pub const WMIQ_RPN_RIGHT_FUNCTION: WMIQ_RPN_TOKEN_FLAGS = 64i32;
3079 pub const WMIQ_RPN_GET_TOKEN_TYPE: WMIQ_RPN_TOKEN_FLAGS = 1i32;
3080 pub const WMIQ_RPN_GET_EXPR_SHAPE: WMIQ_RPN_TOKEN_FLAGS = 2i32;
3081 pub const WMIQ_RPN_GET_LEFT_FUNCTION: WMIQ_RPN_TOKEN_FLAGS = 3i32;
3082 pub const WMIQ_RPN_GET_RIGHT_FUNCTION: WMIQ_RPN_TOKEN_FLAGS = 4i32;
3083 pub const WMIQ_RPN_GET_RELOP: WMIQ_RPN_TOKEN_FLAGS = 5i32;
3084 pub const WMIQ_RPN_NEXT_TOKEN: WMIQ_RPN_TOKEN_FLAGS = 1i32;
3085 pub const WMIQ_RPN_FROM_UNARY: WMIQ_RPN_TOKEN_FLAGS = 1i32;
3086 pub const WMIQ_RPN_FROM_PATH: WMIQ_RPN_TOKEN_FLAGS = 2i32;
3087 pub const WMIQ_RPN_FROM_CLASS_LIST: WMIQ_RPN_TOKEN_FLAGS = 4i32;
3088 pub const WMIQ_RPN_FROM_MULTIPLE: WMIQ_RPN_TOKEN_FLAGS = 8i32;
3089 pub type WMI_OBJ_TEXT = i32;
3090 pub const WMI_OBJ_TEXT_CIM_DTD_2_0: WMI_OBJ_TEXT = 1i32;
3091 pub const WMI_OBJ_TEXT_WMI_DTD_2_0: WMI_OBJ_TEXT = 2i32;
3092 pub const WMI_OBJ_TEXT_WMI_EXT1: WMI_OBJ_TEXT = 3i32;
3093 pub const WMI_OBJ_TEXT_WMI_EXT2: WMI_OBJ_TEXT = 4i32;
3094 pub const WMI_OBJ_TEXT_WMI_EXT3: WMI_OBJ_TEXT = 5i32;
3095 pub const WMI_OBJ_TEXT_WMI_EXT4: WMI_OBJ_TEXT = 6i32;
3096 pub const WMI_OBJ_TEXT_WMI_EXT5: WMI_OBJ_TEXT = 7i32;
3097 pub const WMI_OBJ_TEXT_WMI_EXT6: WMI_OBJ_TEXT = 8i32;
3098 pub const WMI_OBJ_TEXT_WMI_EXT7: WMI_OBJ_TEXT = 9i32;
3099 pub const WMI_OBJ_TEXT_WMI_EXT8: WMI_OBJ_TEXT = 10i32;
3100 pub const WMI_OBJ_TEXT_WMI_EXT9: WMI_OBJ_TEXT = 11i32;
3101 pub const WMI_OBJ_TEXT_WMI_EXT10: WMI_OBJ_TEXT = 12i32;
3102 pub const WMI_OBJ_TEXT_LAST: WMI_OBJ_TEXT = 13i32;
3103 pub const WbemAdministrativeLocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3414513100, data2: 37160, data3: 4561, data4: [173, 155, 0, 192, 79, 216, 253, 255] };
3104 pub const WbemAuthenticatedLocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3440919350, data2: 37160, data3: 4561, data4: [173, 155, 0, 192, 79, 216, 253, 255] };
3105 pub type WbemAuthenticationLevelEnum = i32;
3106 pub const wbemAuthenticationLevelDefault: WbemAuthenticationLevelEnum = 0i32;
3107 pub const wbemAuthenticationLevelNone: WbemAuthenticationLevelEnum = 1i32;
3108 pub const wbemAuthenticationLevelConnect: WbemAuthenticationLevelEnum = 2i32;
3109 pub const wbemAuthenticationLevelCall: WbemAuthenticationLevelEnum = 3i32;
3110 pub const wbemAuthenticationLevelPkt: WbemAuthenticationLevelEnum = 4i32;
3111 pub const wbemAuthenticationLevelPktIntegrity: WbemAuthenticationLevelEnum = 5i32;
3112 pub const wbemAuthenticationLevelPktPrivacy: WbemAuthenticationLevelEnum = 6i32;
3113 pub const WbemBackupRestore: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3298702022, data2: 48267, data3: 4562, data4: [133, 212, 0, 16, 90, 31, 131, 4] };
3114 pub type WbemChangeFlagEnum = i32;
3115 pub const wbemChangeFlagCreateOrUpdate: WbemChangeFlagEnum = 0i32;
3116 pub const wbemChangeFlagUpdateOnly: WbemChangeFlagEnum = 1i32;
3117 pub const wbemChangeFlagCreateOnly: WbemChangeFlagEnum = 2i32;
3118 pub const wbemChangeFlagUpdateCompatible: WbemChangeFlagEnum = 0i32;
3119 pub const wbemChangeFlagUpdateSafeMode: WbemChangeFlagEnum = 32i32;
3120 pub const wbemChangeFlagUpdateForceMode: WbemChangeFlagEnum = 64i32;
3121 pub const wbemChangeFlagStrongValidation: WbemChangeFlagEnum = 128i32;
3122 pub const wbemChangeFlagAdvisory: WbemChangeFlagEnum = 65536i32;
3123 pub type WbemCimtypeEnum = i32;
3124 pub const wbemCimtypeSint8: WbemCimtypeEnum = 16i32;
3125 pub const wbemCimtypeUint8: WbemCimtypeEnum = 17i32;
3126 pub const wbemCimtypeSint16: WbemCimtypeEnum = 2i32;
3127 pub const wbemCimtypeUint16: WbemCimtypeEnum = 18i32;
3128 pub const wbemCimtypeSint32: WbemCimtypeEnum = 3i32;
3129 pub const wbemCimtypeUint32: WbemCimtypeEnum = 19i32;
3130 pub const wbemCimtypeSint64: WbemCimtypeEnum = 20i32;
3131 pub const wbemCimtypeUint64: WbemCimtypeEnum = 21i32;
3132 pub const wbemCimtypeReal32: WbemCimtypeEnum = 4i32;
3133 pub const wbemCimtypeReal64: WbemCimtypeEnum = 5i32;
3134 pub const wbemCimtypeBoolean: WbemCimtypeEnum = 11i32;
3135 pub const wbemCimtypeString: WbemCimtypeEnum = 8i32;
3136 pub const wbemCimtypeDatetime: WbemCimtypeEnum = 101i32;
3137 pub const wbemCimtypeReference: WbemCimtypeEnum = 102i32;
3138 pub const wbemCimtypeChar16: WbemCimtypeEnum = 103i32;
3139 pub const wbemCimtypeObject: WbemCimtypeEnum = 13i32;
3140 pub const WbemClassObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2590322822, data2: 5967, data3: 4562, data4: [181, 249, 0, 16, 75, 112, 62, 253] };
3141 pub type WbemComparisonFlagEnum = i32;
3142 pub const wbemComparisonFlagIncludeAll: WbemComparisonFlagEnum = 0i32;
3143 pub const wbemComparisonFlagIgnoreQualifiers: WbemComparisonFlagEnum = 1i32;
3144 pub const wbemComparisonFlagIgnoreObjectSource: WbemComparisonFlagEnum = 2i32;
3145 pub const wbemComparisonFlagIgnoreDefaultValues: WbemComparisonFlagEnum = 4i32;
3146 pub const wbemComparisonFlagIgnoreClass: WbemComparisonFlagEnum = 8i32;
3147 pub const wbemComparisonFlagIgnoreCase: WbemComparisonFlagEnum = 16i32;
3148 pub const wbemComparisonFlagIgnoreFlavor: WbemComparisonFlagEnum = 32i32;
3149 pub type WbemConnectOptionsEnum = i32;
3150 pub const wbemConnectFlagUseMaxWait: WbemConnectOptionsEnum = 128i32;
3151 pub const WbemContext: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1732994712, data2: 61074, data3: 4560, data4: [173, 113, 0, 192, 79, 216, 253, 255] };
3152 pub const WbemDCOMTransport: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4157484563, data2: 35984, data3: 4561, data4: [158, 123, 0, 192, 79, 195, 36, 168] };
3153 pub const WbemDecoupledBasicEventProvider: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
3154     data1: 4126627639,
3155     data2: 10307,
3156     data3: 20258,
3157     data4: [147, 61, 199, 106, 151, 205, 166, 47],
3158 };
3159 pub const WbemDecoupledRegistrar: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
3160     data1: 1291614514,
3161     data2: 3997,
3162     data3: 19439,
3163     data4: [156, 50, 142, 162, 166, 181, 111, 203],
3164 };
3165 pub const WbemDefPath: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
3166     data1: 3477914629,
3167     data2: 58053,
3168     data3: 19933,
3169     data4: [179, 206, 94, 117, 130, 216, 201, 250],
3170 };
3171 pub type WbemErrorEnum = i32;
3172 pub const wbemNoErr: WbemErrorEnum = 0i32;
3173 pub const wbemErrFailed: WbemErrorEnum = -2147217407i32;
3174 pub const wbemErrNotFound: WbemErrorEnum = -2147217406i32;
3175 pub const wbemErrAccessDenied: WbemErrorEnum = -2147217405i32;
3176 pub const wbemErrProviderFailure: WbemErrorEnum = -2147217404i32;
3177 pub const wbemErrTypeMismatch: WbemErrorEnum = -2147217403i32;
3178 pub const wbemErrOutOfMemory: WbemErrorEnum = -2147217402i32;
3179 pub const wbemErrInvalidContext: WbemErrorEnum = -2147217401i32;
3180 pub const wbemErrInvalidParameter: WbemErrorEnum = -2147217400i32;
3181 pub const wbemErrNotAvailable: WbemErrorEnum = -2147217399i32;
3182 pub const wbemErrCriticalError: WbemErrorEnum = -2147217398i32;
3183 pub const wbemErrInvalidStream: WbemErrorEnum = -2147217397i32;
3184 pub const wbemErrNotSupported: WbemErrorEnum = -2147217396i32;
3185 pub const wbemErrInvalidSuperclass: WbemErrorEnum = -2147217395i32;
3186 pub const wbemErrInvalidNamespace: WbemErrorEnum = -2147217394i32;
3187 pub const wbemErrInvalidObject: WbemErrorEnum = -2147217393i32;
3188 pub const wbemErrInvalidClass: WbemErrorEnum = -2147217392i32;
3189 pub const wbemErrProviderNotFound: WbemErrorEnum = -2147217391i32;
3190 pub const wbemErrInvalidProviderRegistration: WbemErrorEnum = -2147217390i32;
3191 pub const wbemErrProviderLoadFailure: WbemErrorEnum = -2147217389i32;
3192 pub const wbemErrInitializationFailure: WbemErrorEnum = -2147217388i32;
3193 pub const wbemErrTransportFailure: WbemErrorEnum = -2147217387i32;
3194 pub const wbemErrInvalidOperation: WbemErrorEnum = -2147217386i32;
3195 pub const wbemErrInvalidQuery: WbemErrorEnum = -2147217385i32;
3196 pub const wbemErrInvalidQueryType: WbemErrorEnum = -2147217384i32;
3197 pub const wbemErrAlreadyExists: WbemErrorEnum = -2147217383i32;
3198 pub const wbemErrOverrideNotAllowed: WbemErrorEnum = -2147217382i32;
3199 pub const wbemErrPropagatedQualifier: WbemErrorEnum = -2147217381i32;
3200 pub const wbemErrPropagatedProperty: WbemErrorEnum = -2147217380i32;
3201 pub const wbemErrUnexpected: WbemErrorEnum = -2147217379i32;
3202 pub const wbemErrIllegalOperation: WbemErrorEnum = -2147217378i32;
3203 pub const wbemErrCannotBeKey: WbemErrorEnum = -2147217377i32;
3204 pub const wbemErrIncompleteClass: WbemErrorEnum = -2147217376i32;
3205 pub const wbemErrInvalidSyntax: WbemErrorEnum = -2147217375i32;
3206 pub const wbemErrNondecoratedObject: WbemErrorEnum = -2147217374i32;
3207 pub const wbemErrReadOnly: WbemErrorEnum = -2147217373i32;
3208 pub const wbemErrProviderNotCapable: WbemErrorEnum = -2147217372i32;
3209 pub const wbemErrClassHasChildren: WbemErrorEnum = -2147217371i32;
3210 pub const wbemErrClassHasInstances: WbemErrorEnum = -2147217370i32;
3211 pub const wbemErrQueryNotImplemented: WbemErrorEnum = -2147217369i32;
3212 pub const wbemErrIllegalNull: WbemErrorEnum = -2147217368i32;
3213 pub const wbemErrInvalidQualifierType: WbemErrorEnum = -2147217367i32;
3214 pub const wbemErrInvalidPropertyType: WbemErrorEnum = -2147217366i32;
3215 pub const wbemErrValueOutOfRange: WbemErrorEnum = -2147217365i32;
3216 pub const wbemErrCannotBeSingleton: WbemErrorEnum = -2147217364i32;
3217 pub const wbemErrInvalidCimType: WbemErrorEnum = -2147217363i32;
3218 pub const wbemErrInvalidMethod: WbemErrorEnum = -2147217362i32;
3219 pub const wbemErrInvalidMethodParameters: WbemErrorEnum = -2147217361i32;
3220 pub const wbemErrSystemProperty: WbemErrorEnum = -2147217360i32;
3221 pub const wbemErrInvalidProperty: WbemErrorEnum = -2147217359i32;
3222 pub const wbemErrCallCancelled: WbemErrorEnum = -2147217358i32;
3223 pub const wbemErrShuttingDown: WbemErrorEnum = -2147217357i32;
3224 pub const wbemErrPropagatedMethod: WbemErrorEnum = -2147217356i32;
3225 pub const wbemErrUnsupportedParameter: WbemErrorEnum = -2147217355i32;
3226 pub const wbemErrMissingParameter: WbemErrorEnum = -2147217354i32;
3227 pub const wbemErrInvalidParameterId: WbemErrorEnum = -2147217353i32;
3228 pub const wbemErrNonConsecutiveParameterIds: WbemErrorEnum = -2147217352i32;
3229 pub const wbemErrParameterIdOnRetval: WbemErrorEnum = -2147217351i32;
3230 pub const wbemErrInvalidObjectPath: WbemErrorEnum = -2147217350i32;
3231 pub const wbemErrOutOfDiskSpace: WbemErrorEnum = -2147217349i32;
3232 pub const wbemErrBufferTooSmall: WbemErrorEnum = -2147217348i32;
3233 pub const wbemErrUnsupportedPutExtension: WbemErrorEnum = -2147217347i32;
3234 pub const wbemErrUnknownObjectType: WbemErrorEnum = -2147217346i32;
3235 pub const wbemErrUnknownPacketType: WbemErrorEnum = -2147217345i32;
3236 pub const wbemErrMarshalVersionMismatch: WbemErrorEnum = -2147217344i32;
3237 pub const wbemErrMarshalInvalidSignature: WbemErrorEnum = -2147217343i32;
3238 pub const wbemErrInvalidQualifier: WbemErrorEnum = -2147217342i32;
3239 pub const wbemErrInvalidDuplicateParameter: WbemErrorEnum = -2147217341i32;
3240 pub const wbemErrTooMuchData: WbemErrorEnum = -2147217340i32;
3241 pub const wbemErrServerTooBusy: WbemErrorEnum = -2147217339i32;
3242 pub const wbemErrInvalidFlavor: WbemErrorEnum = -2147217338i32;
3243 pub const wbemErrCircularReference: WbemErrorEnum = -2147217337i32;
3244 pub const wbemErrUnsupportedClassUpdate: WbemErrorEnum = -2147217336i32;
3245 pub const wbemErrCannotChangeKeyInheritance: WbemErrorEnum = -2147217335i32;
3246 pub const wbemErrCannotChangeIndexInheritance: WbemErrorEnum = -2147217328i32;
3247 pub const wbemErrTooManyProperties: WbemErrorEnum = -2147217327i32;
3248 pub const wbemErrUpdateTypeMismatch: WbemErrorEnum = -2147217326i32;
3249 pub const wbemErrUpdateOverrideNotAllowed: WbemErrorEnum = -2147217325i32;
3250 pub const wbemErrUpdatePropagatedMethod: WbemErrorEnum = -2147217324i32;
3251 pub const wbemErrMethodNotImplemented: WbemErrorEnum = -2147217323i32;
3252 pub const wbemErrMethodDisabled: WbemErrorEnum = -2147217322i32;
3253 pub const wbemErrRefresherBusy: WbemErrorEnum = -2147217321i32;
3254 pub const wbemErrUnparsableQuery: WbemErrorEnum = -2147217320i32;
3255 pub const wbemErrNotEventClass: WbemErrorEnum = -2147217319i32;
3256 pub const wbemErrMissingGroupWithin: WbemErrorEnum = -2147217318i32;
3257 pub const wbemErrMissingAggregationList: WbemErrorEnum = -2147217317i32;
3258 pub const wbemErrPropertyNotAnObject: WbemErrorEnum = -2147217316i32;
3259 pub const wbemErrAggregatingByObject: WbemErrorEnum = -2147217315i32;
3260 pub const wbemErrUninterpretableProviderQuery: WbemErrorEnum = -2147217313i32;
3261 pub const wbemErrBackupRestoreWinmgmtRunning: WbemErrorEnum = -2147217312i32;
3262 pub const wbemErrQueueOverflow: WbemErrorEnum = -2147217311i32;
3263 pub const wbemErrPrivilegeNotHeld: WbemErrorEnum = -2147217310i32;
3264 pub const wbemErrInvalidOperator: WbemErrorEnum = -2147217309i32;
3265 pub const wbemErrLocalCredentials: WbemErrorEnum = -2147217308i32;
3266 pub const wbemErrCannotBeAbstract: WbemErrorEnum = -2147217307i32;
3267 pub const wbemErrAmendedObject: WbemErrorEnum = -2147217306i32;
3268 pub const wbemErrClientTooSlow: WbemErrorEnum = -2147217305i32;
3269 pub const wbemErrNullSecurityDescriptor: WbemErrorEnum = -2147217304i32;
3270 pub const wbemErrTimeout: WbemErrorEnum = -2147217303i32;
3271 pub const wbemErrInvalidAssociation: WbemErrorEnum = -2147217302i32;
3272 pub const wbemErrAmbiguousOperation: WbemErrorEnum = -2147217301i32;
3273 pub const wbemErrQuotaViolation: WbemErrorEnum = -2147217300i32;
3274 pub const wbemErrTransactionConflict: WbemErrorEnum = -2147217299i32;
3275 pub const wbemErrForcedRollback: WbemErrorEnum = -2147217298i32;
3276 pub const wbemErrUnsupportedLocale: WbemErrorEnum = -2147217297i32;
3277 pub const wbemErrHandleOutOfDate: WbemErrorEnum = -2147217296i32;
3278 pub const wbemErrConnectionFailed: WbemErrorEnum = -2147217295i32;
3279 pub const wbemErrInvalidHandleRequest: WbemErrorEnum = -2147217294i32;
3280 pub const wbemErrPropertyNameTooWide: WbemErrorEnum = -2147217293i32;
3281 pub const wbemErrClassNameTooWide: WbemErrorEnum = -2147217292i32;
3282 pub const wbemErrMethodNameTooWide: WbemErrorEnum = -2147217291i32;
3283 pub const wbemErrQualifierNameTooWide: WbemErrorEnum = -2147217290i32;
3284 pub const wbemErrRerunCommand: WbemErrorEnum = -2147217289i32;
3285 pub const wbemErrDatabaseVerMismatch: WbemErrorEnum = -2147217288i32;
3286 pub const wbemErrVetoPut: WbemErrorEnum = -2147217287i32;
3287 pub const wbemErrVetoDelete: WbemErrorEnum = -2147217286i32;
3288 pub const wbemErrInvalidLocale: WbemErrorEnum = -2147217280i32;
3289 pub const wbemErrProviderSuspended: WbemErrorEnum = -2147217279i32;
3290 pub const wbemErrSynchronizationRequired: WbemErrorEnum = -2147217278i32;
3291 pub const wbemErrNoSchema: WbemErrorEnum = -2147217277i32;
3292 pub const wbemErrProviderAlreadyRegistered: WbemErrorEnum = -2147217276i32;
3293 pub const wbemErrProviderNotRegistered: WbemErrorEnum = -2147217275i32;
3294 pub const wbemErrFatalTransportError: WbemErrorEnum = -2147217274i32;
3295 pub const wbemErrEncryptedConnectionRequired: WbemErrorEnum = -2147217273i32;
3296 pub const wbemErrRegistrationTooBroad: WbemErrorEnum = -2147213311i32;
3297 pub const wbemErrRegistrationTooPrecise: WbemErrorEnum = -2147213310i32;
3298 pub const wbemErrTimedout: WbemErrorEnum = -2147209215i32;
3299 pub const wbemErrResetToDefault: WbemErrorEnum = -2147209214i32;
3300 pub type WbemFlagEnum = i32;
3301 pub const wbemFlagReturnImmediately: WbemFlagEnum = 16i32;
3302 pub const wbemFlagReturnWhenComplete: WbemFlagEnum = 0i32;
3303 pub const wbemFlagBidirectional: WbemFlagEnum = 0i32;
3304 pub const wbemFlagForwardOnly: WbemFlagEnum = 32i32;
3305 pub const wbemFlagNoErrorObject: WbemFlagEnum = 64i32;
3306 pub const wbemFlagReturnErrorObject: WbemFlagEnum = 0i32;
3307 pub const wbemFlagSendStatus: WbemFlagEnum = 128i32;
3308 pub const wbemFlagDontSendStatus: WbemFlagEnum = 0i32;
3309 pub const wbemFlagEnsureLocatable: WbemFlagEnum = 256i32;
3310 pub const wbemFlagDirectRead: WbemFlagEnum = 512i32;
3311 pub const wbemFlagSendOnlySelected: WbemFlagEnum = 0i32;
3312 pub const wbemFlagUseAmendedQualifiers: WbemFlagEnum = 131072i32;
3313 pub const wbemFlagGetDefault: WbemFlagEnum = 0i32;
3314 pub const wbemFlagSpawnInstance: WbemFlagEnum = 1i32;
3315 pub const wbemFlagUseCurrentTime: WbemFlagEnum = 1i32;
3316 pub type WbemImpersonationLevelEnum = i32;
3317 pub const wbemImpersonationLevelAnonymous: WbemImpersonationLevelEnum = 1i32;
3318 pub const wbemImpersonationLevelIdentify: WbemImpersonationLevelEnum = 2i32;
3319 pub const wbemImpersonationLevelImpersonate: WbemImpersonationLevelEnum = 3i32;
3320 pub const wbemImpersonationLevelDelegate: WbemImpersonationLevelEnum = 4i32;
3321 pub const WbemLevel1Login: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2344874078, data2: 55403, data3: 4560, data4: [160, 117, 0, 192, 79, 182, 136, 32] };
3322 pub const WbemLocalAddrRes: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2701412353, data2: 36734, data3: 4561, data4: [158, 124, 0, 192, 79, 195, 36, 168] };
3323 pub const WbemLocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1167128593, data2: 7482, data3: 4560, data4: [137, 31, 0, 170, 0, 75, 46, 36] };
3324 pub type WbemObjectTextFormatEnum = i32;
3325 pub const wbemObjectTextFormatCIMDTD20: WbemObjectTextFormatEnum = 1i32;
3326 pub const wbemObjectTextFormatWMIDTD20: WbemObjectTextFormatEnum = 2i32;
3327 pub const WbemObjectTextSrc: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
3328     data1: 2367444381,
3329     data2: 34032,
3330     data3: 19379,
3331     data4: [167, 213, 86, 167, 67, 90, 155, 166],
3332 };
3333 pub type WbemPrivilegeEnum = i32;
3334 pub const wbemPrivilegeCreateToken: WbemPrivilegeEnum = 1i32;
3335 pub const wbemPrivilegePrimaryToken: WbemPrivilegeEnum = 2i32;
3336 pub const wbemPrivilegeLockMemory: WbemPrivilegeEnum = 3i32;
3337 pub const wbemPrivilegeIncreaseQuota: WbemPrivilegeEnum = 4i32;
3338 pub const wbemPrivilegeMachineAccount: WbemPrivilegeEnum = 5i32;
3339 pub const wbemPrivilegeTcb: WbemPrivilegeEnum = 6i32;
3340 pub const wbemPrivilegeSecurity: WbemPrivilegeEnum = 7i32;
3341 pub const wbemPrivilegeTakeOwnership: WbemPrivilegeEnum = 8i32;
3342 pub const wbemPrivilegeLoadDriver: WbemPrivilegeEnum = 9i32;
3343 pub const wbemPrivilegeSystemProfile: WbemPrivilegeEnum = 10i32;
3344 pub const wbemPrivilegeSystemtime: WbemPrivilegeEnum = 11i32;
3345 pub const wbemPrivilegeProfileSingleProcess: WbemPrivilegeEnum = 12i32;
3346 pub const wbemPrivilegeIncreaseBasePriority: WbemPrivilegeEnum = 13i32;
3347 pub const wbemPrivilegeCreatePagefile: WbemPrivilegeEnum = 14i32;
3348 pub const wbemPrivilegeCreatePermanent: WbemPrivilegeEnum = 15i32;
3349 pub const wbemPrivilegeBackup: WbemPrivilegeEnum = 16i32;
3350 pub const wbemPrivilegeRestore: WbemPrivilegeEnum = 17i32;
3351 pub const wbemPrivilegeShutdown: WbemPrivilegeEnum = 18i32;
3352 pub const wbemPrivilegeDebug: WbemPrivilegeEnum = 19i32;
3353 pub const wbemPrivilegeAudit: WbemPrivilegeEnum = 20i32;
3354 pub const wbemPrivilegeSystemEnvironment: WbemPrivilegeEnum = 21i32;
3355 pub const wbemPrivilegeChangeNotify: WbemPrivilegeEnum = 22i32;
3356 pub const wbemPrivilegeRemoteShutdown: WbemPrivilegeEnum = 23i32;
3357 pub const wbemPrivilegeUndock: WbemPrivilegeEnum = 24i32;
3358 pub const wbemPrivilegeSyncAgent: WbemPrivilegeEnum = 25i32;
3359 pub const wbemPrivilegeEnableDelegation: WbemPrivilegeEnum = 26i32;
3360 pub const wbemPrivilegeManageVolume: WbemPrivilegeEnum = 27i32;
3361 pub const WbemQuery: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
3362     data1: 3939016740,
3363     data2: 8674,
3364     data3: 17699,
3365     data4: [173, 115, 167, 26, 10, 162, 245, 106],
3366 };
3367 pub type WbemQueryFlagEnum = i32;
3368 pub const wbemQueryFlagDeep: WbemQueryFlagEnum = 0i32;
3369 pub const wbemQueryFlagShallow: WbemQueryFlagEnum = 1i32;
3370 pub const wbemQueryFlagPrototype: WbemQueryFlagEnum = 2i32;
3371 pub const WbemRefresher: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3340068594, data2: 22046, data3: 4561, data4: [173, 135, 0, 192, 79, 216, 253, 255] };
3372 pub const WbemStatusCodeText: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3951550909, data2: 12851, data3: 4562, data4: [174, 201, 0, 192, 79, 182, 136, 32] };
3373 pub type WbemTextFlagEnum = i32;
3374 pub const wbemTextFlagNoFlavors: WbemTextFlagEnum = 1i32;
3375 pub type WbemTimeout = i32;
3376 pub const wbemTimeoutInfinite: WbemTimeout = -1i32;
3377 pub const WbemUnauthenticatedLocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1144945529, data2: 56881, data3: 4562, data4: [179, 64, 0, 16, 75, 204, 75, 74] };
3378 pub const WbemUninitializedClassObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2046961654, data2: 28936, data3: 4561, data4: [173, 144, 0, 192, 79, 216, 253, 255] };
3379 pub type tag_WBEM_LOGIN_TYPE = i32;
3380 pub const WBEM_FLAG_INPROC_LOGIN: tag_WBEM_LOGIN_TYPE = 0i32;
3381 pub const WBEM_FLAG_LOCAL_LOGIN: tag_WBEM_LOGIN_TYPE = 1i32;
3382 pub const WBEM_FLAG_REMOTE_LOGIN: tag_WBEM_LOGIN_TYPE = 2i32;
3383 pub const WBEM_AUTHENTICATION_METHOD_MASK: tag_WBEM_LOGIN_TYPE = 15i32;
3384 pub const WBEM_FLAG_USE_MULTIPLE_CHALLENGES: tag_WBEM_LOGIN_TYPE = 16i32;
3385