1 #[cfg(feature = "Devices_WiFiDirect_Services")]
5 pub struct IWiFiDirectAdvertisement(::windows
::core
::IUnknown
);
6 unsafe impl ::windows
::core
::Interface
for IWiFiDirectAdvertisement
{
7 type Vtable
= IWiFiDirectAdvertisement_Vtbl
;
9 impl ::core
::clone
::Clone
for IWiFiDirectAdvertisement
{
10 fn clone(&self) -> Self {
14 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectAdvertisement
{
15 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xab511a2d_2a06_49a1_a584_61435c7905a6);
19 pub struct IWiFiDirectAdvertisement_Vtbl
{
20 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
21 #[cfg(feature = "Foundation_Collections")]
22 pub InformationElements
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
23 #[cfg(not(feature = "Foundation_Collections"))]
24 InformationElements
: usize,
25 #[cfg(feature = "Foundation_Collections")]
26 pub SetInformationElements
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
27 #[cfg(not(feature = "Foundation_Collections"))]
28 SetInformationElements
: usize,
29 pub ListenStateDiscoverability
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut WiFiDirectAdvertisementListenStateDiscoverability
) -> ::windows
::core
::HRESULT
,
30 pub SetListenStateDiscoverability
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: WiFiDirectAdvertisementListenStateDiscoverability
) -> ::windows
::core
::HRESULT
,
31 pub IsAutonomousGroupOwnerEnabled
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
32 pub SetIsAutonomousGroupOwnerEnabled
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: bool
) -> ::windows
::core
::HRESULT
,
33 pub LegacySettings
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
37 pub struct IWiFiDirectAdvertisement2(::windows
::core
::IUnknown
);
38 unsafe impl ::windows
::core
::Interface
for IWiFiDirectAdvertisement2
{
39 type Vtable
= IWiFiDirectAdvertisement2_Vtbl
;
41 impl ::core
::clone
::Clone
for IWiFiDirectAdvertisement2
{
42 fn clone(&self) -> Self {
46 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectAdvertisement2
{
47 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xb759aa46_d816_491b_917a_b40d7dc403a2);
51 pub struct IWiFiDirectAdvertisement2_Vtbl
{
52 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
53 #[cfg(feature = "Foundation_Collections")]
54 pub SupportedConfigurationMethods
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
55 #[cfg(not(feature = "Foundation_Collections"))]
56 SupportedConfigurationMethods
: usize,
60 pub struct IWiFiDirectAdvertisementPublisher(::windows
::core
::IUnknown
);
61 unsafe impl ::windows
::core
::Interface
for IWiFiDirectAdvertisementPublisher
{
62 type Vtable
= IWiFiDirectAdvertisementPublisher_Vtbl
;
64 impl ::core
::clone
::Clone
for IWiFiDirectAdvertisementPublisher
{
65 fn clone(&self) -> Self {
69 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectAdvertisementPublisher
{
70 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xb35a2d1a_9b1f_45d9_925a_694d66df68ef);
74 pub struct IWiFiDirectAdvertisementPublisher_Vtbl
{
75 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
76 pub Advertisement
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
77 pub Status
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut WiFiDirectAdvertisementPublisherStatus
) -> ::windows
::core
::HRESULT
,
78 #[cfg(feature = "Foundation")]
79 pub StatusChanged
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, handler
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
80 #[cfg(not(feature = "Foundation"))]
82 #[cfg(feature = "Foundation")]
83 pub RemoveStatusChanged
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
84 #[cfg(not(feature = "Foundation"))]
85 RemoveStatusChanged
: usize,
86 pub Start
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
87 pub Stop
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
91 pub struct IWiFiDirectAdvertisementPublisherStatusChangedEventArgs(::windows
::core
::IUnknown
);
92 unsafe impl ::windows
::core
::Interface
for IWiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
93 type Vtable
= IWiFiDirectAdvertisementPublisherStatusChangedEventArgs_Vtbl
;
95 impl ::core
::clone
::Clone
for IWiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
96 fn clone(&self) -> Self {
100 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
101 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xaafde53c_5481_46e6_90dd_32116518f192);
105 pub struct IWiFiDirectAdvertisementPublisherStatusChangedEventArgs_Vtbl
{
106 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
107 pub Status
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut WiFiDirectAdvertisementPublisherStatus
) -> ::windows
::core
::HRESULT
,
108 pub Error
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut WiFiDirectError
) -> ::windows
::core
::HRESULT
,
112 pub struct IWiFiDirectConnectionListener(::windows
::core
::IUnknown
);
113 unsafe impl ::windows
::core
::Interface
for IWiFiDirectConnectionListener
{
114 type Vtable
= IWiFiDirectConnectionListener_Vtbl
;
116 impl ::core
::clone
::Clone
for IWiFiDirectConnectionListener
{
117 fn clone(&self) -> Self {
121 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectConnectionListener
{
122 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x699c1b0d_8d13_4ee9_b9ec_9c72f8251f7d);
126 pub struct IWiFiDirectConnectionListener_Vtbl
{
127 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
128 #[cfg(feature = "Foundation")]
129 pub ConnectionRequested
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, handler
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
130 #[cfg(not(feature = "Foundation"))]
131 ConnectionRequested
: usize,
132 #[cfg(feature = "Foundation")]
133 pub RemoveConnectionRequested
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
134 #[cfg(not(feature = "Foundation"))]
135 RemoveConnectionRequested
: usize,
139 pub struct IWiFiDirectConnectionParameters(::windows
::core
::IUnknown
);
140 unsafe impl ::windows
::core
::Interface
for IWiFiDirectConnectionParameters
{
141 type Vtable
= IWiFiDirectConnectionParameters_Vtbl
;
143 impl ::core
::clone
::Clone
for IWiFiDirectConnectionParameters
{
144 fn clone(&self) -> Self {
148 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectConnectionParameters
{
149 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xb2e55405_5702_4b16_a02c_bbcd21ef6098);
153 pub struct IWiFiDirectConnectionParameters_Vtbl
{
154 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
155 pub GroupOwnerIntent
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut i16) -> ::windows
::core
::HRESULT
,
156 pub SetGroupOwnerIntent
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: i16) -> ::windows
::core
::HRESULT
,
160 pub struct IWiFiDirectConnectionParameters2(::windows
::core
::IUnknown
);
161 unsafe impl ::windows
::core
::Interface
for IWiFiDirectConnectionParameters2
{
162 type Vtable
= IWiFiDirectConnectionParameters2_Vtbl
;
164 impl ::core
::clone
::Clone
for IWiFiDirectConnectionParameters2
{
165 fn clone(&self) -> Self {
169 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectConnectionParameters2
{
170 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xab3b0fbe_aa82_44b4_88c8_e3056b89801d);
174 pub struct IWiFiDirectConnectionParameters2_Vtbl
{
175 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
176 #[cfg(feature = "Foundation_Collections")]
177 pub PreferenceOrderedConfigurationMethods
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
178 #[cfg(not(feature = "Foundation_Collections"))]
179 PreferenceOrderedConfigurationMethods
: usize,
180 pub PreferredPairingProcedure
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut WiFiDirectPairingProcedure
) -> ::windows
::core
::HRESULT
,
181 pub SetPreferredPairingProcedure
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: WiFiDirectPairingProcedure
) -> ::windows
::core
::HRESULT
,
185 pub struct IWiFiDirectConnectionParametersStatics(::windows
::core
::IUnknown
);
186 unsafe impl ::windows
::core
::Interface
for IWiFiDirectConnectionParametersStatics
{
187 type Vtable
= IWiFiDirectConnectionParametersStatics_Vtbl
;
189 impl ::core
::clone
::Clone
for IWiFiDirectConnectionParametersStatics
{
190 fn clone(&self) -> Self {
194 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectConnectionParametersStatics
{
195 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x598af493_7642_456f_b9d8_e8a9eb1f401a);
199 pub struct IWiFiDirectConnectionParametersStatics_Vtbl
{
200 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
201 #[cfg(feature = "Devices_Enumeration")]
202 pub GetDevicePairingKinds
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, configurationmethod
: WiFiDirectConfigurationMethod
, result__
: *mut super::Enumeration
::DevicePairingKinds
) -> ::windows
::core
::HRESULT
,
203 #[cfg(not(feature = "Devices_Enumeration"))]
204 GetDevicePairingKinds
: usize,
208 pub struct IWiFiDirectConnectionRequest(::windows
::core
::IUnknown
);
209 unsafe impl ::windows
::core
::Interface
for IWiFiDirectConnectionRequest
{
210 type Vtable
= IWiFiDirectConnectionRequest_Vtbl
;
212 impl ::core
::clone
::Clone
for IWiFiDirectConnectionRequest
{
213 fn clone(&self) -> Self {
217 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectConnectionRequest
{
218 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x8eb99605_914f_49c3_a614_d18dc5b19b43);
222 pub struct IWiFiDirectConnectionRequest_Vtbl
{
223 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
224 #[cfg(feature = "Devices_Enumeration")]
225 pub DeviceInformation
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
226 #[cfg(not(feature = "Devices_Enumeration"))]
227 DeviceInformation
: usize,
231 pub struct IWiFiDirectConnectionRequestedEventArgs(::windows
::core
::IUnknown
);
232 unsafe impl ::windows
::core
::Interface
for IWiFiDirectConnectionRequestedEventArgs
{
233 type Vtable
= IWiFiDirectConnectionRequestedEventArgs_Vtbl
;
235 impl ::core
::clone
::Clone
for IWiFiDirectConnectionRequestedEventArgs
{
236 fn clone(&self) -> Self {
240 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectConnectionRequestedEventArgs
{
241 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xf99d20be_d38d_484f_8215_e7b65abf244c);
245 pub struct IWiFiDirectConnectionRequestedEventArgs_Vtbl
{
246 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
247 pub GetConnectionRequest
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
251 pub struct IWiFiDirectDevice(::windows
::core
::IUnknown
);
252 unsafe impl ::windows
::core
::Interface
for IWiFiDirectDevice
{
253 type Vtable
= IWiFiDirectDevice_Vtbl
;
255 impl ::core
::clone
::Clone
for IWiFiDirectDevice
{
256 fn clone(&self) -> Self {
260 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectDevice
{
261 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x72deaaa8_72eb_4dae_8a28_8513355d2777);
265 pub struct IWiFiDirectDevice_Vtbl
{
266 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
267 pub ConnectionStatus
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut WiFiDirectConnectionStatus
) -> ::windows
::core
::HRESULT
,
268 pub DeviceId
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
269 #[cfg(feature = "Foundation")]
270 pub ConnectionStatusChanged
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, handler
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
271 #[cfg(not(feature = "Foundation"))]
272 ConnectionStatusChanged
: usize,
273 #[cfg(feature = "Foundation")]
274 pub RemoveConnectionStatusChanged
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
275 #[cfg(not(feature = "Foundation"))]
276 RemoveConnectionStatusChanged
: usize,
277 #[cfg(all(feature = "Foundation_Collections", feature = "Networking"))]
278 pub GetConnectionEndpointPairs
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
279 #[cfg(not(all(feature = "Foundation_Collections", feature = "Networking")))]
280 GetConnectionEndpointPairs
: usize,
284 pub struct IWiFiDirectDeviceStatics(::windows
::core
::IUnknown
);
285 unsafe impl ::windows
::core
::Interface
for IWiFiDirectDeviceStatics
{
286 type Vtable
= IWiFiDirectDeviceStatics_Vtbl
;
288 impl ::core
::clone
::Clone
for IWiFiDirectDeviceStatics
{
289 fn clone(&self) -> Self {
293 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectDeviceStatics
{
294 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xe86cb57c_3aac_4851_a792_482aaf931b04);
298 pub struct IWiFiDirectDeviceStatics_Vtbl
{
299 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
300 pub GetDeviceSelector
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
301 #[cfg(feature = "Foundation")]
302 pub FromIdAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, deviceid
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
303 #[cfg(not(feature = "Foundation"))]
308 pub struct IWiFiDirectDeviceStatics2(::windows
::core
::IUnknown
);
309 unsafe impl ::windows
::core
::Interface
for IWiFiDirectDeviceStatics2
{
310 type Vtable
= IWiFiDirectDeviceStatics2_Vtbl
;
312 impl ::core
::clone
::Clone
for IWiFiDirectDeviceStatics2
{
313 fn clone(&self) -> Self {
317 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectDeviceStatics2
{
318 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x1a953e49_b103_437e_9226_ab67971342f9);
322 pub struct IWiFiDirectDeviceStatics2_Vtbl
{
323 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
324 pub GetDeviceSelector
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, r
#type: WiFiDirectDeviceSelectorType, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
325 #[cfg(feature = "Foundation")]
326 pub FromIdAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, deviceid
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, connectionparameters
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
327 #[cfg(not(feature = "Foundation"))]
332 pub struct IWiFiDirectInformationElement(::windows
::core
::IUnknown
);
333 unsafe impl ::windows
::core
::Interface
for IWiFiDirectInformationElement
{
334 type Vtable
= IWiFiDirectInformationElement_Vtbl
;
336 impl ::core
::clone
::Clone
for IWiFiDirectInformationElement
{
337 fn clone(&self) -> Self {
341 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectInformationElement
{
342 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xaffb72d6_76bb_497e_ac8b_dc72838bc309);
346 pub struct IWiFiDirectInformationElement_Vtbl
{
347 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
348 #[cfg(feature = "Storage_Streams")]
349 pub Oui
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
350 #[cfg(not(feature = "Storage_Streams"))]
352 #[cfg(feature = "Storage_Streams")]
353 pub SetOui
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
354 #[cfg(not(feature = "Storage_Streams"))]
356 pub OuiType
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u8) -> ::windows
::core
::HRESULT
,
357 pub SetOuiType
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: u8) -> ::windows
::core
::HRESULT
,
358 #[cfg(feature = "Storage_Streams")]
359 pub Value
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
360 #[cfg(not(feature = "Storage_Streams"))]
362 #[cfg(feature = "Storage_Streams")]
363 pub SetValue
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
364 #[cfg(not(feature = "Storage_Streams"))]
369 pub struct IWiFiDirectInformationElementStatics(::windows
::core
::IUnknown
);
370 unsafe impl ::windows
::core
::Interface
for IWiFiDirectInformationElementStatics
{
371 type Vtable
= IWiFiDirectInformationElementStatics_Vtbl
;
373 impl ::core
::clone
::Clone
for IWiFiDirectInformationElementStatics
{
374 fn clone(&self) -> Self {
378 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectInformationElementStatics
{
379 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xdbd02f16_11a5_4e60_8caa_34772148378a);
383 pub struct IWiFiDirectInformationElementStatics_Vtbl
{
384 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
385 #[cfg(all(feature = "Foundation_Collections", feature = "Storage_Streams"))]
386 pub CreateFromBuffer
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, buffer
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
387 #[cfg(not(all(feature = "Foundation_Collections", feature = "Storage_Streams")))]
388 CreateFromBuffer
: usize,
389 #[cfg(all(feature = "Devices_Enumeration", feature = "Foundation_Collections"))]
390 pub CreateFromDeviceInformation
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, deviceinformation
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
391 #[cfg(not(all(feature = "Devices_Enumeration", feature = "Foundation_Collections")))]
392 CreateFromDeviceInformation
: usize,
396 pub struct IWiFiDirectLegacySettings(::windows
::core
::IUnknown
);
397 unsafe impl ::windows
::core
::Interface
for IWiFiDirectLegacySettings
{
398 type Vtable
= IWiFiDirectLegacySettings_Vtbl
;
400 impl ::core
::clone
::Clone
for IWiFiDirectLegacySettings
{
401 fn clone(&self) -> Self {
405 unsafe impl ::windows
::core
::ComInterface
for IWiFiDirectLegacySettings
{
406 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xa64fdbba_f2fd_4567_a91b_f5c2f5321057);
410 pub struct IWiFiDirectLegacySettings_Vtbl
{
411 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
412 pub IsEnabled
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
413 pub SetIsEnabled
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: bool
) -> ::windows
::core
::HRESULT
,
414 pub Ssid
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
415 pub SetSsid
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
416 #[cfg(feature = "Security_Credentials")]
417 pub Passphrase
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
418 #[cfg(not(feature = "Security_Credentials"))]
420 #[cfg(feature = "Security_Credentials")]
421 pub SetPassphrase
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
422 #[cfg(not(feature = "Security_Credentials"))]
423 SetPassphrase
: usize,
425 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
427 pub struct WiFiDirectAdvertisement(::windows
::core
::IUnknown
);
428 impl WiFiDirectAdvertisement
{
429 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
430 #[cfg(feature = "Foundation_Collections")]
431 pub fn InformationElements(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<WiFiDirectInformationElement
>> {
434 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<WiFiDirectInformationElement
>>();
435 (::windows
::core
::Interface
::vtable(this
).InformationElements
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
438 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
439 #[cfg(feature = "Foundation_Collections")]
440 pub fn SetInformationElements
<P0
>(&self, value
: P0
) -> ::windows
::core
::Result
<()>
442 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IVector
<WiFiDirectInformationElement
>>,
445 unsafe { (::windows::core::Interface::vtable(this).SetInformationElements)(::windows::core::Interface::as_raw(this), value.try_into_param()?.abi()).ok() }
447 pub fn ListenStateDiscoverability(&self) -> ::windows
::core
::Result
<WiFiDirectAdvertisementListenStateDiscoverability
> {
450 let mut result__
= ::windows
::core
::zeroed
::<WiFiDirectAdvertisementListenStateDiscoverability
>();
451 (::windows
::core
::Interface
::vtable(this
).ListenStateDiscoverability
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
454 pub fn SetListenStateDiscoverability(&self, value
: WiFiDirectAdvertisementListenStateDiscoverability
) -> ::windows
::core
::Result
<()> {
456 unsafe { (::windows::core::Interface::vtable(this).SetListenStateDiscoverability)(::windows::core::Interface::as_raw(this), value).ok() }
458 pub fn IsAutonomousGroupOwnerEnabled(&self) -> ::windows
::core
::Result
<bool
> {
461 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
462 (::windows
::core
::Interface
::vtable(this
).IsAutonomousGroupOwnerEnabled
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
465 pub fn SetIsAutonomousGroupOwnerEnabled(&self, value
: bool
) -> ::windows
::core
::Result
<()> {
467 unsafe { (::windows::core::Interface::vtable(this).SetIsAutonomousGroupOwnerEnabled)(::windows::core::Interface::as_raw(this), value).ok() }
469 pub fn LegacySettings(&self) -> ::windows
::core
::Result
<WiFiDirectLegacySettings
> {
472 let mut result__
= ::windows
::core
::zeroed
::<WiFiDirectLegacySettings
>();
473 (::windows
::core
::Interface
::vtable(this
).LegacySettings
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
476 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
477 #[cfg(feature = "Foundation_Collections")]
478 pub fn SupportedConfigurationMethods(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<WiFiDirectConfigurationMethod
>> {
479 let this
= &::windows
::core
::ComInterface
::cast
::<IWiFiDirectAdvertisement2
>(self)?
;
481 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<WiFiDirectConfigurationMethod
>>();
482 (::windows
::core
::Interface
::vtable(this
).SupportedConfigurationMethods
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
486 impl ::core
::cmp
::PartialEq
for WiFiDirectAdvertisement
{
487 fn eq(&self, other
: &Self) -> bool
{
491 impl ::core
::cmp
::Eq
for WiFiDirectAdvertisement {}
492 impl ::core
::fmt
::Debug
for WiFiDirectAdvertisement
{
493 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
494 f
.debug_tuple("WiFiDirectAdvertisement").field(&self.0).finish()
497 impl ::windows
::core
::RuntimeType
for WiFiDirectAdvertisement
{
498 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectAdvertisement;{ab511a2d-2a06-49a1-a584-61435c7905a6})");
500 impl ::core
::clone
::Clone
for WiFiDirectAdvertisement
{
501 fn clone(&self) -> Self {
505 unsafe impl ::windows
::core
::Interface
for WiFiDirectAdvertisement
{
506 type Vtable
= IWiFiDirectAdvertisement_Vtbl
;
508 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectAdvertisement
{
509 const IID
: ::windows
::core
::GUID
= <IWiFiDirectAdvertisement
as ::windows
::core
::ComInterface
>::IID
;
511 impl ::windows
::core
::RuntimeName
for WiFiDirectAdvertisement
{
512 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectAdvertisement";
514 ::windows
::imp
::interface_hierarchy
!(WiFiDirectAdvertisement
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
515 unsafe impl ::core
::marker
::Send
for WiFiDirectAdvertisement {}
516 unsafe impl ::core
::marker
::Sync
for WiFiDirectAdvertisement {}
517 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
519 pub struct WiFiDirectAdvertisementPublisher(::windows
::core
::IUnknown
);
520 impl WiFiDirectAdvertisementPublisher
{
521 pub fn new() -> ::windows
::core
::Result
<Self> {
522 Self::IActivationFactory(|f
| f
.ActivateInstance
::<Self>())
524 fn IActivationFactory
<R
, F
: FnOnce(&::windows
::imp
::IGenericFactory
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
525 static SHARED
: ::windows
::imp
::FactoryCache
<WiFiDirectAdvertisementPublisher
, ::windows
::imp
::IGenericFactory
> = ::windows
::imp
::FactoryCache
::new();
526 SHARED
.call(callback
)
528 pub fn Advertisement(&self) -> ::windows
::core
::Result
<WiFiDirectAdvertisement
> {
531 let mut result__
= ::windows
::core
::zeroed
::<WiFiDirectAdvertisement
>();
532 (::windows
::core
::Interface
::vtable(this
).Advertisement
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
535 pub fn Status(&self) -> ::windows
::core
::Result
<WiFiDirectAdvertisementPublisherStatus
> {
538 let mut result__
= ::windows
::core
::zeroed
::<WiFiDirectAdvertisementPublisherStatus
>();
539 (::windows
::core
::Interface
::vtable(this
).Status
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
542 #[doc = "*Required features: `\"Foundation\"`*"]
543 #[cfg(feature = "Foundation")]
544 pub fn StatusChanged(&self, handler
: &super::super::Foundation
::TypedEventHandler
<WiFiDirectAdvertisementPublisher
, WiFiDirectAdvertisementPublisherStatusChangedEventArgs
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
547 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
548 (::windows
::core
::Interface
::vtable(this
).StatusChanged
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(handler
), &mut result__
).from_abi(result__
)
551 #[doc = "*Required features: `\"Foundation\"`*"]
552 #[cfg(feature = "Foundation")]
553 pub fn RemoveStatusChanged(&self, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
555 unsafe { (::windows::core::Interface::vtable(this).RemoveStatusChanged)(::windows::core::Interface::as_raw(this), token).ok() }
557 pub fn Start(&self) -> ::windows
::core
::Result
<()> {
559 unsafe { (::windows::core::Interface::vtable(this).Start)(::windows::core::Interface::as_raw(this)).ok() }
561 pub fn Stop(&self) -> ::windows
::core
::Result
<()> {
563 unsafe { (::windows::core::Interface::vtable(this).Stop)(::windows::core::Interface::as_raw(this)).ok() }
566 impl ::core
::cmp
::PartialEq
for WiFiDirectAdvertisementPublisher
{
567 fn eq(&self, other
: &Self) -> bool
{
571 impl ::core
::cmp
::Eq
for WiFiDirectAdvertisementPublisher {}
572 impl ::core
::fmt
::Debug
for WiFiDirectAdvertisementPublisher
{
573 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
574 f
.debug_tuple("WiFiDirectAdvertisementPublisher").field(&self.0).finish()
577 impl ::windows
::core
::RuntimeType
for WiFiDirectAdvertisementPublisher
{
578 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectAdvertisementPublisher;{b35a2d1a-9b1f-45d9-925a-694d66df68ef})");
580 impl ::core
::clone
::Clone
for WiFiDirectAdvertisementPublisher
{
581 fn clone(&self) -> Self {
585 unsafe impl ::windows
::core
::Interface
for WiFiDirectAdvertisementPublisher
{
586 type Vtable
= IWiFiDirectAdvertisementPublisher_Vtbl
;
588 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectAdvertisementPublisher
{
589 const IID
: ::windows
::core
::GUID
= <IWiFiDirectAdvertisementPublisher
as ::windows
::core
::ComInterface
>::IID
;
591 impl ::windows
::core
::RuntimeName
for WiFiDirectAdvertisementPublisher
{
592 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectAdvertisementPublisher";
594 ::windows
::imp
::interface_hierarchy
!(WiFiDirectAdvertisementPublisher
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
595 unsafe impl ::core
::marker
::Send
for WiFiDirectAdvertisementPublisher {}
596 unsafe impl ::core
::marker
::Sync
for WiFiDirectAdvertisementPublisher {}
597 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
599 pub struct WiFiDirectAdvertisementPublisherStatusChangedEventArgs(::windows
::core
::IUnknown
);
600 impl WiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
601 pub fn Status(&self) -> ::windows
::core
::Result
<WiFiDirectAdvertisementPublisherStatus
> {
604 let mut result__
= ::windows
::core
::zeroed
::<WiFiDirectAdvertisementPublisherStatus
>();
605 (::windows
::core
::Interface
::vtable(this
).Status
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
608 pub fn Error(&self) -> ::windows
::core
::Result
<WiFiDirectError
> {
611 let mut result__
= ::windows
::core
::zeroed
::<WiFiDirectError
>();
612 (::windows
::core
::Interface
::vtable(this
).Error
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
616 impl ::core
::cmp
::PartialEq
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
617 fn eq(&self, other
: &Self) -> bool
{
621 impl ::core
::cmp
::Eq
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs {}
622 impl ::core
::fmt
::Debug
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
623 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
624 f
.debug_tuple("WiFiDirectAdvertisementPublisherStatusChangedEventArgs").field(&self.0).finish()
627 impl ::windows
::core
::RuntimeType
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
628 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectAdvertisementPublisherStatusChangedEventArgs;{aafde53c-5481-46e6-90dd-32116518f192})");
630 impl ::core
::clone
::Clone
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
631 fn clone(&self) -> Self {
635 unsafe impl ::windows
::core
::Interface
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
636 type Vtable
= IWiFiDirectAdvertisementPublisherStatusChangedEventArgs_Vtbl
;
638 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
639 const IID
: ::windows
::core
::GUID
= <IWiFiDirectAdvertisementPublisherStatusChangedEventArgs
as ::windows
::core
::ComInterface
>::IID
;
641 impl ::windows
::core
::RuntimeName
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs
{
642 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectAdvertisementPublisherStatusChangedEventArgs";
644 ::windows
::imp
::interface_hierarchy
!(WiFiDirectAdvertisementPublisherStatusChangedEventArgs
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
645 unsafe impl ::core
::marker
::Send
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs {}
646 unsafe impl ::core
::marker
::Sync
for WiFiDirectAdvertisementPublisherStatusChangedEventArgs {}
647 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
649 pub struct WiFiDirectConnectionListener(::windows
::core
::IUnknown
);
650 impl WiFiDirectConnectionListener
{
651 pub fn new() -> ::windows
::core
::Result
<Self> {
652 Self::IActivationFactory(|f
| f
.ActivateInstance
::<Self>())
654 fn IActivationFactory
<R
, F
: FnOnce(&::windows
::imp
::IGenericFactory
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
655 static SHARED
: ::windows
::imp
::FactoryCache
<WiFiDirectConnectionListener
, ::windows
::imp
::IGenericFactory
> = ::windows
::imp
::FactoryCache
::new();
656 SHARED
.call(callback
)
658 #[doc = "*Required features: `\"Foundation\"`*"]
659 #[cfg(feature = "Foundation")]
660 pub fn ConnectionRequested(&self, handler
: &super::super::Foundation
::TypedEventHandler
<WiFiDirectConnectionListener
, WiFiDirectConnectionRequestedEventArgs
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
663 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
664 (::windows
::core
::Interface
::vtable(this
).ConnectionRequested
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(handler
), &mut result__
).from_abi(result__
)
667 #[doc = "*Required features: `\"Foundation\"`*"]
668 #[cfg(feature = "Foundation")]
669 pub fn RemoveConnectionRequested(&self, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
671 unsafe { (::windows::core::Interface::vtable(this).RemoveConnectionRequested)(::windows::core::Interface::as_raw(this), token).ok() }
674 impl ::core
::cmp
::PartialEq
for WiFiDirectConnectionListener
{
675 fn eq(&self, other
: &Self) -> bool
{
679 impl ::core
::cmp
::Eq
for WiFiDirectConnectionListener {}
680 impl ::core
::fmt
::Debug
for WiFiDirectConnectionListener
{
681 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
682 f
.debug_tuple("WiFiDirectConnectionListener").field(&self.0).finish()
685 impl ::windows
::core
::RuntimeType
for WiFiDirectConnectionListener
{
686 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectConnectionListener;{699c1b0d-8d13-4ee9-b9ec-9c72f8251f7d})");
688 impl ::core
::clone
::Clone
for WiFiDirectConnectionListener
{
689 fn clone(&self) -> Self {
693 unsafe impl ::windows
::core
::Interface
for WiFiDirectConnectionListener
{
694 type Vtable
= IWiFiDirectConnectionListener_Vtbl
;
696 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectConnectionListener
{
697 const IID
: ::windows
::core
::GUID
= <IWiFiDirectConnectionListener
as ::windows
::core
::ComInterface
>::IID
;
699 impl ::windows
::core
::RuntimeName
for WiFiDirectConnectionListener
{
700 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectConnectionListener";
702 ::windows
::imp
::interface_hierarchy
!(WiFiDirectConnectionListener
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
703 unsafe impl ::core
::marker
::Send
for WiFiDirectConnectionListener {}
704 unsafe impl ::core
::marker
::Sync
for WiFiDirectConnectionListener {}
705 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
707 pub struct WiFiDirectConnectionParameters(::windows
::core
::IUnknown
);
708 impl WiFiDirectConnectionParameters
{
709 pub fn new() -> ::windows
::core
::Result
<Self> {
710 Self::IActivationFactory(|f
| f
.ActivateInstance
::<Self>())
712 fn IActivationFactory
<R
, F
: FnOnce(&::windows
::imp
::IGenericFactory
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
713 static SHARED
: ::windows
::imp
::FactoryCache
<WiFiDirectConnectionParameters
, ::windows
::imp
::IGenericFactory
> = ::windows
::imp
::FactoryCache
::new();
714 SHARED
.call(callback
)
716 pub fn GroupOwnerIntent(&self) -> ::windows
::core
::Result
<i16> {
719 let mut result__
= ::windows
::core
::zeroed
::<i16>();
720 (::windows
::core
::Interface
::vtable(this
).GroupOwnerIntent
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
723 pub fn SetGroupOwnerIntent(&self, value
: i16) -> ::windows
::core
::Result
<()> {
725 unsafe { (::windows::core::Interface::vtable(this).SetGroupOwnerIntent)(::windows::core::Interface::as_raw(this), value).ok() }
727 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
728 #[cfg(feature = "Foundation_Collections")]
729 pub fn PreferenceOrderedConfigurationMethods(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<WiFiDirectConfigurationMethod
>> {
730 let this
= &::windows
::core
::ComInterface
::cast
::<IWiFiDirectConnectionParameters2
>(self)?
;
732 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<WiFiDirectConfigurationMethod
>>();
733 (::windows
::core
::Interface
::vtable(this
).PreferenceOrderedConfigurationMethods
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
736 pub fn PreferredPairingProcedure(&self) -> ::windows
::core
::Result
<WiFiDirectPairingProcedure
> {
737 let this
= &::windows
::core
::ComInterface
::cast
::<IWiFiDirectConnectionParameters2
>(self)?
;
739 let mut result__
= ::windows
::core
::zeroed
::<WiFiDirectPairingProcedure
>();
740 (::windows
::core
::Interface
::vtable(this
).PreferredPairingProcedure
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
743 pub fn SetPreferredPairingProcedure(&self, value
: WiFiDirectPairingProcedure
) -> ::windows
::core
::Result
<()> {
744 let this
= &::windows
::core
::ComInterface
::cast
::<IWiFiDirectConnectionParameters2
>(self)?
;
745 unsafe { (::windows::core::Interface::vtable(this).SetPreferredPairingProcedure)(::windows::core::Interface::as_raw(this), value).ok() }
747 #[doc = "*Required features: `\"Devices_Enumeration\"`*"]
748 #[cfg(feature = "Devices_Enumeration")]
749 pub fn GetDevicePairingKinds(configurationmethod
: WiFiDirectConfigurationMethod
) -> ::windows
::core
::Result
<super::Enumeration
::DevicePairingKinds
> {
750 Self::IWiFiDirectConnectionParametersStatics(|this
| unsafe {
751 let mut result__
= ::windows
::core
::zeroed
::<super::Enumeration
::DevicePairingKinds
>();
752 (::windows
::core
::Interface
::vtable(this
).GetDevicePairingKinds
)(::windows
::core
::Interface
::as_raw(this
), configurationmethod
, &mut result__
).from_abi(result__
)
756 pub fn IWiFiDirectConnectionParametersStatics
<R
, F
: FnOnce(&IWiFiDirectConnectionParametersStatics
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
757 static SHARED
: ::windows
::imp
::FactoryCache
<WiFiDirectConnectionParameters
, IWiFiDirectConnectionParametersStatics
> = ::windows
::imp
::FactoryCache
::new();
758 SHARED
.call(callback
)
761 impl ::core
::cmp
::PartialEq
for WiFiDirectConnectionParameters
{
762 fn eq(&self, other
: &Self) -> bool
{
766 impl ::core
::cmp
::Eq
for WiFiDirectConnectionParameters {}
767 impl ::core
::fmt
::Debug
for WiFiDirectConnectionParameters
{
768 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
769 f
.debug_tuple("WiFiDirectConnectionParameters").field(&self.0).finish()
772 impl ::windows
::core
::RuntimeType
for WiFiDirectConnectionParameters
{
773 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectConnectionParameters;{b2e55405-5702-4b16-a02c-bbcd21ef6098})");
775 impl ::core
::clone
::Clone
for WiFiDirectConnectionParameters
{
776 fn clone(&self) -> Self {
780 unsafe impl ::windows
::core
::Interface
for WiFiDirectConnectionParameters
{
781 type Vtable
= IWiFiDirectConnectionParameters_Vtbl
;
783 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectConnectionParameters
{
784 const IID
: ::windows
::core
::GUID
= <IWiFiDirectConnectionParameters
as ::windows
::core
::ComInterface
>::IID
;
786 impl ::windows
::core
::RuntimeName
for WiFiDirectConnectionParameters
{
787 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectConnectionParameters";
789 ::windows
::imp
::interface_hierarchy
!(WiFiDirectConnectionParameters
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
790 #[cfg(feature = "Devices_Enumeration")]
791 impl ::windows
::core
::CanTryInto
<super::Enumeration
::IDevicePairingSettings
> for WiFiDirectConnectionParameters {}
792 unsafe impl ::core
::marker
::Send
for WiFiDirectConnectionParameters {}
793 unsafe impl ::core
::marker
::Sync
for WiFiDirectConnectionParameters {}
794 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
796 pub struct WiFiDirectConnectionRequest(::windows
::core
::IUnknown
);
797 impl WiFiDirectConnectionRequest
{
798 #[doc = "*Required features: `\"Foundation\"`*"]
799 #[cfg(feature = "Foundation")]
800 pub fn Close(&self) -> ::windows
::core
::Result
<()> {
801 let this
= &::windows
::core
::ComInterface
::cast
::<super::super::Foundation
::IClosable
>(self)?
;
802 unsafe { (::windows::core::Interface::vtable(this).Close)(::windows::core::Interface::as_raw(this)).ok() }
804 #[doc = "*Required features: `\"Devices_Enumeration\"`*"]
805 #[cfg(feature = "Devices_Enumeration")]
806 pub fn DeviceInformation(&self) -> ::windows
::core
::Result
<super::Enumeration
::DeviceInformation
> {
809 let mut result__
= ::windows
::core
::zeroed
::<super::Enumeration
::DeviceInformation
>();
810 (::windows
::core
::Interface
::vtable(this
).DeviceInformation
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
814 impl ::core
::cmp
::PartialEq
for WiFiDirectConnectionRequest
{
815 fn eq(&self, other
: &Self) -> bool
{
819 impl ::core
::cmp
::Eq
for WiFiDirectConnectionRequest {}
820 impl ::core
::fmt
::Debug
for WiFiDirectConnectionRequest
{
821 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
822 f
.debug_tuple("WiFiDirectConnectionRequest").field(&self.0).finish()
825 impl ::windows
::core
::RuntimeType
for WiFiDirectConnectionRequest
{
826 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectConnectionRequest;{8eb99605-914f-49c3-a614-d18dc5b19b43})");
828 impl ::core
::clone
::Clone
for WiFiDirectConnectionRequest
{
829 fn clone(&self) -> Self {
833 unsafe impl ::windows
::core
::Interface
for WiFiDirectConnectionRequest
{
834 type Vtable
= IWiFiDirectConnectionRequest_Vtbl
;
836 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectConnectionRequest
{
837 const IID
: ::windows
::core
::GUID
= <IWiFiDirectConnectionRequest
as ::windows
::core
::ComInterface
>::IID
;
839 impl ::windows
::core
::RuntimeName
for WiFiDirectConnectionRequest
{
840 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectConnectionRequest";
842 ::windows
::imp
::interface_hierarchy
!(WiFiDirectConnectionRequest
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
843 #[cfg(feature = "Foundation")]
844 impl ::windows
::core
::CanTryInto
<super::super::Foundation
::IClosable
> for WiFiDirectConnectionRequest {}
845 unsafe impl ::core
::marker
::Send
for WiFiDirectConnectionRequest {}
846 unsafe impl ::core
::marker
::Sync
for WiFiDirectConnectionRequest {}
847 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
849 pub struct WiFiDirectConnectionRequestedEventArgs(::windows
::core
::IUnknown
);
850 impl WiFiDirectConnectionRequestedEventArgs
{
851 pub fn GetConnectionRequest(&self) -> ::windows
::core
::Result
<WiFiDirectConnectionRequest
> {
854 let mut result__
= ::windows
::core
::zeroed
::<WiFiDirectConnectionRequest
>();
855 (::windows
::core
::Interface
::vtable(this
).GetConnectionRequest
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
859 impl ::core
::cmp
::PartialEq
for WiFiDirectConnectionRequestedEventArgs
{
860 fn eq(&self, other
: &Self) -> bool
{
864 impl ::core
::cmp
::Eq
for WiFiDirectConnectionRequestedEventArgs {}
865 impl ::core
::fmt
::Debug
for WiFiDirectConnectionRequestedEventArgs
{
866 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
867 f
.debug_tuple("WiFiDirectConnectionRequestedEventArgs").field(&self.0).finish()
870 impl ::windows
::core
::RuntimeType
for WiFiDirectConnectionRequestedEventArgs
{
871 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectConnectionRequestedEventArgs;{f99d20be-d38d-484f-8215-e7b65abf244c})");
873 impl ::core
::clone
::Clone
for WiFiDirectConnectionRequestedEventArgs
{
874 fn clone(&self) -> Self {
878 unsafe impl ::windows
::core
::Interface
for WiFiDirectConnectionRequestedEventArgs
{
879 type Vtable
= IWiFiDirectConnectionRequestedEventArgs_Vtbl
;
881 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectConnectionRequestedEventArgs
{
882 const IID
: ::windows
::core
::GUID
= <IWiFiDirectConnectionRequestedEventArgs
as ::windows
::core
::ComInterface
>::IID
;
884 impl ::windows
::core
::RuntimeName
for WiFiDirectConnectionRequestedEventArgs
{
885 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectConnectionRequestedEventArgs";
887 ::windows
::imp
::interface_hierarchy
!(WiFiDirectConnectionRequestedEventArgs
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
888 unsafe impl ::core
::marker
::Send
for WiFiDirectConnectionRequestedEventArgs {}
889 unsafe impl ::core
::marker
::Sync
for WiFiDirectConnectionRequestedEventArgs {}
890 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
892 pub struct WiFiDirectDevice(::windows
::core
::IUnknown
);
893 impl WiFiDirectDevice
{
894 #[doc = "*Required features: `\"Foundation\"`*"]
895 #[cfg(feature = "Foundation")]
896 pub fn Close(&self) -> ::windows
::core
::Result
<()> {
897 let this
= &::windows
::core
::ComInterface
::cast
::<super::super::Foundation
::IClosable
>(self)?
;
898 unsafe { (::windows::core::Interface::vtable(this).Close)(::windows::core::Interface::as_raw(this)).ok() }
900 pub fn ConnectionStatus(&self) -> ::windows
::core
::Result
<WiFiDirectConnectionStatus
> {
903 let mut result__
= ::windows
::core
::zeroed
::<WiFiDirectConnectionStatus
>();
904 (::windows
::core
::Interface
::vtable(this
).ConnectionStatus
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
907 pub fn DeviceId(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
910 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
911 (::windows
::core
::Interface
::vtable(this
).DeviceId
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
914 #[doc = "*Required features: `\"Foundation\"`*"]
915 #[cfg(feature = "Foundation")]
916 pub fn ConnectionStatusChanged(&self, handler
: &super::super::Foundation
::TypedEventHandler
<WiFiDirectDevice
, ::windows
::core
::IInspectable
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
919 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
920 (::windows
::core
::Interface
::vtable(this
).ConnectionStatusChanged
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(handler
), &mut result__
).from_abi(result__
)
923 #[doc = "*Required features: `\"Foundation\"`*"]
924 #[cfg(feature = "Foundation")]
925 pub fn RemoveConnectionStatusChanged(&self, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
927 unsafe { (::windows::core::Interface::vtable(this).RemoveConnectionStatusChanged)(::windows::core::Interface::as_raw(this), token).ok() }
929 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Networking\"`*"]
930 #[cfg(all(feature = "Foundation_Collections", feature = "Networking"))]
931 pub fn GetConnectionEndpointPairs(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVectorView
<super::super::Networking
::EndpointPair
>> {
934 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVectorView
<super::super::Networking
::EndpointPair
>>();
935 (::windows
::core
::Interface
::vtable(this
).GetConnectionEndpointPairs
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
938 pub fn GetDeviceSelector() -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
939 Self::IWiFiDirectDeviceStatics(|this
| unsafe {
940 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
941 (::windows
::core
::Interface
::vtable(this
).GetDeviceSelector
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
944 #[doc = "*Required features: `\"Foundation\"`*"]
945 #[cfg(feature = "Foundation")]
946 pub fn FromIdAsync(deviceid
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<WiFiDirectDevice
>> {
947 Self::IWiFiDirectDeviceStatics(|this
| unsafe {
948 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<WiFiDirectDevice
>>();
949 (::windows
::core
::Interface
::vtable(this
).FromIdAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(deviceid
), &mut result__
).from_abi(result__
)
952 pub fn GetDeviceSelector2(r
#type: WiFiDirectDeviceSelectorType) -> ::windows::core::Result<::windows::core::HSTRING> {
953 Self::IWiFiDirectDeviceStatics2(|this
| unsafe {
954 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
955 (::windows
::core
::Interface
::vtable(this
).GetDeviceSelector
)(::windows
::core
::Interface
::as_raw(this
), r
#type, &mut result__).from_abi(result__)
958 #[doc = "*Required features: `\"Foundation\"`*"]
959 #[cfg(feature = "Foundation")]
960 pub fn FromIdAsync2(deviceid
: &::windows
::core
::HSTRING
, connectionparameters
: &WiFiDirectConnectionParameters
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<WiFiDirectDevice
>> {
961 Self::IWiFiDirectDeviceStatics2(|this
| unsafe {
962 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<WiFiDirectDevice
>>();
963 (::windows
::core
::Interface
::vtable(this
).FromIdAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(deviceid
), ::core
::mem
::transmute_copy(connectionparameters
), &mut result__
).from_abi(result__
)
967 pub fn IWiFiDirectDeviceStatics
<R
, F
: FnOnce(&IWiFiDirectDeviceStatics
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
968 static SHARED
: ::windows
::imp
::FactoryCache
<WiFiDirectDevice
, IWiFiDirectDeviceStatics
> = ::windows
::imp
::FactoryCache
::new();
969 SHARED
.call(callback
)
972 pub fn IWiFiDirectDeviceStatics2
<R
, F
: FnOnce(&IWiFiDirectDeviceStatics2
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
973 static SHARED
: ::windows
::imp
::FactoryCache
<WiFiDirectDevice
, IWiFiDirectDeviceStatics2
> = ::windows
::imp
::FactoryCache
::new();
974 SHARED
.call(callback
)
977 impl ::core
::cmp
::PartialEq
for WiFiDirectDevice
{
978 fn eq(&self, other
: &Self) -> bool
{
982 impl ::core
::cmp
::Eq
for WiFiDirectDevice {}
983 impl ::core
::fmt
::Debug
for WiFiDirectDevice
{
984 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
985 f
.debug_tuple("WiFiDirectDevice").field(&self.0).finish()
988 impl ::windows
::core
::RuntimeType
for WiFiDirectDevice
{
989 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectDevice;{72deaaa8-72eb-4dae-8a28-8513355d2777})");
991 impl ::core
::clone
::Clone
for WiFiDirectDevice
{
992 fn clone(&self) -> Self {
996 unsafe impl ::windows
::core
::Interface
for WiFiDirectDevice
{
997 type Vtable
= IWiFiDirectDevice_Vtbl
;
999 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectDevice
{
1000 const IID
: ::windows
::core
::GUID
= <IWiFiDirectDevice
as ::windows
::core
::ComInterface
>::IID
;
1002 impl ::windows
::core
::RuntimeName
for WiFiDirectDevice
{
1003 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectDevice";
1005 ::windows
::imp
::interface_hierarchy
!(WiFiDirectDevice
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1006 #[cfg(feature = "Foundation")]
1007 impl ::windows
::core
::CanTryInto
<super::super::Foundation
::IClosable
> for WiFiDirectDevice {}
1008 unsafe impl ::core
::marker
::Send
for WiFiDirectDevice {}
1009 unsafe impl ::core
::marker
::Sync
for WiFiDirectDevice {}
1010 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
1011 #[repr(transparent)]
1012 pub struct WiFiDirectInformationElement(::windows
::core
::IUnknown
);
1013 impl WiFiDirectInformationElement
{
1014 pub fn new() -> ::windows
::core
::Result
<Self> {
1015 Self::IActivationFactory(|f
| f
.ActivateInstance
::<Self>())
1017 fn IActivationFactory
<R
, F
: FnOnce(&::windows
::imp
::IGenericFactory
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
1018 static SHARED
: ::windows
::imp
::FactoryCache
<WiFiDirectInformationElement
, ::windows
::imp
::IGenericFactory
> = ::windows
::imp
::FactoryCache
::new();
1019 SHARED
.call(callback
)
1021 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1022 #[cfg(feature = "Storage_Streams")]
1023 pub fn Oui(&self) -> ::windows
::core
::Result
<super::super::Storage
::Streams
::IBuffer
> {
1026 let mut result__
= ::windows
::core
::zeroed
::<super::super::Storage
::Streams
::IBuffer
>();
1027 (::windows
::core
::Interface
::vtable(this
).Oui
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1030 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1031 #[cfg(feature = "Storage_Streams")]
1032 pub fn SetOui
<P0
>(&self, value
: P0
) -> ::windows
::core
::Result
<()>
1034 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IBuffer
>,
1037 unsafe { (::windows::core::Interface::vtable(this).SetOui)(::windows::core::Interface::as_raw(this), value.try_into_param()?.abi()).ok() }
1039 pub fn OuiType(&self) -> ::windows
::core
::Result
<u8> {
1042 let mut result__
= ::windows
::core
::zeroed
::<u8>();
1043 (::windows
::core
::Interface
::vtable(this
).OuiType
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1046 pub fn SetOuiType(&self, value
: u8) -> ::windows
::core
::Result
<()> {
1048 unsafe { (::windows::core::Interface::vtable(this).SetOuiType)(::windows::core::Interface::as_raw(this), value).ok() }
1050 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1051 #[cfg(feature = "Storage_Streams")]
1052 pub fn Value(&self) -> ::windows
::core
::Result
<super::super::Storage
::Streams
::IBuffer
> {
1055 let mut result__
= ::windows
::core
::zeroed
::<super::super::Storage
::Streams
::IBuffer
>();
1056 (::windows
::core
::Interface
::vtable(this
).Value
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1059 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1060 #[cfg(feature = "Storage_Streams")]
1061 pub fn SetValue
<P0
>(&self, value
: P0
) -> ::windows
::core
::Result
<()>
1063 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IBuffer
>,
1066 unsafe { (::windows::core::Interface::vtable(this).SetValue)(::windows::core::Interface::as_raw(this), value.try_into_param()?.abi()).ok() }
1068 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage_Streams\"`*"]
1069 #[cfg(all(feature = "Foundation_Collections", feature = "Storage_Streams"))]
1070 pub fn CreateFromBuffer
<P0
>(buffer
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<WiFiDirectInformationElement
>>
1072 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IBuffer
>,
1074 Self::IWiFiDirectInformationElementStatics(|this
| unsafe {
1075 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<WiFiDirectInformationElement
>>();
1076 (::windows
::core
::Interface
::vtable(this
).CreateFromBuffer
)(::windows
::core
::Interface
::as_raw(this
), buffer
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1079 #[doc = "*Required features: `\"Devices_Enumeration\"`, `\"Foundation_Collections\"`*"]
1080 #[cfg(all(feature = "Devices_Enumeration", feature = "Foundation_Collections"))]
1081 pub fn CreateFromDeviceInformation(deviceinformation
: &super::Enumeration
::DeviceInformation
) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<WiFiDirectInformationElement
>> {
1082 Self::IWiFiDirectInformationElementStatics(|this
| unsafe {
1083 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<WiFiDirectInformationElement
>>();
1084 (::windows
::core
::Interface
::vtable(this
).CreateFromDeviceInformation
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(deviceinformation
), &mut result__
).from_abi(result__
)
1088 pub fn IWiFiDirectInformationElementStatics
<R
, F
: FnOnce(&IWiFiDirectInformationElementStatics
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
1089 static SHARED
: ::windows
::imp
::FactoryCache
<WiFiDirectInformationElement
, IWiFiDirectInformationElementStatics
> = ::windows
::imp
::FactoryCache
::new();
1090 SHARED
.call(callback
)
1093 impl ::core
::cmp
::PartialEq
for WiFiDirectInformationElement
{
1094 fn eq(&self, other
: &Self) -> bool
{
1098 impl ::core
::cmp
::Eq
for WiFiDirectInformationElement {}
1099 impl ::core
::fmt
::Debug
for WiFiDirectInformationElement
{
1100 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1101 f
.debug_tuple("WiFiDirectInformationElement").field(&self.0).finish()
1104 impl ::windows
::core
::RuntimeType
for WiFiDirectInformationElement
{
1105 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectInformationElement;{affb72d6-76bb-497e-ac8b-dc72838bc309})");
1107 impl ::core
::clone
::Clone
for WiFiDirectInformationElement
{
1108 fn clone(&self) -> Self {
1109 Self(self.0.clone())
1112 unsafe impl ::windows
::core
::Interface
for WiFiDirectInformationElement
{
1113 type Vtable
= IWiFiDirectInformationElement_Vtbl
;
1115 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectInformationElement
{
1116 const IID
: ::windows
::core
::GUID
= <IWiFiDirectInformationElement
as ::windows
::core
::ComInterface
>::IID
;
1118 impl ::windows
::core
::RuntimeName
for WiFiDirectInformationElement
{
1119 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectInformationElement";
1121 ::windows
::imp
::interface_hierarchy
!(WiFiDirectInformationElement
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1122 unsafe impl ::core
::marker
::Send
for WiFiDirectInformationElement {}
1123 unsafe impl ::core
::marker
::Sync
for WiFiDirectInformationElement {}
1124 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
1125 #[repr(transparent)]
1126 pub struct WiFiDirectLegacySettings(::windows
::core
::IUnknown
);
1127 impl WiFiDirectLegacySettings
{
1128 pub fn IsEnabled(&self) -> ::windows
::core
::Result
<bool
> {
1131 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1132 (::windows
::core
::Interface
::vtable(this
).IsEnabled
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1135 pub fn SetIsEnabled(&self, value
: bool
) -> ::windows
::core
::Result
<()> {
1137 unsafe { (::windows::core::Interface::vtable(this).SetIsEnabled)(::windows::core::Interface::as_raw(this), value).ok() }
1139 pub fn Ssid(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1142 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1143 (::windows
::core
::Interface
::vtable(this
).Ssid
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1146 pub fn SetSsid(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1148 unsafe { (::windows::core::Interface::vtable(this).SetSsid)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1150 #[doc = "*Required features: `\"Security_Credentials\"`*"]
1151 #[cfg(feature = "Security_Credentials")]
1152 pub fn Passphrase(&self) -> ::windows
::core
::Result
<super::super::Security
::Credentials
::PasswordCredential
> {
1155 let mut result__
= ::windows
::core
::zeroed
::<super::super::Security
::Credentials
::PasswordCredential
>();
1156 (::windows
::core
::Interface
::vtable(this
).Passphrase
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1159 #[doc = "*Required features: `\"Security_Credentials\"`*"]
1160 #[cfg(feature = "Security_Credentials")]
1161 pub fn SetPassphrase(&self, value
: &super::super::Security
::Credentials
::PasswordCredential
) -> ::windows
::core
::Result
<()> {
1163 unsafe { (::windows::core::Interface::vtable(this).SetPassphrase)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1166 impl ::core
::cmp
::PartialEq
for WiFiDirectLegacySettings
{
1167 fn eq(&self, other
: &Self) -> bool
{
1171 impl ::core
::cmp
::Eq
for WiFiDirectLegacySettings {}
1172 impl ::core
::fmt
::Debug
for WiFiDirectLegacySettings
{
1173 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1174 f
.debug_tuple("WiFiDirectLegacySettings").field(&self.0).finish()
1177 impl ::windows
::core
::RuntimeType
for WiFiDirectLegacySettings
{
1178 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Devices.WiFiDirect.WiFiDirectLegacySettings;{a64fdbba-f2fd-4567-a91b-f5c2f5321057})");
1180 impl ::core
::clone
::Clone
for WiFiDirectLegacySettings
{
1181 fn clone(&self) -> Self {
1182 Self(self.0.clone())
1185 unsafe impl ::windows
::core
::Interface
for WiFiDirectLegacySettings
{
1186 type Vtable
= IWiFiDirectLegacySettings_Vtbl
;
1188 unsafe impl ::windows
::core
::ComInterface
for WiFiDirectLegacySettings
{
1189 const IID
: ::windows
::core
::GUID
= <IWiFiDirectLegacySettings
as ::windows
::core
::ComInterface
>::IID
;
1191 impl ::windows
::core
::RuntimeName
for WiFiDirectLegacySettings
{
1192 const NAME
: &'
static str = "Windows.Devices.WiFiDirect.WiFiDirectLegacySettings";
1194 ::windows
::imp
::interface_hierarchy
!(WiFiDirectLegacySettings
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1195 unsafe impl ::core
::marker
::Send
for WiFiDirectLegacySettings {}
1196 unsafe impl ::core
::marker
::Sync
for WiFiDirectLegacySettings {}
1197 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
1198 #[repr(transparent)]
1199 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1200 pub struct WiFiDirectAdvertisementListenStateDiscoverability(pub i32);
1201 impl WiFiDirectAdvertisementListenStateDiscoverability
{
1202 pub const None
: Self = Self(0i32);
1203 pub const Normal
: Self = Self(1i32);
1204 pub const Intensive
: Self = Self(2i32);
1206 impl ::core
::marker
::Copy
for WiFiDirectAdvertisementListenStateDiscoverability {}
1207 impl ::core
::clone
::Clone
for WiFiDirectAdvertisementListenStateDiscoverability
{
1208 fn clone(&self) -> Self {
1212 impl ::core
::default::Default
for WiFiDirectAdvertisementListenStateDiscoverability
{
1213 fn default() -> Self {
1217 impl ::windows
::core
::TypeKind
for WiFiDirectAdvertisementListenStateDiscoverability
{
1218 type TypeKind
= ::windows
::core
::CopyType
;
1220 impl ::core
::fmt
::Debug
for WiFiDirectAdvertisementListenStateDiscoverability
{
1221 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1222 f
.debug_tuple("WiFiDirectAdvertisementListenStateDiscoverability").field(&self.0).finish()
1225 impl ::windows
::core
::RuntimeType
for WiFiDirectAdvertisementListenStateDiscoverability
{
1226 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Devices.WiFiDirect.WiFiDirectAdvertisementListenStateDiscoverability;i4)");
1228 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
1229 #[repr(transparent)]
1230 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1231 pub struct WiFiDirectAdvertisementPublisherStatus(pub i32);
1232 impl WiFiDirectAdvertisementPublisherStatus
{
1233 pub const Created
: Self = Self(0i32);
1234 pub const Started
: Self = Self(1i32);
1235 pub const Stopped
: Self = Self(2i32);
1236 pub const Aborted
: Self = Self(3i32);
1238 impl ::core
::marker
::Copy
for WiFiDirectAdvertisementPublisherStatus {}
1239 impl ::core
::clone
::Clone
for WiFiDirectAdvertisementPublisherStatus
{
1240 fn clone(&self) -> Self {
1244 impl ::core
::default::Default
for WiFiDirectAdvertisementPublisherStatus
{
1245 fn default() -> Self {
1249 impl ::windows
::core
::TypeKind
for WiFiDirectAdvertisementPublisherStatus
{
1250 type TypeKind
= ::windows
::core
::CopyType
;
1252 impl ::core
::fmt
::Debug
for WiFiDirectAdvertisementPublisherStatus
{
1253 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1254 f
.debug_tuple("WiFiDirectAdvertisementPublisherStatus").field(&self.0).finish()
1257 impl ::windows
::core
::RuntimeType
for WiFiDirectAdvertisementPublisherStatus
{
1258 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Devices.WiFiDirect.WiFiDirectAdvertisementPublisherStatus;i4)");
1260 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
1261 #[repr(transparent)]
1262 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1263 pub struct WiFiDirectConfigurationMethod(pub i32);
1264 impl WiFiDirectConfigurationMethod
{
1265 pub const ProvidePin
: Self = Self(0i32);
1266 pub const DisplayPin
: Self = Self(1i32);
1267 pub const PushButton
: Self = Self(2i32);
1269 impl ::core
::marker
::Copy
for WiFiDirectConfigurationMethod {}
1270 impl ::core
::clone
::Clone
for WiFiDirectConfigurationMethod
{
1271 fn clone(&self) -> Self {
1275 impl ::core
::default::Default
for WiFiDirectConfigurationMethod
{
1276 fn default() -> Self {
1280 impl ::windows
::core
::TypeKind
for WiFiDirectConfigurationMethod
{
1281 type TypeKind
= ::windows
::core
::CopyType
;
1283 impl ::core
::fmt
::Debug
for WiFiDirectConfigurationMethod
{
1284 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1285 f
.debug_tuple("WiFiDirectConfigurationMethod").field(&self.0).finish()
1288 impl ::windows
::core
::RuntimeType
for WiFiDirectConfigurationMethod
{
1289 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Devices.WiFiDirect.WiFiDirectConfigurationMethod;i4)");
1291 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
1292 #[repr(transparent)]
1293 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1294 pub struct WiFiDirectConnectionStatus(pub i32);
1295 impl WiFiDirectConnectionStatus
{
1296 pub const Disconnected
: Self = Self(0i32);
1297 pub const Connected
: Self = Self(1i32);
1299 impl ::core
::marker
::Copy
for WiFiDirectConnectionStatus {}
1300 impl ::core
::clone
::Clone
for WiFiDirectConnectionStatus
{
1301 fn clone(&self) -> Self {
1305 impl ::core
::default::Default
for WiFiDirectConnectionStatus
{
1306 fn default() -> Self {
1310 impl ::windows
::core
::TypeKind
for WiFiDirectConnectionStatus
{
1311 type TypeKind
= ::windows
::core
::CopyType
;
1313 impl ::core
::fmt
::Debug
for WiFiDirectConnectionStatus
{
1314 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1315 f
.debug_tuple("WiFiDirectConnectionStatus").field(&self.0).finish()
1318 impl ::windows
::core
::RuntimeType
for WiFiDirectConnectionStatus
{
1319 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Devices.WiFiDirect.WiFiDirectConnectionStatus;i4)");
1321 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
1322 #[repr(transparent)]
1323 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1324 pub struct WiFiDirectDeviceSelectorType(pub i32);
1325 impl WiFiDirectDeviceSelectorType
{
1326 pub const DeviceInterface
: Self = Self(0i32);
1327 pub const AssociationEndpoint
: Self = Self(1i32);
1329 impl ::core
::marker
::Copy
for WiFiDirectDeviceSelectorType {}
1330 impl ::core
::clone
::Clone
for WiFiDirectDeviceSelectorType
{
1331 fn clone(&self) -> Self {
1335 impl ::core
::default::Default
for WiFiDirectDeviceSelectorType
{
1336 fn default() -> Self {
1340 impl ::windows
::core
::TypeKind
for WiFiDirectDeviceSelectorType
{
1341 type TypeKind
= ::windows
::core
::CopyType
;
1343 impl ::core
::fmt
::Debug
for WiFiDirectDeviceSelectorType
{
1344 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1345 f
.debug_tuple("WiFiDirectDeviceSelectorType").field(&self.0).finish()
1348 impl ::windows
::core
::RuntimeType
for WiFiDirectDeviceSelectorType
{
1349 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Devices.WiFiDirect.WiFiDirectDeviceSelectorType;i4)");
1351 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
1352 #[repr(transparent)]
1353 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1354 pub struct WiFiDirectError(pub i32);
1355 impl WiFiDirectError
{
1356 pub const Success
: Self = Self(0i32);
1357 pub const RadioNotAvailable
: Self = Self(1i32);
1358 pub const ResourceInUse
: Self = Self(2i32);
1360 impl ::core
::marker
::Copy
for WiFiDirectError {}
1361 impl ::core
::clone
::Clone
for WiFiDirectError
{
1362 fn clone(&self) -> Self {
1366 impl ::core
::default::Default
for WiFiDirectError
{
1367 fn default() -> Self {
1371 impl ::windows
::core
::TypeKind
for WiFiDirectError
{
1372 type TypeKind
= ::windows
::core
::CopyType
;
1374 impl ::core
::fmt
::Debug
for WiFiDirectError
{
1375 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1376 f
.debug_tuple("WiFiDirectError").field(&self.0).finish()
1379 impl ::windows
::core
::RuntimeType
for WiFiDirectError
{
1380 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Devices.WiFiDirect.WiFiDirectError;i4)");
1382 #[doc = "*Required features: `\"Devices_WiFiDirect\"`*"]
1383 #[repr(transparent)]
1384 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1385 pub struct WiFiDirectPairingProcedure(pub i32);
1386 impl WiFiDirectPairingProcedure
{
1387 pub const GroupOwnerNegotiation
: Self = Self(0i32);
1388 pub const Invitation
: Self = Self(1i32);
1390 impl ::core
::marker
::Copy
for WiFiDirectPairingProcedure {}
1391 impl ::core
::clone
::Clone
for WiFiDirectPairingProcedure
{
1392 fn clone(&self) -> Self {
1396 impl ::core
::default::Default
for WiFiDirectPairingProcedure
{
1397 fn default() -> Self {
1401 impl ::windows
::core
::TypeKind
for WiFiDirectPairingProcedure
{
1402 type TypeKind
= ::windows
::core
::CopyType
;
1404 impl ::core
::fmt
::Debug
for WiFiDirectPairingProcedure
{
1405 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1406 f
.debug_tuple("WiFiDirectPairingProcedure").field(&self.0).finish()
1409 impl ::windows
::core
::RuntimeType
for WiFiDirectPairingProcedure
{
1410 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Devices.WiFiDirect.WiFiDirectPairingProcedure;i4)");
1412 #[cfg(feature = "implement")]
1413 ::core
::include
!("impl.rs");