]> git.proxmox.com Git - rustc.git/blame - vendor/windows/src/Windows/Networking/NetworkOperators/mod.rs
Update upstream source from tag 'upstream/1.70.0+dfsg1'
[rustc.git] / vendor / windows / src / Windows / Networking / NetworkOperators / mod.rs
CommitLineData
353b0b11
FG
1#[doc(hidden)]
2#[repr(transparent)]
3pub struct IESim(::windows::core::IUnknown);
4unsafe impl ::windows::core::Interface for IESim {
5 type Vtable = IESim_Vtbl;
6}
7impl ::core::clone::Clone for IESim {
8 fn clone(&self) -> Self {
9 Self(self.0.clone())
10 }
11}
12unsafe impl ::windows::core::ComInterface for IESim {
13 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6f6e6e26_f123_437d_8ced_dc1d2bc0c3a9);
14}
15#[repr(C)]
16#[doc(hidden)]
17pub struct IESim_Vtbl {
18 pub base__: ::windows::core::IInspectable_Vtbl,
19 #[cfg(feature = "Foundation")]
20 pub AvailableMemoryInBytes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
21 #[cfg(not(feature = "Foundation"))]
22 AvailableMemoryInBytes: usize,
23 pub Eid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
24 pub FirmwareVersion: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
25 pub MobileBroadbandModemDeviceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
26 pub Policy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
27 pub State: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ESimState) -> ::windows::core::HRESULT,
28 #[cfg(feature = "Foundation_Collections")]
29 pub GetProfiles: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
30 #[cfg(not(feature = "Foundation_Collections"))]
31 GetProfiles: usize,
32 #[cfg(feature = "Foundation")]
33 pub DeleteProfileAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, profileid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
34 #[cfg(not(feature = "Foundation"))]
35 DeleteProfileAsync: usize,
36 #[cfg(feature = "Foundation")]
37 pub DownloadProfileMetadataAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, activationcode: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
38 #[cfg(not(feature = "Foundation"))]
39 DownloadProfileMetadataAsync: usize,
40 #[cfg(feature = "Foundation")]
41 pub ResetAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
42 #[cfg(not(feature = "Foundation"))]
43 ResetAsync: usize,
44 #[cfg(feature = "Foundation")]
45 pub ProfileChanged: 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,
46 #[cfg(not(feature = "Foundation"))]
47 ProfileChanged: usize,
48 #[cfg(feature = "Foundation")]
49 pub RemoveProfileChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
50 #[cfg(not(feature = "Foundation"))]
51 RemoveProfileChanged: usize,
52}
53#[doc(hidden)]
54#[repr(transparent)]
55pub struct IESim2(::windows::core::IUnknown);
56unsafe impl ::windows::core::Interface for IESim2 {
57 type Vtable = IESim2_Vtbl;
58}
59impl ::core::clone::Clone for IESim2 {
60 fn clone(&self) -> Self {
61 Self(self.0.clone())
62 }
63}
64unsafe impl ::windows::core::ComInterface for IESim2 {
65 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbd4fd0a0_c68f_56eb_b99b_8f34b8100299);
66}
67#[repr(C)]
68#[doc(hidden)]
69pub struct IESim2_Vtbl {
70 pub base__: ::windows::core::IInspectable_Vtbl,
71 pub Discover: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
72 pub DiscoverWithServerAddressAndMatchingId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, serveraddress: ::std::mem::MaybeUninit<::windows::core::HSTRING>, matchingid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
73 #[cfg(feature = "Foundation")]
74 pub DiscoverAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
75 #[cfg(not(feature = "Foundation"))]
76 DiscoverAsync: usize,
77 #[cfg(feature = "Foundation")]
78 pub DiscoverWithServerAddressAndMatchingIdAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, serveraddress: ::std::mem::MaybeUninit<::windows::core::HSTRING>, matchingid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
79 #[cfg(not(feature = "Foundation"))]
80 DiscoverWithServerAddressAndMatchingIdAsync: usize,
81}
82#[doc(hidden)]
83#[repr(transparent)]
84pub struct IESim3(::windows::core::IUnknown);
85unsafe impl ::windows::core::Interface for IESim3 {
86 type Vtable = IESim3_Vtbl;
87}
88impl ::core::clone::Clone for IESim3 {
89 fn clone(&self) -> Self {
90 Self(self.0.clone())
91 }
92}
93unsafe impl ::windows::core::ComInterface for IESim3 {
94 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfe1edf45_01b8_5d31_b8d3_d9cbebb2b831);
95}
96#[repr(C)]
97#[doc(hidden)]
98pub struct IESim3_Vtbl {
99 pub base__: ::windows::core::IInspectable_Vtbl,
100 #[cfg(feature = "Foundation")]
101 pub SlotIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
102 #[cfg(not(feature = "Foundation"))]
103 SlotIndex: usize,
104}
105#[doc(hidden)]
106#[repr(transparent)]
107pub struct IESimAddedEventArgs(::windows::core::IUnknown);
108unsafe impl ::windows::core::Interface for IESimAddedEventArgs {
109 type Vtable = IESimAddedEventArgs_Vtbl;
110}
111impl ::core::clone::Clone for IESimAddedEventArgs {
112 fn clone(&self) -> Self {
113 Self(self.0.clone())
114 }
115}
116unsafe impl ::windows::core::ComInterface for IESimAddedEventArgs {
117 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x38bd0a58_4d5a_4d08_8da7_e73eff369ddd);
118}
119#[repr(C)]
120#[doc(hidden)]
121pub struct IESimAddedEventArgs_Vtbl {
122 pub base__: ::windows::core::IInspectable_Vtbl,
123 pub ESim: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
124}
125#[doc(hidden)]
126#[repr(transparent)]
127pub struct IESimDiscoverEvent(::windows::core::IUnknown);
128unsafe impl ::windows::core::Interface for IESimDiscoverEvent {
129 type Vtable = IESimDiscoverEvent_Vtbl;
130}
131impl ::core::clone::Clone for IESimDiscoverEvent {
132 fn clone(&self) -> Self {
133 Self(self.0.clone())
134 }
135}
136unsafe impl ::windows::core::ComInterface for IESimDiscoverEvent {
137 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe59ac3e3_39bc_5f6f_9321_0d4a182d261b);
138}
139#[repr(C)]
140#[doc(hidden)]
141pub struct IESimDiscoverEvent_Vtbl {
142 pub base__: ::windows::core::IInspectable_Vtbl,
143 pub MatchingId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
144 pub RspServerAddress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
145}
146#[doc(hidden)]
147#[repr(transparent)]
148pub struct IESimDiscoverResult(::windows::core::IUnknown);
149unsafe impl ::windows::core::Interface for IESimDiscoverResult {
150 type Vtable = IESimDiscoverResult_Vtbl;
151}
152impl ::core::clone::Clone for IESimDiscoverResult {
153 fn clone(&self) -> Self {
154 Self(self.0.clone())
155 }
156}
157unsafe impl ::windows::core::ComInterface for IESimDiscoverResult {
158 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x56b4bb5e_ab2f_5ac6_b359_dd5a8e237926);
159}
160#[repr(C)]
161#[doc(hidden)]
162pub struct IESimDiscoverResult_Vtbl {
163 pub base__: ::windows::core::IInspectable_Vtbl,
164 #[cfg(feature = "Foundation_Collections")]
165 pub Events: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
166 #[cfg(not(feature = "Foundation_Collections"))]
167 Events: usize,
168 pub Kind: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ESimDiscoverResultKind) -> ::windows::core::HRESULT,
169 pub ProfileMetadata: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
170 pub Result: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
171}
172#[doc(hidden)]
173#[repr(transparent)]
174pub struct IESimDownloadProfileMetadataResult(::windows::core::IUnknown);
175unsafe impl ::windows::core::Interface for IESimDownloadProfileMetadataResult {
176 type Vtable = IESimDownloadProfileMetadataResult_Vtbl;
177}
178impl ::core::clone::Clone for IESimDownloadProfileMetadataResult {
179 fn clone(&self) -> Self {
180 Self(self.0.clone())
181 }
182}
183unsafe impl ::windows::core::ComInterface for IESimDownloadProfileMetadataResult {
184 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4234d9e_5ad6_426d_8d00_4434f449afec);
185}
186#[repr(C)]
187#[doc(hidden)]
188pub struct IESimDownloadProfileMetadataResult_Vtbl {
189 pub base__: ::windows::core::IInspectable_Vtbl,
190 pub Result: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
191 pub ProfileMetadata: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
192}
193#[doc(hidden)]
194#[repr(transparent)]
195pub struct IESimManagerStatics(::windows::core::IUnknown);
196unsafe impl ::windows::core::Interface for IESimManagerStatics {
197 type Vtable = IESimManagerStatics_Vtbl;
198}
199impl ::core::clone::Clone for IESimManagerStatics {
200 fn clone(&self) -> Self {
201 Self(self.0.clone())
202 }
203}
204unsafe impl ::windows::core::ComInterface for IESimManagerStatics {
205 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0bfa2c0c_df88_4631_bf04_c12e281b3962);
206}
207#[repr(C)]
208#[doc(hidden)]
209pub struct IESimManagerStatics_Vtbl {
210 pub base__: ::windows::core::IInspectable_Vtbl,
211 pub ServiceInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
212 pub TryCreateESimWatcher: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
213 #[cfg(feature = "Foundation")]
214 pub ServiceInfoChanged: 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,
215 #[cfg(not(feature = "Foundation"))]
216 ServiceInfoChanged: usize,
217 #[cfg(feature = "Foundation")]
218 pub RemoveServiceInfoChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
219 #[cfg(not(feature = "Foundation"))]
220 RemoveServiceInfoChanged: usize,
221}
222#[doc(hidden)]
223#[repr(transparent)]
224pub struct IESimOperationResult(::windows::core::IUnknown);
225unsafe impl ::windows::core::Interface for IESimOperationResult {
226 type Vtable = IESimOperationResult_Vtbl;
227}
228impl ::core::clone::Clone for IESimOperationResult {
229 fn clone(&self) -> Self {
230 Self(self.0.clone())
231 }
232}
233unsafe impl ::windows::core::ComInterface for IESimOperationResult {
234 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa67b63b1_309b_4e77_9e7e_cd93f1ddc7b9);
235}
236#[repr(C)]
237#[doc(hidden)]
238pub struct IESimOperationResult_Vtbl {
239 pub base__: ::windows::core::IInspectable_Vtbl,
240 pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ESimOperationStatus) -> ::windows::core::HRESULT,
241}
242#[doc(hidden)]
243#[repr(transparent)]
244pub struct IESimPolicy(::windows::core::IUnknown);
245unsafe impl ::windows::core::Interface for IESimPolicy {
246 type Vtable = IESimPolicy_Vtbl;
247}
248impl ::core::clone::Clone for IESimPolicy {
249 fn clone(&self) -> Self {
250 Self(self.0.clone())
251 }
252}
253unsafe impl ::windows::core::ComInterface for IESimPolicy {
254 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x41e1b99d_cf7e_4315_882b_6f1e74b0d38f);
255}
256#[repr(C)]
257#[doc(hidden)]
258pub struct IESimPolicy_Vtbl {
259 pub base__: ::windows::core::IInspectable_Vtbl,
260 pub ShouldEnableManagingUi: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
261}
262#[doc(hidden)]
263#[repr(transparent)]
264pub struct IESimProfile(::windows::core::IUnknown);
265unsafe impl ::windows::core::Interface for IESimProfile {
266 type Vtable = IESimProfile_Vtbl;
267}
268impl ::core::clone::Clone for IESimProfile {
269 fn clone(&self) -> Self {
270 Self(self.0.clone())
271 }
272}
273unsafe impl ::windows::core::ComInterface for IESimProfile {
274 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xee1e7880_06a9_4027_b4f8_ddb23d7810e0);
275}
276#[repr(C)]
277#[doc(hidden)]
278pub struct IESimProfile_Vtbl {
279 pub base__: ::windows::core::IInspectable_Vtbl,
280 pub Class: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ESimProfileClass) -> ::windows::core::HRESULT,
281 pub Nickname: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
282 pub Policy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
283 pub Id: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
284 #[cfg(feature = "Storage_Streams")]
285 pub ProviderIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
286 #[cfg(not(feature = "Storage_Streams"))]
287 ProviderIcon: usize,
288 pub ProviderId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
289 pub ProviderName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
290 pub State: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ESimProfileState) -> ::windows::core::HRESULT,
291 #[cfg(feature = "Foundation")]
292 pub DisableAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
293 #[cfg(not(feature = "Foundation"))]
294 DisableAsync: usize,
295 #[cfg(feature = "Foundation")]
296 pub EnableAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
297 #[cfg(not(feature = "Foundation"))]
298 EnableAsync: usize,
299 #[cfg(feature = "Foundation")]
300 pub SetNicknameAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newnickname: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
301 #[cfg(not(feature = "Foundation"))]
302 SetNicknameAsync: usize,
303}
304#[doc(hidden)]
305#[repr(transparent)]
306pub struct IESimProfileMetadata(::windows::core::IUnknown);
307unsafe impl ::windows::core::Interface for IESimProfileMetadata {
308 type Vtable = IESimProfileMetadata_Vtbl;
309}
310impl ::core::clone::Clone for IESimProfileMetadata {
311 fn clone(&self) -> Self {
312 Self(self.0.clone())
313 }
314}
315unsafe impl ::windows::core::ComInterface for IESimProfileMetadata {
316 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xed25831f_90db_498d_a7b4_ebce807d3c23);
317}
318#[repr(C)]
319#[doc(hidden)]
320pub struct IESimProfileMetadata_Vtbl {
321 pub base__: ::windows::core::IInspectable_Vtbl,
322 pub IsConfirmationCodeRequired: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
323 pub Policy: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
324 pub Id: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
325 #[cfg(feature = "Storage_Streams")]
326 pub ProviderIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
327 #[cfg(not(feature = "Storage_Streams"))]
328 ProviderIcon: usize,
329 pub ProviderId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
330 pub ProviderName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
331 pub State: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ESimProfileMetadataState) -> ::windows::core::HRESULT,
332 #[cfg(feature = "Foundation")]
333 pub DenyInstallAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
334 #[cfg(not(feature = "Foundation"))]
335 DenyInstallAsync: usize,
336 #[cfg(feature = "Foundation")]
337 pub ConfirmInstallAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
338 #[cfg(not(feature = "Foundation"))]
339 ConfirmInstallAsync: usize,
340 #[cfg(feature = "Foundation")]
341 pub ConfirmInstallWithConfirmationCodeAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, confirmationcode: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
342 #[cfg(not(feature = "Foundation"))]
343 ConfirmInstallWithConfirmationCodeAsync: usize,
344 #[cfg(feature = "Foundation")]
345 pub PostponeInstallAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
346 #[cfg(not(feature = "Foundation"))]
347 PostponeInstallAsync: usize,
348 #[cfg(feature = "Foundation")]
349 pub StateChanged: 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,
350 #[cfg(not(feature = "Foundation"))]
351 StateChanged: usize,
352 #[cfg(feature = "Foundation")]
353 pub RemoveStateChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
354 #[cfg(not(feature = "Foundation"))]
355 RemoveStateChanged: usize,
356}
357#[doc(hidden)]
358#[repr(transparent)]
359pub struct IESimProfilePolicy(::windows::core::IUnknown);
360unsafe impl ::windows::core::Interface for IESimProfilePolicy {
361 type Vtable = IESimProfilePolicy_Vtbl;
362}
363impl ::core::clone::Clone for IESimProfilePolicy {
364 fn clone(&self) -> Self {
365 Self(self.0.clone())
366 }
367}
368unsafe impl ::windows::core::ComInterface for IESimProfilePolicy {
369 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe6dd0f1d_9c5c_46c5_a289_a948999bf062);
370}
371#[repr(C)]
372#[doc(hidden)]
373pub struct IESimProfilePolicy_Vtbl {
374 pub base__: ::windows::core::IInspectable_Vtbl,
375 pub CanDelete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
376 pub CanDisable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
377 pub IsManagedByEnterprise: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
378}
379#[doc(hidden)]
380#[repr(transparent)]
381pub struct IESimRemovedEventArgs(::windows::core::IUnknown);
382unsafe impl ::windows::core::Interface for IESimRemovedEventArgs {
383 type Vtable = IESimRemovedEventArgs_Vtbl;
384}
385impl ::core::clone::Clone for IESimRemovedEventArgs {
386 fn clone(&self) -> Self {
387 Self(self.0.clone())
388 }
389}
390unsafe impl ::windows::core::ComInterface for IESimRemovedEventArgs {
391 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdec5277b_2fd9_4ed9_8376_d9b5e41278a3);
392}
393#[repr(C)]
394#[doc(hidden)]
395pub struct IESimRemovedEventArgs_Vtbl {
396 pub base__: ::windows::core::IInspectable_Vtbl,
397 pub ESim: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
398}
399#[doc(hidden)]
400#[repr(transparent)]
401pub struct IESimServiceInfo(::windows::core::IUnknown);
402unsafe impl ::windows::core::Interface for IESimServiceInfo {
403 type Vtable = IESimServiceInfo_Vtbl;
404}
405impl ::core::clone::Clone for IESimServiceInfo {
406 fn clone(&self) -> Self {
407 Self(self.0.clone())
408 }
409}
410unsafe impl ::windows::core::ComInterface for IESimServiceInfo {
411 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf16aabcf_7f59_4a51_8494_bd89d5ff50ee);
412}
413#[repr(C)]
414#[doc(hidden)]
415pub struct IESimServiceInfo_Vtbl {
416 pub base__: ::windows::core::IInspectable_Vtbl,
417 pub AuthenticationPreference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ESimAuthenticationPreference) -> ::windows::core::HRESULT,
418 pub IsESimUiEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
419}
420#[doc(hidden)]
421#[repr(transparent)]
422pub struct IESimUpdatedEventArgs(::windows::core::IUnknown);
423unsafe impl ::windows::core::Interface for IESimUpdatedEventArgs {
424 type Vtable = IESimUpdatedEventArgs_Vtbl;
425}
426impl ::core::clone::Clone for IESimUpdatedEventArgs {
427 fn clone(&self) -> Self {
428 Self(self.0.clone())
429 }
430}
431unsafe impl ::windows::core::ComInterface for IESimUpdatedEventArgs {
432 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4c125cec_508d_4b88_83cb_68bef8168d12);
433}
434#[repr(C)]
435#[doc(hidden)]
436pub struct IESimUpdatedEventArgs_Vtbl {
437 pub base__: ::windows::core::IInspectable_Vtbl,
438 pub ESim: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
439}
440#[doc(hidden)]
441#[repr(transparent)]
442pub struct IESimWatcher(::windows::core::IUnknown);
443unsafe impl ::windows::core::Interface for IESimWatcher {
444 type Vtable = IESimWatcher_Vtbl;
445}
446impl ::core::clone::Clone for IESimWatcher {
447 fn clone(&self) -> Self {
448 Self(self.0.clone())
449 }
450}
451unsafe impl ::windows::core::ComInterface for IESimWatcher {
452 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc1f84ceb_a28d_4fbf_9771_6e31b81ccf22);
453}
454#[repr(C)]
455#[doc(hidden)]
456pub struct IESimWatcher_Vtbl {
457 pub base__: ::windows::core::IInspectable_Vtbl,
458 pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ESimWatcherStatus) -> ::windows::core::HRESULT,
459 pub Start: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
460 pub Stop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
461 #[cfg(feature = "Foundation")]
462 pub Added: 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,
463 #[cfg(not(feature = "Foundation"))]
464 Added: usize,
465 #[cfg(feature = "Foundation")]
466 pub RemoveAdded: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
467 #[cfg(not(feature = "Foundation"))]
468 RemoveAdded: usize,
469 #[cfg(feature = "Foundation")]
470 pub EnumerationCompleted: 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,
471 #[cfg(not(feature = "Foundation"))]
472 EnumerationCompleted: usize,
473 #[cfg(feature = "Foundation")]
474 pub RemoveEnumerationCompleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
475 #[cfg(not(feature = "Foundation"))]
476 RemoveEnumerationCompleted: usize,
477 #[cfg(feature = "Foundation")]
478 pub Removed: 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,
479 #[cfg(not(feature = "Foundation"))]
480 Removed: usize,
481 #[cfg(feature = "Foundation")]
482 pub RemoveRemoved: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
483 #[cfg(not(feature = "Foundation"))]
484 RemoveRemoved: usize,
485 #[cfg(feature = "Foundation")]
486 pub Stopped: 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,
487 #[cfg(not(feature = "Foundation"))]
488 Stopped: usize,
489 #[cfg(feature = "Foundation")]
490 pub RemoveStopped: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
491 #[cfg(not(feature = "Foundation"))]
492 RemoveStopped: usize,
493 #[cfg(feature = "Foundation")]
494 pub Updated: 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,
495 #[cfg(not(feature = "Foundation"))]
496 Updated: usize,
497 #[cfg(feature = "Foundation")]
498 pub RemoveUpdated: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
499 #[cfg(not(feature = "Foundation"))]
500 RemoveUpdated: usize,
501}
502#[doc(hidden)]
503#[repr(transparent)]
504pub struct IFdnAccessManagerStatics(::windows::core::IUnknown);
505unsafe impl ::windows::core::Interface for IFdnAccessManagerStatics {
506 type Vtable = IFdnAccessManagerStatics_Vtbl;
507}
508impl ::core::clone::Clone for IFdnAccessManagerStatics {
509 fn clone(&self) -> Self {
510 Self(self.0.clone())
511 }
512}
513unsafe impl ::windows::core::ComInterface for IFdnAccessManagerStatics {
514 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf2aa4395_f1e6_4319_aa3e_477ca64b2bdf);
515}
516#[repr(C)]
517#[doc(hidden)]
518pub struct IFdnAccessManagerStatics_Vtbl {
519 pub base__: ::windows::core::IInspectable_Vtbl,
520 #[cfg(feature = "Foundation")]
521 pub RequestUnlockAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, contactlistid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
522 #[cfg(not(feature = "Foundation"))]
523 RequestUnlockAsync: usize,
524}
525#[doc(hidden)]
526#[repr(transparent)]
527pub struct IHotspotAuthenticationContext(::windows::core::IUnknown);
528unsafe impl ::windows::core::Interface for IHotspotAuthenticationContext {
529 type Vtable = IHotspotAuthenticationContext_Vtbl;
530}
531impl ::core::clone::Clone for IHotspotAuthenticationContext {
532 fn clone(&self) -> Self {
533 Self(self.0.clone())
534 }
535}
536unsafe impl ::windows::core::ComInterface for IHotspotAuthenticationContext {
537 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe756c791_1003_4de5_83c7_de61d88831d0);
538}
539#[repr(C)]
540#[doc(hidden)]
541pub struct IHotspotAuthenticationContext_Vtbl {
542 pub base__: ::windows::core::IInspectable_Vtbl,
543 pub WirelessNetworkId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result_size__: *mut u32, result__: *mut *mut u8) -> ::windows::core::HRESULT,
544 #[cfg(feature = "Networking_Connectivity")]
545 pub NetworkAdapter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
546 #[cfg(not(feature = "Networking_Connectivity"))]
547 NetworkAdapter: usize,
548 #[cfg(feature = "Foundation")]
549 pub RedirectMessageUrl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
550 #[cfg(not(feature = "Foundation"))]
551 RedirectMessageUrl: usize,
552 #[cfg(feature = "Data_Xml_Dom")]
553 pub RedirectMessageXml: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
554 #[cfg(not(feature = "Data_Xml_Dom"))]
555 RedirectMessageXml: usize,
556 #[cfg(feature = "Foundation")]
557 pub AuthenticationUrl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
558 #[cfg(not(feature = "Foundation"))]
559 AuthenticationUrl: usize,
560 pub IssueCredentials: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, username: ::std::mem::MaybeUninit<::windows::core::HSTRING>, password: ::std::mem::MaybeUninit<::windows::core::HSTRING>, extraparameters: ::std::mem::MaybeUninit<::windows::core::HSTRING>, markasmanualconnectonfailure: bool) -> ::windows::core::HRESULT,
561 pub AbortAuthentication: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, markasmanual: bool) -> ::windows::core::HRESULT,
562 pub SkipAuthentication: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
563 pub TriggerAttentionRequired: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packagerelativeapplicationid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, applicationparameters: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
564}
565#[doc(hidden)]
566#[repr(transparent)]
567pub struct IHotspotAuthenticationContext2(::windows::core::IUnknown);
568unsafe impl ::windows::core::Interface for IHotspotAuthenticationContext2 {
569 type Vtable = IHotspotAuthenticationContext2_Vtbl;
570}
571impl ::core::clone::Clone for IHotspotAuthenticationContext2 {
572 fn clone(&self) -> Self {
573 Self(self.0.clone())
574 }
575}
576unsafe impl ::windows::core::ComInterface for IHotspotAuthenticationContext2 {
577 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe756c791_1004_4de5_83c7_de61d88831d0);
578}
579#[repr(C)]
580#[doc(hidden)]
581pub struct IHotspotAuthenticationContext2_Vtbl {
582 pub base__: ::windows::core::IInspectable_Vtbl,
583 #[cfg(feature = "Foundation")]
584 pub IssueCredentialsAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, username: ::std::mem::MaybeUninit<::windows::core::HSTRING>, password: ::std::mem::MaybeUninit<::windows::core::HSTRING>, extraparameters: ::std::mem::MaybeUninit<::windows::core::HSTRING>, markasmanualconnectonfailure: bool, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
585 #[cfg(not(feature = "Foundation"))]
586 IssueCredentialsAsync: usize,
587}
588#[doc(hidden)]
589#[repr(transparent)]
590pub struct IHotspotAuthenticationContextStatics(::windows::core::IUnknown);
591unsafe impl ::windows::core::Interface for IHotspotAuthenticationContextStatics {
592 type Vtable = IHotspotAuthenticationContextStatics_Vtbl;
593}
594impl ::core::clone::Clone for IHotspotAuthenticationContextStatics {
595 fn clone(&self) -> Self {
596 Self(self.0.clone())
597 }
598}
599unsafe impl ::windows::core::ComInterface for IHotspotAuthenticationContextStatics {
600 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe756c791_1002_4de5_83c7_de61d88831d0);
601}
602#[repr(C)]
603#[doc(hidden)]
604pub struct IHotspotAuthenticationContextStatics_Vtbl {
605 pub base__: ::windows::core::IInspectable_Vtbl,
606 pub TryGetAuthenticationContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, eventoken: ::std::mem::MaybeUninit<::windows::core::HSTRING>, context: *mut *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
607}
608#[doc(hidden)]
609#[repr(transparent)]
610pub struct IHotspotAuthenticationEventDetails(::windows::core::IUnknown);
611unsafe impl ::windows::core::Interface for IHotspotAuthenticationEventDetails {
612 type Vtable = IHotspotAuthenticationEventDetails_Vtbl;
613}
614impl ::core::clone::Clone for IHotspotAuthenticationEventDetails {
615 fn clone(&self) -> Self {
616 Self(self.0.clone())
617 }
618}
619unsafe impl ::windows::core::ComInterface for IHotspotAuthenticationEventDetails {
620 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe756c791_1001_4de5_83c7_de61d88831d0);
621}
622#[repr(C)]
623#[doc(hidden)]
624pub struct IHotspotAuthenticationEventDetails_Vtbl {
625 pub base__: ::windows::core::IInspectable_Vtbl,
626 pub EventToken: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
627}
628#[doc(hidden)]
629#[repr(transparent)]
630pub struct IHotspotCredentialsAuthenticationResult(::windows::core::IUnknown);
631unsafe impl ::windows::core::Interface for IHotspotCredentialsAuthenticationResult {
632 type Vtable = IHotspotCredentialsAuthenticationResult_Vtbl;
633}
634impl ::core::clone::Clone for IHotspotCredentialsAuthenticationResult {
635 fn clone(&self) -> Self {
636 Self(self.0.clone())
637 }
638}
639unsafe impl ::windows::core::ComInterface for IHotspotCredentialsAuthenticationResult {
640 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe756c791_1005_4de5_83c7_de61d88831d0);
641}
642#[repr(C)]
643#[doc(hidden)]
644pub struct IHotspotCredentialsAuthenticationResult_Vtbl {
645 pub base__: ::windows::core::IInspectable_Vtbl,
646 pub HasNetworkErrorOccurred: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
647 pub ResponseCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut HotspotAuthenticationResponseCode) -> ::windows::core::HRESULT,
648 #[cfg(feature = "Foundation")]
649 pub LogoffUrl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
650 #[cfg(not(feature = "Foundation"))]
651 LogoffUrl: usize,
652 #[cfg(feature = "Data_Xml_Dom")]
653 pub AuthenticationReplyXml: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
654 #[cfg(not(feature = "Data_Xml_Dom"))]
655 AuthenticationReplyXml: usize,
656}
657#[doc(hidden)]
658#[repr(transparent)]
659pub struct IKnownCSimFilePathsStatics(::windows::core::IUnknown);
660unsafe impl ::windows::core::Interface for IKnownCSimFilePathsStatics {
661 type Vtable = IKnownCSimFilePathsStatics_Vtbl;
662}
663impl ::core::clone::Clone for IKnownCSimFilePathsStatics {
664 fn clone(&self) -> Self {
665 Self(self.0.clone())
666 }
667}
668unsafe impl ::windows::core::ComInterface for IKnownCSimFilePathsStatics {
669 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb458aeed_49f1_4c22_b073_96d511bf9c35);
670}
671#[repr(C)]
672#[doc(hidden)]
673pub struct IKnownCSimFilePathsStatics_Vtbl {
674 pub base__: ::windows::core::IInspectable_Vtbl,
675 #[cfg(feature = "Foundation_Collections")]
676 pub EFSpn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
677 #[cfg(not(feature = "Foundation_Collections"))]
678 EFSpn: usize,
679 #[cfg(feature = "Foundation_Collections")]
680 pub Gid1: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
681 #[cfg(not(feature = "Foundation_Collections"))]
682 Gid1: usize,
683 #[cfg(feature = "Foundation_Collections")]
684 pub Gid2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
685 #[cfg(not(feature = "Foundation_Collections"))]
686 Gid2: usize,
687}
688#[doc(hidden)]
689#[repr(transparent)]
690pub struct IKnownRuimFilePathsStatics(::windows::core::IUnknown);
691unsafe impl ::windows::core::Interface for IKnownRuimFilePathsStatics {
692 type Vtable = IKnownRuimFilePathsStatics_Vtbl;
693}
694impl ::core::clone::Clone for IKnownRuimFilePathsStatics {
695 fn clone(&self) -> Self {
696 Self(self.0.clone())
697 }
698}
699unsafe impl ::windows::core::ComInterface for IKnownRuimFilePathsStatics {
700 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3883c8b9_ff24_4571_a867_09f960426e14);
701}
702#[repr(C)]
703#[doc(hidden)]
704pub struct IKnownRuimFilePathsStatics_Vtbl {
705 pub base__: ::windows::core::IInspectable_Vtbl,
706 #[cfg(feature = "Foundation_Collections")]
707 pub EFSpn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
708 #[cfg(not(feature = "Foundation_Collections"))]
709 EFSpn: usize,
710 #[cfg(feature = "Foundation_Collections")]
711 pub Gid1: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
712 #[cfg(not(feature = "Foundation_Collections"))]
713 Gid1: usize,
714 #[cfg(feature = "Foundation_Collections")]
715 pub Gid2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
716 #[cfg(not(feature = "Foundation_Collections"))]
717 Gid2: usize,
718}
719#[doc(hidden)]
720#[repr(transparent)]
721pub struct IKnownSimFilePathsStatics(::windows::core::IUnknown);
722unsafe impl ::windows::core::Interface for IKnownSimFilePathsStatics {
723 type Vtable = IKnownSimFilePathsStatics_Vtbl;
724}
725impl ::core::clone::Clone for IKnownSimFilePathsStatics {
726 fn clone(&self) -> Self {
727 Self(self.0.clone())
728 }
729}
730unsafe impl ::windows::core::ComInterface for IKnownSimFilePathsStatics {
731 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x80cd1a63_37a5_43d3_80a3_ccd23e8fecee);
732}
733#[repr(C)]
734#[doc(hidden)]
735pub struct IKnownSimFilePathsStatics_Vtbl {
736 pub base__: ::windows::core::IInspectable_Vtbl,
737 #[cfg(feature = "Foundation_Collections")]
738 pub EFOns: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
739 #[cfg(not(feature = "Foundation_Collections"))]
740 EFOns: usize,
741 #[cfg(feature = "Foundation_Collections")]
742 pub EFSpn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
743 #[cfg(not(feature = "Foundation_Collections"))]
744 EFSpn: usize,
745 #[cfg(feature = "Foundation_Collections")]
746 pub Gid1: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
747 #[cfg(not(feature = "Foundation_Collections"))]
748 Gid1: usize,
749 #[cfg(feature = "Foundation_Collections")]
750 pub Gid2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
751 #[cfg(not(feature = "Foundation_Collections"))]
752 Gid2: usize,
753}
754#[doc(hidden)]
755#[repr(transparent)]
756pub struct IKnownUSimFilePathsStatics(::windows::core::IUnknown);
757unsafe impl ::windows::core::Interface for IKnownUSimFilePathsStatics {
758 type Vtable = IKnownUSimFilePathsStatics_Vtbl;
759}
760impl ::core::clone::Clone for IKnownUSimFilePathsStatics {
761 fn clone(&self) -> Self {
762 Self(self.0.clone())
763 }
764}
765unsafe impl ::windows::core::ComInterface for IKnownUSimFilePathsStatics {
766 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7c34e581_1f1b_43f4_9530_8b092d32d71f);
767}
768#[repr(C)]
769#[doc(hidden)]
770pub struct IKnownUSimFilePathsStatics_Vtbl {
771 pub base__: ::windows::core::IInspectable_Vtbl,
772 #[cfg(feature = "Foundation_Collections")]
773 pub EFSpn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
774 #[cfg(not(feature = "Foundation_Collections"))]
775 EFSpn: usize,
776 #[cfg(feature = "Foundation_Collections")]
777 pub EFOpl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
778 #[cfg(not(feature = "Foundation_Collections"))]
779 EFOpl: usize,
780 #[cfg(feature = "Foundation_Collections")]
781 pub EFPnn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
782 #[cfg(not(feature = "Foundation_Collections"))]
783 EFPnn: usize,
784 #[cfg(feature = "Foundation_Collections")]
785 pub Gid1: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
786 #[cfg(not(feature = "Foundation_Collections"))]
787 Gid1: usize,
788 #[cfg(feature = "Foundation_Collections")]
789 pub Gid2: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
790 #[cfg(not(feature = "Foundation_Collections"))]
791 Gid2: usize,
792}
793#[doc(hidden)]
794#[repr(transparent)]
795pub struct IMobileBroadbandAccount(::windows::core::IUnknown);
796unsafe impl ::windows::core::Interface for IMobileBroadbandAccount {
797 type Vtable = IMobileBroadbandAccount_Vtbl;
798}
799impl ::core::clone::Clone for IMobileBroadbandAccount {
800 fn clone(&self) -> Self {
801 Self(self.0.clone())
802 }
803}
804unsafe impl ::windows::core::ComInterface for IMobileBroadbandAccount {
805 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36c24ccd_cee2_43e0_a603_ee86a36d6570);
806}
807#[repr(C)]
808#[doc(hidden)]
809pub struct IMobileBroadbandAccount_Vtbl {
810 pub base__: ::windows::core::IInspectable_Vtbl,
811 pub NetworkAccountId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
812 pub ServiceProviderGuid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
813 pub ServiceProviderName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
814 pub CurrentNetwork: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
815 pub CurrentDeviceInformation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
816}
817#[doc(hidden)]
818#[repr(transparent)]
819pub struct IMobileBroadbandAccount2(::windows::core::IUnknown);
820unsafe impl ::windows::core::Interface for IMobileBroadbandAccount2 {
821 type Vtable = IMobileBroadbandAccount2_Vtbl;
822}
823impl ::core::clone::Clone for IMobileBroadbandAccount2 {
824 fn clone(&self) -> Self {
825 Self(self.0.clone())
826 }
827}
828unsafe impl ::windows::core::ComInterface for IMobileBroadbandAccount2 {
829 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x38f52f1c_1136_4257_959f_b658a352b6d4);
830}
831#[repr(C)]
832#[doc(hidden)]
833pub struct IMobileBroadbandAccount2_Vtbl {
834 pub base__: ::windows::core::IInspectable_Vtbl,
835 #[cfg(all(feature = "Foundation_Collections", feature = "Networking_Connectivity"))]
836 pub GetConnectionProfiles: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
837 #[cfg(not(all(feature = "Foundation_Collections", feature = "Networking_Connectivity")))]
838 GetConnectionProfiles: usize,
839}
840#[doc(hidden)]
841#[repr(transparent)]
842pub struct IMobileBroadbandAccount3(::windows::core::IUnknown);
843unsafe impl ::windows::core::Interface for IMobileBroadbandAccount3 {
844 type Vtable = IMobileBroadbandAccount3_Vtbl;
845}
846impl ::core::clone::Clone for IMobileBroadbandAccount3 {
847 fn clone(&self) -> Self {
848 Self(self.0.clone())
849 }
850}
851unsafe impl ::windows::core::ComInterface for IMobileBroadbandAccount3 {
852 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x092a1e21_9379_4b9b_ad31_d5fee2f748c6);
853}
854#[repr(C)]
855#[doc(hidden)]
856pub struct IMobileBroadbandAccount3_Vtbl {
857 pub base__: ::windows::core::IInspectable_Vtbl,
858 #[cfg(feature = "Foundation")]
859 pub AccountExperienceUrl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
860 #[cfg(not(feature = "Foundation"))]
861 AccountExperienceUrl: usize,
862}
863#[doc(hidden)]
864#[repr(transparent)]
865pub struct IMobileBroadbandAccountEventArgs(::windows::core::IUnknown);
866unsafe impl ::windows::core::Interface for IMobileBroadbandAccountEventArgs {
867 type Vtable = IMobileBroadbandAccountEventArgs_Vtbl;
868}
869impl ::core::clone::Clone for IMobileBroadbandAccountEventArgs {
870 fn clone(&self) -> Self {
871 Self(self.0.clone())
872 }
873}
874unsafe impl ::windows::core::ComInterface for IMobileBroadbandAccountEventArgs {
875 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3853c880_77de_4c04_bead_a123b08c9f59);
876}
877#[repr(C)]
878#[doc(hidden)]
879pub struct IMobileBroadbandAccountEventArgs_Vtbl {
880 pub base__: ::windows::core::IInspectable_Vtbl,
881 pub NetworkAccountId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
882}
883#[doc(hidden)]
884#[repr(transparent)]
885pub struct IMobileBroadbandAccountStatics(::windows::core::IUnknown);
886unsafe impl ::windows::core::Interface for IMobileBroadbandAccountStatics {
887 type Vtable = IMobileBroadbandAccountStatics_Vtbl;
888}
889impl ::core::clone::Clone for IMobileBroadbandAccountStatics {
890 fn clone(&self) -> Self {
891 Self(self.0.clone())
892 }
893}
894unsafe impl ::windows::core::ComInterface for IMobileBroadbandAccountStatics {
895 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaa7f4d24_afc1_4fc8_ae9a_a9175310faad);
896}
897#[repr(C)]
898#[doc(hidden)]
899pub struct IMobileBroadbandAccountStatics_Vtbl {
900 pub base__: ::windows::core::IInspectable_Vtbl,
901 #[cfg(feature = "Foundation_Collections")]
902 pub AvailableNetworkAccountIds: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
903 #[cfg(not(feature = "Foundation_Collections"))]
904 AvailableNetworkAccountIds: usize,
905 pub CreateFromNetworkAccountId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, networkaccountid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
906}
907#[doc(hidden)]
908#[repr(transparent)]
909pub struct IMobileBroadbandAccountUpdatedEventArgs(::windows::core::IUnknown);
910unsafe impl ::windows::core::Interface for IMobileBroadbandAccountUpdatedEventArgs {
911 type Vtable = IMobileBroadbandAccountUpdatedEventArgs_Vtbl;
912}
913impl ::core::clone::Clone for IMobileBroadbandAccountUpdatedEventArgs {
914 fn clone(&self) -> Self {
915 Self(self.0.clone())
916 }
917}
918unsafe impl ::windows::core::ComInterface for IMobileBroadbandAccountUpdatedEventArgs {
919 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7bc31d88_a6bd_49e1_80ab_6b91354a57d4);
920}
921#[repr(C)]
922#[doc(hidden)]
923pub struct IMobileBroadbandAccountUpdatedEventArgs_Vtbl {
924 pub base__: ::windows::core::IInspectable_Vtbl,
925 pub NetworkAccountId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
926 pub HasDeviceInformationChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
927 pub HasNetworkChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
928}
929#[doc(hidden)]
930#[repr(transparent)]
931pub struct IMobileBroadbandAccountWatcher(::windows::core::IUnknown);
932unsafe impl ::windows::core::Interface for IMobileBroadbandAccountWatcher {
933 type Vtable = IMobileBroadbandAccountWatcher_Vtbl;
934}
935impl ::core::clone::Clone for IMobileBroadbandAccountWatcher {
936 fn clone(&self) -> Self {
937 Self(self.0.clone())
938 }
939}
940unsafe impl ::windows::core::ComInterface for IMobileBroadbandAccountWatcher {
941 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6bf3335e_23b5_449f_928d_5e0d3e04471d);
942}
943#[repr(C)]
944#[doc(hidden)]
945pub struct IMobileBroadbandAccountWatcher_Vtbl {
946 pub base__: ::windows::core::IInspectable_Vtbl,
947 #[cfg(feature = "Foundation")]
948 pub AccountAdded: 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,
949 #[cfg(not(feature = "Foundation"))]
950 AccountAdded: usize,
951 #[cfg(feature = "Foundation")]
952 pub RemoveAccountAdded: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
953 #[cfg(not(feature = "Foundation"))]
954 RemoveAccountAdded: usize,
955 #[cfg(feature = "Foundation")]
956 pub AccountUpdated: 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,
957 #[cfg(not(feature = "Foundation"))]
958 AccountUpdated: usize,
959 #[cfg(feature = "Foundation")]
960 pub RemoveAccountUpdated: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
961 #[cfg(not(feature = "Foundation"))]
962 RemoveAccountUpdated: usize,
963 #[cfg(feature = "Foundation")]
964 pub AccountRemoved: 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,
965 #[cfg(not(feature = "Foundation"))]
966 AccountRemoved: usize,
967 #[cfg(feature = "Foundation")]
968 pub RemoveAccountRemoved: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
969 #[cfg(not(feature = "Foundation"))]
970 RemoveAccountRemoved: usize,
971 #[cfg(feature = "Foundation")]
972 pub EnumerationCompleted: 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,
973 #[cfg(not(feature = "Foundation"))]
974 EnumerationCompleted: usize,
975 #[cfg(feature = "Foundation")]
976 pub RemoveEnumerationCompleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
977 #[cfg(not(feature = "Foundation"))]
978 RemoveEnumerationCompleted: usize,
979 #[cfg(feature = "Foundation")]
980 pub Stopped: 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,
981 #[cfg(not(feature = "Foundation"))]
982 Stopped: usize,
983 #[cfg(feature = "Foundation")]
984 pub RemoveStopped: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
985 #[cfg(not(feature = "Foundation"))]
986 RemoveStopped: usize,
987 pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandAccountWatcherStatus) -> ::windows::core::HRESULT,
988 pub Start: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
989 pub Stop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
990}
991#[doc(hidden)]
992#[repr(transparent)]
993pub struct IMobileBroadbandAntennaSar(::windows::core::IUnknown);
994unsafe impl ::windows::core::Interface for IMobileBroadbandAntennaSar {
995 type Vtable = IMobileBroadbandAntennaSar_Vtbl;
996}
997impl ::core::clone::Clone for IMobileBroadbandAntennaSar {
998 fn clone(&self) -> Self {
999 Self(self.0.clone())
1000 }
1001}
1002unsafe impl ::windows::core::ComInterface for IMobileBroadbandAntennaSar {
1003 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb9af4b7e_cbf9_4109_90be_5c06bfd513b6);
1004}
1005#[repr(C)]
1006#[doc(hidden)]
1007pub struct IMobileBroadbandAntennaSar_Vtbl {
1008 pub base__: ::windows::core::IInspectable_Vtbl,
1009 pub AntennaIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut i32) -> ::windows::core::HRESULT,
1010 pub SarBackoffIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut i32) -> ::windows::core::HRESULT,
1011}
1012#[doc(hidden)]
1013#[repr(transparent)]
1014pub struct IMobileBroadbandAntennaSarFactory(::windows::core::IUnknown);
1015unsafe impl ::windows::core::Interface for IMobileBroadbandAntennaSarFactory {
1016 type Vtable = IMobileBroadbandAntennaSarFactory_Vtbl;
1017}
1018impl ::core::clone::Clone for IMobileBroadbandAntennaSarFactory {
1019 fn clone(&self) -> Self {
1020 Self(self.0.clone())
1021 }
1022}
1023unsafe impl ::windows::core::ComInterface for IMobileBroadbandAntennaSarFactory {
1024 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa91e1716_c04d_4a21_8698_1459dc672c6e);
1025}
1026#[repr(C)]
1027#[doc(hidden)]
1028pub struct IMobileBroadbandAntennaSarFactory_Vtbl {
1029 pub base__: ::windows::core::IInspectable_Vtbl,
1030 pub CreateWithIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, antennaindex: i32, sarbackoffindex: i32, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1031}
1032#[doc(hidden)]
1033#[repr(transparent)]
1034pub struct IMobileBroadbandCellCdma(::windows::core::IUnknown);
1035unsafe impl ::windows::core::Interface for IMobileBroadbandCellCdma {
1036 type Vtable = IMobileBroadbandCellCdma_Vtbl;
1037}
1038impl ::core::clone::Clone for IMobileBroadbandCellCdma {
1039 fn clone(&self) -> Self {
1040 Self(self.0.clone())
1041 }
1042}
1043unsafe impl ::windows::core::ComInterface for IMobileBroadbandCellCdma {
1044 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0601b3b4_411a_4f2e_8287_76f5650c60cd);
1045}
1046#[repr(C)]
1047#[doc(hidden)]
1048pub struct IMobileBroadbandCellCdma_Vtbl {
1049 pub base__: ::windows::core::IInspectable_Vtbl,
1050 #[cfg(feature = "Foundation")]
1051 pub BaseStationId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1052 #[cfg(not(feature = "Foundation"))]
1053 BaseStationId: usize,
1054 #[cfg(feature = "Foundation")]
1055 pub BaseStationPNCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1056 #[cfg(not(feature = "Foundation"))]
1057 BaseStationPNCode: usize,
1058 #[cfg(feature = "Foundation")]
1059 pub BaseStationLatitude: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1060 #[cfg(not(feature = "Foundation"))]
1061 BaseStationLatitude: usize,
1062 #[cfg(feature = "Foundation")]
1063 pub BaseStationLongitude: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1064 #[cfg(not(feature = "Foundation"))]
1065 BaseStationLongitude: usize,
1066 #[cfg(feature = "Foundation")]
1067 pub BaseStationLastBroadcastGpsTime: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1068 #[cfg(not(feature = "Foundation"))]
1069 BaseStationLastBroadcastGpsTime: usize,
1070 #[cfg(feature = "Foundation")]
1071 pub NetworkId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1072 #[cfg(not(feature = "Foundation"))]
1073 NetworkId: usize,
1074 #[cfg(feature = "Foundation")]
1075 pub PilotSignalStrengthInDB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1076 #[cfg(not(feature = "Foundation"))]
1077 PilotSignalStrengthInDB: usize,
1078 #[cfg(feature = "Foundation")]
1079 pub SystemId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1080 #[cfg(not(feature = "Foundation"))]
1081 SystemId: usize,
1082}
1083#[doc(hidden)]
1084#[repr(transparent)]
1085pub struct IMobileBroadbandCellGsm(::windows::core::IUnknown);
1086unsafe impl ::windows::core::Interface for IMobileBroadbandCellGsm {
1087 type Vtable = IMobileBroadbandCellGsm_Vtbl;
1088}
1089impl ::core::clone::Clone for IMobileBroadbandCellGsm {
1090 fn clone(&self) -> Self {
1091 Self(self.0.clone())
1092 }
1093}
1094unsafe impl ::windows::core::ComInterface for IMobileBroadbandCellGsm {
1095 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcc917f06_7ee0_47b8_9e1f_c3b48df9df5b);
1096}
1097#[repr(C)]
1098#[doc(hidden)]
1099pub struct IMobileBroadbandCellGsm_Vtbl {
1100 pub base__: ::windows::core::IInspectable_Vtbl,
1101 #[cfg(feature = "Foundation")]
1102 pub BaseStationId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1103 #[cfg(not(feature = "Foundation"))]
1104 BaseStationId: usize,
1105 #[cfg(feature = "Foundation")]
1106 pub CellId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1107 #[cfg(not(feature = "Foundation"))]
1108 CellId: usize,
1109 #[cfg(feature = "Foundation")]
1110 pub ChannelNumber: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1111 #[cfg(not(feature = "Foundation"))]
1112 ChannelNumber: usize,
1113 #[cfg(feature = "Foundation")]
1114 pub LocationAreaCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1115 #[cfg(not(feature = "Foundation"))]
1116 LocationAreaCode: usize,
1117 pub ProviderId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1118 #[cfg(feature = "Foundation")]
1119 pub ReceivedSignalStrengthInDBm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1120 #[cfg(not(feature = "Foundation"))]
1121 ReceivedSignalStrengthInDBm: usize,
1122 #[cfg(feature = "Foundation")]
1123 pub TimingAdvanceInBitPeriods: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1124 #[cfg(not(feature = "Foundation"))]
1125 TimingAdvanceInBitPeriods: usize,
1126}
1127#[doc(hidden)]
1128#[repr(transparent)]
1129pub struct IMobileBroadbandCellLte(::windows::core::IUnknown);
1130unsafe impl ::windows::core::Interface for IMobileBroadbandCellLte {
1131 type Vtable = IMobileBroadbandCellLte_Vtbl;
1132}
1133impl ::core::clone::Clone for IMobileBroadbandCellLte {
1134 fn clone(&self) -> Self {
1135 Self(self.0.clone())
1136 }
1137}
1138unsafe impl ::windows::core::ComInterface for IMobileBroadbandCellLte {
1139 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9197c87b_2b78_456d_8b53_aaa25d0af741);
1140}
1141#[repr(C)]
1142#[doc(hidden)]
1143pub struct IMobileBroadbandCellLte_Vtbl {
1144 pub base__: ::windows::core::IInspectable_Vtbl,
1145 #[cfg(feature = "Foundation")]
1146 pub CellId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1147 #[cfg(not(feature = "Foundation"))]
1148 CellId: usize,
1149 #[cfg(feature = "Foundation")]
1150 pub ChannelNumber: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1151 #[cfg(not(feature = "Foundation"))]
1152 ChannelNumber: usize,
1153 #[cfg(feature = "Foundation")]
1154 pub PhysicalCellId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1155 #[cfg(not(feature = "Foundation"))]
1156 PhysicalCellId: usize,
1157 pub ProviderId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1158 #[cfg(feature = "Foundation")]
1159 pub ReferenceSignalReceivedPowerInDBm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1160 #[cfg(not(feature = "Foundation"))]
1161 ReferenceSignalReceivedPowerInDBm: usize,
1162 #[cfg(feature = "Foundation")]
1163 pub ReferenceSignalReceivedQualityInDBm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1164 #[cfg(not(feature = "Foundation"))]
1165 ReferenceSignalReceivedQualityInDBm: usize,
1166 #[cfg(feature = "Foundation")]
1167 pub TimingAdvanceInBitPeriods: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1168 #[cfg(not(feature = "Foundation"))]
1169 TimingAdvanceInBitPeriods: usize,
1170 #[cfg(feature = "Foundation")]
1171 pub TrackingAreaCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1172 #[cfg(not(feature = "Foundation"))]
1173 TrackingAreaCode: usize,
1174}
1175#[doc(hidden)]
1176#[repr(transparent)]
1177pub struct IMobileBroadbandCellNR(::windows::core::IUnknown);
1178unsafe impl ::windows::core::Interface for IMobileBroadbandCellNR {
1179 type Vtable = IMobileBroadbandCellNR_Vtbl;
1180}
1181impl ::core::clone::Clone for IMobileBroadbandCellNR {
1182 fn clone(&self) -> Self {
1183 Self(self.0.clone())
1184 }
1185}
1186unsafe impl ::windows::core::ComInterface for IMobileBroadbandCellNR {
1187 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa13f0deb_66fc_4b4b_83a9_a487a3a5a0a6);
1188}
1189#[repr(C)]
1190#[doc(hidden)]
1191pub struct IMobileBroadbandCellNR_Vtbl {
1192 pub base__: ::windows::core::IInspectable_Vtbl,
1193 #[cfg(feature = "Foundation")]
1194 pub CellId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1195 #[cfg(not(feature = "Foundation"))]
1196 CellId: usize,
1197 #[cfg(feature = "Foundation")]
1198 pub ChannelNumber: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1199 #[cfg(not(feature = "Foundation"))]
1200 ChannelNumber: usize,
1201 #[cfg(feature = "Foundation")]
1202 pub PhysicalCellId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1203 #[cfg(not(feature = "Foundation"))]
1204 PhysicalCellId: usize,
1205 pub ProviderId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1206 #[cfg(feature = "Foundation")]
1207 pub ReferenceSignalReceivedPowerInDBm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1208 #[cfg(not(feature = "Foundation"))]
1209 ReferenceSignalReceivedPowerInDBm: usize,
1210 #[cfg(feature = "Foundation")]
1211 pub ReferenceSignalReceivedQualityInDBm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1212 #[cfg(not(feature = "Foundation"))]
1213 ReferenceSignalReceivedQualityInDBm: usize,
1214 #[cfg(feature = "Foundation")]
1215 pub TimingAdvanceInNanoseconds: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1216 #[cfg(not(feature = "Foundation"))]
1217 TimingAdvanceInNanoseconds: usize,
1218 #[cfg(feature = "Foundation")]
1219 pub TrackingAreaCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1220 #[cfg(not(feature = "Foundation"))]
1221 TrackingAreaCode: usize,
1222 #[cfg(feature = "Foundation")]
1223 pub SignalToNoiseRatioInDB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1224 #[cfg(not(feature = "Foundation"))]
1225 SignalToNoiseRatioInDB: usize,
1226}
1227#[doc(hidden)]
1228#[repr(transparent)]
1229pub struct IMobileBroadbandCellTdscdma(::windows::core::IUnknown);
1230unsafe impl ::windows::core::Interface for IMobileBroadbandCellTdscdma {
1231 type Vtable = IMobileBroadbandCellTdscdma_Vtbl;
1232}
1233impl ::core::clone::Clone for IMobileBroadbandCellTdscdma {
1234 fn clone(&self) -> Self {
1235 Self(self.0.clone())
1236 }
1237}
1238unsafe impl ::windows::core::ComInterface for IMobileBroadbandCellTdscdma {
1239 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0eda1655_db0e_4182_8cda_cc419a7bde08);
1240}
1241#[repr(C)]
1242#[doc(hidden)]
1243pub struct IMobileBroadbandCellTdscdma_Vtbl {
1244 pub base__: ::windows::core::IInspectable_Vtbl,
1245 #[cfg(feature = "Foundation")]
1246 pub CellId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1247 #[cfg(not(feature = "Foundation"))]
1248 CellId: usize,
1249 #[cfg(feature = "Foundation")]
1250 pub CellParameterId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1251 #[cfg(not(feature = "Foundation"))]
1252 CellParameterId: usize,
1253 #[cfg(feature = "Foundation")]
1254 pub ChannelNumber: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1255 #[cfg(not(feature = "Foundation"))]
1256 ChannelNumber: usize,
1257 #[cfg(feature = "Foundation")]
1258 pub LocationAreaCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1259 #[cfg(not(feature = "Foundation"))]
1260 LocationAreaCode: usize,
1261 #[cfg(feature = "Foundation")]
1262 pub PathLossInDB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1263 #[cfg(not(feature = "Foundation"))]
1264 PathLossInDB: usize,
1265 pub ProviderId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1266 #[cfg(feature = "Foundation")]
1267 pub ReceivedSignalCodePowerInDBm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1268 #[cfg(not(feature = "Foundation"))]
1269 ReceivedSignalCodePowerInDBm: usize,
1270 #[cfg(feature = "Foundation")]
1271 pub TimingAdvanceInBitPeriods: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1272 #[cfg(not(feature = "Foundation"))]
1273 TimingAdvanceInBitPeriods: usize,
1274}
1275#[doc(hidden)]
1276#[repr(transparent)]
1277pub struct IMobileBroadbandCellUmts(::windows::core::IUnknown);
1278unsafe impl ::windows::core::Interface for IMobileBroadbandCellUmts {
1279 type Vtable = IMobileBroadbandCellUmts_Vtbl;
1280}
1281impl ::core::clone::Clone for IMobileBroadbandCellUmts {
1282 fn clone(&self) -> Self {
1283 Self(self.0.clone())
1284 }
1285}
1286unsafe impl ::windows::core::ComInterface for IMobileBroadbandCellUmts {
1287 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x77b4b5ae_49c8_4f15_b285_4c26a7f67215);
1288}
1289#[repr(C)]
1290#[doc(hidden)]
1291pub struct IMobileBroadbandCellUmts_Vtbl {
1292 pub base__: ::windows::core::IInspectable_Vtbl,
1293 #[cfg(feature = "Foundation")]
1294 pub CellId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1295 #[cfg(not(feature = "Foundation"))]
1296 CellId: usize,
1297 #[cfg(feature = "Foundation")]
1298 pub ChannelNumber: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1299 #[cfg(not(feature = "Foundation"))]
1300 ChannelNumber: usize,
1301 #[cfg(feature = "Foundation")]
1302 pub LocationAreaCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1303 #[cfg(not(feature = "Foundation"))]
1304 LocationAreaCode: usize,
1305 #[cfg(feature = "Foundation")]
1306 pub PathLossInDB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1307 #[cfg(not(feature = "Foundation"))]
1308 PathLossInDB: usize,
1309 #[cfg(feature = "Foundation")]
1310 pub PrimaryScramblingCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1311 #[cfg(not(feature = "Foundation"))]
1312 PrimaryScramblingCode: usize,
1313 pub ProviderId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1314 #[cfg(feature = "Foundation")]
1315 pub ReceivedSignalCodePowerInDBm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1316 #[cfg(not(feature = "Foundation"))]
1317 ReceivedSignalCodePowerInDBm: usize,
1318 #[cfg(feature = "Foundation")]
1319 pub SignalToNoiseRatioInDB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1320 #[cfg(not(feature = "Foundation"))]
1321 SignalToNoiseRatioInDB: usize,
1322}
1323#[doc(hidden)]
1324#[repr(transparent)]
1325pub struct IMobileBroadbandCellsInfo(::windows::core::IUnknown);
1326unsafe impl ::windows::core::Interface for IMobileBroadbandCellsInfo {
1327 type Vtable = IMobileBroadbandCellsInfo_Vtbl;
1328}
1329impl ::core::clone::Clone for IMobileBroadbandCellsInfo {
1330 fn clone(&self) -> Self {
1331 Self(self.0.clone())
1332 }
1333}
1334unsafe impl ::windows::core::ComInterface for IMobileBroadbandCellsInfo {
1335 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x89a9562a_e472_4da5_929c_de61711dd261);
1336}
1337#[repr(C)]
1338#[doc(hidden)]
1339pub struct IMobileBroadbandCellsInfo_Vtbl {
1340 pub base__: ::windows::core::IInspectable_Vtbl,
1341 #[cfg(feature = "Foundation_Collections")]
1342 pub NeighboringCellsCdma: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1343 #[cfg(not(feature = "Foundation_Collections"))]
1344 NeighboringCellsCdma: usize,
1345 #[cfg(feature = "Foundation_Collections")]
1346 pub NeighboringCellsGsm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1347 #[cfg(not(feature = "Foundation_Collections"))]
1348 NeighboringCellsGsm: usize,
1349 #[cfg(feature = "Foundation_Collections")]
1350 pub NeighboringCellsLte: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1351 #[cfg(not(feature = "Foundation_Collections"))]
1352 NeighboringCellsLte: usize,
1353 #[cfg(feature = "Foundation_Collections")]
1354 pub NeighboringCellsTdscdma: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1355 #[cfg(not(feature = "Foundation_Collections"))]
1356 NeighboringCellsTdscdma: usize,
1357 #[cfg(feature = "Foundation_Collections")]
1358 pub NeighboringCellsUmts: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1359 #[cfg(not(feature = "Foundation_Collections"))]
1360 NeighboringCellsUmts: usize,
1361 #[cfg(feature = "Foundation_Collections")]
1362 pub ServingCellsCdma: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1363 #[cfg(not(feature = "Foundation_Collections"))]
1364 ServingCellsCdma: usize,
1365 #[cfg(feature = "Foundation_Collections")]
1366 pub ServingCellsGsm: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1367 #[cfg(not(feature = "Foundation_Collections"))]
1368 ServingCellsGsm: usize,
1369 #[cfg(feature = "Foundation_Collections")]
1370 pub ServingCellsLte: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1371 #[cfg(not(feature = "Foundation_Collections"))]
1372 ServingCellsLte: usize,
1373 #[cfg(feature = "Foundation_Collections")]
1374 pub ServingCellsTdscdma: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1375 #[cfg(not(feature = "Foundation_Collections"))]
1376 ServingCellsTdscdma: usize,
1377 #[cfg(feature = "Foundation_Collections")]
1378 pub ServingCellsUmts: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1379 #[cfg(not(feature = "Foundation_Collections"))]
1380 ServingCellsUmts: usize,
1381}
1382#[doc(hidden)]
1383#[repr(transparent)]
1384pub struct IMobileBroadbandCellsInfo2(::windows::core::IUnknown);
1385unsafe impl ::windows::core::Interface for IMobileBroadbandCellsInfo2 {
1386 type Vtable = IMobileBroadbandCellsInfo2_Vtbl;
1387}
1388impl ::core::clone::Clone for IMobileBroadbandCellsInfo2 {
1389 fn clone(&self) -> Self {
1390 Self(self.0.clone())
1391 }
1392}
1393unsafe impl ::windows::core::ComInterface for IMobileBroadbandCellsInfo2 {
1394 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x66205912_b89f_4e12_bbb6_d5cf09a820ca);
1395}
1396#[repr(C)]
1397#[doc(hidden)]
1398pub struct IMobileBroadbandCellsInfo2_Vtbl {
1399 pub base__: ::windows::core::IInspectable_Vtbl,
1400 #[cfg(feature = "Foundation_Collections")]
1401 pub NeighboringCellsNR: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1402 #[cfg(not(feature = "Foundation_Collections"))]
1403 NeighboringCellsNR: usize,
1404 #[cfg(feature = "Foundation_Collections")]
1405 pub ServingCellsNR: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1406 #[cfg(not(feature = "Foundation_Collections"))]
1407 ServingCellsNR: usize,
1408}
1409#[doc(hidden)]
1410#[repr(transparent)]
1411pub struct IMobileBroadbandCurrentSlotIndexChangedEventArgs(::windows::core::IUnknown);
1412unsafe impl ::windows::core::Interface for IMobileBroadbandCurrentSlotIndexChangedEventArgs {
1413 type Vtable = IMobileBroadbandCurrentSlotIndexChangedEventArgs_Vtbl;
1414}
1415impl ::core::clone::Clone for IMobileBroadbandCurrentSlotIndexChangedEventArgs {
1416 fn clone(&self) -> Self {
1417 Self(self.0.clone())
1418 }
1419}
1420unsafe impl ::windows::core::ComInterface for IMobileBroadbandCurrentSlotIndexChangedEventArgs {
1421 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf718b184_c370_5fd4_a670_1846cb9bce47);
1422}
1423#[repr(C)]
1424#[doc(hidden)]
1425pub struct IMobileBroadbandCurrentSlotIndexChangedEventArgs_Vtbl {
1426 pub base__: ::windows::core::IInspectable_Vtbl,
1427 pub CurrentSlotIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut i32) -> ::windows::core::HRESULT,
1428}
1429#[doc(hidden)]
1430#[repr(transparent)]
1431pub struct IMobileBroadbandDeviceInformation(::windows::core::IUnknown);
1432unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceInformation {
1433 type Vtable = IMobileBroadbandDeviceInformation_Vtbl;
1434}
1435impl ::core::clone::Clone for IMobileBroadbandDeviceInformation {
1436 fn clone(&self) -> Self {
1437 Self(self.0.clone())
1438 }
1439}
1440unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceInformation {
1441 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe6d08168_e381_4c6e_9be8_fe156969a446);
1442}
1443#[repr(C)]
1444#[doc(hidden)]
1445pub struct IMobileBroadbandDeviceInformation_Vtbl {
1446 pub base__: ::windows::core::IInspectable_Vtbl,
1447 pub NetworkDeviceStatus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut NetworkDeviceStatus) -> ::windows::core::HRESULT,
1448 pub Manufacturer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1449 pub Model: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1450 pub FirmwareInformation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1451 #[cfg(feature = "Devices_Sms")]
1452 pub CellularClass: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut super::super::Devices::Sms::CellularClass) -> ::windows::core::HRESULT,
1453 #[cfg(not(feature = "Devices_Sms"))]
1454 CellularClass: usize,
1455 pub DataClasses: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut DataClasses) -> ::windows::core::HRESULT,
1456 pub CustomDataClass: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1457 pub MobileEquipmentId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1458 #[cfg(feature = "Foundation_Collections")]
1459 pub TelephoneNumbers: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1460 #[cfg(not(feature = "Foundation_Collections"))]
1461 TelephoneNumbers: usize,
1462 pub SubscriberId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1463 pub SimIccId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1464 pub DeviceType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandDeviceType) -> ::windows::core::HRESULT,
1465 pub DeviceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1466 pub CurrentRadioState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandRadioState) -> ::windows::core::HRESULT,
1467}
1468#[doc(hidden)]
1469#[repr(transparent)]
1470pub struct IMobileBroadbandDeviceInformation2(::windows::core::IUnknown);
1471unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceInformation2 {
1472 type Vtable = IMobileBroadbandDeviceInformation2_Vtbl;
1473}
1474impl ::core::clone::Clone for IMobileBroadbandDeviceInformation2 {
1475 fn clone(&self) -> Self {
1476 Self(self.0.clone())
1477 }
1478}
1479unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceInformation2 {
1480 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2e467af1_f932_4737_a722_03ba72370cb8);
1481}
1482#[repr(C)]
1483#[doc(hidden)]
1484pub struct IMobileBroadbandDeviceInformation2_Vtbl {
1485 pub base__: ::windows::core::IInspectable_Vtbl,
1486 pub PinManager: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1487 pub Revision: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1488 pub SerialNumber: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1489}
1490#[doc(hidden)]
1491#[repr(transparent)]
1492pub struct IMobileBroadbandDeviceInformation3(::windows::core::IUnknown);
1493unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceInformation3 {
1494 type Vtable = IMobileBroadbandDeviceInformation3_Vtbl;
1495}
1496impl ::core::clone::Clone for IMobileBroadbandDeviceInformation3 {
1497 fn clone(&self) -> Self {
1498 Self(self.0.clone())
1499 }
1500}
1501unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceInformation3 {
1502 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe08bb4bd_5d30_4b5a_92cc_d54df881d49e);
1503}
1504#[repr(C)]
1505#[doc(hidden)]
1506pub struct IMobileBroadbandDeviceInformation3_Vtbl {
1507 pub base__: ::windows::core::IInspectable_Vtbl,
1508 pub SimSpn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1509 pub SimPnn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1510 pub SimGid1: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1511}
1512#[doc(hidden)]
1513#[repr(transparent)]
1514pub struct IMobileBroadbandDeviceInformation4(::windows::core::IUnknown);
1515unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceInformation4 {
1516 type Vtable = IMobileBroadbandDeviceInformation4_Vtbl;
1517}
1518impl ::core::clone::Clone for IMobileBroadbandDeviceInformation4 {
1519 fn clone(&self) -> Self {
1520 Self(self.0.clone())
1521 }
1522}
1523unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceInformation4 {
1524 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x263f3152_7b9d_582c_b17c_f80a60b50031);
1525}
1526#[repr(C)]
1527#[doc(hidden)]
1528pub struct IMobileBroadbandDeviceInformation4_Vtbl {
1529 pub base__: ::windows::core::IInspectable_Vtbl,
1530 pub SlotManager: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1531}
1532#[doc(hidden)]
1533#[repr(transparent)]
1534pub struct IMobileBroadbandDeviceService(::windows::core::IUnknown);
1535unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceService {
1536 type Vtable = IMobileBroadbandDeviceService_Vtbl;
1537}
1538impl ::core::clone::Clone for IMobileBroadbandDeviceService {
1539 fn clone(&self) -> Self {
1540 Self(self.0.clone())
1541 }
1542}
1543unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceService {
1544 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x22be1a52_bd80_40ac_8e1f_2e07836a3dbd);
1545}
1546#[repr(C)]
1547#[doc(hidden)]
1548pub struct IMobileBroadbandDeviceService_Vtbl {
1549 pub base__: ::windows::core::IInspectable_Vtbl,
1550 pub DeviceServiceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
1551 #[cfg(feature = "Foundation_Collections")]
1552 pub SupportedCommands: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1553 #[cfg(not(feature = "Foundation_Collections"))]
1554 SupportedCommands: usize,
1555 pub OpenDataSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1556 pub OpenCommandSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1557}
1558#[doc(hidden)]
1559#[repr(transparent)]
1560pub struct IMobileBroadbandDeviceServiceCommandResult(::windows::core::IUnknown);
1561unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceServiceCommandResult {
1562 type Vtable = IMobileBroadbandDeviceServiceCommandResult_Vtbl;
1563}
1564impl ::core::clone::Clone for IMobileBroadbandDeviceServiceCommandResult {
1565 fn clone(&self) -> Self {
1566 Self(self.0.clone())
1567 }
1568}
1569unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceServiceCommandResult {
1570 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb0f46abb_94d6_44b9_a538_f0810b645389);
1571}
1572#[repr(C)]
1573#[doc(hidden)]
1574pub struct IMobileBroadbandDeviceServiceCommandResult_Vtbl {
1575 pub base__: ::windows::core::IInspectable_Vtbl,
1576 pub StatusCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
1577 #[cfg(feature = "Storage_Streams")]
1578 pub ResponseData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1579 #[cfg(not(feature = "Storage_Streams"))]
1580 ResponseData: usize,
1581}
1582#[doc(hidden)]
1583#[repr(transparent)]
1584pub struct IMobileBroadbandDeviceServiceCommandSession(::windows::core::IUnknown);
1585unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceServiceCommandSession {
1586 type Vtable = IMobileBroadbandDeviceServiceCommandSession_Vtbl;
1587}
1588impl ::core::clone::Clone for IMobileBroadbandDeviceServiceCommandSession {
1589 fn clone(&self) -> Self {
1590 Self(self.0.clone())
1591 }
1592}
1593unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceServiceCommandSession {
1594 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfc098a45_913b_4914_b6c3_ae6304593e75);
1595}
1596#[repr(C)]
1597#[doc(hidden)]
1598pub struct IMobileBroadbandDeviceServiceCommandSession_Vtbl {
1599 pub base__: ::windows::core::IInspectable_Vtbl,
1600 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
1601 pub SendQueryCommandAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, commandid: u32, data: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1602 #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))]
1603 SendQueryCommandAsync: usize,
1604 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
1605 pub SendSetCommandAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, commandid: u32, data: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1606 #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))]
1607 SendSetCommandAsync: usize,
1608 pub CloseSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1609}
1610#[doc(hidden)]
1611#[repr(transparent)]
1612pub struct IMobileBroadbandDeviceServiceDataReceivedEventArgs(::windows::core::IUnknown);
1613unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceServiceDataReceivedEventArgs {
1614 type Vtable = IMobileBroadbandDeviceServiceDataReceivedEventArgs_Vtbl;
1615}
1616impl ::core::clone::Clone for IMobileBroadbandDeviceServiceDataReceivedEventArgs {
1617 fn clone(&self) -> Self {
1618 Self(self.0.clone())
1619 }
1620}
1621unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceServiceDataReceivedEventArgs {
1622 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb6aa13de_1380_40e3_8618_73cbca48138c);
1623}
1624#[repr(C)]
1625#[doc(hidden)]
1626pub struct IMobileBroadbandDeviceServiceDataReceivedEventArgs_Vtbl {
1627 pub base__: ::windows::core::IInspectable_Vtbl,
1628 #[cfg(feature = "Storage_Streams")]
1629 pub ReceivedData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1630 #[cfg(not(feature = "Storage_Streams"))]
1631 ReceivedData: usize,
1632}
1633#[doc(hidden)]
1634#[repr(transparent)]
1635pub struct IMobileBroadbandDeviceServiceDataSession(::windows::core::IUnknown);
1636unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceServiceDataSession {
1637 type Vtable = IMobileBroadbandDeviceServiceDataSession_Vtbl;
1638}
1639impl ::core::clone::Clone for IMobileBroadbandDeviceServiceDataSession {
1640 fn clone(&self) -> Self {
1641 Self(self.0.clone())
1642 }
1643}
1644unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceServiceDataSession {
1645 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdad62333_8bcf_4289_8a37_045c2169486a);
1646}
1647#[repr(C)]
1648#[doc(hidden)]
1649pub struct IMobileBroadbandDeviceServiceDataSession_Vtbl {
1650 pub base__: ::windows::core::IInspectable_Vtbl,
1651 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
1652 pub WriteDataAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1653 #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))]
1654 WriteDataAsync: usize,
1655 pub CloseSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1656 #[cfg(feature = "Foundation")]
1657 pub DataReceived: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, eventhandler: *mut ::core::ffi::c_void, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
1658 #[cfg(not(feature = "Foundation"))]
1659 DataReceived: usize,
1660 #[cfg(feature = "Foundation")]
1661 pub RemoveDataReceived: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, eventcookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
1662 #[cfg(not(feature = "Foundation"))]
1663 RemoveDataReceived: usize,
1664}
1665#[doc(hidden)]
1666#[repr(transparent)]
1667pub struct IMobileBroadbandDeviceServiceInformation(::windows::core::IUnknown);
1668unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceServiceInformation {
1669 type Vtable = IMobileBroadbandDeviceServiceInformation_Vtbl;
1670}
1671impl ::core::clone::Clone for IMobileBroadbandDeviceServiceInformation {
1672 fn clone(&self) -> Self {
1673 Self(self.0.clone())
1674 }
1675}
1676unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceServiceInformation {
1677 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x53d69b5b_c4ed_45f0_803a_d9417a6d9846);
1678}
1679#[repr(C)]
1680#[doc(hidden)]
1681pub struct IMobileBroadbandDeviceServiceInformation_Vtbl {
1682 pub base__: ::windows::core::IInspectable_Vtbl,
1683 pub DeviceServiceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
1684 pub IsDataReadSupported: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
1685 pub IsDataWriteSupported: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
1686}
1687#[doc(hidden)]
1688#[repr(transparent)]
1689pub struct IMobileBroadbandDeviceServiceTriggerDetails(::windows::core::IUnknown);
1690unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceServiceTriggerDetails {
1691 type Vtable = IMobileBroadbandDeviceServiceTriggerDetails_Vtbl;
1692}
1693impl ::core::clone::Clone for IMobileBroadbandDeviceServiceTriggerDetails {
1694 fn clone(&self) -> Self {
1695 Self(self.0.clone())
1696 }
1697}
1698unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceServiceTriggerDetails {
1699 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4a055b70_b9ae_4458_9241_a6a5fbf18a0c);
1700}
1701#[repr(C)]
1702#[doc(hidden)]
1703pub struct IMobileBroadbandDeviceServiceTriggerDetails_Vtbl {
1704 pub base__: ::windows::core::IInspectable_Vtbl,
1705 pub DeviceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1706 pub DeviceServiceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::windows::core::GUID) -> ::windows::core::HRESULT,
1707 #[cfg(feature = "Storage_Streams")]
1708 pub ReceivedData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1709 #[cfg(not(feature = "Storage_Streams"))]
1710 ReceivedData: usize,
1711}
1712#[doc(hidden)]
1713#[repr(transparent)]
1714pub struct IMobileBroadbandDeviceServiceTriggerDetails2(::windows::core::IUnknown);
1715unsafe impl ::windows::core::Interface for IMobileBroadbandDeviceServiceTriggerDetails2 {
1716 type Vtable = IMobileBroadbandDeviceServiceTriggerDetails2_Vtbl;
1717}
1718impl ::core::clone::Clone for IMobileBroadbandDeviceServiceTriggerDetails2 {
1719 fn clone(&self) -> Self {
1720 Self(self.0.clone())
1721 }
1722}
1723unsafe impl ::windows::core::ComInterface for IMobileBroadbandDeviceServiceTriggerDetails2 {
1724 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd83d5f16_336a_553f_94bb_0cd1a2ff0c81);
1725}
1726#[repr(C)]
1727#[doc(hidden)]
1728pub struct IMobileBroadbandDeviceServiceTriggerDetails2_Vtbl {
1729 pub base__: ::windows::core::IInspectable_Vtbl,
1730 pub EventId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
1731}
1732#[doc(hidden)]
1733#[repr(transparent)]
1734pub struct IMobileBroadbandModem(::windows::core::IUnknown);
1735unsafe impl ::windows::core::Interface for IMobileBroadbandModem {
1736 type Vtable = IMobileBroadbandModem_Vtbl;
1737}
1738impl ::core::clone::Clone for IMobileBroadbandModem {
1739 fn clone(&self) -> Self {
1740 Self(self.0.clone())
1741 }
1742}
1743unsafe impl ::windows::core::ComInterface for IMobileBroadbandModem {
1744 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd0356912_e9f9_4f67_a03d_43189a316bf1);
1745}
1746#[repr(C)]
1747#[doc(hidden)]
1748pub struct IMobileBroadbandModem_Vtbl {
1749 pub base__: ::windows::core::IInspectable_Vtbl,
1750 pub CurrentAccount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1751 pub DeviceInformation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1752 pub MaxDeviceServiceCommandSizeInBytes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
1753 pub MaxDeviceServiceDataSizeInBytes: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
1754 #[cfg(feature = "Foundation_Collections")]
1755 pub DeviceServices: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1756 #[cfg(not(feature = "Foundation_Collections"))]
1757 DeviceServices: usize,
1758 pub GetDeviceService: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceserviceid: ::windows::core::GUID, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1759 pub IsResetSupported: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
1760 #[cfg(feature = "Foundation")]
1761 pub ResetAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1762 #[cfg(not(feature = "Foundation"))]
1763 ResetAsync: usize,
1764 #[cfg(feature = "Foundation")]
1765 pub GetCurrentConfigurationAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1766 #[cfg(not(feature = "Foundation"))]
1767 GetCurrentConfigurationAsync: usize,
1768 pub CurrentNetwork: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1769}
1770#[doc(hidden)]
1771#[repr(transparent)]
1772pub struct IMobileBroadbandModem2(::windows::core::IUnknown);
1773unsafe impl ::windows::core::Interface for IMobileBroadbandModem2 {
1774 type Vtable = IMobileBroadbandModem2_Vtbl;
1775}
1776impl ::core::clone::Clone for IMobileBroadbandModem2 {
1777 fn clone(&self) -> Self {
1778 Self(self.0.clone())
1779 }
1780}
1781unsafe impl ::windows::core::ComInterface for IMobileBroadbandModem2 {
1782 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x12862b28_b9eb_4ee2_bbe3_711f53eea373);
1783}
1784#[repr(C)]
1785#[doc(hidden)]
1786pub struct IMobileBroadbandModem2_Vtbl {
1787 pub base__: ::windows::core::IInspectable_Vtbl,
1788 #[cfg(feature = "Foundation")]
1789 pub GetIsPassthroughEnabledAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1790 #[cfg(not(feature = "Foundation"))]
1791 GetIsPassthroughEnabledAsync: usize,
1792 #[cfg(feature = "Foundation")]
1793 pub SetIsPassthroughEnabledAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: bool, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1794 #[cfg(not(feature = "Foundation"))]
1795 SetIsPassthroughEnabledAsync: usize,
1796}
1797#[doc(hidden)]
1798#[repr(transparent)]
1799pub struct IMobileBroadbandModem3(::windows::core::IUnknown);
1800unsafe impl ::windows::core::Interface for IMobileBroadbandModem3 {
1801 type Vtable = IMobileBroadbandModem3_Vtbl;
1802}
1803impl ::core::clone::Clone for IMobileBroadbandModem3 {
1804 fn clone(&self) -> Self {
1805 Self(self.0.clone())
1806 }
1807}
1808unsafe impl ::windows::core::ComInterface for IMobileBroadbandModem3 {
1809 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe9fec6ea_2f34_4582_9102_c314d2a87eec);
1810}
1811#[repr(C)]
1812#[doc(hidden)]
1813pub struct IMobileBroadbandModem3_Vtbl {
1814 pub base__: ::windows::core::IInspectable_Vtbl,
1815 #[cfg(feature = "Foundation")]
1816 pub TryGetPcoAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1817 #[cfg(not(feature = "Foundation"))]
1818 TryGetPcoAsync: usize,
1819 pub IsInEmergencyCallMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
1820 #[cfg(feature = "Foundation")]
1821 pub IsInEmergencyCallModeChanged: 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,
1822 #[cfg(not(feature = "Foundation"))]
1823 IsInEmergencyCallModeChanged: usize,
1824 #[cfg(feature = "Foundation")]
1825 pub RemoveIsInEmergencyCallModeChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
1826 #[cfg(not(feature = "Foundation"))]
1827 RemoveIsInEmergencyCallModeChanged: usize,
1828}
1829#[doc(hidden)]
1830#[repr(transparent)]
1831pub struct IMobileBroadbandModem4(::windows::core::IUnknown);
1832unsafe impl ::windows::core::Interface for IMobileBroadbandModem4 {
1833 type Vtable = IMobileBroadbandModem4_Vtbl;
1834}
1835impl ::core::clone::Clone for IMobileBroadbandModem4 {
1836 fn clone(&self) -> Self {
1837 Self(self.0.clone())
1838 }
1839}
1840unsafe impl ::windows::core::ComInterface for IMobileBroadbandModem4 {
1841 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4a0398c2_91be_412b_b569_586e9f0030d1);
1842}
1843#[repr(C)]
1844#[doc(hidden)]
1845pub struct IMobileBroadbandModem4_Vtbl {
1846 pub base__: ::windows::core::IInspectable_Vtbl,
1847 #[cfg(feature = "Foundation")]
1848 pub SetIsPassthroughEnabledWithSlotIndexAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: bool, slotindex: i32, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1849 #[cfg(not(feature = "Foundation"))]
1850 SetIsPassthroughEnabledWithSlotIndexAsync: usize,
1851 #[cfg(feature = "Foundation")]
1852 pub GetIsPassthroughEnabledWithSlotIndexAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, slotindex: i32, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1853 #[cfg(not(feature = "Foundation"))]
1854 GetIsPassthroughEnabledWithSlotIndexAsync: usize,
1855 pub SetIsPassthroughEnabledWithSlotIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: bool, slotindex: i32, result__: *mut MobileBroadbandModemStatus) -> ::windows::core::HRESULT,
1856 pub GetIsPassthroughEnabledWithSlotIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, slotindex: i32, result__: *mut bool) -> ::windows::core::HRESULT,
1857}
1858#[doc(hidden)]
1859#[repr(transparent)]
1860pub struct IMobileBroadbandModemConfiguration(::windows::core::IUnknown);
1861unsafe impl ::windows::core::Interface for IMobileBroadbandModemConfiguration {
1862 type Vtable = IMobileBroadbandModemConfiguration_Vtbl;
1863}
1864impl ::core::clone::Clone for IMobileBroadbandModemConfiguration {
1865 fn clone(&self) -> Self {
1866 Self(self.0.clone())
1867 }
1868}
1869unsafe impl ::windows::core::ComInterface for IMobileBroadbandModemConfiguration {
1870 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfce035a3_d6cd_4320_b982_be9d3ec7890f);
1871}
1872#[repr(C)]
1873#[doc(hidden)]
1874pub struct IMobileBroadbandModemConfiguration_Vtbl {
1875 pub base__: ::windows::core::IInspectable_Vtbl,
1876 pub Uicc: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1877 pub HomeProviderId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1878 pub HomeProviderName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1879}
1880#[doc(hidden)]
1881#[repr(transparent)]
1882pub struct IMobileBroadbandModemConfiguration2(::windows::core::IUnknown);
1883unsafe impl ::windows::core::Interface for IMobileBroadbandModemConfiguration2 {
1884 type Vtable = IMobileBroadbandModemConfiguration2_Vtbl;
1885}
1886impl ::core::clone::Clone for IMobileBroadbandModemConfiguration2 {
1887 fn clone(&self) -> Self {
1888 Self(self.0.clone())
1889 }
1890}
1891unsafe impl ::windows::core::ComInterface for IMobileBroadbandModemConfiguration2 {
1892 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x320ff5c5_e460_42ae_aa51_69621e7a4477);
1893}
1894#[repr(C)]
1895#[doc(hidden)]
1896pub struct IMobileBroadbandModemConfiguration2_Vtbl {
1897 pub base__: ::windows::core::IInspectable_Vtbl,
1898 pub SarManager: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1899}
1900#[doc(hidden)]
1901#[repr(transparent)]
1902pub struct IMobileBroadbandModemIsolation(::windows::core::IUnknown);
1903unsafe impl ::windows::core::Interface for IMobileBroadbandModemIsolation {
1904 type Vtable = IMobileBroadbandModemIsolation_Vtbl;
1905}
1906impl ::core::clone::Clone for IMobileBroadbandModemIsolation {
1907 fn clone(&self) -> Self {
1908 Self(self.0.clone())
1909 }
1910}
1911unsafe impl ::windows::core::ComInterface for IMobileBroadbandModemIsolation {
1912 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb5618fec_e661_4330_9bb4_3480212ec354);
1913}
1914#[repr(C)]
1915#[doc(hidden)]
1916pub struct IMobileBroadbandModemIsolation_Vtbl {
1917 pub base__: ::windows::core::IInspectable_Vtbl,
1918 pub AddAllowedHost: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, host: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1919 pub AddAllowedHostRange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, first: *mut ::core::ffi::c_void, last: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1920 #[cfg(feature = "Foundation")]
1921 pub ApplyConfigurationAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1922 #[cfg(not(feature = "Foundation"))]
1923 ApplyConfigurationAsync: usize,
1924 #[cfg(feature = "Foundation")]
1925 pub ClearConfigurationAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1926 #[cfg(not(feature = "Foundation"))]
1927 ClearConfigurationAsync: usize,
1928}
1929#[doc(hidden)]
1930#[repr(transparent)]
1931pub struct IMobileBroadbandModemIsolationFactory(::windows::core::IUnknown);
1932unsafe impl ::windows::core::Interface for IMobileBroadbandModemIsolationFactory {
1933 type Vtable = IMobileBroadbandModemIsolationFactory_Vtbl;
1934}
1935impl ::core::clone::Clone for IMobileBroadbandModemIsolationFactory {
1936 fn clone(&self) -> Self {
1937 Self(self.0.clone())
1938 }
1939}
1940unsafe impl ::windows::core::ComInterface for IMobileBroadbandModemIsolationFactory {
1941 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x21d7ec58_c2b1_4c2f_a030_72820a24ecd9);
1942}
1943#[repr(C)]
1944#[doc(hidden)]
1945pub struct IMobileBroadbandModemIsolationFactory_Vtbl {
1946 pub base__: ::windows::core::IInspectable_Vtbl,
1947 pub Create: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, modemdeviceid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, rulegroupid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1948}
1949#[doc(hidden)]
1950#[repr(transparent)]
1951pub struct IMobileBroadbandModemStatics(::windows::core::IUnknown);
1952unsafe impl ::windows::core::Interface for IMobileBroadbandModemStatics {
1953 type Vtable = IMobileBroadbandModemStatics_Vtbl;
1954}
1955impl ::core::clone::Clone for IMobileBroadbandModemStatics {
1956 fn clone(&self) -> Self {
1957 Self(self.0.clone())
1958 }
1959}
1960unsafe impl ::windows::core::ComInterface for IMobileBroadbandModemStatics {
1961 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf99ed637_d6f1_4a78_8cbc_6421a65063c8);
1962}
1963#[repr(C)]
1964#[doc(hidden)]
1965pub struct IMobileBroadbandModemStatics_Vtbl {
1966 pub base__: ::windows::core::IInspectable_Vtbl,
1967 pub GetDeviceSelector: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1968 pub FromId: 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,
1969 pub GetDefault: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1970}
1971#[doc(hidden)]
1972#[repr(transparent)]
1973pub struct IMobileBroadbandNetwork(::windows::core::IUnknown);
1974unsafe impl ::windows::core::Interface for IMobileBroadbandNetwork {
1975 type Vtable = IMobileBroadbandNetwork_Vtbl;
1976}
1977impl ::core::clone::Clone for IMobileBroadbandNetwork {
1978 fn clone(&self) -> Self {
1979 Self(self.0.clone())
1980 }
1981}
1982unsafe impl ::windows::core::ComInterface for IMobileBroadbandNetwork {
1983 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcb63928c_0309_4cb6_a8c1_6a5a3c8e1ff6);
1984}
1985#[repr(C)]
1986#[doc(hidden)]
1987pub struct IMobileBroadbandNetwork_Vtbl {
1988 pub base__: ::windows::core::IInspectable_Vtbl,
1989 #[cfg(feature = "Networking_Connectivity")]
1990 pub NetworkAdapter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1991 #[cfg(not(feature = "Networking_Connectivity"))]
1992 NetworkAdapter: usize,
1993 pub NetworkRegistrationState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut NetworkRegistrationState) -> ::windows::core::HRESULT,
1994 pub RegistrationNetworkError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
1995 pub PacketAttachNetworkError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
1996 pub ActivationNetworkError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
1997 pub AccessPointName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
1998 pub RegisteredDataClass: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut DataClasses) -> ::windows::core::HRESULT,
1999 pub RegisteredProviderId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2000 pub RegisteredProviderName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2001 pub ShowConnectionUI: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2002}
2003#[doc(hidden)]
2004#[repr(transparent)]
2005pub struct IMobileBroadbandNetwork2(::windows::core::IUnknown);
2006unsafe impl ::windows::core::Interface for IMobileBroadbandNetwork2 {
2007 type Vtable = IMobileBroadbandNetwork2_Vtbl;
2008}
2009impl ::core::clone::Clone for IMobileBroadbandNetwork2 {
2010 fn clone(&self) -> Self {
2011 Self(self.0.clone())
2012 }
2013}
2014unsafe impl ::windows::core::ComInterface for IMobileBroadbandNetwork2 {
2015 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5a55db22_62f7_4bdd_ba1d_477441960ba0);
2016}
2017#[repr(C)]
2018#[doc(hidden)]
2019pub struct IMobileBroadbandNetwork2_Vtbl {
2020 pub base__: ::windows::core::IInspectable_Vtbl,
2021 #[cfg(feature = "Foundation")]
2022 pub GetVoiceCallSupportAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2023 #[cfg(not(feature = "Foundation"))]
2024 GetVoiceCallSupportAsync: usize,
2025 #[cfg(feature = "Foundation_Collections")]
2026 pub RegistrationUiccApps: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2027 #[cfg(not(feature = "Foundation_Collections"))]
2028 RegistrationUiccApps: usize,
2029}
2030#[doc(hidden)]
2031#[repr(transparent)]
2032pub struct IMobileBroadbandNetwork3(::windows::core::IUnknown);
2033unsafe impl ::windows::core::Interface for IMobileBroadbandNetwork3 {
2034 type Vtable = IMobileBroadbandNetwork3_Vtbl;
2035}
2036impl ::core::clone::Clone for IMobileBroadbandNetwork3 {
2037 fn clone(&self) -> Self {
2038 Self(self.0.clone())
2039 }
2040}
2041unsafe impl ::windows::core::ComInterface for IMobileBroadbandNetwork3 {
2042 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33670a8a_c7ef_444c_ab6c_df7ef7a390fe);
2043}
2044#[repr(C)]
2045#[doc(hidden)]
2046pub struct IMobileBroadbandNetwork3_Vtbl {
2047 pub base__: ::windows::core::IInspectable_Vtbl,
2048 #[cfg(feature = "Foundation")]
2049 pub GetCellsInfoAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2050 #[cfg(not(feature = "Foundation"))]
2051 GetCellsInfoAsync: usize,
2052}
2053#[doc(hidden)]
2054#[repr(transparent)]
2055pub struct IMobileBroadbandNetworkRegistrationStateChange(::windows::core::IUnknown);
2056unsafe impl ::windows::core::Interface for IMobileBroadbandNetworkRegistrationStateChange {
2057 type Vtable = IMobileBroadbandNetworkRegistrationStateChange_Vtbl;
2058}
2059impl ::core::clone::Clone for IMobileBroadbandNetworkRegistrationStateChange {
2060 fn clone(&self) -> Self {
2061 Self(self.0.clone())
2062 }
2063}
2064unsafe impl ::windows::core::ComInterface for IMobileBroadbandNetworkRegistrationStateChange {
2065 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbeaf94e1_960f_49b4_a08d_7d85e968c7ec);
2066}
2067#[repr(C)]
2068#[doc(hidden)]
2069pub struct IMobileBroadbandNetworkRegistrationStateChange_Vtbl {
2070 pub base__: ::windows::core::IInspectable_Vtbl,
2071 pub DeviceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2072 pub Network: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2073}
2074#[doc(hidden)]
2075#[repr(transparent)]
2076pub struct IMobileBroadbandNetworkRegistrationStateChangeTriggerDetails(::windows::core::IUnknown);
2077unsafe impl ::windows::core::Interface for IMobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
2078 type Vtable = IMobileBroadbandNetworkRegistrationStateChangeTriggerDetails_Vtbl;
2079}
2080impl ::core::clone::Clone for IMobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
2081 fn clone(&self) -> Self {
2082 Self(self.0.clone())
2083 }
2084}
2085unsafe impl ::windows::core::ComInterface for IMobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
2086 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x89135cff_28b8_46aa_b137_1c4b0f21edfe);
2087}
2088#[repr(C)]
2089#[doc(hidden)]
2090pub struct IMobileBroadbandNetworkRegistrationStateChangeTriggerDetails_Vtbl {
2091 pub base__: ::windows::core::IInspectable_Vtbl,
2092 #[cfg(feature = "Foundation_Collections")]
2093 pub NetworkRegistrationStateChanges: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2094 #[cfg(not(feature = "Foundation_Collections"))]
2095 NetworkRegistrationStateChanges: usize,
2096}
2097#[doc(hidden)]
2098#[repr(transparent)]
2099pub struct IMobileBroadbandPco(::windows::core::IUnknown);
2100unsafe impl ::windows::core::Interface for IMobileBroadbandPco {
2101 type Vtable = IMobileBroadbandPco_Vtbl;
2102}
2103impl ::core::clone::Clone for IMobileBroadbandPco {
2104 fn clone(&self) -> Self {
2105 Self(self.0.clone())
2106 }
2107}
2108unsafe impl ::windows::core::ComInterface for IMobileBroadbandPco {
2109 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd4e4fcbe_e3a3_43c5_a87b_6c86d229d7fa);
2110}
2111#[repr(C)]
2112#[doc(hidden)]
2113pub struct IMobileBroadbandPco_Vtbl {
2114 pub base__: ::windows::core::IInspectable_Vtbl,
2115 #[cfg(feature = "Storage_Streams")]
2116 pub Data: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2117 #[cfg(not(feature = "Storage_Streams"))]
2118 Data: usize,
2119 pub IsComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
2120 pub DeviceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2121}
2122#[doc(hidden)]
2123#[repr(transparent)]
2124pub struct IMobileBroadbandPcoDataChangeTriggerDetails(::windows::core::IUnknown);
2125unsafe impl ::windows::core::Interface for IMobileBroadbandPcoDataChangeTriggerDetails {
2126 type Vtable = IMobileBroadbandPcoDataChangeTriggerDetails_Vtbl;
2127}
2128impl ::core::clone::Clone for IMobileBroadbandPcoDataChangeTriggerDetails {
2129 fn clone(&self) -> Self {
2130 Self(self.0.clone())
2131 }
2132}
2133unsafe impl ::windows::core::ComInterface for IMobileBroadbandPcoDataChangeTriggerDetails {
2134 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x263f5114_64e0_4493_909b_2d14a01962b1);
2135}
2136#[repr(C)]
2137#[doc(hidden)]
2138pub struct IMobileBroadbandPcoDataChangeTriggerDetails_Vtbl {
2139 pub base__: ::windows::core::IInspectable_Vtbl,
2140 pub UpdatedData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2141}
2142#[doc(hidden)]
2143#[repr(transparent)]
2144pub struct IMobileBroadbandPin(::windows::core::IUnknown);
2145unsafe impl ::windows::core::Interface for IMobileBroadbandPin {
2146 type Vtable = IMobileBroadbandPin_Vtbl;
2147}
2148impl ::core::clone::Clone for IMobileBroadbandPin {
2149 fn clone(&self) -> Self {
2150 Self(self.0.clone())
2151 }
2152}
2153unsafe impl ::windows::core::ComInterface for IMobileBroadbandPin {
2154 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe661d709_e779_45bf_8281_75323df9e321);
2155}
2156#[repr(C)]
2157#[doc(hidden)]
2158pub struct IMobileBroadbandPin_Vtbl {
2159 pub base__: ::windows::core::IInspectable_Vtbl,
2160 pub Type: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandPinType) -> ::windows::core::HRESULT,
2161 pub LockState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandPinLockState) -> ::windows::core::HRESULT,
2162 pub Format: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandPinFormat) -> ::windows::core::HRESULT,
2163 pub Enabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
2164 pub MaxLength: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
2165 pub MinLength: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
2166 pub AttemptsRemaining: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
2167 #[cfg(feature = "Foundation")]
2168 pub EnableAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, currentpin: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2169 #[cfg(not(feature = "Foundation"))]
2170 EnableAsync: usize,
2171 #[cfg(feature = "Foundation")]
2172 pub DisableAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, currentpin: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2173 #[cfg(not(feature = "Foundation"))]
2174 DisableAsync: usize,
2175 #[cfg(feature = "Foundation")]
2176 pub EnterAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, currentpin: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2177 #[cfg(not(feature = "Foundation"))]
2178 EnterAsync: usize,
2179 #[cfg(feature = "Foundation")]
2180 pub ChangeAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, currentpin: ::std::mem::MaybeUninit<::windows::core::HSTRING>, newpin: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2181 #[cfg(not(feature = "Foundation"))]
2182 ChangeAsync: usize,
2183 #[cfg(feature = "Foundation")]
2184 pub UnblockAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinunblockkey: ::std::mem::MaybeUninit<::windows::core::HSTRING>, newpin: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2185 #[cfg(not(feature = "Foundation"))]
2186 UnblockAsync: usize,
2187}
2188#[doc(hidden)]
2189#[repr(transparent)]
2190pub struct IMobileBroadbandPinLockStateChange(::windows::core::IUnknown);
2191unsafe impl ::windows::core::Interface for IMobileBroadbandPinLockStateChange {
2192 type Vtable = IMobileBroadbandPinLockStateChange_Vtbl;
2193}
2194impl ::core::clone::Clone for IMobileBroadbandPinLockStateChange {
2195 fn clone(&self) -> Self {
2196 Self(self.0.clone())
2197 }
2198}
2199unsafe impl ::windows::core::ComInterface for IMobileBroadbandPinLockStateChange {
2200 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbe16673e_1f04_4f95_8b90_e7f559dde7e5);
2201}
2202#[repr(C)]
2203#[doc(hidden)]
2204pub struct IMobileBroadbandPinLockStateChange_Vtbl {
2205 pub base__: ::windows::core::IInspectable_Vtbl,
2206 pub DeviceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2207 pub PinType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandPinType) -> ::windows::core::HRESULT,
2208 pub PinLockState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandPinLockState) -> ::windows::core::HRESULT,
2209}
2210#[doc(hidden)]
2211#[repr(transparent)]
2212pub struct IMobileBroadbandPinLockStateChangeTriggerDetails(::windows::core::IUnknown);
2213unsafe impl ::windows::core::Interface for IMobileBroadbandPinLockStateChangeTriggerDetails {
2214 type Vtable = IMobileBroadbandPinLockStateChangeTriggerDetails_Vtbl;
2215}
2216impl ::core::clone::Clone for IMobileBroadbandPinLockStateChangeTriggerDetails {
2217 fn clone(&self) -> Self {
2218 Self(self.0.clone())
2219 }
2220}
2221unsafe impl ::windows::core::ComInterface for IMobileBroadbandPinLockStateChangeTriggerDetails {
2222 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd338c091_3e91_4d38_9036_aee83a6e79ad);
2223}
2224#[repr(C)]
2225#[doc(hidden)]
2226pub struct IMobileBroadbandPinLockStateChangeTriggerDetails_Vtbl {
2227 pub base__: ::windows::core::IInspectable_Vtbl,
2228 #[cfg(feature = "Foundation_Collections")]
2229 pub PinLockStateChanges: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2230 #[cfg(not(feature = "Foundation_Collections"))]
2231 PinLockStateChanges: usize,
2232}
2233#[doc(hidden)]
2234#[repr(transparent)]
2235pub struct IMobileBroadbandPinManager(::windows::core::IUnknown);
2236unsafe impl ::windows::core::Interface for IMobileBroadbandPinManager {
2237 type Vtable = IMobileBroadbandPinManager_Vtbl;
2238}
2239impl ::core::clone::Clone for IMobileBroadbandPinManager {
2240 fn clone(&self) -> Self {
2241 Self(self.0.clone())
2242 }
2243}
2244unsafe impl ::windows::core::ComInterface for IMobileBroadbandPinManager {
2245 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x83567edd_6e1f_4b9b_a413_2b1f50cc36df);
2246}
2247#[repr(C)]
2248#[doc(hidden)]
2249pub struct IMobileBroadbandPinManager_Vtbl {
2250 pub base__: ::windows::core::IInspectable_Vtbl,
2251 #[cfg(feature = "Foundation_Collections")]
2252 pub SupportedPins: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2253 #[cfg(not(feature = "Foundation_Collections"))]
2254 SupportedPins: usize,
2255 pub GetPin: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pintype: MobileBroadbandPinType, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2256}
2257#[doc(hidden)]
2258#[repr(transparent)]
2259pub struct IMobileBroadbandPinOperationResult(::windows::core::IUnknown);
2260unsafe impl ::windows::core::Interface for IMobileBroadbandPinOperationResult {
2261 type Vtable = IMobileBroadbandPinOperationResult_Vtbl;
2262}
2263impl ::core::clone::Clone for IMobileBroadbandPinOperationResult {
2264 fn clone(&self) -> Self {
2265 Self(self.0.clone())
2266 }
2267}
2268unsafe impl ::windows::core::ComInterface for IMobileBroadbandPinOperationResult {
2269 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x11dddc32_31e7_49f5_b663_123d3bef0362);
2270}
2271#[repr(C)]
2272#[doc(hidden)]
2273pub struct IMobileBroadbandPinOperationResult_Vtbl {
2274 pub base__: ::windows::core::IInspectable_Vtbl,
2275 pub IsSuccessful: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
2276 pub AttemptsRemaining: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
2277}
2278#[doc(hidden)]
2279#[repr(transparent)]
2280pub struct IMobileBroadbandRadioStateChange(::windows::core::IUnknown);
2281unsafe impl ::windows::core::Interface for IMobileBroadbandRadioStateChange {
2282 type Vtable = IMobileBroadbandRadioStateChange_Vtbl;
2283}
2284impl ::core::clone::Clone for IMobileBroadbandRadioStateChange {
2285 fn clone(&self) -> Self {
2286 Self(self.0.clone())
2287 }
2288}
2289unsafe impl ::windows::core::ComInterface for IMobileBroadbandRadioStateChange {
2290 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb054a561_9833_4aed_9717_4348b21a24b3);
2291}
2292#[repr(C)]
2293#[doc(hidden)]
2294pub struct IMobileBroadbandRadioStateChange_Vtbl {
2295 pub base__: ::windows::core::IInspectable_Vtbl,
2296 pub DeviceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2297 pub RadioState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandRadioState) -> ::windows::core::HRESULT,
2298}
2299#[doc(hidden)]
2300#[repr(transparent)]
2301pub struct IMobileBroadbandRadioStateChangeTriggerDetails(::windows::core::IUnknown);
2302unsafe impl ::windows::core::Interface for IMobileBroadbandRadioStateChangeTriggerDetails {
2303 type Vtable = IMobileBroadbandRadioStateChangeTriggerDetails_Vtbl;
2304}
2305impl ::core::clone::Clone for IMobileBroadbandRadioStateChangeTriggerDetails {
2306 fn clone(&self) -> Self {
2307 Self(self.0.clone())
2308 }
2309}
2310unsafe impl ::windows::core::ComInterface for IMobileBroadbandRadioStateChangeTriggerDetails {
2311 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71301ace_093c_42c6_b0db_ad1f75a65445);
2312}
2313#[repr(C)]
2314#[doc(hidden)]
2315pub struct IMobileBroadbandRadioStateChangeTriggerDetails_Vtbl {
2316 pub base__: ::windows::core::IInspectable_Vtbl,
2317 #[cfg(feature = "Foundation_Collections")]
2318 pub RadioStateChanges: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2319 #[cfg(not(feature = "Foundation_Collections"))]
2320 RadioStateChanges: usize,
2321}
2322#[doc(hidden)]
2323#[repr(transparent)]
2324pub struct IMobileBroadbandSarManager(::windows::core::IUnknown);
2325unsafe impl ::windows::core::Interface for IMobileBroadbandSarManager {
2326 type Vtable = IMobileBroadbandSarManager_Vtbl;
2327}
2328impl ::core::clone::Clone for IMobileBroadbandSarManager {
2329 fn clone(&self) -> Self {
2330 Self(self.0.clone())
2331 }
2332}
2333unsafe impl ::windows::core::ComInterface for IMobileBroadbandSarManager {
2334 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe5b26833_967e_40c9_a485_19c0dd209e22);
2335}
2336#[repr(C)]
2337#[doc(hidden)]
2338pub struct IMobileBroadbandSarManager_Vtbl {
2339 pub base__: ::windows::core::IInspectable_Vtbl,
2340 pub IsBackoffEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
2341 pub IsWiFiHardwareIntegrated: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
2342 pub IsSarControlledByHardware: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
2343 #[cfg(feature = "Foundation_Collections")]
2344 pub Antennas: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2345 #[cfg(not(feature = "Foundation_Collections"))]
2346 Antennas: usize,
2347 #[cfg(feature = "Foundation")]
2348 pub HysteresisTimerPeriod: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::core::HRESULT,
2349 #[cfg(not(feature = "Foundation"))]
2350 HysteresisTimerPeriod: usize,
2351 #[cfg(feature = "Foundation")]
2352 pub TransmissionStateChanged: 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,
2353 #[cfg(not(feature = "Foundation"))]
2354 TransmissionStateChanged: usize,
2355 #[cfg(feature = "Foundation")]
2356 pub RemoveTransmissionStateChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
2357 #[cfg(not(feature = "Foundation"))]
2358 RemoveTransmissionStateChanged: usize,
2359 #[cfg(feature = "Foundation")]
2360 pub EnableBackoffAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2361 #[cfg(not(feature = "Foundation"))]
2362 EnableBackoffAsync: usize,
2363 #[cfg(feature = "Foundation")]
2364 pub DisableBackoffAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2365 #[cfg(not(feature = "Foundation"))]
2366 DisableBackoffAsync: usize,
2367 #[cfg(feature = "Foundation_Collections")]
2368 pub SetConfigurationAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, antennas: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2369 #[cfg(not(feature = "Foundation_Collections"))]
2370 SetConfigurationAsync: usize,
2371 #[cfg(feature = "Foundation")]
2372 pub RevertSarToHardwareControlAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2373 #[cfg(not(feature = "Foundation"))]
2374 RevertSarToHardwareControlAsync: usize,
2375 #[cfg(feature = "Foundation")]
2376 pub SetTransmissionStateChangedHysteresisAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, timerperiod: super::super::Foundation::TimeSpan, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2377 #[cfg(not(feature = "Foundation"))]
2378 SetTransmissionStateChangedHysteresisAsync: usize,
2379 #[cfg(feature = "Foundation")]
2380 pub GetIsTransmittingAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2381 #[cfg(not(feature = "Foundation"))]
2382 GetIsTransmittingAsync: usize,
2383 pub StartTransmissionStateMonitoring: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2384 pub StopTransmissionStateMonitoring: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2385}
2386#[doc(hidden)]
2387#[repr(transparent)]
2388pub struct IMobileBroadbandSlotInfo(::windows::core::IUnknown);
2389unsafe impl ::windows::core::Interface for IMobileBroadbandSlotInfo {
2390 type Vtable = IMobileBroadbandSlotInfo_Vtbl;
2391}
2392impl ::core::clone::Clone for IMobileBroadbandSlotInfo {
2393 fn clone(&self) -> Self {
2394 Self(self.0.clone())
2395 }
2396}
2397unsafe impl ::windows::core::ComInterface for IMobileBroadbandSlotInfo {
2398 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbd350b32_882e_542a_b17d_0bb1b49bae9e);
2399}
2400#[repr(C)]
2401#[doc(hidden)]
2402pub struct IMobileBroadbandSlotInfo_Vtbl {
2403 pub base__: ::windows::core::IInspectable_Vtbl,
2404 pub Index: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut i32) -> ::windows::core::HRESULT,
2405 pub State: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandSlotState) -> ::windows::core::HRESULT,
2406}
2407#[doc(hidden)]
2408#[repr(transparent)]
2409pub struct IMobileBroadbandSlotInfo2(::windows::core::IUnknown);
2410unsafe impl ::windows::core::Interface for IMobileBroadbandSlotInfo2 {
2411 type Vtable = IMobileBroadbandSlotInfo2_Vtbl;
2412}
2413impl ::core::clone::Clone for IMobileBroadbandSlotInfo2 {
2414 fn clone(&self) -> Self {
2415 Self(self.0.clone())
2416 }
2417}
2418unsafe impl ::windows::core::ComInterface for IMobileBroadbandSlotInfo2 {
2419 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x393cb039_ca44_524c_822d_83a3620f0efc);
2420}
2421#[repr(C)]
2422#[doc(hidden)]
2423pub struct IMobileBroadbandSlotInfo2_Vtbl {
2424 pub base__: ::windows::core::IInspectable_Vtbl,
2425 pub IccId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2426}
2427#[doc(hidden)]
2428#[repr(transparent)]
2429pub struct IMobileBroadbandSlotInfoChangedEventArgs(::windows::core::IUnknown);
2430unsafe impl ::windows::core::Interface for IMobileBroadbandSlotInfoChangedEventArgs {
2431 type Vtable = IMobileBroadbandSlotInfoChangedEventArgs_Vtbl;
2432}
2433impl ::core::clone::Clone for IMobileBroadbandSlotInfoChangedEventArgs {
2434 fn clone(&self) -> Self {
2435 Self(self.0.clone())
2436 }
2437}
2438unsafe impl ::windows::core::ComInterface for IMobileBroadbandSlotInfoChangedEventArgs {
2439 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3158839f_950c_54ce_a48d_ba4529b48f0f);
2440}
2441#[repr(C)]
2442#[doc(hidden)]
2443pub struct IMobileBroadbandSlotInfoChangedEventArgs_Vtbl {
2444 pub base__: ::windows::core::IInspectable_Vtbl,
2445 pub SlotInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2446}
2447#[doc(hidden)]
2448#[repr(transparent)]
2449pub struct IMobileBroadbandSlotManager(::windows::core::IUnknown);
2450unsafe impl ::windows::core::Interface for IMobileBroadbandSlotManager {
2451 type Vtable = IMobileBroadbandSlotManager_Vtbl;
2452}
2453impl ::core::clone::Clone for IMobileBroadbandSlotManager {
2454 fn clone(&self) -> Self {
2455 Self(self.0.clone())
2456 }
2457}
2458unsafe impl ::windows::core::ComInterface for IMobileBroadbandSlotManager {
2459 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeba07cd6_2019_5f81_a294_cc364a11d0b2);
2460}
2461#[repr(C)]
2462#[doc(hidden)]
2463pub struct IMobileBroadbandSlotManager_Vtbl {
2464 pub base__: ::windows::core::IInspectable_Vtbl,
2465 #[cfg(feature = "Foundation_Collections")]
2466 pub SlotInfos: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2467 #[cfg(not(feature = "Foundation_Collections"))]
2468 SlotInfos: usize,
2469 pub CurrentSlotIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut i32) -> ::windows::core::HRESULT,
2470 pub SetCurrentSlot: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, slotindex: i32, result__: *mut MobileBroadbandModemStatus) -> ::windows::core::HRESULT,
2471 #[cfg(feature = "Foundation")]
2472 pub SetCurrentSlotAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, slotindex: i32, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2473 #[cfg(not(feature = "Foundation"))]
2474 SetCurrentSlotAsync: usize,
2475 #[cfg(feature = "Foundation")]
2476 pub SlotInfoChanged: 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,
2477 #[cfg(not(feature = "Foundation"))]
2478 SlotInfoChanged: usize,
2479 #[cfg(feature = "Foundation")]
2480 pub RemoveSlotInfoChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
2481 #[cfg(not(feature = "Foundation"))]
2482 RemoveSlotInfoChanged: usize,
2483 #[cfg(feature = "Foundation")]
2484 pub CurrentSlotIndexChanged: 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,
2485 #[cfg(not(feature = "Foundation"))]
2486 CurrentSlotIndexChanged: usize,
2487 #[cfg(feature = "Foundation")]
2488 pub RemoveCurrentSlotIndexChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::HRESULT,
2489 #[cfg(not(feature = "Foundation"))]
2490 RemoveCurrentSlotIndexChanged: usize,
2491}
2492#[doc(hidden)]
2493#[repr(transparent)]
2494pub struct IMobileBroadbandTransmissionStateChangedEventArgs(::windows::core::IUnknown);
2495unsafe impl ::windows::core::Interface for IMobileBroadbandTransmissionStateChangedEventArgs {
2496 type Vtable = IMobileBroadbandTransmissionStateChangedEventArgs_Vtbl;
2497}
2498impl ::core::clone::Clone for IMobileBroadbandTransmissionStateChangedEventArgs {
2499 fn clone(&self) -> Self {
2500 Self(self.0.clone())
2501 }
2502}
2503unsafe impl ::windows::core::ComInterface for IMobileBroadbandTransmissionStateChangedEventArgs {
2504 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x612e3875_040a_4f99_a4f9_61d7c32da129);
2505}
2506#[repr(C)]
2507#[doc(hidden)]
2508pub struct IMobileBroadbandTransmissionStateChangedEventArgs_Vtbl {
2509 pub base__: ::windows::core::IInspectable_Vtbl,
2510 pub IsTransmitting: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
2511}
2512#[doc(hidden)]
2513#[repr(transparent)]
2514pub struct IMobileBroadbandUicc(::windows::core::IUnknown);
2515unsafe impl ::windows::core::Interface for IMobileBroadbandUicc {
2516 type Vtable = IMobileBroadbandUicc_Vtbl;
2517}
2518impl ::core::clone::Clone for IMobileBroadbandUicc {
2519 fn clone(&self) -> Self {
2520 Self(self.0.clone())
2521 }
2522}
2523unsafe impl ::windows::core::ComInterface for IMobileBroadbandUicc {
2524 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe634f691_525a_4ce2_8fce_aa4162579154);
2525}
2526#[repr(C)]
2527#[doc(hidden)]
2528pub struct IMobileBroadbandUicc_Vtbl {
2529 pub base__: ::windows::core::IInspectable_Vtbl,
2530 pub SimIccId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2531 #[cfg(feature = "Foundation")]
2532 pub GetUiccAppsAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2533 #[cfg(not(feature = "Foundation"))]
2534 GetUiccAppsAsync: usize,
2535}
2536#[doc(hidden)]
2537#[repr(transparent)]
2538pub struct IMobileBroadbandUiccApp(::windows::core::IUnknown);
2539unsafe impl ::windows::core::Interface for IMobileBroadbandUiccApp {
2540 type Vtable = IMobileBroadbandUiccApp_Vtbl;
2541}
2542impl ::core::clone::Clone for IMobileBroadbandUiccApp {
2543 fn clone(&self) -> Self {
2544 Self(self.0.clone())
2545 }
2546}
2547unsafe impl ::windows::core::ComInterface for IMobileBroadbandUiccApp {
2548 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4d170556_98a1_43dd_b2ec_50c90cf248df);
2549}
2550#[repr(C)]
2551#[doc(hidden)]
2552pub struct IMobileBroadbandUiccApp_Vtbl {
2553 pub base__: ::windows::core::IInspectable_Vtbl,
2554 #[cfg(feature = "Storage_Streams")]
2555 pub Id: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2556 #[cfg(not(feature = "Storage_Streams"))]
2557 Id: usize,
2558 pub Kind: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut UiccAppKind) -> ::windows::core::HRESULT,
2559 #[cfg(feature = "Foundation_Collections")]
2560 pub GetRecordDetailsAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uiccfilepath: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2561 #[cfg(not(feature = "Foundation_Collections"))]
2562 GetRecordDetailsAsync: usize,
2563 #[cfg(feature = "Foundation_Collections")]
2564 pub ReadRecordAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, uiccfilepath: *mut ::core::ffi::c_void, recordindex: i32, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2565 #[cfg(not(feature = "Foundation_Collections"))]
2566 ReadRecordAsync: usize,
2567}
2568#[doc(hidden)]
2569#[repr(transparent)]
2570pub struct IMobileBroadbandUiccAppReadRecordResult(::windows::core::IUnknown);
2571unsafe impl ::windows::core::Interface for IMobileBroadbandUiccAppReadRecordResult {
2572 type Vtable = IMobileBroadbandUiccAppReadRecordResult_Vtbl;
2573}
2574impl ::core::clone::Clone for IMobileBroadbandUiccAppReadRecordResult {
2575 fn clone(&self) -> Self {
2576 Self(self.0.clone())
2577 }
2578}
2579unsafe impl ::windows::core::ComInterface for IMobileBroadbandUiccAppReadRecordResult {
2580 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x64c95285_358e_47c5_8249_695f383b2bdb);
2581}
2582#[repr(C)]
2583#[doc(hidden)]
2584pub struct IMobileBroadbandUiccAppReadRecordResult_Vtbl {
2585 pub base__: ::windows::core::IInspectable_Vtbl,
2586 pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandUiccAppOperationStatus) -> ::windows::core::HRESULT,
2587 #[cfg(feature = "Storage_Streams")]
2588 pub Data: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2589 #[cfg(not(feature = "Storage_Streams"))]
2590 Data: usize,
2591}
2592#[doc(hidden)]
2593#[repr(transparent)]
2594pub struct IMobileBroadbandUiccAppRecordDetailsResult(::windows::core::IUnknown);
2595unsafe impl ::windows::core::Interface for IMobileBroadbandUiccAppRecordDetailsResult {
2596 type Vtable = IMobileBroadbandUiccAppRecordDetailsResult_Vtbl;
2597}
2598impl ::core::clone::Clone for IMobileBroadbandUiccAppRecordDetailsResult {
2599 fn clone(&self) -> Self {
2600 Self(self.0.clone())
2601 }
2602}
2603unsafe impl ::windows::core::ComInterface for IMobileBroadbandUiccAppRecordDetailsResult {
2604 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd919682f_be14_4934_981d_2f57b9ed83e6);
2605}
2606#[repr(C)]
2607#[doc(hidden)]
2608pub struct IMobileBroadbandUiccAppRecordDetailsResult_Vtbl {
2609 pub base__: ::windows::core::IInspectable_Vtbl,
2610 pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandUiccAppOperationStatus) -> ::windows::core::HRESULT,
2611 pub Kind: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut UiccAppRecordKind) -> ::windows::core::HRESULT,
2612 pub RecordCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut i32) -> ::windows::core::HRESULT,
2613 pub RecordSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut i32) -> ::windows::core::HRESULT,
2614 pub ReadAccessCondition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut UiccAccessCondition) -> ::windows::core::HRESULT,
2615 pub WriteAccessCondition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut UiccAccessCondition) -> ::windows::core::HRESULT,
2616}
2617#[doc(hidden)]
2618#[repr(transparent)]
2619pub struct IMobileBroadbandUiccAppsResult(::windows::core::IUnknown);
2620unsafe impl ::windows::core::Interface for IMobileBroadbandUiccAppsResult {
2621 type Vtable = IMobileBroadbandUiccAppsResult_Vtbl;
2622}
2623impl ::core::clone::Clone for IMobileBroadbandUiccAppsResult {
2624 fn clone(&self) -> Self {
2625 Self(self.0.clone())
2626 }
2627}
2628unsafe impl ::windows::core::ComInterface for IMobileBroadbandUiccAppsResult {
2629 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x744930eb_8157_4a41_8494_6bf54c9b1d2b);
2630}
2631#[repr(C)]
2632#[doc(hidden)]
2633pub struct IMobileBroadbandUiccAppsResult_Vtbl {
2634 pub base__: ::windows::core::IInspectable_Vtbl,
2635 pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut MobileBroadbandUiccAppOperationStatus) -> ::windows::core::HRESULT,
2636 #[cfg(feature = "Foundation_Collections")]
2637 pub UiccApps: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2638 #[cfg(not(feature = "Foundation_Collections"))]
2639 UiccApps: usize,
2640}
2641#[doc(hidden)]
2642#[repr(transparent)]
2643pub struct INetworkOperatorDataUsageTriggerDetails(::windows::core::IUnknown);
2644unsafe impl ::windows::core::Interface for INetworkOperatorDataUsageTriggerDetails {
2645 type Vtable = INetworkOperatorDataUsageTriggerDetails_Vtbl;
2646}
2647impl ::core::clone::Clone for INetworkOperatorDataUsageTriggerDetails {
2648 fn clone(&self) -> Self {
2649 Self(self.0.clone())
2650 }
2651}
2652unsafe impl ::windows::core::ComInterface for INetworkOperatorDataUsageTriggerDetails {
2653 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x50e3126d_a465_4eeb_9317_28a167630cea);
2654}
2655#[repr(C)]
2656#[doc(hidden)]
2657pub struct INetworkOperatorDataUsageTriggerDetails_Vtbl {
2658 pub base__: ::windows::core::IInspectable_Vtbl,
2659 pub NotificationKind: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut NetworkOperatorDataUsageNotificationKind) -> ::windows::core::HRESULT,
2660}
2661#[doc(hidden)]
2662#[repr(transparent)]
2663pub struct INetworkOperatorNotificationEventDetails(::windows::core::IUnknown);
2664unsafe impl ::windows::core::Interface for INetworkOperatorNotificationEventDetails {
2665 type Vtable = INetworkOperatorNotificationEventDetails_Vtbl;
2666}
2667impl ::core::clone::Clone for INetworkOperatorNotificationEventDetails {
2668 fn clone(&self) -> Self {
2669 Self(self.0.clone())
2670 }
2671}
2672unsafe impl ::windows::core::ComInterface for INetworkOperatorNotificationEventDetails {
2673 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbc68a9d1_82e1_4488_9f2c_1276c2468fac);
2674}
2675#[repr(C)]
2676#[doc(hidden)]
2677pub struct INetworkOperatorNotificationEventDetails_Vtbl {
2678 pub base__: ::windows::core::IInspectable_Vtbl,
2679 pub NotificationType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut NetworkOperatorEventMessageType) -> ::windows::core::HRESULT,
2680 pub NetworkAccountId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2681 pub EncodingType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u8) -> ::windows::core::HRESULT,
2682 pub Message: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2683 pub RuleId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2684 #[cfg(feature = "Devices_Sms")]
2685 pub SmsMessage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2686 #[cfg(not(feature = "Devices_Sms"))]
2687 SmsMessage: usize,
2688}
2689#[doc(hidden)]
2690#[repr(transparent)]
2691pub struct INetworkOperatorTetheringAccessPointConfiguration(::windows::core::IUnknown);
2692unsafe impl ::windows::core::Interface for INetworkOperatorTetheringAccessPointConfiguration {
2693 type Vtable = INetworkOperatorTetheringAccessPointConfiguration_Vtbl;
2694}
2695impl ::core::clone::Clone for INetworkOperatorTetheringAccessPointConfiguration {
2696 fn clone(&self) -> Self {
2697 Self(self.0.clone())
2698 }
2699}
2700unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringAccessPointConfiguration {
2701 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0bcc0284_412e_403d_acc6_b757e34774a4);
2702}
2703#[repr(C)]
2704#[doc(hidden)]
2705pub struct INetworkOperatorTetheringAccessPointConfiguration_Vtbl {
2706 pub base__: ::windows::core::IInspectable_Vtbl,
2707 pub Ssid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2708 pub SetSsid: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2709 pub Passphrase: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2710 pub SetPassphrase: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2711}
2712#[doc(hidden)]
2713#[repr(transparent)]
2714pub struct INetworkOperatorTetheringAccessPointConfiguration2(::windows::core::IUnknown);
2715unsafe impl ::windows::core::Interface for INetworkOperatorTetheringAccessPointConfiguration2 {
2716 type Vtable = INetworkOperatorTetheringAccessPointConfiguration2_Vtbl;
2717}
2718impl ::core::clone::Clone for INetworkOperatorTetheringAccessPointConfiguration2 {
2719 fn clone(&self) -> Self {
2720 Self(self.0.clone())
2721 }
2722}
2723unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringAccessPointConfiguration2 {
2724 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb1809142_7238_59a0_928b_74ab46fd64b6);
2725}
2726#[repr(C)]
2727#[doc(hidden)]
2728pub struct INetworkOperatorTetheringAccessPointConfiguration2_Vtbl {
2729 pub base__: ::windows::core::IInspectable_Vtbl,
2730 pub IsBandSupported: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, band: TetheringWiFiBand, result__: *mut bool) -> ::windows::core::HRESULT,
2731 #[cfg(feature = "Foundation")]
2732 pub IsBandSupportedAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, band: TetheringWiFiBand, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2733 #[cfg(not(feature = "Foundation"))]
2734 IsBandSupportedAsync: usize,
2735 pub Band: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut TetheringWiFiBand) -> ::windows::core::HRESULT,
2736 pub SetBand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: TetheringWiFiBand) -> ::windows::core::HRESULT,
2737}
2738#[doc(hidden)]
2739#[repr(transparent)]
2740pub struct INetworkOperatorTetheringClient(::windows::core::IUnknown);
2741unsafe impl ::windows::core::Interface for INetworkOperatorTetheringClient {
2742 type Vtable = INetworkOperatorTetheringClient_Vtbl;
2743}
2744impl ::core::clone::Clone for INetworkOperatorTetheringClient {
2745 fn clone(&self) -> Self {
2746 Self(self.0.clone())
2747 }
2748}
2749unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringClient {
2750 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x709d254c_595f_4847_bb30_646935542918);
2751}
2752#[repr(C)]
2753#[doc(hidden)]
2754pub struct INetworkOperatorTetheringClient_Vtbl {
2755 pub base__: ::windows::core::IInspectable_Vtbl,
2756 pub MacAddress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2757 #[cfg(feature = "Foundation_Collections")]
2758 pub HostNames: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2759 #[cfg(not(feature = "Foundation_Collections"))]
2760 HostNames: usize,
2761}
2762#[doc(hidden)]
2763#[repr(transparent)]
2764pub struct INetworkOperatorTetheringClientManager(::windows::core::IUnknown);
2765unsafe impl ::windows::core::Interface for INetworkOperatorTetheringClientManager {
2766 type Vtable = INetworkOperatorTetheringClientManager_Vtbl;
2767}
2768impl ::core::clone::Clone for INetworkOperatorTetheringClientManager {
2769 fn clone(&self) -> Self {
2770 Self(self.0.clone())
2771 }
2772}
2773unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringClientManager {
2774 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x91b14016_8dca_4225_bbed_eef8b8d718d7);
2775}
2776#[repr(C)]
2777#[doc(hidden)]
2778pub struct INetworkOperatorTetheringClientManager_Vtbl {
2779 pub base__: ::windows::core::IInspectable_Vtbl,
2780 #[cfg(feature = "Foundation_Collections")]
2781 pub GetTetheringClients: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2782 #[cfg(not(feature = "Foundation_Collections"))]
2783 GetTetheringClients: usize,
2784}
2785#[doc(hidden)]
2786#[repr(transparent)]
2787pub struct INetworkOperatorTetheringEntitlementCheck(::windows::core::IUnknown);
2788unsafe impl ::windows::core::Interface for INetworkOperatorTetheringEntitlementCheck {
2789 type Vtable = INetworkOperatorTetheringEntitlementCheck_Vtbl;
2790}
2791impl ::core::clone::Clone for INetworkOperatorTetheringEntitlementCheck {
2792 fn clone(&self) -> Self {
2793 Self(self.0.clone())
2794 }
2795}
2796unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringEntitlementCheck {
2797 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0108916d_9e9a_4af6_8da3_60493b19c204);
2798}
2799#[repr(C)]
2800#[doc(hidden)]
2801pub struct INetworkOperatorTetheringEntitlementCheck_Vtbl {
2802 pub base__: ::windows::core::IInspectable_Vtbl,
2803 pub AuthorizeTethering: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, allow: bool, entitlementfailurereason: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2804}
2805#[doc(hidden)]
2806#[repr(transparent)]
2807pub struct INetworkOperatorTetheringManager(::windows::core::IUnknown);
2808unsafe impl ::windows::core::Interface for INetworkOperatorTetheringManager {
2809 type Vtable = INetworkOperatorTetheringManager_Vtbl;
2810}
2811impl ::core::clone::Clone for INetworkOperatorTetheringManager {
2812 fn clone(&self) -> Self {
2813 Self(self.0.clone())
2814 }
2815}
2816unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringManager {
2817 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd45a8da0_0e86_4d98_8ba4_dd70d4b764d3);
2818}
2819#[repr(C)]
2820#[doc(hidden)]
2821pub struct INetworkOperatorTetheringManager_Vtbl {
2822 pub base__: ::windows::core::IInspectable_Vtbl,
2823 pub MaxClientCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
2824 pub ClientCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT,
2825 pub TetheringOperationalState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut TetheringOperationalState) -> ::windows::core::HRESULT,
2826 pub GetCurrentAccessPointConfiguration: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2827 #[cfg(feature = "Foundation")]
2828 pub ConfigureAccessPointAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, configuration: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2829 #[cfg(not(feature = "Foundation"))]
2830 ConfigureAccessPointAsync: usize,
2831 #[cfg(feature = "Foundation")]
2832 pub StartTetheringAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2833 #[cfg(not(feature = "Foundation"))]
2834 StartTetheringAsync: usize,
2835 #[cfg(feature = "Foundation")]
2836 pub StopTetheringAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2837 #[cfg(not(feature = "Foundation"))]
2838 StopTetheringAsync: usize,
2839}
2840#[doc(hidden)]
2841#[repr(transparent)]
2842pub struct INetworkOperatorTetheringManagerStatics(::windows::core::IUnknown);
2843unsafe impl ::windows::core::Interface for INetworkOperatorTetheringManagerStatics {
2844 type Vtable = INetworkOperatorTetheringManagerStatics_Vtbl;
2845}
2846impl ::core::clone::Clone for INetworkOperatorTetheringManagerStatics {
2847 fn clone(&self) -> Self {
2848 Self(self.0.clone())
2849 }
2850}
2851unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringManagerStatics {
2852 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3ebcbacc_f8c3_405c_9964_70a1eeabe194);
2853}
2854#[repr(C)]
2855#[doc(hidden)]
2856pub struct INetworkOperatorTetheringManagerStatics_Vtbl {
2857 pub base__: ::windows::core::IInspectable_Vtbl,
2858 pub GetTetheringCapability: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, networkaccountid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut TetheringCapability) -> ::windows::core::HRESULT,
2859 pub CreateFromNetworkAccountId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, networkaccountid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2860}
2861#[doc(hidden)]
2862#[repr(transparent)]
2863pub struct INetworkOperatorTetheringManagerStatics2(::windows::core::IUnknown);
2864unsafe impl ::windows::core::Interface for INetworkOperatorTetheringManagerStatics2 {
2865 type Vtable = INetworkOperatorTetheringManagerStatics2_Vtbl;
2866}
2867impl ::core::clone::Clone for INetworkOperatorTetheringManagerStatics2 {
2868 fn clone(&self) -> Self {
2869 Self(self.0.clone())
2870 }
2871}
2872unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringManagerStatics2 {
2873 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5b235412_35f0_49e7_9b08_16d278fbaa42);
2874}
2875#[repr(C)]
2876#[doc(hidden)]
2877pub struct INetworkOperatorTetheringManagerStatics2_Vtbl {
2878 pub base__: ::windows::core::IInspectable_Vtbl,
2879 #[cfg(feature = "Networking_Connectivity")]
2880 pub GetTetheringCapabilityFromConnectionProfile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, profile: *mut ::core::ffi::c_void, result__: *mut TetheringCapability) -> ::windows::core::HRESULT,
2881 #[cfg(not(feature = "Networking_Connectivity"))]
2882 GetTetheringCapabilityFromConnectionProfile: usize,
2883 #[cfg(feature = "Networking_Connectivity")]
2884 pub CreateFromConnectionProfile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, profile: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2885 #[cfg(not(feature = "Networking_Connectivity"))]
2886 CreateFromConnectionProfile: usize,
2887}
2888#[doc(hidden)]
2889#[repr(transparent)]
2890pub struct INetworkOperatorTetheringManagerStatics3(::windows::core::IUnknown);
2891unsafe impl ::windows::core::Interface for INetworkOperatorTetheringManagerStatics3 {
2892 type Vtable = INetworkOperatorTetheringManagerStatics3_Vtbl;
2893}
2894impl ::core::clone::Clone for INetworkOperatorTetheringManagerStatics3 {
2895 fn clone(&self) -> Self {
2896 Self(self.0.clone())
2897 }
2898}
2899unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringManagerStatics3 {
2900 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8fdaadb6_4af9_4f21_9b58_d53e9f24231e);
2901}
2902#[repr(C)]
2903#[doc(hidden)]
2904pub struct INetworkOperatorTetheringManagerStatics3_Vtbl {
2905 pub base__: ::windows::core::IInspectable_Vtbl,
2906 #[cfg(feature = "Networking_Connectivity")]
2907 pub CreateFromConnectionProfileWithTargetAdapter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, profile: *mut ::core::ffi::c_void, adapter: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2908 #[cfg(not(feature = "Networking_Connectivity"))]
2909 CreateFromConnectionProfileWithTargetAdapter: usize,
2910}
2911#[doc(hidden)]
2912#[repr(transparent)]
2913pub struct INetworkOperatorTetheringManagerStatics4(::windows::core::IUnknown);
2914unsafe impl ::windows::core::Interface for INetworkOperatorTetheringManagerStatics4 {
2915 type Vtable = INetworkOperatorTetheringManagerStatics4_Vtbl;
2916}
2917impl ::core::clone::Clone for INetworkOperatorTetheringManagerStatics4 {
2918 fn clone(&self) -> Self {
2919 Self(self.0.clone())
2920 }
2921}
2922unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringManagerStatics4 {
2923 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb3b9f9d0_ebff_46a4_a847_d663d8b0977e);
2924}
2925#[repr(C)]
2926#[doc(hidden)]
2927pub struct INetworkOperatorTetheringManagerStatics4_Vtbl {
2928 pub base__: ::windows::core::IInspectable_Vtbl,
2929 pub IsNoConnectionsTimeoutEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
2930 pub EnableNoConnectionsTimeout: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2931 #[cfg(feature = "Foundation")]
2932 pub EnableNoConnectionsTimeoutAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2933 #[cfg(not(feature = "Foundation"))]
2934 EnableNoConnectionsTimeoutAsync: usize,
2935 pub DisableNoConnectionsTimeout: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2936 #[cfg(feature = "Foundation")]
2937 pub DisableNoConnectionsTimeoutAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2938 #[cfg(not(feature = "Foundation"))]
2939 DisableNoConnectionsTimeoutAsync: usize,
2940}
2941#[doc(hidden)]
2942#[repr(transparent)]
2943pub struct INetworkOperatorTetheringOperationResult(::windows::core::IUnknown);
2944unsafe impl ::windows::core::Interface for INetworkOperatorTetheringOperationResult {
2945 type Vtable = INetworkOperatorTetheringOperationResult_Vtbl;
2946}
2947impl ::core::clone::Clone for INetworkOperatorTetheringOperationResult {
2948 fn clone(&self) -> Self {
2949 Self(self.0.clone())
2950 }
2951}
2952unsafe impl ::windows::core::ComInterface for INetworkOperatorTetheringOperationResult {
2953 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xebd203a1_01ba_476d_b4b3_bf3d12c8f80c);
2954}
2955#[repr(C)]
2956#[doc(hidden)]
2957pub struct INetworkOperatorTetheringOperationResult_Vtbl {
2958 pub base__: ::windows::core::IInspectable_Vtbl,
2959 pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut TetheringOperationStatus) -> ::windows::core::HRESULT,
2960 pub AdditionalErrorMessage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2961}
2962#[doc(hidden)]
2963#[repr(transparent)]
2964pub struct IProvisionFromXmlDocumentResults(::windows::core::IUnknown);
2965unsafe impl ::windows::core::Interface for IProvisionFromXmlDocumentResults {
2966 type Vtable = IProvisionFromXmlDocumentResults_Vtbl;
2967}
2968impl ::core::clone::Clone for IProvisionFromXmlDocumentResults {
2969 fn clone(&self) -> Self {
2970 Self(self.0.clone())
2971 }
2972}
2973unsafe impl ::windows::core::ComInterface for IProvisionFromXmlDocumentResults {
2974 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x217700e0_8203_11df_adb9_f4ce462d9137);
2975}
2976#[repr(C)]
2977#[doc(hidden)]
2978pub struct IProvisionFromXmlDocumentResults_Vtbl {
2979 pub base__: ::windows::core::IInspectable_Vtbl,
2980 pub AllElementsProvisioned: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
2981 pub ProvisionResultsXml: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
2982}
2983#[doc(hidden)]
2984#[repr(transparent)]
2985pub struct IProvisionedProfile(::windows::core::IUnknown);
2986unsafe impl ::windows::core::Interface for IProvisionedProfile {
2987 type Vtable = IProvisionedProfile_Vtbl;
2988}
2989impl ::core::clone::Clone for IProvisionedProfile {
2990 fn clone(&self) -> Self {
2991 Self(self.0.clone())
2992 }
2993}
2994unsafe impl ::windows::core::ComInterface for IProvisionedProfile {
2995 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x217700e0_8202_11df_adb9_f4ce462d9137);
2996}
2997#[repr(C)]
2998#[doc(hidden)]
2999pub struct IProvisionedProfile_Vtbl {
3000 pub base__: ::windows::core::IInspectable_Vtbl,
3001 #[cfg(feature = "Networking_Connectivity")]
3002 pub UpdateCost: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: super::Connectivity::NetworkCostType) -> ::windows::core::HRESULT,
3003 #[cfg(not(feature = "Networking_Connectivity"))]
3004 UpdateCost: usize,
3005 #[cfg(feature = "Foundation")]
3006 pub UpdateUsage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: ProfileUsage) -> ::windows::core::HRESULT,
3007 #[cfg(not(feature = "Foundation"))]
3008 UpdateUsage: usize,
3009}
3010#[doc(hidden)]
3011#[repr(transparent)]
3012pub struct IProvisioningAgent(::windows::core::IUnknown);
3013unsafe impl ::windows::core::Interface for IProvisioningAgent {
3014 type Vtable = IProvisioningAgent_Vtbl;
3015}
3016impl ::core::clone::Clone for IProvisioningAgent {
3017 fn clone(&self) -> Self {
3018 Self(self.0.clone())
3019 }
3020}
3021unsafe impl ::windows::core::ComInterface for IProvisioningAgent {
3022 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x217700e0_8201_11df_adb9_f4ce462d9137);
3023}
3024#[repr(C)]
3025#[doc(hidden)]
3026pub struct IProvisioningAgent_Vtbl {
3027 pub base__: ::windows::core::IInspectable_Vtbl,
3028 #[cfg(feature = "Foundation")]
3029 pub ProvisionFromXmlDocumentAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, provisioningxmldocument: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3030 #[cfg(not(feature = "Foundation"))]
3031 ProvisionFromXmlDocumentAsync: usize,
3032 pub GetProvisionedProfile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mediatype: ProfileMediaType, profilename: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3033}
3034#[doc(hidden)]
3035#[repr(transparent)]
3036pub struct IProvisioningAgentStaticMethods(::windows::core::IUnknown);
3037unsafe impl ::windows::core::Interface for IProvisioningAgentStaticMethods {
3038 type Vtable = IProvisioningAgentStaticMethods_Vtbl;
3039}
3040impl ::core::clone::Clone for IProvisioningAgentStaticMethods {
3041 fn clone(&self) -> Self {
3042 Self(self.0.clone())
3043 }
3044}
3045unsafe impl ::windows::core::ComInterface for IProvisioningAgentStaticMethods {
3046 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x217700e0_8101_11df_adb9_f4ce462d9137);
3047}
3048#[repr(C)]
3049#[doc(hidden)]
3050pub struct IProvisioningAgentStaticMethods_Vtbl {
3051 pub base__: ::windows::core::IInspectable_Vtbl,
3052 pub CreateFromNetworkAccountId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, networkaccountid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3053}
3054#[doc(hidden)]
3055#[repr(transparent)]
3056pub struct ITetheringEntitlementCheckTriggerDetails(::windows::core::IUnknown);
3057unsafe impl ::windows::core::Interface for ITetheringEntitlementCheckTriggerDetails {
3058 type Vtable = ITetheringEntitlementCheckTriggerDetails_Vtbl;
3059}
3060impl ::core::clone::Clone for ITetheringEntitlementCheckTriggerDetails {
3061 fn clone(&self) -> Self {
3062 Self(self.0.clone())
3063 }
3064}
3065unsafe impl ::windows::core::ComInterface for ITetheringEntitlementCheckTriggerDetails {
3066 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x03c65e9d_5926_41f3_a94e_b50926fc421b);
3067}
3068#[repr(C)]
3069#[doc(hidden)]
3070pub struct ITetheringEntitlementCheckTriggerDetails_Vtbl {
3071 pub base__: ::windows::core::IInspectable_Vtbl,
3072 pub NetworkAccountId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
3073 pub AllowTethering: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3074 pub DenyTethering: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, entitlementfailurereason: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
3075}
3076#[doc(hidden)]
3077#[repr(transparent)]
3078pub struct IUssdMessage(::windows::core::IUnknown);
3079unsafe impl ::windows::core::Interface for IUssdMessage {
3080 type Vtable = IUssdMessage_Vtbl;
3081}
3082impl ::core::clone::Clone for IUssdMessage {
3083 fn clone(&self) -> Self {
3084 Self(self.0.clone())
3085 }
3086}
3087unsafe impl ::windows::core::ComInterface for IUssdMessage {
3088 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f9acf82_2004_4d5d_bf81_2aba1b4be4a8);
3089}
3090#[repr(C)]
3091#[doc(hidden)]
3092pub struct IUssdMessage_Vtbl {
3093 pub base__: ::windows::core::IInspectable_Vtbl,
3094 pub DataCodingScheme: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut u8) -> ::windows::core::HRESULT,
3095 pub SetDataCodingScheme: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: u8) -> ::windows::core::HRESULT,
3096 pub GetPayload: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result_size__: *mut u32, result__: *mut *mut u8) -> ::windows::core::HRESULT,
3097 pub SetPayload: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value_array_size: u32, value: *const u8) -> ::windows::core::HRESULT,
3098 pub PayloadAsText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
3099 pub SetPayloadAsText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT,
3100}
3101#[doc(hidden)]
3102#[repr(transparent)]
3103pub struct IUssdMessageFactory(::windows::core::IUnknown);
3104unsafe impl ::windows::core::Interface for IUssdMessageFactory {
3105 type Vtable = IUssdMessageFactory_Vtbl;
3106}
3107impl ::core::clone::Clone for IUssdMessageFactory {
3108 fn clone(&self) -> Self {
3109 Self(self.0.clone())
3110 }
3111}
3112unsafe impl ::windows::core::ComInterface for IUssdMessageFactory {
3113 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f9acf82_1003_4d5d_bf81_2aba1b4be4a8);
3114}
3115#[repr(C)]
3116#[doc(hidden)]
3117pub struct IUssdMessageFactory_Vtbl {
3118 pub base__: ::windows::core::IInspectable_Vtbl,
3119 pub CreateMessage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, messagetext: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3120}
3121#[doc(hidden)]
3122#[repr(transparent)]
3123pub struct IUssdReply(::windows::core::IUnknown);
3124unsafe impl ::windows::core::Interface for IUssdReply {
3125 type Vtable = IUssdReply_Vtbl;
3126}
3127impl ::core::clone::Clone for IUssdReply {
3128 fn clone(&self) -> Self {
3129 Self(self.0.clone())
3130 }
3131}
3132unsafe impl ::windows::core::ComInterface for IUssdReply {
3133 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f9acf82_2005_4d5d_bf81_2aba1b4be4a8);
3134}
3135#[repr(C)]
3136#[doc(hidden)]
3137pub struct IUssdReply_Vtbl {
3138 pub base__: ::windows::core::IInspectable_Vtbl,
3139 pub ResultCode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut UssdResultCode) -> ::windows::core::HRESULT,
3140 pub Message: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3141}
3142#[doc(hidden)]
3143#[repr(transparent)]
3144pub struct IUssdSession(::windows::core::IUnknown);
3145unsafe impl ::windows::core::Interface for IUssdSession {
3146 type Vtable = IUssdSession_Vtbl;
3147}
3148impl ::core::clone::Clone for IUssdSession {
3149 fn clone(&self) -> Self {
3150 Self(self.0.clone())
3151 }
3152}
3153unsafe impl ::windows::core::ComInterface for IUssdSession {
3154 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f9acf82_2002_4d5d_bf81_2aba1b4be4a8);
3155}
3156#[repr(C)]
3157#[doc(hidden)]
3158pub struct IUssdSession_Vtbl {
3159 pub base__: ::windows::core::IInspectable_Vtbl,
3160 #[cfg(feature = "Foundation")]
3161 pub SendMessageAndGetReplyAsync: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, message: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3162 #[cfg(not(feature = "Foundation"))]
3163 SendMessageAndGetReplyAsync: usize,
3164 pub Close: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3165}
3166#[doc(hidden)]
3167#[repr(transparent)]
3168pub struct IUssdSessionStatics(::windows::core::IUnknown);
3169unsafe impl ::windows::core::Interface for IUssdSessionStatics {
3170 type Vtable = IUssdSessionStatics_Vtbl;
3171}
3172impl ::core::clone::Clone for IUssdSessionStatics {
3173 fn clone(&self) -> Self {
3174 Self(self.0.clone())
3175 }
3176}
3177unsafe impl ::windows::core::ComInterface for IUssdSessionStatics {
3178 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f9acf82_1001_4d5d_bf81_2aba1b4be4a8);
3179}
3180#[repr(C)]
3181#[doc(hidden)]
3182pub struct IUssdSessionStatics_Vtbl {
3183 pub base__: ::windows::core::IInspectable_Vtbl,
3184 pub CreateFromNetworkAccountId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, networkaccountid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3185 pub CreateFromNetworkInterfaceId: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, networkinterfaceid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
3186}
3187#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3188#[repr(transparent)]
3189pub struct ESim(::windows::core::IUnknown);
3190impl ESim {
3191 #[doc = "*Required features: `\"Foundation\"`*"]
3192 #[cfg(feature = "Foundation")]
3193 pub fn AvailableMemoryInBytes(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
3194 let this = self;
3195 unsafe {
3196 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
3197 (::windows::core::Interface::vtable(this).AvailableMemoryInBytes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3198 }
3199 }
3200 pub fn Eid(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3201 let this = self;
3202 unsafe {
3203 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3204 (::windows::core::Interface::vtable(this).Eid)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3205 }
3206 }
3207 pub fn FirmwareVersion(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3208 let this = self;
3209 unsafe {
3210 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3211 (::windows::core::Interface::vtable(this).FirmwareVersion)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3212 }
3213 }
3214 pub fn MobileBroadbandModemDeviceId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3215 let this = self;
3216 unsafe {
3217 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3218 (::windows::core::Interface::vtable(this).MobileBroadbandModemDeviceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3219 }
3220 }
3221 pub fn Policy(&self) -> ::windows::core::Result<ESimPolicy> {
3222 let this = self;
3223 unsafe {
3224 let mut result__ = ::windows::core::zeroed::<ESimPolicy>();
3225 (::windows::core::Interface::vtable(this).Policy)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3226 }
3227 }
3228 pub fn State(&self) -> ::windows::core::Result<ESimState> {
3229 let this = self;
3230 unsafe {
3231 let mut result__ = ::windows::core::zeroed::<ESimState>();
3232 (::windows::core::Interface::vtable(this).State)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3233 }
3234 }
3235 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
3236 #[cfg(feature = "Foundation_Collections")]
3237 pub fn GetProfiles(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<ESimProfile>> {
3238 let this = self;
3239 unsafe {
3240 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<ESimProfile>>();
3241 (::windows::core::Interface::vtable(this).GetProfiles)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3242 }
3243 }
3244 #[doc = "*Required features: `\"Foundation\"`*"]
3245 #[cfg(feature = "Foundation")]
3246 pub fn DeleteProfileAsync(&self, profileid: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimOperationResult>> {
3247 let this = self;
3248 unsafe {
3249 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimOperationResult>>();
3250 (::windows::core::Interface::vtable(this).DeleteProfileAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(profileid), &mut result__).from_abi(result__)
3251 }
3252 }
3253 #[doc = "*Required features: `\"Foundation\"`*"]
3254 #[cfg(feature = "Foundation")]
3255 pub fn DownloadProfileMetadataAsync(&self, activationcode: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimDownloadProfileMetadataResult>> {
3256 let this = self;
3257 unsafe {
3258 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimDownloadProfileMetadataResult>>();
3259 (::windows::core::Interface::vtable(this).DownloadProfileMetadataAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(activationcode), &mut result__).from_abi(result__)
3260 }
3261 }
3262 #[doc = "*Required features: `\"Foundation\"`*"]
3263 #[cfg(feature = "Foundation")]
3264 pub fn ResetAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimOperationResult>> {
3265 let this = self;
3266 unsafe {
3267 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimOperationResult>>();
3268 (::windows::core::Interface::vtable(this).ResetAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3269 }
3270 }
3271 #[doc = "*Required features: `\"Foundation\"`*"]
3272 #[cfg(feature = "Foundation")]
3273 pub fn ProfileChanged(&self, handler: &super::super::Foundation::TypedEventHandler<ESim, ::windows::core::IInspectable>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
3274 let this = self;
3275 unsafe {
3276 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
3277 (::windows::core::Interface::vtable(this).ProfileChanged)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
3278 }
3279 }
3280 #[doc = "*Required features: `\"Foundation\"`*"]
3281 #[cfg(feature = "Foundation")]
3282 pub fn RemoveProfileChanged(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
3283 let this = self;
3284 unsafe { (::windows::core::Interface::vtable(this).RemoveProfileChanged)(::windows::core::Interface::as_raw(this), token).ok() }
3285 }
3286 pub fn Discover(&self) -> ::windows::core::Result<ESimDiscoverResult> {
3287 let this = &::windows::core::ComInterface::cast::<IESim2>(self)?;
3288 unsafe {
3289 let mut result__ = ::windows::core::zeroed::<ESimDiscoverResult>();
3290 (::windows::core::Interface::vtable(this).Discover)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3291 }
3292 }
3293 pub fn DiscoverWithServerAddressAndMatchingId(&self, serveraddress: &::windows::core::HSTRING, matchingid: &::windows::core::HSTRING) -> ::windows::core::Result<ESimDiscoverResult> {
3294 let this = &::windows::core::ComInterface::cast::<IESim2>(self)?;
3295 unsafe {
3296 let mut result__ = ::windows::core::zeroed::<ESimDiscoverResult>();
3297 (::windows::core::Interface::vtable(this).DiscoverWithServerAddressAndMatchingId)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(serveraddress), ::core::mem::transmute_copy(matchingid), &mut result__).from_abi(result__)
3298 }
3299 }
3300 #[doc = "*Required features: `\"Foundation\"`*"]
3301 #[cfg(feature = "Foundation")]
3302 pub fn DiscoverAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimDiscoverResult>> {
3303 let this = &::windows::core::ComInterface::cast::<IESim2>(self)?;
3304 unsafe {
3305 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimDiscoverResult>>();
3306 (::windows::core::Interface::vtable(this).DiscoverAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3307 }
3308 }
3309 #[doc = "*Required features: `\"Foundation\"`*"]
3310 #[cfg(feature = "Foundation")]
3311 pub fn DiscoverWithServerAddressAndMatchingIdAsync(&self, serveraddress: &::windows::core::HSTRING, matchingid: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimDiscoverResult>> {
3312 let this = &::windows::core::ComInterface::cast::<IESim2>(self)?;
3313 unsafe {
3314 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimDiscoverResult>>();
3315 (::windows::core::Interface::vtable(this).DiscoverWithServerAddressAndMatchingIdAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(serveraddress), ::core::mem::transmute_copy(matchingid), &mut result__).from_abi(result__)
3316 }
3317 }
3318 #[doc = "*Required features: `\"Foundation\"`*"]
3319 #[cfg(feature = "Foundation")]
3320 pub fn SlotIndex(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
3321 let this = &::windows::core::ComInterface::cast::<IESim3>(self)?;
3322 unsafe {
3323 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
3324 (::windows::core::Interface::vtable(this).SlotIndex)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3325 }
3326 }
3327}
3328impl ::core::cmp::PartialEq for ESim {
3329 fn eq(&self, other: &Self) -> bool {
3330 self.0 == other.0
3331 }
3332}
3333impl ::core::cmp::Eq for ESim {}
3334impl ::core::fmt::Debug for ESim {
3335 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3336 f.debug_tuple("ESim").field(&self.0).finish()
3337 }
3338}
3339impl ::windows::core::RuntimeType for ESim {
3340 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESim;{6f6e6e26-f123-437d-8ced-dc1d2bc0c3a9})");
3341}
3342impl ::core::clone::Clone for ESim {
3343 fn clone(&self) -> Self {
3344 Self(self.0.clone())
3345 }
3346}
3347unsafe impl ::windows::core::Interface for ESim {
3348 type Vtable = IESim_Vtbl;
3349}
3350unsafe impl ::windows::core::ComInterface for ESim {
3351 const IID: ::windows::core::GUID = <IESim as ::windows::core::ComInterface>::IID;
3352}
3353impl ::windows::core::RuntimeName for ESim {
3354 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESim";
3355}
3356::windows::imp::interface_hierarchy!(ESim, ::windows::core::IUnknown, ::windows::core::IInspectable);
3357unsafe impl ::core::marker::Send for ESim {}
3358unsafe impl ::core::marker::Sync for ESim {}
3359#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3360#[repr(transparent)]
3361pub struct ESimAddedEventArgs(::windows::core::IUnknown);
3362impl ESimAddedEventArgs {
3363 pub fn ESim(&self) -> ::windows::core::Result<ESim> {
3364 let this = self;
3365 unsafe {
3366 let mut result__ = ::windows::core::zeroed::<ESim>();
3367 (::windows::core::Interface::vtable(this).ESim)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3368 }
3369 }
3370}
3371impl ::core::cmp::PartialEq for ESimAddedEventArgs {
3372 fn eq(&self, other: &Self) -> bool {
3373 self.0 == other.0
3374 }
3375}
3376impl ::core::cmp::Eq for ESimAddedEventArgs {}
3377impl ::core::fmt::Debug for ESimAddedEventArgs {
3378 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3379 f.debug_tuple("ESimAddedEventArgs").field(&self.0).finish()
3380 }
3381}
3382impl ::windows::core::RuntimeType for ESimAddedEventArgs {
3383 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimAddedEventArgs;{38bd0a58-4d5a-4d08-8da7-e73eff369ddd})");
3384}
3385impl ::core::clone::Clone for ESimAddedEventArgs {
3386 fn clone(&self) -> Self {
3387 Self(self.0.clone())
3388 }
3389}
3390unsafe impl ::windows::core::Interface for ESimAddedEventArgs {
3391 type Vtable = IESimAddedEventArgs_Vtbl;
3392}
3393unsafe impl ::windows::core::ComInterface for ESimAddedEventArgs {
3394 const IID: ::windows::core::GUID = <IESimAddedEventArgs as ::windows::core::ComInterface>::IID;
3395}
3396impl ::windows::core::RuntimeName for ESimAddedEventArgs {
3397 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimAddedEventArgs";
3398}
3399::windows::imp::interface_hierarchy!(ESimAddedEventArgs, ::windows::core::IUnknown, ::windows::core::IInspectable);
3400unsafe impl ::core::marker::Send for ESimAddedEventArgs {}
3401unsafe impl ::core::marker::Sync for ESimAddedEventArgs {}
3402#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3403#[repr(transparent)]
3404pub struct ESimDiscoverEvent(::windows::core::IUnknown);
3405impl ESimDiscoverEvent {
3406 pub fn MatchingId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3407 let this = self;
3408 unsafe {
3409 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3410 (::windows::core::Interface::vtable(this).MatchingId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3411 }
3412 }
3413 pub fn RspServerAddress(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3414 let this = self;
3415 unsafe {
3416 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3417 (::windows::core::Interface::vtable(this).RspServerAddress)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3418 }
3419 }
3420}
3421impl ::core::cmp::PartialEq for ESimDiscoverEvent {
3422 fn eq(&self, other: &Self) -> bool {
3423 self.0 == other.0
3424 }
3425}
3426impl ::core::cmp::Eq for ESimDiscoverEvent {}
3427impl ::core::fmt::Debug for ESimDiscoverEvent {
3428 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3429 f.debug_tuple("ESimDiscoverEvent").field(&self.0).finish()
3430 }
3431}
3432impl ::windows::core::RuntimeType for ESimDiscoverEvent {
3433 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimDiscoverEvent;{e59ac3e3-39bc-5f6f-9321-0d4a182d261b})");
3434}
3435impl ::core::clone::Clone for ESimDiscoverEvent {
3436 fn clone(&self) -> Self {
3437 Self(self.0.clone())
3438 }
3439}
3440unsafe impl ::windows::core::Interface for ESimDiscoverEvent {
3441 type Vtable = IESimDiscoverEvent_Vtbl;
3442}
3443unsafe impl ::windows::core::ComInterface for ESimDiscoverEvent {
3444 const IID: ::windows::core::GUID = <IESimDiscoverEvent as ::windows::core::ComInterface>::IID;
3445}
3446impl ::windows::core::RuntimeName for ESimDiscoverEvent {
3447 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimDiscoverEvent";
3448}
3449::windows::imp::interface_hierarchy!(ESimDiscoverEvent, ::windows::core::IUnknown, ::windows::core::IInspectable);
3450unsafe impl ::core::marker::Send for ESimDiscoverEvent {}
3451unsafe impl ::core::marker::Sync for ESimDiscoverEvent {}
3452#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3453#[repr(transparent)]
3454pub struct ESimDiscoverResult(::windows::core::IUnknown);
3455impl ESimDiscoverResult {
3456 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
3457 #[cfg(feature = "Foundation_Collections")]
3458 pub fn Events(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<ESimDiscoverEvent>> {
3459 let this = self;
3460 unsafe {
3461 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<ESimDiscoverEvent>>();
3462 (::windows::core::Interface::vtable(this).Events)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3463 }
3464 }
3465 pub fn Kind(&self) -> ::windows::core::Result<ESimDiscoverResultKind> {
3466 let this = self;
3467 unsafe {
3468 let mut result__ = ::windows::core::zeroed::<ESimDiscoverResultKind>();
3469 (::windows::core::Interface::vtable(this).Kind)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3470 }
3471 }
3472 pub fn ProfileMetadata(&self) -> ::windows::core::Result<ESimProfileMetadata> {
3473 let this = self;
3474 unsafe {
3475 let mut result__ = ::windows::core::zeroed::<ESimProfileMetadata>();
3476 (::windows::core::Interface::vtable(this).ProfileMetadata)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3477 }
3478 }
3479 pub fn Result(&self) -> ::windows::core::Result<ESimOperationResult> {
3480 let this = self;
3481 unsafe {
3482 let mut result__ = ::windows::core::zeroed::<ESimOperationResult>();
3483 (::windows::core::Interface::vtable(this).Result)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3484 }
3485 }
3486}
3487impl ::core::cmp::PartialEq for ESimDiscoverResult {
3488 fn eq(&self, other: &Self) -> bool {
3489 self.0 == other.0
3490 }
3491}
3492impl ::core::cmp::Eq for ESimDiscoverResult {}
3493impl ::core::fmt::Debug for ESimDiscoverResult {
3494 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3495 f.debug_tuple("ESimDiscoverResult").field(&self.0).finish()
3496 }
3497}
3498impl ::windows::core::RuntimeType for ESimDiscoverResult {
3499 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimDiscoverResult;{56b4bb5e-ab2f-5ac6-b359-dd5a8e237926})");
3500}
3501impl ::core::clone::Clone for ESimDiscoverResult {
3502 fn clone(&self) -> Self {
3503 Self(self.0.clone())
3504 }
3505}
3506unsafe impl ::windows::core::Interface for ESimDiscoverResult {
3507 type Vtable = IESimDiscoverResult_Vtbl;
3508}
3509unsafe impl ::windows::core::ComInterface for ESimDiscoverResult {
3510 const IID: ::windows::core::GUID = <IESimDiscoverResult as ::windows::core::ComInterface>::IID;
3511}
3512impl ::windows::core::RuntimeName for ESimDiscoverResult {
3513 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimDiscoverResult";
3514}
3515::windows::imp::interface_hierarchy!(ESimDiscoverResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
3516unsafe impl ::core::marker::Send for ESimDiscoverResult {}
3517unsafe impl ::core::marker::Sync for ESimDiscoverResult {}
3518#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3519#[repr(transparent)]
3520pub struct ESimDownloadProfileMetadataResult(::windows::core::IUnknown);
3521impl ESimDownloadProfileMetadataResult {
3522 pub fn Result(&self) -> ::windows::core::Result<ESimOperationResult> {
3523 let this = self;
3524 unsafe {
3525 let mut result__ = ::windows::core::zeroed::<ESimOperationResult>();
3526 (::windows::core::Interface::vtable(this).Result)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3527 }
3528 }
3529 pub fn ProfileMetadata(&self) -> ::windows::core::Result<ESimProfileMetadata> {
3530 let this = self;
3531 unsafe {
3532 let mut result__ = ::windows::core::zeroed::<ESimProfileMetadata>();
3533 (::windows::core::Interface::vtable(this).ProfileMetadata)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3534 }
3535 }
3536}
3537impl ::core::cmp::PartialEq for ESimDownloadProfileMetadataResult {
3538 fn eq(&self, other: &Self) -> bool {
3539 self.0 == other.0
3540 }
3541}
3542impl ::core::cmp::Eq for ESimDownloadProfileMetadataResult {}
3543impl ::core::fmt::Debug for ESimDownloadProfileMetadataResult {
3544 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3545 f.debug_tuple("ESimDownloadProfileMetadataResult").field(&self.0).finish()
3546 }
3547}
3548impl ::windows::core::RuntimeType for ESimDownloadProfileMetadataResult {
3549 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimDownloadProfileMetadataResult;{c4234d9e-5ad6-426d-8d00-4434f449afec})");
3550}
3551impl ::core::clone::Clone for ESimDownloadProfileMetadataResult {
3552 fn clone(&self) -> Self {
3553 Self(self.0.clone())
3554 }
3555}
3556unsafe impl ::windows::core::Interface for ESimDownloadProfileMetadataResult {
3557 type Vtable = IESimDownloadProfileMetadataResult_Vtbl;
3558}
3559unsafe impl ::windows::core::ComInterface for ESimDownloadProfileMetadataResult {
3560 const IID: ::windows::core::GUID = <IESimDownloadProfileMetadataResult as ::windows::core::ComInterface>::IID;
3561}
3562impl ::windows::core::RuntimeName for ESimDownloadProfileMetadataResult {
3563 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimDownloadProfileMetadataResult";
3564}
3565::windows::imp::interface_hierarchy!(ESimDownloadProfileMetadataResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
3566unsafe impl ::core::marker::Send for ESimDownloadProfileMetadataResult {}
3567unsafe impl ::core::marker::Sync for ESimDownloadProfileMetadataResult {}
3568#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3569pub struct ESimManager;
3570impl ESimManager {
3571 pub fn ServiceInfo() -> ::windows::core::Result<ESimServiceInfo> {
3572 Self::IESimManagerStatics(|this| unsafe {
3573 let mut result__ = ::windows::core::zeroed::<ESimServiceInfo>();
3574 (::windows::core::Interface::vtable(this).ServiceInfo)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3575 })
3576 }
3577 pub fn TryCreateESimWatcher() -> ::windows::core::Result<ESimWatcher> {
3578 Self::IESimManagerStatics(|this| unsafe {
3579 let mut result__ = ::windows::core::zeroed::<ESimWatcher>();
3580 (::windows::core::Interface::vtable(this).TryCreateESimWatcher)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3581 })
3582 }
3583 #[doc = "*Required features: `\"Foundation\"`*"]
3584 #[cfg(feature = "Foundation")]
3585 pub fn ServiceInfoChanged(handler: &super::super::Foundation::EventHandler<::windows::core::IInspectable>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
3586 Self::IESimManagerStatics(|this| unsafe {
3587 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
3588 (::windows::core::Interface::vtable(this).ServiceInfoChanged)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
3589 })
3590 }
3591 #[doc = "*Required features: `\"Foundation\"`*"]
3592 #[cfg(feature = "Foundation")]
3593 pub fn RemoveServiceInfoChanged(token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
3594 Self::IESimManagerStatics(|this| unsafe { (::windows::core::Interface::vtable(this).RemoveServiceInfoChanged)(::windows::core::Interface::as_raw(this), token).ok() })
3595 }
3596 #[doc(hidden)]
3597 pub fn IESimManagerStatics<R, F: FnOnce(&IESimManagerStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
3598 static SHARED: ::windows::imp::FactoryCache<ESimManager, IESimManagerStatics> = ::windows::imp::FactoryCache::new();
3599 SHARED.call(callback)
3600 }
3601}
3602impl ::windows::core::RuntimeName for ESimManager {
3603 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimManager";
3604}
3605#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3606#[repr(transparent)]
3607pub struct ESimOperationResult(::windows::core::IUnknown);
3608impl ESimOperationResult {
3609 pub fn Status(&self) -> ::windows::core::Result<ESimOperationStatus> {
3610 let this = self;
3611 unsafe {
3612 let mut result__ = ::windows::core::zeroed::<ESimOperationStatus>();
3613 (::windows::core::Interface::vtable(this).Status)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3614 }
3615 }
3616}
3617impl ::core::cmp::PartialEq for ESimOperationResult {
3618 fn eq(&self, other: &Self) -> bool {
3619 self.0 == other.0
3620 }
3621}
3622impl ::core::cmp::Eq for ESimOperationResult {}
3623impl ::core::fmt::Debug for ESimOperationResult {
3624 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3625 f.debug_tuple("ESimOperationResult").field(&self.0).finish()
3626 }
3627}
3628impl ::windows::core::RuntimeType for ESimOperationResult {
3629 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimOperationResult;{a67b63b1-309b-4e77-9e7e-cd93f1ddc7b9})");
3630}
3631impl ::core::clone::Clone for ESimOperationResult {
3632 fn clone(&self) -> Self {
3633 Self(self.0.clone())
3634 }
3635}
3636unsafe impl ::windows::core::Interface for ESimOperationResult {
3637 type Vtable = IESimOperationResult_Vtbl;
3638}
3639unsafe impl ::windows::core::ComInterface for ESimOperationResult {
3640 const IID: ::windows::core::GUID = <IESimOperationResult as ::windows::core::ComInterface>::IID;
3641}
3642impl ::windows::core::RuntimeName for ESimOperationResult {
3643 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimOperationResult";
3644}
3645::windows::imp::interface_hierarchy!(ESimOperationResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
3646unsafe impl ::core::marker::Send for ESimOperationResult {}
3647unsafe impl ::core::marker::Sync for ESimOperationResult {}
3648#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3649#[repr(transparent)]
3650pub struct ESimPolicy(::windows::core::IUnknown);
3651impl ESimPolicy {
3652 pub fn ShouldEnableManagingUi(&self) -> ::windows::core::Result<bool> {
3653 let this = self;
3654 unsafe {
3655 let mut result__ = ::windows::core::zeroed::<bool>();
3656 (::windows::core::Interface::vtable(this).ShouldEnableManagingUi)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3657 }
3658 }
3659}
3660impl ::core::cmp::PartialEq for ESimPolicy {
3661 fn eq(&self, other: &Self) -> bool {
3662 self.0 == other.0
3663 }
3664}
3665impl ::core::cmp::Eq for ESimPolicy {}
3666impl ::core::fmt::Debug for ESimPolicy {
3667 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3668 f.debug_tuple("ESimPolicy").field(&self.0).finish()
3669 }
3670}
3671impl ::windows::core::RuntimeType for ESimPolicy {
3672 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimPolicy;{41e1b99d-cf7e-4315-882b-6f1e74b0d38f})");
3673}
3674impl ::core::clone::Clone for ESimPolicy {
3675 fn clone(&self) -> Self {
3676 Self(self.0.clone())
3677 }
3678}
3679unsafe impl ::windows::core::Interface for ESimPolicy {
3680 type Vtable = IESimPolicy_Vtbl;
3681}
3682unsafe impl ::windows::core::ComInterface for ESimPolicy {
3683 const IID: ::windows::core::GUID = <IESimPolicy as ::windows::core::ComInterface>::IID;
3684}
3685impl ::windows::core::RuntimeName for ESimPolicy {
3686 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimPolicy";
3687}
3688::windows::imp::interface_hierarchy!(ESimPolicy, ::windows::core::IUnknown, ::windows::core::IInspectable);
3689unsafe impl ::core::marker::Send for ESimPolicy {}
3690unsafe impl ::core::marker::Sync for ESimPolicy {}
3691#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3692#[repr(transparent)]
3693pub struct ESimProfile(::windows::core::IUnknown);
3694impl ESimProfile {
3695 pub fn Class(&self) -> ::windows::core::Result<ESimProfileClass> {
3696 let this = self;
3697 unsafe {
3698 let mut result__ = ::windows::core::zeroed::<ESimProfileClass>();
3699 (::windows::core::Interface::vtable(this).Class)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3700 }
3701 }
3702 pub fn Nickname(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3703 let this = self;
3704 unsafe {
3705 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3706 (::windows::core::Interface::vtable(this).Nickname)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3707 }
3708 }
3709 pub fn Policy(&self) -> ::windows::core::Result<ESimProfilePolicy> {
3710 let this = self;
3711 unsafe {
3712 let mut result__ = ::windows::core::zeroed::<ESimProfilePolicy>();
3713 (::windows::core::Interface::vtable(this).Policy)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3714 }
3715 }
3716 pub fn Id(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3717 let this = self;
3718 unsafe {
3719 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3720 (::windows::core::Interface::vtable(this).Id)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3721 }
3722 }
3723 #[doc = "*Required features: `\"Storage_Streams\"`*"]
3724 #[cfg(feature = "Storage_Streams")]
3725 pub fn ProviderIcon(&self) -> ::windows::core::Result<super::super::Storage::Streams::IRandomAccessStreamReference> {
3726 let this = self;
3727 unsafe {
3728 let mut result__ = ::windows::core::zeroed::<super::super::Storage::Streams::IRandomAccessStreamReference>();
3729 (::windows::core::Interface::vtable(this).ProviderIcon)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3730 }
3731 }
3732 pub fn ProviderId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3733 let this = self;
3734 unsafe {
3735 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3736 (::windows::core::Interface::vtable(this).ProviderId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3737 }
3738 }
3739 pub fn ProviderName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3740 let this = self;
3741 unsafe {
3742 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3743 (::windows::core::Interface::vtable(this).ProviderName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3744 }
3745 }
3746 pub fn State(&self) -> ::windows::core::Result<ESimProfileState> {
3747 let this = self;
3748 unsafe {
3749 let mut result__ = ::windows::core::zeroed::<ESimProfileState>();
3750 (::windows::core::Interface::vtable(this).State)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3751 }
3752 }
3753 #[doc = "*Required features: `\"Foundation\"`*"]
3754 #[cfg(feature = "Foundation")]
3755 pub fn DisableAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimOperationResult>> {
3756 let this = self;
3757 unsafe {
3758 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimOperationResult>>();
3759 (::windows::core::Interface::vtable(this).DisableAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3760 }
3761 }
3762 #[doc = "*Required features: `\"Foundation\"`*"]
3763 #[cfg(feature = "Foundation")]
3764 pub fn EnableAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimOperationResult>> {
3765 let this = self;
3766 unsafe {
3767 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimOperationResult>>();
3768 (::windows::core::Interface::vtable(this).EnableAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3769 }
3770 }
3771 #[doc = "*Required features: `\"Foundation\"`*"]
3772 #[cfg(feature = "Foundation")]
3773 pub fn SetNicknameAsync(&self, newnickname: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimOperationResult>> {
3774 let this = self;
3775 unsafe {
3776 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimOperationResult>>();
3777 (::windows::core::Interface::vtable(this).SetNicknameAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(newnickname), &mut result__).from_abi(result__)
3778 }
3779 }
3780}
3781impl ::core::cmp::PartialEq for ESimProfile {
3782 fn eq(&self, other: &Self) -> bool {
3783 self.0 == other.0
3784 }
3785}
3786impl ::core::cmp::Eq for ESimProfile {}
3787impl ::core::fmt::Debug for ESimProfile {
3788 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3789 f.debug_tuple("ESimProfile").field(&self.0).finish()
3790 }
3791}
3792impl ::windows::core::RuntimeType for ESimProfile {
3793 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimProfile;{ee1e7880-06a9-4027-b4f8-ddb23d7810e0})");
3794}
3795impl ::core::clone::Clone for ESimProfile {
3796 fn clone(&self) -> Self {
3797 Self(self.0.clone())
3798 }
3799}
3800unsafe impl ::windows::core::Interface for ESimProfile {
3801 type Vtable = IESimProfile_Vtbl;
3802}
3803unsafe impl ::windows::core::ComInterface for ESimProfile {
3804 const IID: ::windows::core::GUID = <IESimProfile as ::windows::core::ComInterface>::IID;
3805}
3806impl ::windows::core::RuntimeName for ESimProfile {
3807 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimProfile";
3808}
3809::windows::imp::interface_hierarchy!(ESimProfile, ::windows::core::IUnknown, ::windows::core::IInspectable);
3810unsafe impl ::core::marker::Send for ESimProfile {}
3811unsafe impl ::core::marker::Sync for ESimProfile {}
3812#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3813#[repr(transparent)]
3814pub struct ESimProfileMetadata(::windows::core::IUnknown);
3815impl ESimProfileMetadata {
3816 pub fn IsConfirmationCodeRequired(&self) -> ::windows::core::Result<bool> {
3817 let this = self;
3818 unsafe {
3819 let mut result__ = ::windows::core::zeroed::<bool>();
3820 (::windows::core::Interface::vtable(this).IsConfirmationCodeRequired)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3821 }
3822 }
3823 pub fn Policy(&self) -> ::windows::core::Result<ESimProfilePolicy> {
3824 let this = self;
3825 unsafe {
3826 let mut result__ = ::windows::core::zeroed::<ESimProfilePolicy>();
3827 (::windows::core::Interface::vtable(this).Policy)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3828 }
3829 }
3830 pub fn Id(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3831 let this = self;
3832 unsafe {
3833 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3834 (::windows::core::Interface::vtable(this).Id)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3835 }
3836 }
3837 #[doc = "*Required features: `\"Storage_Streams\"`*"]
3838 #[cfg(feature = "Storage_Streams")]
3839 pub fn ProviderIcon(&self) -> ::windows::core::Result<super::super::Storage::Streams::IRandomAccessStreamReference> {
3840 let this = self;
3841 unsafe {
3842 let mut result__ = ::windows::core::zeroed::<super::super::Storage::Streams::IRandomAccessStreamReference>();
3843 (::windows::core::Interface::vtable(this).ProviderIcon)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3844 }
3845 }
3846 pub fn ProviderId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3847 let this = self;
3848 unsafe {
3849 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3850 (::windows::core::Interface::vtable(this).ProviderId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3851 }
3852 }
3853 pub fn ProviderName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
3854 let this = self;
3855 unsafe {
3856 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
3857 (::windows::core::Interface::vtable(this).ProviderName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3858 }
3859 }
3860 pub fn State(&self) -> ::windows::core::Result<ESimProfileMetadataState> {
3861 let this = self;
3862 unsafe {
3863 let mut result__ = ::windows::core::zeroed::<ESimProfileMetadataState>();
3864 (::windows::core::Interface::vtable(this).State)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3865 }
3866 }
3867 #[doc = "*Required features: `\"Foundation\"`*"]
3868 #[cfg(feature = "Foundation")]
3869 pub fn DenyInstallAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimOperationResult>> {
3870 let this = self;
3871 unsafe {
3872 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimOperationResult>>();
3873 (::windows::core::Interface::vtable(this).DenyInstallAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3874 }
3875 }
3876 #[doc = "*Required features: `\"Foundation\"`*"]
3877 #[cfg(feature = "Foundation")]
3878 pub fn ConfirmInstallAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperationWithProgress<ESimOperationResult, ESimProfileInstallProgress>> {
3879 let this = self;
3880 unsafe {
3881 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperationWithProgress<ESimOperationResult, ESimProfileInstallProgress>>();
3882 (::windows::core::Interface::vtable(this).ConfirmInstallAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3883 }
3884 }
3885 #[doc = "*Required features: `\"Foundation\"`*"]
3886 #[cfg(feature = "Foundation")]
3887 pub fn ConfirmInstallWithConfirmationCodeAsync(&self, confirmationcode: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperationWithProgress<ESimOperationResult, ESimProfileInstallProgress>> {
3888 let this = self;
3889 unsafe {
3890 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperationWithProgress<ESimOperationResult, ESimProfileInstallProgress>>();
3891 (::windows::core::Interface::vtable(this).ConfirmInstallWithConfirmationCodeAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(confirmationcode), &mut result__).from_abi(result__)
3892 }
3893 }
3894 #[doc = "*Required features: `\"Foundation\"`*"]
3895 #[cfg(feature = "Foundation")]
3896 pub fn PostponeInstallAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ESimOperationResult>> {
3897 let this = self;
3898 unsafe {
3899 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ESimOperationResult>>();
3900 (::windows::core::Interface::vtable(this).PostponeInstallAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3901 }
3902 }
3903 #[doc = "*Required features: `\"Foundation\"`*"]
3904 #[cfg(feature = "Foundation")]
3905 pub fn StateChanged(&self, handler: &super::super::Foundation::TypedEventHandler<ESimProfileMetadata, ::windows::core::IInspectable>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
3906 let this = self;
3907 unsafe {
3908 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
3909 (::windows::core::Interface::vtable(this).StateChanged)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
3910 }
3911 }
3912 #[doc = "*Required features: `\"Foundation\"`*"]
3913 #[cfg(feature = "Foundation")]
3914 pub fn RemoveStateChanged(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
3915 let this = self;
3916 unsafe { (::windows::core::Interface::vtable(this).RemoveStateChanged)(::windows::core::Interface::as_raw(this), token).ok() }
3917 }
3918}
3919impl ::core::cmp::PartialEq for ESimProfileMetadata {
3920 fn eq(&self, other: &Self) -> bool {
3921 self.0 == other.0
3922 }
3923}
3924impl ::core::cmp::Eq for ESimProfileMetadata {}
3925impl ::core::fmt::Debug for ESimProfileMetadata {
3926 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3927 f.debug_tuple("ESimProfileMetadata").field(&self.0).finish()
3928 }
3929}
3930impl ::windows::core::RuntimeType for ESimProfileMetadata {
3931 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimProfileMetadata;{ed25831f-90db-498d-a7b4-ebce807d3c23})");
3932}
3933impl ::core::clone::Clone for ESimProfileMetadata {
3934 fn clone(&self) -> Self {
3935 Self(self.0.clone())
3936 }
3937}
3938unsafe impl ::windows::core::Interface for ESimProfileMetadata {
3939 type Vtable = IESimProfileMetadata_Vtbl;
3940}
3941unsafe impl ::windows::core::ComInterface for ESimProfileMetadata {
3942 const IID: ::windows::core::GUID = <IESimProfileMetadata as ::windows::core::ComInterface>::IID;
3943}
3944impl ::windows::core::RuntimeName for ESimProfileMetadata {
3945 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimProfileMetadata";
3946}
3947::windows::imp::interface_hierarchy!(ESimProfileMetadata, ::windows::core::IUnknown, ::windows::core::IInspectable);
3948unsafe impl ::core::marker::Send for ESimProfileMetadata {}
3949unsafe impl ::core::marker::Sync for ESimProfileMetadata {}
3950#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
3951#[repr(transparent)]
3952pub struct ESimProfilePolicy(::windows::core::IUnknown);
3953impl ESimProfilePolicy {
3954 pub fn CanDelete(&self) -> ::windows::core::Result<bool> {
3955 let this = self;
3956 unsafe {
3957 let mut result__ = ::windows::core::zeroed::<bool>();
3958 (::windows::core::Interface::vtable(this).CanDelete)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3959 }
3960 }
3961 pub fn CanDisable(&self) -> ::windows::core::Result<bool> {
3962 let this = self;
3963 unsafe {
3964 let mut result__ = ::windows::core::zeroed::<bool>();
3965 (::windows::core::Interface::vtable(this).CanDisable)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3966 }
3967 }
3968 pub fn IsManagedByEnterprise(&self) -> ::windows::core::Result<bool> {
3969 let this = self;
3970 unsafe {
3971 let mut result__ = ::windows::core::zeroed::<bool>();
3972 (::windows::core::Interface::vtable(this).IsManagedByEnterprise)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
3973 }
3974 }
3975}
3976impl ::core::cmp::PartialEq for ESimProfilePolicy {
3977 fn eq(&self, other: &Self) -> bool {
3978 self.0 == other.0
3979 }
3980}
3981impl ::core::cmp::Eq for ESimProfilePolicy {}
3982impl ::core::fmt::Debug for ESimProfilePolicy {
3983 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3984 f.debug_tuple("ESimProfilePolicy").field(&self.0).finish()
3985 }
3986}
3987impl ::windows::core::RuntimeType for ESimProfilePolicy {
3988 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimProfilePolicy;{e6dd0f1d-9c5c-46c5-a289-a948999bf062})");
3989}
3990impl ::core::clone::Clone for ESimProfilePolicy {
3991 fn clone(&self) -> Self {
3992 Self(self.0.clone())
3993 }
3994}
3995unsafe impl ::windows::core::Interface for ESimProfilePolicy {
3996 type Vtable = IESimProfilePolicy_Vtbl;
3997}
3998unsafe impl ::windows::core::ComInterface for ESimProfilePolicy {
3999 const IID: ::windows::core::GUID = <IESimProfilePolicy as ::windows::core::ComInterface>::IID;
4000}
4001impl ::windows::core::RuntimeName for ESimProfilePolicy {
4002 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimProfilePolicy";
4003}
4004::windows::imp::interface_hierarchy!(ESimProfilePolicy, ::windows::core::IUnknown, ::windows::core::IInspectable);
4005unsafe impl ::core::marker::Send for ESimProfilePolicy {}
4006unsafe impl ::core::marker::Sync for ESimProfilePolicy {}
4007#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4008#[repr(transparent)]
4009pub struct ESimRemovedEventArgs(::windows::core::IUnknown);
4010impl ESimRemovedEventArgs {
4011 pub fn ESim(&self) -> ::windows::core::Result<ESim> {
4012 let this = self;
4013 unsafe {
4014 let mut result__ = ::windows::core::zeroed::<ESim>();
4015 (::windows::core::Interface::vtable(this).ESim)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4016 }
4017 }
4018}
4019impl ::core::cmp::PartialEq for ESimRemovedEventArgs {
4020 fn eq(&self, other: &Self) -> bool {
4021 self.0 == other.0
4022 }
4023}
4024impl ::core::cmp::Eq for ESimRemovedEventArgs {}
4025impl ::core::fmt::Debug for ESimRemovedEventArgs {
4026 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4027 f.debug_tuple("ESimRemovedEventArgs").field(&self.0).finish()
4028 }
4029}
4030impl ::windows::core::RuntimeType for ESimRemovedEventArgs {
4031 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimRemovedEventArgs;{dec5277b-2fd9-4ed9-8376-d9b5e41278a3})");
4032}
4033impl ::core::clone::Clone for ESimRemovedEventArgs {
4034 fn clone(&self) -> Self {
4035 Self(self.0.clone())
4036 }
4037}
4038unsafe impl ::windows::core::Interface for ESimRemovedEventArgs {
4039 type Vtable = IESimRemovedEventArgs_Vtbl;
4040}
4041unsafe impl ::windows::core::ComInterface for ESimRemovedEventArgs {
4042 const IID: ::windows::core::GUID = <IESimRemovedEventArgs as ::windows::core::ComInterface>::IID;
4043}
4044impl ::windows::core::RuntimeName for ESimRemovedEventArgs {
4045 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimRemovedEventArgs";
4046}
4047::windows::imp::interface_hierarchy!(ESimRemovedEventArgs, ::windows::core::IUnknown, ::windows::core::IInspectable);
4048unsafe impl ::core::marker::Send for ESimRemovedEventArgs {}
4049unsafe impl ::core::marker::Sync for ESimRemovedEventArgs {}
4050#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4051#[repr(transparent)]
4052pub struct ESimServiceInfo(::windows::core::IUnknown);
4053impl ESimServiceInfo {
4054 pub fn AuthenticationPreference(&self) -> ::windows::core::Result<ESimAuthenticationPreference> {
4055 let this = self;
4056 unsafe {
4057 let mut result__ = ::windows::core::zeroed::<ESimAuthenticationPreference>();
4058 (::windows::core::Interface::vtable(this).AuthenticationPreference)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4059 }
4060 }
4061 pub fn IsESimUiEnabled(&self) -> ::windows::core::Result<bool> {
4062 let this = self;
4063 unsafe {
4064 let mut result__ = ::windows::core::zeroed::<bool>();
4065 (::windows::core::Interface::vtable(this).IsESimUiEnabled)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4066 }
4067 }
4068}
4069impl ::core::cmp::PartialEq for ESimServiceInfo {
4070 fn eq(&self, other: &Self) -> bool {
4071 self.0 == other.0
4072 }
4073}
4074impl ::core::cmp::Eq for ESimServiceInfo {}
4075impl ::core::fmt::Debug for ESimServiceInfo {
4076 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4077 f.debug_tuple("ESimServiceInfo").field(&self.0).finish()
4078 }
4079}
4080impl ::windows::core::RuntimeType for ESimServiceInfo {
4081 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimServiceInfo;{f16aabcf-7f59-4a51-8494-bd89d5ff50ee})");
4082}
4083impl ::core::clone::Clone for ESimServiceInfo {
4084 fn clone(&self) -> Self {
4085 Self(self.0.clone())
4086 }
4087}
4088unsafe impl ::windows::core::Interface for ESimServiceInfo {
4089 type Vtable = IESimServiceInfo_Vtbl;
4090}
4091unsafe impl ::windows::core::ComInterface for ESimServiceInfo {
4092 const IID: ::windows::core::GUID = <IESimServiceInfo as ::windows::core::ComInterface>::IID;
4093}
4094impl ::windows::core::RuntimeName for ESimServiceInfo {
4095 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimServiceInfo";
4096}
4097::windows::imp::interface_hierarchy!(ESimServiceInfo, ::windows::core::IUnknown, ::windows::core::IInspectable);
4098unsafe impl ::core::marker::Send for ESimServiceInfo {}
4099unsafe impl ::core::marker::Sync for ESimServiceInfo {}
4100#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4101#[repr(transparent)]
4102pub struct ESimUpdatedEventArgs(::windows::core::IUnknown);
4103impl ESimUpdatedEventArgs {
4104 pub fn ESim(&self) -> ::windows::core::Result<ESim> {
4105 let this = self;
4106 unsafe {
4107 let mut result__ = ::windows::core::zeroed::<ESim>();
4108 (::windows::core::Interface::vtable(this).ESim)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4109 }
4110 }
4111}
4112impl ::core::cmp::PartialEq for ESimUpdatedEventArgs {
4113 fn eq(&self, other: &Self) -> bool {
4114 self.0 == other.0
4115 }
4116}
4117impl ::core::cmp::Eq for ESimUpdatedEventArgs {}
4118impl ::core::fmt::Debug for ESimUpdatedEventArgs {
4119 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4120 f.debug_tuple("ESimUpdatedEventArgs").field(&self.0).finish()
4121 }
4122}
4123impl ::windows::core::RuntimeType for ESimUpdatedEventArgs {
4124 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimUpdatedEventArgs;{4c125cec-508d-4b88-83cb-68bef8168d12})");
4125}
4126impl ::core::clone::Clone for ESimUpdatedEventArgs {
4127 fn clone(&self) -> Self {
4128 Self(self.0.clone())
4129 }
4130}
4131unsafe impl ::windows::core::Interface for ESimUpdatedEventArgs {
4132 type Vtable = IESimUpdatedEventArgs_Vtbl;
4133}
4134unsafe impl ::windows::core::ComInterface for ESimUpdatedEventArgs {
4135 const IID: ::windows::core::GUID = <IESimUpdatedEventArgs as ::windows::core::ComInterface>::IID;
4136}
4137impl ::windows::core::RuntimeName for ESimUpdatedEventArgs {
4138 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimUpdatedEventArgs";
4139}
4140::windows::imp::interface_hierarchy!(ESimUpdatedEventArgs, ::windows::core::IUnknown, ::windows::core::IInspectable);
4141unsafe impl ::core::marker::Send for ESimUpdatedEventArgs {}
4142unsafe impl ::core::marker::Sync for ESimUpdatedEventArgs {}
4143#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4144#[repr(transparent)]
4145pub struct ESimWatcher(::windows::core::IUnknown);
4146impl ESimWatcher {
4147 pub fn Status(&self) -> ::windows::core::Result<ESimWatcherStatus> {
4148 let this = self;
4149 unsafe {
4150 let mut result__ = ::windows::core::zeroed::<ESimWatcherStatus>();
4151 (::windows::core::Interface::vtable(this).Status)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4152 }
4153 }
4154 pub fn Start(&self) -> ::windows::core::Result<()> {
4155 let this = self;
4156 unsafe { (::windows::core::Interface::vtable(this).Start)(::windows::core::Interface::as_raw(this)).ok() }
4157 }
4158 pub fn Stop(&self) -> ::windows::core::Result<()> {
4159 let this = self;
4160 unsafe { (::windows::core::Interface::vtable(this).Stop)(::windows::core::Interface::as_raw(this)).ok() }
4161 }
4162 #[doc = "*Required features: `\"Foundation\"`*"]
4163 #[cfg(feature = "Foundation")]
4164 pub fn Added(&self, handler: &super::super::Foundation::TypedEventHandler<ESimWatcher, ESimAddedEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4165 let this = self;
4166 unsafe {
4167 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4168 (::windows::core::Interface::vtable(this).Added)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4169 }
4170 }
4171 #[doc = "*Required features: `\"Foundation\"`*"]
4172 #[cfg(feature = "Foundation")]
4173 pub fn RemoveAdded(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4174 let this = self;
4175 unsafe { (::windows::core::Interface::vtable(this).RemoveAdded)(::windows::core::Interface::as_raw(this), token).ok() }
4176 }
4177 #[doc = "*Required features: `\"Foundation\"`*"]
4178 #[cfg(feature = "Foundation")]
4179 pub fn EnumerationCompleted(&self, handler: &super::super::Foundation::TypedEventHandler<ESimWatcher, ::windows::core::IInspectable>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4180 let this = self;
4181 unsafe {
4182 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4183 (::windows::core::Interface::vtable(this).EnumerationCompleted)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4184 }
4185 }
4186 #[doc = "*Required features: `\"Foundation\"`*"]
4187 #[cfg(feature = "Foundation")]
4188 pub fn RemoveEnumerationCompleted(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4189 let this = self;
4190 unsafe { (::windows::core::Interface::vtable(this).RemoveEnumerationCompleted)(::windows::core::Interface::as_raw(this), token).ok() }
4191 }
4192 #[doc = "*Required features: `\"Foundation\"`*"]
4193 #[cfg(feature = "Foundation")]
4194 pub fn Removed(&self, handler: &super::super::Foundation::TypedEventHandler<ESimWatcher, ESimRemovedEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4195 let this = self;
4196 unsafe {
4197 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4198 (::windows::core::Interface::vtable(this).Removed)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4199 }
4200 }
4201 #[doc = "*Required features: `\"Foundation\"`*"]
4202 #[cfg(feature = "Foundation")]
4203 pub fn RemoveRemoved(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4204 let this = self;
4205 unsafe { (::windows::core::Interface::vtable(this).RemoveRemoved)(::windows::core::Interface::as_raw(this), token).ok() }
4206 }
4207 #[doc = "*Required features: `\"Foundation\"`*"]
4208 #[cfg(feature = "Foundation")]
4209 pub fn Stopped(&self, handler: &super::super::Foundation::TypedEventHandler<ESimWatcher, ::windows::core::IInspectable>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4210 let this = self;
4211 unsafe {
4212 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4213 (::windows::core::Interface::vtable(this).Stopped)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4214 }
4215 }
4216 #[doc = "*Required features: `\"Foundation\"`*"]
4217 #[cfg(feature = "Foundation")]
4218 pub fn RemoveStopped(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4219 let this = self;
4220 unsafe { (::windows::core::Interface::vtable(this).RemoveStopped)(::windows::core::Interface::as_raw(this), token).ok() }
4221 }
4222 #[doc = "*Required features: `\"Foundation\"`*"]
4223 #[cfg(feature = "Foundation")]
4224 pub fn Updated(&self, handler: &super::super::Foundation::TypedEventHandler<ESimWatcher, ESimUpdatedEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4225 let this = self;
4226 unsafe {
4227 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4228 (::windows::core::Interface::vtable(this).Updated)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4229 }
4230 }
4231 #[doc = "*Required features: `\"Foundation\"`*"]
4232 #[cfg(feature = "Foundation")]
4233 pub fn RemoveUpdated(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4234 let this = self;
4235 unsafe { (::windows::core::Interface::vtable(this).RemoveUpdated)(::windows::core::Interface::as_raw(this), token).ok() }
4236 }
4237}
4238impl ::core::cmp::PartialEq for ESimWatcher {
4239 fn eq(&self, other: &Self) -> bool {
4240 self.0 == other.0
4241 }
4242}
4243impl ::core::cmp::Eq for ESimWatcher {}
4244impl ::core::fmt::Debug for ESimWatcher {
4245 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4246 f.debug_tuple("ESimWatcher").field(&self.0).finish()
4247 }
4248}
4249impl ::windows::core::RuntimeType for ESimWatcher {
4250 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ESimWatcher;{c1f84ceb-a28d-4fbf-9771-6e31b81ccf22})");
4251}
4252impl ::core::clone::Clone for ESimWatcher {
4253 fn clone(&self) -> Self {
4254 Self(self.0.clone())
4255 }
4256}
4257unsafe impl ::windows::core::Interface for ESimWatcher {
4258 type Vtable = IESimWatcher_Vtbl;
4259}
4260unsafe impl ::windows::core::ComInterface for ESimWatcher {
4261 const IID: ::windows::core::GUID = <IESimWatcher as ::windows::core::ComInterface>::IID;
4262}
4263impl ::windows::core::RuntimeName for ESimWatcher {
4264 const NAME: &'static str = "Windows.Networking.NetworkOperators.ESimWatcher";
4265}
4266::windows::imp::interface_hierarchy!(ESimWatcher, ::windows::core::IUnknown, ::windows::core::IInspectable);
4267unsafe impl ::core::marker::Send for ESimWatcher {}
4268unsafe impl ::core::marker::Sync for ESimWatcher {}
4269#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4270pub struct FdnAccessManager;
4271impl FdnAccessManager {
4272 #[doc = "*Required features: `\"Foundation\"`*"]
4273 #[cfg(feature = "Foundation")]
4274 pub fn RequestUnlockAsync(contactlistid: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<bool>> {
4275 Self::IFdnAccessManagerStatics(|this| unsafe {
4276 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<bool>>();
4277 (::windows::core::Interface::vtable(this).RequestUnlockAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(contactlistid), &mut result__).from_abi(result__)
4278 })
4279 }
4280 #[doc(hidden)]
4281 pub fn IFdnAccessManagerStatics<R, F: FnOnce(&IFdnAccessManagerStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
4282 static SHARED: ::windows::imp::FactoryCache<FdnAccessManager, IFdnAccessManagerStatics> = ::windows::imp::FactoryCache::new();
4283 SHARED.call(callback)
4284 }
4285}
4286impl ::windows::core::RuntimeName for FdnAccessManager {
4287 const NAME: &'static str = "Windows.Networking.NetworkOperators.FdnAccessManager";
4288}
4289#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4290#[repr(transparent)]
4291pub struct HotspotAuthenticationContext(::windows::core::IUnknown);
4292impl HotspotAuthenticationContext {
4293 pub fn WirelessNetworkId(&self) -> ::windows::core::Result<::windows::core::Array<u8>> {
4294 let this = self;
4295 unsafe {
4296 let mut result__ = ::core::mem::MaybeUninit::zeroed();
4297 (::windows::core::Interface::vtable(this).WirelessNetworkId)(::windows::core::Interface::as_raw(this), ::windows::core::Array::<u8>::set_abi_len(::std::mem::transmute(&mut result__)), result__.as_mut_ptr() as *mut _ as _).and_then(|| result__.assume_init())
4298 }
4299 }
4300 #[doc = "*Required features: `\"Networking_Connectivity\"`*"]
4301 #[cfg(feature = "Networking_Connectivity")]
4302 pub fn NetworkAdapter(&self) -> ::windows::core::Result<super::Connectivity::NetworkAdapter> {
4303 let this = self;
4304 unsafe {
4305 let mut result__ = ::windows::core::zeroed::<super::Connectivity::NetworkAdapter>();
4306 (::windows::core::Interface::vtable(this).NetworkAdapter)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4307 }
4308 }
4309 #[doc = "*Required features: `\"Foundation\"`*"]
4310 #[cfg(feature = "Foundation")]
4311 pub fn RedirectMessageUrl(&self) -> ::windows::core::Result<super::super::Foundation::Uri> {
4312 let this = self;
4313 unsafe {
4314 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Uri>();
4315 (::windows::core::Interface::vtable(this).RedirectMessageUrl)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4316 }
4317 }
4318 #[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
4319 #[cfg(feature = "Data_Xml_Dom")]
4320 pub fn RedirectMessageXml(&self) -> ::windows::core::Result<super::super::Data::Xml::Dom::XmlDocument> {
4321 let this = self;
4322 unsafe {
4323 let mut result__ = ::windows::core::zeroed::<super::super::Data::Xml::Dom::XmlDocument>();
4324 (::windows::core::Interface::vtable(this).RedirectMessageXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4325 }
4326 }
4327 #[doc = "*Required features: `\"Foundation\"`*"]
4328 #[cfg(feature = "Foundation")]
4329 pub fn AuthenticationUrl(&self) -> ::windows::core::Result<super::super::Foundation::Uri> {
4330 let this = self;
4331 unsafe {
4332 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Uri>();
4333 (::windows::core::Interface::vtable(this).AuthenticationUrl)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4334 }
4335 }
4336 pub fn IssueCredentials(&self, username: &::windows::core::HSTRING, password: &::windows::core::HSTRING, extraparameters: &::windows::core::HSTRING, markasmanualconnectonfailure: bool) -> ::windows::core::Result<()> {
4337 let this = self;
4338 unsafe { (::windows::core::Interface::vtable(this).IssueCredentials)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(username), ::core::mem::transmute_copy(password), ::core::mem::transmute_copy(extraparameters), markasmanualconnectonfailure).ok() }
4339 }
4340 pub fn AbortAuthentication(&self, markasmanual: bool) -> ::windows::core::Result<()> {
4341 let this = self;
4342 unsafe { (::windows::core::Interface::vtable(this).AbortAuthentication)(::windows::core::Interface::as_raw(this), markasmanual).ok() }
4343 }
4344 pub fn SkipAuthentication(&self) -> ::windows::core::Result<()> {
4345 let this = self;
4346 unsafe { (::windows::core::Interface::vtable(this).SkipAuthentication)(::windows::core::Interface::as_raw(this)).ok() }
4347 }
4348 pub fn TriggerAttentionRequired(&self, packagerelativeapplicationid: &::windows::core::HSTRING, applicationparameters: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
4349 let this = self;
4350 unsafe { (::windows::core::Interface::vtable(this).TriggerAttentionRequired)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(packagerelativeapplicationid), ::core::mem::transmute_copy(applicationparameters)).ok() }
4351 }
4352 #[doc = "*Required features: `\"Foundation\"`*"]
4353 #[cfg(feature = "Foundation")]
4354 pub fn IssueCredentialsAsync(&self, username: &::windows::core::HSTRING, password: &::windows::core::HSTRING, extraparameters: &::windows::core::HSTRING, markasmanualconnectonfailure: bool) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<HotspotCredentialsAuthenticationResult>> {
4355 let this = &::windows::core::ComInterface::cast::<IHotspotAuthenticationContext2>(self)?;
4356 unsafe {
4357 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<HotspotCredentialsAuthenticationResult>>();
4358 (::windows::core::Interface::vtable(this).IssueCredentialsAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(username), ::core::mem::transmute_copy(password), ::core::mem::transmute_copy(extraparameters), markasmanualconnectonfailure, &mut result__).from_abi(result__)
4359 }
4360 }
4361 pub fn TryGetAuthenticationContext(eventoken: &::windows::core::HSTRING, context: &mut ::core::option::Option<HotspotAuthenticationContext>) -> ::windows::core::Result<bool> {
4362 Self::IHotspotAuthenticationContextStatics(|this| unsafe {
4363 let mut result__ = ::windows::core::zeroed::<bool>();
4364 (::windows::core::Interface::vtable(this).TryGetAuthenticationContext)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(eventoken), context as *mut _ as _, &mut result__).from_abi(result__)
4365 })
4366 }
4367 #[doc(hidden)]
4368 pub fn IHotspotAuthenticationContextStatics<R, F: FnOnce(&IHotspotAuthenticationContextStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
4369 static SHARED: ::windows::imp::FactoryCache<HotspotAuthenticationContext, IHotspotAuthenticationContextStatics> = ::windows::imp::FactoryCache::new();
4370 SHARED.call(callback)
4371 }
4372}
4373impl ::core::cmp::PartialEq for HotspotAuthenticationContext {
4374 fn eq(&self, other: &Self) -> bool {
4375 self.0 == other.0
4376 }
4377}
4378impl ::core::cmp::Eq for HotspotAuthenticationContext {}
4379impl ::core::fmt::Debug for HotspotAuthenticationContext {
4380 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4381 f.debug_tuple("HotspotAuthenticationContext").field(&self.0).finish()
4382 }
4383}
4384impl ::windows::core::RuntimeType for HotspotAuthenticationContext {
4385 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.HotspotAuthenticationContext;{e756c791-1003-4de5-83c7-de61d88831d0})");
4386}
4387impl ::core::clone::Clone for HotspotAuthenticationContext {
4388 fn clone(&self) -> Self {
4389 Self(self.0.clone())
4390 }
4391}
4392unsafe impl ::windows::core::Interface for HotspotAuthenticationContext {
4393 type Vtable = IHotspotAuthenticationContext_Vtbl;
4394}
4395unsafe impl ::windows::core::ComInterface for HotspotAuthenticationContext {
4396 const IID: ::windows::core::GUID = <IHotspotAuthenticationContext as ::windows::core::ComInterface>::IID;
4397}
4398impl ::windows::core::RuntimeName for HotspotAuthenticationContext {
4399 const NAME: &'static str = "Windows.Networking.NetworkOperators.HotspotAuthenticationContext";
4400}
4401::windows::imp::interface_hierarchy!(HotspotAuthenticationContext, ::windows::core::IUnknown, ::windows::core::IInspectable);
4402#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4403#[repr(transparent)]
4404pub struct HotspotAuthenticationEventDetails(::windows::core::IUnknown);
4405impl HotspotAuthenticationEventDetails {
4406 pub fn EventToken(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4407 let this = self;
4408 unsafe {
4409 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4410 (::windows::core::Interface::vtable(this).EventToken)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4411 }
4412 }
4413}
4414impl ::core::cmp::PartialEq for HotspotAuthenticationEventDetails {
4415 fn eq(&self, other: &Self) -> bool {
4416 self.0 == other.0
4417 }
4418}
4419impl ::core::cmp::Eq for HotspotAuthenticationEventDetails {}
4420impl ::core::fmt::Debug for HotspotAuthenticationEventDetails {
4421 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4422 f.debug_tuple("HotspotAuthenticationEventDetails").field(&self.0).finish()
4423 }
4424}
4425impl ::windows::core::RuntimeType for HotspotAuthenticationEventDetails {
4426 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.HotspotAuthenticationEventDetails;{e756c791-1001-4de5-83c7-de61d88831d0})");
4427}
4428impl ::core::clone::Clone for HotspotAuthenticationEventDetails {
4429 fn clone(&self) -> Self {
4430 Self(self.0.clone())
4431 }
4432}
4433unsafe impl ::windows::core::Interface for HotspotAuthenticationEventDetails {
4434 type Vtable = IHotspotAuthenticationEventDetails_Vtbl;
4435}
4436unsafe impl ::windows::core::ComInterface for HotspotAuthenticationEventDetails {
4437 const IID: ::windows::core::GUID = <IHotspotAuthenticationEventDetails as ::windows::core::ComInterface>::IID;
4438}
4439impl ::windows::core::RuntimeName for HotspotAuthenticationEventDetails {
4440 const NAME: &'static str = "Windows.Networking.NetworkOperators.HotspotAuthenticationEventDetails";
4441}
4442::windows::imp::interface_hierarchy!(HotspotAuthenticationEventDetails, ::windows::core::IUnknown, ::windows::core::IInspectable);
4443#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4444#[repr(transparent)]
4445pub struct HotspotCredentialsAuthenticationResult(::windows::core::IUnknown);
4446impl HotspotCredentialsAuthenticationResult {
4447 pub fn HasNetworkErrorOccurred(&self) -> ::windows::core::Result<bool> {
4448 let this = self;
4449 unsafe {
4450 let mut result__ = ::windows::core::zeroed::<bool>();
4451 (::windows::core::Interface::vtable(this).HasNetworkErrorOccurred)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4452 }
4453 }
4454 pub fn ResponseCode(&self) -> ::windows::core::Result<HotspotAuthenticationResponseCode> {
4455 let this = self;
4456 unsafe {
4457 let mut result__ = ::windows::core::zeroed::<HotspotAuthenticationResponseCode>();
4458 (::windows::core::Interface::vtable(this).ResponseCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4459 }
4460 }
4461 #[doc = "*Required features: `\"Foundation\"`*"]
4462 #[cfg(feature = "Foundation")]
4463 pub fn LogoffUrl(&self) -> ::windows::core::Result<super::super::Foundation::Uri> {
4464 let this = self;
4465 unsafe {
4466 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Uri>();
4467 (::windows::core::Interface::vtable(this).LogoffUrl)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4468 }
4469 }
4470 #[doc = "*Required features: `\"Data_Xml_Dom\"`*"]
4471 #[cfg(feature = "Data_Xml_Dom")]
4472 pub fn AuthenticationReplyXml(&self) -> ::windows::core::Result<super::super::Data::Xml::Dom::XmlDocument> {
4473 let this = self;
4474 unsafe {
4475 let mut result__ = ::windows::core::zeroed::<super::super::Data::Xml::Dom::XmlDocument>();
4476 (::windows::core::Interface::vtable(this).AuthenticationReplyXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4477 }
4478 }
4479}
4480impl ::core::cmp::PartialEq for HotspotCredentialsAuthenticationResult {
4481 fn eq(&self, other: &Self) -> bool {
4482 self.0 == other.0
4483 }
4484}
4485impl ::core::cmp::Eq for HotspotCredentialsAuthenticationResult {}
4486impl ::core::fmt::Debug for HotspotCredentialsAuthenticationResult {
4487 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4488 f.debug_tuple("HotspotCredentialsAuthenticationResult").field(&self.0).finish()
4489 }
4490}
4491impl ::windows::core::RuntimeType for HotspotCredentialsAuthenticationResult {
4492 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.HotspotCredentialsAuthenticationResult;{e756c791-1005-4de5-83c7-de61d88831d0})");
4493}
4494impl ::core::clone::Clone for HotspotCredentialsAuthenticationResult {
4495 fn clone(&self) -> Self {
4496 Self(self.0.clone())
4497 }
4498}
4499unsafe impl ::windows::core::Interface for HotspotCredentialsAuthenticationResult {
4500 type Vtable = IHotspotCredentialsAuthenticationResult_Vtbl;
4501}
4502unsafe impl ::windows::core::ComInterface for HotspotCredentialsAuthenticationResult {
4503 const IID: ::windows::core::GUID = <IHotspotCredentialsAuthenticationResult as ::windows::core::ComInterface>::IID;
4504}
4505impl ::windows::core::RuntimeName for HotspotCredentialsAuthenticationResult {
4506 const NAME: &'static str = "Windows.Networking.NetworkOperators.HotspotCredentialsAuthenticationResult";
4507}
4508::windows::imp::interface_hierarchy!(HotspotCredentialsAuthenticationResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
4509#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4510pub struct KnownCSimFilePaths;
4511impl KnownCSimFilePaths {
4512 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4513 #[cfg(feature = "Foundation_Collections")]
4514 pub fn EFSpn() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4515 Self::IKnownCSimFilePathsStatics(|this| unsafe {
4516 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4517 (::windows::core::Interface::vtable(this).EFSpn)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4518 })
4519 }
4520 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4521 #[cfg(feature = "Foundation_Collections")]
4522 pub fn Gid1() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4523 Self::IKnownCSimFilePathsStatics(|this| unsafe {
4524 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4525 (::windows::core::Interface::vtable(this).Gid1)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4526 })
4527 }
4528 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4529 #[cfg(feature = "Foundation_Collections")]
4530 pub fn Gid2() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4531 Self::IKnownCSimFilePathsStatics(|this| unsafe {
4532 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4533 (::windows::core::Interface::vtable(this).Gid2)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4534 })
4535 }
4536 #[doc(hidden)]
4537 pub fn IKnownCSimFilePathsStatics<R, F: FnOnce(&IKnownCSimFilePathsStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
4538 static SHARED: ::windows::imp::FactoryCache<KnownCSimFilePaths, IKnownCSimFilePathsStatics> = ::windows::imp::FactoryCache::new();
4539 SHARED.call(callback)
4540 }
4541}
4542impl ::windows::core::RuntimeName for KnownCSimFilePaths {
4543 const NAME: &'static str = "Windows.Networking.NetworkOperators.KnownCSimFilePaths";
4544}
4545#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4546pub struct KnownRuimFilePaths;
4547impl KnownRuimFilePaths {
4548 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4549 #[cfg(feature = "Foundation_Collections")]
4550 pub fn EFSpn() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4551 Self::IKnownRuimFilePathsStatics(|this| unsafe {
4552 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4553 (::windows::core::Interface::vtable(this).EFSpn)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4554 })
4555 }
4556 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4557 #[cfg(feature = "Foundation_Collections")]
4558 pub fn Gid1() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4559 Self::IKnownRuimFilePathsStatics(|this| unsafe {
4560 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4561 (::windows::core::Interface::vtable(this).Gid1)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4562 })
4563 }
4564 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4565 #[cfg(feature = "Foundation_Collections")]
4566 pub fn Gid2() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4567 Self::IKnownRuimFilePathsStatics(|this| unsafe {
4568 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4569 (::windows::core::Interface::vtable(this).Gid2)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4570 })
4571 }
4572 #[doc(hidden)]
4573 pub fn IKnownRuimFilePathsStatics<R, F: FnOnce(&IKnownRuimFilePathsStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
4574 static SHARED: ::windows::imp::FactoryCache<KnownRuimFilePaths, IKnownRuimFilePathsStatics> = ::windows::imp::FactoryCache::new();
4575 SHARED.call(callback)
4576 }
4577}
4578impl ::windows::core::RuntimeName for KnownRuimFilePaths {
4579 const NAME: &'static str = "Windows.Networking.NetworkOperators.KnownRuimFilePaths";
4580}
4581#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4582pub struct KnownSimFilePaths;
4583impl KnownSimFilePaths {
4584 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4585 #[cfg(feature = "Foundation_Collections")]
4586 pub fn EFOns() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4587 Self::IKnownSimFilePathsStatics(|this| unsafe {
4588 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4589 (::windows::core::Interface::vtable(this).EFOns)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4590 })
4591 }
4592 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4593 #[cfg(feature = "Foundation_Collections")]
4594 pub fn EFSpn() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4595 Self::IKnownSimFilePathsStatics(|this| unsafe {
4596 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4597 (::windows::core::Interface::vtable(this).EFSpn)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4598 })
4599 }
4600 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4601 #[cfg(feature = "Foundation_Collections")]
4602 pub fn Gid1() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4603 Self::IKnownSimFilePathsStatics(|this| unsafe {
4604 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4605 (::windows::core::Interface::vtable(this).Gid1)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4606 })
4607 }
4608 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4609 #[cfg(feature = "Foundation_Collections")]
4610 pub fn Gid2() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4611 Self::IKnownSimFilePathsStatics(|this| unsafe {
4612 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4613 (::windows::core::Interface::vtable(this).Gid2)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4614 })
4615 }
4616 #[doc(hidden)]
4617 pub fn IKnownSimFilePathsStatics<R, F: FnOnce(&IKnownSimFilePathsStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
4618 static SHARED: ::windows::imp::FactoryCache<KnownSimFilePaths, IKnownSimFilePathsStatics> = ::windows::imp::FactoryCache::new();
4619 SHARED.call(callback)
4620 }
4621}
4622impl ::windows::core::RuntimeName for KnownSimFilePaths {
4623 const NAME: &'static str = "Windows.Networking.NetworkOperators.KnownSimFilePaths";
4624}
4625#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4626pub struct KnownUSimFilePaths;
4627impl KnownUSimFilePaths {
4628 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4629 #[cfg(feature = "Foundation_Collections")]
4630 pub fn EFSpn() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4631 Self::IKnownUSimFilePathsStatics(|this| unsafe {
4632 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4633 (::windows::core::Interface::vtable(this).EFSpn)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4634 })
4635 }
4636 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4637 #[cfg(feature = "Foundation_Collections")]
4638 pub fn EFOpl() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4639 Self::IKnownUSimFilePathsStatics(|this| unsafe {
4640 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4641 (::windows::core::Interface::vtable(this).EFOpl)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4642 })
4643 }
4644 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4645 #[cfg(feature = "Foundation_Collections")]
4646 pub fn EFPnn() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4647 Self::IKnownUSimFilePathsStatics(|this| unsafe {
4648 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4649 (::windows::core::Interface::vtable(this).EFPnn)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4650 })
4651 }
4652 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4653 #[cfg(feature = "Foundation_Collections")]
4654 pub fn Gid1() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4655 Self::IKnownUSimFilePathsStatics(|this| unsafe {
4656 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4657 (::windows::core::Interface::vtable(this).Gid1)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4658 })
4659 }
4660 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4661 #[cfg(feature = "Foundation_Collections")]
4662 pub fn Gid2() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
4663 Self::IKnownUSimFilePathsStatics(|this| unsafe {
4664 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
4665 (::windows::core::Interface::vtable(this).Gid2)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4666 })
4667 }
4668 #[doc(hidden)]
4669 pub fn IKnownUSimFilePathsStatics<R, F: FnOnce(&IKnownUSimFilePathsStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
4670 static SHARED: ::windows::imp::FactoryCache<KnownUSimFilePaths, IKnownUSimFilePathsStatics> = ::windows::imp::FactoryCache::new();
4671 SHARED.call(callback)
4672 }
4673}
4674impl ::windows::core::RuntimeName for KnownUSimFilePaths {
4675 const NAME: &'static str = "Windows.Networking.NetworkOperators.KnownUSimFilePaths";
4676}
4677#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4678#[repr(transparent)]
4679pub struct MobileBroadbandAccount(::windows::core::IUnknown);
4680impl MobileBroadbandAccount {
4681 pub fn NetworkAccountId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4682 let this = self;
4683 unsafe {
4684 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4685 (::windows::core::Interface::vtable(this).NetworkAccountId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4686 }
4687 }
4688 pub fn ServiceProviderGuid(&self) -> ::windows::core::Result<::windows::core::GUID> {
4689 let this = self;
4690 unsafe {
4691 let mut result__ = ::windows::core::zeroed::<::windows::core::GUID>();
4692 (::windows::core::Interface::vtable(this).ServiceProviderGuid)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4693 }
4694 }
4695 pub fn ServiceProviderName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4696 let this = self;
4697 unsafe {
4698 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4699 (::windows::core::Interface::vtable(this).ServiceProviderName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4700 }
4701 }
4702 pub fn CurrentNetwork(&self) -> ::windows::core::Result<MobileBroadbandNetwork> {
4703 let this = self;
4704 unsafe {
4705 let mut result__ = ::windows::core::zeroed::<MobileBroadbandNetwork>();
4706 (::windows::core::Interface::vtable(this).CurrentNetwork)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4707 }
4708 }
4709 pub fn CurrentDeviceInformation(&self) -> ::windows::core::Result<MobileBroadbandDeviceInformation> {
4710 let this = self;
4711 unsafe {
4712 let mut result__ = ::windows::core::zeroed::<MobileBroadbandDeviceInformation>();
4713 (::windows::core::Interface::vtable(this).CurrentDeviceInformation)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4714 }
4715 }
4716 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Networking_Connectivity\"`*"]
4717 #[cfg(all(feature = "Foundation_Collections", feature = "Networking_Connectivity"))]
4718 pub fn GetConnectionProfiles(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<super::Connectivity::ConnectionProfile>> {
4719 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandAccount2>(self)?;
4720 unsafe {
4721 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<super::Connectivity::ConnectionProfile>>();
4722 (::windows::core::Interface::vtable(this).GetConnectionProfiles)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4723 }
4724 }
4725 #[doc = "*Required features: `\"Foundation\"`*"]
4726 #[cfg(feature = "Foundation")]
4727 pub fn AccountExperienceUrl(&self) -> ::windows::core::Result<super::super::Foundation::Uri> {
4728 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandAccount3>(self)?;
4729 unsafe {
4730 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Uri>();
4731 (::windows::core::Interface::vtable(this).AccountExperienceUrl)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4732 }
4733 }
4734 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
4735 #[cfg(feature = "Foundation_Collections")]
4736 pub fn AvailableNetworkAccountIds() -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<::windows::core::HSTRING>> {
4737 Self::IMobileBroadbandAccountStatics(|this| unsafe {
4738 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<::windows::core::HSTRING>>();
4739 (::windows::core::Interface::vtable(this).AvailableNetworkAccountIds)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4740 })
4741 }
4742 pub fn CreateFromNetworkAccountId(networkaccountid: &::windows::core::HSTRING) -> ::windows::core::Result<MobileBroadbandAccount> {
4743 Self::IMobileBroadbandAccountStatics(|this| unsafe {
4744 let mut result__ = ::windows::core::zeroed::<MobileBroadbandAccount>();
4745 (::windows::core::Interface::vtable(this).CreateFromNetworkAccountId)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(networkaccountid), &mut result__).from_abi(result__)
4746 })
4747 }
4748 #[doc(hidden)]
4749 pub fn IMobileBroadbandAccountStatics<R, F: FnOnce(&IMobileBroadbandAccountStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
4750 static SHARED: ::windows::imp::FactoryCache<MobileBroadbandAccount, IMobileBroadbandAccountStatics> = ::windows::imp::FactoryCache::new();
4751 SHARED.call(callback)
4752 }
4753}
4754impl ::core::cmp::PartialEq for MobileBroadbandAccount {
4755 fn eq(&self, other: &Self) -> bool {
4756 self.0 == other.0
4757 }
4758}
4759impl ::core::cmp::Eq for MobileBroadbandAccount {}
4760impl ::core::fmt::Debug for MobileBroadbandAccount {
4761 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4762 f.debug_tuple("MobileBroadbandAccount").field(&self.0).finish()
4763 }
4764}
4765impl ::windows::core::RuntimeType for MobileBroadbandAccount {
4766 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandAccount;{36c24ccd-cee2-43e0-a603-ee86a36d6570})");
4767}
4768impl ::core::clone::Clone for MobileBroadbandAccount {
4769 fn clone(&self) -> Self {
4770 Self(self.0.clone())
4771 }
4772}
4773unsafe impl ::windows::core::Interface for MobileBroadbandAccount {
4774 type Vtable = IMobileBroadbandAccount_Vtbl;
4775}
4776unsafe impl ::windows::core::ComInterface for MobileBroadbandAccount {
4777 const IID: ::windows::core::GUID = <IMobileBroadbandAccount as ::windows::core::ComInterface>::IID;
4778}
4779impl ::windows::core::RuntimeName for MobileBroadbandAccount {
4780 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandAccount";
4781}
4782::windows::imp::interface_hierarchy!(MobileBroadbandAccount, ::windows::core::IUnknown, ::windows::core::IInspectable);
4783#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4784#[repr(transparent)]
4785pub struct MobileBroadbandAccountEventArgs(::windows::core::IUnknown);
4786impl MobileBroadbandAccountEventArgs {
4787 pub fn NetworkAccountId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4788 let this = self;
4789 unsafe {
4790 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4791 (::windows::core::Interface::vtable(this).NetworkAccountId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4792 }
4793 }
4794}
4795impl ::core::cmp::PartialEq for MobileBroadbandAccountEventArgs {
4796 fn eq(&self, other: &Self) -> bool {
4797 self.0 == other.0
4798 }
4799}
4800impl ::core::cmp::Eq for MobileBroadbandAccountEventArgs {}
4801impl ::core::fmt::Debug for MobileBroadbandAccountEventArgs {
4802 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4803 f.debug_tuple("MobileBroadbandAccountEventArgs").field(&self.0).finish()
4804 }
4805}
4806impl ::windows::core::RuntimeType for MobileBroadbandAccountEventArgs {
4807 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandAccountEventArgs;{3853c880-77de-4c04-bead-a123b08c9f59})");
4808}
4809impl ::core::clone::Clone for MobileBroadbandAccountEventArgs {
4810 fn clone(&self) -> Self {
4811 Self(self.0.clone())
4812 }
4813}
4814unsafe impl ::windows::core::Interface for MobileBroadbandAccountEventArgs {
4815 type Vtable = IMobileBroadbandAccountEventArgs_Vtbl;
4816}
4817unsafe impl ::windows::core::ComInterface for MobileBroadbandAccountEventArgs {
4818 const IID: ::windows::core::GUID = <IMobileBroadbandAccountEventArgs as ::windows::core::ComInterface>::IID;
4819}
4820impl ::windows::core::RuntimeName for MobileBroadbandAccountEventArgs {
4821 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandAccountEventArgs";
4822}
4823::windows::imp::interface_hierarchy!(MobileBroadbandAccountEventArgs, ::windows::core::IUnknown, ::windows::core::IInspectable);
4824#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4825#[repr(transparent)]
4826pub struct MobileBroadbandAccountUpdatedEventArgs(::windows::core::IUnknown);
4827impl MobileBroadbandAccountUpdatedEventArgs {
4828 pub fn NetworkAccountId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
4829 let this = self;
4830 unsafe {
4831 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
4832 (::windows::core::Interface::vtable(this).NetworkAccountId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4833 }
4834 }
4835 pub fn HasDeviceInformationChanged(&self) -> ::windows::core::Result<bool> {
4836 let this = self;
4837 unsafe {
4838 let mut result__ = ::windows::core::zeroed::<bool>();
4839 (::windows::core::Interface::vtable(this).HasDeviceInformationChanged)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4840 }
4841 }
4842 pub fn HasNetworkChanged(&self) -> ::windows::core::Result<bool> {
4843 let this = self;
4844 unsafe {
4845 let mut result__ = ::windows::core::zeroed::<bool>();
4846 (::windows::core::Interface::vtable(this).HasNetworkChanged)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4847 }
4848 }
4849}
4850impl ::core::cmp::PartialEq for MobileBroadbandAccountUpdatedEventArgs {
4851 fn eq(&self, other: &Self) -> bool {
4852 self.0 == other.0
4853 }
4854}
4855impl ::core::cmp::Eq for MobileBroadbandAccountUpdatedEventArgs {}
4856impl ::core::fmt::Debug for MobileBroadbandAccountUpdatedEventArgs {
4857 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4858 f.debug_tuple("MobileBroadbandAccountUpdatedEventArgs").field(&self.0).finish()
4859 }
4860}
4861impl ::windows::core::RuntimeType for MobileBroadbandAccountUpdatedEventArgs {
4862 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandAccountUpdatedEventArgs;{7bc31d88-a6bd-49e1-80ab-6b91354a57d4})");
4863}
4864impl ::core::clone::Clone for MobileBroadbandAccountUpdatedEventArgs {
4865 fn clone(&self) -> Self {
4866 Self(self.0.clone())
4867 }
4868}
4869unsafe impl ::windows::core::Interface for MobileBroadbandAccountUpdatedEventArgs {
4870 type Vtable = IMobileBroadbandAccountUpdatedEventArgs_Vtbl;
4871}
4872unsafe impl ::windows::core::ComInterface for MobileBroadbandAccountUpdatedEventArgs {
4873 const IID: ::windows::core::GUID = <IMobileBroadbandAccountUpdatedEventArgs as ::windows::core::ComInterface>::IID;
4874}
4875impl ::windows::core::RuntimeName for MobileBroadbandAccountUpdatedEventArgs {
4876 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandAccountUpdatedEventArgs";
4877}
4878::windows::imp::interface_hierarchy!(MobileBroadbandAccountUpdatedEventArgs, ::windows::core::IUnknown, ::windows::core::IInspectable);
4879#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
4880#[repr(transparent)]
4881pub struct MobileBroadbandAccountWatcher(::windows::core::IUnknown);
4882impl MobileBroadbandAccountWatcher {
4883 pub fn new() -> ::windows::core::Result<Self> {
4884 Self::IActivationFactory(|f| f.ActivateInstance::<Self>())
4885 }
4886 fn IActivationFactory<R, F: FnOnce(&::windows::imp::IGenericFactory) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
4887 static SHARED: ::windows::imp::FactoryCache<MobileBroadbandAccountWatcher, ::windows::imp::IGenericFactory> = ::windows::imp::FactoryCache::new();
4888 SHARED.call(callback)
4889 }
4890 #[doc = "*Required features: `\"Foundation\"`*"]
4891 #[cfg(feature = "Foundation")]
4892 pub fn AccountAdded(&self, handler: &super::super::Foundation::TypedEventHandler<MobileBroadbandAccountWatcher, MobileBroadbandAccountEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4893 let this = self;
4894 unsafe {
4895 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4896 (::windows::core::Interface::vtable(this).AccountAdded)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4897 }
4898 }
4899 #[doc = "*Required features: `\"Foundation\"`*"]
4900 #[cfg(feature = "Foundation")]
4901 pub fn RemoveAccountAdded(&self, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4902 let this = self;
4903 unsafe { (::windows::core::Interface::vtable(this).RemoveAccountAdded)(::windows::core::Interface::as_raw(this), cookie).ok() }
4904 }
4905 #[doc = "*Required features: `\"Foundation\"`*"]
4906 #[cfg(feature = "Foundation")]
4907 pub fn AccountUpdated(&self, handler: &super::super::Foundation::TypedEventHandler<MobileBroadbandAccountWatcher, MobileBroadbandAccountUpdatedEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4908 let this = self;
4909 unsafe {
4910 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4911 (::windows::core::Interface::vtable(this).AccountUpdated)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4912 }
4913 }
4914 #[doc = "*Required features: `\"Foundation\"`*"]
4915 #[cfg(feature = "Foundation")]
4916 pub fn RemoveAccountUpdated(&self, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4917 let this = self;
4918 unsafe { (::windows::core::Interface::vtable(this).RemoveAccountUpdated)(::windows::core::Interface::as_raw(this), cookie).ok() }
4919 }
4920 #[doc = "*Required features: `\"Foundation\"`*"]
4921 #[cfg(feature = "Foundation")]
4922 pub fn AccountRemoved(&self, handler: &super::super::Foundation::TypedEventHandler<MobileBroadbandAccountWatcher, MobileBroadbandAccountEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4923 let this = self;
4924 unsafe {
4925 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4926 (::windows::core::Interface::vtable(this).AccountRemoved)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4927 }
4928 }
4929 #[doc = "*Required features: `\"Foundation\"`*"]
4930 #[cfg(feature = "Foundation")]
4931 pub fn RemoveAccountRemoved(&self, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4932 let this = self;
4933 unsafe { (::windows::core::Interface::vtable(this).RemoveAccountRemoved)(::windows::core::Interface::as_raw(this), cookie).ok() }
4934 }
4935 #[doc = "*Required features: `\"Foundation\"`*"]
4936 #[cfg(feature = "Foundation")]
4937 pub fn EnumerationCompleted(&self, handler: &super::super::Foundation::TypedEventHandler<MobileBroadbandAccountWatcher, ::windows::core::IInspectable>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4938 let this = self;
4939 unsafe {
4940 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4941 (::windows::core::Interface::vtable(this).EnumerationCompleted)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4942 }
4943 }
4944 #[doc = "*Required features: `\"Foundation\"`*"]
4945 #[cfg(feature = "Foundation")]
4946 pub fn RemoveEnumerationCompleted(&self, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4947 let this = self;
4948 unsafe { (::windows::core::Interface::vtable(this).RemoveEnumerationCompleted)(::windows::core::Interface::as_raw(this), cookie).ok() }
4949 }
4950 #[doc = "*Required features: `\"Foundation\"`*"]
4951 #[cfg(feature = "Foundation")]
4952 pub fn Stopped(&self, handler: &super::super::Foundation::TypedEventHandler<MobileBroadbandAccountWatcher, ::windows::core::IInspectable>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
4953 let this = self;
4954 unsafe {
4955 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
4956 (::windows::core::Interface::vtable(this).Stopped)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
4957 }
4958 }
4959 #[doc = "*Required features: `\"Foundation\"`*"]
4960 #[cfg(feature = "Foundation")]
4961 pub fn RemoveStopped(&self, cookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
4962 let this = self;
4963 unsafe { (::windows::core::Interface::vtable(this).RemoveStopped)(::windows::core::Interface::as_raw(this), cookie).ok() }
4964 }
4965 pub fn Status(&self) -> ::windows::core::Result<MobileBroadbandAccountWatcherStatus> {
4966 let this = self;
4967 unsafe {
4968 let mut result__ = ::windows::core::zeroed::<MobileBroadbandAccountWatcherStatus>();
4969 (::windows::core::Interface::vtable(this).Status)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
4970 }
4971 }
4972 pub fn Start(&self) -> ::windows::core::Result<()> {
4973 let this = self;
4974 unsafe { (::windows::core::Interface::vtable(this).Start)(::windows::core::Interface::as_raw(this)).ok() }
4975 }
4976 pub fn Stop(&self) -> ::windows::core::Result<()> {
4977 let this = self;
4978 unsafe { (::windows::core::Interface::vtable(this).Stop)(::windows::core::Interface::as_raw(this)).ok() }
4979 }
4980}
4981impl ::core::cmp::PartialEq for MobileBroadbandAccountWatcher {
4982 fn eq(&self, other: &Self) -> bool {
4983 self.0 == other.0
4984 }
4985}
4986impl ::core::cmp::Eq for MobileBroadbandAccountWatcher {}
4987impl ::core::fmt::Debug for MobileBroadbandAccountWatcher {
4988 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4989 f.debug_tuple("MobileBroadbandAccountWatcher").field(&self.0).finish()
4990 }
4991}
4992impl ::windows::core::RuntimeType for MobileBroadbandAccountWatcher {
4993 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandAccountWatcher;{6bf3335e-23b5-449f-928d-5e0d3e04471d})");
4994}
4995impl ::core::clone::Clone for MobileBroadbandAccountWatcher {
4996 fn clone(&self) -> Self {
4997 Self(self.0.clone())
4998 }
4999}
5000unsafe impl ::windows::core::Interface for MobileBroadbandAccountWatcher {
5001 type Vtable = IMobileBroadbandAccountWatcher_Vtbl;
5002}
5003unsafe impl ::windows::core::ComInterface for MobileBroadbandAccountWatcher {
5004 const IID: ::windows::core::GUID = <IMobileBroadbandAccountWatcher as ::windows::core::ComInterface>::IID;
5005}
5006impl ::windows::core::RuntimeName for MobileBroadbandAccountWatcher {
5007 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandAccountWatcher";
5008}
5009::windows::imp::interface_hierarchy!(MobileBroadbandAccountWatcher, ::windows::core::IUnknown, ::windows::core::IInspectable);
5010#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5011#[repr(transparent)]
5012pub struct MobileBroadbandAntennaSar(::windows::core::IUnknown);
5013impl MobileBroadbandAntennaSar {
5014 pub fn AntennaIndex(&self) -> ::windows::core::Result<i32> {
5015 let this = self;
5016 unsafe {
5017 let mut result__ = ::windows::core::zeroed::<i32>();
5018 (::windows::core::Interface::vtable(this).AntennaIndex)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5019 }
5020 }
5021 pub fn SarBackoffIndex(&self) -> ::windows::core::Result<i32> {
5022 let this = self;
5023 unsafe {
5024 let mut result__ = ::windows::core::zeroed::<i32>();
5025 (::windows::core::Interface::vtable(this).SarBackoffIndex)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5026 }
5027 }
5028 pub fn CreateWithIndex(antennaindex: i32, sarbackoffindex: i32) -> ::windows::core::Result<MobileBroadbandAntennaSar> {
5029 Self::IMobileBroadbandAntennaSarFactory(|this| unsafe {
5030 let mut result__ = ::windows::core::zeroed::<MobileBroadbandAntennaSar>();
5031 (::windows::core::Interface::vtable(this).CreateWithIndex)(::windows::core::Interface::as_raw(this), antennaindex, sarbackoffindex, &mut result__).from_abi(result__)
5032 })
5033 }
5034 #[doc(hidden)]
5035 pub fn IMobileBroadbandAntennaSarFactory<R, F: FnOnce(&IMobileBroadbandAntennaSarFactory) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
5036 static SHARED: ::windows::imp::FactoryCache<MobileBroadbandAntennaSar, IMobileBroadbandAntennaSarFactory> = ::windows::imp::FactoryCache::new();
5037 SHARED.call(callback)
5038 }
5039}
5040impl ::core::cmp::PartialEq for MobileBroadbandAntennaSar {
5041 fn eq(&self, other: &Self) -> bool {
5042 self.0 == other.0
5043 }
5044}
5045impl ::core::cmp::Eq for MobileBroadbandAntennaSar {}
5046impl ::core::fmt::Debug for MobileBroadbandAntennaSar {
5047 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5048 f.debug_tuple("MobileBroadbandAntennaSar").field(&self.0).finish()
5049 }
5050}
5051impl ::windows::core::RuntimeType for MobileBroadbandAntennaSar {
5052 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandAntennaSar;{b9af4b7e-cbf9-4109-90be-5c06bfd513b6})");
5053}
5054impl ::core::clone::Clone for MobileBroadbandAntennaSar {
5055 fn clone(&self) -> Self {
5056 Self(self.0.clone())
5057 }
5058}
5059unsafe impl ::windows::core::Interface for MobileBroadbandAntennaSar {
5060 type Vtable = IMobileBroadbandAntennaSar_Vtbl;
5061}
5062unsafe impl ::windows::core::ComInterface for MobileBroadbandAntennaSar {
5063 const IID: ::windows::core::GUID = <IMobileBroadbandAntennaSar as ::windows::core::ComInterface>::IID;
5064}
5065impl ::windows::core::RuntimeName for MobileBroadbandAntennaSar {
5066 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandAntennaSar";
5067}
5068::windows::imp::interface_hierarchy!(MobileBroadbandAntennaSar, ::windows::core::IUnknown, ::windows::core::IInspectable);
5069unsafe impl ::core::marker::Send for MobileBroadbandAntennaSar {}
5070unsafe impl ::core::marker::Sync for MobileBroadbandAntennaSar {}
5071#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5072#[repr(transparent)]
5073pub struct MobileBroadbandCellCdma(::windows::core::IUnknown);
5074impl MobileBroadbandCellCdma {
5075 #[doc = "*Required features: `\"Foundation\"`*"]
5076 #[cfg(feature = "Foundation")]
5077 pub fn BaseStationId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5078 let this = self;
5079 unsafe {
5080 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5081 (::windows::core::Interface::vtable(this).BaseStationId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5082 }
5083 }
5084 #[doc = "*Required features: `\"Foundation\"`*"]
5085 #[cfg(feature = "Foundation")]
5086 pub fn BaseStationPNCode(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5087 let this = self;
5088 unsafe {
5089 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5090 (::windows::core::Interface::vtable(this).BaseStationPNCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5091 }
5092 }
5093 #[doc = "*Required features: `\"Foundation\"`*"]
5094 #[cfg(feature = "Foundation")]
5095 pub fn BaseStationLatitude(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5096 let this = self;
5097 unsafe {
5098 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5099 (::windows::core::Interface::vtable(this).BaseStationLatitude)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5100 }
5101 }
5102 #[doc = "*Required features: `\"Foundation\"`*"]
5103 #[cfg(feature = "Foundation")]
5104 pub fn BaseStationLongitude(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5105 let this = self;
5106 unsafe {
5107 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5108 (::windows::core::Interface::vtable(this).BaseStationLongitude)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5109 }
5110 }
5111 #[doc = "*Required features: `\"Foundation\"`*"]
5112 #[cfg(feature = "Foundation")]
5113 pub fn BaseStationLastBroadcastGpsTime(&self) -> ::windows::core::Result<super::super::Foundation::IReference<super::super::Foundation::TimeSpan>> {
5114 let this = self;
5115 unsafe {
5116 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<super::super::Foundation::TimeSpan>>();
5117 (::windows::core::Interface::vtable(this).BaseStationLastBroadcastGpsTime)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5118 }
5119 }
5120 #[doc = "*Required features: `\"Foundation\"`*"]
5121 #[cfg(feature = "Foundation")]
5122 pub fn NetworkId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5123 let this = self;
5124 unsafe {
5125 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5126 (::windows::core::Interface::vtable(this).NetworkId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5127 }
5128 }
5129 #[doc = "*Required features: `\"Foundation\"`*"]
5130 #[cfg(feature = "Foundation")]
5131 pub fn PilotSignalStrengthInDB(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5132 let this = self;
5133 unsafe {
5134 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5135 (::windows::core::Interface::vtable(this).PilotSignalStrengthInDB)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5136 }
5137 }
5138 #[doc = "*Required features: `\"Foundation\"`*"]
5139 #[cfg(feature = "Foundation")]
5140 pub fn SystemId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5141 let this = self;
5142 unsafe {
5143 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5144 (::windows::core::Interface::vtable(this).SystemId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5145 }
5146 }
5147}
5148impl ::core::cmp::PartialEq for MobileBroadbandCellCdma {
5149 fn eq(&self, other: &Self) -> bool {
5150 self.0 == other.0
5151 }
5152}
5153impl ::core::cmp::Eq for MobileBroadbandCellCdma {}
5154impl ::core::fmt::Debug for MobileBroadbandCellCdma {
5155 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5156 f.debug_tuple("MobileBroadbandCellCdma").field(&self.0).finish()
5157 }
5158}
5159impl ::windows::core::RuntimeType for MobileBroadbandCellCdma {
5160 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandCellCdma;{0601b3b4-411a-4f2e-8287-76f5650c60cd})");
5161}
5162impl ::core::clone::Clone for MobileBroadbandCellCdma {
5163 fn clone(&self) -> Self {
5164 Self(self.0.clone())
5165 }
5166}
5167unsafe impl ::windows::core::Interface for MobileBroadbandCellCdma {
5168 type Vtable = IMobileBroadbandCellCdma_Vtbl;
5169}
5170unsafe impl ::windows::core::ComInterface for MobileBroadbandCellCdma {
5171 const IID: ::windows::core::GUID = <IMobileBroadbandCellCdma as ::windows::core::ComInterface>::IID;
5172}
5173impl ::windows::core::RuntimeName for MobileBroadbandCellCdma {
5174 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandCellCdma";
5175}
5176::windows::imp::interface_hierarchy!(MobileBroadbandCellCdma, ::windows::core::IUnknown, ::windows::core::IInspectable);
5177unsafe impl ::core::marker::Send for MobileBroadbandCellCdma {}
5178unsafe impl ::core::marker::Sync for MobileBroadbandCellCdma {}
5179#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5180#[repr(transparent)]
5181pub struct MobileBroadbandCellGsm(::windows::core::IUnknown);
5182impl MobileBroadbandCellGsm {
5183 #[doc = "*Required features: `\"Foundation\"`*"]
5184 #[cfg(feature = "Foundation")]
5185 pub fn BaseStationId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5186 let this = self;
5187 unsafe {
5188 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5189 (::windows::core::Interface::vtable(this).BaseStationId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5190 }
5191 }
5192 #[doc = "*Required features: `\"Foundation\"`*"]
5193 #[cfg(feature = "Foundation")]
5194 pub fn CellId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5195 let this = self;
5196 unsafe {
5197 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5198 (::windows::core::Interface::vtable(this).CellId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5199 }
5200 }
5201 #[doc = "*Required features: `\"Foundation\"`*"]
5202 #[cfg(feature = "Foundation")]
5203 pub fn ChannelNumber(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5204 let this = self;
5205 unsafe {
5206 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5207 (::windows::core::Interface::vtable(this).ChannelNumber)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5208 }
5209 }
5210 #[doc = "*Required features: `\"Foundation\"`*"]
5211 #[cfg(feature = "Foundation")]
5212 pub fn LocationAreaCode(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5213 let this = self;
5214 unsafe {
5215 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5216 (::windows::core::Interface::vtable(this).LocationAreaCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5217 }
5218 }
5219 pub fn ProviderId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5220 let this = self;
5221 unsafe {
5222 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5223 (::windows::core::Interface::vtable(this).ProviderId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5224 }
5225 }
5226 #[doc = "*Required features: `\"Foundation\"`*"]
5227 #[cfg(feature = "Foundation")]
5228 pub fn ReceivedSignalStrengthInDBm(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5229 let this = self;
5230 unsafe {
5231 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5232 (::windows::core::Interface::vtable(this).ReceivedSignalStrengthInDBm)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5233 }
5234 }
5235 #[doc = "*Required features: `\"Foundation\"`*"]
5236 #[cfg(feature = "Foundation")]
5237 pub fn TimingAdvanceInBitPeriods(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5238 let this = self;
5239 unsafe {
5240 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5241 (::windows::core::Interface::vtable(this).TimingAdvanceInBitPeriods)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5242 }
5243 }
5244}
5245impl ::core::cmp::PartialEq for MobileBroadbandCellGsm {
5246 fn eq(&self, other: &Self) -> bool {
5247 self.0 == other.0
5248 }
5249}
5250impl ::core::cmp::Eq for MobileBroadbandCellGsm {}
5251impl ::core::fmt::Debug for MobileBroadbandCellGsm {
5252 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5253 f.debug_tuple("MobileBroadbandCellGsm").field(&self.0).finish()
5254 }
5255}
5256impl ::windows::core::RuntimeType for MobileBroadbandCellGsm {
5257 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandCellGsm;{cc917f06-7ee0-47b8-9e1f-c3b48df9df5b})");
5258}
5259impl ::core::clone::Clone for MobileBroadbandCellGsm {
5260 fn clone(&self) -> Self {
5261 Self(self.0.clone())
5262 }
5263}
5264unsafe impl ::windows::core::Interface for MobileBroadbandCellGsm {
5265 type Vtable = IMobileBroadbandCellGsm_Vtbl;
5266}
5267unsafe impl ::windows::core::ComInterface for MobileBroadbandCellGsm {
5268 const IID: ::windows::core::GUID = <IMobileBroadbandCellGsm as ::windows::core::ComInterface>::IID;
5269}
5270impl ::windows::core::RuntimeName for MobileBroadbandCellGsm {
5271 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandCellGsm";
5272}
5273::windows::imp::interface_hierarchy!(MobileBroadbandCellGsm, ::windows::core::IUnknown, ::windows::core::IInspectable);
5274unsafe impl ::core::marker::Send for MobileBroadbandCellGsm {}
5275unsafe impl ::core::marker::Sync for MobileBroadbandCellGsm {}
5276#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5277#[repr(transparent)]
5278pub struct MobileBroadbandCellLte(::windows::core::IUnknown);
5279impl MobileBroadbandCellLte {
5280 #[doc = "*Required features: `\"Foundation\"`*"]
5281 #[cfg(feature = "Foundation")]
5282 pub fn CellId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5283 let this = self;
5284 unsafe {
5285 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5286 (::windows::core::Interface::vtable(this).CellId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5287 }
5288 }
5289 #[doc = "*Required features: `\"Foundation\"`*"]
5290 #[cfg(feature = "Foundation")]
5291 pub fn ChannelNumber(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5292 let this = self;
5293 unsafe {
5294 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5295 (::windows::core::Interface::vtable(this).ChannelNumber)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5296 }
5297 }
5298 #[doc = "*Required features: `\"Foundation\"`*"]
5299 #[cfg(feature = "Foundation")]
5300 pub fn PhysicalCellId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5301 let this = self;
5302 unsafe {
5303 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5304 (::windows::core::Interface::vtable(this).PhysicalCellId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5305 }
5306 }
5307 pub fn ProviderId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5308 let this = self;
5309 unsafe {
5310 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5311 (::windows::core::Interface::vtable(this).ProviderId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5312 }
5313 }
5314 #[doc = "*Required features: `\"Foundation\"`*"]
5315 #[cfg(feature = "Foundation")]
5316 pub fn ReferenceSignalReceivedPowerInDBm(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5317 let this = self;
5318 unsafe {
5319 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5320 (::windows::core::Interface::vtable(this).ReferenceSignalReceivedPowerInDBm)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5321 }
5322 }
5323 #[doc = "*Required features: `\"Foundation\"`*"]
5324 #[cfg(feature = "Foundation")]
5325 pub fn ReferenceSignalReceivedQualityInDBm(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5326 let this = self;
5327 unsafe {
5328 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5329 (::windows::core::Interface::vtable(this).ReferenceSignalReceivedQualityInDBm)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5330 }
5331 }
5332 #[doc = "*Required features: `\"Foundation\"`*"]
5333 #[cfg(feature = "Foundation")]
5334 pub fn TimingAdvanceInBitPeriods(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5335 let this = self;
5336 unsafe {
5337 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5338 (::windows::core::Interface::vtable(this).TimingAdvanceInBitPeriods)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5339 }
5340 }
5341 #[doc = "*Required features: `\"Foundation\"`*"]
5342 #[cfg(feature = "Foundation")]
5343 pub fn TrackingAreaCode(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5344 let this = self;
5345 unsafe {
5346 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5347 (::windows::core::Interface::vtable(this).TrackingAreaCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5348 }
5349 }
5350}
5351impl ::core::cmp::PartialEq for MobileBroadbandCellLte {
5352 fn eq(&self, other: &Self) -> bool {
5353 self.0 == other.0
5354 }
5355}
5356impl ::core::cmp::Eq for MobileBroadbandCellLte {}
5357impl ::core::fmt::Debug for MobileBroadbandCellLte {
5358 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5359 f.debug_tuple("MobileBroadbandCellLte").field(&self.0).finish()
5360 }
5361}
5362impl ::windows::core::RuntimeType for MobileBroadbandCellLte {
5363 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandCellLte;{9197c87b-2b78-456d-8b53-aaa25d0af741})");
5364}
5365impl ::core::clone::Clone for MobileBroadbandCellLte {
5366 fn clone(&self) -> Self {
5367 Self(self.0.clone())
5368 }
5369}
5370unsafe impl ::windows::core::Interface for MobileBroadbandCellLte {
5371 type Vtable = IMobileBroadbandCellLte_Vtbl;
5372}
5373unsafe impl ::windows::core::ComInterface for MobileBroadbandCellLte {
5374 const IID: ::windows::core::GUID = <IMobileBroadbandCellLte as ::windows::core::ComInterface>::IID;
5375}
5376impl ::windows::core::RuntimeName for MobileBroadbandCellLte {
5377 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandCellLte";
5378}
5379::windows::imp::interface_hierarchy!(MobileBroadbandCellLte, ::windows::core::IUnknown, ::windows::core::IInspectable);
5380unsafe impl ::core::marker::Send for MobileBroadbandCellLte {}
5381unsafe impl ::core::marker::Sync for MobileBroadbandCellLte {}
5382#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5383#[repr(transparent)]
5384pub struct MobileBroadbandCellNR(::windows::core::IUnknown);
5385impl MobileBroadbandCellNR {
5386 #[doc = "*Required features: `\"Foundation\"`*"]
5387 #[cfg(feature = "Foundation")]
5388 pub fn CellId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i64>> {
5389 let this = self;
5390 unsafe {
5391 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i64>>();
5392 (::windows::core::Interface::vtable(this).CellId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5393 }
5394 }
5395 #[doc = "*Required features: `\"Foundation\"`*"]
5396 #[cfg(feature = "Foundation")]
5397 pub fn ChannelNumber(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5398 let this = self;
5399 unsafe {
5400 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5401 (::windows::core::Interface::vtable(this).ChannelNumber)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5402 }
5403 }
5404 #[doc = "*Required features: `\"Foundation\"`*"]
5405 #[cfg(feature = "Foundation")]
5406 pub fn PhysicalCellId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5407 let this = self;
5408 unsafe {
5409 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5410 (::windows::core::Interface::vtable(this).PhysicalCellId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5411 }
5412 }
5413 pub fn ProviderId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5414 let this = self;
5415 unsafe {
5416 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5417 (::windows::core::Interface::vtable(this).ProviderId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5418 }
5419 }
5420 #[doc = "*Required features: `\"Foundation\"`*"]
5421 #[cfg(feature = "Foundation")]
5422 pub fn ReferenceSignalReceivedPowerInDBm(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5423 let this = self;
5424 unsafe {
5425 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5426 (::windows::core::Interface::vtable(this).ReferenceSignalReceivedPowerInDBm)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5427 }
5428 }
5429 #[doc = "*Required features: `\"Foundation\"`*"]
5430 #[cfg(feature = "Foundation")]
5431 pub fn ReferenceSignalReceivedQualityInDBm(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5432 let this = self;
5433 unsafe {
5434 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5435 (::windows::core::Interface::vtable(this).ReferenceSignalReceivedQualityInDBm)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5436 }
5437 }
5438 #[doc = "*Required features: `\"Foundation\"`*"]
5439 #[cfg(feature = "Foundation")]
5440 pub fn TimingAdvanceInNanoseconds(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5441 let this = self;
5442 unsafe {
5443 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5444 (::windows::core::Interface::vtable(this).TimingAdvanceInNanoseconds)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5445 }
5446 }
5447 #[doc = "*Required features: `\"Foundation\"`*"]
5448 #[cfg(feature = "Foundation")]
5449 pub fn TrackingAreaCode(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5450 let this = self;
5451 unsafe {
5452 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5453 (::windows::core::Interface::vtable(this).TrackingAreaCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5454 }
5455 }
5456 #[doc = "*Required features: `\"Foundation\"`*"]
5457 #[cfg(feature = "Foundation")]
5458 pub fn SignalToNoiseRatioInDB(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5459 let this = self;
5460 unsafe {
5461 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5462 (::windows::core::Interface::vtable(this).SignalToNoiseRatioInDB)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5463 }
5464 }
5465}
5466impl ::core::cmp::PartialEq for MobileBroadbandCellNR {
5467 fn eq(&self, other: &Self) -> bool {
5468 self.0 == other.0
5469 }
5470}
5471impl ::core::cmp::Eq for MobileBroadbandCellNR {}
5472impl ::core::fmt::Debug for MobileBroadbandCellNR {
5473 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5474 f.debug_tuple("MobileBroadbandCellNR").field(&self.0).finish()
5475 }
5476}
5477impl ::windows::core::RuntimeType for MobileBroadbandCellNR {
5478 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandCellNR;{a13f0deb-66fc-4b4b-83a9-a487a3a5a0a6})");
5479}
5480impl ::core::clone::Clone for MobileBroadbandCellNR {
5481 fn clone(&self) -> Self {
5482 Self(self.0.clone())
5483 }
5484}
5485unsafe impl ::windows::core::Interface for MobileBroadbandCellNR {
5486 type Vtable = IMobileBroadbandCellNR_Vtbl;
5487}
5488unsafe impl ::windows::core::ComInterface for MobileBroadbandCellNR {
5489 const IID: ::windows::core::GUID = <IMobileBroadbandCellNR as ::windows::core::ComInterface>::IID;
5490}
5491impl ::windows::core::RuntimeName for MobileBroadbandCellNR {
5492 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandCellNR";
5493}
5494::windows::imp::interface_hierarchy!(MobileBroadbandCellNR, ::windows::core::IUnknown, ::windows::core::IInspectable);
5495unsafe impl ::core::marker::Send for MobileBroadbandCellNR {}
5496unsafe impl ::core::marker::Sync for MobileBroadbandCellNR {}
5497#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5498#[repr(transparent)]
5499pub struct MobileBroadbandCellTdscdma(::windows::core::IUnknown);
5500impl MobileBroadbandCellTdscdma {
5501 #[doc = "*Required features: `\"Foundation\"`*"]
5502 #[cfg(feature = "Foundation")]
5503 pub fn CellId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5504 let this = self;
5505 unsafe {
5506 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5507 (::windows::core::Interface::vtable(this).CellId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5508 }
5509 }
5510 #[doc = "*Required features: `\"Foundation\"`*"]
5511 #[cfg(feature = "Foundation")]
5512 pub fn CellParameterId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5513 let this = self;
5514 unsafe {
5515 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5516 (::windows::core::Interface::vtable(this).CellParameterId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5517 }
5518 }
5519 #[doc = "*Required features: `\"Foundation\"`*"]
5520 #[cfg(feature = "Foundation")]
5521 pub fn ChannelNumber(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5522 let this = self;
5523 unsafe {
5524 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5525 (::windows::core::Interface::vtable(this).ChannelNumber)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5526 }
5527 }
5528 #[doc = "*Required features: `\"Foundation\"`*"]
5529 #[cfg(feature = "Foundation")]
5530 pub fn LocationAreaCode(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5531 let this = self;
5532 unsafe {
5533 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5534 (::windows::core::Interface::vtable(this).LocationAreaCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5535 }
5536 }
5537 #[doc = "*Required features: `\"Foundation\"`*"]
5538 #[cfg(feature = "Foundation")]
5539 pub fn PathLossInDB(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5540 let this = self;
5541 unsafe {
5542 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5543 (::windows::core::Interface::vtable(this).PathLossInDB)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5544 }
5545 }
5546 pub fn ProviderId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5547 let this = self;
5548 unsafe {
5549 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5550 (::windows::core::Interface::vtable(this).ProviderId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5551 }
5552 }
5553 #[doc = "*Required features: `\"Foundation\"`*"]
5554 #[cfg(feature = "Foundation")]
5555 pub fn ReceivedSignalCodePowerInDBm(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5556 let this = self;
5557 unsafe {
5558 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5559 (::windows::core::Interface::vtable(this).ReceivedSignalCodePowerInDBm)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5560 }
5561 }
5562 #[doc = "*Required features: `\"Foundation\"`*"]
5563 #[cfg(feature = "Foundation")]
5564 pub fn TimingAdvanceInBitPeriods(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5565 let this = self;
5566 unsafe {
5567 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5568 (::windows::core::Interface::vtable(this).TimingAdvanceInBitPeriods)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5569 }
5570 }
5571}
5572impl ::core::cmp::PartialEq for MobileBroadbandCellTdscdma {
5573 fn eq(&self, other: &Self) -> bool {
5574 self.0 == other.0
5575 }
5576}
5577impl ::core::cmp::Eq for MobileBroadbandCellTdscdma {}
5578impl ::core::fmt::Debug for MobileBroadbandCellTdscdma {
5579 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5580 f.debug_tuple("MobileBroadbandCellTdscdma").field(&self.0).finish()
5581 }
5582}
5583impl ::windows::core::RuntimeType for MobileBroadbandCellTdscdma {
5584 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandCellTdscdma;{0eda1655-db0e-4182-8cda-cc419a7bde08})");
5585}
5586impl ::core::clone::Clone for MobileBroadbandCellTdscdma {
5587 fn clone(&self) -> Self {
5588 Self(self.0.clone())
5589 }
5590}
5591unsafe impl ::windows::core::Interface for MobileBroadbandCellTdscdma {
5592 type Vtable = IMobileBroadbandCellTdscdma_Vtbl;
5593}
5594unsafe impl ::windows::core::ComInterface for MobileBroadbandCellTdscdma {
5595 const IID: ::windows::core::GUID = <IMobileBroadbandCellTdscdma as ::windows::core::ComInterface>::IID;
5596}
5597impl ::windows::core::RuntimeName for MobileBroadbandCellTdscdma {
5598 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandCellTdscdma";
5599}
5600::windows::imp::interface_hierarchy!(MobileBroadbandCellTdscdma, ::windows::core::IUnknown, ::windows::core::IInspectable);
5601unsafe impl ::core::marker::Send for MobileBroadbandCellTdscdma {}
5602unsafe impl ::core::marker::Sync for MobileBroadbandCellTdscdma {}
5603#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5604#[repr(transparent)]
5605pub struct MobileBroadbandCellUmts(::windows::core::IUnknown);
5606impl MobileBroadbandCellUmts {
5607 #[doc = "*Required features: `\"Foundation\"`*"]
5608 #[cfg(feature = "Foundation")]
5609 pub fn CellId(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5610 let this = self;
5611 unsafe {
5612 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5613 (::windows::core::Interface::vtable(this).CellId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5614 }
5615 }
5616 #[doc = "*Required features: `\"Foundation\"`*"]
5617 #[cfg(feature = "Foundation")]
5618 pub fn ChannelNumber(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5619 let this = self;
5620 unsafe {
5621 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5622 (::windows::core::Interface::vtable(this).ChannelNumber)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5623 }
5624 }
5625 #[doc = "*Required features: `\"Foundation\"`*"]
5626 #[cfg(feature = "Foundation")]
5627 pub fn LocationAreaCode(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5628 let this = self;
5629 unsafe {
5630 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5631 (::windows::core::Interface::vtable(this).LocationAreaCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5632 }
5633 }
5634 #[doc = "*Required features: `\"Foundation\"`*"]
5635 #[cfg(feature = "Foundation")]
5636 pub fn PathLossInDB(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5637 let this = self;
5638 unsafe {
5639 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5640 (::windows::core::Interface::vtable(this).PathLossInDB)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5641 }
5642 }
5643 #[doc = "*Required features: `\"Foundation\"`*"]
5644 #[cfg(feature = "Foundation")]
5645 pub fn PrimaryScramblingCode(&self) -> ::windows::core::Result<super::super::Foundation::IReference<i32>> {
5646 let this = self;
5647 unsafe {
5648 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<i32>>();
5649 (::windows::core::Interface::vtable(this).PrimaryScramblingCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5650 }
5651 }
5652 pub fn ProviderId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5653 let this = self;
5654 unsafe {
5655 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5656 (::windows::core::Interface::vtable(this).ProviderId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5657 }
5658 }
5659 #[doc = "*Required features: `\"Foundation\"`*"]
5660 #[cfg(feature = "Foundation")]
5661 pub fn ReceivedSignalCodePowerInDBm(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5662 let this = self;
5663 unsafe {
5664 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5665 (::windows::core::Interface::vtable(this).ReceivedSignalCodePowerInDBm)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5666 }
5667 }
5668 #[doc = "*Required features: `\"Foundation\"`*"]
5669 #[cfg(feature = "Foundation")]
5670 pub fn SignalToNoiseRatioInDB(&self) -> ::windows::core::Result<super::super::Foundation::IReference<f64>> {
5671 let this = self;
5672 unsafe {
5673 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IReference<f64>>();
5674 (::windows::core::Interface::vtable(this).SignalToNoiseRatioInDB)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5675 }
5676 }
5677}
5678impl ::core::cmp::PartialEq for MobileBroadbandCellUmts {
5679 fn eq(&self, other: &Self) -> bool {
5680 self.0 == other.0
5681 }
5682}
5683impl ::core::cmp::Eq for MobileBroadbandCellUmts {}
5684impl ::core::fmt::Debug for MobileBroadbandCellUmts {
5685 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5686 f.debug_tuple("MobileBroadbandCellUmts").field(&self.0).finish()
5687 }
5688}
5689impl ::windows::core::RuntimeType for MobileBroadbandCellUmts {
5690 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandCellUmts;{77b4b5ae-49c8-4f15-b285-4c26a7f67215})");
5691}
5692impl ::core::clone::Clone for MobileBroadbandCellUmts {
5693 fn clone(&self) -> Self {
5694 Self(self.0.clone())
5695 }
5696}
5697unsafe impl ::windows::core::Interface for MobileBroadbandCellUmts {
5698 type Vtable = IMobileBroadbandCellUmts_Vtbl;
5699}
5700unsafe impl ::windows::core::ComInterface for MobileBroadbandCellUmts {
5701 const IID: ::windows::core::GUID = <IMobileBroadbandCellUmts as ::windows::core::ComInterface>::IID;
5702}
5703impl ::windows::core::RuntimeName for MobileBroadbandCellUmts {
5704 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandCellUmts";
5705}
5706::windows::imp::interface_hierarchy!(MobileBroadbandCellUmts, ::windows::core::IUnknown, ::windows::core::IInspectable);
5707unsafe impl ::core::marker::Send for MobileBroadbandCellUmts {}
5708unsafe impl ::core::marker::Sync for MobileBroadbandCellUmts {}
5709#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5710#[repr(transparent)]
5711pub struct MobileBroadbandCellsInfo(::windows::core::IUnknown);
5712impl MobileBroadbandCellsInfo {
5713 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5714 #[cfg(feature = "Foundation_Collections")]
5715 pub fn NeighboringCellsCdma(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellCdma>> {
5716 let this = self;
5717 unsafe {
5718 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellCdma>>();
5719 (::windows::core::Interface::vtable(this).NeighboringCellsCdma)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5720 }
5721 }
5722 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5723 #[cfg(feature = "Foundation_Collections")]
5724 pub fn NeighboringCellsGsm(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellGsm>> {
5725 let this = self;
5726 unsafe {
5727 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellGsm>>();
5728 (::windows::core::Interface::vtable(this).NeighboringCellsGsm)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5729 }
5730 }
5731 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5732 #[cfg(feature = "Foundation_Collections")]
5733 pub fn NeighboringCellsLte(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellLte>> {
5734 let this = self;
5735 unsafe {
5736 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellLte>>();
5737 (::windows::core::Interface::vtable(this).NeighboringCellsLte)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5738 }
5739 }
5740 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5741 #[cfg(feature = "Foundation_Collections")]
5742 pub fn NeighboringCellsTdscdma(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellTdscdma>> {
5743 let this = self;
5744 unsafe {
5745 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellTdscdma>>();
5746 (::windows::core::Interface::vtable(this).NeighboringCellsTdscdma)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5747 }
5748 }
5749 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5750 #[cfg(feature = "Foundation_Collections")]
5751 pub fn NeighboringCellsUmts(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellUmts>> {
5752 let this = self;
5753 unsafe {
5754 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellUmts>>();
5755 (::windows::core::Interface::vtable(this).NeighboringCellsUmts)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5756 }
5757 }
5758 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5759 #[cfg(feature = "Foundation_Collections")]
5760 pub fn ServingCellsCdma(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellCdma>> {
5761 let this = self;
5762 unsafe {
5763 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellCdma>>();
5764 (::windows::core::Interface::vtable(this).ServingCellsCdma)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5765 }
5766 }
5767 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5768 #[cfg(feature = "Foundation_Collections")]
5769 pub fn ServingCellsGsm(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellGsm>> {
5770 let this = self;
5771 unsafe {
5772 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellGsm>>();
5773 (::windows::core::Interface::vtable(this).ServingCellsGsm)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5774 }
5775 }
5776 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5777 #[cfg(feature = "Foundation_Collections")]
5778 pub fn ServingCellsLte(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellLte>> {
5779 let this = self;
5780 unsafe {
5781 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellLte>>();
5782 (::windows::core::Interface::vtable(this).ServingCellsLte)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5783 }
5784 }
5785 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5786 #[cfg(feature = "Foundation_Collections")]
5787 pub fn ServingCellsTdscdma(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellTdscdma>> {
5788 let this = self;
5789 unsafe {
5790 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellTdscdma>>();
5791 (::windows::core::Interface::vtable(this).ServingCellsTdscdma)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5792 }
5793 }
5794 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5795 #[cfg(feature = "Foundation_Collections")]
5796 pub fn ServingCellsUmts(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellUmts>> {
5797 let this = self;
5798 unsafe {
5799 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellUmts>>();
5800 (::windows::core::Interface::vtable(this).ServingCellsUmts)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5801 }
5802 }
5803 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5804 #[cfg(feature = "Foundation_Collections")]
5805 pub fn NeighboringCellsNR(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellNR>> {
5806 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandCellsInfo2>(self)?;
5807 unsafe {
5808 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellNR>>();
5809 (::windows::core::Interface::vtable(this).NeighboringCellsNR)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5810 }
5811 }
5812 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5813 #[cfg(feature = "Foundation_Collections")]
5814 pub fn ServingCellsNR(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellNR>> {
5815 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandCellsInfo2>(self)?;
5816 unsafe {
5817 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandCellNR>>();
5818 (::windows::core::Interface::vtable(this).ServingCellsNR)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5819 }
5820 }
5821}
5822impl ::core::cmp::PartialEq for MobileBroadbandCellsInfo {
5823 fn eq(&self, other: &Self) -> bool {
5824 self.0 == other.0
5825 }
5826}
5827impl ::core::cmp::Eq for MobileBroadbandCellsInfo {}
5828impl ::core::fmt::Debug for MobileBroadbandCellsInfo {
5829 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5830 f.debug_tuple("MobileBroadbandCellsInfo").field(&self.0).finish()
5831 }
5832}
5833impl ::windows::core::RuntimeType for MobileBroadbandCellsInfo {
5834 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandCellsInfo;{89a9562a-e472-4da5-929c-de61711dd261})");
5835}
5836impl ::core::clone::Clone for MobileBroadbandCellsInfo {
5837 fn clone(&self) -> Self {
5838 Self(self.0.clone())
5839 }
5840}
5841unsafe impl ::windows::core::Interface for MobileBroadbandCellsInfo {
5842 type Vtable = IMobileBroadbandCellsInfo_Vtbl;
5843}
5844unsafe impl ::windows::core::ComInterface for MobileBroadbandCellsInfo {
5845 const IID: ::windows::core::GUID = <IMobileBroadbandCellsInfo as ::windows::core::ComInterface>::IID;
5846}
5847impl ::windows::core::RuntimeName for MobileBroadbandCellsInfo {
5848 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandCellsInfo";
5849}
5850::windows::imp::interface_hierarchy!(MobileBroadbandCellsInfo, ::windows::core::IUnknown, ::windows::core::IInspectable);
5851unsafe impl ::core::marker::Send for MobileBroadbandCellsInfo {}
5852unsafe impl ::core::marker::Sync for MobileBroadbandCellsInfo {}
5853#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5854#[repr(transparent)]
5855pub struct MobileBroadbandCurrentSlotIndexChangedEventArgs(::windows::core::IUnknown);
5856impl MobileBroadbandCurrentSlotIndexChangedEventArgs {
5857 pub fn CurrentSlotIndex(&self) -> ::windows::core::Result<i32> {
5858 let this = self;
5859 unsafe {
5860 let mut result__ = ::windows::core::zeroed::<i32>();
5861 (::windows::core::Interface::vtable(this).CurrentSlotIndex)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5862 }
5863 }
5864}
5865impl ::core::cmp::PartialEq for MobileBroadbandCurrentSlotIndexChangedEventArgs {
5866 fn eq(&self, other: &Self) -> bool {
5867 self.0 == other.0
5868 }
5869}
5870impl ::core::cmp::Eq for MobileBroadbandCurrentSlotIndexChangedEventArgs {}
5871impl ::core::fmt::Debug for MobileBroadbandCurrentSlotIndexChangedEventArgs {
5872 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
5873 f.debug_tuple("MobileBroadbandCurrentSlotIndexChangedEventArgs").field(&self.0).finish()
5874 }
5875}
5876impl ::windows::core::RuntimeType for MobileBroadbandCurrentSlotIndexChangedEventArgs {
5877 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandCurrentSlotIndexChangedEventArgs;{f718b184-c370-5fd4-a670-1846cb9bce47})");
5878}
5879impl ::core::clone::Clone for MobileBroadbandCurrentSlotIndexChangedEventArgs {
5880 fn clone(&self) -> Self {
5881 Self(self.0.clone())
5882 }
5883}
5884unsafe impl ::windows::core::Interface for MobileBroadbandCurrentSlotIndexChangedEventArgs {
5885 type Vtable = IMobileBroadbandCurrentSlotIndexChangedEventArgs_Vtbl;
5886}
5887unsafe impl ::windows::core::ComInterface for MobileBroadbandCurrentSlotIndexChangedEventArgs {
5888 const IID: ::windows::core::GUID = <IMobileBroadbandCurrentSlotIndexChangedEventArgs as ::windows::core::ComInterface>::IID;
5889}
5890impl ::windows::core::RuntimeName for MobileBroadbandCurrentSlotIndexChangedEventArgs {
5891 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandCurrentSlotIndexChangedEventArgs";
5892}
5893::windows::imp::interface_hierarchy!(MobileBroadbandCurrentSlotIndexChangedEventArgs, ::windows::core::IUnknown, ::windows::core::IInspectable);
5894unsafe impl ::core::marker::Send for MobileBroadbandCurrentSlotIndexChangedEventArgs {}
5895unsafe impl ::core::marker::Sync for MobileBroadbandCurrentSlotIndexChangedEventArgs {}
5896#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
5897#[repr(transparent)]
5898pub struct MobileBroadbandDeviceInformation(::windows::core::IUnknown);
5899impl MobileBroadbandDeviceInformation {
5900 pub fn NetworkDeviceStatus(&self) -> ::windows::core::Result<NetworkDeviceStatus> {
5901 let this = self;
5902 unsafe {
5903 let mut result__ = ::windows::core::zeroed::<NetworkDeviceStatus>();
5904 (::windows::core::Interface::vtable(this).NetworkDeviceStatus)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5905 }
5906 }
5907 pub fn Manufacturer(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5908 let this = self;
5909 unsafe {
5910 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5911 (::windows::core::Interface::vtable(this).Manufacturer)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5912 }
5913 }
5914 pub fn Model(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5915 let this = self;
5916 unsafe {
5917 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5918 (::windows::core::Interface::vtable(this).Model)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5919 }
5920 }
5921 pub fn FirmwareInformation(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5922 let this = self;
5923 unsafe {
5924 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5925 (::windows::core::Interface::vtable(this).FirmwareInformation)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5926 }
5927 }
5928 #[doc = "*Required features: `\"Devices_Sms\"`*"]
5929 #[cfg(feature = "Devices_Sms")]
5930 pub fn CellularClass(&self) -> ::windows::core::Result<super::super::Devices::Sms::CellularClass> {
5931 let this = self;
5932 unsafe {
5933 let mut result__ = ::windows::core::zeroed::<super::super::Devices::Sms::CellularClass>();
5934 (::windows::core::Interface::vtable(this).CellularClass)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5935 }
5936 }
5937 pub fn DataClasses(&self) -> ::windows::core::Result<DataClasses> {
5938 let this = self;
5939 unsafe {
5940 let mut result__ = ::windows::core::zeroed::<DataClasses>();
5941 (::windows::core::Interface::vtable(this).DataClasses)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5942 }
5943 }
5944 pub fn CustomDataClass(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5945 let this = self;
5946 unsafe {
5947 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5948 (::windows::core::Interface::vtable(this).CustomDataClass)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5949 }
5950 }
5951 pub fn MobileEquipmentId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5952 let this = self;
5953 unsafe {
5954 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5955 (::windows::core::Interface::vtable(this).MobileEquipmentId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5956 }
5957 }
5958 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
5959 #[cfg(feature = "Foundation_Collections")]
5960 pub fn TelephoneNumbers(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<::windows::core::HSTRING>> {
5961 let this = self;
5962 unsafe {
5963 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<::windows::core::HSTRING>>();
5964 (::windows::core::Interface::vtable(this).TelephoneNumbers)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5965 }
5966 }
5967 pub fn SubscriberId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5968 let this = self;
5969 unsafe {
5970 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5971 (::windows::core::Interface::vtable(this).SubscriberId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5972 }
5973 }
5974 pub fn SimIccId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5975 let this = self;
5976 unsafe {
5977 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5978 (::windows::core::Interface::vtable(this).SimIccId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5979 }
5980 }
5981 pub fn DeviceType(&self) -> ::windows::core::Result<MobileBroadbandDeviceType> {
5982 let this = self;
5983 unsafe {
5984 let mut result__ = ::windows::core::zeroed::<MobileBroadbandDeviceType>();
5985 (::windows::core::Interface::vtable(this).DeviceType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5986 }
5987 }
5988 pub fn DeviceId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
5989 let this = self;
5990 unsafe {
5991 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
5992 (::windows::core::Interface::vtable(this).DeviceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
5993 }
5994 }
5995 pub fn CurrentRadioState(&self) -> ::windows::core::Result<MobileBroadbandRadioState> {
5996 let this = self;
5997 unsafe {
5998 let mut result__ = ::windows::core::zeroed::<MobileBroadbandRadioState>();
5999 (::windows::core::Interface::vtable(this).CurrentRadioState)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6000 }
6001 }
6002 pub fn PinManager(&self) -> ::windows::core::Result<MobileBroadbandPinManager> {
6003 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandDeviceInformation2>(self)?;
6004 unsafe {
6005 let mut result__ = ::windows::core::zeroed::<MobileBroadbandPinManager>();
6006 (::windows::core::Interface::vtable(this).PinManager)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6007 }
6008 }
6009 pub fn Revision(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6010 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandDeviceInformation2>(self)?;
6011 unsafe {
6012 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6013 (::windows::core::Interface::vtable(this).Revision)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6014 }
6015 }
6016 pub fn SerialNumber(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6017 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandDeviceInformation2>(self)?;
6018 unsafe {
6019 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6020 (::windows::core::Interface::vtable(this).SerialNumber)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6021 }
6022 }
6023 pub fn SimSpn(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6024 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandDeviceInformation3>(self)?;
6025 unsafe {
6026 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6027 (::windows::core::Interface::vtable(this).SimSpn)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6028 }
6029 }
6030 pub fn SimPnn(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6031 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandDeviceInformation3>(self)?;
6032 unsafe {
6033 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6034 (::windows::core::Interface::vtable(this).SimPnn)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6035 }
6036 }
6037 pub fn SimGid1(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6038 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandDeviceInformation3>(self)?;
6039 unsafe {
6040 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6041 (::windows::core::Interface::vtable(this).SimGid1)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6042 }
6043 }
6044 pub fn SlotManager(&self) -> ::windows::core::Result<MobileBroadbandSlotManager> {
6045 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandDeviceInformation4>(self)?;
6046 unsafe {
6047 let mut result__ = ::windows::core::zeroed::<MobileBroadbandSlotManager>();
6048 (::windows::core::Interface::vtable(this).SlotManager)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6049 }
6050 }
6051}
6052impl ::core::cmp::PartialEq for MobileBroadbandDeviceInformation {
6053 fn eq(&self, other: &Self) -> bool {
6054 self.0 == other.0
6055 }
6056}
6057impl ::core::cmp::Eq for MobileBroadbandDeviceInformation {}
6058impl ::core::fmt::Debug for MobileBroadbandDeviceInformation {
6059 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6060 f.debug_tuple("MobileBroadbandDeviceInformation").field(&self.0).finish()
6061 }
6062}
6063impl ::windows::core::RuntimeType for MobileBroadbandDeviceInformation {
6064 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandDeviceInformation;{e6d08168-e381-4c6e-9be8-fe156969a446})");
6065}
6066impl ::core::clone::Clone for MobileBroadbandDeviceInformation {
6067 fn clone(&self) -> Self {
6068 Self(self.0.clone())
6069 }
6070}
6071unsafe impl ::windows::core::Interface for MobileBroadbandDeviceInformation {
6072 type Vtable = IMobileBroadbandDeviceInformation_Vtbl;
6073}
6074unsafe impl ::windows::core::ComInterface for MobileBroadbandDeviceInformation {
6075 const IID: ::windows::core::GUID = <IMobileBroadbandDeviceInformation as ::windows::core::ComInterface>::IID;
6076}
6077impl ::windows::core::RuntimeName for MobileBroadbandDeviceInformation {
6078 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandDeviceInformation";
6079}
6080::windows::imp::interface_hierarchy!(MobileBroadbandDeviceInformation, ::windows::core::IUnknown, ::windows::core::IInspectable);
6081#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6082#[repr(transparent)]
6083pub struct MobileBroadbandDeviceService(::windows::core::IUnknown);
6084impl MobileBroadbandDeviceService {
6085 pub fn DeviceServiceId(&self) -> ::windows::core::Result<::windows::core::GUID> {
6086 let this = self;
6087 unsafe {
6088 let mut result__ = ::windows::core::zeroed::<::windows::core::GUID>();
6089 (::windows::core::Interface::vtable(this).DeviceServiceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6090 }
6091 }
6092 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
6093 #[cfg(feature = "Foundation_Collections")]
6094 pub fn SupportedCommands(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<u32>> {
6095 let this = self;
6096 unsafe {
6097 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<u32>>();
6098 (::windows::core::Interface::vtable(this).SupportedCommands)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6099 }
6100 }
6101 pub fn OpenDataSession(&self) -> ::windows::core::Result<MobileBroadbandDeviceServiceDataSession> {
6102 let this = self;
6103 unsafe {
6104 let mut result__ = ::windows::core::zeroed::<MobileBroadbandDeviceServiceDataSession>();
6105 (::windows::core::Interface::vtable(this).OpenDataSession)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6106 }
6107 }
6108 pub fn OpenCommandSession(&self) -> ::windows::core::Result<MobileBroadbandDeviceServiceCommandSession> {
6109 let this = self;
6110 unsafe {
6111 let mut result__ = ::windows::core::zeroed::<MobileBroadbandDeviceServiceCommandSession>();
6112 (::windows::core::Interface::vtable(this).OpenCommandSession)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6113 }
6114 }
6115}
6116impl ::core::cmp::PartialEq for MobileBroadbandDeviceService {
6117 fn eq(&self, other: &Self) -> bool {
6118 self.0 == other.0
6119 }
6120}
6121impl ::core::cmp::Eq for MobileBroadbandDeviceService {}
6122impl ::core::fmt::Debug for MobileBroadbandDeviceService {
6123 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6124 f.debug_tuple("MobileBroadbandDeviceService").field(&self.0).finish()
6125 }
6126}
6127impl ::windows::core::RuntimeType for MobileBroadbandDeviceService {
6128 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandDeviceService;{22be1a52-bd80-40ac-8e1f-2e07836a3dbd})");
6129}
6130impl ::core::clone::Clone for MobileBroadbandDeviceService {
6131 fn clone(&self) -> Self {
6132 Self(self.0.clone())
6133 }
6134}
6135unsafe impl ::windows::core::Interface for MobileBroadbandDeviceService {
6136 type Vtable = IMobileBroadbandDeviceService_Vtbl;
6137}
6138unsafe impl ::windows::core::ComInterface for MobileBroadbandDeviceService {
6139 const IID: ::windows::core::GUID = <IMobileBroadbandDeviceService as ::windows::core::ComInterface>::IID;
6140}
6141impl ::windows::core::RuntimeName for MobileBroadbandDeviceService {
6142 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandDeviceService";
6143}
6144::windows::imp::interface_hierarchy!(MobileBroadbandDeviceService, ::windows::core::IUnknown, ::windows::core::IInspectable);
6145unsafe impl ::core::marker::Send for MobileBroadbandDeviceService {}
6146unsafe impl ::core::marker::Sync for MobileBroadbandDeviceService {}
6147#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6148#[repr(transparent)]
6149pub struct MobileBroadbandDeviceServiceCommandResult(::windows::core::IUnknown);
6150impl MobileBroadbandDeviceServiceCommandResult {
6151 pub fn StatusCode(&self) -> ::windows::core::Result<u32> {
6152 let this = self;
6153 unsafe {
6154 let mut result__ = ::windows::core::zeroed::<u32>();
6155 (::windows::core::Interface::vtable(this).StatusCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6156 }
6157 }
6158 #[doc = "*Required features: `\"Storage_Streams\"`*"]
6159 #[cfg(feature = "Storage_Streams")]
6160 pub fn ResponseData(&self) -> ::windows::core::Result<super::super::Storage::Streams::IBuffer> {
6161 let this = self;
6162 unsafe {
6163 let mut result__ = ::windows::core::zeroed::<super::super::Storage::Streams::IBuffer>();
6164 (::windows::core::Interface::vtable(this).ResponseData)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6165 }
6166 }
6167}
6168impl ::core::cmp::PartialEq for MobileBroadbandDeviceServiceCommandResult {
6169 fn eq(&self, other: &Self) -> bool {
6170 self.0 == other.0
6171 }
6172}
6173impl ::core::cmp::Eq for MobileBroadbandDeviceServiceCommandResult {}
6174impl ::core::fmt::Debug for MobileBroadbandDeviceServiceCommandResult {
6175 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6176 f.debug_tuple("MobileBroadbandDeviceServiceCommandResult").field(&self.0).finish()
6177 }
6178}
6179impl ::windows::core::RuntimeType for MobileBroadbandDeviceServiceCommandResult {
6180 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceCommandResult;{b0f46abb-94d6-44b9-a538-f0810b645389})");
6181}
6182impl ::core::clone::Clone for MobileBroadbandDeviceServiceCommandResult {
6183 fn clone(&self) -> Self {
6184 Self(self.0.clone())
6185 }
6186}
6187unsafe impl ::windows::core::Interface for MobileBroadbandDeviceServiceCommandResult {
6188 type Vtable = IMobileBroadbandDeviceServiceCommandResult_Vtbl;
6189}
6190unsafe impl ::windows::core::ComInterface for MobileBroadbandDeviceServiceCommandResult {
6191 const IID: ::windows::core::GUID = <IMobileBroadbandDeviceServiceCommandResult as ::windows::core::ComInterface>::IID;
6192}
6193impl ::windows::core::RuntimeName for MobileBroadbandDeviceServiceCommandResult {
6194 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceCommandResult";
6195}
6196::windows::imp::interface_hierarchy!(MobileBroadbandDeviceServiceCommandResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
6197unsafe impl ::core::marker::Send for MobileBroadbandDeviceServiceCommandResult {}
6198unsafe impl ::core::marker::Sync for MobileBroadbandDeviceServiceCommandResult {}
6199#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6200#[repr(transparent)]
6201pub struct MobileBroadbandDeviceServiceCommandSession(::windows::core::IUnknown);
6202impl MobileBroadbandDeviceServiceCommandSession {
6203 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
6204 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
6205 pub fn SendQueryCommandAsync<P0>(&self, commandid: u32, data: P0) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandDeviceServiceCommandResult>>
6206 where
6207 P0: ::windows::core::TryIntoParam<super::super::Storage::Streams::IBuffer>,
6208 {
6209 let this = self;
6210 unsafe {
6211 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandDeviceServiceCommandResult>>();
6212 (::windows::core::Interface::vtable(this).SendQueryCommandAsync)(::windows::core::Interface::as_raw(this), commandid, data.try_into_param()?.abi(), &mut result__).from_abi(result__)
6213 }
6214 }
6215 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
6216 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
6217 pub fn SendSetCommandAsync<P0>(&self, commandid: u32, data: P0) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandDeviceServiceCommandResult>>
6218 where
6219 P0: ::windows::core::TryIntoParam<super::super::Storage::Streams::IBuffer>,
6220 {
6221 let this = self;
6222 unsafe {
6223 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandDeviceServiceCommandResult>>();
6224 (::windows::core::Interface::vtable(this).SendSetCommandAsync)(::windows::core::Interface::as_raw(this), commandid, data.try_into_param()?.abi(), &mut result__).from_abi(result__)
6225 }
6226 }
6227 pub fn CloseSession(&self) -> ::windows::core::Result<()> {
6228 let this = self;
6229 unsafe { (::windows::core::Interface::vtable(this).CloseSession)(::windows::core::Interface::as_raw(this)).ok() }
6230 }
6231}
6232impl ::core::cmp::PartialEq for MobileBroadbandDeviceServiceCommandSession {
6233 fn eq(&self, other: &Self) -> bool {
6234 self.0 == other.0
6235 }
6236}
6237impl ::core::cmp::Eq for MobileBroadbandDeviceServiceCommandSession {}
6238impl ::core::fmt::Debug for MobileBroadbandDeviceServiceCommandSession {
6239 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6240 f.debug_tuple("MobileBroadbandDeviceServiceCommandSession").field(&self.0).finish()
6241 }
6242}
6243impl ::windows::core::RuntimeType for MobileBroadbandDeviceServiceCommandSession {
6244 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceCommandSession;{fc098a45-913b-4914-b6c3-ae6304593e75})");
6245}
6246impl ::core::clone::Clone for MobileBroadbandDeviceServiceCommandSession {
6247 fn clone(&self) -> Self {
6248 Self(self.0.clone())
6249 }
6250}
6251unsafe impl ::windows::core::Interface for MobileBroadbandDeviceServiceCommandSession {
6252 type Vtable = IMobileBroadbandDeviceServiceCommandSession_Vtbl;
6253}
6254unsafe impl ::windows::core::ComInterface for MobileBroadbandDeviceServiceCommandSession {
6255 const IID: ::windows::core::GUID = <IMobileBroadbandDeviceServiceCommandSession as ::windows::core::ComInterface>::IID;
6256}
6257impl ::windows::core::RuntimeName for MobileBroadbandDeviceServiceCommandSession {
6258 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceCommandSession";
6259}
6260::windows::imp::interface_hierarchy!(MobileBroadbandDeviceServiceCommandSession, ::windows::core::IUnknown, ::windows::core::IInspectable);
6261unsafe impl ::core::marker::Send for MobileBroadbandDeviceServiceCommandSession {}
6262unsafe impl ::core::marker::Sync for MobileBroadbandDeviceServiceCommandSession {}
6263#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6264#[repr(transparent)]
6265pub struct MobileBroadbandDeviceServiceDataReceivedEventArgs(::windows::core::IUnknown);
6266impl MobileBroadbandDeviceServiceDataReceivedEventArgs {
6267 #[doc = "*Required features: `\"Storage_Streams\"`*"]
6268 #[cfg(feature = "Storage_Streams")]
6269 pub fn ReceivedData(&self) -> ::windows::core::Result<super::super::Storage::Streams::IBuffer> {
6270 let this = self;
6271 unsafe {
6272 let mut result__ = ::windows::core::zeroed::<super::super::Storage::Streams::IBuffer>();
6273 (::windows::core::Interface::vtable(this).ReceivedData)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6274 }
6275 }
6276}
6277impl ::core::cmp::PartialEq for MobileBroadbandDeviceServiceDataReceivedEventArgs {
6278 fn eq(&self, other: &Self) -> bool {
6279 self.0 == other.0
6280 }
6281}
6282impl ::core::cmp::Eq for MobileBroadbandDeviceServiceDataReceivedEventArgs {}
6283impl ::core::fmt::Debug for MobileBroadbandDeviceServiceDataReceivedEventArgs {
6284 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6285 f.debug_tuple("MobileBroadbandDeviceServiceDataReceivedEventArgs").field(&self.0).finish()
6286 }
6287}
6288impl ::windows::core::RuntimeType for MobileBroadbandDeviceServiceDataReceivedEventArgs {
6289 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceDataReceivedEventArgs;{b6aa13de-1380-40e3-8618-73cbca48138c})");
6290}
6291impl ::core::clone::Clone for MobileBroadbandDeviceServiceDataReceivedEventArgs {
6292 fn clone(&self) -> Self {
6293 Self(self.0.clone())
6294 }
6295}
6296unsafe impl ::windows::core::Interface for MobileBroadbandDeviceServiceDataReceivedEventArgs {
6297 type Vtable = IMobileBroadbandDeviceServiceDataReceivedEventArgs_Vtbl;
6298}
6299unsafe impl ::windows::core::ComInterface for MobileBroadbandDeviceServiceDataReceivedEventArgs {
6300 const IID: ::windows::core::GUID = <IMobileBroadbandDeviceServiceDataReceivedEventArgs as ::windows::core::ComInterface>::IID;
6301}
6302impl ::windows::core::RuntimeName for MobileBroadbandDeviceServiceDataReceivedEventArgs {
6303 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceDataReceivedEventArgs";
6304}
6305::windows::imp::interface_hierarchy!(MobileBroadbandDeviceServiceDataReceivedEventArgs, ::windows::core::IUnknown, ::windows::core::IInspectable);
6306unsafe impl ::core::marker::Send for MobileBroadbandDeviceServiceDataReceivedEventArgs {}
6307unsafe impl ::core::marker::Sync for MobileBroadbandDeviceServiceDataReceivedEventArgs {}
6308#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6309#[repr(transparent)]
6310pub struct MobileBroadbandDeviceServiceDataSession(::windows::core::IUnknown);
6311impl MobileBroadbandDeviceServiceDataSession {
6312 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
6313 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
6314 pub fn WriteDataAsync<P0>(&self, value: P0) -> ::windows::core::Result<super::super::Foundation::IAsyncAction>
6315 where
6316 P0: ::windows::core::TryIntoParam<super::super::Storage::Streams::IBuffer>,
6317 {
6318 let this = self;
6319 unsafe {
6320 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
6321 (::windows::core::Interface::vtable(this).WriteDataAsync)(::windows::core::Interface::as_raw(this), value.try_into_param()?.abi(), &mut result__).from_abi(result__)
6322 }
6323 }
6324 pub fn CloseSession(&self) -> ::windows::core::Result<()> {
6325 let this = self;
6326 unsafe { (::windows::core::Interface::vtable(this).CloseSession)(::windows::core::Interface::as_raw(this)).ok() }
6327 }
6328 #[doc = "*Required features: `\"Foundation\"`*"]
6329 #[cfg(feature = "Foundation")]
6330 pub fn DataReceived(&self, eventhandler: &super::super::Foundation::TypedEventHandler<MobileBroadbandDeviceServiceDataSession, MobileBroadbandDeviceServiceDataReceivedEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
6331 let this = self;
6332 unsafe {
6333 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
6334 (::windows::core::Interface::vtable(this).DataReceived)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(eventhandler), &mut result__).from_abi(result__)
6335 }
6336 }
6337 #[doc = "*Required features: `\"Foundation\"`*"]
6338 #[cfg(feature = "Foundation")]
6339 pub fn RemoveDataReceived(&self, eventcookie: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
6340 let this = self;
6341 unsafe { (::windows::core::Interface::vtable(this).RemoveDataReceived)(::windows::core::Interface::as_raw(this), eventcookie).ok() }
6342 }
6343}
6344impl ::core::cmp::PartialEq for MobileBroadbandDeviceServiceDataSession {
6345 fn eq(&self, other: &Self) -> bool {
6346 self.0 == other.0
6347 }
6348}
6349impl ::core::cmp::Eq for MobileBroadbandDeviceServiceDataSession {}
6350impl ::core::fmt::Debug for MobileBroadbandDeviceServiceDataSession {
6351 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6352 f.debug_tuple("MobileBroadbandDeviceServiceDataSession").field(&self.0).finish()
6353 }
6354}
6355impl ::windows::core::RuntimeType for MobileBroadbandDeviceServiceDataSession {
6356 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceDataSession;{dad62333-8bcf-4289-8a37-045c2169486a})");
6357}
6358impl ::core::clone::Clone for MobileBroadbandDeviceServiceDataSession {
6359 fn clone(&self) -> Self {
6360 Self(self.0.clone())
6361 }
6362}
6363unsafe impl ::windows::core::Interface for MobileBroadbandDeviceServiceDataSession {
6364 type Vtable = IMobileBroadbandDeviceServiceDataSession_Vtbl;
6365}
6366unsafe impl ::windows::core::ComInterface for MobileBroadbandDeviceServiceDataSession {
6367 const IID: ::windows::core::GUID = <IMobileBroadbandDeviceServiceDataSession as ::windows::core::ComInterface>::IID;
6368}
6369impl ::windows::core::RuntimeName for MobileBroadbandDeviceServiceDataSession {
6370 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceDataSession";
6371}
6372::windows::imp::interface_hierarchy!(MobileBroadbandDeviceServiceDataSession, ::windows::core::IUnknown, ::windows::core::IInspectable);
6373unsafe impl ::core::marker::Send for MobileBroadbandDeviceServiceDataSession {}
6374unsafe impl ::core::marker::Sync for MobileBroadbandDeviceServiceDataSession {}
6375#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6376#[repr(transparent)]
6377pub struct MobileBroadbandDeviceServiceInformation(::windows::core::IUnknown);
6378impl MobileBroadbandDeviceServiceInformation {
6379 pub fn DeviceServiceId(&self) -> ::windows::core::Result<::windows::core::GUID> {
6380 let this = self;
6381 unsafe {
6382 let mut result__ = ::windows::core::zeroed::<::windows::core::GUID>();
6383 (::windows::core::Interface::vtable(this).DeviceServiceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6384 }
6385 }
6386 pub fn IsDataReadSupported(&self) -> ::windows::core::Result<bool> {
6387 let this = self;
6388 unsafe {
6389 let mut result__ = ::windows::core::zeroed::<bool>();
6390 (::windows::core::Interface::vtable(this).IsDataReadSupported)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6391 }
6392 }
6393 pub fn IsDataWriteSupported(&self) -> ::windows::core::Result<bool> {
6394 let this = self;
6395 unsafe {
6396 let mut result__ = ::windows::core::zeroed::<bool>();
6397 (::windows::core::Interface::vtable(this).IsDataWriteSupported)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6398 }
6399 }
6400}
6401impl ::core::cmp::PartialEq for MobileBroadbandDeviceServiceInformation {
6402 fn eq(&self, other: &Self) -> bool {
6403 self.0 == other.0
6404 }
6405}
6406impl ::core::cmp::Eq for MobileBroadbandDeviceServiceInformation {}
6407impl ::core::fmt::Debug for MobileBroadbandDeviceServiceInformation {
6408 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6409 f.debug_tuple("MobileBroadbandDeviceServiceInformation").field(&self.0).finish()
6410 }
6411}
6412impl ::windows::core::RuntimeType for MobileBroadbandDeviceServiceInformation {
6413 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceInformation;{53d69b5b-c4ed-45f0-803a-d9417a6d9846})");
6414}
6415impl ::core::clone::Clone for MobileBroadbandDeviceServiceInformation {
6416 fn clone(&self) -> Self {
6417 Self(self.0.clone())
6418 }
6419}
6420unsafe impl ::windows::core::Interface for MobileBroadbandDeviceServiceInformation {
6421 type Vtable = IMobileBroadbandDeviceServiceInformation_Vtbl;
6422}
6423unsafe impl ::windows::core::ComInterface for MobileBroadbandDeviceServiceInformation {
6424 const IID: ::windows::core::GUID = <IMobileBroadbandDeviceServiceInformation as ::windows::core::ComInterface>::IID;
6425}
6426impl ::windows::core::RuntimeName for MobileBroadbandDeviceServiceInformation {
6427 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceInformation";
6428}
6429::windows::imp::interface_hierarchy!(MobileBroadbandDeviceServiceInformation, ::windows::core::IUnknown, ::windows::core::IInspectable);
6430unsafe impl ::core::marker::Send for MobileBroadbandDeviceServiceInformation {}
6431unsafe impl ::core::marker::Sync for MobileBroadbandDeviceServiceInformation {}
6432#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6433#[repr(transparent)]
6434pub struct MobileBroadbandDeviceServiceTriggerDetails(::windows::core::IUnknown);
6435impl MobileBroadbandDeviceServiceTriggerDetails {
6436 pub fn DeviceId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6437 let this = self;
6438 unsafe {
6439 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6440 (::windows::core::Interface::vtable(this).DeviceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6441 }
6442 }
6443 pub fn DeviceServiceId(&self) -> ::windows::core::Result<::windows::core::GUID> {
6444 let this = self;
6445 unsafe {
6446 let mut result__ = ::windows::core::zeroed::<::windows::core::GUID>();
6447 (::windows::core::Interface::vtable(this).DeviceServiceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6448 }
6449 }
6450 #[doc = "*Required features: `\"Storage_Streams\"`*"]
6451 #[cfg(feature = "Storage_Streams")]
6452 pub fn ReceivedData(&self) -> ::windows::core::Result<super::super::Storage::Streams::IBuffer> {
6453 let this = self;
6454 unsafe {
6455 let mut result__ = ::windows::core::zeroed::<super::super::Storage::Streams::IBuffer>();
6456 (::windows::core::Interface::vtable(this).ReceivedData)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6457 }
6458 }
6459 pub fn EventId(&self) -> ::windows::core::Result<u32> {
6460 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandDeviceServiceTriggerDetails2>(self)?;
6461 unsafe {
6462 let mut result__ = ::windows::core::zeroed::<u32>();
6463 (::windows::core::Interface::vtable(this).EventId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6464 }
6465 }
6466}
6467impl ::core::cmp::PartialEq for MobileBroadbandDeviceServiceTriggerDetails {
6468 fn eq(&self, other: &Self) -> bool {
6469 self.0 == other.0
6470 }
6471}
6472impl ::core::cmp::Eq for MobileBroadbandDeviceServiceTriggerDetails {}
6473impl ::core::fmt::Debug for MobileBroadbandDeviceServiceTriggerDetails {
6474 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6475 f.debug_tuple("MobileBroadbandDeviceServiceTriggerDetails").field(&self.0).finish()
6476 }
6477}
6478impl ::windows::core::RuntimeType for MobileBroadbandDeviceServiceTriggerDetails {
6479 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceTriggerDetails;{4a055b70-b9ae-4458-9241-a6a5fbf18a0c})");
6480}
6481impl ::core::clone::Clone for MobileBroadbandDeviceServiceTriggerDetails {
6482 fn clone(&self) -> Self {
6483 Self(self.0.clone())
6484 }
6485}
6486unsafe impl ::windows::core::Interface for MobileBroadbandDeviceServiceTriggerDetails {
6487 type Vtable = IMobileBroadbandDeviceServiceTriggerDetails_Vtbl;
6488}
6489unsafe impl ::windows::core::ComInterface for MobileBroadbandDeviceServiceTriggerDetails {
6490 const IID: ::windows::core::GUID = <IMobileBroadbandDeviceServiceTriggerDetails as ::windows::core::ComInterface>::IID;
6491}
6492impl ::windows::core::RuntimeName for MobileBroadbandDeviceServiceTriggerDetails {
6493 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandDeviceServiceTriggerDetails";
6494}
6495::windows::imp::interface_hierarchy!(MobileBroadbandDeviceServiceTriggerDetails, ::windows::core::IUnknown, ::windows::core::IInspectable);
6496unsafe impl ::core::marker::Send for MobileBroadbandDeviceServiceTriggerDetails {}
6497unsafe impl ::core::marker::Sync for MobileBroadbandDeviceServiceTriggerDetails {}
6498#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6499#[repr(transparent)]
6500pub struct MobileBroadbandModem(::windows::core::IUnknown);
6501impl MobileBroadbandModem {
6502 pub fn CurrentAccount(&self) -> ::windows::core::Result<MobileBroadbandAccount> {
6503 let this = self;
6504 unsafe {
6505 let mut result__ = ::windows::core::zeroed::<MobileBroadbandAccount>();
6506 (::windows::core::Interface::vtable(this).CurrentAccount)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6507 }
6508 }
6509 pub fn DeviceInformation(&self) -> ::windows::core::Result<MobileBroadbandDeviceInformation> {
6510 let this = self;
6511 unsafe {
6512 let mut result__ = ::windows::core::zeroed::<MobileBroadbandDeviceInformation>();
6513 (::windows::core::Interface::vtable(this).DeviceInformation)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6514 }
6515 }
6516 pub fn MaxDeviceServiceCommandSizeInBytes(&self) -> ::windows::core::Result<u32> {
6517 let this = self;
6518 unsafe {
6519 let mut result__ = ::windows::core::zeroed::<u32>();
6520 (::windows::core::Interface::vtable(this).MaxDeviceServiceCommandSizeInBytes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6521 }
6522 }
6523 pub fn MaxDeviceServiceDataSizeInBytes(&self) -> ::windows::core::Result<u32> {
6524 let this = self;
6525 unsafe {
6526 let mut result__ = ::windows::core::zeroed::<u32>();
6527 (::windows::core::Interface::vtable(this).MaxDeviceServiceDataSizeInBytes)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6528 }
6529 }
6530 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
6531 #[cfg(feature = "Foundation_Collections")]
6532 pub fn DeviceServices(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandDeviceServiceInformation>> {
6533 let this = self;
6534 unsafe {
6535 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandDeviceServiceInformation>>();
6536 (::windows::core::Interface::vtable(this).DeviceServices)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6537 }
6538 }
6539 pub fn GetDeviceService(&self, deviceserviceid: ::windows::core::GUID) -> ::windows::core::Result<MobileBroadbandDeviceService> {
6540 let this = self;
6541 unsafe {
6542 let mut result__ = ::windows::core::zeroed::<MobileBroadbandDeviceService>();
6543 (::windows::core::Interface::vtable(this).GetDeviceService)(::windows::core::Interface::as_raw(this), deviceserviceid, &mut result__).from_abi(result__)
6544 }
6545 }
6546 pub fn IsResetSupported(&self) -> ::windows::core::Result<bool> {
6547 let this = self;
6548 unsafe {
6549 let mut result__ = ::windows::core::zeroed::<bool>();
6550 (::windows::core::Interface::vtable(this).IsResetSupported)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6551 }
6552 }
6553 #[doc = "*Required features: `\"Foundation\"`*"]
6554 #[cfg(feature = "Foundation")]
6555 pub fn ResetAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
6556 let this = self;
6557 unsafe {
6558 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
6559 (::windows::core::Interface::vtable(this).ResetAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6560 }
6561 }
6562 #[doc = "*Required features: `\"Foundation\"`*"]
6563 #[cfg(feature = "Foundation")]
6564 pub fn GetCurrentConfigurationAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandModemConfiguration>> {
6565 let this = self;
6566 unsafe {
6567 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandModemConfiguration>>();
6568 (::windows::core::Interface::vtable(this).GetCurrentConfigurationAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6569 }
6570 }
6571 pub fn CurrentNetwork(&self) -> ::windows::core::Result<MobileBroadbandNetwork> {
6572 let this = self;
6573 unsafe {
6574 let mut result__ = ::windows::core::zeroed::<MobileBroadbandNetwork>();
6575 (::windows::core::Interface::vtable(this).CurrentNetwork)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6576 }
6577 }
6578 #[doc = "*Required features: `\"Foundation\"`*"]
6579 #[cfg(feature = "Foundation")]
6580 pub fn GetIsPassthroughEnabledAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<bool>> {
6581 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem2>(self)?;
6582 unsafe {
6583 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<bool>>();
6584 (::windows::core::Interface::vtable(this).GetIsPassthroughEnabledAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6585 }
6586 }
6587 #[doc = "*Required features: `\"Foundation\"`*"]
6588 #[cfg(feature = "Foundation")]
6589 pub fn SetIsPassthroughEnabledAsync(&self, value: bool) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandModemStatus>> {
6590 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem2>(self)?;
6591 unsafe {
6592 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandModemStatus>>();
6593 (::windows::core::Interface::vtable(this).SetIsPassthroughEnabledAsync)(::windows::core::Interface::as_raw(this), value, &mut result__).from_abi(result__)
6594 }
6595 }
6596 #[doc = "*Required features: `\"Foundation\"`*"]
6597 #[cfg(feature = "Foundation")]
6598 pub fn TryGetPcoAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandPco>> {
6599 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem3>(self)?;
6600 unsafe {
6601 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandPco>>();
6602 (::windows::core::Interface::vtable(this).TryGetPcoAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6603 }
6604 }
6605 pub fn IsInEmergencyCallMode(&self) -> ::windows::core::Result<bool> {
6606 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem3>(self)?;
6607 unsafe {
6608 let mut result__ = ::windows::core::zeroed::<bool>();
6609 (::windows::core::Interface::vtable(this).IsInEmergencyCallMode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6610 }
6611 }
6612 #[doc = "*Required features: `\"Foundation\"`*"]
6613 #[cfg(feature = "Foundation")]
6614 pub fn IsInEmergencyCallModeChanged(&self, handler: &super::super::Foundation::TypedEventHandler<MobileBroadbandModem, ::windows::core::IInspectable>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
6615 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem3>(self)?;
6616 unsafe {
6617 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
6618 (::windows::core::Interface::vtable(this).IsInEmergencyCallModeChanged)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
6619 }
6620 }
6621 #[doc = "*Required features: `\"Foundation\"`*"]
6622 #[cfg(feature = "Foundation")]
6623 pub fn RemoveIsInEmergencyCallModeChanged(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
6624 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem3>(self)?;
6625 unsafe { (::windows::core::Interface::vtable(this).RemoveIsInEmergencyCallModeChanged)(::windows::core::Interface::as_raw(this), token).ok() }
6626 }
6627 #[doc = "*Required features: `\"Foundation\"`*"]
6628 #[cfg(feature = "Foundation")]
6629 pub fn SetIsPassthroughEnabledWithSlotIndexAsync(&self, value: bool, slotindex: i32) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandModemStatus>> {
6630 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem4>(self)?;
6631 unsafe {
6632 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandModemStatus>>();
6633 (::windows::core::Interface::vtable(this).SetIsPassthroughEnabledWithSlotIndexAsync)(::windows::core::Interface::as_raw(this), value, slotindex, &mut result__).from_abi(result__)
6634 }
6635 }
6636 #[doc = "*Required features: `\"Foundation\"`*"]
6637 #[cfg(feature = "Foundation")]
6638 pub fn GetIsPassthroughEnabledWithSlotIndexAsync(&self, slotindex: i32) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<bool>> {
6639 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem4>(self)?;
6640 unsafe {
6641 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<bool>>();
6642 (::windows::core::Interface::vtable(this).GetIsPassthroughEnabledWithSlotIndexAsync)(::windows::core::Interface::as_raw(this), slotindex, &mut result__).from_abi(result__)
6643 }
6644 }
6645 pub fn SetIsPassthroughEnabledWithSlotIndex(&self, value: bool, slotindex: i32) -> ::windows::core::Result<MobileBroadbandModemStatus> {
6646 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem4>(self)?;
6647 unsafe {
6648 let mut result__ = ::windows::core::zeroed::<MobileBroadbandModemStatus>();
6649 (::windows::core::Interface::vtable(this).SetIsPassthroughEnabledWithSlotIndex)(::windows::core::Interface::as_raw(this), value, slotindex, &mut result__).from_abi(result__)
6650 }
6651 }
6652 pub fn GetIsPassthroughEnabledWithSlotIndex(&self, slotindex: i32) -> ::windows::core::Result<bool> {
6653 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModem4>(self)?;
6654 unsafe {
6655 let mut result__ = ::windows::core::zeroed::<bool>();
6656 (::windows::core::Interface::vtable(this).GetIsPassthroughEnabledWithSlotIndex)(::windows::core::Interface::as_raw(this), slotindex, &mut result__).from_abi(result__)
6657 }
6658 }
6659 pub fn GetDeviceSelector() -> ::windows::core::Result<::windows::core::HSTRING> {
6660 Self::IMobileBroadbandModemStatics(|this| unsafe {
6661 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6662 (::windows::core::Interface::vtable(this).GetDeviceSelector)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6663 })
6664 }
6665 pub fn FromId(deviceid: &::windows::core::HSTRING) -> ::windows::core::Result<MobileBroadbandModem> {
6666 Self::IMobileBroadbandModemStatics(|this| unsafe {
6667 let mut result__ = ::windows::core::zeroed::<MobileBroadbandModem>();
6668 (::windows::core::Interface::vtable(this).FromId)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(deviceid), &mut result__).from_abi(result__)
6669 })
6670 }
6671 pub fn GetDefault() -> ::windows::core::Result<MobileBroadbandModem> {
6672 Self::IMobileBroadbandModemStatics(|this| unsafe {
6673 let mut result__ = ::windows::core::zeroed::<MobileBroadbandModem>();
6674 (::windows::core::Interface::vtable(this).GetDefault)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6675 })
6676 }
6677 #[doc(hidden)]
6678 pub fn IMobileBroadbandModemStatics<R, F: FnOnce(&IMobileBroadbandModemStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
6679 static SHARED: ::windows::imp::FactoryCache<MobileBroadbandModem, IMobileBroadbandModemStatics> = ::windows::imp::FactoryCache::new();
6680 SHARED.call(callback)
6681 }
6682}
6683impl ::core::cmp::PartialEq for MobileBroadbandModem {
6684 fn eq(&self, other: &Self) -> bool {
6685 self.0 == other.0
6686 }
6687}
6688impl ::core::cmp::Eq for MobileBroadbandModem {}
6689impl ::core::fmt::Debug for MobileBroadbandModem {
6690 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6691 f.debug_tuple("MobileBroadbandModem").field(&self.0).finish()
6692 }
6693}
6694impl ::windows::core::RuntimeType for MobileBroadbandModem {
6695 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandModem;{d0356912-e9f9-4f67-a03d-43189a316bf1})");
6696}
6697impl ::core::clone::Clone for MobileBroadbandModem {
6698 fn clone(&self) -> Self {
6699 Self(self.0.clone())
6700 }
6701}
6702unsafe impl ::windows::core::Interface for MobileBroadbandModem {
6703 type Vtable = IMobileBroadbandModem_Vtbl;
6704}
6705unsafe impl ::windows::core::ComInterface for MobileBroadbandModem {
6706 const IID: ::windows::core::GUID = <IMobileBroadbandModem as ::windows::core::ComInterface>::IID;
6707}
6708impl ::windows::core::RuntimeName for MobileBroadbandModem {
6709 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandModem";
6710}
6711::windows::imp::interface_hierarchy!(MobileBroadbandModem, ::windows::core::IUnknown, ::windows::core::IInspectable);
6712unsafe impl ::core::marker::Send for MobileBroadbandModem {}
6713unsafe impl ::core::marker::Sync for MobileBroadbandModem {}
6714#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6715#[repr(transparent)]
6716pub struct MobileBroadbandModemConfiguration(::windows::core::IUnknown);
6717impl MobileBroadbandModemConfiguration {
6718 pub fn Uicc(&self) -> ::windows::core::Result<MobileBroadbandUicc> {
6719 let this = self;
6720 unsafe {
6721 let mut result__ = ::windows::core::zeroed::<MobileBroadbandUicc>();
6722 (::windows::core::Interface::vtable(this).Uicc)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6723 }
6724 }
6725 pub fn HomeProviderId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6726 let this = self;
6727 unsafe {
6728 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6729 (::windows::core::Interface::vtable(this).HomeProviderId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6730 }
6731 }
6732 pub fn HomeProviderName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6733 let this = self;
6734 unsafe {
6735 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6736 (::windows::core::Interface::vtable(this).HomeProviderName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6737 }
6738 }
6739 pub fn SarManager(&self) -> ::windows::core::Result<MobileBroadbandSarManager> {
6740 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandModemConfiguration2>(self)?;
6741 unsafe {
6742 let mut result__ = ::windows::core::zeroed::<MobileBroadbandSarManager>();
6743 (::windows::core::Interface::vtable(this).SarManager)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6744 }
6745 }
6746}
6747impl ::core::cmp::PartialEq for MobileBroadbandModemConfiguration {
6748 fn eq(&self, other: &Self) -> bool {
6749 self.0 == other.0
6750 }
6751}
6752impl ::core::cmp::Eq for MobileBroadbandModemConfiguration {}
6753impl ::core::fmt::Debug for MobileBroadbandModemConfiguration {
6754 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6755 f.debug_tuple("MobileBroadbandModemConfiguration").field(&self.0).finish()
6756 }
6757}
6758impl ::windows::core::RuntimeType for MobileBroadbandModemConfiguration {
6759 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandModemConfiguration;{fce035a3-d6cd-4320-b982-be9d3ec7890f})");
6760}
6761impl ::core::clone::Clone for MobileBroadbandModemConfiguration {
6762 fn clone(&self) -> Self {
6763 Self(self.0.clone())
6764 }
6765}
6766unsafe impl ::windows::core::Interface for MobileBroadbandModemConfiguration {
6767 type Vtable = IMobileBroadbandModemConfiguration_Vtbl;
6768}
6769unsafe impl ::windows::core::ComInterface for MobileBroadbandModemConfiguration {
6770 const IID: ::windows::core::GUID = <IMobileBroadbandModemConfiguration as ::windows::core::ComInterface>::IID;
6771}
6772impl ::windows::core::RuntimeName for MobileBroadbandModemConfiguration {
6773 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandModemConfiguration";
6774}
6775::windows::imp::interface_hierarchy!(MobileBroadbandModemConfiguration, ::windows::core::IUnknown, ::windows::core::IInspectable);
6776#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6777#[repr(transparent)]
6778pub struct MobileBroadbandModemIsolation(::windows::core::IUnknown);
6779impl MobileBroadbandModemIsolation {
6780 pub fn AddAllowedHost(&self, host: &super::HostName) -> ::windows::core::Result<()> {
6781 let this = self;
6782 unsafe { (::windows::core::Interface::vtable(this).AddAllowedHost)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(host)).ok() }
6783 }
6784 pub fn AddAllowedHostRange(&self, first: &super::HostName, last: &super::HostName) -> ::windows::core::Result<()> {
6785 let this = self;
6786 unsafe { (::windows::core::Interface::vtable(this).AddAllowedHostRange)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(first), ::core::mem::transmute_copy(last)).ok() }
6787 }
6788 #[doc = "*Required features: `\"Foundation\"`*"]
6789 #[cfg(feature = "Foundation")]
6790 pub fn ApplyConfigurationAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
6791 let this = self;
6792 unsafe {
6793 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
6794 (::windows::core::Interface::vtable(this).ApplyConfigurationAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6795 }
6796 }
6797 #[doc = "*Required features: `\"Foundation\"`*"]
6798 #[cfg(feature = "Foundation")]
6799 pub fn ClearConfigurationAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
6800 let this = self;
6801 unsafe {
6802 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
6803 (::windows::core::Interface::vtable(this).ClearConfigurationAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6804 }
6805 }
6806 pub fn Create(modemdeviceid: &::windows::core::HSTRING, rulegroupid: &::windows::core::HSTRING) -> ::windows::core::Result<MobileBroadbandModemIsolation> {
6807 Self::IMobileBroadbandModemIsolationFactory(|this| unsafe {
6808 let mut result__ = ::windows::core::zeroed::<MobileBroadbandModemIsolation>();
6809 (::windows::core::Interface::vtable(this).Create)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(modemdeviceid), ::core::mem::transmute_copy(rulegroupid), &mut result__).from_abi(result__)
6810 })
6811 }
6812 #[doc(hidden)]
6813 pub fn IMobileBroadbandModemIsolationFactory<R, F: FnOnce(&IMobileBroadbandModemIsolationFactory) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
6814 static SHARED: ::windows::imp::FactoryCache<MobileBroadbandModemIsolation, IMobileBroadbandModemIsolationFactory> = ::windows::imp::FactoryCache::new();
6815 SHARED.call(callback)
6816 }
6817}
6818impl ::core::cmp::PartialEq for MobileBroadbandModemIsolation {
6819 fn eq(&self, other: &Self) -> bool {
6820 self.0 == other.0
6821 }
6822}
6823impl ::core::cmp::Eq for MobileBroadbandModemIsolation {}
6824impl ::core::fmt::Debug for MobileBroadbandModemIsolation {
6825 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6826 f.debug_tuple("MobileBroadbandModemIsolation").field(&self.0).finish()
6827 }
6828}
6829impl ::windows::core::RuntimeType for MobileBroadbandModemIsolation {
6830 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandModemIsolation;{b5618fec-e661-4330-9bb4-3480212ec354})");
6831}
6832impl ::core::clone::Clone for MobileBroadbandModemIsolation {
6833 fn clone(&self) -> Self {
6834 Self(self.0.clone())
6835 }
6836}
6837unsafe impl ::windows::core::Interface for MobileBroadbandModemIsolation {
6838 type Vtable = IMobileBroadbandModemIsolation_Vtbl;
6839}
6840unsafe impl ::windows::core::ComInterface for MobileBroadbandModemIsolation {
6841 const IID: ::windows::core::GUID = <IMobileBroadbandModemIsolation as ::windows::core::ComInterface>::IID;
6842}
6843impl ::windows::core::RuntimeName for MobileBroadbandModemIsolation {
6844 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandModemIsolation";
6845}
6846::windows::imp::interface_hierarchy!(MobileBroadbandModemIsolation, ::windows::core::IUnknown, ::windows::core::IInspectable);
6847unsafe impl ::core::marker::Send for MobileBroadbandModemIsolation {}
6848unsafe impl ::core::marker::Sync for MobileBroadbandModemIsolation {}
6849#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6850#[repr(transparent)]
6851pub struct MobileBroadbandNetwork(::windows::core::IUnknown);
6852impl MobileBroadbandNetwork {
6853 #[doc = "*Required features: `\"Networking_Connectivity\"`*"]
6854 #[cfg(feature = "Networking_Connectivity")]
6855 pub fn NetworkAdapter(&self) -> ::windows::core::Result<super::Connectivity::NetworkAdapter> {
6856 let this = self;
6857 unsafe {
6858 let mut result__ = ::windows::core::zeroed::<super::Connectivity::NetworkAdapter>();
6859 (::windows::core::Interface::vtable(this).NetworkAdapter)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6860 }
6861 }
6862 pub fn NetworkRegistrationState(&self) -> ::windows::core::Result<NetworkRegistrationState> {
6863 let this = self;
6864 unsafe {
6865 let mut result__ = ::windows::core::zeroed::<NetworkRegistrationState>();
6866 (::windows::core::Interface::vtable(this).NetworkRegistrationState)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6867 }
6868 }
6869 pub fn RegistrationNetworkError(&self) -> ::windows::core::Result<u32> {
6870 let this = self;
6871 unsafe {
6872 let mut result__ = ::windows::core::zeroed::<u32>();
6873 (::windows::core::Interface::vtable(this).RegistrationNetworkError)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6874 }
6875 }
6876 pub fn PacketAttachNetworkError(&self) -> ::windows::core::Result<u32> {
6877 let this = self;
6878 unsafe {
6879 let mut result__ = ::windows::core::zeroed::<u32>();
6880 (::windows::core::Interface::vtable(this).PacketAttachNetworkError)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6881 }
6882 }
6883 pub fn ActivationNetworkError(&self) -> ::windows::core::Result<u32> {
6884 let this = self;
6885 unsafe {
6886 let mut result__ = ::windows::core::zeroed::<u32>();
6887 (::windows::core::Interface::vtable(this).ActivationNetworkError)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6888 }
6889 }
6890 pub fn AccessPointName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6891 let this = self;
6892 unsafe {
6893 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6894 (::windows::core::Interface::vtable(this).AccessPointName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6895 }
6896 }
6897 pub fn RegisteredDataClass(&self) -> ::windows::core::Result<DataClasses> {
6898 let this = self;
6899 unsafe {
6900 let mut result__ = ::windows::core::zeroed::<DataClasses>();
6901 (::windows::core::Interface::vtable(this).RegisteredDataClass)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6902 }
6903 }
6904 pub fn RegisteredProviderId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6905 let this = self;
6906 unsafe {
6907 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6908 (::windows::core::Interface::vtable(this).RegisteredProviderId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6909 }
6910 }
6911 pub fn RegisteredProviderName(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6912 let this = self;
6913 unsafe {
6914 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6915 (::windows::core::Interface::vtable(this).RegisteredProviderName)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6916 }
6917 }
6918 pub fn ShowConnectionUI(&self) -> ::windows::core::Result<()> {
6919 let this = self;
6920 unsafe { (::windows::core::Interface::vtable(this).ShowConnectionUI)(::windows::core::Interface::as_raw(this)).ok() }
6921 }
6922 #[doc = "*Required features: `\"Foundation\"`*"]
6923 #[cfg(feature = "Foundation")]
6924 pub fn GetVoiceCallSupportAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<bool>> {
6925 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandNetwork2>(self)?;
6926 unsafe {
6927 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<bool>>();
6928 (::windows::core::Interface::vtable(this).GetVoiceCallSupportAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6929 }
6930 }
6931 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
6932 #[cfg(feature = "Foundation_Collections")]
6933 pub fn RegistrationUiccApps(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandUiccApp>> {
6934 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandNetwork2>(self)?;
6935 unsafe {
6936 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandUiccApp>>();
6937 (::windows::core::Interface::vtable(this).RegistrationUiccApps)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6938 }
6939 }
6940 #[doc = "*Required features: `\"Foundation\"`*"]
6941 #[cfg(feature = "Foundation")]
6942 pub fn GetCellsInfoAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandCellsInfo>> {
6943 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandNetwork3>(self)?;
6944 unsafe {
6945 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandCellsInfo>>();
6946 (::windows::core::Interface::vtable(this).GetCellsInfoAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6947 }
6948 }
6949}
6950impl ::core::cmp::PartialEq for MobileBroadbandNetwork {
6951 fn eq(&self, other: &Self) -> bool {
6952 self.0 == other.0
6953 }
6954}
6955impl ::core::cmp::Eq for MobileBroadbandNetwork {}
6956impl ::core::fmt::Debug for MobileBroadbandNetwork {
6957 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
6958 f.debug_tuple("MobileBroadbandNetwork").field(&self.0).finish()
6959 }
6960}
6961impl ::windows::core::RuntimeType for MobileBroadbandNetwork {
6962 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandNetwork;{cb63928c-0309-4cb6-a8c1-6a5a3c8e1ff6})");
6963}
6964impl ::core::clone::Clone for MobileBroadbandNetwork {
6965 fn clone(&self) -> Self {
6966 Self(self.0.clone())
6967 }
6968}
6969unsafe impl ::windows::core::Interface for MobileBroadbandNetwork {
6970 type Vtable = IMobileBroadbandNetwork_Vtbl;
6971}
6972unsafe impl ::windows::core::ComInterface for MobileBroadbandNetwork {
6973 const IID: ::windows::core::GUID = <IMobileBroadbandNetwork as ::windows::core::ComInterface>::IID;
6974}
6975impl ::windows::core::RuntimeName for MobileBroadbandNetwork {
6976 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandNetwork";
6977}
6978::windows::imp::interface_hierarchy!(MobileBroadbandNetwork, ::windows::core::IUnknown, ::windows::core::IInspectable);
6979#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
6980#[repr(transparent)]
6981pub struct MobileBroadbandNetworkRegistrationStateChange(::windows::core::IUnknown);
6982impl MobileBroadbandNetworkRegistrationStateChange {
6983 pub fn DeviceId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
6984 let this = self;
6985 unsafe {
6986 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
6987 (::windows::core::Interface::vtable(this).DeviceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6988 }
6989 }
6990 pub fn Network(&self) -> ::windows::core::Result<MobileBroadbandNetwork> {
6991 let this = self;
6992 unsafe {
6993 let mut result__ = ::windows::core::zeroed::<MobileBroadbandNetwork>();
6994 (::windows::core::Interface::vtable(this).Network)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
6995 }
6996 }
6997}
6998impl ::core::cmp::PartialEq for MobileBroadbandNetworkRegistrationStateChange {
6999 fn eq(&self, other: &Self) -> bool {
7000 self.0 == other.0
7001 }
7002}
7003impl ::core::cmp::Eq for MobileBroadbandNetworkRegistrationStateChange {}
7004impl ::core::fmt::Debug for MobileBroadbandNetworkRegistrationStateChange {
7005 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7006 f.debug_tuple("MobileBroadbandNetworkRegistrationStateChange").field(&self.0).finish()
7007 }
7008}
7009impl ::windows::core::RuntimeType for MobileBroadbandNetworkRegistrationStateChange {
7010 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandNetworkRegistrationStateChange;{beaf94e1-960f-49b4-a08d-7d85e968c7ec})");
7011}
7012impl ::core::clone::Clone for MobileBroadbandNetworkRegistrationStateChange {
7013 fn clone(&self) -> Self {
7014 Self(self.0.clone())
7015 }
7016}
7017unsafe impl ::windows::core::Interface for MobileBroadbandNetworkRegistrationStateChange {
7018 type Vtable = IMobileBroadbandNetworkRegistrationStateChange_Vtbl;
7019}
7020unsafe impl ::windows::core::ComInterface for MobileBroadbandNetworkRegistrationStateChange {
7021 const IID: ::windows::core::GUID = <IMobileBroadbandNetworkRegistrationStateChange as ::windows::core::ComInterface>::IID;
7022}
7023impl ::windows::core::RuntimeName for MobileBroadbandNetworkRegistrationStateChange {
7024 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandNetworkRegistrationStateChange";
7025}
7026::windows::imp::interface_hierarchy!(MobileBroadbandNetworkRegistrationStateChange, ::windows::core::IUnknown, ::windows::core::IInspectable);
7027unsafe impl ::core::marker::Send for MobileBroadbandNetworkRegistrationStateChange {}
7028unsafe impl ::core::marker::Sync for MobileBroadbandNetworkRegistrationStateChange {}
7029#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7030#[repr(transparent)]
7031pub struct MobileBroadbandNetworkRegistrationStateChangeTriggerDetails(::windows::core::IUnknown);
7032impl MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
7033 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
7034 #[cfg(feature = "Foundation_Collections")]
7035 pub fn NetworkRegistrationStateChanges(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandNetworkRegistrationStateChange>> {
7036 let this = self;
7037 unsafe {
7038 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandNetworkRegistrationStateChange>>();
7039 (::windows::core::Interface::vtable(this).NetworkRegistrationStateChanges)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7040 }
7041 }
7042}
7043impl ::core::cmp::PartialEq for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
7044 fn eq(&self, other: &Self) -> bool {
7045 self.0 == other.0
7046 }
7047}
7048impl ::core::cmp::Eq for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {}
7049impl ::core::fmt::Debug for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
7050 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7051 f.debug_tuple("MobileBroadbandNetworkRegistrationStateChangeTriggerDetails").field(&self.0).finish()
7052 }
7053}
7054impl ::windows::core::RuntimeType for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
7055 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandNetworkRegistrationStateChangeTriggerDetails;{89135cff-28b8-46aa-b137-1c4b0f21edfe})");
7056}
7057impl ::core::clone::Clone for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
7058 fn clone(&self) -> Self {
7059 Self(self.0.clone())
7060 }
7061}
7062unsafe impl ::windows::core::Interface for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
7063 type Vtable = IMobileBroadbandNetworkRegistrationStateChangeTriggerDetails_Vtbl;
7064}
7065unsafe impl ::windows::core::ComInterface for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
7066 const IID: ::windows::core::GUID = <IMobileBroadbandNetworkRegistrationStateChangeTriggerDetails as ::windows::core::ComInterface>::IID;
7067}
7068impl ::windows::core::RuntimeName for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {
7069 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandNetworkRegistrationStateChangeTriggerDetails";
7070}
7071::windows::imp::interface_hierarchy!(MobileBroadbandNetworkRegistrationStateChangeTriggerDetails, ::windows::core::IUnknown, ::windows::core::IInspectable);
7072unsafe impl ::core::marker::Send for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {}
7073unsafe impl ::core::marker::Sync for MobileBroadbandNetworkRegistrationStateChangeTriggerDetails {}
7074#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7075#[repr(transparent)]
7076pub struct MobileBroadbandPco(::windows::core::IUnknown);
7077impl MobileBroadbandPco {
7078 #[doc = "*Required features: `\"Storage_Streams\"`*"]
7079 #[cfg(feature = "Storage_Streams")]
7080 pub fn Data(&self) -> ::windows::core::Result<super::super::Storage::Streams::IBuffer> {
7081 let this = self;
7082 unsafe {
7083 let mut result__ = ::windows::core::zeroed::<super::super::Storage::Streams::IBuffer>();
7084 (::windows::core::Interface::vtable(this).Data)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7085 }
7086 }
7087 pub fn IsComplete(&self) -> ::windows::core::Result<bool> {
7088 let this = self;
7089 unsafe {
7090 let mut result__ = ::windows::core::zeroed::<bool>();
7091 (::windows::core::Interface::vtable(this).IsComplete)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7092 }
7093 }
7094 pub fn DeviceId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
7095 let this = self;
7096 unsafe {
7097 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
7098 (::windows::core::Interface::vtable(this).DeviceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7099 }
7100 }
7101}
7102impl ::core::cmp::PartialEq for MobileBroadbandPco {
7103 fn eq(&self, other: &Self) -> bool {
7104 self.0 == other.0
7105 }
7106}
7107impl ::core::cmp::Eq for MobileBroadbandPco {}
7108impl ::core::fmt::Debug for MobileBroadbandPco {
7109 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7110 f.debug_tuple("MobileBroadbandPco").field(&self.0).finish()
7111 }
7112}
7113impl ::windows::core::RuntimeType for MobileBroadbandPco {
7114 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandPco;{d4e4fcbe-e3a3-43c5-a87b-6c86d229d7fa})");
7115}
7116impl ::core::clone::Clone for MobileBroadbandPco {
7117 fn clone(&self) -> Self {
7118 Self(self.0.clone())
7119 }
7120}
7121unsafe impl ::windows::core::Interface for MobileBroadbandPco {
7122 type Vtable = IMobileBroadbandPco_Vtbl;
7123}
7124unsafe impl ::windows::core::ComInterface for MobileBroadbandPco {
7125 const IID: ::windows::core::GUID = <IMobileBroadbandPco as ::windows::core::ComInterface>::IID;
7126}
7127impl ::windows::core::RuntimeName for MobileBroadbandPco {
7128 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandPco";
7129}
7130::windows::imp::interface_hierarchy!(MobileBroadbandPco, ::windows::core::IUnknown, ::windows::core::IInspectable);
7131unsafe impl ::core::marker::Send for MobileBroadbandPco {}
7132unsafe impl ::core::marker::Sync for MobileBroadbandPco {}
7133#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7134#[repr(transparent)]
7135pub struct MobileBroadbandPcoDataChangeTriggerDetails(::windows::core::IUnknown);
7136impl MobileBroadbandPcoDataChangeTriggerDetails {
7137 pub fn UpdatedData(&self) -> ::windows::core::Result<MobileBroadbandPco> {
7138 let this = self;
7139 unsafe {
7140 let mut result__ = ::windows::core::zeroed::<MobileBroadbandPco>();
7141 (::windows::core::Interface::vtable(this).UpdatedData)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7142 }
7143 }
7144}
7145impl ::core::cmp::PartialEq for MobileBroadbandPcoDataChangeTriggerDetails {
7146 fn eq(&self, other: &Self) -> bool {
7147 self.0 == other.0
7148 }
7149}
7150impl ::core::cmp::Eq for MobileBroadbandPcoDataChangeTriggerDetails {}
7151impl ::core::fmt::Debug for MobileBroadbandPcoDataChangeTriggerDetails {
7152 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7153 f.debug_tuple("MobileBroadbandPcoDataChangeTriggerDetails").field(&self.0).finish()
7154 }
7155}
7156impl ::windows::core::RuntimeType for MobileBroadbandPcoDataChangeTriggerDetails {
7157 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandPcoDataChangeTriggerDetails;{263f5114-64e0-4493-909b-2d14a01962b1})");
7158}
7159impl ::core::clone::Clone for MobileBroadbandPcoDataChangeTriggerDetails {
7160 fn clone(&self) -> Self {
7161 Self(self.0.clone())
7162 }
7163}
7164unsafe impl ::windows::core::Interface for MobileBroadbandPcoDataChangeTriggerDetails {
7165 type Vtable = IMobileBroadbandPcoDataChangeTriggerDetails_Vtbl;
7166}
7167unsafe impl ::windows::core::ComInterface for MobileBroadbandPcoDataChangeTriggerDetails {
7168 const IID: ::windows::core::GUID = <IMobileBroadbandPcoDataChangeTriggerDetails as ::windows::core::ComInterface>::IID;
7169}
7170impl ::windows::core::RuntimeName for MobileBroadbandPcoDataChangeTriggerDetails {
7171 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandPcoDataChangeTriggerDetails";
7172}
7173::windows::imp::interface_hierarchy!(MobileBroadbandPcoDataChangeTriggerDetails, ::windows::core::IUnknown, ::windows::core::IInspectable);
7174unsafe impl ::core::marker::Send for MobileBroadbandPcoDataChangeTriggerDetails {}
7175unsafe impl ::core::marker::Sync for MobileBroadbandPcoDataChangeTriggerDetails {}
7176#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7177#[repr(transparent)]
7178pub struct MobileBroadbandPin(::windows::core::IUnknown);
7179impl MobileBroadbandPin {
7180 pub fn Type(&self) -> ::windows::core::Result<MobileBroadbandPinType> {
7181 let this = self;
7182 unsafe {
7183 let mut result__ = ::windows::core::zeroed::<MobileBroadbandPinType>();
7184 (::windows::core::Interface::vtable(this).Type)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7185 }
7186 }
7187 pub fn LockState(&self) -> ::windows::core::Result<MobileBroadbandPinLockState> {
7188 let this = self;
7189 unsafe {
7190 let mut result__ = ::windows::core::zeroed::<MobileBroadbandPinLockState>();
7191 (::windows::core::Interface::vtable(this).LockState)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7192 }
7193 }
7194 pub fn Format(&self) -> ::windows::core::Result<MobileBroadbandPinFormat> {
7195 let this = self;
7196 unsafe {
7197 let mut result__ = ::windows::core::zeroed::<MobileBroadbandPinFormat>();
7198 (::windows::core::Interface::vtable(this).Format)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7199 }
7200 }
7201 pub fn Enabled(&self) -> ::windows::core::Result<bool> {
7202 let this = self;
7203 unsafe {
7204 let mut result__ = ::windows::core::zeroed::<bool>();
7205 (::windows::core::Interface::vtable(this).Enabled)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7206 }
7207 }
7208 pub fn MaxLength(&self) -> ::windows::core::Result<u32> {
7209 let this = self;
7210 unsafe {
7211 let mut result__ = ::windows::core::zeroed::<u32>();
7212 (::windows::core::Interface::vtable(this).MaxLength)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7213 }
7214 }
7215 pub fn MinLength(&self) -> ::windows::core::Result<u32> {
7216 let this = self;
7217 unsafe {
7218 let mut result__ = ::windows::core::zeroed::<u32>();
7219 (::windows::core::Interface::vtable(this).MinLength)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7220 }
7221 }
7222 pub fn AttemptsRemaining(&self) -> ::windows::core::Result<u32> {
7223 let this = self;
7224 unsafe {
7225 let mut result__ = ::windows::core::zeroed::<u32>();
7226 (::windows::core::Interface::vtable(this).AttemptsRemaining)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7227 }
7228 }
7229 #[doc = "*Required features: `\"Foundation\"`*"]
7230 #[cfg(feature = "Foundation")]
7231 pub fn EnableAsync(&self, currentpin: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>> {
7232 let this = self;
7233 unsafe {
7234 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>>();
7235 (::windows::core::Interface::vtable(this).EnableAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(currentpin), &mut result__).from_abi(result__)
7236 }
7237 }
7238 #[doc = "*Required features: `\"Foundation\"`*"]
7239 #[cfg(feature = "Foundation")]
7240 pub fn DisableAsync(&self, currentpin: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>> {
7241 let this = self;
7242 unsafe {
7243 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>>();
7244 (::windows::core::Interface::vtable(this).DisableAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(currentpin), &mut result__).from_abi(result__)
7245 }
7246 }
7247 #[doc = "*Required features: `\"Foundation\"`*"]
7248 #[cfg(feature = "Foundation")]
7249 pub fn EnterAsync(&self, currentpin: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>> {
7250 let this = self;
7251 unsafe {
7252 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>>();
7253 (::windows::core::Interface::vtable(this).EnterAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(currentpin), &mut result__).from_abi(result__)
7254 }
7255 }
7256 #[doc = "*Required features: `\"Foundation\"`*"]
7257 #[cfg(feature = "Foundation")]
7258 pub fn ChangeAsync(&self, currentpin: &::windows::core::HSTRING, newpin: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>> {
7259 let this = self;
7260 unsafe {
7261 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>>();
7262 (::windows::core::Interface::vtable(this).ChangeAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(currentpin), ::core::mem::transmute_copy(newpin), &mut result__).from_abi(result__)
7263 }
7264 }
7265 #[doc = "*Required features: `\"Foundation\"`*"]
7266 #[cfg(feature = "Foundation")]
7267 pub fn UnblockAsync(&self, pinunblockkey: &::windows::core::HSTRING, newpin: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>> {
7268 let this = self;
7269 unsafe {
7270 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandPinOperationResult>>();
7271 (::windows::core::Interface::vtable(this).UnblockAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(pinunblockkey), ::core::mem::transmute_copy(newpin), &mut result__).from_abi(result__)
7272 }
7273 }
7274}
7275impl ::core::cmp::PartialEq for MobileBroadbandPin {
7276 fn eq(&self, other: &Self) -> bool {
7277 self.0 == other.0
7278 }
7279}
7280impl ::core::cmp::Eq for MobileBroadbandPin {}
7281impl ::core::fmt::Debug for MobileBroadbandPin {
7282 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7283 f.debug_tuple("MobileBroadbandPin").field(&self.0).finish()
7284 }
7285}
7286impl ::windows::core::RuntimeType for MobileBroadbandPin {
7287 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandPin;{e661d709-e779-45bf-8281-75323df9e321})");
7288}
7289impl ::core::clone::Clone for MobileBroadbandPin {
7290 fn clone(&self) -> Self {
7291 Self(self.0.clone())
7292 }
7293}
7294unsafe impl ::windows::core::Interface for MobileBroadbandPin {
7295 type Vtable = IMobileBroadbandPin_Vtbl;
7296}
7297unsafe impl ::windows::core::ComInterface for MobileBroadbandPin {
7298 const IID: ::windows::core::GUID = <IMobileBroadbandPin as ::windows::core::ComInterface>::IID;
7299}
7300impl ::windows::core::RuntimeName for MobileBroadbandPin {
7301 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandPin";
7302}
7303::windows::imp::interface_hierarchy!(MobileBroadbandPin, ::windows::core::IUnknown, ::windows::core::IInspectable);
7304unsafe impl ::core::marker::Send for MobileBroadbandPin {}
7305unsafe impl ::core::marker::Sync for MobileBroadbandPin {}
7306#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7307#[repr(transparent)]
7308pub struct MobileBroadbandPinLockStateChange(::windows::core::IUnknown);
7309impl MobileBroadbandPinLockStateChange {
7310 pub fn DeviceId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
7311 let this = self;
7312 unsafe {
7313 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
7314 (::windows::core::Interface::vtable(this).DeviceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7315 }
7316 }
7317 pub fn PinType(&self) -> ::windows::core::Result<MobileBroadbandPinType> {
7318 let this = self;
7319 unsafe {
7320 let mut result__ = ::windows::core::zeroed::<MobileBroadbandPinType>();
7321 (::windows::core::Interface::vtable(this).PinType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7322 }
7323 }
7324 pub fn PinLockState(&self) -> ::windows::core::Result<MobileBroadbandPinLockState> {
7325 let this = self;
7326 unsafe {
7327 let mut result__ = ::windows::core::zeroed::<MobileBroadbandPinLockState>();
7328 (::windows::core::Interface::vtable(this).PinLockState)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7329 }
7330 }
7331}
7332impl ::core::cmp::PartialEq for MobileBroadbandPinLockStateChange {
7333 fn eq(&self, other: &Self) -> bool {
7334 self.0 == other.0
7335 }
7336}
7337impl ::core::cmp::Eq for MobileBroadbandPinLockStateChange {}
7338impl ::core::fmt::Debug for MobileBroadbandPinLockStateChange {
7339 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7340 f.debug_tuple("MobileBroadbandPinLockStateChange").field(&self.0).finish()
7341 }
7342}
7343impl ::windows::core::RuntimeType for MobileBroadbandPinLockStateChange {
7344 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandPinLockStateChange;{be16673e-1f04-4f95-8b90-e7f559dde7e5})");
7345}
7346impl ::core::clone::Clone for MobileBroadbandPinLockStateChange {
7347 fn clone(&self) -> Self {
7348 Self(self.0.clone())
7349 }
7350}
7351unsafe impl ::windows::core::Interface for MobileBroadbandPinLockStateChange {
7352 type Vtable = IMobileBroadbandPinLockStateChange_Vtbl;
7353}
7354unsafe impl ::windows::core::ComInterface for MobileBroadbandPinLockStateChange {
7355 const IID: ::windows::core::GUID = <IMobileBroadbandPinLockStateChange as ::windows::core::ComInterface>::IID;
7356}
7357impl ::windows::core::RuntimeName for MobileBroadbandPinLockStateChange {
7358 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandPinLockStateChange";
7359}
7360::windows::imp::interface_hierarchy!(MobileBroadbandPinLockStateChange, ::windows::core::IUnknown, ::windows::core::IInspectable);
7361unsafe impl ::core::marker::Send for MobileBroadbandPinLockStateChange {}
7362unsafe impl ::core::marker::Sync for MobileBroadbandPinLockStateChange {}
7363#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7364#[repr(transparent)]
7365pub struct MobileBroadbandPinLockStateChangeTriggerDetails(::windows::core::IUnknown);
7366impl MobileBroadbandPinLockStateChangeTriggerDetails {
7367 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
7368 #[cfg(feature = "Foundation_Collections")]
7369 pub fn PinLockStateChanges(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandPinLockStateChange>> {
7370 let this = self;
7371 unsafe {
7372 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandPinLockStateChange>>();
7373 (::windows::core::Interface::vtable(this).PinLockStateChanges)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7374 }
7375 }
7376}
7377impl ::core::cmp::PartialEq for MobileBroadbandPinLockStateChangeTriggerDetails {
7378 fn eq(&self, other: &Self) -> bool {
7379 self.0 == other.0
7380 }
7381}
7382impl ::core::cmp::Eq for MobileBroadbandPinLockStateChangeTriggerDetails {}
7383impl ::core::fmt::Debug for MobileBroadbandPinLockStateChangeTriggerDetails {
7384 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7385 f.debug_tuple("MobileBroadbandPinLockStateChangeTriggerDetails").field(&self.0).finish()
7386 }
7387}
7388impl ::windows::core::RuntimeType for MobileBroadbandPinLockStateChangeTriggerDetails {
7389 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandPinLockStateChangeTriggerDetails;{d338c091-3e91-4d38-9036-aee83a6e79ad})");
7390}
7391impl ::core::clone::Clone for MobileBroadbandPinLockStateChangeTriggerDetails {
7392 fn clone(&self) -> Self {
7393 Self(self.0.clone())
7394 }
7395}
7396unsafe impl ::windows::core::Interface for MobileBroadbandPinLockStateChangeTriggerDetails {
7397 type Vtable = IMobileBroadbandPinLockStateChangeTriggerDetails_Vtbl;
7398}
7399unsafe impl ::windows::core::ComInterface for MobileBroadbandPinLockStateChangeTriggerDetails {
7400 const IID: ::windows::core::GUID = <IMobileBroadbandPinLockStateChangeTriggerDetails as ::windows::core::ComInterface>::IID;
7401}
7402impl ::windows::core::RuntimeName for MobileBroadbandPinLockStateChangeTriggerDetails {
7403 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandPinLockStateChangeTriggerDetails";
7404}
7405::windows::imp::interface_hierarchy!(MobileBroadbandPinLockStateChangeTriggerDetails, ::windows::core::IUnknown, ::windows::core::IInspectable);
7406unsafe impl ::core::marker::Send for MobileBroadbandPinLockStateChangeTriggerDetails {}
7407unsafe impl ::core::marker::Sync for MobileBroadbandPinLockStateChangeTriggerDetails {}
7408#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7409#[repr(transparent)]
7410pub struct MobileBroadbandPinManager(::windows::core::IUnknown);
7411impl MobileBroadbandPinManager {
7412 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
7413 #[cfg(feature = "Foundation_Collections")]
7414 pub fn SupportedPins(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandPinType>> {
7415 let this = self;
7416 unsafe {
7417 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandPinType>>();
7418 (::windows::core::Interface::vtable(this).SupportedPins)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7419 }
7420 }
7421 pub fn GetPin(&self, pintype: MobileBroadbandPinType) -> ::windows::core::Result<MobileBroadbandPin> {
7422 let this = self;
7423 unsafe {
7424 let mut result__ = ::windows::core::zeroed::<MobileBroadbandPin>();
7425 (::windows::core::Interface::vtable(this).GetPin)(::windows::core::Interface::as_raw(this), pintype, &mut result__).from_abi(result__)
7426 }
7427 }
7428}
7429impl ::core::cmp::PartialEq for MobileBroadbandPinManager {
7430 fn eq(&self, other: &Self) -> bool {
7431 self.0 == other.0
7432 }
7433}
7434impl ::core::cmp::Eq for MobileBroadbandPinManager {}
7435impl ::core::fmt::Debug for MobileBroadbandPinManager {
7436 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7437 f.debug_tuple("MobileBroadbandPinManager").field(&self.0).finish()
7438 }
7439}
7440impl ::windows::core::RuntimeType for MobileBroadbandPinManager {
7441 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandPinManager;{83567edd-6e1f-4b9b-a413-2b1f50cc36df})");
7442}
7443impl ::core::clone::Clone for MobileBroadbandPinManager {
7444 fn clone(&self) -> Self {
7445 Self(self.0.clone())
7446 }
7447}
7448unsafe impl ::windows::core::Interface for MobileBroadbandPinManager {
7449 type Vtable = IMobileBroadbandPinManager_Vtbl;
7450}
7451unsafe impl ::windows::core::ComInterface for MobileBroadbandPinManager {
7452 const IID: ::windows::core::GUID = <IMobileBroadbandPinManager as ::windows::core::ComInterface>::IID;
7453}
7454impl ::windows::core::RuntimeName for MobileBroadbandPinManager {
7455 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandPinManager";
7456}
7457::windows::imp::interface_hierarchy!(MobileBroadbandPinManager, ::windows::core::IUnknown, ::windows::core::IInspectable);
7458unsafe impl ::core::marker::Send for MobileBroadbandPinManager {}
7459unsafe impl ::core::marker::Sync for MobileBroadbandPinManager {}
7460#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7461#[repr(transparent)]
7462pub struct MobileBroadbandPinOperationResult(::windows::core::IUnknown);
7463impl MobileBroadbandPinOperationResult {
7464 pub fn IsSuccessful(&self) -> ::windows::core::Result<bool> {
7465 let this = self;
7466 unsafe {
7467 let mut result__ = ::windows::core::zeroed::<bool>();
7468 (::windows::core::Interface::vtable(this).IsSuccessful)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7469 }
7470 }
7471 pub fn AttemptsRemaining(&self) -> ::windows::core::Result<u32> {
7472 let this = self;
7473 unsafe {
7474 let mut result__ = ::windows::core::zeroed::<u32>();
7475 (::windows::core::Interface::vtable(this).AttemptsRemaining)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7476 }
7477 }
7478}
7479impl ::core::cmp::PartialEq for MobileBroadbandPinOperationResult {
7480 fn eq(&self, other: &Self) -> bool {
7481 self.0 == other.0
7482 }
7483}
7484impl ::core::cmp::Eq for MobileBroadbandPinOperationResult {}
7485impl ::core::fmt::Debug for MobileBroadbandPinOperationResult {
7486 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7487 f.debug_tuple("MobileBroadbandPinOperationResult").field(&self.0).finish()
7488 }
7489}
7490impl ::windows::core::RuntimeType for MobileBroadbandPinOperationResult {
7491 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandPinOperationResult;{11dddc32-31e7-49f5-b663-123d3bef0362})");
7492}
7493impl ::core::clone::Clone for MobileBroadbandPinOperationResult {
7494 fn clone(&self) -> Self {
7495 Self(self.0.clone())
7496 }
7497}
7498unsafe impl ::windows::core::Interface for MobileBroadbandPinOperationResult {
7499 type Vtable = IMobileBroadbandPinOperationResult_Vtbl;
7500}
7501unsafe impl ::windows::core::ComInterface for MobileBroadbandPinOperationResult {
7502 const IID: ::windows::core::GUID = <IMobileBroadbandPinOperationResult as ::windows::core::ComInterface>::IID;
7503}
7504impl ::windows::core::RuntimeName for MobileBroadbandPinOperationResult {
7505 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandPinOperationResult";
7506}
7507::windows::imp::interface_hierarchy!(MobileBroadbandPinOperationResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
7508unsafe impl ::core::marker::Send for MobileBroadbandPinOperationResult {}
7509unsafe impl ::core::marker::Sync for MobileBroadbandPinOperationResult {}
7510#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7511#[repr(transparent)]
7512pub struct MobileBroadbandRadioStateChange(::windows::core::IUnknown);
7513impl MobileBroadbandRadioStateChange {
7514 pub fn DeviceId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
7515 let this = self;
7516 unsafe {
7517 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
7518 (::windows::core::Interface::vtable(this).DeviceId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7519 }
7520 }
7521 pub fn RadioState(&self) -> ::windows::core::Result<MobileBroadbandRadioState> {
7522 let this = self;
7523 unsafe {
7524 let mut result__ = ::windows::core::zeroed::<MobileBroadbandRadioState>();
7525 (::windows::core::Interface::vtable(this).RadioState)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7526 }
7527 }
7528}
7529impl ::core::cmp::PartialEq for MobileBroadbandRadioStateChange {
7530 fn eq(&self, other: &Self) -> bool {
7531 self.0 == other.0
7532 }
7533}
7534impl ::core::cmp::Eq for MobileBroadbandRadioStateChange {}
7535impl ::core::fmt::Debug for MobileBroadbandRadioStateChange {
7536 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7537 f.debug_tuple("MobileBroadbandRadioStateChange").field(&self.0).finish()
7538 }
7539}
7540impl ::windows::core::RuntimeType for MobileBroadbandRadioStateChange {
7541 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandRadioStateChange;{b054a561-9833-4aed-9717-4348b21a24b3})");
7542}
7543impl ::core::clone::Clone for MobileBroadbandRadioStateChange {
7544 fn clone(&self) -> Self {
7545 Self(self.0.clone())
7546 }
7547}
7548unsafe impl ::windows::core::Interface for MobileBroadbandRadioStateChange {
7549 type Vtable = IMobileBroadbandRadioStateChange_Vtbl;
7550}
7551unsafe impl ::windows::core::ComInterface for MobileBroadbandRadioStateChange {
7552 const IID: ::windows::core::GUID = <IMobileBroadbandRadioStateChange as ::windows::core::ComInterface>::IID;
7553}
7554impl ::windows::core::RuntimeName for MobileBroadbandRadioStateChange {
7555 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandRadioStateChange";
7556}
7557::windows::imp::interface_hierarchy!(MobileBroadbandRadioStateChange, ::windows::core::IUnknown, ::windows::core::IInspectable);
7558unsafe impl ::core::marker::Send for MobileBroadbandRadioStateChange {}
7559unsafe impl ::core::marker::Sync for MobileBroadbandRadioStateChange {}
7560#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7561#[repr(transparent)]
7562pub struct MobileBroadbandRadioStateChangeTriggerDetails(::windows::core::IUnknown);
7563impl MobileBroadbandRadioStateChangeTriggerDetails {
7564 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
7565 #[cfg(feature = "Foundation_Collections")]
7566 pub fn RadioStateChanges(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandRadioStateChange>> {
7567 let this = self;
7568 unsafe {
7569 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandRadioStateChange>>();
7570 (::windows::core::Interface::vtable(this).RadioStateChanges)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7571 }
7572 }
7573}
7574impl ::core::cmp::PartialEq for MobileBroadbandRadioStateChangeTriggerDetails {
7575 fn eq(&self, other: &Self) -> bool {
7576 self.0 == other.0
7577 }
7578}
7579impl ::core::cmp::Eq for MobileBroadbandRadioStateChangeTriggerDetails {}
7580impl ::core::fmt::Debug for MobileBroadbandRadioStateChangeTriggerDetails {
7581 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7582 f.debug_tuple("MobileBroadbandRadioStateChangeTriggerDetails").field(&self.0).finish()
7583 }
7584}
7585impl ::windows::core::RuntimeType for MobileBroadbandRadioStateChangeTriggerDetails {
7586 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandRadioStateChangeTriggerDetails;{71301ace-093c-42c6-b0db-ad1f75a65445})");
7587}
7588impl ::core::clone::Clone for MobileBroadbandRadioStateChangeTriggerDetails {
7589 fn clone(&self) -> Self {
7590 Self(self.0.clone())
7591 }
7592}
7593unsafe impl ::windows::core::Interface for MobileBroadbandRadioStateChangeTriggerDetails {
7594 type Vtable = IMobileBroadbandRadioStateChangeTriggerDetails_Vtbl;
7595}
7596unsafe impl ::windows::core::ComInterface for MobileBroadbandRadioStateChangeTriggerDetails {
7597 const IID: ::windows::core::GUID = <IMobileBroadbandRadioStateChangeTriggerDetails as ::windows::core::ComInterface>::IID;
7598}
7599impl ::windows::core::RuntimeName for MobileBroadbandRadioStateChangeTriggerDetails {
7600 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandRadioStateChangeTriggerDetails";
7601}
7602::windows::imp::interface_hierarchy!(MobileBroadbandRadioStateChangeTriggerDetails, ::windows::core::IUnknown, ::windows::core::IInspectable);
7603unsafe impl ::core::marker::Send for MobileBroadbandRadioStateChangeTriggerDetails {}
7604unsafe impl ::core::marker::Sync for MobileBroadbandRadioStateChangeTriggerDetails {}
7605#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7606#[repr(transparent)]
7607pub struct MobileBroadbandSarManager(::windows::core::IUnknown);
7608impl MobileBroadbandSarManager {
7609 pub fn IsBackoffEnabled(&self) -> ::windows::core::Result<bool> {
7610 let this = self;
7611 unsafe {
7612 let mut result__ = ::windows::core::zeroed::<bool>();
7613 (::windows::core::Interface::vtable(this).IsBackoffEnabled)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7614 }
7615 }
7616 pub fn IsWiFiHardwareIntegrated(&self) -> ::windows::core::Result<bool> {
7617 let this = self;
7618 unsafe {
7619 let mut result__ = ::windows::core::zeroed::<bool>();
7620 (::windows::core::Interface::vtable(this).IsWiFiHardwareIntegrated)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7621 }
7622 }
7623 pub fn IsSarControlledByHardware(&self) -> ::windows::core::Result<bool> {
7624 let this = self;
7625 unsafe {
7626 let mut result__ = ::windows::core::zeroed::<bool>();
7627 (::windows::core::Interface::vtable(this).IsSarControlledByHardware)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7628 }
7629 }
7630 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
7631 #[cfg(feature = "Foundation_Collections")]
7632 pub fn Antennas(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandAntennaSar>> {
7633 let this = self;
7634 unsafe {
7635 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandAntennaSar>>();
7636 (::windows::core::Interface::vtable(this).Antennas)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7637 }
7638 }
7639 #[doc = "*Required features: `\"Foundation\"`*"]
7640 #[cfg(feature = "Foundation")]
7641 pub fn HysteresisTimerPeriod(&self) -> ::windows::core::Result<super::super::Foundation::TimeSpan> {
7642 let this = self;
7643 unsafe {
7644 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::TimeSpan>();
7645 (::windows::core::Interface::vtable(this).HysteresisTimerPeriod)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7646 }
7647 }
7648 #[doc = "*Required features: `\"Foundation\"`*"]
7649 #[cfg(feature = "Foundation")]
7650 pub fn TransmissionStateChanged(&self, handler: &super::super::Foundation::TypedEventHandler<MobileBroadbandSarManager, MobileBroadbandTransmissionStateChangedEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
7651 let this = self;
7652 unsafe {
7653 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
7654 (::windows::core::Interface::vtable(this).TransmissionStateChanged)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
7655 }
7656 }
7657 #[doc = "*Required features: `\"Foundation\"`*"]
7658 #[cfg(feature = "Foundation")]
7659 pub fn RemoveTransmissionStateChanged(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
7660 let this = self;
7661 unsafe { (::windows::core::Interface::vtable(this).RemoveTransmissionStateChanged)(::windows::core::Interface::as_raw(this), token).ok() }
7662 }
7663 #[doc = "*Required features: `\"Foundation\"`*"]
7664 #[cfg(feature = "Foundation")]
7665 pub fn EnableBackoffAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
7666 let this = self;
7667 unsafe {
7668 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
7669 (::windows::core::Interface::vtable(this).EnableBackoffAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7670 }
7671 }
7672 #[doc = "*Required features: `\"Foundation\"`*"]
7673 #[cfg(feature = "Foundation")]
7674 pub fn DisableBackoffAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
7675 let this = self;
7676 unsafe {
7677 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
7678 (::windows::core::Interface::vtable(this).DisableBackoffAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7679 }
7680 }
7681 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
7682 #[cfg(feature = "Foundation_Collections")]
7683 pub fn SetConfigurationAsync<P0>(&self, antennas: P0) -> ::windows::core::Result<super::super::Foundation::IAsyncAction>
7684 where
7685 P0: ::windows::core::TryIntoParam<super::super::Foundation::Collections::IIterable<MobileBroadbandAntennaSar>>,
7686 {
7687 let this = self;
7688 unsafe {
7689 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
7690 (::windows::core::Interface::vtable(this).SetConfigurationAsync)(::windows::core::Interface::as_raw(this), antennas.try_into_param()?.abi(), &mut result__).from_abi(result__)
7691 }
7692 }
7693 #[doc = "*Required features: `\"Foundation\"`*"]
7694 #[cfg(feature = "Foundation")]
7695 pub fn RevertSarToHardwareControlAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
7696 let this = self;
7697 unsafe {
7698 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
7699 (::windows::core::Interface::vtable(this).RevertSarToHardwareControlAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7700 }
7701 }
7702 #[doc = "*Required features: `\"Foundation\"`*"]
7703 #[cfg(feature = "Foundation")]
7704 pub fn SetTransmissionStateChangedHysteresisAsync(&self, timerperiod: super::super::Foundation::TimeSpan) -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
7705 let this = self;
7706 unsafe {
7707 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
7708 (::windows::core::Interface::vtable(this).SetTransmissionStateChangedHysteresisAsync)(::windows::core::Interface::as_raw(this), timerperiod, &mut result__).from_abi(result__)
7709 }
7710 }
7711 #[doc = "*Required features: `\"Foundation\"`*"]
7712 #[cfg(feature = "Foundation")]
7713 pub fn GetIsTransmittingAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<bool>> {
7714 let this = self;
7715 unsafe {
7716 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<bool>>();
7717 (::windows::core::Interface::vtable(this).GetIsTransmittingAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7718 }
7719 }
7720 pub fn StartTransmissionStateMonitoring(&self) -> ::windows::core::Result<()> {
7721 let this = self;
7722 unsafe { (::windows::core::Interface::vtable(this).StartTransmissionStateMonitoring)(::windows::core::Interface::as_raw(this)).ok() }
7723 }
7724 pub fn StopTransmissionStateMonitoring(&self) -> ::windows::core::Result<()> {
7725 let this = self;
7726 unsafe { (::windows::core::Interface::vtable(this).StopTransmissionStateMonitoring)(::windows::core::Interface::as_raw(this)).ok() }
7727 }
7728}
7729impl ::core::cmp::PartialEq for MobileBroadbandSarManager {
7730 fn eq(&self, other: &Self) -> bool {
7731 self.0 == other.0
7732 }
7733}
7734impl ::core::cmp::Eq for MobileBroadbandSarManager {}
7735impl ::core::fmt::Debug for MobileBroadbandSarManager {
7736 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7737 f.debug_tuple("MobileBroadbandSarManager").field(&self.0).finish()
7738 }
7739}
7740impl ::windows::core::RuntimeType for MobileBroadbandSarManager {
7741 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandSarManager;{e5b26833-967e-40c9-a485-19c0dd209e22})");
7742}
7743impl ::core::clone::Clone for MobileBroadbandSarManager {
7744 fn clone(&self) -> Self {
7745 Self(self.0.clone())
7746 }
7747}
7748unsafe impl ::windows::core::Interface for MobileBroadbandSarManager {
7749 type Vtable = IMobileBroadbandSarManager_Vtbl;
7750}
7751unsafe impl ::windows::core::ComInterface for MobileBroadbandSarManager {
7752 const IID: ::windows::core::GUID = <IMobileBroadbandSarManager as ::windows::core::ComInterface>::IID;
7753}
7754impl ::windows::core::RuntimeName for MobileBroadbandSarManager {
7755 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandSarManager";
7756}
7757::windows::imp::interface_hierarchy!(MobileBroadbandSarManager, ::windows::core::IUnknown, ::windows::core::IInspectable);
7758unsafe impl ::core::marker::Send for MobileBroadbandSarManager {}
7759unsafe impl ::core::marker::Sync for MobileBroadbandSarManager {}
7760#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7761#[repr(transparent)]
7762pub struct MobileBroadbandSlotInfo(::windows::core::IUnknown);
7763impl MobileBroadbandSlotInfo {
7764 pub fn Index(&self) -> ::windows::core::Result<i32> {
7765 let this = self;
7766 unsafe {
7767 let mut result__ = ::windows::core::zeroed::<i32>();
7768 (::windows::core::Interface::vtable(this).Index)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7769 }
7770 }
7771 pub fn State(&self) -> ::windows::core::Result<MobileBroadbandSlotState> {
7772 let this = self;
7773 unsafe {
7774 let mut result__ = ::windows::core::zeroed::<MobileBroadbandSlotState>();
7775 (::windows::core::Interface::vtable(this).State)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7776 }
7777 }
7778 pub fn IccId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
7779 let this = &::windows::core::ComInterface::cast::<IMobileBroadbandSlotInfo2>(self)?;
7780 unsafe {
7781 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
7782 (::windows::core::Interface::vtable(this).IccId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7783 }
7784 }
7785}
7786impl ::core::cmp::PartialEq for MobileBroadbandSlotInfo {
7787 fn eq(&self, other: &Self) -> bool {
7788 self.0 == other.0
7789 }
7790}
7791impl ::core::cmp::Eq for MobileBroadbandSlotInfo {}
7792impl ::core::fmt::Debug for MobileBroadbandSlotInfo {
7793 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7794 f.debug_tuple("MobileBroadbandSlotInfo").field(&self.0).finish()
7795 }
7796}
7797impl ::windows::core::RuntimeType for MobileBroadbandSlotInfo {
7798 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandSlotInfo;{bd350b32-882e-542a-b17d-0bb1b49bae9e})");
7799}
7800impl ::core::clone::Clone for MobileBroadbandSlotInfo {
7801 fn clone(&self) -> Self {
7802 Self(self.0.clone())
7803 }
7804}
7805unsafe impl ::windows::core::Interface for MobileBroadbandSlotInfo {
7806 type Vtable = IMobileBroadbandSlotInfo_Vtbl;
7807}
7808unsafe impl ::windows::core::ComInterface for MobileBroadbandSlotInfo {
7809 const IID: ::windows::core::GUID = <IMobileBroadbandSlotInfo as ::windows::core::ComInterface>::IID;
7810}
7811impl ::windows::core::RuntimeName for MobileBroadbandSlotInfo {
7812 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandSlotInfo";
7813}
7814::windows::imp::interface_hierarchy!(MobileBroadbandSlotInfo, ::windows::core::IUnknown, ::windows::core::IInspectable);
7815unsafe impl ::core::marker::Send for MobileBroadbandSlotInfo {}
7816unsafe impl ::core::marker::Sync for MobileBroadbandSlotInfo {}
7817#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7818#[repr(transparent)]
7819pub struct MobileBroadbandSlotInfoChangedEventArgs(::windows::core::IUnknown);
7820impl MobileBroadbandSlotInfoChangedEventArgs {
7821 pub fn SlotInfo(&self) -> ::windows::core::Result<MobileBroadbandSlotInfo> {
7822 let this = self;
7823 unsafe {
7824 let mut result__ = ::windows::core::zeroed::<MobileBroadbandSlotInfo>();
7825 (::windows::core::Interface::vtable(this).SlotInfo)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7826 }
7827 }
7828}
7829impl ::core::cmp::PartialEq for MobileBroadbandSlotInfoChangedEventArgs {
7830 fn eq(&self, other: &Self) -> bool {
7831 self.0 == other.0
7832 }
7833}
7834impl ::core::cmp::Eq for MobileBroadbandSlotInfoChangedEventArgs {}
7835impl ::core::fmt::Debug for MobileBroadbandSlotInfoChangedEventArgs {
7836 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7837 f.debug_tuple("MobileBroadbandSlotInfoChangedEventArgs").field(&self.0).finish()
7838 }
7839}
7840impl ::windows::core::RuntimeType for MobileBroadbandSlotInfoChangedEventArgs {
7841 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandSlotInfoChangedEventArgs;{3158839f-950c-54ce-a48d-ba4529b48f0f})");
7842}
7843impl ::core::clone::Clone for MobileBroadbandSlotInfoChangedEventArgs {
7844 fn clone(&self) -> Self {
7845 Self(self.0.clone())
7846 }
7847}
7848unsafe impl ::windows::core::Interface for MobileBroadbandSlotInfoChangedEventArgs {
7849 type Vtable = IMobileBroadbandSlotInfoChangedEventArgs_Vtbl;
7850}
7851unsafe impl ::windows::core::ComInterface for MobileBroadbandSlotInfoChangedEventArgs {
7852 const IID: ::windows::core::GUID = <IMobileBroadbandSlotInfoChangedEventArgs as ::windows::core::ComInterface>::IID;
7853}
7854impl ::windows::core::RuntimeName for MobileBroadbandSlotInfoChangedEventArgs {
7855 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandSlotInfoChangedEventArgs";
7856}
7857::windows::imp::interface_hierarchy!(MobileBroadbandSlotInfoChangedEventArgs, ::windows::core::IUnknown, ::windows::core::IInspectable);
7858unsafe impl ::core::marker::Send for MobileBroadbandSlotInfoChangedEventArgs {}
7859unsafe impl ::core::marker::Sync for MobileBroadbandSlotInfoChangedEventArgs {}
7860#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7861#[repr(transparent)]
7862pub struct MobileBroadbandSlotManager(::windows::core::IUnknown);
7863impl MobileBroadbandSlotManager {
7864 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
7865 #[cfg(feature = "Foundation_Collections")]
7866 pub fn SlotInfos(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandSlotInfo>> {
7867 let this = self;
7868 unsafe {
7869 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandSlotInfo>>();
7870 (::windows::core::Interface::vtable(this).SlotInfos)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7871 }
7872 }
7873 pub fn CurrentSlotIndex(&self) -> ::windows::core::Result<i32> {
7874 let this = self;
7875 unsafe {
7876 let mut result__ = ::windows::core::zeroed::<i32>();
7877 (::windows::core::Interface::vtable(this).CurrentSlotIndex)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7878 }
7879 }
7880 pub fn SetCurrentSlot(&self, slotindex: i32) -> ::windows::core::Result<MobileBroadbandModemStatus> {
7881 let this = self;
7882 unsafe {
7883 let mut result__ = ::windows::core::zeroed::<MobileBroadbandModemStatus>();
7884 (::windows::core::Interface::vtable(this).SetCurrentSlot)(::windows::core::Interface::as_raw(this), slotindex, &mut result__).from_abi(result__)
7885 }
7886 }
7887 #[doc = "*Required features: `\"Foundation\"`*"]
7888 #[cfg(feature = "Foundation")]
7889 pub fn SetCurrentSlotAsync(&self, slotindex: i32) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandModemStatus>> {
7890 let this = self;
7891 unsafe {
7892 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandModemStatus>>();
7893 (::windows::core::Interface::vtable(this).SetCurrentSlotAsync)(::windows::core::Interface::as_raw(this), slotindex, &mut result__).from_abi(result__)
7894 }
7895 }
7896 #[doc = "*Required features: `\"Foundation\"`*"]
7897 #[cfg(feature = "Foundation")]
7898 pub fn SlotInfoChanged(&self, handler: &super::super::Foundation::TypedEventHandler<MobileBroadbandSlotManager, MobileBroadbandSlotInfoChangedEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
7899 let this = self;
7900 unsafe {
7901 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
7902 (::windows::core::Interface::vtable(this).SlotInfoChanged)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
7903 }
7904 }
7905 #[doc = "*Required features: `\"Foundation\"`*"]
7906 #[cfg(feature = "Foundation")]
7907 pub fn RemoveSlotInfoChanged(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
7908 let this = self;
7909 unsafe { (::windows::core::Interface::vtable(this).RemoveSlotInfoChanged)(::windows::core::Interface::as_raw(this), token).ok() }
7910 }
7911 #[doc = "*Required features: `\"Foundation\"`*"]
7912 #[cfg(feature = "Foundation")]
7913 pub fn CurrentSlotIndexChanged(&self, handler: &super::super::Foundation::TypedEventHandler<MobileBroadbandSlotManager, MobileBroadbandCurrentSlotIndexChangedEventArgs>) -> ::windows::core::Result<super::super::Foundation::EventRegistrationToken> {
7914 let this = self;
7915 unsafe {
7916 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::EventRegistrationToken>();
7917 (::windows::core::Interface::vtable(this).CurrentSlotIndexChanged)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(handler), &mut result__).from_abi(result__)
7918 }
7919 }
7920 #[doc = "*Required features: `\"Foundation\"`*"]
7921 #[cfg(feature = "Foundation")]
7922 pub fn RemoveCurrentSlotIndexChanged(&self, token: super::super::Foundation::EventRegistrationToken) -> ::windows::core::Result<()> {
7923 let this = self;
7924 unsafe { (::windows::core::Interface::vtable(this).RemoveCurrentSlotIndexChanged)(::windows::core::Interface::as_raw(this), token).ok() }
7925 }
7926}
7927impl ::core::cmp::PartialEq for MobileBroadbandSlotManager {
7928 fn eq(&self, other: &Self) -> bool {
7929 self.0 == other.0
7930 }
7931}
7932impl ::core::cmp::Eq for MobileBroadbandSlotManager {}
7933impl ::core::fmt::Debug for MobileBroadbandSlotManager {
7934 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7935 f.debug_tuple("MobileBroadbandSlotManager").field(&self.0).finish()
7936 }
7937}
7938impl ::windows::core::RuntimeType for MobileBroadbandSlotManager {
7939 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandSlotManager;{eba07cd6-2019-5f81-a294-cc364a11d0b2})");
7940}
7941impl ::core::clone::Clone for MobileBroadbandSlotManager {
7942 fn clone(&self) -> Self {
7943 Self(self.0.clone())
7944 }
7945}
7946unsafe impl ::windows::core::Interface for MobileBroadbandSlotManager {
7947 type Vtable = IMobileBroadbandSlotManager_Vtbl;
7948}
7949unsafe impl ::windows::core::ComInterface for MobileBroadbandSlotManager {
7950 const IID: ::windows::core::GUID = <IMobileBroadbandSlotManager as ::windows::core::ComInterface>::IID;
7951}
7952impl ::windows::core::RuntimeName for MobileBroadbandSlotManager {
7953 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandSlotManager";
7954}
7955::windows::imp::interface_hierarchy!(MobileBroadbandSlotManager, ::windows::core::IUnknown, ::windows::core::IInspectable);
7956unsafe impl ::core::marker::Send for MobileBroadbandSlotManager {}
7957unsafe impl ::core::marker::Sync for MobileBroadbandSlotManager {}
7958#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
7959#[repr(transparent)]
7960pub struct MobileBroadbandTransmissionStateChangedEventArgs(::windows::core::IUnknown);
7961impl MobileBroadbandTransmissionStateChangedEventArgs {
7962 pub fn IsTransmitting(&self) -> ::windows::core::Result<bool> {
7963 let this = self;
7964 unsafe {
7965 let mut result__ = ::windows::core::zeroed::<bool>();
7966 (::windows::core::Interface::vtable(this).IsTransmitting)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
7967 }
7968 }
7969}
7970impl ::core::cmp::PartialEq for MobileBroadbandTransmissionStateChangedEventArgs {
7971 fn eq(&self, other: &Self) -> bool {
7972 self.0 == other.0
7973 }
7974}
7975impl ::core::cmp::Eq for MobileBroadbandTransmissionStateChangedEventArgs {}
7976impl ::core::fmt::Debug for MobileBroadbandTransmissionStateChangedEventArgs {
7977 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
7978 f.debug_tuple("MobileBroadbandTransmissionStateChangedEventArgs").field(&self.0).finish()
7979 }
7980}
7981impl ::windows::core::RuntimeType for MobileBroadbandTransmissionStateChangedEventArgs {
7982 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandTransmissionStateChangedEventArgs;{612e3875-040a-4f99-a4f9-61d7c32da129})");
7983}
7984impl ::core::clone::Clone for MobileBroadbandTransmissionStateChangedEventArgs {
7985 fn clone(&self) -> Self {
7986 Self(self.0.clone())
7987 }
7988}
7989unsafe impl ::windows::core::Interface for MobileBroadbandTransmissionStateChangedEventArgs {
7990 type Vtable = IMobileBroadbandTransmissionStateChangedEventArgs_Vtbl;
7991}
7992unsafe impl ::windows::core::ComInterface for MobileBroadbandTransmissionStateChangedEventArgs {
7993 const IID: ::windows::core::GUID = <IMobileBroadbandTransmissionStateChangedEventArgs as ::windows::core::ComInterface>::IID;
7994}
7995impl ::windows::core::RuntimeName for MobileBroadbandTransmissionStateChangedEventArgs {
7996 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandTransmissionStateChangedEventArgs";
7997}
7998::windows::imp::interface_hierarchy!(MobileBroadbandTransmissionStateChangedEventArgs, ::windows::core::IUnknown, ::windows::core::IInspectable);
7999unsafe impl ::core::marker::Send for MobileBroadbandTransmissionStateChangedEventArgs {}
8000unsafe impl ::core::marker::Sync for MobileBroadbandTransmissionStateChangedEventArgs {}
8001#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8002#[repr(transparent)]
8003pub struct MobileBroadbandUicc(::windows::core::IUnknown);
8004impl MobileBroadbandUicc {
8005 pub fn SimIccId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8006 let this = self;
8007 unsafe {
8008 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8009 (::windows::core::Interface::vtable(this).SimIccId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8010 }
8011 }
8012 #[doc = "*Required features: `\"Foundation\"`*"]
8013 #[cfg(feature = "Foundation")]
8014 pub fn GetUiccAppsAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandUiccAppsResult>> {
8015 let this = self;
8016 unsafe {
8017 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandUiccAppsResult>>();
8018 (::windows::core::Interface::vtable(this).GetUiccAppsAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8019 }
8020 }
8021}
8022impl ::core::cmp::PartialEq for MobileBroadbandUicc {
8023 fn eq(&self, other: &Self) -> bool {
8024 self.0 == other.0
8025 }
8026}
8027impl ::core::cmp::Eq for MobileBroadbandUicc {}
8028impl ::core::fmt::Debug for MobileBroadbandUicc {
8029 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8030 f.debug_tuple("MobileBroadbandUicc").field(&self.0).finish()
8031 }
8032}
8033impl ::windows::core::RuntimeType for MobileBroadbandUicc {
8034 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandUicc;{e634f691-525a-4ce2-8fce-aa4162579154})");
8035}
8036impl ::core::clone::Clone for MobileBroadbandUicc {
8037 fn clone(&self) -> Self {
8038 Self(self.0.clone())
8039 }
8040}
8041unsafe impl ::windows::core::Interface for MobileBroadbandUicc {
8042 type Vtable = IMobileBroadbandUicc_Vtbl;
8043}
8044unsafe impl ::windows::core::ComInterface for MobileBroadbandUicc {
8045 const IID: ::windows::core::GUID = <IMobileBroadbandUicc as ::windows::core::ComInterface>::IID;
8046}
8047impl ::windows::core::RuntimeName for MobileBroadbandUicc {
8048 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandUicc";
8049}
8050::windows::imp::interface_hierarchy!(MobileBroadbandUicc, ::windows::core::IUnknown, ::windows::core::IInspectable);
8051unsafe impl ::core::marker::Send for MobileBroadbandUicc {}
8052unsafe impl ::core::marker::Sync for MobileBroadbandUicc {}
8053#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8054#[repr(transparent)]
8055pub struct MobileBroadbandUiccApp(::windows::core::IUnknown);
8056impl MobileBroadbandUiccApp {
8057 #[doc = "*Required features: `\"Storage_Streams\"`*"]
8058 #[cfg(feature = "Storage_Streams")]
8059 pub fn Id(&self) -> ::windows::core::Result<super::super::Storage::Streams::IBuffer> {
8060 let this = self;
8061 unsafe {
8062 let mut result__ = ::windows::core::zeroed::<super::super::Storage::Streams::IBuffer>();
8063 (::windows::core::Interface::vtable(this).Id)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8064 }
8065 }
8066 pub fn Kind(&self) -> ::windows::core::Result<UiccAppKind> {
8067 let this = self;
8068 unsafe {
8069 let mut result__ = ::windows::core::zeroed::<UiccAppKind>();
8070 (::windows::core::Interface::vtable(this).Kind)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8071 }
8072 }
8073 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
8074 #[cfg(feature = "Foundation_Collections")]
8075 pub fn GetRecordDetailsAsync<P0>(&self, uiccfilepath: P0) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandUiccAppRecordDetailsResult>>
8076 where
8077 P0: ::windows::core::TryIntoParam<super::super::Foundation::Collections::IIterable<u32>>,
8078 {
8079 let this = self;
8080 unsafe {
8081 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandUiccAppRecordDetailsResult>>();
8082 (::windows::core::Interface::vtable(this).GetRecordDetailsAsync)(::windows::core::Interface::as_raw(this), uiccfilepath.try_into_param()?.abi(), &mut result__).from_abi(result__)
8083 }
8084 }
8085 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
8086 #[cfg(feature = "Foundation_Collections")]
8087 pub fn ReadRecordAsync<P0>(&self, uiccfilepath: P0, recordindex: i32) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<MobileBroadbandUiccAppReadRecordResult>>
8088 where
8089 P0: ::windows::core::TryIntoParam<super::super::Foundation::Collections::IIterable<u32>>,
8090 {
8091 let this = self;
8092 unsafe {
8093 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<MobileBroadbandUiccAppReadRecordResult>>();
8094 (::windows::core::Interface::vtable(this).ReadRecordAsync)(::windows::core::Interface::as_raw(this), uiccfilepath.try_into_param()?.abi(), recordindex, &mut result__).from_abi(result__)
8095 }
8096 }
8097}
8098impl ::core::cmp::PartialEq for MobileBroadbandUiccApp {
8099 fn eq(&self, other: &Self) -> bool {
8100 self.0 == other.0
8101 }
8102}
8103impl ::core::cmp::Eq for MobileBroadbandUiccApp {}
8104impl ::core::fmt::Debug for MobileBroadbandUiccApp {
8105 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8106 f.debug_tuple("MobileBroadbandUiccApp").field(&self.0).finish()
8107 }
8108}
8109impl ::windows::core::RuntimeType for MobileBroadbandUiccApp {
8110 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandUiccApp;{4d170556-98a1-43dd-b2ec-50c90cf248df})");
8111}
8112impl ::core::clone::Clone for MobileBroadbandUiccApp {
8113 fn clone(&self) -> Self {
8114 Self(self.0.clone())
8115 }
8116}
8117unsafe impl ::windows::core::Interface for MobileBroadbandUiccApp {
8118 type Vtable = IMobileBroadbandUiccApp_Vtbl;
8119}
8120unsafe impl ::windows::core::ComInterface for MobileBroadbandUiccApp {
8121 const IID: ::windows::core::GUID = <IMobileBroadbandUiccApp as ::windows::core::ComInterface>::IID;
8122}
8123impl ::windows::core::RuntimeName for MobileBroadbandUiccApp {
8124 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandUiccApp";
8125}
8126::windows::imp::interface_hierarchy!(MobileBroadbandUiccApp, ::windows::core::IUnknown, ::windows::core::IInspectable);
8127unsafe impl ::core::marker::Send for MobileBroadbandUiccApp {}
8128unsafe impl ::core::marker::Sync for MobileBroadbandUiccApp {}
8129#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8130#[repr(transparent)]
8131pub struct MobileBroadbandUiccAppReadRecordResult(::windows::core::IUnknown);
8132impl MobileBroadbandUiccAppReadRecordResult {
8133 pub fn Status(&self) -> ::windows::core::Result<MobileBroadbandUiccAppOperationStatus> {
8134 let this = self;
8135 unsafe {
8136 let mut result__ = ::windows::core::zeroed::<MobileBroadbandUiccAppOperationStatus>();
8137 (::windows::core::Interface::vtable(this).Status)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8138 }
8139 }
8140 #[doc = "*Required features: `\"Storage_Streams\"`*"]
8141 #[cfg(feature = "Storage_Streams")]
8142 pub fn Data(&self) -> ::windows::core::Result<super::super::Storage::Streams::IBuffer> {
8143 let this = self;
8144 unsafe {
8145 let mut result__ = ::windows::core::zeroed::<super::super::Storage::Streams::IBuffer>();
8146 (::windows::core::Interface::vtable(this).Data)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8147 }
8148 }
8149}
8150impl ::core::cmp::PartialEq for MobileBroadbandUiccAppReadRecordResult {
8151 fn eq(&self, other: &Self) -> bool {
8152 self.0 == other.0
8153 }
8154}
8155impl ::core::cmp::Eq for MobileBroadbandUiccAppReadRecordResult {}
8156impl ::core::fmt::Debug for MobileBroadbandUiccAppReadRecordResult {
8157 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8158 f.debug_tuple("MobileBroadbandUiccAppReadRecordResult").field(&self.0).finish()
8159 }
8160}
8161impl ::windows::core::RuntimeType for MobileBroadbandUiccAppReadRecordResult {
8162 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandUiccAppReadRecordResult;{64c95285-358e-47c5-8249-695f383b2bdb})");
8163}
8164impl ::core::clone::Clone for MobileBroadbandUiccAppReadRecordResult {
8165 fn clone(&self) -> Self {
8166 Self(self.0.clone())
8167 }
8168}
8169unsafe impl ::windows::core::Interface for MobileBroadbandUiccAppReadRecordResult {
8170 type Vtable = IMobileBroadbandUiccAppReadRecordResult_Vtbl;
8171}
8172unsafe impl ::windows::core::ComInterface for MobileBroadbandUiccAppReadRecordResult {
8173 const IID: ::windows::core::GUID = <IMobileBroadbandUiccAppReadRecordResult as ::windows::core::ComInterface>::IID;
8174}
8175impl ::windows::core::RuntimeName for MobileBroadbandUiccAppReadRecordResult {
8176 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandUiccAppReadRecordResult";
8177}
8178::windows::imp::interface_hierarchy!(MobileBroadbandUiccAppReadRecordResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
8179unsafe impl ::core::marker::Send for MobileBroadbandUiccAppReadRecordResult {}
8180unsafe impl ::core::marker::Sync for MobileBroadbandUiccAppReadRecordResult {}
8181#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8182#[repr(transparent)]
8183pub struct MobileBroadbandUiccAppRecordDetailsResult(::windows::core::IUnknown);
8184impl MobileBroadbandUiccAppRecordDetailsResult {
8185 pub fn Status(&self) -> ::windows::core::Result<MobileBroadbandUiccAppOperationStatus> {
8186 let this = self;
8187 unsafe {
8188 let mut result__ = ::windows::core::zeroed::<MobileBroadbandUiccAppOperationStatus>();
8189 (::windows::core::Interface::vtable(this).Status)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8190 }
8191 }
8192 pub fn Kind(&self) -> ::windows::core::Result<UiccAppRecordKind> {
8193 let this = self;
8194 unsafe {
8195 let mut result__ = ::windows::core::zeroed::<UiccAppRecordKind>();
8196 (::windows::core::Interface::vtable(this).Kind)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8197 }
8198 }
8199 pub fn RecordCount(&self) -> ::windows::core::Result<i32> {
8200 let this = self;
8201 unsafe {
8202 let mut result__ = ::windows::core::zeroed::<i32>();
8203 (::windows::core::Interface::vtable(this).RecordCount)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8204 }
8205 }
8206 pub fn RecordSize(&self) -> ::windows::core::Result<i32> {
8207 let this = self;
8208 unsafe {
8209 let mut result__ = ::windows::core::zeroed::<i32>();
8210 (::windows::core::Interface::vtable(this).RecordSize)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8211 }
8212 }
8213 pub fn ReadAccessCondition(&self) -> ::windows::core::Result<UiccAccessCondition> {
8214 let this = self;
8215 unsafe {
8216 let mut result__ = ::windows::core::zeroed::<UiccAccessCondition>();
8217 (::windows::core::Interface::vtable(this).ReadAccessCondition)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8218 }
8219 }
8220 pub fn WriteAccessCondition(&self) -> ::windows::core::Result<UiccAccessCondition> {
8221 let this = self;
8222 unsafe {
8223 let mut result__ = ::windows::core::zeroed::<UiccAccessCondition>();
8224 (::windows::core::Interface::vtable(this).WriteAccessCondition)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8225 }
8226 }
8227}
8228impl ::core::cmp::PartialEq for MobileBroadbandUiccAppRecordDetailsResult {
8229 fn eq(&self, other: &Self) -> bool {
8230 self.0 == other.0
8231 }
8232}
8233impl ::core::cmp::Eq for MobileBroadbandUiccAppRecordDetailsResult {}
8234impl ::core::fmt::Debug for MobileBroadbandUiccAppRecordDetailsResult {
8235 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8236 f.debug_tuple("MobileBroadbandUiccAppRecordDetailsResult").field(&self.0).finish()
8237 }
8238}
8239impl ::windows::core::RuntimeType for MobileBroadbandUiccAppRecordDetailsResult {
8240 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandUiccAppRecordDetailsResult;{d919682f-be14-4934-981d-2f57b9ed83e6})");
8241}
8242impl ::core::clone::Clone for MobileBroadbandUiccAppRecordDetailsResult {
8243 fn clone(&self) -> Self {
8244 Self(self.0.clone())
8245 }
8246}
8247unsafe impl ::windows::core::Interface for MobileBroadbandUiccAppRecordDetailsResult {
8248 type Vtable = IMobileBroadbandUiccAppRecordDetailsResult_Vtbl;
8249}
8250unsafe impl ::windows::core::ComInterface for MobileBroadbandUiccAppRecordDetailsResult {
8251 const IID: ::windows::core::GUID = <IMobileBroadbandUiccAppRecordDetailsResult as ::windows::core::ComInterface>::IID;
8252}
8253impl ::windows::core::RuntimeName for MobileBroadbandUiccAppRecordDetailsResult {
8254 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandUiccAppRecordDetailsResult";
8255}
8256::windows::imp::interface_hierarchy!(MobileBroadbandUiccAppRecordDetailsResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
8257unsafe impl ::core::marker::Send for MobileBroadbandUiccAppRecordDetailsResult {}
8258unsafe impl ::core::marker::Sync for MobileBroadbandUiccAppRecordDetailsResult {}
8259#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8260#[repr(transparent)]
8261pub struct MobileBroadbandUiccAppsResult(::windows::core::IUnknown);
8262impl MobileBroadbandUiccAppsResult {
8263 pub fn Status(&self) -> ::windows::core::Result<MobileBroadbandUiccAppOperationStatus> {
8264 let this = self;
8265 unsafe {
8266 let mut result__ = ::windows::core::zeroed::<MobileBroadbandUiccAppOperationStatus>();
8267 (::windows::core::Interface::vtable(this).Status)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8268 }
8269 }
8270 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
8271 #[cfg(feature = "Foundation_Collections")]
8272 pub fn UiccApps(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<MobileBroadbandUiccApp>> {
8273 let this = self;
8274 unsafe {
8275 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<MobileBroadbandUiccApp>>();
8276 (::windows::core::Interface::vtable(this).UiccApps)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8277 }
8278 }
8279}
8280impl ::core::cmp::PartialEq for MobileBroadbandUiccAppsResult {
8281 fn eq(&self, other: &Self) -> bool {
8282 self.0 == other.0
8283 }
8284}
8285impl ::core::cmp::Eq for MobileBroadbandUiccAppsResult {}
8286impl ::core::fmt::Debug for MobileBroadbandUiccAppsResult {
8287 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8288 f.debug_tuple("MobileBroadbandUiccAppsResult").field(&self.0).finish()
8289 }
8290}
8291impl ::windows::core::RuntimeType for MobileBroadbandUiccAppsResult {
8292 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.MobileBroadbandUiccAppsResult;{744930eb-8157-4a41-8494-6bf54c9b1d2b})");
8293}
8294impl ::core::clone::Clone for MobileBroadbandUiccAppsResult {
8295 fn clone(&self) -> Self {
8296 Self(self.0.clone())
8297 }
8298}
8299unsafe impl ::windows::core::Interface for MobileBroadbandUiccAppsResult {
8300 type Vtable = IMobileBroadbandUiccAppsResult_Vtbl;
8301}
8302unsafe impl ::windows::core::ComInterface for MobileBroadbandUiccAppsResult {
8303 const IID: ::windows::core::GUID = <IMobileBroadbandUiccAppsResult as ::windows::core::ComInterface>::IID;
8304}
8305impl ::windows::core::RuntimeName for MobileBroadbandUiccAppsResult {
8306 const NAME: &'static str = "Windows.Networking.NetworkOperators.MobileBroadbandUiccAppsResult";
8307}
8308::windows::imp::interface_hierarchy!(MobileBroadbandUiccAppsResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
8309unsafe impl ::core::marker::Send for MobileBroadbandUiccAppsResult {}
8310unsafe impl ::core::marker::Sync for MobileBroadbandUiccAppsResult {}
8311#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8312#[repr(transparent)]
8313pub struct NetworkOperatorDataUsageTriggerDetails(::windows::core::IUnknown);
8314impl NetworkOperatorDataUsageTriggerDetails {
8315 pub fn NotificationKind(&self) -> ::windows::core::Result<NetworkOperatorDataUsageNotificationKind> {
8316 let this = self;
8317 unsafe {
8318 let mut result__ = ::windows::core::zeroed::<NetworkOperatorDataUsageNotificationKind>();
8319 (::windows::core::Interface::vtable(this).NotificationKind)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8320 }
8321 }
8322}
8323impl ::core::cmp::PartialEq for NetworkOperatorDataUsageTriggerDetails {
8324 fn eq(&self, other: &Self) -> bool {
8325 self.0 == other.0
8326 }
8327}
8328impl ::core::cmp::Eq for NetworkOperatorDataUsageTriggerDetails {}
8329impl ::core::fmt::Debug for NetworkOperatorDataUsageTriggerDetails {
8330 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8331 f.debug_tuple("NetworkOperatorDataUsageTriggerDetails").field(&self.0).finish()
8332 }
8333}
8334impl ::windows::core::RuntimeType for NetworkOperatorDataUsageTriggerDetails {
8335 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.NetworkOperatorDataUsageTriggerDetails;{50e3126d-a465-4eeb-9317-28a167630cea})");
8336}
8337impl ::core::clone::Clone for NetworkOperatorDataUsageTriggerDetails {
8338 fn clone(&self) -> Self {
8339 Self(self.0.clone())
8340 }
8341}
8342unsafe impl ::windows::core::Interface for NetworkOperatorDataUsageTriggerDetails {
8343 type Vtable = INetworkOperatorDataUsageTriggerDetails_Vtbl;
8344}
8345unsafe impl ::windows::core::ComInterface for NetworkOperatorDataUsageTriggerDetails {
8346 const IID: ::windows::core::GUID = <INetworkOperatorDataUsageTriggerDetails as ::windows::core::ComInterface>::IID;
8347}
8348impl ::windows::core::RuntimeName for NetworkOperatorDataUsageTriggerDetails {
8349 const NAME: &'static str = "Windows.Networking.NetworkOperators.NetworkOperatorDataUsageTriggerDetails";
8350}
8351::windows::imp::interface_hierarchy!(NetworkOperatorDataUsageTriggerDetails, ::windows::core::IUnknown, ::windows::core::IInspectable);
8352unsafe impl ::core::marker::Send for NetworkOperatorDataUsageTriggerDetails {}
8353unsafe impl ::core::marker::Sync for NetworkOperatorDataUsageTriggerDetails {}
8354#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8355#[repr(transparent)]
8356pub struct NetworkOperatorNotificationEventDetails(::windows::core::IUnknown);
8357impl NetworkOperatorNotificationEventDetails {
8358 pub fn NotificationType(&self) -> ::windows::core::Result<NetworkOperatorEventMessageType> {
8359 let this = self;
8360 unsafe {
8361 let mut result__ = ::windows::core::zeroed::<NetworkOperatorEventMessageType>();
8362 (::windows::core::Interface::vtable(this).NotificationType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8363 }
8364 }
8365 pub fn NetworkAccountId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8366 let this = self;
8367 unsafe {
8368 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8369 (::windows::core::Interface::vtable(this).NetworkAccountId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8370 }
8371 }
8372 pub fn EncodingType(&self) -> ::windows::core::Result<u8> {
8373 let this = self;
8374 unsafe {
8375 let mut result__ = ::windows::core::zeroed::<u8>();
8376 (::windows::core::Interface::vtable(this).EncodingType)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8377 }
8378 }
8379 pub fn Message(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8380 let this = self;
8381 unsafe {
8382 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8383 (::windows::core::Interface::vtable(this).Message)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8384 }
8385 }
8386 pub fn RuleId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8387 let this = self;
8388 unsafe {
8389 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8390 (::windows::core::Interface::vtable(this).RuleId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8391 }
8392 }
8393 #[doc = "*Required features: `\"Devices_Sms\"`*"]
8394 #[cfg(feature = "Devices_Sms")]
8395 pub fn SmsMessage(&self) -> ::windows::core::Result<super::super::Devices::Sms::ISmsMessage> {
8396 let this = self;
8397 unsafe {
8398 let mut result__ = ::windows::core::zeroed::<super::super::Devices::Sms::ISmsMessage>();
8399 (::windows::core::Interface::vtable(this).SmsMessage)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8400 }
8401 }
8402 pub fn AuthorizeTethering(&self, allow: bool, entitlementfailurereason: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
8403 let this = &::windows::core::ComInterface::cast::<INetworkOperatorTetheringEntitlementCheck>(self)?;
8404 unsafe { (::windows::core::Interface::vtable(this).AuthorizeTethering)(::windows::core::Interface::as_raw(this), allow, ::core::mem::transmute_copy(entitlementfailurereason)).ok() }
8405 }
8406}
8407impl ::core::cmp::PartialEq for NetworkOperatorNotificationEventDetails {
8408 fn eq(&self, other: &Self) -> bool {
8409 self.0 == other.0
8410 }
8411}
8412impl ::core::cmp::Eq for NetworkOperatorNotificationEventDetails {}
8413impl ::core::fmt::Debug for NetworkOperatorNotificationEventDetails {
8414 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8415 f.debug_tuple("NetworkOperatorNotificationEventDetails").field(&self.0).finish()
8416 }
8417}
8418impl ::windows::core::RuntimeType for NetworkOperatorNotificationEventDetails {
8419 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.NetworkOperatorNotificationEventDetails;{bc68a9d1-82e1-4488-9f2c-1276c2468fac})");
8420}
8421impl ::core::clone::Clone for NetworkOperatorNotificationEventDetails {
8422 fn clone(&self) -> Self {
8423 Self(self.0.clone())
8424 }
8425}
8426unsafe impl ::windows::core::Interface for NetworkOperatorNotificationEventDetails {
8427 type Vtable = INetworkOperatorNotificationEventDetails_Vtbl;
8428}
8429unsafe impl ::windows::core::ComInterface for NetworkOperatorNotificationEventDetails {
8430 const IID: ::windows::core::GUID = <INetworkOperatorNotificationEventDetails as ::windows::core::ComInterface>::IID;
8431}
8432impl ::windows::core::RuntimeName for NetworkOperatorNotificationEventDetails {
8433 const NAME: &'static str = "Windows.Networking.NetworkOperators.NetworkOperatorNotificationEventDetails";
8434}
8435::windows::imp::interface_hierarchy!(NetworkOperatorNotificationEventDetails, ::windows::core::IUnknown, ::windows::core::IInspectable);
8436unsafe impl ::core::marker::Send for NetworkOperatorNotificationEventDetails {}
8437unsafe impl ::core::marker::Sync for NetworkOperatorNotificationEventDetails {}
8438#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8439#[repr(transparent)]
8440pub struct NetworkOperatorTetheringAccessPointConfiguration(::windows::core::IUnknown);
8441impl NetworkOperatorTetheringAccessPointConfiguration {
8442 pub fn new() -> ::windows::core::Result<Self> {
8443 Self::IActivationFactory(|f| f.ActivateInstance::<Self>())
8444 }
8445 fn IActivationFactory<R, F: FnOnce(&::windows::imp::IGenericFactory) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
8446 static SHARED: ::windows::imp::FactoryCache<NetworkOperatorTetheringAccessPointConfiguration, ::windows::imp::IGenericFactory> = ::windows::imp::FactoryCache::new();
8447 SHARED.call(callback)
8448 }
8449 pub fn Ssid(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8450 let this = self;
8451 unsafe {
8452 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8453 (::windows::core::Interface::vtable(this).Ssid)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8454 }
8455 }
8456 pub fn SetSsid(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
8457 let this = self;
8458 unsafe { (::windows::core::Interface::vtable(this).SetSsid)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
8459 }
8460 pub fn Passphrase(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8461 let this = self;
8462 unsafe {
8463 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8464 (::windows::core::Interface::vtable(this).Passphrase)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8465 }
8466 }
8467 pub fn SetPassphrase(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
8468 let this = self;
8469 unsafe { (::windows::core::Interface::vtable(this).SetPassphrase)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
8470 }
8471 pub fn IsBandSupported(&self, band: TetheringWiFiBand) -> ::windows::core::Result<bool> {
8472 let this = &::windows::core::ComInterface::cast::<INetworkOperatorTetheringAccessPointConfiguration2>(self)?;
8473 unsafe {
8474 let mut result__ = ::windows::core::zeroed::<bool>();
8475 (::windows::core::Interface::vtable(this).IsBandSupported)(::windows::core::Interface::as_raw(this), band, &mut result__).from_abi(result__)
8476 }
8477 }
8478 #[doc = "*Required features: `\"Foundation\"`*"]
8479 #[cfg(feature = "Foundation")]
8480 pub fn IsBandSupportedAsync(&self, band: TetheringWiFiBand) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<bool>> {
8481 let this = &::windows::core::ComInterface::cast::<INetworkOperatorTetheringAccessPointConfiguration2>(self)?;
8482 unsafe {
8483 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<bool>>();
8484 (::windows::core::Interface::vtable(this).IsBandSupportedAsync)(::windows::core::Interface::as_raw(this), band, &mut result__).from_abi(result__)
8485 }
8486 }
8487 pub fn Band(&self) -> ::windows::core::Result<TetheringWiFiBand> {
8488 let this = &::windows::core::ComInterface::cast::<INetworkOperatorTetheringAccessPointConfiguration2>(self)?;
8489 unsafe {
8490 let mut result__ = ::windows::core::zeroed::<TetheringWiFiBand>();
8491 (::windows::core::Interface::vtable(this).Band)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8492 }
8493 }
8494 pub fn SetBand(&self, value: TetheringWiFiBand) -> ::windows::core::Result<()> {
8495 let this = &::windows::core::ComInterface::cast::<INetworkOperatorTetheringAccessPointConfiguration2>(self)?;
8496 unsafe { (::windows::core::Interface::vtable(this).SetBand)(::windows::core::Interface::as_raw(this), value).ok() }
8497 }
8498}
8499impl ::core::cmp::PartialEq for NetworkOperatorTetheringAccessPointConfiguration {
8500 fn eq(&self, other: &Self) -> bool {
8501 self.0 == other.0
8502 }
8503}
8504impl ::core::cmp::Eq for NetworkOperatorTetheringAccessPointConfiguration {}
8505impl ::core::fmt::Debug for NetworkOperatorTetheringAccessPointConfiguration {
8506 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8507 f.debug_tuple("NetworkOperatorTetheringAccessPointConfiguration").field(&self.0).finish()
8508 }
8509}
8510impl ::windows::core::RuntimeType for NetworkOperatorTetheringAccessPointConfiguration {
8511 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.NetworkOperatorTetheringAccessPointConfiguration;{0bcc0284-412e-403d-acc6-b757e34774a4})");
8512}
8513impl ::core::clone::Clone for NetworkOperatorTetheringAccessPointConfiguration {
8514 fn clone(&self) -> Self {
8515 Self(self.0.clone())
8516 }
8517}
8518unsafe impl ::windows::core::Interface for NetworkOperatorTetheringAccessPointConfiguration {
8519 type Vtable = INetworkOperatorTetheringAccessPointConfiguration_Vtbl;
8520}
8521unsafe impl ::windows::core::ComInterface for NetworkOperatorTetheringAccessPointConfiguration {
8522 const IID: ::windows::core::GUID = <INetworkOperatorTetheringAccessPointConfiguration as ::windows::core::ComInterface>::IID;
8523}
8524impl ::windows::core::RuntimeName for NetworkOperatorTetheringAccessPointConfiguration {
8525 const NAME: &'static str = "Windows.Networking.NetworkOperators.NetworkOperatorTetheringAccessPointConfiguration";
8526}
8527::windows::imp::interface_hierarchy!(NetworkOperatorTetheringAccessPointConfiguration, ::windows::core::IUnknown, ::windows::core::IInspectable);
8528unsafe impl ::core::marker::Send for NetworkOperatorTetheringAccessPointConfiguration {}
8529unsafe impl ::core::marker::Sync for NetworkOperatorTetheringAccessPointConfiguration {}
8530#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8531#[repr(transparent)]
8532pub struct NetworkOperatorTetheringClient(::windows::core::IUnknown);
8533impl NetworkOperatorTetheringClient {
8534 pub fn MacAddress(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8535 let this = self;
8536 unsafe {
8537 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8538 (::windows::core::Interface::vtable(this).MacAddress)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8539 }
8540 }
8541 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
8542 #[cfg(feature = "Foundation_Collections")]
8543 pub fn HostNames(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<super::HostName>> {
8544 let this = self;
8545 unsafe {
8546 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<super::HostName>>();
8547 (::windows::core::Interface::vtable(this).HostNames)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8548 }
8549 }
8550}
8551impl ::core::cmp::PartialEq for NetworkOperatorTetheringClient {
8552 fn eq(&self, other: &Self) -> bool {
8553 self.0 == other.0
8554 }
8555}
8556impl ::core::cmp::Eq for NetworkOperatorTetheringClient {}
8557impl ::core::fmt::Debug for NetworkOperatorTetheringClient {
8558 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8559 f.debug_tuple("NetworkOperatorTetheringClient").field(&self.0).finish()
8560 }
8561}
8562impl ::windows::core::RuntimeType for NetworkOperatorTetheringClient {
8563 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.NetworkOperatorTetheringClient;{709d254c-595f-4847-bb30-646935542918})");
8564}
8565impl ::core::clone::Clone for NetworkOperatorTetheringClient {
8566 fn clone(&self) -> Self {
8567 Self(self.0.clone())
8568 }
8569}
8570unsafe impl ::windows::core::Interface for NetworkOperatorTetheringClient {
8571 type Vtable = INetworkOperatorTetheringClient_Vtbl;
8572}
8573unsafe impl ::windows::core::ComInterface for NetworkOperatorTetheringClient {
8574 const IID: ::windows::core::GUID = <INetworkOperatorTetheringClient as ::windows::core::ComInterface>::IID;
8575}
8576impl ::windows::core::RuntimeName for NetworkOperatorTetheringClient {
8577 const NAME: &'static str = "Windows.Networking.NetworkOperators.NetworkOperatorTetheringClient";
8578}
8579::windows::imp::interface_hierarchy!(NetworkOperatorTetheringClient, ::windows::core::IUnknown, ::windows::core::IInspectable);
8580unsafe impl ::core::marker::Send for NetworkOperatorTetheringClient {}
8581unsafe impl ::core::marker::Sync for NetworkOperatorTetheringClient {}
8582#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8583#[repr(transparent)]
8584pub struct NetworkOperatorTetheringManager(::windows::core::IUnknown);
8585impl NetworkOperatorTetheringManager {
8586 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
8587 #[cfg(feature = "Foundation_Collections")]
8588 pub fn GetTetheringClients(&self) -> ::windows::core::Result<super::super::Foundation::Collections::IVectorView<NetworkOperatorTetheringClient>> {
8589 let this = &::windows::core::ComInterface::cast::<INetworkOperatorTetheringClientManager>(self)?;
8590 unsafe {
8591 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::Collections::IVectorView<NetworkOperatorTetheringClient>>();
8592 (::windows::core::Interface::vtable(this).GetTetheringClients)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8593 }
8594 }
8595 pub fn MaxClientCount(&self) -> ::windows::core::Result<u32> {
8596 let this = self;
8597 unsafe {
8598 let mut result__ = ::windows::core::zeroed::<u32>();
8599 (::windows::core::Interface::vtable(this).MaxClientCount)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8600 }
8601 }
8602 pub fn ClientCount(&self) -> ::windows::core::Result<u32> {
8603 let this = self;
8604 unsafe {
8605 let mut result__ = ::windows::core::zeroed::<u32>();
8606 (::windows::core::Interface::vtable(this).ClientCount)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8607 }
8608 }
8609 pub fn TetheringOperationalState(&self) -> ::windows::core::Result<TetheringOperationalState> {
8610 let this = self;
8611 unsafe {
8612 let mut result__ = ::windows::core::zeroed::<TetheringOperationalState>();
8613 (::windows::core::Interface::vtable(this).TetheringOperationalState)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8614 }
8615 }
8616 pub fn GetCurrentAccessPointConfiguration(&self) -> ::windows::core::Result<NetworkOperatorTetheringAccessPointConfiguration> {
8617 let this = self;
8618 unsafe {
8619 let mut result__ = ::windows::core::zeroed::<NetworkOperatorTetheringAccessPointConfiguration>();
8620 (::windows::core::Interface::vtable(this).GetCurrentAccessPointConfiguration)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8621 }
8622 }
8623 #[doc = "*Required features: `\"Foundation\"`*"]
8624 #[cfg(feature = "Foundation")]
8625 pub fn ConfigureAccessPointAsync(&self, configuration: &NetworkOperatorTetheringAccessPointConfiguration) -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
8626 let this = self;
8627 unsafe {
8628 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
8629 (::windows::core::Interface::vtable(this).ConfigureAccessPointAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(configuration), &mut result__).from_abi(result__)
8630 }
8631 }
8632 #[doc = "*Required features: `\"Foundation\"`*"]
8633 #[cfg(feature = "Foundation")]
8634 pub fn StartTetheringAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<NetworkOperatorTetheringOperationResult>> {
8635 let this = self;
8636 unsafe {
8637 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<NetworkOperatorTetheringOperationResult>>();
8638 (::windows::core::Interface::vtable(this).StartTetheringAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8639 }
8640 }
8641 #[doc = "*Required features: `\"Foundation\"`*"]
8642 #[cfg(feature = "Foundation")]
8643 pub fn StopTetheringAsync(&self) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<NetworkOperatorTetheringOperationResult>> {
8644 let this = self;
8645 unsafe {
8646 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<NetworkOperatorTetheringOperationResult>>();
8647 (::windows::core::Interface::vtable(this).StopTetheringAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8648 }
8649 }
8650 pub fn GetTetheringCapability(networkaccountid: &::windows::core::HSTRING) -> ::windows::core::Result<TetheringCapability> {
8651 Self::INetworkOperatorTetheringManagerStatics(|this| unsafe {
8652 let mut result__ = ::windows::core::zeroed::<TetheringCapability>();
8653 (::windows::core::Interface::vtable(this).GetTetheringCapability)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(networkaccountid), &mut result__).from_abi(result__)
8654 })
8655 }
8656 pub fn CreateFromNetworkAccountId(networkaccountid: &::windows::core::HSTRING) -> ::windows::core::Result<NetworkOperatorTetheringManager> {
8657 Self::INetworkOperatorTetheringManagerStatics(|this| unsafe {
8658 let mut result__ = ::windows::core::zeroed::<NetworkOperatorTetheringManager>();
8659 (::windows::core::Interface::vtable(this).CreateFromNetworkAccountId)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(networkaccountid), &mut result__).from_abi(result__)
8660 })
8661 }
8662 #[doc = "*Required features: `\"Networking_Connectivity\"`*"]
8663 #[cfg(feature = "Networking_Connectivity")]
8664 pub fn GetTetheringCapabilityFromConnectionProfile(profile: &super::Connectivity::ConnectionProfile) -> ::windows::core::Result<TetheringCapability> {
8665 Self::INetworkOperatorTetheringManagerStatics2(|this| unsafe {
8666 let mut result__ = ::windows::core::zeroed::<TetheringCapability>();
8667 (::windows::core::Interface::vtable(this).GetTetheringCapabilityFromConnectionProfile)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(profile), &mut result__).from_abi(result__)
8668 })
8669 }
8670 #[doc = "*Required features: `\"Networking_Connectivity\"`*"]
8671 #[cfg(feature = "Networking_Connectivity")]
8672 pub fn CreateFromConnectionProfile(profile: &super::Connectivity::ConnectionProfile) -> ::windows::core::Result<NetworkOperatorTetheringManager> {
8673 Self::INetworkOperatorTetheringManagerStatics2(|this| unsafe {
8674 let mut result__ = ::windows::core::zeroed::<NetworkOperatorTetheringManager>();
8675 (::windows::core::Interface::vtable(this).CreateFromConnectionProfile)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(profile), &mut result__).from_abi(result__)
8676 })
8677 }
8678 #[doc = "*Required features: `\"Networking_Connectivity\"`*"]
8679 #[cfg(feature = "Networking_Connectivity")]
8680 pub fn CreateFromConnectionProfileWithTargetAdapter(profile: &super::Connectivity::ConnectionProfile, adapter: &super::Connectivity::NetworkAdapter) -> ::windows::core::Result<NetworkOperatorTetheringManager> {
8681 Self::INetworkOperatorTetheringManagerStatics3(|this| unsafe {
8682 let mut result__ = ::windows::core::zeroed::<NetworkOperatorTetheringManager>();
8683 (::windows::core::Interface::vtable(this).CreateFromConnectionProfileWithTargetAdapter)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(profile), ::core::mem::transmute_copy(adapter), &mut result__).from_abi(result__)
8684 })
8685 }
8686 pub fn IsNoConnectionsTimeoutEnabled() -> ::windows::core::Result<bool> {
8687 Self::INetworkOperatorTetheringManagerStatics4(|this| unsafe {
8688 let mut result__ = ::windows::core::zeroed::<bool>();
8689 (::windows::core::Interface::vtable(this).IsNoConnectionsTimeoutEnabled)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8690 })
8691 }
8692 pub fn EnableNoConnectionsTimeout() -> ::windows::core::Result<()> {
8693 Self::INetworkOperatorTetheringManagerStatics4(|this| unsafe { (::windows::core::Interface::vtable(this).EnableNoConnectionsTimeout)(::windows::core::Interface::as_raw(this)).ok() })
8694 }
8695 #[doc = "*Required features: `\"Foundation\"`*"]
8696 #[cfg(feature = "Foundation")]
8697 pub fn EnableNoConnectionsTimeoutAsync() -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
8698 Self::INetworkOperatorTetheringManagerStatics4(|this| unsafe {
8699 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
8700 (::windows::core::Interface::vtable(this).EnableNoConnectionsTimeoutAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8701 })
8702 }
8703 pub fn DisableNoConnectionsTimeout() -> ::windows::core::Result<()> {
8704 Self::INetworkOperatorTetheringManagerStatics4(|this| unsafe { (::windows::core::Interface::vtable(this).DisableNoConnectionsTimeout)(::windows::core::Interface::as_raw(this)).ok() })
8705 }
8706 #[doc = "*Required features: `\"Foundation\"`*"]
8707 #[cfg(feature = "Foundation")]
8708 pub fn DisableNoConnectionsTimeoutAsync() -> ::windows::core::Result<super::super::Foundation::IAsyncAction> {
8709 Self::INetworkOperatorTetheringManagerStatics4(|this| unsafe {
8710 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncAction>();
8711 (::windows::core::Interface::vtable(this).DisableNoConnectionsTimeoutAsync)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8712 })
8713 }
8714 #[doc(hidden)]
8715 pub fn INetworkOperatorTetheringManagerStatics<R, F: FnOnce(&INetworkOperatorTetheringManagerStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
8716 static SHARED: ::windows::imp::FactoryCache<NetworkOperatorTetheringManager, INetworkOperatorTetheringManagerStatics> = ::windows::imp::FactoryCache::new();
8717 SHARED.call(callback)
8718 }
8719 #[doc(hidden)]
8720 pub fn INetworkOperatorTetheringManagerStatics2<R, F: FnOnce(&INetworkOperatorTetheringManagerStatics2) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
8721 static SHARED: ::windows::imp::FactoryCache<NetworkOperatorTetheringManager, INetworkOperatorTetheringManagerStatics2> = ::windows::imp::FactoryCache::new();
8722 SHARED.call(callback)
8723 }
8724 #[doc(hidden)]
8725 pub fn INetworkOperatorTetheringManagerStatics3<R, F: FnOnce(&INetworkOperatorTetheringManagerStatics3) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
8726 static SHARED: ::windows::imp::FactoryCache<NetworkOperatorTetheringManager, INetworkOperatorTetheringManagerStatics3> = ::windows::imp::FactoryCache::new();
8727 SHARED.call(callback)
8728 }
8729 #[doc(hidden)]
8730 pub fn INetworkOperatorTetheringManagerStatics4<R, F: FnOnce(&INetworkOperatorTetheringManagerStatics4) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
8731 static SHARED: ::windows::imp::FactoryCache<NetworkOperatorTetheringManager, INetworkOperatorTetheringManagerStatics4> = ::windows::imp::FactoryCache::new();
8732 SHARED.call(callback)
8733 }
8734}
8735impl ::core::cmp::PartialEq for NetworkOperatorTetheringManager {
8736 fn eq(&self, other: &Self) -> bool {
8737 self.0 == other.0
8738 }
8739}
8740impl ::core::cmp::Eq for NetworkOperatorTetheringManager {}
8741impl ::core::fmt::Debug for NetworkOperatorTetheringManager {
8742 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8743 f.debug_tuple("NetworkOperatorTetheringManager").field(&self.0).finish()
8744 }
8745}
8746impl ::windows::core::RuntimeType for NetworkOperatorTetheringManager {
8747 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.NetworkOperatorTetheringManager;{d45a8da0-0e86-4d98-8ba4-dd70d4b764d3})");
8748}
8749impl ::core::clone::Clone for NetworkOperatorTetheringManager {
8750 fn clone(&self) -> Self {
8751 Self(self.0.clone())
8752 }
8753}
8754unsafe impl ::windows::core::Interface for NetworkOperatorTetheringManager {
8755 type Vtable = INetworkOperatorTetheringManager_Vtbl;
8756}
8757unsafe impl ::windows::core::ComInterface for NetworkOperatorTetheringManager {
8758 const IID: ::windows::core::GUID = <INetworkOperatorTetheringManager as ::windows::core::ComInterface>::IID;
8759}
8760impl ::windows::core::RuntimeName for NetworkOperatorTetheringManager {
8761 const NAME: &'static str = "Windows.Networking.NetworkOperators.NetworkOperatorTetheringManager";
8762}
8763::windows::imp::interface_hierarchy!(NetworkOperatorTetheringManager, ::windows::core::IUnknown, ::windows::core::IInspectable);
8764#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8765#[repr(transparent)]
8766pub struct NetworkOperatorTetheringOperationResult(::windows::core::IUnknown);
8767impl NetworkOperatorTetheringOperationResult {
8768 pub fn Status(&self) -> ::windows::core::Result<TetheringOperationStatus> {
8769 let this = self;
8770 unsafe {
8771 let mut result__ = ::windows::core::zeroed::<TetheringOperationStatus>();
8772 (::windows::core::Interface::vtable(this).Status)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8773 }
8774 }
8775 pub fn AdditionalErrorMessage(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8776 let this = self;
8777 unsafe {
8778 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8779 (::windows::core::Interface::vtable(this).AdditionalErrorMessage)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8780 }
8781 }
8782}
8783impl ::core::cmp::PartialEq for NetworkOperatorTetheringOperationResult {
8784 fn eq(&self, other: &Self) -> bool {
8785 self.0 == other.0
8786 }
8787}
8788impl ::core::cmp::Eq for NetworkOperatorTetheringOperationResult {}
8789impl ::core::fmt::Debug for NetworkOperatorTetheringOperationResult {
8790 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8791 f.debug_tuple("NetworkOperatorTetheringOperationResult").field(&self.0).finish()
8792 }
8793}
8794impl ::windows::core::RuntimeType for NetworkOperatorTetheringOperationResult {
8795 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.NetworkOperatorTetheringOperationResult;{ebd203a1-01ba-476d-b4b3-bf3d12c8f80c})");
8796}
8797impl ::core::clone::Clone for NetworkOperatorTetheringOperationResult {
8798 fn clone(&self) -> Self {
8799 Self(self.0.clone())
8800 }
8801}
8802unsafe impl ::windows::core::Interface for NetworkOperatorTetheringOperationResult {
8803 type Vtable = INetworkOperatorTetheringOperationResult_Vtbl;
8804}
8805unsafe impl ::windows::core::ComInterface for NetworkOperatorTetheringOperationResult {
8806 const IID: ::windows::core::GUID = <INetworkOperatorTetheringOperationResult as ::windows::core::ComInterface>::IID;
8807}
8808impl ::windows::core::RuntimeName for NetworkOperatorTetheringOperationResult {
8809 const NAME: &'static str = "Windows.Networking.NetworkOperators.NetworkOperatorTetheringOperationResult";
8810}
8811::windows::imp::interface_hierarchy!(NetworkOperatorTetheringOperationResult, ::windows::core::IUnknown, ::windows::core::IInspectable);
8812#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8813#[repr(transparent)]
8814pub struct ProvisionFromXmlDocumentResults(::windows::core::IUnknown);
8815impl ProvisionFromXmlDocumentResults {
8816 pub fn AllElementsProvisioned(&self) -> ::windows::core::Result<bool> {
8817 let this = self;
8818 unsafe {
8819 let mut result__ = ::windows::core::zeroed::<bool>();
8820 (::windows::core::Interface::vtable(this).AllElementsProvisioned)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8821 }
8822 }
8823 pub fn ProvisionResultsXml(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8824 let this = self;
8825 unsafe {
8826 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8827 (::windows::core::Interface::vtable(this).ProvisionResultsXml)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8828 }
8829 }
8830}
8831impl ::core::cmp::PartialEq for ProvisionFromXmlDocumentResults {
8832 fn eq(&self, other: &Self) -> bool {
8833 self.0 == other.0
8834 }
8835}
8836impl ::core::cmp::Eq for ProvisionFromXmlDocumentResults {}
8837impl ::core::fmt::Debug for ProvisionFromXmlDocumentResults {
8838 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8839 f.debug_tuple("ProvisionFromXmlDocumentResults").field(&self.0).finish()
8840 }
8841}
8842impl ::windows::core::RuntimeType for ProvisionFromXmlDocumentResults {
8843 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ProvisionFromXmlDocumentResults;{217700e0-8203-11df-adb9-f4ce462d9137})");
8844}
8845impl ::core::clone::Clone for ProvisionFromXmlDocumentResults {
8846 fn clone(&self) -> Self {
8847 Self(self.0.clone())
8848 }
8849}
8850unsafe impl ::windows::core::Interface for ProvisionFromXmlDocumentResults {
8851 type Vtable = IProvisionFromXmlDocumentResults_Vtbl;
8852}
8853unsafe impl ::windows::core::ComInterface for ProvisionFromXmlDocumentResults {
8854 const IID: ::windows::core::GUID = <IProvisionFromXmlDocumentResults as ::windows::core::ComInterface>::IID;
8855}
8856impl ::windows::core::RuntimeName for ProvisionFromXmlDocumentResults {
8857 const NAME: &'static str = "Windows.Networking.NetworkOperators.ProvisionFromXmlDocumentResults";
8858}
8859::windows::imp::interface_hierarchy!(ProvisionFromXmlDocumentResults, ::windows::core::IUnknown, ::windows::core::IInspectable);
8860#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8861#[repr(transparent)]
8862pub struct ProvisionedProfile(::windows::core::IUnknown);
8863impl ProvisionedProfile {
8864 #[doc = "*Required features: `\"Networking_Connectivity\"`*"]
8865 #[cfg(feature = "Networking_Connectivity")]
8866 pub fn UpdateCost(&self, value: super::Connectivity::NetworkCostType) -> ::windows::core::Result<()> {
8867 let this = self;
8868 unsafe { (::windows::core::Interface::vtable(this).UpdateCost)(::windows::core::Interface::as_raw(this), value).ok() }
8869 }
8870 #[doc = "*Required features: `\"Foundation\"`*"]
8871 #[cfg(feature = "Foundation")]
8872 pub fn UpdateUsage(&self, value: ProfileUsage) -> ::windows::core::Result<()> {
8873 let this = self;
8874 unsafe { (::windows::core::Interface::vtable(this).UpdateUsage)(::windows::core::Interface::as_raw(this), value).ok() }
8875 }
8876}
8877impl ::core::cmp::PartialEq for ProvisionedProfile {
8878 fn eq(&self, other: &Self) -> bool {
8879 self.0 == other.0
8880 }
8881}
8882impl ::core::cmp::Eq for ProvisionedProfile {}
8883impl ::core::fmt::Debug for ProvisionedProfile {
8884 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8885 f.debug_tuple("ProvisionedProfile").field(&self.0).finish()
8886 }
8887}
8888impl ::windows::core::RuntimeType for ProvisionedProfile {
8889 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ProvisionedProfile;{217700e0-8202-11df-adb9-f4ce462d9137})");
8890}
8891impl ::core::clone::Clone for ProvisionedProfile {
8892 fn clone(&self) -> Self {
8893 Self(self.0.clone())
8894 }
8895}
8896unsafe impl ::windows::core::Interface for ProvisionedProfile {
8897 type Vtable = IProvisionedProfile_Vtbl;
8898}
8899unsafe impl ::windows::core::ComInterface for ProvisionedProfile {
8900 const IID: ::windows::core::GUID = <IProvisionedProfile as ::windows::core::ComInterface>::IID;
8901}
8902impl ::windows::core::RuntimeName for ProvisionedProfile {
8903 const NAME: &'static str = "Windows.Networking.NetworkOperators.ProvisionedProfile";
8904}
8905::windows::imp::interface_hierarchy!(ProvisionedProfile, ::windows::core::IUnknown, ::windows::core::IInspectable);
8906#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8907#[repr(transparent)]
8908pub struct ProvisioningAgent(::windows::core::IUnknown);
8909impl ProvisioningAgent {
8910 pub fn new() -> ::windows::core::Result<Self> {
8911 Self::IActivationFactory(|f| f.ActivateInstance::<Self>())
8912 }
8913 fn IActivationFactory<R, F: FnOnce(&::windows::imp::IGenericFactory) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
8914 static SHARED: ::windows::imp::FactoryCache<ProvisioningAgent, ::windows::imp::IGenericFactory> = ::windows::imp::FactoryCache::new();
8915 SHARED.call(callback)
8916 }
8917 #[doc = "*Required features: `\"Foundation\"`*"]
8918 #[cfg(feature = "Foundation")]
8919 pub fn ProvisionFromXmlDocumentAsync(&self, provisioningxmldocument: &::windows::core::HSTRING) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<ProvisionFromXmlDocumentResults>> {
8920 let this = self;
8921 unsafe {
8922 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<ProvisionFromXmlDocumentResults>>();
8923 (::windows::core::Interface::vtable(this).ProvisionFromXmlDocumentAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(provisioningxmldocument), &mut result__).from_abi(result__)
8924 }
8925 }
8926 pub fn GetProvisionedProfile(&self, mediatype: ProfileMediaType, profilename: &::windows::core::HSTRING) -> ::windows::core::Result<ProvisionedProfile> {
8927 let this = self;
8928 unsafe {
8929 let mut result__ = ::windows::core::zeroed::<ProvisionedProfile>();
8930 (::windows::core::Interface::vtable(this).GetProvisionedProfile)(::windows::core::Interface::as_raw(this), mediatype, ::core::mem::transmute_copy(profilename), &mut result__).from_abi(result__)
8931 }
8932 }
8933 pub fn CreateFromNetworkAccountId(networkaccountid: &::windows::core::HSTRING) -> ::windows::core::Result<ProvisioningAgent> {
8934 Self::IProvisioningAgentStaticMethods(|this| unsafe {
8935 let mut result__ = ::windows::core::zeroed::<ProvisioningAgent>();
8936 (::windows::core::Interface::vtable(this).CreateFromNetworkAccountId)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(networkaccountid), &mut result__).from_abi(result__)
8937 })
8938 }
8939 #[doc(hidden)]
8940 pub fn IProvisioningAgentStaticMethods<R, F: FnOnce(&IProvisioningAgentStaticMethods) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
8941 static SHARED: ::windows::imp::FactoryCache<ProvisioningAgent, IProvisioningAgentStaticMethods> = ::windows::imp::FactoryCache::new();
8942 SHARED.call(callback)
8943 }
8944}
8945impl ::core::cmp::PartialEq for ProvisioningAgent {
8946 fn eq(&self, other: &Self) -> bool {
8947 self.0 == other.0
8948 }
8949}
8950impl ::core::cmp::Eq for ProvisioningAgent {}
8951impl ::core::fmt::Debug for ProvisioningAgent {
8952 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
8953 f.debug_tuple("ProvisioningAgent").field(&self.0).finish()
8954 }
8955}
8956impl ::windows::core::RuntimeType for ProvisioningAgent {
8957 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.ProvisioningAgent;{217700e0-8201-11df-adb9-f4ce462d9137})");
8958}
8959impl ::core::clone::Clone for ProvisioningAgent {
8960 fn clone(&self) -> Self {
8961 Self(self.0.clone())
8962 }
8963}
8964unsafe impl ::windows::core::Interface for ProvisioningAgent {
8965 type Vtable = IProvisioningAgent_Vtbl;
8966}
8967unsafe impl ::windows::core::ComInterface for ProvisioningAgent {
8968 const IID: ::windows::core::GUID = <IProvisioningAgent as ::windows::core::ComInterface>::IID;
8969}
8970impl ::windows::core::RuntimeName for ProvisioningAgent {
8971 const NAME: &'static str = "Windows.Networking.NetworkOperators.ProvisioningAgent";
8972}
8973::windows::imp::interface_hierarchy!(ProvisioningAgent, ::windows::core::IUnknown, ::windows::core::IInspectable);
8974#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
8975#[repr(transparent)]
8976pub struct TetheringEntitlementCheckTriggerDetails(::windows::core::IUnknown);
8977impl TetheringEntitlementCheckTriggerDetails {
8978 pub fn NetworkAccountId(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
8979 let this = self;
8980 unsafe {
8981 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
8982 (::windows::core::Interface::vtable(this).NetworkAccountId)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
8983 }
8984 }
8985 pub fn AllowTethering(&self) -> ::windows::core::Result<()> {
8986 let this = self;
8987 unsafe { (::windows::core::Interface::vtable(this).AllowTethering)(::windows::core::Interface::as_raw(this)).ok() }
8988 }
8989 pub fn DenyTethering(&self, entitlementfailurereason: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
8990 let this = self;
8991 unsafe { (::windows::core::Interface::vtable(this).DenyTethering)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(entitlementfailurereason)).ok() }
8992 }
8993}
8994impl ::core::cmp::PartialEq for TetheringEntitlementCheckTriggerDetails {
8995 fn eq(&self, other: &Self) -> bool {
8996 self.0 == other.0
8997 }
8998}
8999impl ::core::cmp::Eq for TetheringEntitlementCheckTriggerDetails {}
9000impl ::core::fmt::Debug for TetheringEntitlementCheckTriggerDetails {
9001 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9002 f.debug_tuple("TetheringEntitlementCheckTriggerDetails").field(&self.0).finish()
9003 }
9004}
9005impl ::windows::core::RuntimeType for TetheringEntitlementCheckTriggerDetails {
9006 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.TetheringEntitlementCheckTriggerDetails;{03c65e9d-5926-41f3-a94e-b50926fc421b})");
9007}
9008impl ::core::clone::Clone for TetheringEntitlementCheckTriggerDetails {
9009 fn clone(&self) -> Self {
9010 Self(self.0.clone())
9011 }
9012}
9013unsafe impl ::windows::core::Interface for TetheringEntitlementCheckTriggerDetails {
9014 type Vtable = ITetheringEntitlementCheckTriggerDetails_Vtbl;
9015}
9016unsafe impl ::windows::core::ComInterface for TetheringEntitlementCheckTriggerDetails {
9017 const IID: ::windows::core::GUID = <ITetheringEntitlementCheckTriggerDetails as ::windows::core::ComInterface>::IID;
9018}
9019impl ::windows::core::RuntimeName for TetheringEntitlementCheckTriggerDetails {
9020 const NAME: &'static str = "Windows.Networking.NetworkOperators.TetheringEntitlementCheckTriggerDetails";
9021}
9022::windows::imp::interface_hierarchy!(TetheringEntitlementCheckTriggerDetails, ::windows::core::IUnknown, ::windows::core::IInspectable);
9023unsafe impl ::core::marker::Send for TetheringEntitlementCheckTriggerDetails {}
9024unsafe impl ::core::marker::Sync for TetheringEntitlementCheckTriggerDetails {}
9025#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9026#[repr(transparent)]
9027pub struct UssdMessage(::windows::core::IUnknown);
9028impl UssdMessage {
9029 pub fn DataCodingScheme(&self) -> ::windows::core::Result<u8> {
9030 let this = self;
9031 unsafe {
9032 let mut result__ = ::windows::core::zeroed::<u8>();
9033 (::windows::core::Interface::vtable(this).DataCodingScheme)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
9034 }
9035 }
9036 pub fn SetDataCodingScheme(&self, value: u8) -> ::windows::core::Result<()> {
9037 let this = self;
9038 unsafe { (::windows::core::Interface::vtable(this).SetDataCodingScheme)(::windows::core::Interface::as_raw(this), value).ok() }
9039 }
9040 pub fn GetPayload(&self) -> ::windows::core::Result<::windows::core::Array<u8>> {
9041 let this = self;
9042 unsafe {
9043 let mut result__ = ::core::mem::MaybeUninit::zeroed();
9044 (::windows::core::Interface::vtable(this).GetPayload)(::windows::core::Interface::as_raw(this), ::windows::core::Array::<u8>::set_abi_len(::std::mem::transmute(&mut result__)), result__.as_mut_ptr() as *mut _ as _).and_then(|| result__.assume_init())
9045 }
9046 }
9047 pub fn SetPayload(&self, value: &[u8]) -> ::windows::core::Result<()> {
9048 let this = self;
9049 unsafe { (::windows::core::Interface::vtable(this).SetPayload)(::windows::core::Interface::as_raw(this), value.len() as u32, value.as_ptr()).ok() }
9050 }
9051 pub fn PayloadAsText(&self) -> ::windows::core::Result<::windows::core::HSTRING> {
9052 let this = self;
9053 unsafe {
9054 let mut result__ = ::windows::core::zeroed::<::windows::core::HSTRING>();
9055 (::windows::core::Interface::vtable(this).PayloadAsText)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
9056 }
9057 }
9058 pub fn SetPayloadAsText(&self, value: &::windows::core::HSTRING) -> ::windows::core::Result<()> {
9059 let this = self;
9060 unsafe { (::windows::core::Interface::vtable(this).SetPayloadAsText)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
9061 }
9062 pub fn CreateMessage(messagetext: &::windows::core::HSTRING) -> ::windows::core::Result<UssdMessage> {
9063 Self::IUssdMessageFactory(|this| unsafe {
9064 let mut result__ = ::windows::core::zeroed::<UssdMessage>();
9065 (::windows::core::Interface::vtable(this).CreateMessage)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(messagetext), &mut result__).from_abi(result__)
9066 })
9067 }
9068 #[doc(hidden)]
9069 pub fn IUssdMessageFactory<R, F: FnOnce(&IUssdMessageFactory) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
9070 static SHARED: ::windows::imp::FactoryCache<UssdMessage, IUssdMessageFactory> = ::windows::imp::FactoryCache::new();
9071 SHARED.call(callback)
9072 }
9073}
9074impl ::core::cmp::PartialEq for UssdMessage {
9075 fn eq(&self, other: &Self) -> bool {
9076 self.0 == other.0
9077 }
9078}
9079impl ::core::cmp::Eq for UssdMessage {}
9080impl ::core::fmt::Debug for UssdMessage {
9081 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9082 f.debug_tuple("UssdMessage").field(&self.0).finish()
9083 }
9084}
9085impl ::windows::core::RuntimeType for UssdMessage {
9086 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.UssdMessage;{2f9acf82-2004-4d5d-bf81-2aba1b4be4a8})");
9087}
9088impl ::core::clone::Clone for UssdMessage {
9089 fn clone(&self) -> Self {
9090 Self(self.0.clone())
9091 }
9092}
9093unsafe impl ::windows::core::Interface for UssdMessage {
9094 type Vtable = IUssdMessage_Vtbl;
9095}
9096unsafe impl ::windows::core::ComInterface for UssdMessage {
9097 const IID: ::windows::core::GUID = <IUssdMessage as ::windows::core::ComInterface>::IID;
9098}
9099impl ::windows::core::RuntimeName for UssdMessage {
9100 const NAME: &'static str = "Windows.Networking.NetworkOperators.UssdMessage";
9101}
9102::windows::imp::interface_hierarchy!(UssdMessage, ::windows::core::IUnknown, ::windows::core::IInspectable);
9103unsafe impl ::core::marker::Send for UssdMessage {}
9104unsafe impl ::core::marker::Sync for UssdMessage {}
9105#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9106#[repr(transparent)]
9107pub struct UssdReply(::windows::core::IUnknown);
9108impl UssdReply {
9109 pub fn ResultCode(&self) -> ::windows::core::Result<UssdResultCode> {
9110 let this = self;
9111 unsafe {
9112 let mut result__ = ::windows::core::zeroed::<UssdResultCode>();
9113 (::windows::core::Interface::vtable(this).ResultCode)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
9114 }
9115 }
9116 pub fn Message(&self) -> ::windows::core::Result<UssdMessage> {
9117 let this = self;
9118 unsafe {
9119 let mut result__ = ::windows::core::zeroed::<UssdMessage>();
9120 (::windows::core::Interface::vtable(this).Message)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
9121 }
9122 }
9123}
9124impl ::core::cmp::PartialEq for UssdReply {
9125 fn eq(&self, other: &Self) -> bool {
9126 self.0 == other.0
9127 }
9128}
9129impl ::core::cmp::Eq for UssdReply {}
9130impl ::core::fmt::Debug for UssdReply {
9131 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9132 f.debug_tuple("UssdReply").field(&self.0).finish()
9133 }
9134}
9135impl ::windows::core::RuntimeType for UssdReply {
9136 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.UssdReply;{2f9acf82-2005-4d5d-bf81-2aba1b4be4a8})");
9137}
9138impl ::core::clone::Clone for UssdReply {
9139 fn clone(&self) -> Self {
9140 Self(self.0.clone())
9141 }
9142}
9143unsafe impl ::windows::core::Interface for UssdReply {
9144 type Vtable = IUssdReply_Vtbl;
9145}
9146unsafe impl ::windows::core::ComInterface for UssdReply {
9147 const IID: ::windows::core::GUID = <IUssdReply as ::windows::core::ComInterface>::IID;
9148}
9149impl ::windows::core::RuntimeName for UssdReply {
9150 const NAME: &'static str = "Windows.Networking.NetworkOperators.UssdReply";
9151}
9152::windows::imp::interface_hierarchy!(UssdReply, ::windows::core::IUnknown, ::windows::core::IInspectable);
9153#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9154#[repr(transparent)]
9155pub struct UssdSession(::windows::core::IUnknown);
9156impl UssdSession {
9157 #[doc = "*Required features: `\"Foundation\"`*"]
9158 #[cfg(feature = "Foundation")]
9159 pub fn SendMessageAndGetReplyAsync(&self, message: &UssdMessage) -> ::windows::core::Result<super::super::Foundation::IAsyncOperation<UssdReply>> {
9160 let this = self;
9161 unsafe {
9162 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::IAsyncOperation<UssdReply>>();
9163 (::windows::core::Interface::vtable(this).SendMessageAndGetReplyAsync)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(message), &mut result__).from_abi(result__)
9164 }
9165 }
9166 pub fn Close(&self) -> ::windows::core::Result<()> {
9167 let this = self;
9168 unsafe { (::windows::core::Interface::vtable(this).Close)(::windows::core::Interface::as_raw(this)).ok() }
9169 }
9170 pub fn CreateFromNetworkAccountId(networkaccountid: &::windows::core::HSTRING) -> ::windows::core::Result<UssdSession> {
9171 Self::IUssdSessionStatics(|this| unsafe {
9172 let mut result__ = ::windows::core::zeroed::<UssdSession>();
9173 (::windows::core::Interface::vtable(this).CreateFromNetworkAccountId)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(networkaccountid), &mut result__).from_abi(result__)
9174 })
9175 }
9176 pub fn CreateFromNetworkInterfaceId(networkinterfaceid: &::windows::core::HSTRING) -> ::windows::core::Result<UssdSession> {
9177 Self::IUssdSessionStatics(|this| unsafe {
9178 let mut result__ = ::windows::core::zeroed::<UssdSession>();
9179 (::windows::core::Interface::vtable(this).CreateFromNetworkInterfaceId)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(networkinterfaceid), &mut result__).from_abi(result__)
9180 })
9181 }
9182 #[doc(hidden)]
9183 pub fn IUssdSessionStatics<R, F: FnOnce(&IUssdSessionStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
9184 static SHARED: ::windows::imp::FactoryCache<UssdSession, IUssdSessionStatics> = ::windows::imp::FactoryCache::new();
9185 SHARED.call(callback)
9186 }
9187}
9188impl ::core::cmp::PartialEq for UssdSession {
9189 fn eq(&self, other: &Self) -> bool {
9190 self.0 == other.0
9191 }
9192}
9193impl ::core::cmp::Eq for UssdSession {}
9194impl ::core::fmt::Debug for UssdSession {
9195 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9196 f.debug_tuple("UssdSession").field(&self.0).finish()
9197 }
9198}
9199impl ::windows::core::RuntimeType for UssdSession {
9200 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"rc(Windows.Networking.NetworkOperators.UssdSession;{2f9acf82-2002-4d5d-bf81-2aba1b4be4a8})");
9201}
9202impl ::core::clone::Clone for UssdSession {
9203 fn clone(&self) -> Self {
9204 Self(self.0.clone())
9205 }
9206}
9207unsafe impl ::windows::core::Interface for UssdSession {
9208 type Vtable = IUssdSession_Vtbl;
9209}
9210unsafe impl ::windows::core::ComInterface for UssdSession {
9211 const IID: ::windows::core::GUID = <IUssdSession as ::windows::core::ComInterface>::IID;
9212}
9213impl ::windows::core::RuntimeName for UssdSession {
9214 const NAME: &'static str = "Windows.Networking.NetworkOperators.UssdSession";
9215}
9216::windows::imp::interface_hierarchy!(UssdSession, ::windows::core::IUnknown, ::windows::core::IInspectable);
9217#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9218#[repr(transparent)]
9219#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9220pub struct DataClasses(pub u32);
9221impl DataClasses {
9222 pub const None: Self = Self(0u32);
9223 pub const Gprs: Self = Self(1u32);
9224 pub const Edge: Self = Self(2u32);
9225 pub const Umts: Self = Self(4u32);
9226 pub const Hsdpa: Self = Self(8u32);
9227 pub const Hsupa: Self = Self(16u32);
9228 pub const LteAdvanced: Self = Self(32u32);
9229 pub const NewRadioNonStandalone: Self = Self(64u32);
9230 pub const NewRadioStandalone: Self = Self(128u32);
9231 pub const Cdma1xRtt: Self = Self(65536u32);
9232 pub const Cdma1xEvdo: Self = Self(131072u32);
9233 pub const Cdma1xEvdoRevA: Self = Self(262144u32);
9234 pub const Cdma1xEvdv: Self = Self(524288u32);
9235 pub const Cdma3xRtt: Self = Self(1048576u32);
9236 pub const Cdma1xEvdoRevB: Self = Self(2097152u32);
9237 pub const CdmaUmb: Self = Self(4194304u32);
9238 pub const Custom: Self = Self(2147483648u32);
9239}
9240impl ::core::marker::Copy for DataClasses {}
9241impl ::core::clone::Clone for DataClasses {
9242 fn clone(&self) -> Self {
9243 *self
9244 }
9245}
9246impl ::core::default::Default for DataClasses {
9247 fn default() -> Self {
9248 Self(0)
9249 }
9250}
9251impl ::windows::core::TypeKind for DataClasses {
9252 type TypeKind = ::windows::core::CopyType;
9253}
9254impl ::core::fmt::Debug for DataClasses {
9255 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9256 f.debug_tuple("DataClasses").field(&self.0).finish()
9257 }
9258}
9259impl DataClasses {
9260 pub const fn contains(&self, other: Self) -> bool {
9261 self.0 & other.0 == other.0
9262 }
9263}
9264impl ::core::ops::BitOr for DataClasses {
9265 type Output = Self;
9266 fn bitor(self, other: Self) -> Self {
9267 Self(self.0 | other.0)
9268 }
9269}
9270impl ::core::ops::BitAnd for DataClasses {
9271 type Output = Self;
9272 fn bitand(self, other: Self) -> Self {
9273 Self(self.0 & other.0)
9274 }
9275}
9276impl ::core::ops::BitOrAssign for DataClasses {
9277 fn bitor_assign(&mut self, other: Self) {
9278 self.0.bitor_assign(other.0)
9279 }
9280}
9281impl ::core::ops::BitAndAssign for DataClasses {
9282 fn bitand_assign(&mut self, other: Self) {
9283 self.0.bitand_assign(other.0)
9284 }
9285}
9286impl ::core::ops::Not for DataClasses {
9287 type Output = Self;
9288 fn not(self) -> Self {
9289 Self(self.0.not())
9290 }
9291}
9292impl ::windows::core::RuntimeType for DataClasses {
9293 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.DataClasses;u4)");
9294}
9295#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9296#[repr(transparent)]
9297#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9298pub struct ESimAuthenticationPreference(pub i32);
9299impl ESimAuthenticationPreference {
9300 pub const OnEntry: Self = Self(0i32);
9301 pub const OnAction: Self = Self(1i32);
9302 pub const Never: Self = Self(2i32);
9303}
9304impl ::core::marker::Copy for ESimAuthenticationPreference {}
9305impl ::core::clone::Clone for ESimAuthenticationPreference {
9306 fn clone(&self) -> Self {
9307 *self
9308 }
9309}
9310impl ::core::default::Default for ESimAuthenticationPreference {
9311 fn default() -> Self {
9312 Self(0)
9313 }
9314}
9315impl ::windows::core::TypeKind for ESimAuthenticationPreference {
9316 type TypeKind = ::windows::core::CopyType;
9317}
9318impl ::core::fmt::Debug for ESimAuthenticationPreference {
9319 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9320 f.debug_tuple("ESimAuthenticationPreference").field(&self.0).finish()
9321 }
9322}
9323impl ::windows::core::RuntimeType for ESimAuthenticationPreference {
9324 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.ESimAuthenticationPreference;i4)");
9325}
9326#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9327#[repr(transparent)]
9328#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9329pub struct ESimDiscoverResultKind(pub i32);
9330impl ESimDiscoverResultKind {
9331 pub const None: Self = Self(0i32);
9332 pub const Events: Self = Self(1i32);
9333 pub const ProfileMetadata: Self = Self(2i32);
9334}
9335impl ::core::marker::Copy for ESimDiscoverResultKind {}
9336impl ::core::clone::Clone for ESimDiscoverResultKind {
9337 fn clone(&self) -> Self {
9338 *self
9339 }
9340}
9341impl ::core::default::Default for ESimDiscoverResultKind {
9342 fn default() -> Self {
9343 Self(0)
9344 }
9345}
9346impl ::windows::core::TypeKind for ESimDiscoverResultKind {
9347 type TypeKind = ::windows::core::CopyType;
9348}
9349impl ::core::fmt::Debug for ESimDiscoverResultKind {
9350 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9351 f.debug_tuple("ESimDiscoverResultKind").field(&self.0).finish()
9352 }
9353}
9354impl ::windows::core::RuntimeType for ESimDiscoverResultKind {
9355 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.ESimDiscoverResultKind;i4)");
9356}
9357#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9358#[repr(transparent)]
9359#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9360pub struct ESimOperationStatus(pub i32);
9361impl ESimOperationStatus {
9362 pub const Success: Self = Self(0i32);
9363 pub const NotAuthorized: Self = Self(1i32);
9364 pub const NotFound: Self = Self(2i32);
9365 pub const PolicyViolation: Self = Self(3i32);
9366 pub const InsufficientSpaceOnCard: Self = Self(4i32);
9367 pub const ServerFailure: Self = Self(5i32);
9368 pub const ServerNotReachable: Self = Self(6i32);
9369 pub const TimeoutWaitingForUserConsent: Self = Self(7i32);
9370 pub const IncorrectConfirmationCode: Self = Self(8i32);
9371 pub const ConfirmationCodeMaxRetriesExceeded: Self = Self(9i32);
9372 pub const CardRemoved: Self = Self(10i32);
9373 pub const CardBusy: Self = Self(11i32);
9374 pub const Other: Self = Self(12i32);
9375 pub const CardGeneralFailure: Self = Self(13i32);
9376 pub const ConfirmationCodeMissing: Self = Self(14i32);
9377 pub const InvalidMatchingId: Self = Self(15i32);
9378 pub const NoEligibleProfileForThisDevice: Self = Self(16i32);
9379 pub const OperationAborted: Self = Self(17i32);
9380 pub const EidMismatch: Self = Self(18i32);
9381 pub const ProfileNotAvailableForNewBinding: Self = Self(19i32);
9382 pub const ProfileNotReleasedByOperator: Self = Self(20i32);
9383 pub const OperationProhibitedByProfileClass: Self = Self(21i32);
9384 pub const ProfileNotPresent: Self = Self(22i32);
9385 pub const NoCorrespondingRequest: Self = Self(23i32);
9386 pub const TimeoutWaitingForResponse: Self = Self(24i32);
9387 pub const IccidAlreadyExists: Self = Self(25i32);
9388 pub const ProfileProcessingError: Self = Self(26i32);
9389 pub const ServerNotTrusted: Self = Self(27i32);
9390 pub const ProfileDownloadMaxRetriesExceeded: Self = Self(28i32);
9391}
9392impl ::core::marker::Copy for ESimOperationStatus {}
9393impl ::core::clone::Clone for ESimOperationStatus {
9394 fn clone(&self) -> Self {
9395 *self
9396 }
9397}
9398impl ::core::default::Default for ESimOperationStatus {
9399 fn default() -> Self {
9400 Self(0)
9401 }
9402}
9403impl ::windows::core::TypeKind for ESimOperationStatus {
9404 type TypeKind = ::windows::core::CopyType;
9405}
9406impl ::core::fmt::Debug for ESimOperationStatus {
9407 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9408 f.debug_tuple("ESimOperationStatus").field(&self.0).finish()
9409 }
9410}
9411impl ::windows::core::RuntimeType for ESimOperationStatus {
9412 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.ESimOperationStatus;i4)");
9413}
9414#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9415#[repr(transparent)]
9416#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9417pub struct ESimProfileClass(pub i32);
9418impl ESimProfileClass {
9419 pub const Operational: Self = Self(0i32);
9420 pub const Test: Self = Self(1i32);
9421 pub const Provisioning: Self = Self(2i32);
9422}
9423impl ::core::marker::Copy for ESimProfileClass {}
9424impl ::core::clone::Clone for ESimProfileClass {
9425 fn clone(&self) -> Self {
9426 *self
9427 }
9428}
9429impl ::core::default::Default for ESimProfileClass {
9430 fn default() -> Self {
9431 Self(0)
9432 }
9433}
9434impl ::windows::core::TypeKind for ESimProfileClass {
9435 type TypeKind = ::windows::core::CopyType;
9436}
9437impl ::core::fmt::Debug for ESimProfileClass {
9438 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9439 f.debug_tuple("ESimProfileClass").field(&self.0).finish()
9440 }
9441}
9442impl ::windows::core::RuntimeType for ESimProfileClass {
9443 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.ESimProfileClass;i4)");
9444}
9445#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9446#[repr(transparent)]
9447#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9448pub struct ESimProfileMetadataState(pub i32);
9449impl ESimProfileMetadataState {
9450 pub const Unknown: Self = Self(0i32);
9451 pub const WaitingForInstall: Self = Self(1i32);
9452 pub const Downloading: Self = Self(2i32);
9453 pub const Installing: Self = Self(3i32);
9454 pub const Expired: Self = Self(4i32);
9455 pub const RejectingDownload: Self = Self(5i32);
9456 pub const NoLongerAvailable: Self = Self(6i32);
9457 pub const DeniedByPolicy: Self = Self(7i32);
9458}
9459impl ::core::marker::Copy for ESimProfileMetadataState {}
9460impl ::core::clone::Clone for ESimProfileMetadataState {
9461 fn clone(&self) -> Self {
9462 *self
9463 }
9464}
9465impl ::core::default::Default for ESimProfileMetadataState {
9466 fn default() -> Self {
9467 Self(0)
9468 }
9469}
9470impl ::windows::core::TypeKind for ESimProfileMetadataState {
9471 type TypeKind = ::windows::core::CopyType;
9472}
9473impl ::core::fmt::Debug for ESimProfileMetadataState {
9474 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9475 f.debug_tuple("ESimProfileMetadataState").field(&self.0).finish()
9476 }
9477}
9478impl ::windows::core::RuntimeType for ESimProfileMetadataState {
9479 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.ESimProfileMetadataState;i4)");
9480}
9481#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9482#[repr(transparent)]
9483#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9484pub struct ESimProfileState(pub i32);
9485impl ESimProfileState {
9486 pub const Unknown: Self = Self(0i32);
9487 pub const Disabled: Self = Self(1i32);
9488 pub const Enabled: Self = Self(2i32);
9489 pub const Deleted: Self = Self(3i32);
9490}
9491impl ::core::marker::Copy for ESimProfileState {}
9492impl ::core::clone::Clone for ESimProfileState {
9493 fn clone(&self) -> Self {
9494 *self
9495 }
9496}
9497impl ::core::default::Default for ESimProfileState {
9498 fn default() -> Self {
9499 Self(0)
9500 }
9501}
9502impl ::windows::core::TypeKind for ESimProfileState {
9503 type TypeKind = ::windows::core::CopyType;
9504}
9505impl ::core::fmt::Debug for ESimProfileState {
9506 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9507 f.debug_tuple("ESimProfileState").field(&self.0).finish()
9508 }
9509}
9510impl ::windows::core::RuntimeType for ESimProfileState {
9511 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.ESimProfileState;i4)");
9512}
9513#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9514#[repr(transparent)]
9515#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9516pub struct ESimState(pub i32);
9517impl ESimState {
9518 pub const Unknown: Self = Self(0i32);
9519 pub const Idle: Self = Self(1i32);
9520 pub const Removed: Self = Self(2i32);
9521 pub const Busy: Self = Self(3i32);
9522}
9523impl ::core::marker::Copy for ESimState {}
9524impl ::core::clone::Clone for ESimState {
9525 fn clone(&self) -> Self {
9526 *self
9527 }
9528}
9529impl ::core::default::Default for ESimState {
9530 fn default() -> Self {
9531 Self(0)
9532 }
9533}
9534impl ::windows::core::TypeKind for ESimState {
9535 type TypeKind = ::windows::core::CopyType;
9536}
9537impl ::core::fmt::Debug for ESimState {
9538 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9539 f.debug_tuple("ESimState").field(&self.0).finish()
9540 }
9541}
9542impl ::windows::core::RuntimeType for ESimState {
9543 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.ESimState;i4)");
9544}
9545#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9546#[repr(transparent)]
9547#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9548pub struct ESimWatcherStatus(pub i32);
9549impl ESimWatcherStatus {
9550 pub const Created: Self = Self(0i32);
9551 pub const Started: Self = Self(1i32);
9552 pub const EnumerationCompleted: Self = Self(2i32);
9553 pub const Stopping: Self = Self(3i32);
9554 pub const Stopped: Self = Self(4i32);
9555}
9556impl ::core::marker::Copy for ESimWatcherStatus {}
9557impl ::core::clone::Clone for ESimWatcherStatus {
9558 fn clone(&self) -> Self {
9559 *self
9560 }
9561}
9562impl ::core::default::Default for ESimWatcherStatus {
9563 fn default() -> Self {
9564 Self(0)
9565 }
9566}
9567impl ::windows::core::TypeKind for ESimWatcherStatus {
9568 type TypeKind = ::windows::core::CopyType;
9569}
9570impl ::core::fmt::Debug for ESimWatcherStatus {
9571 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9572 f.debug_tuple("ESimWatcherStatus").field(&self.0).finish()
9573 }
9574}
9575impl ::windows::core::RuntimeType for ESimWatcherStatus {
9576 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.ESimWatcherStatus;i4)");
9577}
9578#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9579#[repr(transparent)]
9580#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9581pub struct HotspotAuthenticationResponseCode(pub i32);
9582impl HotspotAuthenticationResponseCode {
9583 pub const NoError: Self = Self(0i32);
9584 pub const LoginSucceeded: Self = Self(50i32);
9585 pub const LoginFailed: Self = Self(100i32);
9586 pub const RadiusServerError: Self = Self(102i32);
9587 pub const NetworkAdministratorError: Self = Self(105i32);
9588 pub const LoginAborted: Self = Self(151i32);
9589 pub const AccessGatewayInternalError: Self = Self(255i32);
9590}
9591impl ::core::marker::Copy for HotspotAuthenticationResponseCode {}
9592impl ::core::clone::Clone for HotspotAuthenticationResponseCode {
9593 fn clone(&self) -> Self {
9594 *self
9595 }
9596}
9597impl ::core::default::Default for HotspotAuthenticationResponseCode {
9598 fn default() -> Self {
9599 Self(0)
9600 }
9601}
9602impl ::windows::core::TypeKind for HotspotAuthenticationResponseCode {
9603 type TypeKind = ::windows::core::CopyType;
9604}
9605impl ::core::fmt::Debug for HotspotAuthenticationResponseCode {
9606 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9607 f.debug_tuple("HotspotAuthenticationResponseCode").field(&self.0).finish()
9608 }
9609}
9610impl ::windows::core::RuntimeType for HotspotAuthenticationResponseCode {
9611 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.HotspotAuthenticationResponseCode;i4)");
9612}
9613#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9614#[repr(transparent)]
9615#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9616pub struct MobileBroadbandAccountWatcherStatus(pub i32);
9617impl MobileBroadbandAccountWatcherStatus {
9618 pub const Created: Self = Self(0i32);
9619 pub const Started: Self = Self(1i32);
9620 pub const EnumerationCompleted: Self = Self(2i32);
9621 pub const Stopped: Self = Self(3i32);
9622 pub const Aborted: Self = Self(4i32);
9623}
9624impl ::core::marker::Copy for MobileBroadbandAccountWatcherStatus {}
9625impl ::core::clone::Clone for MobileBroadbandAccountWatcherStatus {
9626 fn clone(&self) -> Self {
9627 *self
9628 }
9629}
9630impl ::core::default::Default for MobileBroadbandAccountWatcherStatus {
9631 fn default() -> Self {
9632 Self(0)
9633 }
9634}
9635impl ::windows::core::TypeKind for MobileBroadbandAccountWatcherStatus {
9636 type TypeKind = ::windows::core::CopyType;
9637}
9638impl ::core::fmt::Debug for MobileBroadbandAccountWatcherStatus {
9639 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9640 f.debug_tuple("MobileBroadbandAccountWatcherStatus").field(&self.0).finish()
9641 }
9642}
9643impl ::windows::core::RuntimeType for MobileBroadbandAccountWatcherStatus {
9644 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.MobileBroadbandAccountWatcherStatus;i4)");
9645}
9646#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9647#[repr(transparent)]
9648#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9649pub struct MobileBroadbandDeviceType(pub i32);
9650impl MobileBroadbandDeviceType {
9651 pub const Unknown: Self = Self(0i32);
9652 pub const Embedded: Self = Self(1i32);
9653 pub const Removable: Self = Self(2i32);
9654 pub const Remote: Self = Self(3i32);
9655}
9656impl ::core::marker::Copy for MobileBroadbandDeviceType {}
9657impl ::core::clone::Clone for MobileBroadbandDeviceType {
9658 fn clone(&self) -> Self {
9659 *self
9660 }
9661}
9662impl ::core::default::Default for MobileBroadbandDeviceType {
9663 fn default() -> Self {
9664 Self(0)
9665 }
9666}
9667impl ::windows::core::TypeKind for MobileBroadbandDeviceType {
9668 type TypeKind = ::windows::core::CopyType;
9669}
9670impl ::core::fmt::Debug for MobileBroadbandDeviceType {
9671 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9672 f.debug_tuple("MobileBroadbandDeviceType").field(&self.0).finish()
9673 }
9674}
9675impl ::windows::core::RuntimeType for MobileBroadbandDeviceType {
9676 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.MobileBroadbandDeviceType;i4)");
9677}
9678#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9679#[repr(transparent)]
9680#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9681pub struct MobileBroadbandModemStatus(pub i32);
9682impl MobileBroadbandModemStatus {
9683 pub const Success: Self = Self(0i32);
9684 pub const OtherFailure: Self = Self(1i32);
9685 pub const Busy: Self = Self(2i32);
9686 pub const NoDeviceSupport: Self = Self(3i32);
9687}
9688impl ::core::marker::Copy for MobileBroadbandModemStatus {}
9689impl ::core::clone::Clone for MobileBroadbandModemStatus {
9690 fn clone(&self) -> Self {
9691 *self
9692 }
9693}
9694impl ::core::default::Default for MobileBroadbandModemStatus {
9695 fn default() -> Self {
9696 Self(0)
9697 }
9698}
9699impl ::windows::core::TypeKind for MobileBroadbandModemStatus {
9700 type TypeKind = ::windows::core::CopyType;
9701}
9702impl ::core::fmt::Debug for MobileBroadbandModemStatus {
9703 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9704 f.debug_tuple("MobileBroadbandModemStatus").field(&self.0).finish()
9705 }
9706}
9707impl ::windows::core::RuntimeType for MobileBroadbandModemStatus {
9708 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.MobileBroadbandModemStatus;i4)");
9709}
9710#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9711#[repr(transparent)]
9712#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9713pub struct MobileBroadbandPinFormat(pub i32);
9714impl MobileBroadbandPinFormat {
9715 pub const Unknown: Self = Self(0i32);
9716 pub const Numeric: Self = Self(1i32);
9717 pub const Alphanumeric: Self = Self(2i32);
9718}
9719impl ::core::marker::Copy for MobileBroadbandPinFormat {}
9720impl ::core::clone::Clone for MobileBroadbandPinFormat {
9721 fn clone(&self) -> Self {
9722 *self
9723 }
9724}
9725impl ::core::default::Default for MobileBroadbandPinFormat {
9726 fn default() -> Self {
9727 Self(0)
9728 }
9729}
9730impl ::windows::core::TypeKind for MobileBroadbandPinFormat {
9731 type TypeKind = ::windows::core::CopyType;
9732}
9733impl ::core::fmt::Debug for MobileBroadbandPinFormat {
9734 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9735 f.debug_tuple("MobileBroadbandPinFormat").field(&self.0).finish()
9736 }
9737}
9738impl ::windows::core::RuntimeType for MobileBroadbandPinFormat {
9739 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.MobileBroadbandPinFormat;i4)");
9740}
9741#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9742#[repr(transparent)]
9743#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9744pub struct MobileBroadbandPinLockState(pub i32);
9745impl MobileBroadbandPinLockState {
9746 pub const Unknown: Self = Self(0i32);
9747 pub const Unlocked: Self = Self(1i32);
9748 pub const PinRequired: Self = Self(2i32);
9749 pub const PinUnblockKeyRequired: Self = Self(3i32);
9750}
9751impl ::core::marker::Copy for MobileBroadbandPinLockState {}
9752impl ::core::clone::Clone for MobileBroadbandPinLockState {
9753 fn clone(&self) -> Self {
9754 *self
9755 }
9756}
9757impl ::core::default::Default for MobileBroadbandPinLockState {
9758 fn default() -> Self {
9759 Self(0)
9760 }
9761}
9762impl ::windows::core::TypeKind for MobileBroadbandPinLockState {
9763 type TypeKind = ::windows::core::CopyType;
9764}
9765impl ::core::fmt::Debug for MobileBroadbandPinLockState {
9766 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9767 f.debug_tuple("MobileBroadbandPinLockState").field(&self.0).finish()
9768 }
9769}
9770impl ::windows::core::RuntimeType for MobileBroadbandPinLockState {
9771 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.MobileBroadbandPinLockState;i4)");
9772}
9773#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9774#[repr(transparent)]
9775#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9776pub struct MobileBroadbandPinType(pub i32);
9777impl MobileBroadbandPinType {
9778 pub const None: Self = Self(0i32);
9779 pub const Custom: Self = Self(1i32);
9780 pub const Pin1: Self = Self(2i32);
9781 pub const Pin2: Self = Self(3i32);
9782 pub const SimPin: Self = Self(4i32);
9783 pub const FirstSimPin: Self = Self(5i32);
9784 pub const NetworkPin: Self = Self(6i32);
9785 pub const NetworkSubsetPin: Self = Self(7i32);
9786 pub const ServiceProviderPin: Self = Self(8i32);
9787 pub const CorporatePin: Self = Self(9i32);
9788 pub const SubsidyLock: Self = Self(10i32);
9789}
9790impl ::core::marker::Copy for MobileBroadbandPinType {}
9791impl ::core::clone::Clone for MobileBroadbandPinType {
9792 fn clone(&self) -> Self {
9793 *self
9794 }
9795}
9796impl ::core::default::Default for MobileBroadbandPinType {
9797 fn default() -> Self {
9798 Self(0)
9799 }
9800}
9801impl ::windows::core::TypeKind for MobileBroadbandPinType {
9802 type TypeKind = ::windows::core::CopyType;
9803}
9804impl ::core::fmt::Debug for MobileBroadbandPinType {
9805 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9806 f.debug_tuple("MobileBroadbandPinType").field(&self.0).finish()
9807 }
9808}
9809impl ::windows::core::RuntimeType for MobileBroadbandPinType {
9810 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.MobileBroadbandPinType;i4)");
9811}
9812#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9813#[repr(transparent)]
9814#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9815pub struct MobileBroadbandRadioState(pub i32);
9816impl MobileBroadbandRadioState {
9817 pub const Off: Self = Self(0i32);
9818 pub const On: Self = Self(1i32);
9819}
9820impl ::core::marker::Copy for MobileBroadbandRadioState {}
9821impl ::core::clone::Clone for MobileBroadbandRadioState {
9822 fn clone(&self) -> Self {
9823 *self
9824 }
9825}
9826impl ::core::default::Default for MobileBroadbandRadioState {
9827 fn default() -> Self {
9828 Self(0)
9829 }
9830}
9831impl ::windows::core::TypeKind for MobileBroadbandRadioState {
9832 type TypeKind = ::windows::core::CopyType;
9833}
9834impl ::core::fmt::Debug for MobileBroadbandRadioState {
9835 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9836 f.debug_tuple("MobileBroadbandRadioState").field(&self.0).finish()
9837 }
9838}
9839impl ::windows::core::RuntimeType for MobileBroadbandRadioState {
9840 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.MobileBroadbandRadioState;i4)");
9841}
9842#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9843#[repr(transparent)]
9844#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9845pub struct MobileBroadbandSlotState(pub i32);
9846impl MobileBroadbandSlotState {
9847 pub const Unmanaged: Self = Self(0i32);
9848 pub const Unknown: Self = Self(1i32);
9849 pub const OffEmpty: Self = Self(2i32);
9850 pub const Off: Self = Self(3i32);
9851 pub const Empty: Self = Self(4i32);
9852 pub const NotReady: Self = Self(5i32);
9853 pub const Active: Self = Self(6i32);
9854 pub const Error: Self = Self(7i32);
9855 pub const ActiveEsim: Self = Self(8i32);
9856 pub const ActiveEsimNoProfile: Self = Self(9i32);
9857}
9858impl ::core::marker::Copy for MobileBroadbandSlotState {}
9859impl ::core::clone::Clone for MobileBroadbandSlotState {
9860 fn clone(&self) -> Self {
9861 *self
9862 }
9863}
9864impl ::core::default::Default for MobileBroadbandSlotState {
9865 fn default() -> Self {
9866 Self(0)
9867 }
9868}
9869impl ::windows::core::TypeKind for MobileBroadbandSlotState {
9870 type TypeKind = ::windows::core::CopyType;
9871}
9872impl ::core::fmt::Debug for MobileBroadbandSlotState {
9873 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9874 f.debug_tuple("MobileBroadbandSlotState").field(&self.0).finish()
9875 }
9876}
9877impl ::windows::core::RuntimeType for MobileBroadbandSlotState {
9878 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.MobileBroadbandSlotState;i4)");
9879}
9880#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9881#[repr(transparent)]
9882#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9883pub struct MobileBroadbandUiccAppOperationStatus(pub i32);
9884impl MobileBroadbandUiccAppOperationStatus {
9885 pub const Success: Self = Self(0i32);
9886 pub const InvalidUiccFilePath: Self = Self(1i32);
9887 pub const AccessConditionNotHeld: Self = Self(2i32);
9888 pub const UiccBusy: Self = Self(3i32);
9889}
9890impl ::core::marker::Copy for MobileBroadbandUiccAppOperationStatus {}
9891impl ::core::clone::Clone for MobileBroadbandUiccAppOperationStatus {
9892 fn clone(&self) -> Self {
9893 *self
9894 }
9895}
9896impl ::core::default::Default for MobileBroadbandUiccAppOperationStatus {
9897 fn default() -> Self {
9898 Self(0)
9899 }
9900}
9901impl ::windows::core::TypeKind for MobileBroadbandUiccAppOperationStatus {
9902 type TypeKind = ::windows::core::CopyType;
9903}
9904impl ::core::fmt::Debug for MobileBroadbandUiccAppOperationStatus {
9905 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9906 f.debug_tuple("MobileBroadbandUiccAppOperationStatus").field(&self.0).finish()
9907 }
9908}
9909impl ::windows::core::RuntimeType for MobileBroadbandUiccAppOperationStatus {
9910 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.MobileBroadbandUiccAppOperationStatus;i4)");
9911}
9912#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9913#[repr(transparent)]
9914#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9915pub struct NetworkDeviceStatus(pub i32);
9916impl NetworkDeviceStatus {
9917 pub const DeviceNotReady: Self = Self(0i32);
9918 pub const DeviceReady: Self = Self(1i32);
9919 pub const SimNotInserted: Self = Self(2i32);
9920 pub const BadSim: Self = Self(3i32);
9921 pub const DeviceHardwareFailure: Self = Self(4i32);
9922 pub const AccountNotActivated: Self = Self(5i32);
9923 pub const DeviceLocked: Self = Self(6i32);
9924 pub const DeviceBlocked: Self = Self(7i32);
9925}
9926impl ::core::marker::Copy for NetworkDeviceStatus {}
9927impl ::core::clone::Clone for NetworkDeviceStatus {
9928 fn clone(&self) -> Self {
9929 *self
9930 }
9931}
9932impl ::core::default::Default for NetworkDeviceStatus {
9933 fn default() -> Self {
9934 Self(0)
9935 }
9936}
9937impl ::windows::core::TypeKind for NetworkDeviceStatus {
9938 type TypeKind = ::windows::core::CopyType;
9939}
9940impl ::core::fmt::Debug for NetworkDeviceStatus {
9941 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9942 f.debug_tuple("NetworkDeviceStatus").field(&self.0).finish()
9943 }
9944}
9945impl ::windows::core::RuntimeType for NetworkDeviceStatus {
9946 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.NetworkDeviceStatus;i4)");
9947}
9948#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9949#[repr(transparent)]
9950#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9951pub struct NetworkOperatorDataUsageNotificationKind(pub i32);
9952impl NetworkOperatorDataUsageNotificationKind {
9953 pub const DataUsageProgress: Self = Self(0i32);
9954}
9955impl ::core::marker::Copy for NetworkOperatorDataUsageNotificationKind {}
9956impl ::core::clone::Clone for NetworkOperatorDataUsageNotificationKind {
9957 fn clone(&self) -> Self {
9958 *self
9959 }
9960}
9961impl ::core::default::Default for NetworkOperatorDataUsageNotificationKind {
9962 fn default() -> Self {
9963 Self(0)
9964 }
9965}
9966impl ::windows::core::TypeKind for NetworkOperatorDataUsageNotificationKind {
9967 type TypeKind = ::windows::core::CopyType;
9968}
9969impl ::core::fmt::Debug for NetworkOperatorDataUsageNotificationKind {
9970 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9971 f.debug_tuple("NetworkOperatorDataUsageNotificationKind").field(&self.0).finish()
9972 }
9973}
9974impl ::windows::core::RuntimeType for NetworkOperatorDataUsageNotificationKind {
9975 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.NetworkOperatorDataUsageNotificationKind;i4)");
9976}
9977#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
9978#[repr(transparent)]
9979#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
9980pub struct NetworkOperatorEventMessageType(pub i32);
9981impl NetworkOperatorEventMessageType {
9982 pub const Gsm: Self = Self(0i32);
9983 pub const Cdma: Self = Self(1i32);
9984 pub const Ussd: Self = Self(2i32);
9985 pub const DataPlanThresholdReached: Self = Self(3i32);
9986 pub const DataPlanReset: Self = Self(4i32);
9987 pub const DataPlanDeleted: Self = Self(5i32);
9988 pub const ProfileConnected: Self = Self(6i32);
9989 pub const ProfileDisconnected: Self = Self(7i32);
9990 pub const RegisteredRoaming: Self = Self(8i32);
9991 pub const RegisteredHome: Self = Self(9i32);
9992 pub const TetheringEntitlementCheck: Self = Self(10i32);
9993 pub const TetheringOperationalStateChanged: Self = Self(11i32);
9994 pub const TetheringNumberOfClientsChanged: Self = Self(12i32);
9995}
9996impl ::core::marker::Copy for NetworkOperatorEventMessageType {}
9997impl ::core::clone::Clone for NetworkOperatorEventMessageType {
9998 fn clone(&self) -> Self {
9999 *self
10000 }
10001}
10002impl ::core::default::Default for NetworkOperatorEventMessageType {
10003 fn default() -> Self {
10004 Self(0)
10005 }
10006}
10007impl ::windows::core::TypeKind for NetworkOperatorEventMessageType {
10008 type TypeKind = ::windows::core::CopyType;
10009}
10010impl ::core::fmt::Debug for NetworkOperatorEventMessageType {
10011 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10012 f.debug_tuple("NetworkOperatorEventMessageType").field(&self.0).finish()
10013 }
10014}
10015impl ::windows::core::RuntimeType for NetworkOperatorEventMessageType {
10016 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.NetworkOperatorEventMessageType;i4)");
10017}
10018#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10019#[repr(transparent)]
10020#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10021pub struct NetworkRegistrationState(pub i32);
10022impl NetworkRegistrationState {
10023 pub const None: Self = Self(0i32);
10024 pub const Deregistered: Self = Self(1i32);
10025 pub const Searching: Self = Self(2i32);
10026 pub const Home: Self = Self(3i32);
10027 pub const Roaming: Self = Self(4i32);
10028 pub const Partner: Self = Self(5i32);
10029 pub const Denied: Self = Self(6i32);
10030}
10031impl ::core::marker::Copy for NetworkRegistrationState {}
10032impl ::core::clone::Clone for NetworkRegistrationState {
10033 fn clone(&self) -> Self {
10034 *self
10035 }
10036}
10037impl ::core::default::Default for NetworkRegistrationState {
10038 fn default() -> Self {
10039 Self(0)
10040 }
10041}
10042impl ::windows::core::TypeKind for NetworkRegistrationState {
10043 type TypeKind = ::windows::core::CopyType;
10044}
10045impl ::core::fmt::Debug for NetworkRegistrationState {
10046 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10047 f.debug_tuple("NetworkRegistrationState").field(&self.0).finish()
10048 }
10049}
10050impl ::windows::core::RuntimeType for NetworkRegistrationState {
10051 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.NetworkRegistrationState;i4)");
10052}
10053#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10054#[repr(transparent)]
10055#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10056pub struct ProfileMediaType(pub i32);
10057impl ProfileMediaType {
10058 pub const Wlan: Self = Self(0i32);
10059 pub const Wwan: Self = Self(1i32);
10060}
10061impl ::core::marker::Copy for ProfileMediaType {}
10062impl ::core::clone::Clone for ProfileMediaType {
10063 fn clone(&self) -> Self {
10064 *self
10065 }
10066}
10067impl ::core::default::Default for ProfileMediaType {
10068 fn default() -> Self {
10069 Self(0)
10070 }
10071}
10072impl ::windows::core::TypeKind for ProfileMediaType {
10073 type TypeKind = ::windows::core::CopyType;
10074}
10075impl ::core::fmt::Debug for ProfileMediaType {
10076 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10077 f.debug_tuple("ProfileMediaType").field(&self.0).finish()
10078 }
10079}
10080impl ::windows::core::RuntimeType for ProfileMediaType {
10081 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.ProfileMediaType;i4)");
10082}
10083#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10084#[repr(transparent)]
10085#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10086pub struct TetheringCapability(pub i32);
10087impl TetheringCapability {
10088 pub const Enabled: Self = Self(0i32);
10089 pub const DisabledByGroupPolicy: Self = Self(1i32);
10090 pub const DisabledByHardwareLimitation: Self = Self(2i32);
10091 pub const DisabledByOperator: Self = Self(3i32);
10092 pub const DisabledBySku: Self = Self(4i32);
10093 pub const DisabledByRequiredAppNotInstalled: Self = Self(5i32);
10094 pub const DisabledDueToUnknownCause: Self = Self(6i32);
10095 pub const DisabledBySystemCapability: Self = Self(7i32);
10096}
10097impl ::core::marker::Copy for TetheringCapability {}
10098impl ::core::clone::Clone for TetheringCapability {
10099 fn clone(&self) -> Self {
10100 *self
10101 }
10102}
10103impl ::core::default::Default for TetheringCapability {
10104 fn default() -> Self {
10105 Self(0)
10106 }
10107}
10108impl ::windows::core::TypeKind for TetheringCapability {
10109 type TypeKind = ::windows::core::CopyType;
10110}
10111impl ::core::fmt::Debug for TetheringCapability {
10112 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10113 f.debug_tuple("TetheringCapability").field(&self.0).finish()
10114 }
10115}
10116impl ::windows::core::RuntimeType for TetheringCapability {
10117 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.TetheringCapability;i4)");
10118}
10119#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10120#[repr(transparent)]
10121#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10122pub struct TetheringOperationStatus(pub i32);
10123impl TetheringOperationStatus {
10124 pub const Success: Self = Self(0i32);
10125 pub const Unknown: Self = Self(1i32);
10126 pub const MobileBroadbandDeviceOff: Self = Self(2i32);
10127 pub const WiFiDeviceOff: Self = Self(3i32);
10128 pub const EntitlementCheckTimeout: Self = Self(4i32);
10129 pub const EntitlementCheckFailure: Self = Self(5i32);
10130 pub const OperationInProgress: Self = Self(6i32);
10131 pub const BluetoothDeviceOff: Self = Self(7i32);
10132 pub const NetworkLimitedConnectivity: Self = Self(8i32);
10133}
10134impl ::core::marker::Copy for TetheringOperationStatus {}
10135impl ::core::clone::Clone for TetheringOperationStatus {
10136 fn clone(&self) -> Self {
10137 *self
10138 }
10139}
10140impl ::core::default::Default for TetheringOperationStatus {
10141 fn default() -> Self {
10142 Self(0)
10143 }
10144}
10145impl ::windows::core::TypeKind for TetheringOperationStatus {
10146 type TypeKind = ::windows::core::CopyType;
10147}
10148impl ::core::fmt::Debug for TetheringOperationStatus {
10149 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10150 f.debug_tuple("TetheringOperationStatus").field(&self.0).finish()
10151 }
10152}
10153impl ::windows::core::RuntimeType for TetheringOperationStatus {
10154 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.TetheringOperationStatus;i4)");
10155}
10156#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10157#[repr(transparent)]
10158#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10159pub struct TetheringOperationalState(pub i32);
10160impl TetheringOperationalState {
10161 pub const Unknown: Self = Self(0i32);
10162 pub const On: Self = Self(1i32);
10163 pub const Off: Self = Self(2i32);
10164 pub const InTransition: Self = Self(3i32);
10165}
10166impl ::core::marker::Copy for TetheringOperationalState {}
10167impl ::core::clone::Clone for TetheringOperationalState {
10168 fn clone(&self) -> Self {
10169 *self
10170 }
10171}
10172impl ::core::default::Default for TetheringOperationalState {
10173 fn default() -> Self {
10174 Self(0)
10175 }
10176}
10177impl ::windows::core::TypeKind for TetheringOperationalState {
10178 type TypeKind = ::windows::core::CopyType;
10179}
10180impl ::core::fmt::Debug for TetheringOperationalState {
10181 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10182 f.debug_tuple("TetheringOperationalState").field(&self.0).finish()
10183 }
10184}
10185impl ::windows::core::RuntimeType for TetheringOperationalState {
10186 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.TetheringOperationalState;i4)");
10187}
10188#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10189#[repr(transparent)]
10190#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10191pub struct TetheringWiFiBand(pub i32);
10192impl TetheringWiFiBand {
10193 pub const Auto: Self = Self(0i32);
10194 pub const TwoPointFourGigahertz: Self = Self(1i32);
10195 pub const FiveGigahertz: Self = Self(2i32);
10196}
10197impl ::core::marker::Copy for TetheringWiFiBand {}
10198impl ::core::clone::Clone for TetheringWiFiBand {
10199 fn clone(&self) -> Self {
10200 *self
10201 }
10202}
10203impl ::core::default::Default for TetheringWiFiBand {
10204 fn default() -> Self {
10205 Self(0)
10206 }
10207}
10208impl ::windows::core::TypeKind for TetheringWiFiBand {
10209 type TypeKind = ::windows::core::CopyType;
10210}
10211impl ::core::fmt::Debug for TetheringWiFiBand {
10212 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10213 f.debug_tuple("TetheringWiFiBand").field(&self.0).finish()
10214 }
10215}
10216impl ::windows::core::RuntimeType for TetheringWiFiBand {
10217 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.TetheringWiFiBand;i4)");
10218}
10219#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10220#[repr(transparent)]
10221#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10222pub struct UiccAccessCondition(pub i32);
10223impl UiccAccessCondition {
10224 pub const AlwaysAllowed: Self = Self(0i32);
10225 pub const Pin1: Self = Self(1i32);
10226 pub const Pin2: Self = Self(2i32);
10227 pub const Pin3: Self = Self(3i32);
10228 pub const Pin4: Self = Self(4i32);
10229 pub const Administrative5: Self = Self(5i32);
10230 pub const Administrative6: Self = Self(6i32);
10231 pub const NeverAllowed: Self = Self(7i32);
10232}
10233impl ::core::marker::Copy for UiccAccessCondition {}
10234impl ::core::clone::Clone for UiccAccessCondition {
10235 fn clone(&self) -> Self {
10236 *self
10237 }
10238}
10239impl ::core::default::Default for UiccAccessCondition {
10240 fn default() -> Self {
10241 Self(0)
10242 }
10243}
10244impl ::windows::core::TypeKind for UiccAccessCondition {
10245 type TypeKind = ::windows::core::CopyType;
10246}
10247impl ::core::fmt::Debug for UiccAccessCondition {
10248 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10249 f.debug_tuple("UiccAccessCondition").field(&self.0).finish()
10250 }
10251}
10252impl ::windows::core::RuntimeType for UiccAccessCondition {
10253 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.UiccAccessCondition;i4)");
10254}
10255#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10256#[repr(transparent)]
10257#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10258pub struct UiccAppKind(pub i32);
10259impl UiccAppKind {
10260 pub const Unknown: Self = Self(0i32);
10261 pub const MF: Self = Self(1i32);
10262 pub const MFSim: Self = Self(2i32);
10263 pub const MFRuim: Self = Self(3i32);
10264 pub const USim: Self = Self(4i32);
10265 pub const CSim: Self = Self(5i32);
10266 pub const ISim: Self = Self(6i32);
10267}
10268impl ::core::marker::Copy for UiccAppKind {}
10269impl ::core::clone::Clone for UiccAppKind {
10270 fn clone(&self) -> Self {
10271 *self
10272 }
10273}
10274impl ::core::default::Default for UiccAppKind {
10275 fn default() -> Self {
10276 Self(0)
10277 }
10278}
10279impl ::windows::core::TypeKind for UiccAppKind {
10280 type TypeKind = ::windows::core::CopyType;
10281}
10282impl ::core::fmt::Debug for UiccAppKind {
10283 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10284 f.debug_tuple("UiccAppKind").field(&self.0).finish()
10285 }
10286}
10287impl ::windows::core::RuntimeType for UiccAppKind {
10288 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.UiccAppKind;i4)");
10289}
10290#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10291#[repr(transparent)]
10292#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10293pub struct UiccAppRecordKind(pub i32);
10294impl UiccAppRecordKind {
10295 pub const Unknown: Self = Self(0i32);
10296 pub const Transparent: Self = Self(1i32);
10297 pub const RecordOriented: Self = Self(2i32);
10298}
10299impl ::core::marker::Copy for UiccAppRecordKind {}
10300impl ::core::clone::Clone for UiccAppRecordKind {
10301 fn clone(&self) -> Self {
10302 *self
10303 }
10304}
10305impl ::core::default::Default for UiccAppRecordKind {
10306 fn default() -> Self {
10307 Self(0)
10308 }
10309}
10310impl ::windows::core::TypeKind for UiccAppRecordKind {
10311 type TypeKind = ::windows::core::CopyType;
10312}
10313impl ::core::fmt::Debug for UiccAppRecordKind {
10314 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10315 f.debug_tuple("UiccAppRecordKind").field(&self.0).finish()
10316 }
10317}
10318impl ::windows::core::RuntimeType for UiccAppRecordKind {
10319 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.UiccAppRecordKind;i4)");
10320}
10321#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10322#[repr(transparent)]
10323#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
10324pub struct UssdResultCode(pub i32);
10325impl UssdResultCode {
10326 pub const NoActionRequired: Self = Self(0i32);
10327 pub const ActionRequired: Self = Self(1i32);
10328 pub const Terminated: Self = Self(2i32);
10329 pub const OtherLocalClient: Self = Self(3i32);
10330 pub const OperationNotSupported: Self = Self(4i32);
10331 pub const NetworkTimeout: Self = Self(5i32);
10332}
10333impl ::core::marker::Copy for UssdResultCode {}
10334impl ::core::clone::Clone for UssdResultCode {
10335 fn clone(&self) -> Self {
10336 *self
10337 }
10338}
10339impl ::core::default::Default for UssdResultCode {
10340 fn default() -> Self {
10341 Self(0)
10342 }
10343}
10344impl ::windows::core::TypeKind for UssdResultCode {
10345 type TypeKind = ::windows::core::CopyType;
10346}
10347impl ::core::fmt::Debug for UssdResultCode {
10348 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10349 f.debug_tuple("UssdResultCode").field(&self.0).finish()
10350 }
10351}
10352impl ::windows::core::RuntimeType for UssdResultCode {
10353 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Networking.NetworkOperators.UssdResultCode;i4)");
10354}
10355#[repr(C)]
10356#[doc = "*Required features: `\"Networking_NetworkOperators\"`*"]
10357pub struct ESimProfileInstallProgress {
10358 pub TotalSizeInBytes: i32,
10359 pub InstalledSizeInBytes: i32,
10360}
10361impl ::core::marker::Copy for ESimProfileInstallProgress {}
10362impl ::core::clone::Clone for ESimProfileInstallProgress {
10363 fn clone(&self) -> Self {
10364 *self
10365 }
10366}
10367impl ::core::fmt::Debug for ESimProfileInstallProgress {
10368 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10369 f.debug_struct("ESimProfileInstallProgress").field("TotalSizeInBytes", &self.TotalSizeInBytes).field("InstalledSizeInBytes", &self.InstalledSizeInBytes).finish()
10370 }
10371}
10372impl ::windows::core::TypeKind for ESimProfileInstallProgress {
10373 type TypeKind = ::windows::core::CopyType;
10374}
10375impl ::windows::core::RuntimeType for ESimProfileInstallProgress {
10376 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"struct(Windows.Networking.NetworkOperators.ESimProfileInstallProgress;i4;i4)");
10377}
10378impl ::core::cmp::PartialEq for ESimProfileInstallProgress {
10379 fn eq(&self, other: &Self) -> bool {
10380 self.TotalSizeInBytes == other.TotalSizeInBytes && self.InstalledSizeInBytes == other.InstalledSizeInBytes
10381 }
10382}
10383impl ::core::cmp::Eq for ESimProfileInstallProgress {}
10384impl ::core::default::Default for ESimProfileInstallProgress {
10385 fn default() -> Self {
10386 unsafe { ::core::mem::zeroed() }
10387 }
10388}
10389#[repr(C)]
10390#[doc = "*Required features: `\"Networking_NetworkOperators\"`, `\"Foundation\"`*"]
10391#[cfg(feature = "Foundation")]
10392pub struct ProfileUsage {
10393 pub UsageInMegabytes: u32,
10394 pub LastSyncTime: super::super::Foundation::DateTime,
10395}
10396#[cfg(feature = "Foundation")]
10397impl ::core::marker::Copy for ProfileUsage {}
10398#[cfg(feature = "Foundation")]
10399impl ::core::clone::Clone for ProfileUsage {
10400 fn clone(&self) -> Self {
10401 *self
10402 }
10403}
10404#[cfg(feature = "Foundation")]
10405impl ::core::fmt::Debug for ProfileUsage {
10406 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10407 f.debug_struct("ProfileUsage").field("UsageInMegabytes", &self.UsageInMegabytes).field("LastSyncTime", &self.LastSyncTime).finish()
10408 }
10409}
10410#[cfg(feature = "Foundation")]
10411impl ::windows::core::TypeKind for ProfileUsage {
10412 type TypeKind = ::windows::core::CopyType;
10413}
10414#[cfg(feature = "Foundation")]
10415impl ::windows::core::RuntimeType for ProfileUsage {
10416 const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"struct(Windows.Networking.NetworkOperators.ProfileUsage;u4;struct(Windows.Foundation.DateTime;i8))");
10417}
10418#[cfg(feature = "Foundation")]
10419impl ::core::cmp::PartialEq for ProfileUsage {
10420 fn eq(&self, other: &Self) -> bool {
10421 self.UsageInMegabytes == other.UsageInMegabytes && self.LastSyncTime == other.LastSyncTime
10422 }
10423}
10424#[cfg(feature = "Foundation")]
10425impl ::core::cmp::Eq for ProfileUsage {}
10426#[cfg(feature = "Foundation")]
10427impl ::core::default::Default for ProfileUsage {
10428 fn default() -> Self {
10429 unsafe { ::core::mem::zeroed() }
10430 }
10431}
10432#[cfg(feature = "implement")]
10433::core::include!("impl.rs");