1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[repr(transparent)]
3 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4 #[doc(hidden)]
5 pub struct IWiFiAdapter(::windows::runtime::IInspectable);
6 unsafe impl ::windows::runtime::Interface for IWiFiAdapter {
7     type Vtable = IWiFiAdapter_abi;
8     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2797921315, 15733, 17316, [185, 222, 17, 226, 107, 114, 217, 176]);
9 }
10 #[repr(C)]
11 #[doc(hidden)]
12 pub struct IWiFiAdapter_abi(
13     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
14     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
15     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
16     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
17     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
18     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
19     #[cfg(feature = "Networking_Connectivity")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
20     #[cfg(not(feature = "Networking_Connectivity"))] usize,
21     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
22     #[cfg(not(feature = "Foundation"))] usize,
23     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
24     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, args: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
25     #[cfg(not(feature = "Foundation"))] usize,
26     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, eventcookie: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
27     #[cfg(not(feature = "Foundation"))] usize,
28     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, availablenetwork: ::windows::runtime::RawPtr, reconnectionkind: WiFiReconnectionKind, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
29     #[cfg(not(feature = "Foundation"))] usize,
30     #[cfg(all(feature = "Foundation", feature = "Security_Credentials"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, availablenetwork: ::windows::runtime::RawPtr, reconnectionkind: WiFiReconnectionKind, passwordcredential: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
31     #[cfg(not(all(feature = "Foundation", feature = "Security_Credentials")))] usize,
32     #[cfg(all(feature = "Foundation", feature = "Security_Credentials"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, availablenetwork: ::windows::runtime::RawPtr, reconnectionkind: WiFiReconnectionKind, passwordcredential: ::windows::runtime::RawPtr, ssid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
33     #[cfg(not(all(feature = "Foundation", feature = "Security_Credentials")))] usize,
34     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
35 );
Countdown(int hours,int minutes,QWidget * parent)36 #[repr(transparent)]
37 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
38 #[doc(hidden)]
39 pub struct IWiFiAdapter2(::windows::runtime::IInspectable);
40 unsafe impl ::windows::runtime::Interface for IWiFiAdapter2 {
41     type Vtable = IWiFiAdapter2_abi;
42     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1539592221, 33252, 17725, [148, 48, 31, 202, 251, 173, 214, 182]);
43 }
44 #[repr(C)]
45 #[doc(hidden)]
46 pub struct IWiFiAdapter2_abi(
47     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
48     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
49     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
50     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
51     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
52     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
53     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, availablenetwork: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
54     #[cfg(not(feature = "Foundation"))] usize,
55     #[cfg(all(feature = "Foundation", feature = "Security_Credentials"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, availablenetwork: ::windows::runtime::RawPtr, reconnectionkind: WiFiReconnectionKind, passwordcredential: ::windows::runtime::RawPtr, ssid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, connectionmethod: WiFiConnectionMethod, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
56     #[cfg(not(all(feature = "Foundation", feature = "Security_Credentials")))] usize,
57 );
58 #[repr(transparent)]
59 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
60 #[doc(hidden)]
61 pub struct IWiFiAdapterStatics(::windows::runtime::IInspectable);
62 unsafe impl ::windows::runtime::Interface for IWiFiAdapterStatics {
63     type Vtable = IWiFiAdapterStatics_abi;
64     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3659922909, 53836, 17379, [170, 189, 196, 101, 159, 115, 15, 153]);
65 }
66 #[repr(C)]
67 #[doc(hidden)]
68 pub struct IWiFiAdapterStatics_abi(
69     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
70     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
71     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
72     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
73     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
74     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
75     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
76     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
77     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
78     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, deviceid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
79     #[cfg(not(feature = "Foundation"))] usize,
80     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
81     #[cfg(not(feature = "Foundation"))] usize,
82 );
83 #[repr(transparent)]
84 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
85 #[doc(hidden)]
86 pub struct IWiFiAvailableNetwork(::windows::runtime::IInspectable);
87 unsafe impl ::windows::runtime::Interface for IWiFiAvailableNetwork {
88     type Vtable = IWiFiAvailableNetwork_abi;
89     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(652829254, 6206, 18180, [152, 38, 113, 180, 162, 240, 246, 104]);
90 }
91 #[repr(C)]
92 #[doc(hidden)]
93 pub struct IWiFiAvailableNetwork_abi(
94     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
scrGeomChanged(const QRect & g)95     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
96     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
97     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
98     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
99     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
100     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
101     #[cfg(not(feature = "Foundation"))] usize,
102     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
103     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
104     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut i32) -> ::windows::runtime::HRESULT,
105     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
106     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u8) -> ::windows::runtime::HRESULT,
107     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut WiFiNetworkKind) -> ::windows::runtime::HRESULT,
108     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut WiFiPhyKind) -> ::windows::runtime::HRESULT,
109     #[cfg(feature = "Networking_Connectivity")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
110     #[cfg(not(feature = "Networking_Connectivity"))] usize,
111     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
112     #[cfg(not(feature = "Foundation"))] usize,
113     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
114 );
115 #[repr(transparent)]
116 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
117 #[doc(hidden)]
118 pub struct IWiFiConnectionResult(::windows::runtime::IInspectable);
119 unsafe impl ::windows::runtime::Interface for IWiFiConnectionResult {
120     type Vtable = IWiFiConnectionResult_abi;
121     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(339468249, 50045, 16574, [165, 200, 133, 123, 206, 133, 169, 49]);
122 }
123 #[repr(C)]
124 #[doc(hidden)]
125 pub struct IWiFiConnectionResult_abi(
126     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
127     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
128     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
129     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
keyPressEvent(QKeyEvent * e)130     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
131     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
132     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut WiFiConnectionStatus) -> ::windows::runtime::HRESULT,
133 );
134 #[repr(transparent)]
135 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
hideWin()136 #[doc(hidden)]
137 pub struct IWiFiNetworkReport(::windows::runtime::IInspectable);
138 unsafe impl ::windows::runtime::Interface for IWiFiNetworkReport {
139     type Vtable = IWiFiNetworkReport_abi;
140     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2502221522, 22801, 17502, [129, 148, 190, 79, 26, 112, 72, 149]);
closeEvent(QCloseEvent * event)141 }
142 #[repr(C)]
143 #[doc(hidden)]
144 pub struct IWiFiNetworkReport_abi(
145     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
146     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
147     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
148     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
149     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
150     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
151     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
152     #[cfg(not(feature = "Foundation"))] usize,
153     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
154     #[cfg(not(feature = "Foundation_Collections"))] usize,
155 );
156 #[repr(transparent)]
157 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
158 #[doc(hidden)]
159 pub struct IWiFiWpsConfigurationResult(::windows::runtime::IInspectable);
160 unsafe impl ::windows::runtime::Interface for IWiFiWpsConfigurationResult {
161     type Vtable = IWiFiWpsConfigurationResult_abi;
162     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1739888753, 6126, 17105, [177, 79, 90, 17, 241, 34, 111, 181]);
163 }
164 #[repr(C)]
createTrayIcon()165 #[doc(hidden)]
166 pub struct IWiFiWpsConfigurationResult_abi(
167     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
168     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
169     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
170     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
171     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
172     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
173     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut WiFiWpsConfigurationStatus) -> ::windows::runtime::HRESULT,
174     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
175     #[cfg(not(feature = "Foundation_Collections"))] usize,
176 );
177 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
178 #[repr(transparent)]
trayClicked(QSystemTrayIcon::ActivationReason reason)179 pub struct WiFiAccessStatus(pub i32);
180 impl WiFiAccessStatus {
181     pub const Unspecified: WiFiAccessStatus = WiFiAccessStatus(0i32);
182     pub const Allowed: WiFiAccessStatus = WiFiAccessStatus(1i32);
183     pub const DeniedByUser: WiFiAccessStatus = WiFiAccessStatus(2i32);
184     pub const DeniedBySystem: WiFiAccessStatus = WiFiAccessStatus(3i32);
185 }
186 impl ::std::convert::From<i32> for WiFiAccessStatus {
187     fn from(value: i32) -> Self {
188         Self(value)
189     }
190 }
191 unsafe impl ::windows::runtime::Abi for WiFiAccessStatus {
192     type Abi = Self;
193     type DefaultType = Self;
shutdown()194 }
195 unsafe impl ::windows::runtime::RuntimeType for WiFiAccessStatus {
196     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.WiFi.WiFiAccessStatus;i4)");
197 }
198 #[repr(transparent)]
update()199 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
200 pub struct WiFiAdapter(::windows::runtime::IInspectable);
201 impl WiFiAdapter {
202     #[cfg(feature = "Networking_Connectivity")]
203     pub fn NetworkAdapter(&self) -> ::windows::runtime::Result<super::super::Networking::Connectivity::NetworkAdapter> {
204         let this = self;
205         unsafe {
206             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
207             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Networking::Connectivity::NetworkAdapter>(result__)
208         }
209     }
210     #[cfg(feature = "Foundation")]
211     pub fn ScanAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
212         let this = self;
213         unsafe {
214             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
215             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
216         }
217     }
218     pub fn NetworkReport(&self) -> ::windows::runtime::Result<WiFiNetworkReport> {
219         let this = self;
220         unsafe {
changeTimer()221             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
222             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<WiFiNetworkReport>(result__)
223         }
224     }
225     #[cfg(feature = "Foundation")]
226     pub fn AvailableNetworksChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<WiFiAdapter, ::windows::runtime::IInspectable>>>(&self, args: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
227         let this = self;
228         unsafe {
229             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
230             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), args.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
231         }
232     }
233     #[cfg(feature = "Foundation")]
234     pub fn RemoveAvailableNetworksChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, eventcookie: Param0) -> ::windows::runtime::Result<()> {
235         let this = self;
236         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), eventcookie.into_param().abi()).ok() }
237     }
238     #[cfg(feature = "Foundation")]
239     pub fn ConnectAsync<'a, Param0: ::windows::runtime::IntoParam<'a, WiFiAvailableNetwork>>(&self, availablenetwork: Param0, reconnectionkind: WiFiReconnectionKind) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<WiFiConnectionResult>> {
240         let this = self;
241         unsafe {
242             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
243             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), availablenetwork.into_param().abi(), reconnectionkind, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<WiFiConnectionResult>>(result__)
244         }
245     }
246     #[cfg(all(feature = "Foundation", feature = "Security_Credentials"))]
247     pub fn ConnectWithPasswordCredentialAsync<'a, Param0: ::windows::runtime::IntoParam<'a, WiFiAvailableNetwork>, Param2: ::windows::runtime::IntoParam<'a, super::super::Security::Credentials::PasswordCredential>>(&self, availablenetwork: Param0, reconnectionkind: WiFiReconnectionKind, passwordcredential: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<WiFiConnectionResult>> {
248         let this = self;
249         unsafe {
250             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
251             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), availablenetwork.into_param().abi(), reconnectionkind, passwordcredential.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<WiFiConnectionResult>>(result__)
252         }
253     }
254     #[cfg(all(feature = "Foundation", feature = "Security_Credentials"))]
255     pub fn ConnectWithPasswordCredentialAndSsidAsync<'a, Param0: ::windows::runtime::IntoParam<'a, WiFiAvailableNetwork>, Param2: ::windows::runtime::IntoParam<'a, super::super::Security::Credentials::PasswordCredential>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
256         &self,
257         availablenetwork: Param0,
258         reconnectionkind: WiFiReconnectionKind,
259         passwordcredential: Param2,
260         ssid: Param3,
261     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<WiFiConnectionResult>> {
262         let this = self;
263         unsafe {
264             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
265             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), availablenetwork.into_param().abi(), reconnectionkind, passwordcredential.into_param().abi(), ssid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<WiFiConnectionResult>>(result__)
266         }
267     }
268     pub fn Disconnect(&self) -> ::windows::runtime::Result<()> {
269         let this = self;
270         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
271     }
272     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
273     pub fn FindAllAdaptersAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<WiFiAdapter>>> {
274         Self::IWiFiAdapterStatics(|this| unsafe {
275             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
276             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<WiFiAdapter>>>(result__)
277         })
278     }
279     pub fn GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
280         Self::IWiFiAdapterStatics(|this| unsafe {
281             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
282             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
283         })
284     }
285     #[cfg(feature = "Foundation")]
286     pub fn FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<WiFiAdapter>> {
287         Self::IWiFiAdapterStatics(|this| unsafe {
288             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
289             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), deviceid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<WiFiAdapter>>(result__)
290         })
291     }
292     #[cfg(feature = "Foundation")]
293     pub fn RequestAccessAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<WiFiAccessStatus>> {
294         Self::IWiFiAdapterStatics(|this| unsafe {
295             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
296             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<WiFiAccessStatus>>(result__)
297         })
298     }
299     #[cfg(feature = "Foundation")]
300     pub fn GetWpsConfigurationAsync<'a, Param0: ::windows::runtime::IntoParam<'a, WiFiAvailableNetwork>>(&self, availablenetwork: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<WiFiWpsConfigurationResult>> {
301         let this = &::windows::runtime::Interface::cast::<IWiFiAdapter2>(self)?;
302         unsafe {
303             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
304             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), availablenetwork.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<WiFiWpsConfigurationResult>>(result__)
305         }
306     }
307     #[cfg(all(feature = "Foundation", feature = "Security_Credentials"))]
308     pub fn ConnectWithPasswordCredentialAndSsidAndConnectionMethodAsync<'a, Param0: ::windows::runtime::IntoParam<'a, WiFiAvailableNetwork>, Param2: ::windows::runtime::IntoParam<'a, super::super::Security::Credentials::PasswordCredential>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
309         &self,
310         availablenetwork: Param0,
311         reconnectionkind: WiFiReconnectionKind,
312         passwordcredential: Param2,
313         ssid: Param3,
314         connectionmethod: WiFiConnectionMethod,
315     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<WiFiConnectionResult>> {
316         let this = &::windows::runtime::Interface::cast::<IWiFiAdapter2>(self)?;
317         unsafe {
318             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
319             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), availablenetwork.into_param().abi(), reconnectionkind, passwordcredential.into_param().abi(), ssid.into_param().abi(), connectionmethod, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<WiFiConnectionResult>>(result__)
320         }
321     }
322     pub fn IWiFiAdapterStatics<R, F: FnOnce(&IWiFiAdapterStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
323         static mut SHARED: ::windows::runtime::FactoryCache<WiFiAdapter, IWiFiAdapterStatics> = ::windows::runtime::FactoryCache::new();
324         unsafe { SHARED.call(callback) }
325     }
326 }
327 unsafe impl ::windows::runtime::RuntimeType for WiFiAdapter {
328     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.WiFi.WiFiAdapter;{a6c4e423-3d75-43a4-b9de-11e26b72d9b0})");
329 }
330 unsafe impl ::windows::runtime::Interface for WiFiAdapter {
331     type Vtable = IWiFiAdapter_abi;
332     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2797921315, 15733, 17316, [185, 222, 17, 226, 107, 114, 217, 176]);
333 }
334 impl ::windows::runtime::RuntimeName for WiFiAdapter {
335     const NAME: &'static str = "Windows.Devices.WiFi.WiFiAdapter";
336 }
337 impl ::std::convert::From<WiFiAdapter> for ::windows::runtime::IUnknown {
338     fn from(value: WiFiAdapter) -> Self {
339         unsafe { ::std::mem::transmute(value) }
340     }
341 }
342 impl ::std::convert::From<&WiFiAdapter> for ::windows::runtime::IUnknown {
343     fn from(value: &WiFiAdapter) -> Self {
344         ::std::convert::From::from(::std::clone::Clone::clone(value))
345     }
346 }
347 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for WiFiAdapter {
348     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
349         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
350     }
351 }
352 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &WiFiAdapter {
353     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
354         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
355     }
356 }
357 impl ::std::convert::From<WiFiAdapter> for ::windows::runtime::IInspectable {
358     fn from(value: WiFiAdapter) -> Self {
359         value.0
360     }
361 }
362 impl ::std::convert::From<&WiFiAdapter> for ::windows::runtime::IInspectable {
363     fn from(value: &WiFiAdapter) -> Self {
364         value.0.clone()
365     }
366 }
367 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for WiFiAdapter {
368     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
369         ::windows::runtime::Param::Owned(self.0)
370     }
371 }
372 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a WiFiAdapter {
373     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
374         ::windows::runtime::Param::Borrowed(&self.0)
375     }
376 }
377 unsafe impl ::std::marker::Send for WiFiAdapter {}
378 unsafe impl ::std::marker::Sync for WiFiAdapter {}
379 #[repr(transparent)]
380 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
381 pub struct WiFiAvailableNetwork(::windows::runtime::IInspectable);
382 impl WiFiAvailableNetwork {
383     #[cfg(feature = "Foundation")]
384     pub fn Uptime(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
385         let this = self;
386         unsafe {
387             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
388             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
389         }
390     }
391     pub fn Ssid(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
392         let this = self;
393         unsafe {
394             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
395             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
396         }
397     }
398     pub fn Bssid(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
399         let this = self;
400         unsafe {
401             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
402             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
403         }
404     }
405     pub fn ChannelCenterFrequencyInKilohertz(&self) -> ::windows::runtime::Result<i32> {
406         let this = self;
407         unsafe {
408             let mut result__: i32 = ::std::mem::zeroed();
409             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<i32>(result__)
410         }
411     }
412     pub fn NetworkRssiInDecibelMilliwatts(&self) -> ::windows::runtime::Result<f64> {
413         let this = self;
414         unsafe {
415             let mut result__: f64 = ::std::mem::zeroed();
416             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
417         }
418     }
419     pub fn SignalBars(&self) -> ::windows::runtime::Result<u8> {
420         let this = self;
421         unsafe {
422             let mut result__: u8 = ::std::mem::zeroed();
423             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u8>(result__)
424         }
425     }
426     pub fn NetworkKind(&self) -> ::windows::runtime::Result<WiFiNetworkKind> {
427         let this = self;
428         unsafe {
429             let mut result__: WiFiNetworkKind = ::std::mem::zeroed();
430             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<WiFiNetworkKind>(result__)
431         }
432     }
433     pub fn PhyKind(&self) -> ::windows::runtime::Result<WiFiPhyKind> {
434         let this = self;
435         unsafe {
436             let mut result__: WiFiPhyKind = ::std::mem::zeroed();
437             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<WiFiPhyKind>(result__)
438         }
439     }
440     #[cfg(feature = "Networking_Connectivity")]
441     pub fn SecuritySettings(&self) -> ::windows::runtime::Result<super::super::Networking::Connectivity::NetworkSecuritySettings> {
442         let this = self;
443         unsafe {
444             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
445             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Networking::Connectivity::NetworkSecuritySettings>(result__)
446         }
447     }
448     #[cfg(feature = "Foundation")]
449     pub fn BeaconInterval(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
450         let this = self;
451         unsafe {
452             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
453             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
454         }
455     }
456     pub fn IsWiFiDirect(&self) -> ::windows::runtime::Result<bool> {
457         let this = self;
458         unsafe {
459             let mut result__: bool = ::std::mem::zeroed();
460             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
461         }
462     }
463 }
464 unsafe impl ::windows::runtime::RuntimeType for WiFiAvailableNetwork {
465     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.WiFi.WiFiAvailableNetwork;{26e96246-183e-4704-9826-71b4a2f0f668})");
466 }
467 unsafe impl ::windows::runtime::Interface for WiFiAvailableNetwork {
468     type Vtable = IWiFiAvailableNetwork_abi;
469     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(652829254, 6206, 18180, [152, 38, 113, 180, 162, 240, 246, 104]);
470 }
471 impl ::windows::runtime::RuntimeName for WiFiAvailableNetwork {
472     const NAME: &'static str = "Windows.Devices.WiFi.WiFiAvailableNetwork";
473 }
474 impl ::std::convert::From<WiFiAvailableNetwork> for ::windows::runtime::IUnknown {
475     fn from(value: WiFiAvailableNetwork) -> Self {
476         unsafe { ::std::mem::transmute(value) }
477     }
478 }
479 impl ::std::convert::From<&WiFiAvailableNetwork> for ::windows::runtime::IUnknown {
480     fn from(value: &WiFiAvailableNetwork) -> Self {
481         ::std::convert::From::from(::std::clone::Clone::clone(value))
482     }
483 }
484 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for WiFiAvailableNetwork {
485     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
486         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
487     }
488 }
489 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &WiFiAvailableNetwork {
490     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
491         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
492     }
493 }
494 impl ::std::convert::From<WiFiAvailableNetwork> for ::windows::runtime::IInspectable {
495     fn from(value: WiFiAvailableNetwork) -> Self {
496         value.0
497     }
498 }
499 impl ::std::convert::From<&WiFiAvailableNetwork> for ::windows::runtime::IInspectable {
500     fn from(value: &WiFiAvailableNetwork) -> Self {
501         value.0.clone()
502     }
503 }
504 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for WiFiAvailableNetwork {
505     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
506         ::windows::runtime::Param::Owned(self.0)
507     }
508 }
509 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a WiFiAvailableNetwork {
510     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
511         ::windows::runtime::Param::Borrowed(&self.0)
512     }
513 }
514 unsafe impl ::std::marker::Send for WiFiAvailableNetwork {}
515 unsafe impl ::std::marker::Sync for WiFiAvailableNetwork {}
516 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
517 #[repr(transparent)]
518 pub struct WiFiConnectionMethod(pub i32);
519 impl WiFiConnectionMethod {
520     pub const Default: WiFiConnectionMethod = WiFiConnectionMethod(0i32);
521     pub const WpsPin: WiFiConnectionMethod = WiFiConnectionMethod(1i32);
522     pub const WpsPushButton: WiFiConnectionMethod = WiFiConnectionMethod(2i32);
523 }
524 impl ::std::convert::From<i32> for WiFiConnectionMethod {
525     fn from(value: i32) -> Self {
526         Self(value)
527     }
528 }
529 unsafe impl ::windows::runtime::Abi for WiFiConnectionMethod {
530     type Abi = Self;
531     type DefaultType = Self;
532 }
533 unsafe impl ::windows::runtime::RuntimeType for WiFiConnectionMethod {
534     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.WiFi.WiFiConnectionMethod;i4)");
535 }
536 #[repr(transparent)]
537 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
538 pub struct WiFiConnectionResult(::windows::runtime::IInspectable);
539 impl WiFiConnectionResult {
540     pub fn ConnectionStatus(&self) -> ::windows::runtime::Result<WiFiConnectionStatus> {
541         let this = self;
542         unsafe {
543             let mut result__: WiFiConnectionStatus = ::std::mem::zeroed();
544             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<WiFiConnectionStatus>(result__)
545         }
546     }
547 }
548 unsafe impl ::windows::runtime::RuntimeType for WiFiConnectionResult {
549     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.WiFi.WiFiConnectionResult;{143bdfd9-c37d-40be-a5c8-857bce85a931})");
550 }
551 unsafe impl ::windows::runtime::Interface for WiFiConnectionResult {
552     type Vtable = IWiFiConnectionResult_abi;
553     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(339468249, 50045, 16574, [165, 200, 133, 123, 206, 133, 169, 49]);
554 }
555 impl ::windows::runtime::RuntimeName for WiFiConnectionResult {
556     const NAME: &'static str = "Windows.Devices.WiFi.WiFiConnectionResult";
557 }
558 impl ::std::convert::From<WiFiConnectionResult> for ::windows::runtime::IUnknown {
559     fn from(value: WiFiConnectionResult) -> Self {
560         unsafe { ::std::mem::transmute(value) }
561     }
562 }
563 impl ::std::convert::From<&WiFiConnectionResult> for ::windows::runtime::IUnknown {
564     fn from(value: &WiFiConnectionResult) -> Self {
565         ::std::convert::From::from(::std::clone::Clone::clone(value))
566     }
567 }
568 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for WiFiConnectionResult {
569     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
570         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
571     }
572 }
573 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &WiFiConnectionResult {
574     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
575         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
576     }
577 }
578 impl ::std::convert::From<WiFiConnectionResult> for ::windows::runtime::IInspectable {
579     fn from(value: WiFiConnectionResult) -> Self {
580         value.0
581     }
582 }
583 impl ::std::convert::From<&WiFiConnectionResult> for ::windows::runtime::IInspectable {
584     fn from(value: &WiFiConnectionResult) -> Self {
585         value.0.clone()
586     }
587 }
588 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for WiFiConnectionResult {
589     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
590         ::windows::runtime::Param::Owned(self.0)
591     }
592 }
593 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a WiFiConnectionResult {
594     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
595         ::windows::runtime::Param::Borrowed(&self.0)
596     }
597 }
598 unsafe impl ::std::marker::Send for WiFiConnectionResult {}
599 unsafe impl ::std::marker::Sync for WiFiConnectionResult {}
600 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
601 #[repr(transparent)]
602 pub struct WiFiConnectionStatus(pub i32);
603 impl WiFiConnectionStatus {
604     pub const UnspecifiedFailure: WiFiConnectionStatus = WiFiConnectionStatus(0i32);
605     pub const Success: WiFiConnectionStatus = WiFiConnectionStatus(1i32);
606     pub const AccessRevoked: WiFiConnectionStatus = WiFiConnectionStatus(2i32);
607     pub const InvalidCredential: WiFiConnectionStatus = WiFiConnectionStatus(3i32);
608     pub const NetworkNotAvailable: WiFiConnectionStatus = WiFiConnectionStatus(4i32);
609     pub const Timeout: WiFiConnectionStatus = WiFiConnectionStatus(5i32);
610     pub const UnsupportedAuthenticationProtocol: WiFiConnectionStatus = WiFiConnectionStatus(6i32);
611 }
612 impl ::std::convert::From<i32> for WiFiConnectionStatus {
613     fn from(value: i32) -> Self {
614         Self(value)
615     }
616 }
617 unsafe impl ::windows::runtime::Abi for WiFiConnectionStatus {
618     type Abi = Self;
619     type DefaultType = Self;
620 }
621 unsafe impl ::windows::runtime::RuntimeType for WiFiConnectionStatus {
622     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.WiFi.WiFiConnectionStatus;i4)");
623 }
624 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
625 #[repr(transparent)]
626 pub struct WiFiNetworkKind(pub i32);
627 impl WiFiNetworkKind {
628     pub const Any: WiFiNetworkKind = WiFiNetworkKind(0i32);
629     pub const Infrastructure: WiFiNetworkKind = WiFiNetworkKind(1i32);
630     pub const Adhoc: WiFiNetworkKind = WiFiNetworkKind(2i32);
631 }
632 impl ::std::convert::From<i32> for WiFiNetworkKind {
633     fn from(value: i32) -> Self {
634         Self(value)
635     }
636 }
637 unsafe impl ::windows::runtime::Abi for WiFiNetworkKind {
638     type Abi = Self;
639     type DefaultType = Self;
640 }
641 unsafe impl ::windows::runtime::RuntimeType for WiFiNetworkKind {
642     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.WiFi.WiFiNetworkKind;i4)");
643 }
644 #[repr(transparent)]
645 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
646 pub struct WiFiNetworkReport(::windows::runtime::IInspectable);
647 impl WiFiNetworkReport {
648     #[cfg(feature = "Foundation")]
649     pub fn Timestamp(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime> {
650         let this = self;
651         unsafe {
652             let mut result__: super::super::Foundation::DateTime = ::std::mem::zeroed();
653             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::DateTime>(result__)
654         }
655     }
656     #[cfg(feature = "Foundation_Collections")]
657     pub fn AvailableNetworks(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<WiFiAvailableNetwork>> {
658         let this = self;
659         unsafe {
660             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
661             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<WiFiAvailableNetwork>>(result__)
662         }
663     }
664 }
665 unsafe impl ::windows::runtime::RuntimeType for WiFiNetworkReport {
666     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.WiFi.WiFiNetworkReport;{9524ded2-5911-445e-8194-be4f1a704895})");
667 }
668 unsafe impl ::windows::runtime::Interface for WiFiNetworkReport {
669     type Vtable = IWiFiNetworkReport_abi;
670     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2502221522, 22801, 17502, [129, 148, 190, 79, 26, 112, 72, 149]);
671 }
672 impl ::windows::runtime::RuntimeName for WiFiNetworkReport {
673     const NAME: &'static str = "Windows.Devices.WiFi.WiFiNetworkReport";
674 }
675 impl ::std::convert::From<WiFiNetworkReport> for ::windows::runtime::IUnknown {
676     fn from(value: WiFiNetworkReport) -> Self {
677         unsafe { ::std::mem::transmute(value) }
678     }
679 }
680 impl ::std::convert::From<&WiFiNetworkReport> for ::windows::runtime::IUnknown {
681     fn from(value: &WiFiNetworkReport) -> Self {
682         ::std::convert::From::from(::std::clone::Clone::clone(value))
683     }
684 }
685 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for WiFiNetworkReport {
686     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
687         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
688     }
689 }
690 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &WiFiNetworkReport {
691     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
692         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
693     }
694 }
695 impl ::std::convert::From<WiFiNetworkReport> for ::windows::runtime::IInspectable {
696     fn from(value: WiFiNetworkReport) -> Self {
697         value.0
698     }
699 }
700 impl ::std::convert::From<&WiFiNetworkReport> for ::windows::runtime::IInspectable {
701     fn from(value: &WiFiNetworkReport) -> Self {
702         value.0.clone()
703     }
704 }
705 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for WiFiNetworkReport {
706     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
707         ::windows::runtime::Param::Owned(self.0)
708     }
709 }
710 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a WiFiNetworkReport {
711     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
712         ::windows::runtime::Param::Borrowed(&self.0)
713     }
714 }
715 unsafe impl ::std::marker::Send for WiFiNetworkReport {}
716 unsafe impl ::std::marker::Sync for WiFiNetworkReport {}
717 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
718 #[repr(transparent)]
719 pub struct WiFiPhyKind(pub i32);
720 impl WiFiPhyKind {
721     pub const Unknown: WiFiPhyKind = WiFiPhyKind(0i32);
722     pub const Fhss: WiFiPhyKind = WiFiPhyKind(1i32);
723     pub const Dsss: WiFiPhyKind = WiFiPhyKind(2i32);
724     pub const IRBaseband: WiFiPhyKind = WiFiPhyKind(3i32);
725     pub const Ofdm: WiFiPhyKind = WiFiPhyKind(4i32);
726     pub const Hrdsss: WiFiPhyKind = WiFiPhyKind(5i32);
727     pub const Erp: WiFiPhyKind = WiFiPhyKind(6i32);
728     pub const HT: WiFiPhyKind = WiFiPhyKind(7i32);
729     pub const Vht: WiFiPhyKind = WiFiPhyKind(8i32);
730     pub const Dmg: WiFiPhyKind = WiFiPhyKind(9i32);
731     pub const HE: WiFiPhyKind = WiFiPhyKind(10i32);
732 }
733 impl ::std::convert::From<i32> for WiFiPhyKind {
734     fn from(value: i32) -> Self {
735         Self(value)
736     }
737 }
738 unsafe impl ::windows::runtime::Abi for WiFiPhyKind {
739     type Abi = Self;
740     type DefaultType = Self;
741 }
742 unsafe impl ::windows::runtime::RuntimeType for WiFiPhyKind {
743     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.WiFi.WiFiPhyKind;i4)");
744 }
745 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
746 #[repr(transparent)]
747 pub struct WiFiReconnectionKind(pub i32);
748 impl WiFiReconnectionKind {
749     pub const Automatic: WiFiReconnectionKind = WiFiReconnectionKind(0i32);
750     pub const Manual: WiFiReconnectionKind = WiFiReconnectionKind(1i32);
751 }
752 impl ::std::convert::From<i32> for WiFiReconnectionKind {
753     fn from(value: i32) -> Self {
754         Self(value)
755     }
756 }
757 unsafe impl ::windows::runtime::Abi for WiFiReconnectionKind {
758     type Abi = Self;
759     type DefaultType = Self;
760 }
761 unsafe impl ::windows::runtime::RuntimeType for WiFiReconnectionKind {
762     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.WiFi.WiFiReconnectionKind;i4)");
763 }
764 #[repr(transparent)]
765 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
766 pub struct WiFiWpsConfigurationResult(::windows::runtime::IInspectable);
767 impl WiFiWpsConfigurationResult {
768     pub fn Status(&self) -> ::windows::runtime::Result<WiFiWpsConfigurationStatus> {
769         let this = self;
770         unsafe {
771             let mut result__: WiFiWpsConfigurationStatus = ::std::mem::zeroed();
772             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<WiFiWpsConfigurationStatus>(result__)
773         }
774     }
775     #[cfg(feature = "Foundation_Collections")]
776     pub fn SupportedWpsKinds(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<WiFiWpsKind>> {
777         let this = self;
778         unsafe {
779             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
780             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<WiFiWpsKind>>(result__)
781         }
782     }
783 }
784 unsafe impl ::windows::runtime::RuntimeType for WiFiWpsConfigurationResult {
785     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.WiFi.WiFiWpsConfigurationResult;{67b49871-17ee-42d1-b14f-5a11f1226fb5})");
786 }
787 unsafe impl ::windows::runtime::Interface for WiFiWpsConfigurationResult {
788     type Vtable = IWiFiWpsConfigurationResult_abi;
789     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1739888753, 6126, 17105, [177, 79, 90, 17, 241, 34, 111, 181]);
790 }
791 impl ::windows::runtime::RuntimeName for WiFiWpsConfigurationResult {
792     const NAME: &'static str = "Windows.Devices.WiFi.WiFiWpsConfigurationResult";
793 }
794 impl ::std::convert::From<WiFiWpsConfigurationResult> for ::windows::runtime::IUnknown {
795     fn from(value: WiFiWpsConfigurationResult) -> Self {
796         unsafe { ::std::mem::transmute(value) }
797     }
798 }
799 impl ::std::convert::From<&WiFiWpsConfigurationResult> for ::windows::runtime::IUnknown {
800     fn from(value: &WiFiWpsConfigurationResult) -> Self {
801         ::std::convert::From::from(::std::clone::Clone::clone(value))
802     }
803 }
804 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for WiFiWpsConfigurationResult {
805     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
806         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
807     }
808 }
809 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &WiFiWpsConfigurationResult {
810     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
811         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
812     }
813 }
814 impl ::std::convert::From<WiFiWpsConfigurationResult> for ::windows::runtime::IInspectable {
815     fn from(value: WiFiWpsConfigurationResult) -> Self {
816         value.0
817     }
818 }
819 impl ::std::convert::From<&WiFiWpsConfigurationResult> for ::windows::runtime::IInspectable {
820     fn from(value: &WiFiWpsConfigurationResult) -> Self {
821         value.0.clone()
822     }
823 }
824 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for WiFiWpsConfigurationResult {
825     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
826         ::windows::runtime::Param::Owned(self.0)
827     }
828 }
829 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a WiFiWpsConfigurationResult {
830     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
831         ::windows::runtime::Param::Borrowed(&self.0)
832     }
833 }
834 unsafe impl ::std::marker::Send for WiFiWpsConfigurationResult {}
835 unsafe impl ::std::marker::Sync for WiFiWpsConfigurationResult {}
836 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
837 #[repr(transparent)]
838 pub struct WiFiWpsConfigurationStatus(pub i32);
839 impl WiFiWpsConfigurationStatus {
840     pub const UnspecifiedFailure: WiFiWpsConfigurationStatus = WiFiWpsConfigurationStatus(0i32);
841     pub const Success: WiFiWpsConfigurationStatus = WiFiWpsConfigurationStatus(1i32);
842     pub const Timeout: WiFiWpsConfigurationStatus = WiFiWpsConfigurationStatus(2i32);
843 }
844 impl ::std::convert::From<i32> for WiFiWpsConfigurationStatus {
845     fn from(value: i32) -> Self {
846         Self(value)
847     }
848 }
849 unsafe impl ::windows::runtime::Abi for WiFiWpsConfigurationStatus {
850     type Abi = Self;
851     type DefaultType = Self;
852 }
853 unsafe impl ::windows::runtime::RuntimeType for WiFiWpsConfigurationStatus {
854     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.WiFi.WiFiWpsConfigurationStatus;i4)");
855 }
856 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
857 #[repr(transparent)]
858 pub struct WiFiWpsKind(pub i32);
859 impl WiFiWpsKind {
860     pub const Unknown: WiFiWpsKind = WiFiWpsKind(0i32);
861     pub const Pin: WiFiWpsKind = WiFiWpsKind(1i32);
862     pub const PushButton: WiFiWpsKind = WiFiWpsKind(2i32);
863     pub const Nfc: WiFiWpsKind = WiFiWpsKind(3i32);
864     pub const Ethernet: WiFiWpsKind = WiFiWpsKind(4i32);
865     pub const Usb: WiFiWpsKind = WiFiWpsKind(5i32);
866 }
867 impl ::std::convert::From<i32> for WiFiWpsKind {
868     fn from(value: i32) -> Self {
869         Self(value)
870     }
871 }
872 unsafe impl ::windows::runtime::Abi for WiFiWpsKind {
873     type Abi = Self;
874     type DefaultType = Self;
875 }
876 unsafe impl ::windows::runtime::RuntimeType for WiFiWpsKind {
877     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.WiFi.WiFiWpsKind;i4)");
878 }
879