]> git.proxmox.com Git - rustc.git/blame - vendor/windows-sys/src/Windows/Win32/Devices/DeviceQuery/mod.rs
New upstream version 1.67.1+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Win32 / Devices / DeviceQuery / mod.rs
CommitLineData
487cf647 1#[cfg_attr(windows, link(name = "windows"))]
5e7ed085 2extern "system" {
04454e1e 3 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 4 pub fn DevCloseObjectQuery(hdevquery: *const HDEVQUERY__);
04454e1e
FG
5 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
6 #[cfg(feature = "Win32_Devices_Properties")]
5e7ed085 7 pub fn DevCreateObjectQuery(objecttype: DEV_OBJECT_TYPE, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, cfilterexpressioncount: u32, pfilter: *const DEVPROP_FILTER_EXPRESSION, pcallback: PDEV_QUERY_RESULT_CALLBACK, pcontext: *const ::core::ffi::c_void, phdevquery: *mut *mut HDEVQUERY__) -> ::windows_sys::core::HRESULT;
04454e1e
FG
8 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
9 #[cfg(feature = "Win32_Devices_Properties")]
5e7ed085 10 pub fn DevCreateObjectQueryEx(objecttype: DEV_OBJECT_TYPE, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, cfilterexpressioncount: u32, pfilter: *const DEVPROP_FILTER_EXPRESSION, cextendedparametercount: u32, pextendedparameters: *const DEV_QUERY_PARAMETER, pcallback: PDEV_QUERY_RESULT_CALLBACK, pcontext: *const ::core::ffi::c_void, phdevquery: *mut *mut HDEVQUERY__) -> ::windows_sys::core::HRESULT;
04454e1e
FG
11 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
12 #[cfg(feature = "Win32_Devices_Properties")]
13 pub fn DevCreateObjectQueryFromId(objecttype: DEV_OBJECT_TYPE, pszobjectid: ::windows_sys::core::PCWSTR, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, cfilterexpressioncount: u32, pfilter: *const DEVPROP_FILTER_EXPRESSION, pcallback: PDEV_QUERY_RESULT_CALLBACK, pcontext: *const ::core::ffi::c_void, phdevquery: *mut *mut HDEVQUERY__) -> ::windows_sys::core::HRESULT;
14 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
15 #[cfg(feature = "Win32_Devices_Properties")]
16 pub fn DevCreateObjectQueryFromIdEx(objecttype: DEV_OBJECT_TYPE, pszobjectid: ::windows_sys::core::PCWSTR, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, cfilterexpressioncount: u32, pfilter: *const DEVPROP_FILTER_EXPRESSION, cextendedparametercount: u32, pextendedparameters: *const DEV_QUERY_PARAMETER, pcallback: PDEV_QUERY_RESULT_CALLBACK, pcontext: *const ::core::ffi::c_void, phdevquery: *mut *mut HDEVQUERY__) -> ::windows_sys::core::HRESULT;
17 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
18 #[cfg(feature = "Win32_Devices_Properties")]
19 pub fn DevCreateObjectQueryFromIds(objecttype: DEV_OBJECT_TYPE, pszzobjectids: ::windows_sys::core::PCWSTR, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, cfilterexpressioncount: u32, pfilter: *const DEVPROP_FILTER_EXPRESSION, pcallback: PDEV_QUERY_RESULT_CALLBACK, pcontext: *const ::core::ffi::c_void, phdevquery: *mut *mut HDEVQUERY__) -> ::windows_sys::core::HRESULT;
20 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
21 #[cfg(feature = "Win32_Devices_Properties")]
22 pub fn DevCreateObjectQueryFromIdsEx(objecttype: DEV_OBJECT_TYPE, pszzobjectids: ::windows_sys::core::PCWSTR, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, cfilterexpressioncount: u32, pfilter: *const DEVPROP_FILTER_EXPRESSION, cextendedparametercount: u32, pextendedparameters: *const DEV_QUERY_PARAMETER, pcallback: PDEV_QUERY_RESULT_CALLBACK, pcontext: *const ::core::ffi::c_void, phdevquery: *mut *mut HDEVQUERY__) -> ::windows_sys::core::HRESULT;
23 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
24 #[cfg(feature = "Win32_Devices_Properties")]
25 pub fn DevFindProperty(pkey: *const super::Properties::DEVPROPKEY, store: super::Properties::DEVPROPSTORE, pszlocalename: ::windows_sys::core::PCWSTR, cproperties: u32, pproperties: *const super::Properties::DEVPROPERTY) -> *mut super::Properties::DEVPROPERTY;
26 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
27 #[cfg(feature = "Win32_Devices_Properties")]
5e7ed085 28 pub fn DevFreeObjectProperties(cpropertycount: u32, pproperties: *const super::Properties::DEVPROPERTY);
04454e1e
FG
29 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
30 #[cfg(feature = "Win32_Devices_Properties")]
5e7ed085 31 pub fn DevFreeObjects(cobjectcount: u32, pobjects: *const DEV_OBJECT);
04454e1e
FG
32 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
33 #[cfg(feature = "Win32_Devices_Properties")]
34 pub fn DevGetObjectProperties(objecttype: DEV_OBJECT_TYPE, pszobjectid: ::windows_sys::core::PCWSTR, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, pcpropertycount: *mut u32, ppproperties: *mut *mut super::Properties::DEVPROPERTY) -> ::windows_sys::core::HRESULT;
35 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
36 #[cfg(feature = "Win32_Devices_Properties")]
37 pub fn DevGetObjectPropertiesEx(objecttype: DEV_OBJECT_TYPE, pszobjectid: ::windows_sys::core::PCWSTR, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, cextendedparametercount: u32, pextendedparameters: *const DEV_QUERY_PARAMETER, pcpropertycount: *mut u32, ppproperties: *mut *mut super::Properties::DEVPROPERTY) -> ::windows_sys::core::HRESULT;
38 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
39 #[cfg(feature = "Win32_Devices_Properties")]
5e7ed085 40 pub fn DevGetObjects(objecttype: DEV_OBJECT_TYPE, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, cfilterexpressioncount: u32, pfilter: *const DEVPROP_FILTER_EXPRESSION, pcobjectcount: *mut u32, ppobjects: *mut *mut DEV_OBJECT) -> ::windows_sys::core::HRESULT;
04454e1e
FG
41 #[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
42 #[cfg(feature = "Win32_Devices_Properties")]
5e7ed085
FG
43 pub fn DevGetObjectsEx(objecttype: DEV_OBJECT_TYPE, queryflags: u32, crequestedproperties: u32, prequestedproperties: *const super::Properties::DEVPROPCOMPKEY, cfilterexpressioncount: u32, pfilter: *const DEVPROP_FILTER_EXPRESSION, cextendedparametercount: u32, pextendedparameters: *const DEV_QUERY_PARAMETER, pcobjectcount: *mut u32, ppobjects: *mut *mut DEV_OBJECT) -> ::windows_sys::core::HRESULT;
44}
04454e1e 45#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 46pub type DEVPROP_OPERATOR = u32;
04454e1e 47#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 48pub const DEVPROP_OPERATOR_MODIFIER_NOT: DEVPROP_OPERATOR = 65536u32;
04454e1e 49#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 50pub const DEVPROP_OPERATOR_MODIFIER_IGNORE_CASE: DEVPROP_OPERATOR = 131072u32;
04454e1e 51#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 52pub const DEVPROP_OPERATOR_NONE: DEVPROP_OPERATOR = 0u32;
04454e1e 53#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 54pub const DEVPROP_OPERATOR_EXISTS: DEVPROP_OPERATOR = 1u32;
04454e1e 55#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 56pub const DEVPROP_OPERATOR_NOT_EXISTS: DEVPROP_OPERATOR = 65537u32;
04454e1e 57#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 58pub const DEVPROP_OPERATOR_EQUALS: DEVPROP_OPERATOR = 2u32;
04454e1e 59#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 60pub const DEVPROP_OPERATOR_NOT_EQUALS: DEVPROP_OPERATOR = 65538u32;
04454e1e 61#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 62pub const DEVPROP_OPERATOR_GREATER_THAN: DEVPROP_OPERATOR = 3u32;
04454e1e 63#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 64pub const DEVPROP_OPERATOR_LESS_THAN: DEVPROP_OPERATOR = 4u32;
04454e1e 65#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 66pub const DEVPROP_OPERATOR_GREATER_THAN_EQUALS: DEVPROP_OPERATOR = 5u32;
04454e1e 67#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 68pub const DEVPROP_OPERATOR_LESS_THAN_EQUALS: DEVPROP_OPERATOR = 6u32;
04454e1e 69#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 70pub const DEVPROP_OPERATOR_EQUALS_IGNORE_CASE: DEVPROP_OPERATOR = 131074u32;
04454e1e 71#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 72pub const DEVPROP_OPERATOR_NOT_EQUALS_IGNORE_CASE: DEVPROP_OPERATOR = 196610u32;
04454e1e 73#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 74pub const DEVPROP_OPERATOR_BITWISE_AND: DEVPROP_OPERATOR = 7u32;
04454e1e 75#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 76pub const DEVPROP_OPERATOR_BITWISE_OR: DEVPROP_OPERATOR = 8u32;
04454e1e 77#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 78pub const DEVPROP_OPERATOR_BEGINS_WITH: DEVPROP_OPERATOR = 9u32;
04454e1e 79#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 80pub const DEVPROP_OPERATOR_ENDS_WITH: DEVPROP_OPERATOR = 10u32;
04454e1e 81#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 82pub const DEVPROP_OPERATOR_CONTAINS: DEVPROP_OPERATOR = 11u32;
04454e1e 83#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 84pub const DEVPROP_OPERATOR_BEGINS_WITH_IGNORE_CASE: DEVPROP_OPERATOR = 131081u32;
04454e1e 85#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 86pub const DEVPROP_OPERATOR_ENDS_WITH_IGNORE_CASE: DEVPROP_OPERATOR = 131082u32;
04454e1e 87#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 88pub const DEVPROP_OPERATOR_CONTAINS_IGNORE_CASE: DEVPROP_OPERATOR = 131083u32;
04454e1e 89#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 90pub const DEVPROP_OPERATOR_LIST_CONTAINS: DEVPROP_OPERATOR = 4096u32;
04454e1e 91#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 92pub const DEVPROP_OPERATOR_LIST_ELEMENT_BEGINS_WITH: DEVPROP_OPERATOR = 8192u32;
04454e1e 93#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 94pub const DEVPROP_OPERATOR_LIST_ELEMENT_ENDS_WITH: DEVPROP_OPERATOR = 12288u32;
04454e1e 95#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 96pub const DEVPROP_OPERATOR_LIST_ELEMENT_CONTAINS: DEVPROP_OPERATOR = 16384u32;
04454e1e 97#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 98pub const DEVPROP_OPERATOR_LIST_CONTAINS_IGNORE_CASE: DEVPROP_OPERATOR = 135168u32;
04454e1e 99#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 100pub const DEVPROP_OPERATOR_LIST_ELEMENT_BEGINS_WITH_IGNORE_CASE: DEVPROP_OPERATOR = 139264u32;
04454e1e 101#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 102pub const DEVPROP_OPERATOR_LIST_ELEMENT_ENDS_WITH_IGNORE_CASE: DEVPROP_OPERATOR = 143360u32;
04454e1e 103#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 104pub const DEVPROP_OPERATOR_LIST_ELEMENT_CONTAINS_IGNORE_CASE: DEVPROP_OPERATOR = 147456u32;
04454e1e 105#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 106pub const DEVPROP_OPERATOR_AND_OPEN: DEVPROP_OPERATOR = 1048576u32;
04454e1e 107#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 108pub const DEVPROP_OPERATOR_AND_CLOSE: DEVPROP_OPERATOR = 2097152u32;
04454e1e 109#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 110pub const DEVPROP_OPERATOR_OR_OPEN: DEVPROP_OPERATOR = 3145728u32;
04454e1e 111#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 112pub const DEVPROP_OPERATOR_OR_CLOSE: DEVPROP_OPERATOR = 4194304u32;
04454e1e 113#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 114pub const DEVPROP_OPERATOR_NOT_OPEN: DEVPROP_OPERATOR = 5242880u32;
04454e1e 115#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 116pub const DEVPROP_OPERATOR_NOT_CLOSE: DEVPROP_OPERATOR = 6291456u32;
04454e1e 117#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 118pub const DEVPROP_OPERATOR_ARRAY_CONTAINS: DEVPROP_OPERATOR = 268435456u32;
04454e1e 119#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 120pub const DEVPROP_OPERATOR_MASK_EVAL: DEVPROP_OPERATOR = 4095u32;
04454e1e 121#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 122pub const DEVPROP_OPERATOR_MASK_LIST: DEVPROP_OPERATOR = 61440u32;
04454e1e 123#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 124pub const DEVPROP_OPERATOR_MASK_MODIFIER: DEVPROP_OPERATOR = 983040u32;
04454e1e 125#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 126pub const DEVPROP_OPERATOR_MASK_NOT_LOGICAL: DEVPROP_OPERATOR = 4027580415u32;
04454e1e 127#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 128pub const DEVPROP_OPERATOR_MASK_LOGICAL: DEVPROP_OPERATOR = 267386880u32;
04454e1e 129#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 130pub const DEVPROP_OPERATOR_MASK_ARRAY: DEVPROP_OPERATOR = 4026531840u32;
04454e1e 131#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 132pub type DEV_OBJECT_TYPE = i32;
04454e1e 133#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 134pub const DevObjectTypeUnknown: DEV_OBJECT_TYPE = 0i32;
04454e1e 135#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 136pub const DevObjectTypeDeviceInterface: DEV_OBJECT_TYPE = 1i32;
04454e1e 137#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 138pub const DevObjectTypeDeviceContainer: DEV_OBJECT_TYPE = 2i32;
04454e1e 139#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 140pub const DevObjectTypeDevice: DEV_OBJECT_TYPE = 3i32;
04454e1e 141#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 142pub const DevObjectTypeDeviceInterfaceClass: DEV_OBJECT_TYPE = 4i32;
04454e1e 143#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 144pub const DevObjectTypeAEP: DEV_OBJECT_TYPE = 5i32;
04454e1e 145#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 146pub const DevObjectTypeAEPContainer: DEV_OBJECT_TYPE = 6i32;
04454e1e 147#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 148pub const DevObjectTypeDeviceInstallerClass: DEV_OBJECT_TYPE = 7i32;
04454e1e 149#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 150pub const DevObjectTypeDeviceInterfaceDisplay: DEV_OBJECT_TYPE = 8i32;
04454e1e 151#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 152pub const DevObjectTypeDeviceContainerDisplay: DEV_OBJECT_TYPE = 9i32;
04454e1e 153#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 154pub const DevObjectTypeAEPService: DEV_OBJECT_TYPE = 10i32;
04454e1e 155#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 156pub const DevObjectTypeDevicePanel: DEV_OBJECT_TYPE = 11i32;
04454e1e 157#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 158pub type DEV_QUERY_FLAGS = i32;
04454e1e 159#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 160pub const DevQueryFlagNone: DEV_QUERY_FLAGS = 0i32;
04454e1e 161#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 162pub const DevQueryFlagUpdateResults: DEV_QUERY_FLAGS = 1i32;
04454e1e 163#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 164pub const DevQueryFlagAllProperties: DEV_QUERY_FLAGS = 2i32;
04454e1e 165#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 166pub const DevQueryFlagLocalize: DEV_QUERY_FLAGS = 4i32;
04454e1e 167#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085 168pub const DevQueryFlagAsyncClose: DEV_QUERY_FLAGS = 8i32;
487cf647
FG
169#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
170pub type DEV_QUERY_RESULT_ACTION = i32;
171#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
172pub const DevQueryResultStateChange: DEV_QUERY_RESULT_ACTION = 0i32;
173#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
174pub const DevQueryResultAdd: DEV_QUERY_RESULT_ACTION = 1i32;
175#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
176pub const DevQueryResultUpdate: DEV_QUERY_RESULT_ACTION = 2i32;
177#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
178pub const DevQueryResultRemove: DEV_QUERY_RESULT_ACTION = 3i32;
179#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
180pub type DEV_QUERY_STATE = i32;
181#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
182pub const DevQueryStateInitialized: DEV_QUERY_STATE = 0i32;
183#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
184pub const DevQueryStateEnumCompleted: DEV_QUERY_STATE = 1i32;
185#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
186pub const DevQueryStateAborted: DEV_QUERY_STATE = 2i32;
187#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
188pub const DevQueryStateClosed: DEV_QUERY_STATE = 3i32;
189#[repr(C)]
190#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
191#[cfg(feature = "Win32_Devices_Properties")]
192pub struct DEVPROP_FILTER_EXPRESSION {
193 pub Operator: DEVPROP_OPERATOR,
194 pub Property: super::Properties::DEVPROPERTY,
195}
196#[cfg(feature = "Win32_Devices_Properties")]
197impl ::core::marker::Copy for DEVPROP_FILTER_EXPRESSION {}
198#[cfg(feature = "Win32_Devices_Properties")]
199impl ::core::clone::Clone for DEVPROP_FILTER_EXPRESSION {
200 fn clone(&self) -> Self {
201 *self
202 }
203}
204#[repr(C)]
205#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
206#[cfg(feature = "Win32_Devices_Properties")]
207pub struct DEV_OBJECT {
208 pub ObjectType: DEV_OBJECT_TYPE,
209 pub pszObjectId: ::windows_sys::core::PCWSTR,
210 pub cPropertyCount: u32,
211 pub pProperties: *const super::Properties::DEVPROPERTY,
212}
213#[cfg(feature = "Win32_Devices_Properties")]
214impl ::core::marker::Copy for DEV_OBJECT {}
215#[cfg(feature = "Win32_Devices_Properties")]
216impl ::core::clone::Clone for DEV_OBJECT {
217 fn clone(&self) -> Self {
218 *self
219 }
220}
5e7ed085 221#[repr(C)]
04454e1e 222#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
5e7ed085
FG
223#[cfg(feature = "Win32_Devices_Properties")]
224pub struct DEV_QUERY_PARAMETER {
225 pub Key: super::Properties::DEVPROPKEY,
226 pub Type: u32,
227 pub BufferSize: u32,
228 pub Buffer: *mut ::core::ffi::c_void,
229}
230#[cfg(feature = "Win32_Devices_Properties")]
231impl ::core::marker::Copy for DEV_QUERY_PARAMETER {}
232#[cfg(feature = "Win32_Devices_Properties")]
233impl ::core::clone::Clone for DEV_QUERY_PARAMETER {
234 fn clone(&self) -> Self {
235 *self
236 }
237}
5e7ed085 238#[repr(C)]
04454e1e
FG
239#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
240#[cfg(feature = "Win32_Devices_Properties")]
5e7ed085
FG
241pub struct DEV_QUERY_RESULT_ACTION_DATA {
242 pub Action: DEV_QUERY_RESULT_ACTION,
243 pub Data: DEV_QUERY_RESULT_ACTION_DATA_0,
244}
04454e1e 245#[cfg(feature = "Win32_Devices_Properties")]
5e7ed085 246impl ::core::marker::Copy for DEV_QUERY_RESULT_ACTION_DATA {}
04454e1e 247#[cfg(feature = "Win32_Devices_Properties")]
5e7ed085
FG
248impl ::core::clone::Clone for DEV_QUERY_RESULT_ACTION_DATA {
249 fn clone(&self) -> Self {
250 *self
251 }
252}
253#[repr(C)]
04454e1e
FG
254#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
255#[cfg(feature = "Win32_Devices_Properties")]
5e7ed085
FG
256pub union DEV_QUERY_RESULT_ACTION_DATA_0 {
257 pub State: DEV_QUERY_STATE,
258 pub DeviceObject: DEV_OBJECT,
259}
04454e1e 260#[cfg(feature = "Win32_Devices_Properties")]
5e7ed085 261impl ::core::marker::Copy for DEV_QUERY_RESULT_ACTION_DATA_0 {}
04454e1e 262#[cfg(feature = "Win32_Devices_Properties")]
5e7ed085
FG
263impl ::core::clone::Clone for DEV_QUERY_RESULT_ACTION_DATA_0 {
264 fn clone(&self) -> Self {
265 *self
266 }
267}
5e7ed085 268#[repr(C)]
04454e1e 269#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`*"]
5e7ed085
FG
270pub struct HDEVQUERY__ {
271 pub unused: i32,
272}
273impl ::core::marker::Copy for HDEVQUERY__ {}
274impl ::core::clone::Clone for HDEVQUERY__ {
275 fn clone(&self) -> Self {
276 *self
277 }
278}
04454e1e
FG
279#[doc = "*Required features: `\"Win32_Devices_DeviceQuery\"`, `\"Win32_Devices_Properties\"`*"]
280#[cfg(feature = "Win32_Devices_Properties")]
5e7ed085 281pub type PDEV_QUERY_RESULT_CALLBACK = ::core::option::Option<unsafe extern "system" fn(hdevquery: *const HDEVQUERY__, pcontext: *const ::core::ffi::c_void, pactiondata: *const DEV_QUERY_RESULT_ACTION_DATA)>;