]> git.proxmox.com Git - rustc.git/blame - vendor/windows/src/Windows/Win32/NetworkManagement/MobileBroadband/mod.rs
New upstream version 1.70.0+dfsg1
[rustc.git] / vendor / windows / src / Windows / Win32 / NetworkManagement / MobileBroadband / mod.rs
CommitLineData
353b0b11
FG
1#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`, `\"Win32_System_Com\"`*"]
2#[cfg(feature = "Win32_System_Com")]
3#[repr(transparent)]
4pub struct IDummyMBNUCMExt(::windows::core::IUnknown);
5#[cfg(feature = "Win32_System_Com")]
6impl IDummyMBNUCMExt {}
7#[cfg(feature = "Win32_System_Com")]
8::windows::imp::interface_hierarchy!(IDummyMBNUCMExt, ::windows::core::IUnknown, super::super::System::Com::IDispatch);
9#[cfg(feature = "Win32_System_Com")]
10impl ::core::cmp::PartialEq for IDummyMBNUCMExt {
11 fn eq(&self, other: &Self) -> bool {
12 self.0 == other.0
13 }
14}
15#[cfg(feature = "Win32_System_Com")]
16impl ::core::cmp::Eq for IDummyMBNUCMExt {}
17#[cfg(feature = "Win32_System_Com")]
18impl ::core::fmt::Debug for IDummyMBNUCMExt {
19 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
20 f.debug_tuple("IDummyMBNUCMExt").field(&self.0).finish()
21 }
22}
23#[cfg(feature = "Win32_System_Com")]
24unsafe impl ::windows::core::Interface for IDummyMBNUCMExt {
25 type Vtable = IDummyMBNUCMExt_Vtbl;
26}
27#[cfg(feature = "Win32_System_Com")]
28impl ::core::clone::Clone for IDummyMBNUCMExt {
29 fn clone(&self) -> Self {
30 Self(self.0.clone())
31 }
32}
33#[cfg(feature = "Win32_System_Com")]
34unsafe impl ::windows::core::ComInterface for IDummyMBNUCMExt {
35 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_ffff_4bbb_aaee_338e368af6fa);
36}
37#[cfg(feature = "Win32_System_Com")]
38#[repr(C)]
39#[doc(hidden)]
40pub struct IDummyMBNUCMExt_Vtbl {
41 pub base__: super::super::System::Com::IDispatch_Vtbl,
42}
43#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
44#[repr(transparent)]
45pub struct IMbnConnection(::windows::core::IUnknown);
46impl IMbnConnection {
47 pub unsafe fn ConnectionID(&self) -> ::windows::core::Result<::windows::core::BSTR> {
48 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
49 (::windows::core::Interface::vtable(self).ConnectionID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
50 }
51 pub unsafe fn InterfaceID(&self) -> ::windows::core::Result<::windows::core::BSTR> {
52 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
53 (::windows::core::Interface::vtable(self).InterfaceID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
54 }
55 pub unsafe fn Connect<P0>(&self, connectionmode: MBN_CONNECTION_MODE, strprofile: P0) -> ::windows::core::Result<u32>
56 where
57 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
58 {
59 let mut result__ = ::windows::core::zeroed::<u32>();
60 (::windows::core::Interface::vtable(self).Connect)(::windows::core::Interface::as_raw(self), connectionmode, strprofile.into_param().abi(), &mut result__).from_abi(result__)
61 }
62 pub unsafe fn Disconnect(&self) -> ::windows::core::Result<u32> {
63 let mut result__ = ::windows::core::zeroed::<u32>();
64 (::windows::core::Interface::vtable(self).Disconnect)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
65 }
66 pub unsafe fn GetConnectionState(&self, connectionstate: *mut MBN_ACTIVATION_STATE, profilename: *mut ::windows::core::BSTR) -> ::windows::core::Result<()> {
67 (::windows::core::Interface::vtable(self).GetConnectionState)(::windows::core::Interface::as_raw(self), connectionstate, ::core::mem::transmute(profilename)).ok()
68 }
69 pub unsafe fn GetVoiceCallState(&self) -> ::windows::core::Result<MBN_VOICE_CALL_STATE> {
70 let mut result__ = ::windows::core::zeroed::<MBN_VOICE_CALL_STATE>();
71 (::windows::core::Interface::vtable(self).GetVoiceCallState)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
72 }
73 pub unsafe fn GetActivationNetworkError(&self) -> ::windows::core::Result<u32> {
74 let mut result__ = ::windows::core::zeroed::<u32>();
75 (::windows::core::Interface::vtable(self).GetActivationNetworkError)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
76 }
77}
78::windows::imp::interface_hierarchy!(IMbnConnection, ::windows::core::IUnknown);
79impl ::core::cmp::PartialEq for IMbnConnection {
80 fn eq(&self, other: &Self) -> bool {
81 self.0 == other.0
82 }
83}
84impl ::core::cmp::Eq for IMbnConnection {}
85impl ::core::fmt::Debug for IMbnConnection {
86 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
87 f.debug_tuple("IMbnConnection").field(&self.0).finish()
88 }
89}
90unsafe impl ::windows::core::Interface for IMbnConnection {
91 type Vtable = IMbnConnection_Vtbl;
92}
93impl ::core::clone::Clone for IMbnConnection {
94 fn clone(&self) -> Self {
95 Self(self.0.clone())
96 }
97}
98unsafe impl ::windows::core::ComInterface for IMbnConnection {
99 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_200d_4bbb_aaee_338e368af6fa);
100}
101#[repr(C)]
102#[doc(hidden)]
103pub struct IMbnConnection_Vtbl {
104 pub base__: ::windows::core::IUnknown_Vtbl,
105 pub ConnectionID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, connectionid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
106 pub InterfaceID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, interfaceid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
107 pub Connect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, connectionmode: MBN_CONNECTION_MODE, strprofile: ::windows::core::PCWSTR, requestid: *mut u32) -> ::windows::core::HRESULT,
108 pub Disconnect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
109 pub GetConnectionState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, connectionstate: *mut MBN_ACTIVATION_STATE, profilename: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
110 pub GetVoiceCallState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, voicecallstate: *mut MBN_VOICE_CALL_STATE) -> ::windows::core::HRESULT,
111 pub GetActivationNetworkError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, networkerror: *mut u32) -> ::windows::core::HRESULT,
112}
113#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
114#[repr(transparent)]
115pub struct IMbnConnectionContext(::windows::core::IUnknown);
116impl IMbnConnectionContext {
117 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
118 #[cfg(feature = "Win32_System_Com")]
119 pub unsafe fn GetProvisionedContexts(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
120 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
121 (::windows::core::Interface::vtable(self).GetProvisionedContexts)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
122 }
123 pub unsafe fn SetProvisionedContext<P0>(&self, provisionedcontexts: MBN_CONTEXT, providerid: P0) -> ::windows::core::Result<u32>
124 where
125 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
126 {
127 let mut result__ = ::windows::core::zeroed::<u32>();
128 (::windows::core::Interface::vtable(self).SetProvisionedContext)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(provisionedcontexts), providerid.into_param().abi(), &mut result__).from_abi(result__)
129 }
130}
131::windows::imp::interface_hierarchy!(IMbnConnectionContext, ::windows::core::IUnknown);
132impl ::core::cmp::PartialEq for IMbnConnectionContext {
133 fn eq(&self, other: &Self) -> bool {
134 self.0 == other.0
135 }
136}
137impl ::core::cmp::Eq for IMbnConnectionContext {}
138impl ::core::fmt::Debug for IMbnConnectionContext {
139 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
140 f.debug_tuple("IMbnConnectionContext").field(&self.0).finish()
141 }
142}
143unsafe impl ::windows::core::Interface for IMbnConnectionContext {
144 type Vtable = IMbnConnectionContext_Vtbl;
145}
146impl ::core::clone::Clone for IMbnConnectionContext {
147 fn clone(&self) -> Self {
148 Self(self.0.clone())
149 }
150}
151unsafe impl ::windows::core::ComInterface for IMbnConnectionContext {
152 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_200b_4bbb_aaee_338e368af6fa);
153}
154#[repr(C)]
155#[doc(hidden)]
156pub struct IMbnConnectionContext_Vtbl {
157 pub base__: ::windows::core::IUnknown_Vtbl,
158 #[cfg(feature = "Win32_System_Com")]
159 pub GetProvisionedContexts: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, provisionedcontexts: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
160 #[cfg(not(feature = "Win32_System_Com"))]
161 GetProvisionedContexts: usize,
162 pub SetProvisionedContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, provisionedcontexts: MBN_CONTEXT, providerid: ::windows::core::PCWSTR, requestid: *mut u32) -> ::windows::core::HRESULT,
163}
164#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
165#[repr(transparent)]
166pub struct IMbnConnectionContextEvents(::windows::core::IUnknown);
167impl IMbnConnectionContextEvents {
168 pub unsafe fn OnProvisionedContextListChange<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
169 where
170 P0: ::windows::core::IntoParam<IMbnConnectionContext>,
171 {
172 (::windows::core::Interface::vtable(self).OnProvisionedContextListChange)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
173 }
174 pub unsafe fn OnSetProvisionedContextComplete<P0>(&self, newinterface: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
175 where
176 P0: ::windows::core::IntoParam<IMbnConnectionContext>,
177 {
178 (::windows::core::Interface::vtable(self).OnSetProvisionedContextComplete)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi(), requestid, status).ok()
179 }
180}
181::windows::imp::interface_hierarchy!(IMbnConnectionContextEvents, ::windows::core::IUnknown);
182impl ::core::cmp::PartialEq for IMbnConnectionContextEvents {
183 fn eq(&self, other: &Self) -> bool {
184 self.0 == other.0
185 }
186}
187impl ::core::cmp::Eq for IMbnConnectionContextEvents {}
188impl ::core::fmt::Debug for IMbnConnectionContextEvents {
189 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
190 f.debug_tuple("IMbnConnectionContextEvents").field(&self.0).finish()
191 }
192}
193unsafe impl ::windows::core::Interface for IMbnConnectionContextEvents {
194 type Vtable = IMbnConnectionContextEvents_Vtbl;
195}
196impl ::core::clone::Clone for IMbnConnectionContextEvents {
197 fn clone(&self) -> Self {
198 Self(self.0.clone())
199 }
200}
201unsafe impl ::windows::core::ComInterface for IMbnConnectionContextEvents {
202 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_200c_4bbb_aaee_338e368af6fa);
203}
204#[repr(C)]
205#[doc(hidden)]
206pub struct IMbnConnectionContextEvents_Vtbl {
207 pub base__: ::windows::core::IUnknown_Vtbl,
208 pub OnProvisionedContextListChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
209 pub OnSetProvisionedContextComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
210}
211#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
212#[repr(transparent)]
213pub struct IMbnConnectionEvents(::windows::core::IUnknown);
214impl IMbnConnectionEvents {
215 pub unsafe fn OnConnectComplete<P0>(&self, newconnection: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
216 where
217 P0: ::windows::core::IntoParam<IMbnConnection>,
218 {
219 (::windows::core::Interface::vtable(self).OnConnectComplete)(::windows::core::Interface::as_raw(self), newconnection.into_param().abi(), requestid, status).ok()
220 }
221 pub unsafe fn OnDisconnectComplete<P0>(&self, newconnection: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
222 where
223 P0: ::windows::core::IntoParam<IMbnConnection>,
224 {
225 (::windows::core::Interface::vtable(self).OnDisconnectComplete)(::windows::core::Interface::as_raw(self), newconnection.into_param().abi(), requestid, status).ok()
226 }
227 pub unsafe fn OnConnectStateChange<P0>(&self, newconnection: P0) -> ::windows::core::Result<()>
228 where
229 P0: ::windows::core::IntoParam<IMbnConnection>,
230 {
231 (::windows::core::Interface::vtable(self).OnConnectStateChange)(::windows::core::Interface::as_raw(self), newconnection.into_param().abi()).ok()
232 }
233 pub unsafe fn OnVoiceCallStateChange<P0>(&self, newconnection: P0) -> ::windows::core::Result<()>
234 where
235 P0: ::windows::core::IntoParam<IMbnConnection>,
236 {
237 (::windows::core::Interface::vtable(self).OnVoiceCallStateChange)(::windows::core::Interface::as_raw(self), newconnection.into_param().abi()).ok()
238 }
239}
240::windows::imp::interface_hierarchy!(IMbnConnectionEvents, ::windows::core::IUnknown);
241impl ::core::cmp::PartialEq for IMbnConnectionEvents {
242 fn eq(&self, other: &Self) -> bool {
243 self.0 == other.0
244 }
245}
246impl ::core::cmp::Eq for IMbnConnectionEvents {}
247impl ::core::fmt::Debug for IMbnConnectionEvents {
248 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
249 f.debug_tuple("IMbnConnectionEvents").field(&self.0).finish()
250 }
251}
252unsafe impl ::windows::core::Interface for IMbnConnectionEvents {
253 type Vtable = IMbnConnectionEvents_Vtbl;
254}
255impl ::core::clone::Clone for IMbnConnectionEvents {
256 fn clone(&self) -> Self {
257 Self(self.0.clone())
258 }
259}
260unsafe impl ::windows::core::ComInterface for IMbnConnectionEvents {
261 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_200e_4bbb_aaee_338e368af6fa);
262}
263#[repr(C)]
264#[doc(hidden)]
265pub struct IMbnConnectionEvents_Vtbl {
266 pub base__: ::windows::core::IUnknown_Vtbl,
267 pub OnConnectComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newconnection: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
268 pub OnDisconnectComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newconnection: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
269 pub OnConnectStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newconnection: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
270 pub OnVoiceCallStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newconnection: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
271}
272#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
273#[repr(transparent)]
274pub struct IMbnConnectionManager(::windows::core::IUnknown);
275impl IMbnConnectionManager {
276 pub unsafe fn GetConnection<P0>(&self, connectionid: P0) -> ::windows::core::Result<IMbnConnection>
277 where
278 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
279 {
280 let mut result__ = ::windows::core::zeroed::<IMbnConnection>();
281 (::windows::core::Interface::vtable(self).GetConnection)(::windows::core::Interface::as_raw(self), connectionid.into_param().abi(), &mut result__).from_abi(result__)
282 }
283 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
284 #[cfg(feature = "Win32_System_Com")]
285 pub unsafe fn GetConnections(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
286 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
287 (::windows::core::Interface::vtable(self).GetConnections)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
288 }
289}
290::windows::imp::interface_hierarchy!(IMbnConnectionManager, ::windows::core::IUnknown);
291impl ::core::cmp::PartialEq for IMbnConnectionManager {
292 fn eq(&self, other: &Self) -> bool {
293 self.0 == other.0
294 }
295}
296impl ::core::cmp::Eq for IMbnConnectionManager {}
297impl ::core::fmt::Debug for IMbnConnectionManager {
298 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
299 f.debug_tuple("IMbnConnectionManager").field(&self.0).finish()
300 }
301}
302unsafe impl ::windows::core::Interface for IMbnConnectionManager {
303 type Vtable = IMbnConnectionManager_Vtbl;
304}
305impl ::core::clone::Clone for IMbnConnectionManager {
306 fn clone(&self) -> Self {
307 Self(self.0.clone())
308 }
309}
310unsafe impl ::windows::core::ComInterface for IMbnConnectionManager {
311 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_201d_4bbb_aaee_338e368af6fa);
312}
313#[repr(C)]
314#[doc(hidden)]
315pub struct IMbnConnectionManager_Vtbl {
316 pub base__: ::windows::core::IUnknown_Vtbl,
317 pub GetConnection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, connectionid: ::windows::core::PCWSTR, mbnconnection: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
318 #[cfg(feature = "Win32_System_Com")]
319 pub GetConnections: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbnconnections: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
320 #[cfg(not(feature = "Win32_System_Com"))]
321 GetConnections: usize,
322}
323#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
324#[repr(transparent)]
325pub struct IMbnConnectionManagerEvents(::windows::core::IUnknown);
326impl IMbnConnectionManagerEvents {
327 pub unsafe fn OnConnectionArrival<P0>(&self, newconnection: P0) -> ::windows::core::Result<()>
328 where
329 P0: ::windows::core::IntoParam<IMbnConnection>,
330 {
331 (::windows::core::Interface::vtable(self).OnConnectionArrival)(::windows::core::Interface::as_raw(self), newconnection.into_param().abi()).ok()
332 }
333 pub unsafe fn OnConnectionRemoval<P0>(&self, oldconnection: P0) -> ::windows::core::Result<()>
334 where
335 P0: ::windows::core::IntoParam<IMbnConnection>,
336 {
337 (::windows::core::Interface::vtable(self).OnConnectionRemoval)(::windows::core::Interface::as_raw(self), oldconnection.into_param().abi()).ok()
338 }
339}
340::windows::imp::interface_hierarchy!(IMbnConnectionManagerEvents, ::windows::core::IUnknown);
341impl ::core::cmp::PartialEq for IMbnConnectionManagerEvents {
342 fn eq(&self, other: &Self) -> bool {
343 self.0 == other.0
344 }
345}
346impl ::core::cmp::Eq for IMbnConnectionManagerEvents {}
347impl ::core::fmt::Debug for IMbnConnectionManagerEvents {
348 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
349 f.debug_tuple("IMbnConnectionManagerEvents").field(&self.0).finish()
350 }
351}
352unsafe impl ::windows::core::Interface for IMbnConnectionManagerEvents {
353 type Vtable = IMbnConnectionManagerEvents_Vtbl;
354}
355impl ::core::clone::Clone for IMbnConnectionManagerEvents {
356 fn clone(&self) -> Self {
357 Self(self.0.clone())
358 }
359}
360unsafe impl ::windows::core::ComInterface for IMbnConnectionManagerEvents {
361 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_201e_4bbb_aaee_338e368af6fa);
362}
363#[repr(C)]
364#[doc(hidden)]
365pub struct IMbnConnectionManagerEvents_Vtbl {
366 pub base__: ::windows::core::IUnknown_Vtbl,
367 pub OnConnectionArrival: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newconnection: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
368 pub OnConnectionRemoval: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, oldconnection: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
369}
370#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
371#[repr(transparent)]
372pub struct IMbnConnectionProfile(::windows::core::IUnknown);
373impl IMbnConnectionProfile {
374 pub unsafe fn GetProfileXmlData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
375 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
376 (::windows::core::Interface::vtable(self).GetProfileXmlData)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
377 }
378 pub unsafe fn UpdateProfile<P0>(&self, strprofile: P0) -> ::windows::core::Result<()>
379 where
380 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
381 {
382 (::windows::core::Interface::vtable(self).UpdateProfile)(::windows::core::Interface::as_raw(self), strprofile.into_param().abi()).ok()
383 }
384 pub unsafe fn Delete(&self) -> ::windows::core::Result<()> {
385 (::windows::core::Interface::vtable(self).Delete)(::windows::core::Interface::as_raw(self)).ok()
386 }
387}
388::windows::imp::interface_hierarchy!(IMbnConnectionProfile, ::windows::core::IUnknown);
389impl ::core::cmp::PartialEq for IMbnConnectionProfile {
390 fn eq(&self, other: &Self) -> bool {
391 self.0 == other.0
392 }
393}
394impl ::core::cmp::Eq for IMbnConnectionProfile {}
395impl ::core::fmt::Debug for IMbnConnectionProfile {
396 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
397 f.debug_tuple("IMbnConnectionProfile").field(&self.0).finish()
398 }
399}
400unsafe impl ::windows::core::Interface for IMbnConnectionProfile {
401 type Vtable = IMbnConnectionProfile_Vtbl;
402}
403impl ::core::clone::Clone for IMbnConnectionProfile {
404 fn clone(&self) -> Self {
405 Self(self.0.clone())
406 }
407}
408unsafe impl ::windows::core::ComInterface for IMbnConnectionProfile {
409 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2010_4bbb_aaee_338e368af6fa);
410}
411#[repr(C)]
412#[doc(hidden)]
413pub struct IMbnConnectionProfile_Vtbl {
414 pub base__: ::windows::core::IUnknown_Vtbl,
415 pub GetProfileXmlData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, profiledata: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
416 pub UpdateProfile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, strprofile: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
417 pub Delete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
418}
419#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
420#[repr(transparent)]
421pub struct IMbnConnectionProfileEvents(::windows::core::IUnknown);
422impl IMbnConnectionProfileEvents {
423 pub unsafe fn OnProfileUpdate<P0>(&self, newprofile: P0) -> ::windows::core::Result<()>
424 where
425 P0: ::windows::core::IntoParam<IMbnConnectionProfile>,
426 {
427 (::windows::core::Interface::vtable(self).OnProfileUpdate)(::windows::core::Interface::as_raw(self), newprofile.into_param().abi()).ok()
428 }
429}
430::windows::imp::interface_hierarchy!(IMbnConnectionProfileEvents, ::windows::core::IUnknown);
431impl ::core::cmp::PartialEq for IMbnConnectionProfileEvents {
432 fn eq(&self, other: &Self) -> bool {
433 self.0 == other.0
434 }
435}
436impl ::core::cmp::Eq for IMbnConnectionProfileEvents {}
437impl ::core::fmt::Debug for IMbnConnectionProfileEvents {
438 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
439 f.debug_tuple("IMbnConnectionProfileEvents").field(&self.0).finish()
440 }
441}
442unsafe impl ::windows::core::Interface for IMbnConnectionProfileEvents {
443 type Vtable = IMbnConnectionProfileEvents_Vtbl;
444}
445impl ::core::clone::Clone for IMbnConnectionProfileEvents {
446 fn clone(&self) -> Self {
447 Self(self.0.clone())
448 }
449}
450unsafe impl ::windows::core::ComInterface for IMbnConnectionProfileEvents {
451 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2011_4bbb_aaee_338e368af6fa);
452}
453#[repr(C)]
454#[doc(hidden)]
455pub struct IMbnConnectionProfileEvents_Vtbl {
456 pub base__: ::windows::core::IUnknown_Vtbl,
457 pub OnProfileUpdate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newprofile: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
458}
459#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
460#[repr(transparent)]
461pub struct IMbnConnectionProfileManager(::windows::core::IUnknown);
462impl IMbnConnectionProfileManager {
463 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
464 #[cfg(feature = "Win32_System_Com")]
465 pub unsafe fn GetConnectionProfiles<P0>(&self, mbninterface: P0) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY>
466 where
467 P0: ::windows::core::IntoParam<IMbnInterface>,
468 {
469 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
470 (::windows::core::Interface::vtable(self).GetConnectionProfiles)(::windows::core::Interface::as_raw(self), mbninterface.into_param().abi(), &mut result__).from_abi(result__)
471 }
472 pub unsafe fn GetConnectionProfile<P0, P1>(&self, mbninterface: P0, profilename: P1) -> ::windows::core::Result<IMbnConnectionProfile>
473 where
474 P0: ::windows::core::IntoParam<IMbnInterface>,
475 P1: ::windows::core::IntoParam<::windows::core::PCWSTR>,
476 {
477 let mut result__ = ::windows::core::zeroed::<IMbnConnectionProfile>();
478 (::windows::core::Interface::vtable(self).GetConnectionProfile)(::windows::core::Interface::as_raw(self), mbninterface.into_param().abi(), profilename.into_param().abi(), &mut result__).from_abi(result__)
479 }
480 pub unsafe fn CreateConnectionProfile<P0>(&self, xmlprofile: P0) -> ::windows::core::Result<()>
481 where
482 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
483 {
484 (::windows::core::Interface::vtable(self).CreateConnectionProfile)(::windows::core::Interface::as_raw(self), xmlprofile.into_param().abi()).ok()
485 }
486}
487::windows::imp::interface_hierarchy!(IMbnConnectionProfileManager, ::windows::core::IUnknown);
488impl ::core::cmp::PartialEq for IMbnConnectionProfileManager {
489 fn eq(&self, other: &Self) -> bool {
490 self.0 == other.0
491 }
492}
493impl ::core::cmp::Eq for IMbnConnectionProfileManager {}
494impl ::core::fmt::Debug for IMbnConnectionProfileManager {
495 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
496 f.debug_tuple("IMbnConnectionProfileManager").field(&self.0).finish()
497 }
498}
499unsafe impl ::windows::core::Interface for IMbnConnectionProfileManager {
500 type Vtable = IMbnConnectionProfileManager_Vtbl;
501}
502impl ::core::clone::Clone for IMbnConnectionProfileManager {
503 fn clone(&self) -> Self {
504 Self(self.0.clone())
505 }
506}
507unsafe impl ::windows::core::ComInterface for IMbnConnectionProfileManager {
508 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_200f_4bbb_aaee_338e368af6fa);
509}
510#[repr(C)]
511#[doc(hidden)]
512pub struct IMbnConnectionProfileManager_Vtbl {
513 pub base__: ::windows::core::IUnknown_Vtbl,
514 #[cfg(feature = "Win32_System_Com")]
515 pub GetConnectionProfiles: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbninterface: *mut ::core::ffi::c_void, connectionprofiles: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
516 #[cfg(not(feature = "Win32_System_Com"))]
517 GetConnectionProfiles: usize,
518 pub GetConnectionProfile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbninterface: *mut ::core::ffi::c_void, profilename: ::windows::core::PCWSTR, connectionprofile: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
519 pub CreateConnectionProfile: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, xmlprofile: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
520}
521#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
522#[repr(transparent)]
523pub struct IMbnConnectionProfileManagerEvents(::windows::core::IUnknown);
524impl IMbnConnectionProfileManagerEvents {
525 pub unsafe fn OnConnectionProfileArrival<P0>(&self, newconnectionprofile: P0) -> ::windows::core::Result<()>
526 where
527 P0: ::windows::core::IntoParam<IMbnConnectionProfile>,
528 {
529 (::windows::core::Interface::vtable(self).OnConnectionProfileArrival)(::windows::core::Interface::as_raw(self), newconnectionprofile.into_param().abi()).ok()
530 }
531 pub unsafe fn OnConnectionProfileRemoval<P0>(&self, oldconnectionprofile: P0) -> ::windows::core::Result<()>
532 where
533 P0: ::windows::core::IntoParam<IMbnConnectionProfile>,
534 {
535 (::windows::core::Interface::vtable(self).OnConnectionProfileRemoval)(::windows::core::Interface::as_raw(self), oldconnectionprofile.into_param().abi()).ok()
536 }
537}
538::windows::imp::interface_hierarchy!(IMbnConnectionProfileManagerEvents, ::windows::core::IUnknown);
539impl ::core::cmp::PartialEq for IMbnConnectionProfileManagerEvents {
540 fn eq(&self, other: &Self) -> bool {
541 self.0 == other.0
542 }
543}
544impl ::core::cmp::Eq for IMbnConnectionProfileManagerEvents {}
545impl ::core::fmt::Debug for IMbnConnectionProfileManagerEvents {
546 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
547 f.debug_tuple("IMbnConnectionProfileManagerEvents").field(&self.0).finish()
548 }
549}
550unsafe impl ::windows::core::Interface for IMbnConnectionProfileManagerEvents {
551 type Vtable = IMbnConnectionProfileManagerEvents_Vtbl;
552}
553impl ::core::clone::Clone for IMbnConnectionProfileManagerEvents {
554 fn clone(&self) -> Self {
555 Self(self.0.clone())
556 }
557}
558unsafe impl ::windows::core::ComInterface for IMbnConnectionProfileManagerEvents {
559 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_201f_4bbb_aaee_338e368af6fa);
560}
561#[repr(C)]
562#[doc(hidden)]
563pub struct IMbnConnectionProfileManagerEvents_Vtbl {
564 pub base__: ::windows::core::IUnknown_Vtbl,
565 pub OnConnectionProfileArrival: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newconnectionprofile: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
566 pub OnConnectionProfileRemoval: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, oldconnectionprofile: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
567}
568#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
569#[repr(transparent)]
570pub struct IMbnDeviceService(::windows::core::IUnknown);
571impl IMbnDeviceService {
572 pub unsafe fn QuerySupportedCommands(&self) -> ::windows::core::Result<u32> {
573 let mut result__ = ::windows::core::zeroed::<u32>();
574 (::windows::core::Interface::vtable(self).QuerySupportedCommands)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
575 }
576 pub unsafe fn OpenCommandSession(&self) -> ::windows::core::Result<u32> {
577 let mut result__ = ::windows::core::zeroed::<u32>();
578 (::windows::core::Interface::vtable(self).OpenCommandSession)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
579 }
580 pub unsafe fn CloseCommandSession(&self) -> ::windows::core::Result<u32> {
581 let mut result__ = ::windows::core::zeroed::<u32>();
582 (::windows::core::Interface::vtable(self).CloseCommandSession)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
583 }
584 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
585 #[cfg(feature = "Win32_System_Com")]
586 pub unsafe fn SetCommand(&self, commandid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<u32> {
587 let mut result__ = ::windows::core::zeroed::<u32>();
588 (::windows::core::Interface::vtable(self).SetCommand)(::windows::core::Interface::as_raw(self), commandid, deviceservicedata, &mut result__).from_abi(result__)
589 }
590 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
591 #[cfg(feature = "Win32_System_Com")]
592 pub unsafe fn QueryCommand(&self, commandid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<u32> {
593 let mut result__ = ::windows::core::zeroed::<u32>();
594 (::windows::core::Interface::vtable(self).QueryCommand)(::windows::core::Interface::as_raw(self), commandid, deviceservicedata, &mut result__).from_abi(result__)
595 }
596 pub unsafe fn OpenDataSession(&self) -> ::windows::core::Result<u32> {
597 let mut result__ = ::windows::core::zeroed::<u32>();
598 (::windows::core::Interface::vtable(self).OpenDataSession)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
599 }
600 pub unsafe fn CloseDataSession(&self) -> ::windows::core::Result<u32> {
601 let mut result__ = ::windows::core::zeroed::<u32>();
602 (::windows::core::Interface::vtable(self).CloseDataSession)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
603 }
604 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
605 #[cfg(feature = "Win32_System_Com")]
606 pub unsafe fn WriteData(&self, deviceservicedata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<u32> {
607 let mut result__ = ::windows::core::zeroed::<u32>();
608 (::windows::core::Interface::vtable(self).WriteData)(::windows::core::Interface::as_raw(self), deviceservicedata, &mut result__).from_abi(result__)
609 }
610 pub unsafe fn InterfaceID(&self) -> ::windows::core::Result<::windows::core::BSTR> {
611 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
612 (::windows::core::Interface::vtable(self).InterfaceID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
613 }
614 pub unsafe fn DeviceServiceID(&self) -> ::windows::core::Result<::windows::core::BSTR> {
615 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
616 (::windows::core::Interface::vtable(self).DeviceServiceID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
617 }
618 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
619 #[cfg(feature = "Win32_Foundation")]
620 pub unsafe fn IsCommandSessionOpen(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
621 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::BOOL>();
622 (::windows::core::Interface::vtable(self).IsCommandSessionOpen)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
623 }
624 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
625 #[cfg(feature = "Win32_Foundation")]
626 pub unsafe fn IsDataSessionOpen(&self) -> ::windows::core::Result<super::super::Foundation::BOOL> {
627 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::BOOL>();
628 (::windows::core::Interface::vtable(self).IsDataSessionOpen)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
629 }
630}
631::windows::imp::interface_hierarchy!(IMbnDeviceService, ::windows::core::IUnknown);
632impl ::core::cmp::PartialEq for IMbnDeviceService {
633 fn eq(&self, other: &Self) -> bool {
634 self.0 == other.0
635 }
636}
637impl ::core::cmp::Eq for IMbnDeviceService {}
638impl ::core::fmt::Debug for IMbnDeviceService {
639 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
640 f.debug_tuple("IMbnDeviceService").field(&self.0).finish()
641 }
642}
643unsafe impl ::windows::core::Interface for IMbnDeviceService {
644 type Vtable = IMbnDeviceService_Vtbl;
645}
646impl ::core::clone::Clone for IMbnDeviceService {
647 fn clone(&self) -> Self {
648 Self(self.0.clone())
649 }
650}
651unsafe impl ::windows::core::ComInterface for IMbnDeviceService {
652 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb3bb9a71_dc70_4be9_a4da_7886ae8b191b);
653}
654#[repr(C)]
655#[doc(hidden)]
656pub struct IMbnDeviceService_Vtbl {
657 pub base__: ::windows::core::IUnknown_Vtbl,
658 pub QuerySupportedCommands: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
659 pub OpenCommandSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
660 pub CloseCommandSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
661 #[cfg(feature = "Win32_System_Com")]
662 pub SetCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, commandid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY, requestid: *mut u32) -> ::windows::core::HRESULT,
663 #[cfg(not(feature = "Win32_System_Com"))]
664 SetCommand: usize,
665 #[cfg(feature = "Win32_System_Com")]
666 pub QueryCommand: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, commandid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY, requestid: *mut u32) -> ::windows::core::HRESULT,
667 #[cfg(not(feature = "Win32_System_Com"))]
668 QueryCommand: usize,
669 pub OpenDataSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
670 pub CloseDataSession: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
671 #[cfg(feature = "Win32_System_Com")]
672 pub WriteData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservicedata: *const super::super::System::Com::SAFEARRAY, requestid: *mut u32) -> ::windows::core::HRESULT,
673 #[cfg(not(feature = "Win32_System_Com"))]
674 WriteData: usize,
675 pub InterfaceID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, interfaceid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
676 pub DeviceServiceID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceserviceid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
677 #[cfg(feature = "Win32_Foundation")]
678 pub IsCommandSessionOpen: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
679 #[cfg(not(feature = "Win32_Foundation"))]
680 IsCommandSessionOpen: usize,
681 #[cfg(feature = "Win32_Foundation")]
682 pub IsDataSessionOpen: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT,
683 #[cfg(not(feature = "Win32_Foundation"))]
684 IsDataSessionOpen: usize,
685}
686#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
687#[repr(transparent)]
688pub struct IMbnDeviceServiceStateEvents(::windows::core::IUnknown);
689impl IMbnDeviceServiceStateEvents {
690 pub unsafe fn OnSessionsStateChange<P0>(&self, interfaceid: P0, statechange: MBN_DEVICE_SERVICE_SESSIONS_STATE) -> ::windows::core::Result<()>
691 where
692 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
693 {
694 (::windows::core::Interface::vtable(self).OnSessionsStateChange)(::windows::core::Interface::as_raw(self), interfaceid.into_param().abi(), statechange).ok()
695 }
696}
697::windows::imp::interface_hierarchy!(IMbnDeviceServiceStateEvents, ::windows::core::IUnknown);
698impl ::core::cmp::PartialEq for IMbnDeviceServiceStateEvents {
699 fn eq(&self, other: &Self) -> bool {
700 self.0 == other.0
701 }
702}
703impl ::core::cmp::Eq for IMbnDeviceServiceStateEvents {}
704impl ::core::fmt::Debug for IMbnDeviceServiceStateEvents {
705 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
706 f.debug_tuple("IMbnDeviceServiceStateEvents").field(&self.0).finish()
707 }
708}
709unsafe impl ::windows::core::Interface for IMbnDeviceServiceStateEvents {
710 type Vtable = IMbnDeviceServiceStateEvents_Vtbl;
711}
712impl ::core::clone::Clone for IMbnDeviceServiceStateEvents {
713 fn clone(&self) -> Self {
714 Self(self.0.clone())
715 }
716}
717unsafe impl ::windows::core::ComInterface for IMbnDeviceServiceStateEvents {
718 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5d3ff196_89ee_49d8_8b60_33ffddffc58d);
719}
720#[repr(C)]
721#[doc(hidden)]
722pub struct IMbnDeviceServiceStateEvents_Vtbl {
723 pub base__: ::windows::core::IUnknown_Vtbl,
724 pub OnSessionsStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, interfaceid: ::std::mem::MaybeUninit<::windows::core::BSTR>, statechange: MBN_DEVICE_SERVICE_SESSIONS_STATE) -> ::windows::core::HRESULT,
725}
726#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
727#[repr(transparent)]
728pub struct IMbnDeviceServicesContext(::windows::core::IUnknown);
729impl IMbnDeviceServicesContext {
730 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
731 #[cfg(feature = "Win32_System_Com")]
732 pub unsafe fn EnumerateDeviceServices(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
733 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
734 (::windows::core::Interface::vtable(self).EnumerateDeviceServices)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
735 }
736 pub unsafe fn GetDeviceService<P0>(&self, deviceserviceid: P0) -> ::windows::core::Result<IMbnDeviceService>
737 where
738 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
739 {
740 let mut result__ = ::windows::core::zeroed::<IMbnDeviceService>();
741 (::windows::core::Interface::vtable(self).GetDeviceService)(::windows::core::Interface::as_raw(self), deviceserviceid.into_param().abi(), &mut result__).from_abi(result__)
742 }
743 pub unsafe fn MaxCommandSize(&self) -> ::windows::core::Result<u32> {
744 let mut result__ = ::windows::core::zeroed::<u32>();
745 (::windows::core::Interface::vtable(self).MaxCommandSize)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
746 }
747 pub unsafe fn MaxDataSize(&self) -> ::windows::core::Result<u32> {
748 let mut result__ = ::windows::core::zeroed::<u32>();
749 (::windows::core::Interface::vtable(self).MaxDataSize)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
750 }
751}
752::windows::imp::interface_hierarchy!(IMbnDeviceServicesContext, ::windows::core::IUnknown);
753impl ::core::cmp::PartialEq for IMbnDeviceServicesContext {
754 fn eq(&self, other: &Self) -> bool {
755 self.0 == other.0
756 }
757}
758impl ::core::cmp::Eq for IMbnDeviceServicesContext {}
759impl ::core::fmt::Debug for IMbnDeviceServicesContext {
760 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
761 f.debug_tuple("IMbnDeviceServicesContext").field(&self.0).finish()
762 }
763}
764unsafe impl ::windows::core::Interface for IMbnDeviceServicesContext {
765 type Vtable = IMbnDeviceServicesContext_Vtbl;
766}
767impl ::core::clone::Clone for IMbnDeviceServicesContext {
768 fn clone(&self) -> Self {
769 Self(self.0.clone())
770 }
771}
772unsafe impl ::windows::core::ComInterface for IMbnDeviceServicesContext {
773 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfc5ac347_1592_4068_80bb_6a57580150d8);
774}
775#[repr(C)]
776#[doc(hidden)]
777pub struct IMbnDeviceServicesContext_Vtbl {
778 pub base__: ::windows::core::IUnknown_Vtbl,
779 #[cfg(feature = "Win32_System_Com")]
780 pub EnumerateDeviceServices: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservices: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
781 #[cfg(not(feature = "Win32_System_Com"))]
782 EnumerateDeviceServices: usize,
783 pub GetDeviceService: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceserviceid: ::std::mem::MaybeUninit<::windows::core::BSTR>, mbndeviceservice: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
784 pub MaxCommandSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, maxcommandsize: *mut u32) -> ::windows::core::HRESULT,
785 pub MaxDataSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, maxdatasize: *mut u32) -> ::windows::core::HRESULT,
786}
787#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
788#[repr(transparent)]
789pub struct IMbnDeviceServicesEvents(::windows::core::IUnknown);
790impl IMbnDeviceServicesEvents {
791 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
792 #[cfg(feature = "Win32_System_Com")]
793 pub unsafe fn OnQuerySupportedCommandsComplete<P0>(&self, deviceservice: P0, commandidlist: *const super::super::System::Com::SAFEARRAY, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::Result<()>
794 where
795 P0: ::windows::core::IntoParam<IMbnDeviceService>,
796 {
797 (::windows::core::Interface::vtable(self).OnQuerySupportedCommandsComplete)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), commandidlist, status, requestid).ok()
798 }
799 pub unsafe fn OnOpenCommandSessionComplete<P0>(&self, deviceservice: P0, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::Result<()>
800 where
801 P0: ::windows::core::IntoParam<IMbnDeviceService>,
802 {
803 (::windows::core::Interface::vtable(self).OnOpenCommandSessionComplete)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), status, requestid).ok()
804 }
805 pub unsafe fn OnCloseCommandSessionComplete<P0>(&self, deviceservice: P0, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::Result<()>
806 where
807 P0: ::windows::core::IntoParam<IMbnDeviceService>,
808 {
809 (::windows::core::Interface::vtable(self).OnCloseCommandSessionComplete)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), status, requestid).ok()
810 }
811 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
812 #[cfg(feature = "Win32_System_Com")]
813 pub unsafe fn OnSetCommandComplete<P0>(&self, deviceservice: P0, responseid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::Result<()>
814 where
815 P0: ::windows::core::IntoParam<IMbnDeviceService>,
816 {
817 (::windows::core::Interface::vtable(self).OnSetCommandComplete)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), responseid, deviceservicedata, status, requestid).ok()
818 }
819 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
820 #[cfg(feature = "Win32_System_Com")]
821 pub unsafe fn OnQueryCommandComplete<P0>(&self, deviceservice: P0, responseid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::Result<()>
822 where
823 P0: ::windows::core::IntoParam<IMbnDeviceService>,
824 {
825 (::windows::core::Interface::vtable(self).OnQueryCommandComplete)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), responseid, deviceservicedata, status, requestid).ok()
826 }
827 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
828 #[cfg(feature = "Win32_System_Com")]
829 pub unsafe fn OnEventNotification<P0>(&self, deviceservice: P0, eventid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<()>
830 where
831 P0: ::windows::core::IntoParam<IMbnDeviceService>,
832 {
833 (::windows::core::Interface::vtable(self).OnEventNotification)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), eventid, deviceservicedata).ok()
834 }
835 pub unsafe fn OnOpenDataSessionComplete<P0>(&self, deviceservice: P0, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::Result<()>
836 where
837 P0: ::windows::core::IntoParam<IMbnDeviceService>,
838 {
839 (::windows::core::Interface::vtable(self).OnOpenDataSessionComplete)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), status, requestid).ok()
840 }
841 pub unsafe fn OnCloseDataSessionComplete<P0>(&self, deviceservice: P0, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::Result<()>
842 where
843 P0: ::windows::core::IntoParam<IMbnDeviceService>,
844 {
845 (::windows::core::Interface::vtable(self).OnCloseDataSessionComplete)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), status, requestid).ok()
846 }
847 pub unsafe fn OnWriteDataComplete<P0>(&self, deviceservice: P0, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::Result<()>
848 where
849 P0: ::windows::core::IntoParam<IMbnDeviceService>,
850 {
851 (::windows::core::Interface::vtable(self).OnWriteDataComplete)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), status, requestid).ok()
852 }
853 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
854 #[cfg(feature = "Win32_System_Com")]
855 pub unsafe fn OnReadData<P0>(&self, deviceservice: P0, deviceservicedata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<()>
856 where
857 P0: ::windows::core::IntoParam<IMbnDeviceService>,
858 {
859 (::windows::core::Interface::vtable(self).OnReadData)(::windows::core::Interface::as_raw(self), deviceservice.into_param().abi(), deviceservicedata).ok()
860 }
861 pub unsafe fn OnInterfaceStateChange<P0>(&self, interfaceid: P0, statechange: MBN_DEVICE_SERVICES_INTERFACE_STATE) -> ::windows::core::Result<()>
862 where
863 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
864 {
865 (::windows::core::Interface::vtable(self).OnInterfaceStateChange)(::windows::core::Interface::as_raw(self), interfaceid.into_param().abi(), statechange).ok()
866 }
867}
868::windows::imp::interface_hierarchy!(IMbnDeviceServicesEvents, ::windows::core::IUnknown);
869impl ::core::cmp::PartialEq for IMbnDeviceServicesEvents {
870 fn eq(&self, other: &Self) -> bool {
871 self.0 == other.0
872 }
873}
874impl ::core::cmp::Eq for IMbnDeviceServicesEvents {}
875impl ::core::fmt::Debug for IMbnDeviceServicesEvents {
876 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
877 f.debug_tuple("IMbnDeviceServicesEvents").field(&self.0).finish()
878 }
879}
880unsafe impl ::windows::core::Interface for IMbnDeviceServicesEvents {
881 type Vtable = IMbnDeviceServicesEvents_Vtbl;
882}
883impl ::core::clone::Clone for IMbnDeviceServicesEvents {
884 fn clone(&self) -> Self {
885 Self(self.0.clone())
886 }
887}
888unsafe impl ::windows::core::ComInterface for IMbnDeviceServicesEvents {
889 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0a900c19_6824_4e97_b76e_cf239d0ca642);
890}
891#[repr(C)]
892#[doc(hidden)]
893pub struct IMbnDeviceServicesEvents_Vtbl {
894 pub base__: ::windows::core::IUnknown_Vtbl,
895 #[cfg(feature = "Win32_System_Com")]
896 pub OnQuerySupportedCommandsComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, commandidlist: *const super::super::System::Com::SAFEARRAY, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::HRESULT,
897 #[cfg(not(feature = "Win32_System_Com"))]
898 OnQuerySupportedCommandsComplete: usize,
899 pub OnOpenCommandSessionComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::HRESULT,
900 pub OnCloseCommandSessionComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::HRESULT,
901 #[cfg(feature = "Win32_System_Com")]
902 pub OnSetCommandComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, responseid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::HRESULT,
903 #[cfg(not(feature = "Win32_System_Com"))]
904 OnSetCommandComplete: usize,
905 #[cfg(feature = "Win32_System_Com")]
906 pub OnQueryCommandComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, responseid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::HRESULT,
907 #[cfg(not(feature = "Win32_System_Com"))]
908 OnQueryCommandComplete: usize,
909 #[cfg(feature = "Win32_System_Com")]
910 pub OnEventNotification: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, eventid: u32, deviceservicedata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
911 #[cfg(not(feature = "Win32_System_Com"))]
912 OnEventNotification: usize,
913 pub OnOpenDataSessionComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::HRESULT,
914 pub OnCloseDataSessionComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::HRESULT,
915 pub OnWriteDataComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, status: ::windows::core::HRESULT, requestid: u32) -> ::windows::core::HRESULT,
916 #[cfg(feature = "Win32_System_Com")]
917 pub OnReadData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, deviceservice: *mut ::core::ffi::c_void, deviceservicedata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
918 #[cfg(not(feature = "Win32_System_Com"))]
919 OnReadData: usize,
920 pub OnInterfaceStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, interfaceid: ::std::mem::MaybeUninit<::windows::core::BSTR>, statechange: MBN_DEVICE_SERVICES_INTERFACE_STATE) -> ::windows::core::HRESULT,
921}
922#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
923#[repr(transparent)]
924pub struct IMbnDeviceServicesManager(::windows::core::IUnknown);
925impl IMbnDeviceServicesManager {
926 pub unsafe fn GetDeviceServicesContext<P0>(&self, networkinterfaceid: P0) -> ::windows::core::Result<IMbnDeviceServicesContext>
927 where
928 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
929 {
930 let mut result__ = ::windows::core::zeroed::<IMbnDeviceServicesContext>();
931 (::windows::core::Interface::vtable(self).GetDeviceServicesContext)(::windows::core::Interface::as_raw(self), networkinterfaceid.into_param().abi(), &mut result__).from_abi(result__)
932 }
933}
934::windows::imp::interface_hierarchy!(IMbnDeviceServicesManager, ::windows::core::IUnknown);
935impl ::core::cmp::PartialEq for IMbnDeviceServicesManager {
936 fn eq(&self, other: &Self) -> bool {
937 self.0 == other.0
938 }
939}
940impl ::core::cmp::Eq for IMbnDeviceServicesManager {}
941impl ::core::fmt::Debug for IMbnDeviceServicesManager {
942 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
943 f.debug_tuple("IMbnDeviceServicesManager").field(&self.0).finish()
944 }
945}
946unsafe impl ::windows::core::Interface for IMbnDeviceServicesManager {
947 type Vtable = IMbnDeviceServicesManager_Vtbl;
948}
949impl ::core::clone::Clone for IMbnDeviceServicesManager {
950 fn clone(&self) -> Self {
951 Self(self.0.clone())
952 }
953}
954unsafe impl ::windows::core::ComInterface for IMbnDeviceServicesManager {
955 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x20a26258_6811_4478_ac1d_13324e45e41c);
956}
957#[repr(C)]
958#[doc(hidden)]
959pub struct IMbnDeviceServicesManager_Vtbl {
960 pub base__: ::windows::core::IUnknown_Vtbl,
961 pub GetDeviceServicesContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, networkinterfaceid: ::std::mem::MaybeUninit<::windows::core::BSTR>, mbndevicescontext: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
962}
963#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
964#[repr(transparent)]
965pub struct IMbnInterface(::windows::core::IUnknown);
966impl IMbnInterface {
967 pub unsafe fn InterfaceID(&self) -> ::windows::core::Result<::windows::core::BSTR> {
968 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
969 (::windows::core::Interface::vtable(self).InterfaceID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
970 }
971 pub unsafe fn GetInterfaceCapability(&self, interfacecaps: *mut MBN_INTERFACE_CAPS) -> ::windows::core::Result<()> {
972 (::windows::core::Interface::vtable(self).GetInterfaceCapability)(::windows::core::Interface::as_raw(self), interfacecaps).ok()
973 }
974 pub unsafe fn GetSubscriberInformation(&self) -> ::windows::core::Result<IMbnSubscriberInformation> {
975 let mut result__ = ::windows::core::zeroed::<IMbnSubscriberInformation>();
976 (::windows::core::Interface::vtable(self).GetSubscriberInformation)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
977 }
978 pub unsafe fn GetReadyState(&self) -> ::windows::core::Result<MBN_READY_STATE> {
979 let mut result__ = ::windows::core::zeroed::<MBN_READY_STATE>();
980 (::windows::core::Interface::vtable(self).GetReadyState)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
981 }
982 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
983 #[cfg(feature = "Win32_Foundation")]
984 pub unsafe fn InEmergencyMode(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
985 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::VARIANT_BOOL>();
986 (::windows::core::Interface::vtable(self).InEmergencyMode)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
987 }
988 pub unsafe fn GetHomeProvider(&self) -> ::windows::core::Result<MBN_PROVIDER> {
989 let mut result__ = ::windows::core::zeroed::<MBN_PROVIDER>();
990 (::windows::core::Interface::vtable(self).GetHomeProvider)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
991 }
992 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
993 #[cfg(feature = "Win32_System_Com")]
994 pub unsafe fn GetPreferredProviders(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
995 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
996 (::windows::core::Interface::vtable(self).GetPreferredProviders)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
997 }
998 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
999 #[cfg(feature = "Win32_System_Com")]
1000 pub unsafe fn SetPreferredProviders(&self, preferredproviders: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<u32> {
1001 let mut result__ = ::windows::core::zeroed::<u32>();
1002 (::windows::core::Interface::vtable(self).SetPreferredProviders)(::windows::core::Interface::as_raw(self), preferredproviders, &mut result__).from_abi(result__)
1003 }
1004 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1005 #[cfg(feature = "Win32_System_Com")]
1006 pub unsafe fn GetVisibleProviders(&self, age: *mut u32, visibleproviders: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<()> {
1007 (::windows::core::Interface::vtable(self).GetVisibleProviders)(::windows::core::Interface::as_raw(self), age, visibleproviders).ok()
1008 }
1009 pub unsafe fn ScanNetwork(&self) -> ::windows::core::Result<u32> {
1010 let mut result__ = ::windows::core::zeroed::<u32>();
1011 (::windows::core::Interface::vtable(self).ScanNetwork)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1012 }
1013 pub unsafe fn GetConnection(&self) -> ::windows::core::Result<IMbnConnection> {
1014 let mut result__ = ::windows::core::zeroed::<IMbnConnection>();
1015 (::windows::core::Interface::vtable(self).GetConnection)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1016 }
1017}
1018::windows::imp::interface_hierarchy!(IMbnInterface, ::windows::core::IUnknown);
1019impl ::core::cmp::PartialEq for IMbnInterface {
1020 fn eq(&self, other: &Self) -> bool {
1021 self.0 == other.0
1022 }
1023}
1024impl ::core::cmp::Eq for IMbnInterface {}
1025impl ::core::fmt::Debug for IMbnInterface {
1026 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1027 f.debug_tuple("IMbnInterface").field(&self.0).finish()
1028 }
1029}
1030unsafe impl ::windows::core::Interface for IMbnInterface {
1031 type Vtable = IMbnInterface_Vtbl;
1032}
1033impl ::core::clone::Clone for IMbnInterface {
1034 fn clone(&self) -> Self {
1035 Self(self.0.clone())
1036 }
1037}
1038unsafe impl ::windows::core::ComInterface for IMbnInterface {
1039 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2001_4bbb_aaee_338e368af6fa);
1040}
1041#[repr(C)]
1042#[doc(hidden)]
1043pub struct IMbnInterface_Vtbl {
1044 pub base__: ::windows::core::IUnknown_Vtbl,
1045 pub InterfaceID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, interfaceid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1046 pub GetInterfaceCapability: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, interfacecaps: *mut MBN_INTERFACE_CAPS) -> ::windows::core::HRESULT,
1047 pub GetSubscriberInformation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, subscriberinformation: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1048 pub GetReadyState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, readystate: *mut MBN_READY_STATE) -> ::windows::core::HRESULT,
1049 #[cfg(feature = "Win32_Foundation")]
1050 pub InEmergencyMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, emergencymode: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
1051 #[cfg(not(feature = "Win32_Foundation"))]
1052 InEmergencyMode: usize,
1053 pub GetHomeProvider: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, homeprovider: *mut MBN_PROVIDER) -> ::windows::core::HRESULT,
1054 #[cfg(feature = "Win32_System_Com")]
1055 pub GetPreferredProviders: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, preferredproviders: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
1056 #[cfg(not(feature = "Win32_System_Com"))]
1057 GetPreferredProviders: usize,
1058 #[cfg(feature = "Win32_System_Com")]
1059 pub SetPreferredProviders: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, preferredproviders: *const super::super::System::Com::SAFEARRAY, requestid: *mut u32) -> ::windows::core::HRESULT,
1060 #[cfg(not(feature = "Win32_System_Com"))]
1061 SetPreferredProviders: usize,
1062 #[cfg(feature = "Win32_System_Com")]
1063 pub GetVisibleProviders: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, age: *mut u32, visibleproviders: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
1064 #[cfg(not(feature = "Win32_System_Com"))]
1065 GetVisibleProviders: usize,
1066 pub ScanNetwork: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
1067 pub GetConnection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbnconnection: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1068}
1069#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1070#[repr(transparent)]
1071pub struct IMbnInterfaceEvents(::windows::core::IUnknown);
1072impl IMbnInterfaceEvents {
1073 pub unsafe fn OnInterfaceCapabilityAvailable<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1074 where
1075 P0: ::windows::core::IntoParam<IMbnInterface>,
1076 {
1077 (::windows::core::Interface::vtable(self).OnInterfaceCapabilityAvailable)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1078 }
1079 pub unsafe fn OnSubscriberInformationChange<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1080 where
1081 P0: ::windows::core::IntoParam<IMbnInterface>,
1082 {
1083 (::windows::core::Interface::vtable(self).OnSubscriberInformationChange)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1084 }
1085 pub unsafe fn OnReadyStateChange<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1086 where
1087 P0: ::windows::core::IntoParam<IMbnInterface>,
1088 {
1089 (::windows::core::Interface::vtable(self).OnReadyStateChange)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1090 }
1091 pub unsafe fn OnEmergencyModeChange<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1092 where
1093 P0: ::windows::core::IntoParam<IMbnInterface>,
1094 {
1095 (::windows::core::Interface::vtable(self).OnEmergencyModeChange)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1096 }
1097 pub unsafe fn OnHomeProviderAvailable<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1098 where
1099 P0: ::windows::core::IntoParam<IMbnInterface>,
1100 {
1101 (::windows::core::Interface::vtable(self).OnHomeProviderAvailable)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1102 }
1103 pub unsafe fn OnPreferredProvidersChange<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1104 where
1105 P0: ::windows::core::IntoParam<IMbnInterface>,
1106 {
1107 (::windows::core::Interface::vtable(self).OnPreferredProvidersChange)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1108 }
1109 pub unsafe fn OnSetPreferredProvidersComplete<P0>(&self, newinterface: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1110 where
1111 P0: ::windows::core::IntoParam<IMbnInterface>,
1112 {
1113 (::windows::core::Interface::vtable(self).OnSetPreferredProvidersComplete)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi(), requestid, status).ok()
1114 }
1115 pub unsafe fn OnScanNetworkComplete<P0>(&self, newinterface: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1116 where
1117 P0: ::windows::core::IntoParam<IMbnInterface>,
1118 {
1119 (::windows::core::Interface::vtable(self).OnScanNetworkComplete)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi(), requestid, status).ok()
1120 }
1121}
1122::windows::imp::interface_hierarchy!(IMbnInterfaceEvents, ::windows::core::IUnknown);
1123impl ::core::cmp::PartialEq for IMbnInterfaceEvents {
1124 fn eq(&self, other: &Self) -> bool {
1125 self.0 == other.0
1126 }
1127}
1128impl ::core::cmp::Eq for IMbnInterfaceEvents {}
1129impl ::core::fmt::Debug for IMbnInterfaceEvents {
1130 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1131 f.debug_tuple("IMbnInterfaceEvents").field(&self.0).finish()
1132 }
1133}
1134unsafe impl ::windows::core::Interface for IMbnInterfaceEvents {
1135 type Vtable = IMbnInterfaceEvents_Vtbl;
1136}
1137impl ::core::clone::Clone for IMbnInterfaceEvents {
1138 fn clone(&self) -> Self {
1139 Self(self.0.clone())
1140 }
1141}
1142unsafe impl ::windows::core::ComInterface for IMbnInterfaceEvents {
1143 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2002_4bbb_aaee_338e368af6fa);
1144}
1145#[repr(C)]
1146#[doc(hidden)]
1147pub struct IMbnInterfaceEvents_Vtbl {
1148 pub base__: ::windows::core::IUnknown_Vtbl,
1149 pub OnInterfaceCapabilityAvailable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1150 pub OnSubscriberInformationChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1151 pub OnReadyStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1152 pub OnEmergencyModeChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1153 pub OnHomeProviderAvailable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1154 pub OnPreferredProvidersChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1155 pub OnSetPreferredProvidersComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1156 pub OnScanNetworkComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1157}
1158#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1159#[repr(transparent)]
1160pub struct IMbnInterfaceManager(::windows::core::IUnknown);
1161impl IMbnInterfaceManager {
1162 pub unsafe fn GetInterface<P0>(&self, interfaceid: P0) -> ::windows::core::Result<IMbnInterface>
1163 where
1164 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
1165 {
1166 let mut result__ = ::windows::core::zeroed::<IMbnInterface>();
1167 (::windows::core::Interface::vtable(self).GetInterface)(::windows::core::Interface::as_raw(self), interfaceid.into_param().abi(), &mut result__).from_abi(result__)
1168 }
1169 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1170 #[cfg(feature = "Win32_System_Com")]
1171 pub unsafe fn GetInterfaces(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
1172 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
1173 (::windows::core::Interface::vtable(self).GetInterfaces)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1174 }
1175}
1176::windows::imp::interface_hierarchy!(IMbnInterfaceManager, ::windows::core::IUnknown);
1177impl ::core::cmp::PartialEq for IMbnInterfaceManager {
1178 fn eq(&self, other: &Self) -> bool {
1179 self.0 == other.0
1180 }
1181}
1182impl ::core::cmp::Eq for IMbnInterfaceManager {}
1183impl ::core::fmt::Debug for IMbnInterfaceManager {
1184 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1185 f.debug_tuple("IMbnInterfaceManager").field(&self.0).finish()
1186 }
1187}
1188unsafe impl ::windows::core::Interface for IMbnInterfaceManager {
1189 type Vtable = IMbnInterfaceManager_Vtbl;
1190}
1191impl ::core::clone::Clone for IMbnInterfaceManager {
1192 fn clone(&self) -> Self {
1193 Self(self.0.clone())
1194 }
1195}
1196unsafe impl ::windows::core::ComInterface for IMbnInterfaceManager {
1197 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_201b_4bbb_aaee_338e368af6fa);
1198}
1199#[repr(C)]
1200#[doc(hidden)]
1201pub struct IMbnInterfaceManager_Vtbl {
1202 pub base__: ::windows::core::IUnknown_Vtbl,
1203 pub GetInterface: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, interfaceid: ::windows::core::PCWSTR, mbninterface: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1204 #[cfg(feature = "Win32_System_Com")]
1205 pub GetInterfaces: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbninterfaces: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
1206 #[cfg(not(feature = "Win32_System_Com"))]
1207 GetInterfaces: usize,
1208}
1209#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1210#[repr(transparent)]
1211pub struct IMbnInterfaceManagerEvents(::windows::core::IUnknown);
1212impl IMbnInterfaceManagerEvents {
1213 pub unsafe fn OnInterfaceArrival<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1214 where
1215 P0: ::windows::core::IntoParam<IMbnInterface>,
1216 {
1217 (::windows::core::Interface::vtable(self).OnInterfaceArrival)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1218 }
1219 pub unsafe fn OnInterfaceRemoval<P0>(&self, oldinterface: P0) -> ::windows::core::Result<()>
1220 where
1221 P0: ::windows::core::IntoParam<IMbnInterface>,
1222 {
1223 (::windows::core::Interface::vtable(self).OnInterfaceRemoval)(::windows::core::Interface::as_raw(self), oldinterface.into_param().abi()).ok()
1224 }
1225}
1226::windows::imp::interface_hierarchy!(IMbnInterfaceManagerEvents, ::windows::core::IUnknown);
1227impl ::core::cmp::PartialEq for IMbnInterfaceManagerEvents {
1228 fn eq(&self, other: &Self) -> bool {
1229 self.0 == other.0
1230 }
1231}
1232impl ::core::cmp::Eq for IMbnInterfaceManagerEvents {}
1233impl ::core::fmt::Debug for IMbnInterfaceManagerEvents {
1234 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1235 f.debug_tuple("IMbnInterfaceManagerEvents").field(&self.0).finish()
1236 }
1237}
1238unsafe impl ::windows::core::Interface for IMbnInterfaceManagerEvents {
1239 type Vtable = IMbnInterfaceManagerEvents_Vtbl;
1240}
1241impl ::core::clone::Clone for IMbnInterfaceManagerEvents {
1242 fn clone(&self) -> Self {
1243 Self(self.0.clone())
1244 }
1245}
1246unsafe impl ::windows::core::ComInterface for IMbnInterfaceManagerEvents {
1247 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_201c_4bbb_aaee_338e368af6fa);
1248}
1249#[repr(C)]
1250#[doc(hidden)]
1251pub struct IMbnInterfaceManagerEvents_Vtbl {
1252 pub base__: ::windows::core::IUnknown_Vtbl,
1253 pub OnInterfaceArrival: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1254 pub OnInterfaceRemoval: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, oldinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1255}
1256#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1257#[repr(transparent)]
1258pub struct IMbnMultiCarrier(::windows::core::IUnknown);
1259impl IMbnMultiCarrier {
1260 pub unsafe fn SetHomeProvider(&self, homeprovider: *const MBN_PROVIDER2) -> ::windows::core::Result<u32> {
1261 let mut result__ = ::windows::core::zeroed::<u32>();
1262 (::windows::core::Interface::vtable(self).SetHomeProvider)(::windows::core::Interface::as_raw(self), homeprovider, &mut result__).from_abi(result__)
1263 }
1264 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1265 #[cfg(feature = "Win32_System_Com")]
1266 pub unsafe fn GetPreferredProviders(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
1267 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
1268 (::windows::core::Interface::vtable(self).GetPreferredProviders)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1269 }
1270 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1271 #[cfg(feature = "Win32_System_Com")]
1272 pub unsafe fn GetVisibleProviders(&self, age: *mut u32, visibleproviders: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<()> {
1273 (::windows::core::Interface::vtable(self).GetVisibleProviders)(::windows::core::Interface::as_raw(self), age, visibleproviders).ok()
1274 }
1275 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1276 #[cfg(feature = "Win32_System_Com")]
1277 pub unsafe fn GetSupportedCellularClasses(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
1278 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
1279 (::windows::core::Interface::vtable(self).GetSupportedCellularClasses)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1280 }
1281 pub unsafe fn GetCurrentCellularClass(&self) -> ::windows::core::Result<MBN_CELLULAR_CLASS> {
1282 let mut result__ = ::windows::core::zeroed::<MBN_CELLULAR_CLASS>();
1283 (::windows::core::Interface::vtable(self).GetCurrentCellularClass)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1284 }
1285 pub unsafe fn ScanNetwork(&self) -> ::windows::core::Result<u32> {
1286 let mut result__ = ::windows::core::zeroed::<u32>();
1287 (::windows::core::Interface::vtable(self).ScanNetwork)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1288 }
1289}
1290::windows::imp::interface_hierarchy!(IMbnMultiCarrier, ::windows::core::IUnknown);
1291impl ::core::cmp::PartialEq for IMbnMultiCarrier {
1292 fn eq(&self, other: &Self) -> bool {
1293 self.0 == other.0
1294 }
1295}
1296impl ::core::cmp::Eq for IMbnMultiCarrier {}
1297impl ::core::fmt::Debug for IMbnMultiCarrier {
1298 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1299 f.debug_tuple("IMbnMultiCarrier").field(&self.0).finish()
1300 }
1301}
1302unsafe impl ::windows::core::Interface for IMbnMultiCarrier {
1303 type Vtable = IMbnMultiCarrier_Vtbl;
1304}
1305impl ::core::clone::Clone for IMbnMultiCarrier {
1306 fn clone(&self) -> Self {
1307 Self(self.0.clone())
1308 }
1309}
1310unsafe impl ::windows::core::ComInterface for IMbnMultiCarrier {
1311 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2020_4bbb_aaee_338e368af6fa);
1312}
1313#[repr(C)]
1314#[doc(hidden)]
1315pub struct IMbnMultiCarrier_Vtbl {
1316 pub base__: ::windows::core::IUnknown_Vtbl,
1317 pub SetHomeProvider: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, homeprovider: *const MBN_PROVIDER2, requestid: *mut u32) -> ::windows::core::HRESULT,
1318 #[cfg(feature = "Win32_System_Com")]
1319 pub GetPreferredProviders: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, preferredmulticarrierproviders: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
1320 #[cfg(not(feature = "Win32_System_Com"))]
1321 GetPreferredProviders: usize,
1322 #[cfg(feature = "Win32_System_Com")]
1323 pub GetVisibleProviders: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, age: *mut u32, visibleproviders: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
1324 #[cfg(not(feature = "Win32_System_Com"))]
1325 GetVisibleProviders: usize,
1326 #[cfg(feature = "Win32_System_Com")]
1327 pub GetSupportedCellularClasses: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cellularclasses: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
1328 #[cfg(not(feature = "Win32_System_Com"))]
1329 GetSupportedCellularClasses: usize,
1330 pub GetCurrentCellularClass: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, currentcellularclass: *mut MBN_CELLULAR_CLASS) -> ::windows::core::HRESULT,
1331 pub ScanNetwork: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
1332}
1333#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1334#[repr(transparent)]
1335pub struct IMbnMultiCarrierEvents(::windows::core::IUnknown);
1336impl IMbnMultiCarrierEvents {
1337 pub unsafe fn OnSetHomeProviderComplete<P0>(&self, mbninterface: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1338 where
1339 P0: ::windows::core::IntoParam<IMbnMultiCarrier>,
1340 {
1341 (::windows::core::Interface::vtable(self).OnSetHomeProviderComplete)(::windows::core::Interface::as_raw(self), mbninterface.into_param().abi(), requestid, status).ok()
1342 }
1343 pub unsafe fn OnCurrentCellularClassChange<P0>(&self, mbninterface: P0) -> ::windows::core::Result<()>
1344 where
1345 P0: ::windows::core::IntoParam<IMbnMultiCarrier>,
1346 {
1347 (::windows::core::Interface::vtable(self).OnCurrentCellularClassChange)(::windows::core::Interface::as_raw(self), mbninterface.into_param().abi()).ok()
1348 }
1349 pub unsafe fn OnPreferredProvidersChange<P0>(&self, mbninterface: P0) -> ::windows::core::Result<()>
1350 where
1351 P0: ::windows::core::IntoParam<IMbnMultiCarrier>,
1352 {
1353 (::windows::core::Interface::vtable(self).OnPreferredProvidersChange)(::windows::core::Interface::as_raw(self), mbninterface.into_param().abi()).ok()
1354 }
1355 pub unsafe fn OnScanNetworkComplete<P0>(&self, mbninterface: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1356 where
1357 P0: ::windows::core::IntoParam<IMbnMultiCarrier>,
1358 {
1359 (::windows::core::Interface::vtable(self).OnScanNetworkComplete)(::windows::core::Interface::as_raw(self), mbninterface.into_param().abi(), requestid, status).ok()
1360 }
1361 pub unsafe fn OnInterfaceCapabilityChange<P0>(&self, mbninterface: P0) -> ::windows::core::Result<()>
1362 where
1363 P0: ::windows::core::IntoParam<IMbnMultiCarrier>,
1364 {
1365 (::windows::core::Interface::vtable(self).OnInterfaceCapabilityChange)(::windows::core::Interface::as_raw(self), mbninterface.into_param().abi()).ok()
1366 }
1367}
1368::windows::imp::interface_hierarchy!(IMbnMultiCarrierEvents, ::windows::core::IUnknown);
1369impl ::core::cmp::PartialEq for IMbnMultiCarrierEvents {
1370 fn eq(&self, other: &Self) -> bool {
1371 self.0 == other.0
1372 }
1373}
1374impl ::core::cmp::Eq for IMbnMultiCarrierEvents {}
1375impl ::core::fmt::Debug for IMbnMultiCarrierEvents {
1376 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1377 f.debug_tuple("IMbnMultiCarrierEvents").field(&self.0).finish()
1378 }
1379}
1380unsafe impl ::windows::core::Interface for IMbnMultiCarrierEvents {
1381 type Vtable = IMbnMultiCarrierEvents_Vtbl;
1382}
1383impl ::core::clone::Clone for IMbnMultiCarrierEvents {
1384 fn clone(&self) -> Self {
1385 Self(self.0.clone())
1386 }
1387}
1388unsafe impl ::windows::core::ComInterface for IMbnMultiCarrierEvents {
1389 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcdddab6_2021_4bbb_aaee_338e368af6fa);
1390}
1391#[repr(C)]
1392#[doc(hidden)]
1393pub struct IMbnMultiCarrierEvents_Vtbl {
1394 pub base__: ::windows::core::IUnknown_Vtbl,
1395 pub OnSetHomeProviderComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbninterface: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1396 pub OnCurrentCellularClassChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbninterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1397 pub OnPreferredProvidersChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbninterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1398 pub OnScanNetworkComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbninterface: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1399 pub OnInterfaceCapabilityChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, mbninterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1400}
1401#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1402#[repr(transparent)]
1403pub struct IMbnPin(::windows::core::IUnknown);
1404impl IMbnPin {
1405 pub unsafe fn PinType(&self) -> ::windows::core::Result<MBN_PIN_TYPE> {
1406 let mut result__ = ::windows::core::zeroed::<MBN_PIN_TYPE>();
1407 (::windows::core::Interface::vtable(self).PinType)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1408 }
1409 pub unsafe fn PinFormat(&self) -> ::windows::core::Result<MBN_PIN_FORMAT> {
1410 let mut result__ = ::windows::core::zeroed::<MBN_PIN_FORMAT>();
1411 (::windows::core::Interface::vtable(self).PinFormat)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1412 }
1413 pub unsafe fn PinLengthMin(&self) -> ::windows::core::Result<u32> {
1414 let mut result__ = ::windows::core::zeroed::<u32>();
1415 (::windows::core::Interface::vtable(self).PinLengthMin)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1416 }
1417 pub unsafe fn PinLengthMax(&self) -> ::windows::core::Result<u32> {
1418 let mut result__ = ::windows::core::zeroed::<u32>();
1419 (::windows::core::Interface::vtable(self).PinLengthMax)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1420 }
1421 pub unsafe fn PinMode(&self) -> ::windows::core::Result<MBN_PIN_MODE> {
1422 let mut result__ = ::windows::core::zeroed::<MBN_PIN_MODE>();
1423 (::windows::core::Interface::vtable(self).PinMode)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1424 }
1425 pub unsafe fn Enable<P0>(&self, pin: P0) -> ::windows::core::Result<u32>
1426 where
1427 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
1428 {
1429 let mut result__ = ::windows::core::zeroed::<u32>();
1430 (::windows::core::Interface::vtable(self).Enable)(::windows::core::Interface::as_raw(self), pin.into_param().abi(), &mut result__).from_abi(result__)
1431 }
1432 pub unsafe fn Disable<P0>(&self, pin: P0) -> ::windows::core::Result<u32>
1433 where
1434 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
1435 {
1436 let mut result__ = ::windows::core::zeroed::<u32>();
1437 (::windows::core::Interface::vtable(self).Disable)(::windows::core::Interface::as_raw(self), pin.into_param().abi(), &mut result__).from_abi(result__)
1438 }
1439 pub unsafe fn Enter<P0>(&self, pin: P0) -> ::windows::core::Result<u32>
1440 where
1441 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
1442 {
1443 let mut result__ = ::windows::core::zeroed::<u32>();
1444 (::windows::core::Interface::vtable(self).Enter)(::windows::core::Interface::as_raw(self), pin.into_param().abi(), &mut result__).from_abi(result__)
1445 }
1446 pub unsafe fn Change<P0, P1>(&self, pin: P0, newpin: P1) -> ::windows::core::Result<u32>
1447 where
1448 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
1449 P1: ::windows::core::IntoParam<::windows::core::PCWSTR>,
1450 {
1451 let mut result__ = ::windows::core::zeroed::<u32>();
1452 (::windows::core::Interface::vtable(self).Change)(::windows::core::Interface::as_raw(self), pin.into_param().abi(), newpin.into_param().abi(), &mut result__).from_abi(result__)
1453 }
1454 pub unsafe fn Unblock<P0, P1>(&self, puk: P0, newpin: P1) -> ::windows::core::Result<u32>
1455 where
1456 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
1457 P1: ::windows::core::IntoParam<::windows::core::PCWSTR>,
1458 {
1459 let mut result__ = ::windows::core::zeroed::<u32>();
1460 (::windows::core::Interface::vtable(self).Unblock)(::windows::core::Interface::as_raw(self), puk.into_param().abi(), newpin.into_param().abi(), &mut result__).from_abi(result__)
1461 }
1462 pub unsafe fn GetPinManager(&self) -> ::windows::core::Result<IMbnPinManager> {
1463 let mut result__ = ::windows::core::zeroed::<IMbnPinManager>();
1464 (::windows::core::Interface::vtable(self).GetPinManager)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1465 }
1466}
1467::windows::imp::interface_hierarchy!(IMbnPin, ::windows::core::IUnknown);
1468impl ::core::cmp::PartialEq for IMbnPin {
1469 fn eq(&self, other: &Self) -> bool {
1470 self.0 == other.0
1471 }
1472}
1473impl ::core::cmp::Eq for IMbnPin {}
1474impl ::core::fmt::Debug for IMbnPin {
1475 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1476 f.debug_tuple("IMbnPin").field(&self.0).finish()
1477 }
1478}
1479unsafe impl ::windows::core::Interface for IMbnPin {
1480 type Vtable = IMbnPin_Vtbl;
1481}
1482impl ::core::clone::Clone for IMbnPin {
1483 fn clone(&self) -> Self {
1484 Self(self.0.clone())
1485 }
1486}
1487unsafe impl ::windows::core::ComInterface for IMbnPin {
1488 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2007_4bbb_aaee_338e368af6fa);
1489}
1490#[repr(C)]
1491#[doc(hidden)]
1492pub struct IMbnPin_Vtbl {
1493 pub base__: ::windows::core::IUnknown_Vtbl,
1494 pub PinType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pintype: *mut MBN_PIN_TYPE) -> ::windows::core::HRESULT,
1495 pub PinFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinformat: *mut MBN_PIN_FORMAT) -> ::windows::core::HRESULT,
1496 pub PinLengthMin: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinlengthmin: *mut u32) -> ::windows::core::HRESULT,
1497 pub PinLengthMax: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinlengthmax: *mut u32) -> ::windows::core::HRESULT,
1498 pub PinMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinmode: *mut MBN_PIN_MODE) -> ::windows::core::HRESULT,
1499 pub Enable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pin: ::windows::core::PCWSTR, requestid: *mut u32) -> ::windows::core::HRESULT,
1500 pub Disable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pin: ::windows::core::PCWSTR, requestid: *mut u32) -> ::windows::core::HRESULT,
1501 pub Enter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pin: ::windows::core::PCWSTR, requestid: *mut u32) -> ::windows::core::HRESULT,
1502 pub Change: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pin: ::windows::core::PCWSTR, newpin: ::windows::core::PCWSTR, requestid: *mut u32) -> ::windows::core::HRESULT,
1503 pub Unblock: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, puk: ::windows::core::PCWSTR, newpin: ::windows::core::PCWSTR, requestid: *mut u32) -> ::windows::core::HRESULT,
1504 pub GetPinManager: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinmanager: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1505}
1506#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1507#[repr(transparent)]
1508pub struct IMbnPinEvents(::windows::core::IUnknown);
1509impl IMbnPinEvents {
1510 pub unsafe fn OnEnableComplete<P0>(&self, pin: P0, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1511 where
1512 P0: ::windows::core::IntoParam<IMbnPin>,
1513 {
1514 (::windows::core::Interface::vtable(self).OnEnableComplete)(::windows::core::Interface::as_raw(self), pin.into_param().abi(), pininfo, requestid, status).ok()
1515 }
1516 pub unsafe fn OnDisableComplete<P0>(&self, pin: P0, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1517 where
1518 P0: ::windows::core::IntoParam<IMbnPin>,
1519 {
1520 (::windows::core::Interface::vtable(self).OnDisableComplete)(::windows::core::Interface::as_raw(self), pin.into_param().abi(), pininfo, requestid, status).ok()
1521 }
1522 pub unsafe fn OnEnterComplete<P0>(&self, pin: P0, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1523 where
1524 P0: ::windows::core::IntoParam<IMbnPin>,
1525 {
1526 (::windows::core::Interface::vtable(self).OnEnterComplete)(::windows::core::Interface::as_raw(self), pin.into_param().abi(), pininfo, requestid, status).ok()
1527 }
1528 pub unsafe fn OnChangeComplete<P0>(&self, pin: P0, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1529 where
1530 P0: ::windows::core::IntoParam<IMbnPin>,
1531 {
1532 (::windows::core::Interface::vtable(self).OnChangeComplete)(::windows::core::Interface::as_raw(self), pin.into_param().abi(), pininfo, requestid, status).ok()
1533 }
1534 pub unsafe fn OnUnblockComplete<P0>(&self, pin: P0, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1535 where
1536 P0: ::windows::core::IntoParam<IMbnPin>,
1537 {
1538 (::windows::core::Interface::vtable(self).OnUnblockComplete)(::windows::core::Interface::as_raw(self), pin.into_param().abi(), pininfo, requestid, status).ok()
1539 }
1540}
1541::windows::imp::interface_hierarchy!(IMbnPinEvents, ::windows::core::IUnknown);
1542impl ::core::cmp::PartialEq for IMbnPinEvents {
1543 fn eq(&self, other: &Self) -> bool {
1544 self.0 == other.0
1545 }
1546}
1547impl ::core::cmp::Eq for IMbnPinEvents {}
1548impl ::core::fmt::Debug for IMbnPinEvents {
1549 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1550 f.debug_tuple("IMbnPinEvents").field(&self.0).finish()
1551 }
1552}
1553unsafe impl ::windows::core::Interface for IMbnPinEvents {
1554 type Vtable = IMbnPinEvents_Vtbl;
1555}
1556impl ::core::clone::Clone for IMbnPinEvents {
1557 fn clone(&self) -> Self {
1558 Self(self.0.clone())
1559 }
1560}
1561unsafe impl ::windows::core::ComInterface for IMbnPinEvents {
1562 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2008_4bbb_aaee_338e368af6fa);
1563}
1564#[repr(C)]
1565#[doc(hidden)]
1566pub struct IMbnPinEvents_Vtbl {
1567 pub base__: ::windows::core::IUnknown_Vtbl,
1568 pub OnEnableComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pin: *mut ::core::ffi::c_void, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1569 pub OnDisableComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pin: *mut ::core::ffi::c_void, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1570 pub OnEnterComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pin: *mut ::core::ffi::c_void, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1571 pub OnChangeComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pin: *mut ::core::ffi::c_void, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1572 pub OnUnblockComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pin: *mut ::core::ffi::c_void, pininfo: *const MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1573}
1574#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1575#[repr(transparent)]
1576pub struct IMbnPinManager(::windows::core::IUnknown);
1577impl IMbnPinManager {
1578 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1579 #[cfg(feature = "Win32_System_Com")]
1580 pub unsafe fn GetPinList(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
1581 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
1582 (::windows::core::Interface::vtable(self).GetPinList)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1583 }
1584 pub unsafe fn GetPin(&self, pintype: MBN_PIN_TYPE) -> ::windows::core::Result<IMbnPin> {
1585 let mut result__ = ::windows::core::zeroed::<IMbnPin>();
1586 (::windows::core::Interface::vtable(self).GetPin)(::windows::core::Interface::as_raw(self), pintype, &mut result__).from_abi(result__)
1587 }
1588 pub unsafe fn GetPinState(&self) -> ::windows::core::Result<u32> {
1589 let mut result__ = ::windows::core::zeroed::<u32>();
1590 (::windows::core::Interface::vtable(self).GetPinState)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1591 }
1592}
1593::windows::imp::interface_hierarchy!(IMbnPinManager, ::windows::core::IUnknown);
1594impl ::core::cmp::PartialEq for IMbnPinManager {
1595 fn eq(&self, other: &Self) -> bool {
1596 self.0 == other.0
1597 }
1598}
1599impl ::core::cmp::Eq for IMbnPinManager {}
1600impl ::core::fmt::Debug for IMbnPinManager {
1601 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1602 f.debug_tuple("IMbnPinManager").field(&self.0).finish()
1603 }
1604}
1605unsafe impl ::windows::core::Interface for IMbnPinManager {
1606 type Vtable = IMbnPinManager_Vtbl;
1607}
1608impl ::core::clone::Clone for IMbnPinManager {
1609 fn clone(&self) -> Self {
1610 Self(self.0.clone())
1611 }
1612}
1613unsafe impl ::windows::core::ComInterface for IMbnPinManager {
1614 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2005_4bbb_aaee_338e368af6fa);
1615}
1616#[repr(C)]
1617#[doc(hidden)]
1618pub struct IMbnPinManager_Vtbl {
1619 pub base__: ::windows::core::IUnknown_Vtbl,
1620 #[cfg(feature = "Win32_System_Com")]
1621 pub GetPinList: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinlist: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
1622 #[cfg(not(feature = "Win32_System_Com"))]
1623 GetPinList: usize,
1624 pub GetPin: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pintype: MBN_PIN_TYPE, pin: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1625 pub GetPinState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
1626}
1627#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1628#[repr(transparent)]
1629pub struct IMbnPinManagerEvents(::windows::core::IUnknown);
1630impl IMbnPinManagerEvents {
1631 pub unsafe fn OnPinListAvailable<P0>(&self, pinmanager: P0) -> ::windows::core::Result<()>
1632 where
1633 P0: ::windows::core::IntoParam<IMbnPinManager>,
1634 {
1635 (::windows::core::Interface::vtable(self).OnPinListAvailable)(::windows::core::Interface::as_raw(self), pinmanager.into_param().abi()).ok()
1636 }
1637 pub unsafe fn OnGetPinStateComplete<P0>(&self, pinmanager: P0, pininfo: MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1638 where
1639 P0: ::windows::core::IntoParam<IMbnPinManager>,
1640 {
1641 (::windows::core::Interface::vtable(self).OnGetPinStateComplete)(::windows::core::Interface::as_raw(self), pinmanager.into_param().abi(), ::core::mem::transmute(pininfo), requestid, status).ok()
1642 }
1643}
1644::windows::imp::interface_hierarchy!(IMbnPinManagerEvents, ::windows::core::IUnknown);
1645impl ::core::cmp::PartialEq for IMbnPinManagerEvents {
1646 fn eq(&self, other: &Self) -> bool {
1647 self.0 == other.0
1648 }
1649}
1650impl ::core::cmp::Eq for IMbnPinManagerEvents {}
1651impl ::core::fmt::Debug for IMbnPinManagerEvents {
1652 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1653 f.debug_tuple("IMbnPinManagerEvents").field(&self.0).finish()
1654 }
1655}
1656unsafe impl ::windows::core::Interface for IMbnPinManagerEvents {
1657 type Vtable = IMbnPinManagerEvents_Vtbl;
1658}
1659impl ::core::clone::Clone for IMbnPinManagerEvents {
1660 fn clone(&self) -> Self {
1661 Self(self.0.clone())
1662 }
1663}
1664unsafe impl ::windows::core::ComInterface for IMbnPinManagerEvents {
1665 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2006_4bbb_aaee_338e368af6fa);
1666}
1667#[repr(C)]
1668#[doc(hidden)]
1669pub struct IMbnPinManagerEvents_Vtbl {
1670 pub base__: ::windows::core::IUnknown_Vtbl,
1671 pub OnPinListAvailable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinmanager: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1672 pub OnGetPinStateComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pinmanager: *mut ::core::ffi::c_void, pininfo: MBN_PIN_INFO, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1673}
1674#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1675#[repr(transparent)]
1676pub struct IMbnRadio(::windows::core::IUnknown);
1677impl IMbnRadio {
1678 pub unsafe fn SoftwareRadioState(&self) -> ::windows::core::Result<MBN_RADIO> {
1679 let mut result__ = ::windows::core::zeroed::<MBN_RADIO>();
1680 (::windows::core::Interface::vtable(self).SoftwareRadioState)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1681 }
1682 pub unsafe fn HardwareRadioState(&self) -> ::windows::core::Result<MBN_RADIO> {
1683 let mut result__ = ::windows::core::zeroed::<MBN_RADIO>();
1684 (::windows::core::Interface::vtable(self).HardwareRadioState)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1685 }
1686 pub unsafe fn SetSoftwareRadioState(&self, radiostate: MBN_RADIO) -> ::windows::core::Result<u32> {
1687 let mut result__ = ::windows::core::zeroed::<u32>();
1688 (::windows::core::Interface::vtable(self).SetSoftwareRadioState)(::windows::core::Interface::as_raw(self), radiostate, &mut result__).from_abi(result__)
1689 }
1690}
1691::windows::imp::interface_hierarchy!(IMbnRadio, ::windows::core::IUnknown);
1692impl ::core::cmp::PartialEq for IMbnRadio {
1693 fn eq(&self, other: &Self) -> bool {
1694 self.0 == other.0
1695 }
1696}
1697impl ::core::cmp::Eq for IMbnRadio {}
1698impl ::core::fmt::Debug for IMbnRadio {
1699 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1700 f.debug_tuple("IMbnRadio").field(&self.0).finish()
1701 }
1702}
1703unsafe impl ::windows::core::Interface for IMbnRadio {
1704 type Vtable = IMbnRadio_Vtbl;
1705}
1706impl ::core::clone::Clone for IMbnRadio {
1707 fn clone(&self) -> Self {
1708 Self(self.0.clone())
1709 }
1710}
1711unsafe impl ::windows::core::ComInterface for IMbnRadio {
1712 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdccccab6_201f_4bbb_aaee_338e368af6fa);
1713}
1714#[repr(C)]
1715#[doc(hidden)]
1716pub struct IMbnRadio_Vtbl {
1717 pub base__: ::windows::core::IUnknown_Vtbl,
1718 pub SoftwareRadioState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, softwareradiostate: *mut MBN_RADIO) -> ::windows::core::HRESULT,
1719 pub HardwareRadioState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hardwareradiostate: *mut MBN_RADIO) -> ::windows::core::HRESULT,
1720 pub SetSoftwareRadioState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, radiostate: MBN_RADIO, requestid: *mut u32) -> ::windows::core::HRESULT,
1721}
1722#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1723#[repr(transparent)]
1724pub struct IMbnRadioEvents(::windows::core::IUnknown);
1725impl IMbnRadioEvents {
1726 pub unsafe fn OnRadioStateChange<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1727 where
1728 P0: ::windows::core::IntoParam<IMbnRadio>,
1729 {
1730 (::windows::core::Interface::vtable(self).OnRadioStateChange)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1731 }
1732 pub unsafe fn OnSetSoftwareRadioStateComplete<P0>(&self, newinterface: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1733 where
1734 P0: ::windows::core::IntoParam<IMbnRadio>,
1735 {
1736 (::windows::core::Interface::vtable(self).OnSetSoftwareRadioStateComplete)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi(), requestid, status).ok()
1737 }
1738}
1739::windows::imp::interface_hierarchy!(IMbnRadioEvents, ::windows::core::IUnknown);
1740impl ::core::cmp::PartialEq for IMbnRadioEvents {
1741 fn eq(&self, other: &Self) -> bool {
1742 self.0 == other.0
1743 }
1744}
1745impl ::core::cmp::Eq for IMbnRadioEvents {}
1746impl ::core::fmt::Debug for IMbnRadioEvents {
1747 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1748 f.debug_tuple("IMbnRadioEvents").field(&self.0).finish()
1749 }
1750}
1751unsafe impl ::windows::core::Interface for IMbnRadioEvents {
1752 type Vtable = IMbnRadioEvents_Vtbl;
1753}
1754impl ::core::clone::Clone for IMbnRadioEvents {
1755 fn clone(&self) -> Self {
1756 Self(self.0.clone())
1757 }
1758}
1759unsafe impl ::windows::core::ComInterface for IMbnRadioEvents {
1760 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcdddab6_201f_4bbb_aaee_338e368af6fa);
1761}
1762#[repr(C)]
1763#[doc(hidden)]
1764pub struct IMbnRadioEvents_Vtbl {
1765 pub base__: ::windows::core::IUnknown_Vtbl,
1766 pub OnRadioStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1767 pub OnSetSoftwareRadioStateComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1768}
1769#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1770#[repr(transparent)]
1771pub struct IMbnRegistration(::windows::core::IUnknown);
1772impl IMbnRegistration {
1773 pub unsafe fn GetRegisterState(&self) -> ::windows::core::Result<MBN_REGISTER_STATE> {
1774 let mut result__ = ::windows::core::zeroed::<MBN_REGISTER_STATE>();
1775 (::windows::core::Interface::vtable(self).GetRegisterState)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1776 }
1777 pub unsafe fn GetRegisterMode(&self) -> ::windows::core::Result<MBN_REGISTER_MODE> {
1778 let mut result__ = ::windows::core::zeroed::<MBN_REGISTER_MODE>();
1779 (::windows::core::Interface::vtable(self).GetRegisterMode)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1780 }
1781 pub unsafe fn GetProviderID(&self) -> ::windows::core::Result<::windows::core::BSTR> {
1782 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
1783 (::windows::core::Interface::vtable(self).GetProviderID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1784 }
1785 pub unsafe fn GetProviderName(&self) -> ::windows::core::Result<::windows::core::BSTR> {
1786 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
1787 (::windows::core::Interface::vtable(self).GetProviderName)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1788 }
1789 pub unsafe fn GetRoamingText(&self) -> ::windows::core::Result<::windows::core::BSTR> {
1790 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
1791 (::windows::core::Interface::vtable(self).GetRoamingText)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1792 }
1793 pub unsafe fn GetAvailableDataClasses(&self) -> ::windows::core::Result<u32> {
1794 let mut result__ = ::windows::core::zeroed::<u32>();
1795 (::windows::core::Interface::vtable(self).GetAvailableDataClasses)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1796 }
1797 pub unsafe fn GetCurrentDataClass(&self) -> ::windows::core::Result<u32> {
1798 let mut result__ = ::windows::core::zeroed::<u32>();
1799 (::windows::core::Interface::vtable(self).GetCurrentDataClass)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1800 }
1801 pub unsafe fn GetRegistrationNetworkError(&self) -> ::windows::core::Result<u32> {
1802 let mut result__ = ::windows::core::zeroed::<u32>();
1803 (::windows::core::Interface::vtable(self).GetRegistrationNetworkError)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1804 }
1805 pub unsafe fn GetPacketAttachNetworkError(&self) -> ::windows::core::Result<u32> {
1806 let mut result__ = ::windows::core::zeroed::<u32>();
1807 (::windows::core::Interface::vtable(self).GetPacketAttachNetworkError)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1808 }
1809 pub unsafe fn SetRegisterMode<P0>(&self, registermode: MBN_REGISTER_MODE, providerid: P0, dataclass: u32) -> ::windows::core::Result<u32>
1810 where
1811 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
1812 {
1813 let mut result__ = ::windows::core::zeroed::<u32>();
1814 (::windows::core::Interface::vtable(self).SetRegisterMode)(::windows::core::Interface::as_raw(self), registermode, providerid.into_param().abi(), dataclass, &mut result__).from_abi(result__)
1815 }
1816}
1817::windows::imp::interface_hierarchy!(IMbnRegistration, ::windows::core::IUnknown);
1818impl ::core::cmp::PartialEq for IMbnRegistration {
1819 fn eq(&self, other: &Self) -> bool {
1820 self.0 == other.0
1821 }
1822}
1823impl ::core::cmp::Eq for IMbnRegistration {}
1824impl ::core::fmt::Debug for IMbnRegistration {
1825 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1826 f.debug_tuple("IMbnRegistration").field(&self.0).finish()
1827 }
1828}
1829unsafe impl ::windows::core::Interface for IMbnRegistration {
1830 type Vtable = IMbnRegistration_Vtbl;
1831}
1832impl ::core::clone::Clone for IMbnRegistration {
1833 fn clone(&self) -> Self {
1834 Self(self.0.clone())
1835 }
1836}
1837unsafe impl ::windows::core::ComInterface for IMbnRegistration {
1838 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2009_4bbb_aaee_338e368af6fa);
1839}
1840#[repr(C)]
1841#[doc(hidden)]
1842pub struct IMbnRegistration_Vtbl {
1843 pub base__: ::windows::core::IUnknown_Vtbl,
1844 pub GetRegisterState: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, registerstate: *mut MBN_REGISTER_STATE) -> ::windows::core::HRESULT,
1845 pub GetRegisterMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, registermode: *mut MBN_REGISTER_MODE) -> ::windows::core::HRESULT,
1846 pub GetProviderID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, providerid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1847 pub GetProviderName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, providername: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1848 pub GetRoamingText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, roamingtext: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1849 pub GetAvailableDataClasses: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, availabledataclasses: *mut u32) -> ::windows::core::HRESULT,
1850 pub GetCurrentDataClass: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, currentdataclass: *mut u32) -> ::windows::core::HRESULT,
1851 pub GetRegistrationNetworkError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, registrationnetworkerror: *mut u32) -> ::windows::core::HRESULT,
1852 pub GetPacketAttachNetworkError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, packetattachnetworkerror: *mut u32) -> ::windows::core::HRESULT,
1853 pub SetRegisterMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, registermode: MBN_REGISTER_MODE, providerid: ::windows::core::PCWSTR, dataclass: u32, requestid: *mut u32) -> ::windows::core::HRESULT,
1854}
1855#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1856#[repr(transparent)]
1857pub struct IMbnRegistrationEvents(::windows::core::IUnknown);
1858impl IMbnRegistrationEvents {
1859 pub unsafe fn OnRegisterModeAvailable<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1860 where
1861 P0: ::windows::core::IntoParam<IMbnRegistration>,
1862 {
1863 (::windows::core::Interface::vtable(self).OnRegisterModeAvailable)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1864 }
1865 pub unsafe fn OnRegisterStateChange<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1866 where
1867 P0: ::windows::core::IntoParam<IMbnRegistration>,
1868 {
1869 (::windows::core::Interface::vtable(self).OnRegisterStateChange)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1870 }
1871 pub unsafe fn OnPacketServiceStateChange<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
1872 where
1873 P0: ::windows::core::IntoParam<IMbnRegistration>,
1874 {
1875 (::windows::core::Interface::vtable(self).OnPacketServiceStateChange)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
1876 }
1877 pub unsafe fn OnSetRegisterModeComplete<P0>(&self, newinterface: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
1878 where
1879 P0: ::windows::core::IntoParam<IMbnRegistration>,
1880 {
1881 (::windows::core::Interface::vtable(self).OnSetRegisterModeComplete)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi(), requestid, status).ok()
1882 }
1883}
1884::windows::imp::interface_hierarchy!(IMbnRegistrationEvents, ::windows::core::IUnknown);
1885impl ::core::cmp::PartialEq for IMbnRegistrationEvents {
1886 fn eq(&self, other: &Self) -> bool {
1887 self.0 == other.0
1888 }
1889}
1890impl ::core::cmp::Eq for IMbnRegistrationEvents {}
1891impl ::core::fmt::Debug for IMbnRegistrationEvents {
1892 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1893 f.debug_tuple("IMbnRegistrationEvents").field(&self.0).finish()
1894 }
1895}
1896unsafe impl ::windows::core::Interface for IMbnRegistrationEvents {
1897 type Vtable = IMbnRegistrationEvents_Vtbl;
1898}
1899impl ::core::clone::Clone for IMbnRegistrationEvents {
1900 fn clone(&self) -> Self {
1901 Self(self.0.clone())
1902 }
1903}
1904unsafe impl ::windows::core::ComInterface for IMbnRegistrationEvents {
1905 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_200a_4bbb_aaee_338e368af6fa);
1906}
1907#[repr(C)]
1908#[doc(hidden)]
1909pub struct IMbnRegistrationEvents_Vtbl {
1910 pub base__: ::windows::core::IUnknown_Vtbl,
1911 pub OnRegisterModeAvailable: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1912 pub OnRegisterStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1913 pub OnPacketServiceStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1914 pub OnSetRegisterModeComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
1915}
1916#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1917#[repr(transparent)]
1918pub struct IMbnServiceActivation(::windows::core::IUnknown);
1919impl IMbnServiceActivation {
1920 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1921 #[cfg(feature = "Win32_System_Com")]
1922 pub unsafe fn Activate(&self, vendorspecificdata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<u32> {
1923 let mut result__ = ::windows::core::zeroed::<u32>();
1924 (::windows::core::Interface::vtable(self).Activate)(::windows::core::Interface::as_raw(self), vendorspecificdata, &mut result__).from_abi(result__)
1925 }
1926}
1927::windows::imp::interface_hierarchy!(IMbnServiceActivation, ::windows::core::IUnknown);
1928impl ::core::cmp::PartialEq for IMbnServiceActivation {
1929 fn eq(&self, other: &Self) -> bool {
1930 self.0 == other.0
1931 }
1932}
1933impl ::core::cmp::Eq for IMbnServiceActivation {}
1934impl ::core::fmt::Debug for IMbnServiceActivation {
1935 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1936 f.debug_tuple("IMbnServiceActivation").field(&self.0).finish()
1937 }
1938}
1939unsafe impl ::windows::core::Interface for IMbnServiceActivation {
1940 type Vtable = IMbnServiceActivation_Vtbl;
1941}
1942impl ::core::clone::Clone for IMbnServiceActivation {
1943 fn clone(&self) -> Self {
1944 Self(self.0.clone())
1945 }
1946}
1947unsafe impl ::windows::core::ComInterface for IMbnServiceActivation {
1948 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2017_4bbb_aaee_338e368af6fa);
1949}
1950#[repr(C)]
1951#[doc(hidden)]
1952pub struct IMbnServiceActivation_Vtbl {
1953 pub base__: ::windows::core::IUnknown_Vtbl,
1954 #[cfg(feature = "Win32_System_Com")]
1955 pub Activate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vendorspecificdata: *const super::super::System::Com::SAFEARRAY, requestid: *mut u32) -> ::windows::core::HRESULT,
1956 #[cfg(not(feature = "Win32_System_Com"))]
1957 Activate: usize,
1958}
1959#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
1960#[repr(transparent)]
1961pub struct IMbnServiceActivationEvents(::windows::core::IUnknown);
1962impl IMbnServiceActivationEvents {
1963 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1964 #[cfg(feature = "Win32_System_Com")]
1965 pub unsafe fn OnActivationComplete<P0>(&self, serviceactivation: P0, vendorspecificdata: *const super::super::System::Com::SAFEARRAY, requestid: u32, status: ::windows::core::HRESULT, networkerror: u32) -> ::windows::core::Result<()>
1966 where
1967 P0: ::windows::core::IntoParam<IMbnServiceActivation>,
1968 {
1969 (::windows::core::Interface::vtable(self).OnActivationComplete)(::windows::core::Interface::as_raw(self), serviceactivation.into_param().abi(), vendorspecificdata, requestid, status, networkerror).ok()
1970 }
1971}
1972::windows::imp::interface_hierarchy!(IMbnServiceActivationEvents, ::windows::core::IUnknown);
1973impl ::core::cmp::PartialEq for IMbnServiceActivationEvents {
1974 fn eq(&self, other: &Self) -> bool {
1975 self.0 == other.0
1976 }
1977}
1978impl ::core::cmp::Eq for IMbnServiceActivationEvents {}
1979impl ::core::fmt::Debug for IMbnServiceActivationEvents {
1980 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1981 f.debug_tuple("IMbnServiceActivationEvents").field(&self.0).finish()
1982 }
1983}
1984unsafe impl ::windows::core::Interface for IMbnServiceActivationEvents {
1985 type Vtable = IMbnServiceActivationEvents_Vtbl;
1986}
1987impl ::core::clone::Clone for IMbnServiceActivationEvents {
1988 fn clone(&self) -> Self {
1989 Self(self.0.clone())
1990 }
1991}
1992unsafe impl ::windows::core::ComInterface for IMbnServiceActivationEvents {
1993 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2018_4bbb_aaee_338e368af6fa);
1994}
1995#[repr(C)]
1996#[doc(hidden)]
1997pub struct IMbnServiceActivationEvents_Vtbl {
1998 pub base__: ::windows::core::IUnknown_Vtbl,
1999 #[cfg(feature = "Win32_System_Com")]
2000 pub OnActivationComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, serviceactivation: *mut ::core::ffi::c_void, vendorspecificdata: *const super::super::System::Com::SAFEARRAY, requestid: u32, status: ::windows::core::HRESULT, networkerror: u32) -> ::windows::core::HRESULT,
2001 #[cfg(not(feature = "Win32_System_Com"))]
2002 OnActivationComplete: usize,
2003}
2004#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2005#[repr(transparent)]
2006pub struct IMbnSignal(::windows::core::IUnknown);
2007impl IMbnSignal {
2008 pub unsafe fn GetSignalStrength(&self) -> ::windows::core::Result<u32> {
2009 let mut result__ = ::windows::core::zeroed::<u32>();
2010 (::windows::core::Interface::vtable(self).GetSignalStrength)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2011 }
2012 pub unsafe fn GetSignalError(&self) -> ::windows::core::Result<u32> {
2013 let mut result__ = ::windows::core::zeroed::<u32>();
2014 (::windows::core::Interface::vtable(self).GetSignalError)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2015 }
2016}
2017::windows::imp::interface_hierarchy!(IMbnSignal, ::windows::core::IUnknown);
2018impl ::core::cmp::PartialEq for IMbnSignal {
2019 fn eq(&self, other: &Self) -> bool {
2020 self.0 == other.0
2021 }
2022}
2023impl ::core::cmp::Eq for IMbnSignal {}
2024impl ::core::fmt::Debug for IMbnSignal {
2025 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2026 f.debug_tuple("IMbnSignal").field(&self.0).finish()
2027 }
2028}
2029unsafe impl ::windows::core::Interface for IMbnSignal {
2030 type Vtable = IMbnSignal_Vtbl;
2031}
2032impl ::core::clone::Clone for IMbnSignal {
2033 fn clone(&self) -> Self {
2034 Self(self.0.clone())
2035 }
2036}
2037unsafe impl ::windows::core::ComInterface for IMbnSignal {
2038 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2003_4bbb_aaee_338e368af6fa);
2039}
2040#[repr(C)]
2041#[doc(hidden)]
2042pub struct IMbnSignal_Vtbl {
2043 pub base__: ::windows::core::IUnknown_Vtbl,
2044 pub GetSignalStrength: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, signalstrength: *mut u32) -> ::windows::core::HRESULT,
2045 pub GetSignalError: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, signalerror: *mut u32) -> ::windows::core::HRESULT,
2046}
2047#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2048#[repr(transparent)]
2049pub struct IMbnSignalEvents(::windows::core::IUnknown);
2050impl IMbnSignalEvents {
2051 pub unsafe fn OnSignalStateChange<P0>(&self, newinterface: P0) -> ::windows::core::Result<()>
2052 where
2053 P0: ::windows::core::IntoParam<IMbnSignal>,
2054 {
2055 (::windows::core::Interface::vtable(self).OnSignalStateChange)(::windows::core::Interface::as_raw(self), newinterface.into_param().abi()).ok()
2056 }
2057}
2058::windows::imp::interface_hierarchy!(IMbnSignalEvents, ::windows::core::IUnknown);
2059impl ::core::cmp::PartialEq for IMbnSignalEvents {
2060 fn eq(&self, other: &Self) -> bool {
2061 self.0 == other.0
2062 }
2063}
2064impl ::core::cmp::Eq for IMbnSignalEvents {}
2065impl ::core::fmt::Debug for IMbnSignalEvents {
2066 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2067 f.debug_tuple("IMbnSignalEvents").field(&self.0).finish()
2068 }
2069}
2070unsafe impl ::windows::core::Interface for IMbnSignalEvents {
2071 type Vtable = IMbnSignalEvents_Vtbl;
2072}
2073impl ::core::clone::Clone for IMbnSignalEvents {
2074 fn clone(&self) -> Self {
2075 Self(self.0.clone())
2076 }
2077}
2078unsafe impl ::windows::core::ComInterface for IMbnSignalEvents {
2079 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2004_4bbb_aaee_338e368af6fa);
2080}
2081#[repr(C)]
2082#[doc(hidden)]
2083pub struct IMbnSignalEvents_Vtbl {
2084 pub base__: ::windows::core::IUnknown_Vtbl,
2085 pub OnSignalStateChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2086}
2087#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2088#[repr(transparent)]
2089pub struct IMbnSms(::windows::core::IUnknown);
2090impl IMbnSms {
2091 pub unsafe fn GetSmsConfiguration(&self) -> ::windows::core::Result<IMbnSmsConfiguration> {
2092 let mut result__ = ::windows::core::zeroed::<IMbnSmsConfiguration>();
2093 (::windows::core::Interface::vtable(self).GetSmsConfiguration)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2094 }
2095 pub unsafe fn SetSmsConfiguration<P0>(&self, smsconfiguration: P0) -> ::windows::core::Result<u32>
2096 where
2097 P0: ::windows::core::IntoParam<IMbnSmsConfiguration>,
2098 {
2099 let mut result__ = ::windows::core::zeroed::<u32>();
2100 (::windows::core::Interface::vtable(self).SetSmsConfiguration)(::windows::core::Interface::as_raw(self), smsconfiguration.into_param().abi(), &mut result__).from_abi(result__)
2101 }
2102 pub unsafe fn SmsSendPdu<P0>(&self, pdudata: P0, size: u8) -> ::windows::core::Result<u32>
2103 where
2104 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
2105 {
2106 let mut result__ = ::windows::core::zeroed::<u32>();
2107 (::windows::core::Interface::vtable(self).SmsSendPdu)(::windows::core::Interface::as_raw(self), pdudata.into_param().abi(), size, &mut result__).from_abi(result__)
2108 }
2109 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
2110 #[cfg(feature = "Win32_System_Com")]
2111 pub unsafe fn SmsSendCdma<P0>(&self, address: P0, encoding: MBN_SMS_CDMA_ENCODING, language: MBN_SMS_CDMA_LANG, sizeincharacters: u32, message: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<u32>
2112 where
2113 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
2114 {
2115 let mut result__ = ::windows::core::zeroed::<u32>();
2116 (::windows::core::Interface::vtable(self).SmsSendCdma)(::windows::core::Interface::as_raw(self), address.into_param().abi(), encoding, language, sizeincharacters, message, &mut result__).from_abi(result__)
2117 }
2118 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
2119 #[cfg(feature = "Win32_System_Com")]
2120 pub unsafe fn SmsSendCdmaPdu(&self, message: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<u32> {
2121 let mut result__ = ::windows::core::zeroed::<u32>();
2122 (::windows::core::Interface::vtable(self).SmsSendCdmaPdu)(::windows::core::Interface::as_raw(self), message, &mut result__).from_abi(result__)
2123 }
2124 pub unsafe fn SmsRead(&self, smsfilter: *const MBN_SMS_FILTER, smsformat: MBN_SMS_FORMAT) -> ::windows::core::Result<u32> {
2125 let mut result__ = ::windows::core::zeroed::<u32>();
2126 (::windows::core::Interface::vtable(self).SmsRead)(::windows::core::Interface::as_raw(self), smsfilter, smsformat, &mut result__).from_abi(result__)
2127 }
2128 pub unsafe fn SmsDelete(&self, smsfilter: *const MBN_SMS_FILTER) -> ::windows::core::Result<u32> {
2129 let mut result__ = ::windows::core::zeroed::<u32>();
2130 (::windows::core::Interface::vtable(self).SmsDelete)(::windows::core::Interface::as_raw(self), smsfilter, &mut result__).from_abi(result__)
2131 }
2132 pub unsafe fn GetSmsStatus(&self) -> ::windows::core::Result<MBN_SMS_STATUS_INFO> {
2133 let mut result__ = ::windows::core::zeroed::<MBN_SMS_STATUS_INFO>();
2134 (::windows::core::Interface::vtable(self).GetSmsStatus)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2135 }
2136}
2137::windows::imp::interface_hierarchy!(IMbnSms, ::windows::core::IUnknown);
2138impl ::core::cmp::PartialEq for IMbnSms {
2139 fn eq(&self, other: &Self) -> bool {
2140 self.0 == other.0
2141 }
2142}
2143impl ::core::cmp::Eq for IMbnSms {}
2144impl ::core::fmt::Debug for IMbnSms {
2145 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2146 f.debug_tuple("IMbnSms").field(&self.0).finish()
2147 }
2148}
2149unsafe impl ::windows::core::Interface for IMbnSms {
2150 type Vtable = IMbnSms_Vtbl;
2151}
2152impl ::core::clone::Clone for IMbnSms {
2153 fn clone(&self) -> Self {
2154 Self(self.0.clone())
2155 }
2156}
2157unsafe impl ::windows::core::ComInterface for IMbnSms {
2158 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2015_4bbb_aaee_338e368af6fa);
2159}
2160#[repr(C)]
2161#[doc(hidden)]
2162pub struct IMbnSms_Vtbl {
2163 pub base__: ::windows::core::IUnknown_Vtbl,
2164 pub GetSmsConfiguration: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, smsconfiguration: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2165 pub SetSmsConfiguration: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, smsconfiguration: *mut ::core::ffi::c_void, requestid: *mut u32) -> ::windows::core::HRESULT,
2166 pub SmsSendPdu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdudata: ::windows::core::PCWSTR, size: u8, requestid: *mut u32) -> ::windows::core::HRESULT,
2167 #[cfg(feature = "Win32_System_Com")]
2168 pub SmsSendCdma: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, address: ::windows::core::PCWSTR, encoding: MBN_SMS_CDMA_ENCODING, language: MBN_SMS_CDMA_LANG, sizeincharacters: u32, message: *const super::super::System::Com::SAFEARRAY, requestid: *mut u32) -> ::windows::core::HRESULT,
2169 #[cfg(not(feature = "Win32_System_Com"))]
2170 SmsSendCdma: usize,
2171 #[cfg(feature = "Win32_System_Com")]
2172 pub SmsSendCdmaPdu: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, message: *const super::super::System::Com::SAFEARRAY, requestid: *mut u32) -> ::windows::core::HRESULT,
2173 #[cfg(not(feature = "Win32_System_Com"))]
2174 SmsSendCdmaPdu: usize,
2175 pub SmsRead: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, smsfilter: *const MBN_SMS_FILTER, smsformat: MBN_SMS_FORMAT, requestid: *mut u32) -> ::windows::core::HRESULT,
2176 pub SmsDelete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, smsfilter: *const MBN_SMS_FILTER, requestid: *mut u32) -> ::windows::core::HRESULT,
2177 pub GetSmsStatus: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, smsstatusinfo: *mut MBN_SMS_STATUS_INFO) -> ::windows::core::HRESULT,
2178}
2179#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2180#[repr(transparent)]
2181pub struct IMbnSmsConfiguration(::windows::core::IUnknown);
2182impl IMbnSmsConfiguration {
2183 pub unsafe fn ServiceCenterAddress(&self) -> ::windows::core::Result<::windows::core::BSTR> {
2184 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
2185 (::windows::core::Interface::vtable(self).ServiceCenterAddress)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2186 }
2187 pub unsafe fn SetServiceCenterAddress<P0>(&self, scaddress: P0) -> ::windows::core::Result<()>
2188 where
2189 P0: ::windows::core::IntoParam<::windows::core::PCWSTR>,
2190 {
2191 (::windows::core::Interface::vtable(self).SetServiceCenterAddress)(::windows::core::Interface::as_raw(self), scaddress.into_param().abi()).ok()
2192 }
2193 pub unsafe fn MaxMessageIndex(&self) -> ::windows::core::Result<u32> {
2194 let mut result__ = ::windows::core::zeroed::<u32>();
2195 (::windows::core::Interface::vtable(self).MaxMessageIndex)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2196 }
2197 pub unsafe fn CdmaShortMsgSize(&self) -> ::windows::core::Result<u32> {
2198 let mut result__ = ::windows::core::zeroed::<u32>();
2199 (::windows::core::Interface::vtable(self).CdmaShortMsgSize)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2200 }
2201 pub unsafe fn SmsFormat(&self) -> ::windows::core::Result<MBN_SMS_FORMAT> {
2202 let mut result__ = ::windows::core::zeroed::<MBN_SMS_FORMAT>();
2203 (::windows::core::Interface::vtable(self).SmsFormat)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2204 }
2205 pub unsafe fn SetSmsFormat(&self, smsformat: MBN_SMS_FORMAT) -> ::windows::core::Result<()> {
2206 (::windows::core::Interface::vtable(self).SetSmsFormat)(::windows::core::Interface::as_raw(self), smsformat).ok()
2207 }
2208}
2209::windows::imp::interface_hierarchy!(IMbnSmsConfiguration, ::windows::core::IUnknown);
2210impl ::core::cmp::PartialEq for IMbnSmsConfiguration {
2211 fn eq(&self, other: &Self) -> bool {
2212 self.0 == other.0
2213 }
2214}
2215impl ::core::cmp::Eq for IMbnSmsConfiguration {}
2216impl ::core::fmt::Debug for IMbnSmsConfiguration {
2217 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2218 f.debug_tuple("IMbnSmsConfiguration").field(&self.0).finish()
2219 }
2220}
2221unsafe impl ::windows::core::Interface for IMbnSmsConfiguration {
2222 type Vtable = IMbnSmsConfiguration_Vtbl;
2223}
2224impl ::core::clone::Clone for IMbnSmsConfiguration {
2225 fn clone(&self) -> Self {
2226 Self(self.0.clone())
2227 }
2228}
2229unsafe impl ::windows::core::ComInterface for IMbnSmsConfiguration {
2230 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2012_4bbb_aaee_338e368af6fa);
2231}
2232#[repr(C)]
2233#[doc(hidden)]
2234pub struct IMbnSmsConfiguration_Vtbl {
2235 pub base__: ::windows::core::IUnknown_Vtbl,
2236 pub ServiceCenterAddress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, scaddress: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
2237 pub SetServiceCenterAddress: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, scaddress: ::windows::core::PCWSTR) -> ::windows::core::HRESULT,
2238 pub MaxMessageIndex: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: *mut u32) -> ::windows::core::HRESULT,
2239 pub CdmaShortMsgSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, shortmsgsize: *mut u32) -> ::windows::core::HRESULT,
2240 pub SmsFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, smsformat: *mut MBN_SMS_FORMAT) -> ::windows::core::HRESULT,
2241 pub SetSmsFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, smsformat: MBN_SMS_FORMAT) -> ::windows::core::HRESULT,
2242}
2243#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2244#[repr(transparent)]
2245pub struct IMbnSmsEvents(::windows::core::IUnknown);
2246impl IMbnSmsEvents {
2247 pub unsafe fn OnSmsConfigurationChange<P0>(&self, sms: P0) -> ::windows::core::Result<()>
2248 where
2249 P0: ::windows::core::IntoParam<IMbnSms>,
2250 {
2251 (::windows::core::Interface::vtable(self).OnSmsConfigurationChange)(::windows::core::Interface::as_raw(self), sms.into_param().abi()).ok()
2252 }
2253 pub unsafe fn OnSetSmsConfigurationComplete<P0>(&self, sms: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
2254 where
2255 P0: ::windows::core::IntoParam<IMbnSms>,
2256 {
2257 (::windows::core::Interface::vtable(self).OnSetSmsConfigurationComplete)(::windows::core::Interface::as_raw(self), sms.into_param().abi(), requestid, status).ok()
2258 }
2259 pub unsafe fn OnSmsSendComplete<P0>(&self, sms: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
2260 where
2261 P0: ::windows::core::IntoParam<IMbnSms>,
2262 {
2263 (::windows::core::Interface::vtable(self).OnSmsSendComplete)(::windows::core::Interface::as_raw(self), sms.into_param().abi(), requestid, status).ok()
2264 }
2265 #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
2266 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
2267 pub unsafe fn OnSmsReadComplete<P0, P1>(&self, sms: P0, smsformat: MBN_SMS_FORMAT, readmsgs: *const super::super::System::Com::SAFEARRAY, moremsgs: P1, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
2268 where
2269 P0: ::windows::core::IntoParam<IMbnSms>,
2270 P1: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
2271 {
2272 (::windows::core::Interface::vtable(self).OnSmsReadComplete)(::windows::core::Interface::as_raw(self), sms.into_param().abi(), smsformat, readmsgs, moremsgs.into_param().abi(), requestid, status).ok()
2273 }
2274 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
2275 #[cfg(feature = "Win32_System_Com")]
2276 pub unsafe fn OnSmsNewClass0Message<P0>(&self, sms: P0, smsformat: MBN_SMS_FORMAT, readmsgs: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<()>
2277 where
2278 P0: ::windows::core::IntoParam<IMbnSms>,
2279 {
2280 (::windows::core::Interface::vtable(self).OnSmsNewClass0Message)(::windows::core::Interface::as_raw(self), sms.into_param().abi(), smsformat, readmsgs).ok()
2281 }
2282 pub unsafe fn OnSmsDeleteComplete<P0>(&self, sms: P0, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::Result<()>
2283 where
2284 P0: ::windows::core::IntoParam<IMbnSms>,
2285 {
2286 (::windows::core::Interface::vtable(self).OnSmsDeleteComplete)(::windows::core::Interface::as_raw(self), sms.into_param().abi(), requestid, status).ok()
2287 }
2288 pub unsafe fn OnSmsStatusChange<P0>(&self, sms: P0) -> ::windows::core::Result<()>
2289 where
2290 P0: ::windows::core::IntoParam<IMbnSms>,
2291 {
2292 (::windows::core::Interface::vtable(self).OnSmsStatusChange)(::windows::core::Interface::as_raw(self), sms.into_param().abi()).ok()
2293 }
2294}
2295::windows::imp::interface_hierarchy!(IMbnSmsEvents, ::windows::core::IUnknown);
2296impl ::core::cmp::PartialEq for IMbnSmsEvents {
2297 fn eq(&self, other: &Self) -> bool {
2298 self.0 == other.0
2299 }
2300}
2301impl ::core::cmp::Eq for IMbnSmsEvents {}
2302impl ::core::fmt::Debug for IMbnSmsEvents {
2303 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2304 f.debug_tuple("IMbnSmsEvents").field(&self.0).finish()
2305 }
2306}
2307unsafe impl ::windows::core::Interface for IMbnSmsEvents {
2308 type Vtable = IMbnSmsEvents_Vtbl;
2309}
2310impl ::core::clone::Clone for IMbnSmsEvents {
2311 fn clone(&self) -> Self {
2312 Self(self.0.clone())
2313 }
2314}
2315unsafe impl ::windows::core::ComInterface for IMbnSmsEvents {
2316 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2016_4bbb_aaee_338e368af6fa);
2317}
2318#[repr(C)]
2319#[doc(hidden)]
2320pub struct IMbnSmsEvents_Vtbl {
2321 pub base__: ::windows::core::IUnknown_Vtbl,
2322 pub OnSmsConfigurationChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sms: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2323 pub OnSetSmsConfigurationComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sms: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
2324 pub OnSmsSendComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sms: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
2325 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
2326 pub OnSmsReadComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sms: *mut ::core::ffi::c_void, smsformat: MBN_SMS_FORMAT, readmsgs: *const super::super::System::Com::SAFEARRAY, moremsgs: super::super::Foundation::VARIANT_BOOL, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
2327 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))]
2328 OnSmsReadComplete: usize,
2329 #[cfg(feature = "Win32_System_Com")]
2330 pub OnSmsNewClass0Message: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sms: *mut ::core::ffi::c_void, smsformat: MBN_SMS_FORMAT, readmsgs: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
2331 #[cfg(not(feature = "Win32_System_Com"))]
2332 OnSmsNewClass0Message: usize,
2333 pub OnSmsDeleteComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sms: *mut ::core::ffi::c_void, requestid: u32, status: ::windows::core::HRESULT) -> ::windows::core::HRESULT,
2334 pub OnSmsStatusChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sms: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2335}
2336#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2337#[repr(transparent)]
2338pub struct IMbnSmsReadMsgPdu(::windows::core::IUnknown);
2339impl IMbnSmsReadMsgPdu {
2340 pub unsafe fn Index(&self) -> ::windows::core::Result<u32> {
2341 let mut result__ = ::windows::core::zeroed::<u32>();
2342 (::windows::core::Interface::vtable(self).Index)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2343 }
2344 pub unsafe fn Status(&self) -> ::windows::core::Result<MBN_MSG_STATUS> {
2345 let mut result__ = ::windows::core::zeroed::<MBN_MSG_STATUS>();
2346 (::windows::core::Interface::vtable(self).Status)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2347 }
2348 pub unsafe fn PduData(&self) -> ::windows::core::Result<::windows::core::BSTR> {
2349 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
2350 (::windows::core::Interface::vtable(self).PduData)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2351 }
2352 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
2353 #[cfg(feature = "Win32_System_Com")]
2354 pub unsafe fn Message(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
2355 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
2356 (::windows::core::Interface::vtable(self).Message)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2357 }
2358}
2359::windows::imp::interface_hierarchy!(IMbnSmsReadMsgPdu, ::windows::core::IUnknown);
2360impl ::core::cmp::PartialEq for IMbnSmsReadMsgPdu {
2361 fn eq(&self, other: &Self) -> bool {
2362 self.0 == other.0
2363 }
2364}
2365impl ::core::cmp::Eq for IMbnSmsReadMsgPdu {}
2366impl ::core::fmt::Debug for IMbnSmsReadMsgPdu {
2367 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2368 f.debug_tuple("IMbnSmsReadMsgPdu").field(&self.0).finish()
2369 }
2370}
2371unsafe impl ::windows::core::Interface for IMbnSmsReadMsgPdu {
2372 type Vtable = IMbnSmsReadMsgPdu_Vtbl;
2373}
2374impl ::core::clone::Clone for IMbnSmsReadMsgPdu {
2375 fn clone(&self) -> Self {
2376 Self(self.0.clone())
2377 }
2378}
2379unsafe impl ::windows::core::ComInterface for IMbnSmsReadMsgPdu {
2380 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2013_4bbb_aaee_338e368af6fa);
2381}
2382#[repr(C)]
2383#[doc(hidden)]
2384pub struct IMbnSmsReadMsgPdu_Vtbl {
2385 pub base__: ::windows::core::IUnknown_Vtbl,
2386 pub Index: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: *mut u32) -> ::windows::core::HRESULT,
2387 pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, status: *mut MBN_MSG_STATUS) -> ::windows::core::HRESULT,
2388 pub PduData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdudata: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
2389 #[cfg(feature = "Win32_System_Com")]
2390 pub Message: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, message: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
2391 #[cfg(not(feature = "Win32_System_Com"))]
2392 Message: usize,
2393}
2394#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2395#[repr(transparent)]
2396pub struct IMbnSmsReadMsgTextCdma(::windows::core::IUnknown);
2397impl IMbnSmsReadMsgTextCdma {
2398 pub unsafe fn Index(&self) -> ::windows::core::Result<u32> {
2399 let mut result__ = ::windows::core::zeroed::<u32>();
2400 (::windows::core::Interface::vtable(self).Index)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2401 }
2402 pub unsafe fn Status(&self) -> ::windows::core::Result<MBN_MSG_STATUS> {
2403 let mut result__ = ::windows::core::zeroed::<MBN_MSG_STATUS>();
2404 (::windows::core::Interface::vtable(self).Status)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2405 }
2406 pub unsafe fn Address(&self) -> ::windows::core::Result<::windows::core::BSTR> {
2407 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
2408 (::windows::core::Interface::vtable(self).Address)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2409 }
2410 pub unsafe fn Timestamp(&self) -> ::windows::core::Result<::windows::core::BSTR> {
2411 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
2412 (::windows::core::Interface::vtable(self).Timestamp)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2413 }
2414 pub unsafe fn EncodingID(&self) -> ::windows::core::Result<MBN_SMS_CDMA_ENCODING> {
2415 let mut result__ = ::windows::core::zeroed::<MBN_SMS_CDMA_ENCODING>();
2416 (::windows::core::Interface::vtable(self).EncodingID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2417 }
2418 pub unsafe fn LanguageID(&self) -> ::windows::core::Result<MBN_SMS_CDMA_LANG> {
2419 let mut result__ = ::windows::core::zeroed::<MBN_SMS_CDMA_LANG>();
2420 (::windows::core::Interface::vtable(self).LanguageID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2421 }
2422 pub unsafe fn SizeInCharacters(&self) -> ::windows::core::Result<u32> {
2423 let mut result__ = ::windows::core::zeroed::<u32>();
2424 (::windows::core::Interface::vtable(self).SizeInCharacters)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2425 }
2426 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
2427 #[cfg(feature = "Win32_System_Com")]
2428 pub unsafe fn Message(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
2429 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
2430 (::windows::core::Interface::vtable(self).Message)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2431 }
2432}
2433::windows::imp::interface_hierarchy!(IMbnSmsReadMsgTextCdma, ::windows::core::IUnknown);
2434impl ::core::cmp::PartialEq for IMbnSmsReadMsgTextCdma {
2435 fn eq(&self, other: &Self) -> bool {
2436 self.0 == other.0
2437 }
2438}
2439impl ::core::cmp::Eq for IMbnSmsReadMsgTextCdma {}
2440impl ::core::fmt::Debug for IMbnSmsReadMsgTextCdma {
2441 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2442 f.debug_tuple("IMbnSmsReadMsgTextCdma").field(&self.0).finish()
2443 }
2444}
2445unsafe impl ::windows::core::Interface for IMbnSmsReadMsgTextCdma {
2446 type Vtable = IMbnSmsReadMsgTextCdma_Vtbl;
2447}
2448impl ::core::clone::Clone for IMbnSmsReadMsgTextCdma {
2449 fn clone(&self) -> Self {
2450 Self(self.0.clone())
2451 }
2452}
2453unsafe impl ::windows::core::ComInterface for IMbnSmsReadMsgTextCdma {
2454 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2014_4bbb_aaee_338e368af6fa);
2455}
2456#[repr(C)]
2457#[doc(hidden)]
2458pub struct IMbnSmsReadMsgTextCdma_Vtbl {
2459 pub base__: ::windows::core::IUnknown_Vtbl,
2460 pub Index: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: *mut u32) -> ::windows::core::HRESULT,
2461 pub Status: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, status: *mut MBN_MSG_STATUS) -> ::windows::core::HRESULT,
2462 pub Address: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, address: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
2463 pub Timestamp: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, timestamp: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
2464 pub EncodingID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, encodingid: *mut MBN_SMS_CDMA_ENCODING) -> ::windows::core::HRESULT,
2465 pub LanguageID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, languageid: *mut MBN_SMS_CDMA_LANG) -> ::windows::core::HRESULT,
2466 pub SizeInCharacters: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, sizeincharacters: *mut u32) -> ::windows::core::HRESULT,
2467 #[cfg(feature = "Win32_System_Com")]
2468 pub Message: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, message: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
2469 #[cfg(not(feature = "Win32_System_Com"))]
2470 Message: usize,
2471}
2472#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2473#[repr(transparent)]
2474pub struct IMbnSubscriberInformation(::windows::core::IUnknown);
2475impl IMbnSubscriberInformation {
2476 pub unsafe fn SubscriberID(&self) -> ::windows::core::Result<::windows::core::BSTR> {
2477 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
2478 (::windows::core::Interface::vtable(self).SubscriberID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2479 }
2480 pub unsafe fn SimIccID(&self) -> ::windows::core::Result<::windows::core::BSTR> {
2481 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
2482 (::windows::core::Interface::vtable(self).SimIccID)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2483 }
2484 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
2485 #[cfg(feature = "Win32_System_Com")]
2486 pub unsafe fn TelephoneNumbers(&self) -> ::windows::core::Result<*mut super::super::System::Com::SAFEARRAY> {
2487 let mut result__ = ::windows::core::zeroed::<*mut super::super::System::Com::SAFEARRAY>();
2488 (::windows::core::Interface::vtable(self).TelephoneNumbers)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
2489 }
2490}
2491::windows::imp::interface_hierarchy!(IMbnSubscriberInformation, ::windows::core::IUnknown);
2492impl ::core::cmp::PartialEq for IMbnSubscriberInformation {
2493 fn eq(&self, other: &Self) -> bool {
2494 self.0 == other.0
2495 }
2496}
2497impl ::core::cmp::Eq for IMbnSubscriberInformation {}
2498impl ::core::fmt::Debug for IMbnSubscriberInformation {
2499 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2500 f.debug_tuple("IMbnSubscriberInformation").field(&self.0).finish()
2501 }
2502}
2503unsafe impl ::windows::core::Interface for IMbnSubscriberInformation {
2504 type Vtable = IMbnSubscriberInformation_Vtbl;
2505}
2506impl ::core::clone::Clone for IMbnSubscriberInformation {
2507 fn clone(&self) -> Self {
2508 Self(self.0.clone())
2509 }
2510}
2511unsafe impl ::windows::core::ComInterface for IMbnSubscriberInformation {
2512 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x459ecc43_bcf5_11dc_a8a8_001321f1405f);
2513}
2514#[repr(C)]
2515#[doc(hidden)]
2516pub struct IMbnSubscriberInformation_Vtbl {
2517 pub base__: ::windows::core::IUnknown_Vtbl,
2518 pub SubscriberID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, subscriberid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
2519 pub SimIccID: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, simiccid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
2520 #[cfg(feature = "Win32_System_Com")]
2521 pub TelephoneNumbers: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, telephonenumbers: *mut *mut super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
2522 #[cfg(not(feature = "Win32_System_Com"))]
2523 TelephoneNumbers: usize,
2524}
2525#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2526#[repr(transparent)]
2527pub struct IMbnVendorSpecificEvents(::windows::core::IUnknown);
2528impl IMbnVendorSpecificEvents {
2529 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
2530 #[cfg(feature = "Win32_System_Com")]
2531 pub unsafe fn OnEventNotification<P0>(&self, vendoroperation: P0, vendorspecificdata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<()>
2532 where
2533 P0: ::windows::core::IntoParam<IMbnVendorSpecificOperation>,
2534 {
2535 (::windows::core::Interface::vtable(self).OnEventNotification)(::windows::core::Interface::as_raw(self), vendoroperation.into_param().abi(), vendorspecificdata).ok()
2536 }
2537 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
2538 #[cfg(feature = "Win32_System_Com")]
2539 pub unsafe fn OnSetVendorSpecificComplete<P0>(&self, vendoroperation: P0, vendorspecificdata: *const super::super::System::Com::SAFEARRAY, requestid: u32) -> ::windows::core::Result<()>
2540 where
2541 P0: ::windows::core::IntoParam<IMbnVendorSpecificOperation>,
2542 {
2543 (::windows::core::Interface::vtable(self).OnSetVendorSpecificComplete)(::windows::core::Interface::as_raw(self), vendoroperation.into_param().abi(), vendorspecificdata, requestid).ok()
2544 }
2545}
2546::windows::imp::interface_hierarchy!(IMbnVendorSpecificEvents, ::windows::core::IUnknown);
2547impl ::core::cmp::PartialEq for IMbnVendorSpecificEvents {
2548 fn eq(&self, other: &Self) -> bool {
2549 self.0 == other.0
2550 }
2551}
2552impl ::core::cmp::Eq for IMbnVendorSpecificEvents {}
2553impl ::core::fmt::Debug for IMbnVendorSpecificEvents {
2554 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2555 f.debug_tuple("IMbnVendorSpecificEvents").field(&self.0).finish()
2556 }
2557}
2558unsafe impl ::windows::core::Interface for IMbnVendorSpecificEvents {
2559 type Vtable = IMbnVendorSpecificEvents_Vtbl;
2560}
2561impl ::core::clone::Clone for IMbnVendorSpecificEvents {
2562 fn clone(&self) -> Self {
2563 Self(self.0.clone())
2564 }
2565}
2566unsafe impl ::windows::core::ComInterface for IMbnVendorSpecificEvents {
2567 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_201a_4bbb_aaee_338e368af6fa);
2568}
2569#[repr(C)]
2570#[doc(hidden)]
2571pub struct IMbnVendorSpecificEvents_Vtbl {
2572 pub base__: ::windows::core::IUnknown_Vtbl,
2573 #[cfg(feature = "Win32_System_Com")]
2574 pub OnEventNotification: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vendoroperation: *mut ::core::ffi::c_void, vendorspecificdata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::HRESULT,
2575 #[cfg(not(feature = "Win32_System_Com"))]
2576 OnEventNotification: usize,
2577 #[cfg(feature = "Win32_System_Com")]
2578 pub OnSetVendorSpecificComplete: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vendoroperation: *mut ::core::ffi::c_void, vendorspecificdata: *const super::super::System::Com::SAFEARRAY, requestid: u32) -> ::windows::core::HRESULT,
2579 #[cfg(not(feature = "Win32_System_Com"))]
2580 OnSetVendorSpecificComplete: usize,
2581}
2582#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2583#[repr(transparent)]
2584pub struct IMbnVendorSpecificOperation(::windows::core::IUnknown);
2585impl IMbnVendorSpecificOperation {
2586 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
2587 #[cfg(feature = "Win32_System_Com")]
2588 pub unsafe fn SetVendorSpecific(&self, vendorspecificdata: *const super::super::System::Com::SAFEARRAY) -> ::windows::core::Result<u32> {
2589 let mut result__ = ::windows::core::zeroed::<u32>();
2590 (::windows::core::Interface::vtable(self).SetVendorSpecific)(::windows::core::Interface::as_raw(self), vendorspecificdata, &mut result__).from_abi(result__)
2591 }
2592}
2593::windows::imp::interface_hierarchy!(IMbnVendorSpecificOperation, ::windows::core::IUnknown);
2594impl ::core::cmp::PartialEq for IMbnVendorSpecificOperation {
2595 fn eq(&self, other: &Self) -> bool {
2596 self.0 == other.0
2597 }
2598}
2599impl ::core::cmp::Eq for IMbnVendorSpecificOperation {}
2600impl ::core::fmt::Debug for IMbnVendorSpecificOperation {
2601 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2602 f.debug_tuple("IMbnVendorSpecificOperation").field(&self.0).finish()
2603 }
2604}
2605unsafe impl ::windows::core::Interface for IMbnVendorSpecificOperation {
2606 type Vtable = IMbnVendorSpecificOperation_Vtbl;
2607}
2608impl ::core::clone::Clone for IMbnVendorSpecificOperation {
2609 fn clone(&self) -> Self {
2610 Self(self.0.clone())
2611 }
2612}
2613unsafe impl ::windows::core::ComInterface for IMbnVendorSpecificOperation {
2614 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdcbbbab6_2019_4bbb_aaee_338e368af6fa);
2615}
2616#[repr(C)]
2617#[doc(hidden)]
2618pub struct IMbnVendorSpecificOperation_Vtbl {
2619 pub base__: ::windows::core::IUnknown_Vtbl,
2620 #[cfg(feature = "Win32_System_Com")]
2621 pub SetVendorSpecific: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vendorspecificdata: *const super::super::System::Com::SAFEARRAY, requestid: *mut u32) -> ::windows::core::HRESULT,
2622 #[cfg(not(feature = "Win32_System_Com"))]
2623 SetVendorSpecific: usize,
2624}
2625#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2626pub const MbnConnectionManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbdfee05c_4418_11dd_90ed_001c257ccff1);
2627#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2628pub const MbnConnectionProfileManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbdfee05a_4418_11dd_90ed_001c257ccff1);
2629#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2630pub const MbnDeviceServicesManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2269daa3_2a9f_4165_a501_ce00a6f7a75b);
2631#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2632pub const MbnInterfaceManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbdfee05b_4418_11dd_90ed_001c257ccff1);
2633#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2634#[repr(transparent)]
2635#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2636pub struct MBN_ACTIVATION_STATE(pub i32);
2637#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2638pub const MBN_ACTIVATION_STATE_NONE: MBN_ACTIVATION_STATE = MBN_ACTIVATION_STATE(0i32);
2639#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2640pub const MBN_ACTIVATION_STATE_ACTIVATED: MBN_ACTIVATION_STATE = MBN_ACTIVATION_STATE(1i32);
2641#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2642pub const MBN_ACTIVATION_STATE_ACTIVATING: MBN_ACTIVATION_STATE = MBN_ACTIVATION_STATE(2i32);
2643#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2644pub const MBN_ACTIVATION_STATE_DEACTIVATED: MBN_ACTIVATION_STATE = MBN_ACTIVATION_STATE(3i32);
2645#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2646pub const MBN_ACTIVATION_STATE_DEACTIVATING: MBN_ACTIVATION_STATE = MBN_ACTIVATION_STATE(4i32);
2647impl ::core::marker::Copy for MBN_ACTIVATION_STATE {}
2648impl ::core::clone::Clone for MBN_ACTIVATION_STATE {
2649 fn clone(&self) -> Self {
2650 *self
2651 }
2652}
2653impl ::core::default::Default for MBN_ACTIVATION_STATE {
2654 fn default() -> Self {
2655 Self(0)
2656 }
2657}
2658impl ::windows::core::TypeKind for MBN_ACTIVATION_STATE {
2659 type TypeKind = ::windows::core::CopyType;
2660}
2661impl ::core::fmt::Debug for MBN_ACTIVATION_STATE {
2662 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2663 f.debug_tuple("MBN_ACTIVATION_STATE").field(&self.0).finish()
2664 }
2665}
2666#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2667#[repr(transparent)]
2668#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2669pub struct MBN_AUTH_PROTOCOL(pub i32);
2670#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2671pub const MBN_AUTH_PROTOCOL_NONE: MBN_AUTH_PROTOCOL = MBN_AUTH_PROTOCOL(0i32);
2672#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2673pub const MBN_AUTH_PROTOCOL_PAP: MBN_AUTH_PROTOCOL = MBN_AUTH_PROTOCOL(1i32);
2674#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2675pub const MBN_AUTH_PROTOCOL_CHAP: MBN_AUTH_PROTOCOL = MBN_AUTH_PROTOCOL(2i32);
2676#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2677pub const MBN_AUTH_PROTOCOL_MSCHAPV2: MBN_AUTH_PROTOCOL = MBN_AUTH_PROTOCOL(3i32);
2678impl ::core::marker::Copy for MBN_AUTH_PROTOCOL {}
2679impl ::core::clone::Clone for MBN_AUTH_PROTOCOL {
2680 fn clone(&self) -> Self {
2681 *self
2682 }
2683}
2684impl ::core::default::Default for MBN_AUTH_PROTOCOL {
2685 fn default() -> Self {
2686 Self(0)
2687 }
2688}
2689impl ::windows::core::TypeKind for MBN_AUTH_PROTOCOL {
2690 type TypeKind = ::windows::core::CopyType;
2691}
2692impl ::core::fmt::Debug for MBN_AUTH_PROTOCOL {
2693 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2694 f.debug_tuple("MBN_AUTH_PROTOCOL").field(&self.0).finish()
2695 }
2696}
2697#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2698#[repr(transparent)]
2699#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2700pub struct MBN_BAND_CLASS(pub i32);
2701#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2702pub const MBN_BAND_CLASS_NONE: MBN_BAND_CLASS = MBN_BAND_CLASS(0i32);
2703#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2704pub const MBN_BAND_CLASS_0: MBN_BAND_CLASS = MBN_BAND_CLASS(1i32);
2705#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2706pub const MBN_BAND_CLASS_I: MBN_BAND_CLASS = MBN_BAND_CLASS(2i32);
2707#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2708pub const MBN_BAND_CLASS_II: MBN_BAND_CLASS = MBN_BAND_CLASS(4i32);
2709#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2710pub const MBN_BAND_CLASS_III: MBN_BAND_CLASS = MBN_BAND_CLASS(8i32);
2711#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2712pub const MBN_BAND_CLASS_IV: MBN_BAND_CLASS = MBN_BAND_CLASS(16i32);
2713#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2714pub const MBN_BAND_CLASS_V: MBN_BAND_CLASS = MBN_BAND_CLASS(32i32);
2715#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2716pub const MBN_BAND_CLASS_VI: MBN_BAND_CLASS = MBN_BAND_CLASS(64i32);
2717#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2718pub const MBN_BAND_CLASS_VII: MBN_BAND_CLASS = MBN_BAND_CLASS(128i32);
2719#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2720pub const MBN_BAND_CLASS_VIII: MBN_BAND_CLASS = MBN_BAND_CLASS(256i32);
2721#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2722pub const MBN_BAND_CLASS_IX: MBN_BAND_CLASS = MBN_BAND_CLASS(512i32);
2723#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2724pub const MBN_BAND_CLASS_X: MBN_BAND_CLASS = MBN_BAND_CLASS(1024i32);
2725#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2726pub const MBN_BAND_CLASS_XI: MBN_BAND_CLASS = MBN_BAND_CLASS(2048i32);
2727#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2728pub const MBN_BAND_CLASS_XII: MBN_BAND_CLASS = MBN_BAND_CLASS(4096i32);
2729#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2730pub const MBN_BAND_CLASS_XIII: MBN_BAND_CLASS = MBN_BAND_CLASS(8192i32);
2731#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2732pub const MBN_BAND_CLASS_XIV: MBN_BAND_CLASS = MBN_BAND_CLASS(16384i32);
2733#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2734pub const MBN_BAND_CLASS_XV: MBN_BAND_CLASS = MBN_BAND_CLASS(32768i32);
2735#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2736pub const MBN_BAND_CLASS_XVI: MBN_BAND_CLASS = MBN_BAND_CLASS(65536i32);
2737#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2738pub const MBN_BAND_CLASS_XVII: MBN_BAND_CLASS = MBN_BAND_CLASS(131072i32);
2739#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2740pub const MBN_BAND_CLASS_CUSTOM: MBN_BAND_CLASS = MBN_BAND_CLASS(-2147483648i32);
2741impl ::core::marker::Copy for MBN_BAND_CLASS {}
2742impl ::core::clone::Clone for MBN_BAND_CLASS {
2743 fn clone(&self) -> Self {
2744 *self
2745 }
2746}
2747impl ::core::default::Default for MBN_BAND_CLASS {
2748 fn default() -> Self {
2749 Self(0)
2750 }
2751}
2752impl ::windows::core::TypeKind for MBN_BAND_CLASS {
2753 type TypeKind = ::windows::core::CopyType;
2754}
2755impl ::core::fmt::Debug for MBN_BAND_CLASS {
2756 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2757 f.debug_tuple("MBN_BAND_CLASS").field(&self.0).finish()
2758 }
2759}
2760#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2761#[repr(transparent)]
2762#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2763pub struct MBN_CELLULAR_CLASS(pub i32);
2764#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2765pub const MBN_CELLULAR_CLASS_NONE: MBN_CELLULAR_CLASS = MBN_CELLULAR_CLASS(0i32);
2766#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2767pub const MBN_CELLULAR_CLASS_GSM: MBN_CELLULAR_CLASS = MBN_CELLULAR_CLASS(1i32);
2768#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2769pub const MBN_CELLULAR_CLASS_CDMA: MBN_CELLULAR_CLASS = MBN_CELLULAR_CLASS(2i32);
2770impl ::core::marker::Copy for MBN_CELLULAR_CLASS {}
2771impl ::core::clone::Clone for MBN_CELLULAR_CLASS {
2772 fn clone(&self) -> Self {
2773 *self
2774 }
2775}
2776impl ::core::default::Default for MBN_CELLULAR_CLASS {
2777 fn default() -> Self {
2778 Self(0)
2779 }
2780}
2781impl ::windows::core::TypeKind for MBN_CELLULAR_CLASS {
2782 type TypeKind = ::windows::core::CopyType;
2783}
2784impl ::core::fmt::Debug for MBN_CELLULAR_CLASS {
2785 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2786 f.debug_tuple("MBN_CELLULAR_CLASS").field(&self.0).finish()
2787 }
2788}
2789#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2790#[repr(transparent)]
2791#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2792pub struct MBN_COMPRESSION(pub i32);
2793#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2794pub const MBN_COMPRESSION_NONE: MBN_COMPRESSION = MBN_COMPRESSION(0i32);
2795#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2796pub const MBN_COMPRESSION_ENABLE: MBN_COMPRESSION = MBN_COMPRESSION(1i32);
2797impl ::core::marker::Copy for MBN_COMPRESSION {}
2798impl ::core::clone::Clone for MBN_COMPRESSION {
2799 fn clone(&self) -> Self {
2800 *self
2801 }
2802}
2803impl ::core::default::Default for MBN_COMPRESSION {
2804 fn default() -> Self {
2805 Self(0)
2806 }
2807}
2808impl ::windows::core::TypeKind for MBN_COMPRESSION {
2809 type TypeKind = ::windows::core::CopyType;
2810}
2811impl ::core::fmt::Debug for MBN_COMPRESSION {
2812 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2813 f.debug_tuple("MBN_COMPRESSION").field(&self.0).finish()
2814 }
2815}
2816#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2817#[repr(transparent)]
2818#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2819pub struct MBN_CONNECTION_MODE(pub i32);
2820#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2821pub const MBN_CONNECTION_MODE_PROFILE: MBN_CONNECTION_MODE = MBN_CONNECTION_MODE(0i32);
2822#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2823pub const MBN_CONNECTION_MODE_TMP_PROFILE: MBN_CONNECTION_MODE = MBN_CONNECTION_MODE(1i32);
2824impl ::core::marker::Copy for MBN_CONNECTION_MODE {}
2825impl ::core::clone::Clone for MBN_CONNECTION_MODE {
2826 fn clone(&self) -> Self {
2827 *self
2828 }
2829}
2830impl ::core::default::Default for MBN_CONNECTION_MODE {
2831 fn default() -> Self {
2832 Self(0)
2833 }
2834}
2835impl ::windows::core::TypeKind for MBN_CONNECTION_MODE {
2836 type TypeKind = ::windows::core::CopyType;
2837}
2838impl ::core::fmt::Debug for MBN_CONNECTION_MODE {
2839 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2840 f.debug_tuple("MBN_CONNECTION_MODE").field(&self.0).finish()
2841 }
2842}
2843#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2844#[repr(transparent)]
2845#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2846pub struct MBN_CONTEXT_CONSTANTS(pub i32);
2847#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2848pub const MBN_ACCESSSTRING_LEN: MBN_CONTEXT_CONSTANTS = MBN_CONTEXT_CONSTANTS(100i32);
2849#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2850pub const MBN_USERNAME_LEN: MBN_CONTEXT_CONSTANTS = MBN_CONTEXT_CONSTANTS(255i32);
2851#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2852pub const MBN_PASSWORD_LEN: MBN_CONTEXT_CONSTANTS = MBN_CONTEXT_CONSTANTS(255i32);
2853#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2854pub const MBN_CONTEXT_ID_APPEND: MBN_CONTEXT_CONSTANTS = MBN_CONTEXT_CONSTANTS(-1i32);
2855impl ::core::marker::Copy for MBN_CONTEXT_CONSTANTS {}
2856impl ::core::clone::Clone for MBN_CONTEXT_CONSTANTS {
2857 fn clone(&self) -> Self {
2858 *self
2859 }
2860}
2861impl ::core::default::Default for MBN_CONTEXT_CONSTANTS {
2862 fn default() -> Self {
2863 Self(0)
2864 }
2865}
2866impl ::windows::core::TypeKind for MBN_CONTEXT_CONSTANTS {
2867 type TypeKind = ::windows::core::CopyType;
2868}
2869impl ::core::fmt::Debug for MBN_CONTEXT_CONSTANTS {
2870 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2871 f.debug_tuple("MBN_CONTEXT_CONSTANTS").field(&self.0).finish()
2872 }
2873}
2874#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2875#[repr(transparent)]
2876#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2877pub struct MBN_CONTEXT_TYPE(pub i32);
2878#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2879pub const MBN_CONTEXT_TYPE_NONE: MBN_CONTEXT_TYPE = MBN_CONTEXT_TYPE(0i32);
2880#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2881pub const MBN_CONTEXT_TYPE_INTERNET: MBN_CONTEXT_TYPE = MBN_CONTEXT_TYPE(1i32);
2882#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2883pub const MBN_CONTEXT_TYPE_VPN: MBN_CONTEXT_TYPE = MBN_CONTEXT_TYPE(2i32);
2884#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2885pub const MBN_CONTEXT_TYPE_VOICE: MBN_CONTEXT_TYPE = MBN_CONTEXT_TYPE(3i32);
2886#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2887pub const MBN_CONTEXT_TYPE_VIDEO_SHARE: MBN_CONTEXT_TYPE = MBN_CONTEXT_TYPE(4i32);
2888#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2889pub const MBN_CONTEXT_TYPE_CUSTOM: MBN_CONTEXT_TYPE = MBN_CONTEXT_TYPE(5i32);
2890#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2891pub const MBN_CONTEXT_TYPE_PURCHASE: MBN_CONTEXT_TYPE = MBN_CONTEXT_TYPE(6i32);
2892impl ::core::marker::Copy for MBN_CONTEXT_TYPE {}
2893impl ::core::clone::Clone for MBN_CONTEXT_TYPE {
2894 fn clone(&self) -> Self {
2895 *self
2896 }
2897}
2898impl ::core::default::Default for MBN_CONTEXT_TYPE {
2899 fn default() -> Self {
2900 Self(0)
2901 }
2902}
2903impl ::windows::core::TypeKind for MBN_CONTEXT_TYPE {
2904 type TypeKind = ::windows::core::CopyType;
2905}
2906impl ::core::fmt::Debug for MBN_CONTEXT_TYPE {
2907 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2908 f.debug_tuple("MBN_CONTEXT_TYPE").field(&self.0).finish()
2909 }
2910}
2911#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2912#[repr(transparent)]
2913#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2914pub struct MBN_CTRL_CAPS(pub i32);
2915#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2916pub const MBN_CTRL_CAPS_NONE: MBN_CTRL_CAPS = MBN_CTRL_CAPS(0i32);
2917#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2918pub const MBN_CTRL_CAPS_REG_MANUAL: MBN_CTRL_CAPS = MBN_CTRL_CAPS(1i32);
2919#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2920pub const MBN_CTRL_CAPS_HW_RADIO_SWITCH: MBN_CTRL_CAPS = MBN_CTRL_CAPS(2i32);
2921#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2922pub const MBN_CTRL_CAPS_CDMA_MOBILE_IP: MBN_CTRL_CAPS = MBN_CTRL_CAPS(4i32);
2923#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2924pub const MBN_CTRL_CAPS_CDMA_SIMPLE_IP: MBN_CTRL_CAPS = MBN_CTRL_CAPS(8i32);
2925#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2926pub const MBN_CTRL_CAPS_PROTECT_UNIQUEID: MBN_CTRL_CAPS = MBN_CTRL_CAPS(16i32);
2927#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2928pub const MBN_CTRL_CAPS_MODEL_MULTI_CARRIER: MBN_CTRL_CAPS = MBN_CTRL_CAPS(32i32);
2929#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2930pub const MBN_CTRL_CAPS_USSD: MBN_CTRL_CAPS = MBN_CTRL_CAPS(64i32);
2931#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2932pub const MBN_CTRL_CAPS_MULTI_MODE: MBN_CTRL_CAPS = MBN_CTRL_CAPS(128i32);
2933impl ::core::marker::Copy for MBN_CTRL_CAPS {}
2934impl ::core::clone::Clone for MBN_CTRL_CAPS {
2935 fn clone(&self) -> Self {
2936 *self
2937 }
2938}
2939impl ::core::default::Default for MBN_CTRL_CAPS {
2940 fn default() -> Self {
2941 Self(0)
2942 }
2943}
2944impl ::windows::core::TypeKind for MBN_CTRL_CAPS {
2945 type TypeKind = ::windows::core::CopyType;
2946}
2947impl ::core::fmt::Debug for MBN_CTRL_CAPS {
2948 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2949 f.debug_tuple("MBN_CTRL_CAPS").field(&self.0).finish()
2950 }
2951}
2952#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2953#[repr(transparent)]
2954#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2955pub struct MBN_DATA_CLASS(pub i32);
2956#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2957pub const MBN_DATA_CLASS_NONE: MBN_DATA_CLASS = MBN_DATA_CLASS(0i32);
2958#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2959pub const MBN_DATA_CLASS_GPRS: MBN_DATA_CLASS = MBN_DATA_CLASS(1i32);
2960#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2961pub const MBN_DATA_CLASS_EDGE: MBN_DATA_CLASS = MBN_DATA_CLASS(2i32);
2962#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2963pub const MBN_DATA_CLASS_UMTS: MBN_DATA_CLASS = MBN_DATA_CLASS(4i32);
2964#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2965pub const MBN_DATA_CLASS_HSDPA: MBN_DATA_CLASS = MBN_DATA_CLASS(8i32);
2966#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2967pub const MBN_DATA_CLASS_HSUPA: MBN_DATA_CLASS = MBN_DATA_CLASS(16i32);
2968#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2969pub const MBN_DATA_CLASS_LTE: MBN_DATA_CLASS = MBN_DATA_CLASS(32i32);
2970#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2971pub const MBN_DATA_CLASS_5G_NSA: MBN_DATA_CLASS = MBN_DATA_CLASS(64i32);
2972#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2973pub const MBN_DATA_CLASS_5G_SA: MBN_DATA_CLASS = MBN_DATA_CLASS(128i32);
2974#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2975pub const MBN_DATA_CLASS_1XRTT: MBN_DATA_CLASS = MBN_DATA_CLASS(65536i32);
2976#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2977pub const MBN_DATA_CLASS_1XEVDO: MBN_DATA_CLASS = MBN_DATA_CLASS(131072i32);
2978#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2979pub const MBN_DATA_CLASS_1XEVDO_REVA: MBN_DATA_CLASS = MBN_DATA_CLASS(262144i32);
2980#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2981pub const MBN_DATA_CLASS_1XEVDV: MBN_DATA_CLASS = MBN_DATA_CLASS(524288i32);
2982#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2983pub const MBN_DATA_CLASS_3XRTT: MBN_DATA_CLASS = MBN_DATA_CLASS(1048576i32);
2984#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2985pub const MBN_DATA_CLASS_1XEVDO_REVB: MBN_DATA_CLASS = MBN_DATA_CLASS(2097152i32);
2986#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2987pub const MBN_DATA_CLASS_UMB: MBN_DATA_CLASS = MBN_DATA_CLASS(4194304i32);
2988#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
2989pub const MBN_DATA_CLASS_CUSTOM: MBN_DATA_CLASS = MBN_DATA_CLASS(-2147483648i32);
2990impl ::core::marker::Copy for MBN_DATA_CLASS {}
2991impl ::core::clone::Clone for MBN_DATA_CLASS {
2992 fn clone(&self) -> Self {
2993 *self
2994 }
2995}
2996impl ::core::default::Default for MBN_DATA_CLASS {
2997 fn default() -> Self {
2998 Self(0)
2999 }
3000}
3001impl ::windows::core::TypeKind for MBN_DATA_CLASS {
3002 type TypeKind = ::windows::core::CopyType;
3003}
3004impl ::core::fmt::Debug for MBN_DATA_CLASS {
3005 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3006 f.debug_tuple("MBN_DATA_CLASS").field(&self.0).finish()
3007 }
3008}
3009#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3010#[repr(transparent)]
3011#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3012pub struct MBN_DEVICE_SERVICES_INTERFACE_STATE(pub i32);
3013#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3014pub const MBN_DEVICE_SERVICES_CAPABLE_INTERFACE_ARRIVAL: MBN_DEVICE_SERVICES_INTERFACE_STATE = MBN_DEVICE_SERVICES_INTERFACE_STATE(0i32);
3015#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3016pub const MBN_DEVICE_SERVICES_CAPABLE_INTERFACE_REMOVAL: MBN_DEVICE_SERVICES_INTERFACE_STATE = MBN_DEVICE_SERVICES_INTERFACE_STATE(1i32);
3017impl ::core::marker::Copy for MBN_DEVICE_SERVICES_INTERFACE_STATE {}
3018impl ::core::clone::Clone for MBN_DEVICE_SERVICES_INTERFACE_STATE {
3019 fn clone(&self) -> Self {
3020 *self
3021 }
3022}
3023impl ::core::default::Default for MBN_DEVICE_SERVICES_INTERFACE_STATE {
3024 fn default() -> Self {
3025 Self(0)
3026 }
3027}
3028impl ::windows::core::TypeKind for MBN_DEVICE_SERVICES_INTERFACE_STATE {
3029 type TypeKind = ::windows::core::CopyType;
3030}
3031impl ::core::fmt::Debug for MBN_DEVICE_SERVICES_INTERFACE_STATE {
3032 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3033 f.debug_tuple("MBN_DEVICE_SERVICES_INTERFACE_STATE").field(&self.0).finish()
3034 }
3035}
3036#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3037#[repr(transparent)]
3038#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3039pub struct MBN_DEVICE_SERVICE_SESSIONS_STATE(pub i32);
3040#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3041pub const MBN_DEVICE_SERVICE_SESSIONS_RESTORED: MBN_DEVICE_SERVICE_SESSIONS_STATE = MBN_DEVICE_SERVICE_SESSIONS_STATE(0i32);
3042impl ::core::marker::Copy for MBN_DEVICE_SERVICE_SESSIONS_STATE {}
3043impl ::core::clone::Clone for MBN_DEVICE_SERVICE_SESSIONS_STATE {
3044 fn clone(&self) -> Self {
3045 *self
3046 }
3047}
3048impl ::core::default::Default for MBN_DEVICE_SERVICE_SESSIONS_STATE {
3049 fn default() -> Self {
3050 Self(0)
3051 }
3052}
3053impl ::windows::core::TypeKind for MBN_DEVICE_SERVICE_SESSIONS_STATE {
3054 type TypeKind = ::windows::core::CopyType;
3055}
3056impl ::core::fmt::Debug for MBN_DEVICE_SERVICE_SESSIONS_STATE {
3057 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3058 f.debug_tuple("MBN_DEVICE_SERVICE_SESSIONS_STATE").field(&self.0).finish()
3059 }
3060}
3061#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3062#[repr(transparent)]
3063#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3064pub struct MBN_INTERFACE_CAPS_CONSTANTS(pub i32);
3065#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3066pub const MBN_DEVICEID_LEN: MBN_INTERFACE_CAPS_CONSTANTS = MBN_INTERFACE_CAPS_CONSTANTS(18i32);
3067#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3068pub const MBN_MANUFACTURER_LEN: MBN_INTERFACE_CAPS_CONSTANTS = MBN_INTERFACE_CAPS_CONSTANTS(32i32);
3069#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3070pub const MBN_MODEL_LEN: MBN_INTERFACE_CAPS_CONSTANTS = MBN_INTERFACE_CAPS_CONSTANTS(32i32);
3071#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3072pub const MBN_FIRMWARE_LEN: MBN_INTERFACE_CAPS_CONSTANTS = MBN_INTERFACE_CAPS_CONSTANTS(32i32);
3073impl ::core::marker::Copy for MBN_INTERFACE_CAPS_CONSTANTS {}
3074impl ::core::clone::Clone for MBN_INTERFACE_CAPS_CONSTANTS {
3075 fn clone(&self) -> Self {
3076 *self
3077 }
3078}
3079impl ::core::default::Default for MBN_INTERFACE_CAPS_CONSTANTS {
3080 fn default() -> Self {
3081 Self(0)
3082 }
3083}
3084impl ::windows::core::TypeKind for MBN_INTERFACE_CAPS_CONSTANTS {
3085 type TypeKind = ::windows::core::CopyType;
3086}
3087impl ::core::fmt::Debug for MBN_INTERFACE_CAPS_CONSTANTS {
3088 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3089 f.debug_tuple("MBN_INTERFACE_CAPS_CONSTANTS").field(&self.0).finish()
3090 }
3091}
3092#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3093#[repr(transparent)]
3094#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3095pub struct MBN_MSG_STATUS(pub i32);
3096#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3097pub const MBN_MSG_STATUS_NEW: MBN_MSG_STATUS = MBN_MSG_STATUS(0i32);
3098#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3099pub const MBN_MSG_STATUS_OLD: MBN_MSG_STATUS = MBN_MSG_STATUS(1i32);
3100#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3101pub const MBN_MSG_STATUS_DRAFT: MBN_MSG_STATUS = MBN_MSG_STATUS(2i32);
3102#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3103pub const MBN_MSG_STATUS_SENT: MBN_MSG_STATUS = MBN_MSG_STATUS(3i32);
3104impl ::core::marker::Copy for MBN_MSG_STATUS {}
3105impl ::core::clone::Clone for MBN_MSG_STATUS {
3106 fn clone(&self) -> Self {
3107 *self
3108 }
3109}
3110impl ::core::default::Default for MBN_MSG_STATUS {
3111 fn default() -> Self {
3112 Self(0)
3113 }
3114}
3115impl ::windows::core::TypeKind for MBN_MSG_STATUS {
3116 type TypeKind = ::windows::core::CopyType;
3117}
3118impl ::core::fmt::Debug for MBN_MSG_STATUS {
3119 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3120 f.debug_tuple("MBN_MSG_STATUS").field(&self.0).finish()
3121 }
3122}
3123#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3124#[repr(transparent)]
3125#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3126pub struct MBN_PIN_CONSTANTS(pub i32);
3127#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3128pub const MBN_ATTEMPTS_REMAINING_UNKNOWN: MBN_PIN_CONSTANTS = MBN_PIN_CONSTANTS(-1i32);
3129#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3130pub const MBN_PIN_LENGTH_UNKNOWN: MBN_PIN_CONSTANTS = MBN_PIN_CONSTANTS(-1i32);
3131impl ::core::marker::Copy for MBN_PIN_CONSTANTS {}
3132impl ::core::clone::Clone for MBN_PIN_CONSTANTS {
3133 fn clone(&self) -> Self {
3134 *self
3135 }
3136}
3137impl ::core::default::Default for MBN_PIN_CONSTANTS {
3138 fn default() -> Self {
3139 Self(0)
3140 }
3141}
3142impl ::windows::core::TypeKind for MBN_PIN_CONSTANTS {
3143 type TypeKind = ::windows::core::CopyType;
3144}
3145impl ::core::fmt::Debug for MBN_PIN_CONSTANTS {
3146 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3147 f.debug_tuple("MBN_PIN_CONSTANTS").field(&self.0).finish()
3148 }
3149}
3150#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3151#[repr(transparent)]
3152#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3153pub struct MBN_PIN_FORMAT(pub i32);
3154#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3155pub const MBN_PIN_FORMAT_NONE: MBN_PIN_FORMAT = MBN_PIN_FORMAT(0i32);
3156#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3157pub const MBN_PIN_FORMAT_NUMERIC: MBN_PIN_FORMAT = MBN_PIN_FORMAT(1i32);
3158#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3159pub const MBN_PIN_FORMAT_ALPHANUMERIC: MBN_PIN_FORMAT = MBN_PIN_FORMAT(2i32);
3160impl ::core::marker::Copy for MBN_PIN_FORMAT {}
3161impl ::core::clone::Clone for MBN_PIN_FORMAT {
3162 fn clone(&self) -> Self {
3163 *self
3164 }
3165}
3166impl ::core::default::Default for MBN_PIN_FORMAT {
3167 fn default() -> Self {
3168 Self(0)
3169 }
3170}
3171impl ::windows::core::TypeKind for MBN_PIN_FORMAT {
3172 type TypeKind = ::windows::core::CopyType;
3173}
3174impl ::core::fmt::Debug for MBN_PIN_FORMAT {
3175 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3176 f.debug_tuple("MBN_PIN_FORMAT").field(&self.0).finish()
3177 }
3178}
3179#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3180#[repr(transparent)]
3181#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3182pub struct MBN_PIN_MODE(pub i32);
3183#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3184pub const MBN_PIN_MODE_ENABLED: MBN_PIN_MODE = MBN_PIN_MODE(1i32);
3185#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3186pub const MBN_PIN_MODE_DISABLED: MBN_PIN_MODE = MBN_PIN_MODE(2i32);
3187impl ::core::marker::Copy for MBN_PIN_MODE {}
3188impl ::core::clone::Clone for MBN_PIN_MODE {
3189 fn clone(&self) -> Self {
3190 *self
3191 }
3192}
3193impl ::core::default::Default for MBN_PIN_MODE {
3194 fn default() -> Self {
3195 Self(0)
3196 }
3197}
3198impl ::windows::core::TypeKind for MBN_PIN_MODE {
3199 type TypeKind = ::windows::core::CopyType;
3200}
3201impl ::core::fmt::Debug for MBN_PIN_MODE {
3202 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3203 f.debug_tuple("MBN_PIN_MODE").field(&self.0).finish()
3204 }
3205}
3206#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3207#[repr(transparent)]
3208#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3209pub struct MBN_PIN_STATE(pub i32);
3210#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3211pub const MBN_PIN_STATE_NONE: MBN_PIN_STATE = MBN_PIN_STATE(0i32);
3212#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3213pub const MBN_PIN_STATE_ENTER: MBN_PIN_STATE = MBN_PIN_STATE(1i32);
3214#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3215pub const MBN_PIN_STATE_UNBLOCK: MBN_PIN_STATE = MBN_PIN_STATE(2i32);
3216impl ::core::marker::Copy for MBN_PIN_STATE {}
3217impl ::core::clone::Clone for MBN_PIN_STATE {
3218 fn clone(&self) -> Self {
3219 *self
3220 }
3221}
3222impl ::core::default::Default for MBN_PIN_STATE {
3223 fn default() -> Self {
3224 Self(0)
3225 }
3226}
3227impl ::windows::core::TypeKind for MBN_PIN_STATE {
3228 type TypeKind = ::windows::core::CopyType;
3229}
3230impl ::core::fmt::Debug for MBN_PIN_STATE {
3231 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3232 f.debug_tuple("MBN_PIN_STATE").field(&self.0).finish()
3233 }
3234}
3235#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3236#[repr(transparent)]
3237#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3238pub struct MBN_PIN_TYPE(pub i32);
3239#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3240pub const MBN_PIN_TYPE_NONE: MBN_PIN_TYPE = MBN_PIN_TYPE(0i32);
3241#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3242pub const MBN_PIN_TYPE_CUSTOM: MBN_PIN_TYPE = MBN_PIN_TYPE(1i32);
3243#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3244pub const MBN_PIN_TYPE_PIN1: MBN_PIN_TYPE = MBN_PIN_TYPE(2i32);
3245#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3246pub const MBN_PIN_TYPE_PIN2: MBN_PIN_TYPE = MBN_PIN_TYPE(3i32);
3247#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3248pub const MBN_PIN_TYPE_DEVICE_SIM_PIN: MBN_PIN_TYPE = MBN_PIN_TYPE(4i32);
3249#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3250pub const MBN_PIN_TYPE_DEVICE_FIRST_SIM_PIN: MBN_PIN_TYPE = MBN_PIN_TYPE(5i32);
3251#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3252pub const MBN_PIN_TYPE_NETWORK_PIN: MBN_PIN_TYPE = MBN_PIN_TYPE(6i32);
3253#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3254pub const MBN_PIN_TYPE_NETWORK_SUBSET_PIN: MBN_PIN_TYPE = MBN_PIN_TYPE(7i32);
3255#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3256pub const MBN_PIN_TYPE_SVC_PROVIDER_PIN: MBN_PIN_TYPE = MBN_PIN_TYPE(8i32);
3257#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3258pub const MBN_PIN_TYPE_CORPORATE_PIN: MBN_PIN_TYPE = MBN_PIN_TYPE(9i32);
3259#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3260pub const MBN_PIN_TYPE_SUBSIDY_LOCK: MBN_PIN_TYPE = MBN_PIN_TYPE(10i32);
3261impl ::core::marker::Copy for MBN_PIN_TYPE {}
3262impl ::core::clone::Clone for MBN_PIN_TYPE {
3263 fn clone(&self) -> Self {
3264 *self
3265 }
3266}
3267impl ::core::default::Default for MBN_PIN_TYPE {
3268 fn default() -> Self {
3269 Self(0)
3270 }
3271}
3272impl ::windows::core::TypeKind for MBN_PIN_TYPE {
3273 type TypeKind = ::windows::core::CopyType;
3274}
3275impl ::core::fmt::Debug for MBN_PIN_TYPE {
3276 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3277 f.debug_tuple("MBN_PIN_TYPE").field(&self.0).finish()
3278 }
3279}
3280#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3281#[repr(transparent)]
3282#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3283pub struct MBN_PROVIDER_CONSTANTS(pub i32);
3284#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3285pub const MBN_PROVIDERNAME_LEN: MBN_PROVIDER_CONSTANTS = MBN_PROVIDER_CONSTANTS(20i32);
3286#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3287pub const MBN_PROVIDERID_LEN: MBN_PROVIDER_CONSTANTS = MBN_PROVIDER_CONSTANTS(6i32);
3288impl ::core::marker::Copy for MBN_PROVIDER_CONSTANTS {}
3289impl ::core::clone::Clone for MBN_PROVIDER_CONSTANTS {
3290 fn clone(&self) -> Self {
3291 *self
3292 }
3293}
3294impl ::core::default::Default for MBN_PROVIDER_CONSTANTS {
3295 fn default() -> Self {
3296 Self(0)
3297 }
3298}
3299impl ::windows::core::TypeKind for MBN_PROVIDER_CONSTANTS {
3300 type TypeKind = ::windows::core::CopyType;
3301}
3302impl ::core::fmt::Debug for MBN_PROVIDER_CONSTANTS {
3303 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3304 f.debug_tuple("MBN_PROVIDER_CONSTANTS").field(&self.0).finish()
3305 }
3306}
3307#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3308#[repr(transparent)]
3309#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3310pub struct MBN_PROVIDER_STATE(pub i32);
3311#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3312pub const MBN_PROVIDER_STATE_NONE: MBN_PROVIDER_STATE = MBN_PROVIDER_STATE(0i32);
3313#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3314pub const MBN_PROVIDER_STATE_HOME: MBN_PROVIDER_STATE = MBN_PROVIDER_STATE(1i32);
3315#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3316pub const MBN_PROVIDER_STATE_FORBIDDEN: MBN_PROVIDER_STATE = MBN_PROVIDER_STATE(2i32);
3317#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3318pub const MBN_PROVIDER_STATE_PREFERRED: MBN_PROVIDER_STATE = MBN_PROVIDER_STATE(4i32);
3319#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3320pub const MBN_PROVIDER_STATE_VISIBLE: MBN_PROVIDER_STATE = MBN_PROVIDER_STATE(8i32);
3321#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3322pub const MBN_PROVIDER_STATE_REGISTERED: MBN_PROVIDER_STATE = MBN_PROVIDER_STATE(16i32);
3323#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3324pub const MBN_PROVIDER_STATE_PREFERRED_MULTICARRIER: MBN_PROVIDER_STATE = MBN_PROVIDER_STATE(32i32);
3325impl ::core::marker::Copy for MBN_PROVIDER_STATE {}
3326impl ::core::clone::Clone for MBN_PROVIDER_STATE {
3327 fn clone(&self) -> Self {
3328 *self
3329 }
3330}
3331impl ::core::default::Default for MBN_PROVIDER_STATE {
3332 fn default() -> Self {
3333 Self(0)
3334 }
3335}
3336impl ::windows::core::TypeKind for MBN_PROVIDER_STATE {
3337 type TypeKind = ::windows::core::CopyType;
3338}
3339impl ::core::fmt::Debug for MBN_PROVIDER_STATE {
3340 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3341 f.debug_tuple("MBN_PROVIDER_STATE").field(&self.0).finish()
3342 }
3343}
3344#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3345#[repr(transparent)]
3346#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3347pub struct MBN_RADIO(pub i32);
3348#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3349pub const MBN_RADIO_OFF: MBN_RADIO = MBN_RADIO(0i32);
3350#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3351pub const MBN_RADIO_ON: MBN_RADIO = MBN_RADIO(1i32);
3352impl ::core::marker::Copy for MBN_RADIO {}
3353impl ::core::clone::Clone for MBN_RADIO {
3354 fn clone(&self) -> Self {
3355 *self
3356 }
3357}
3358impl ::core::default::Default for MBN_RADIO {
3359 fn default() -> Self {
3360 Self(0)
3361 }
3362}
3363impl ::windows::core::TypeKind for MBN_RADIO {
3364 type TypeKind = ::windows::core::CopyType;
3365}
3366impl ::core::fmt::Debug for MBN_RADIO {
3367 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3368 f.debug_tuple("MBN_RADIO").field(&self.0).finish()
3369 }
3370}
3371#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3372#[repr(transparent)]
3373#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3374pub struct MBN_READY_STATE(pub i32);
3375#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3376pub const MBN_READY_STATE_OFF: MBN_READY_STATE = MBN_READY_STATE(0i32);
3377#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3378pub const MBN_READY_STATE_INITIALIZED: MBN_READY_STATE = MBN_READY_STATE(1i32);
3379#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3380pub const MBN_READY_STATE_SIM_NOT_INSERTED: MBN_READY_STATE = MBN_READY_STATE(2i32);
3381#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3382pub const MBN_READY_STATE_BAD_SIM: MBN_READY_STATE = MBN_READY_STATE(3i32);
3383#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3384pub const MBN_READY_STATE_FAILURE: MBN_READY_STATE = MBN_READY_STATE(4i32);
3385#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3386pub const MBN_READY_STATE_NOT_ACTIVATED: MBN_READY_STATE = MBN_READY_STATE(5i32);
3387#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3388pub const MBN_READY_STATE_DEVICE_LOCKED: MBN_READY_STATE = MBN_READY_STATE(6i32);
3389#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3390pub const MBN_READY_STATE_DEVICE_BLOCKED: MBN_READY_STATE = MBN_READY_STATE(7i32);
3391#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3392pub const MBN_READY_STATE_NO_ESIM_PROFILE: MBN_READY_STATE = MBN_READY_STATE(8i32);
3393impl ::core::marker::Copy for MBN_READY_STATE {}
3394impl ::core::clone::Clone for MBN_READY_STATE {
3395 fn clone(&self) -> Self {
3396 *self
3397 }
3398}
3399impl ::core::default::Default for MBN_READY_STATE {
3400 fn default() -> Self {
3401 Self(0)
3402 }
3403}
3404impl ::windows::core::TypeKind for MBN_READY_STATE {
3405 type TypeKind = ::windows::core::CopyType;
3406}
3407impl ::core::fmt::Debug for MBN_READY_STATE {
3408 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3409 f.debug_tuple("MBN_READY_STATE").field(&self.0).finish()
3410 }
3411}
3412#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3413#[repr(transparent)]
3414#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3415pub struct MBN_REGISTER_MODE(pub i32);
3416#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3417pub const MBN_REGISTER_MODE_NONE: MBN_REGISTER_MODE = MBN_REGISTER_MODE(0i32);
3418#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3419pub const MBN_REGISTER_MODE_AUTOMATIC: MBN_REGISTER_MODE = MBN_REGISTER_MODE(1i32);
3420#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3421pub const MBN_REGISTER_MODE_MANUAL: MBN_REGISTER_MODE = MBN_REGISTER_MODE(2i32);
3422impl ::core::marker::Copy for MBN_REGISTER_MODE {}
3423impl ::core::clone::Clone for MBN_REGISTER_MODE {
3424 fn clone(&self) -> Self {
3425 *self
3426 }
3427}
3428impl ::core::default::Default for MBN_REGISTER_MODE {
3429 fn default() -> Self {
3430 Self(0)
3431 }
3432}
3433impl ::windows::core::TypeKind for MBN_REGISTER_MODE {
3434 type TypeKind = ::windows::core::CopyType;
3435}
3436impl ::core::fmt::Debug for MBN_REGISTER_MODE {
3437 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3438 f.debug_tuple("MBN_REGISTER_MODE").field(&self.0).finish()
3439 }
3440}
3441#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3442#[repr(transparent)]
3443#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3444pub struct MBN_REGISTER_STATE(pub i32);
3445#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3446pub const MBN_REGISTER_STATE_NONE: MBN_REGISTER_STATE = MBN_REGISTER_STATE(0i32);
3447#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3448pub const MBN_REGISTER_STATE_DEREGISTERED: MBN_REGISTER_STATE = MBN_REGISTER_STATE(1i32);
3449#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3450pub const MBN_REGISTER_STATE_SEARCHING: MBN_REGISTER_STATE = MBN_REGISTER_STATE(2i32);
3451#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3452pub const MBN_REGISTER_STATE_HOME: MBN_REGISTER_STATE = MBN_REGISTER_STATE(3i32);
3453#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3454pub const MBN_REGISTER_STATE_ROAMING: MBN_REGISTER_STATE = MBN_REGISTER_STATE(4i32);
3455#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3456pub const MBN_REGISTER_STATE_PARTNER: MBN_REGISTER_STATE = MBN_REGISTER_STATE(5i32);
3457#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3458pub const MBN_REGISTER_STATE_DENIED: MBN_REGISTER_STATE = MBN_REGISTER_STATE(6i32);
3459impl ::core::marker::Copy for MBN_REGISTER_STATE {}
3460impl ::core::clone::Clone for MBN_REGISTER_STATE {
3461 fn clone(&self) -> Self {
3462 *self
3463 }
3464}
3465impl ::core::default::Default for MBN_REGISTER_STATE {
3466 fn default() -> Self {
3467 Self(0)
3468 }
3469}
3470impl ::windows::core::TypeKind for MBN_REGISTER_STATE {
3471 type TypeKind = ::windows::core::CopyType;
3472}
3473impl ::core::fmt::Debug for MBN_REGISTER_STATE {
3474 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3475 f.debug_tuple("MBN_REGISTER_STATE").field(&self.0).finish()
3476 }
3477}
3478#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3479#[repr(transparent)]
3480#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3481pub struct MBN_REGISTRATION_CONSTANTS(pub i32);
3482#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3483pub const MBN_ROAMTEXT_LEN: MBN_REGISTRATION_CONSTANTS = MBN_REGISTRATION_CONSTANTS(64i32);
3484#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3485pub const MBN_CDMA_DEFAULT_PROVIDER_ID: MBN_REGISTRATION_CONSTANTS = MBN_REGISTRATION_CONSTANTS(0i32);
3486impl ::core::marker::Copy for MBN_REGISTRATION_CONSTANTS {}
3487impl ::core::clone::Clone for MBN_REGISTRATION_CONSTANTS {
3488 fn clone(&self) -> Self {
3489 *self
3490 }
3491}
3492impl ::core::default::Default for MBN_REGISTRATION_CONSTANTS {
3493 fn default() -> Self {
3494 Self(0)
3495 }
3496}
3497impl ::windows::core::TypeKind for MBN_REGISTRATION_CONSTANTS {
3498 type TypeKind = ::windows::core::CopyType;
3499}
3500impl ::core::fmt::Debug for MBN_REGISTRATION_CONSTANTS {
3501 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3502 f.debug_tuple("MBN_REGISTRATION_CONSTANTS").field(&self.0).finish()
3503 }
3504}
3505#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3506#[repr(transparent)]
3507#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3508pub struct MBN_SIGNAL_CONSTANTS(pub i32);
3509#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3510pub const MBN_RSSI_DEFAULT: MBN_SIGNAL_CONSTANTS = MBN_SIGNAL_CONSTANTS(-1i32);
3511#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3512pub const MBN_RSSI_DISABLE: MBN_SIGNAL_CONSTANTS = MBN_SIGNAL_CONSTANTS(0i32);
3513#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3514pub const MBN_RSSI_UNKNOWN: MBN_SIGNAL_CONSTANTS = MBN_SIGNAL_CONSTANTS(99i32);
3515#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3516pub const MBN_ERROR_RATE_UNKNOWN: MBN_SIGNAL_CONSTANTS = MBN_SIGNAL_CONSTANTS(99i32);
3517impl ::core::marker::Copy for MBN_SIGNAL_CONSTANTS {}
3518impl ::core::clone::Clone for MBN_SIGNAL_CONSTANTS {
3519 fn clone(&self) -> Self {
3520 *self
3521 }
3522}
3523impl ::core::default::Default for MBN_SIGNAL_CONSTANTS {
3524 fn default() -> Self {
3525 Self(0)
3526 }
3527}
3528impl ::windows::core::TypeKind for MBN_SIGNAL_CONSTANTS {
3529 type TypeKind = ::windows::core::CopyType;
3530}
3531impl ::core::fmt::Debug for MBN_SIGNAL_CONSTANTS {
3532 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3533 f.debug_tuple("MBN_SIGNAL_CONSTANTS").field(&self.0).finish()
3534 }
3535}
3536#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3537#[repr(transparent)]
3538#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3539pub struct MBN_SMS_CAPS(pub i32);
3540#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3541pub const MBN_SMS_CAPS_NONE: MBN_SMS_CAPS = MBN_SMS_CAPS(0i32);
3542#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3543pub const MBN_SMS_CAPS_PDU_RECEIVE: MBN_SMS_CAPS = MBN_SMS_CAPS(1i32);
3544#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3545pub const MBN_SMS_CAPS_PDU_SEND: MBN_SMS_CAPS = MBN_SMS_CAPS(2i32);
3546#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3547pub const MBN_SMS_CAPS_TEXT_RECEIVE: MBN_SMS_CAPS = MBN_SMS_CAPS(4i32);
3548#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3549pub const MBN_SMS_CAPS_TEXT_SEND: MBN_SMS_CAPS = MBN_SMS_CAPS(8i32);
3550impl ::core::marker::Copy for MBN_SMS_CAPS {}
3551impl ::core::clone::Clone for MBN_SMS_CAPS {
3552 fn clone(&self) -> Self {
3553 *self
3554 }
3555}
3556impl ::core::default::Default for MBN_SMS_CAPS {
3557 fn default() -> Self {
3558 Self(0)
3559 }
3560}
3561impl ::windows::core::TypeKind for MBN_SMS_CAPS {
3562 type TypeKind = ::windows::core::CopyType;
3563}
3564impl ::core::fmt::Debug for MBN_SMS_CAPS {
3565 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3566 f.debug_tuple("MBN_SMS_CAPS").field(&self.0).finish()
3567 }
3568}
3569#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3570#[repr(transparent)]
3571#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3572pub struct MBN_SMS_CDMA_ENCODING(pub i32);
3573#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3574pub const MBN_SMS_CDMA_ENCODING_OCTET: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(0i32);
3575#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3576pub const MBN_SMS_CDMA_ENCODING_EPM: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(1i32);
3577#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3578pub const MBN_SMS_CDMA_ENCODING_7BIT_ASCII: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(2i32);
3579#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3580pub const MBN_SMS_CDMA_ENCODING_IA5: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(3i32);
3581#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3582pub const MBN_SMS_CDMA_ENCODING_UNICODE: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(4i32);
3583#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3584pub const MBN_SMS_CDMA_ENCODING_SHIFT_JIS: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(5i32);
3585#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3586pub const MBN_SMS_CDMA_ENCODING_KOREAN: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(6i32);
3587#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3588pub const MBN_SMS_CDMA_ENCODING_LATIN_HEBREW: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(7i32);
3589#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3590pub const MBN_SMS_CDMA_ENCODING_LATIN: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(8i32);
3591#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3592pub const MBN_SMS_CDMA_ENCODING_GSM_7BIT: MBN_SMS_CDMA_ENCODING = MBN_SMS_CDMA_ENCODING(9i32);
3593impl ::core::marker::Copy for MBN_SMS_CDMA_ENCODING {}
3594impl ::core::clone::Clone for MBN_SMS_CDMA_ENCODING {
3595 fn clone(&self) -> Self {
3596 *self
3597 }
3598}
3599impl ::core::default::Default for MBN_SMS_CDMA_ENCODING {
3600 fn default() -> Self {
3601 Self(0)
3602 }
3603}
3604impl ::windows::core::TypeKind for MBN_SMS_CDMA_ENCODING {
3605 type TypeKind = ::windows::core::CopyType;
3606}
3607impl ::core::fmt::Debug for MBN_SMS_CDMA_ENCODING {
3608 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3609 f.debug_tuple("MBN_SMS_CDMA_ENCODING").field(&self.0).finish()
3610 }
3611}
3612#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3613#[repr(transparent)]
3614#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3615pub struct MBN_SMS_CDMA_LANG(pub i32);
3616#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3617pub const MBN_SMS_CDMA_LANG_NONE: MBN_SMS_CDMA_LANG = MBN_SMS_CDMA_LANG(0i32);
3618#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3619pub const MBN_SMS_CDMA_LANG_ENGLISH: MBN_SMS_CDMA_LANG = MBN_SMS_CDMA_LANG(1i32);
3620#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3621pub const MBN_SMS_CDMA_LANG_FRENCH: MBN_SMS_CDMA_LANG = MBN_SMS_CDMA_LANG(2i32);
3622#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3623pub const MBN_SMS_CDMA_LANG_SPANISH: MBN_SMS_CDMA_LANG = MBN_SMS_CDMA_LANG(3i32);
3624#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3625pub const MBN_SMS_CDMA_LANG_JAPANESE: MBN_SMS_CDMA_LANG = MBN_SMS_CDMA_LANG(4i32);
3626#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3627pub const MBN_SMS_CDMA_LANG_KOREAN: MBN_SMS_CDMA_LANG = MBN_SMS_CDMA_LANG(5i32);
3628#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3629pub const MBN_SMS_CDMA_LANG_CHINESE: MBN_SMS_CDMA_LANG = MBN_SMS_CDMA_LANG(6i32);
3630#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3631pub const MBN_SMS_CDMA_LANG_HEBREW: MBN_SMS_CDMA_LANG = MBN_SMS_CDMA_LANG(7i32);
3632impl ::core::marker::Copy for MBN_SMS_CDMA_LANG {}
3633impl ::core::clone::Clone for MBN_SMS_CDMA_LANG {
3634 fn clone(&self) -> Self {
3635 *self
3636 }
3637}
3638impl ::core::default::Default for MBN_SMS_CDMA_LANG {
3639 fn default() -> Self {
3640 Self(0)
3641 }
3642}
3643impl ::windows::core::TypeKind for MBN_SMS_CDMA_LANG {
3644 type TypeKind = ::windows::core::CopyType;
3645}
3646impl ::core::fmt::Debug for MBN_SMS_CDMA_LANG {
3647 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3648 f.debug_tuple("MBN_SMS_CDMA_LANG").field(&self.0).finish()
3649 }
3650}
3651#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3652#[repr(transparent)]
3653#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3654pub struct MBN_SMS_FLAG(pub i32);
3655#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3656pub const MBN_SMS_FLAG_ALL: MBN_SMS_FLAG = MBN_SMS_FLAG(0i32);
3657#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3658pub const MBN_SMS_FLAG_INDEX: MBN_SMS_FLAG = MBN_SMS_FLAG(1i32);
3659#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3660pub const MBN_SMS_FLAG_NEW: MBN_SMS_FLAG = MBN_SMS_FLAG(2i32);
3661#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3662pub const MBN_SMS_FLAG_OLD: MBN_SMS_FLAG = MBN_SMS_FLAG(3i32);
3663#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3664pub const MBN_SMS_FLAG_SENT: MBN_SMS_FLAG = MBN_SMS_FLAG(4i32);
3665#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3666pub const MBN_SMS_FLAG_DRAFT: MBN_SMS_FLAG = MBN_SMS_FLAG(5i32);
3667impl ::core::marker::Copy for MBN_SMS_FLAG {}
3668impl ::core::clone::Clone for MBN_SMS_FLAG {
3669 fn clone(&self) -> Self {
3670 *self
3671 }
3672}
3673impl ::core::default::Default for MBN_SMS_FLAG {
3674 fn default() -> Self {
3675 Self(0)
3676 }
3677}
3678impl ::windows::core::TypeKind for MBN_SMS_FLAG {
3679 type TypeKind = ::windows::core::CopyType;
3680}
3681impl ::core::fmt::Debug for MBN_SMS_FLAG {
3682 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3683 f.debug_tuple("MBN_SMS_FLAG").field(&self.0).finish()
3684 }
3685}
3686#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3687#[repr(transparent)]
3688#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3689pub struct MBN_SMS_FORMAT(pub i32);
3690#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3691pub const MBN_SMS_FORMAT_NONE: MBN_SMS_FORMAT = MBN_SMS_FORMAT(0i32);
3692#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3693pub const MBN_SMS_FORMAT_PDU: MBN_SMS_FORMAT = MBN_SMS_FORMAT(1i32);
3694#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3695pub const MBN_SMS_FORMAT_TEXT: MBN_SMS_FORMAT = MBN_SMS_FORMAT(2i32);
3696impl ::core::marker::Copy for MBN_SMS_FORMAT {}
3697impl ::core::clone::Clone for MBN_SMS_FORMAT {
3698 fn clone(&self) -> Self {
3699 *self
3700 }
3701}
3702impl ::core::default::Default for MBN_SMS_FORMAT {
3703 fn default() -> Self {
3704 Self(0)
3705 }
3706}
3707impl ::windows::core::TypeKind for MBN_SMS_FORMAT {
3708 type TypeKind = ::windows::core::CopyType;
3709}
3710impl ::core::fmt::Debug for MBN_SMS_FORMAT {
3711 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3712 f.debug_tuple("MBN_SMS_FORMAT").field(&self.0).finish()
3713 }
3714}
3715#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3716#[repr(transparent)]
3717#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3718pub struct MBN_SMS_STATUS_FLAG(pub i32);
3719#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3720pub const MBN_SMS_FLAG_NONE: MBN_SMS_STATUS_FLAG = MBN_SMS_STATUS_FLAG(0i32);
3721#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3722pub const MBN_SMS_FLAG_MESSAGE_STORE_FULL: MBN_SMS_STATUS_FLAG = MBN_SMS_STATUS_FLAG(1i32);
3723#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3724pub const MBN_SMS_FLAG_NEW_MESSAGE: MBN_SMS_STATUS_FLAG = MBN_SMS_STATUS_FLAG(2i32);
3725impl ::core::marker::Copy for MBN_SMS_STATUS_FLAG {}
3726impl ::core::clone::Clone for MBN_SMS_STATUS_FLAG {
3727 fn clone(&self) -> Self {
3728 *self
3729 }
3730}
3731impl ::core::default::Default for MBN_SMS_STATUS_FLAG {
3732 fn default() -> Self {
3733 Self(0)
3734 }
3735}
3736impl ::windows::core::TypeKind for MBN_SMS_STATUS_FLAG {
3737 type TypeKind = ::windows::core::CopyType;
3738}
3739impl ::core::fmt::Debug for MBN_SMS_STATUS_FLAG {
3740 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3741 f.debug_tuple("MBN_SMS_STATUS_FLAG").field(&self.0).finish()
3742 }
3743}
3744#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3745#[repr(transparent)]
3746#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3747pub struct MBN_VOICE_CALL_STATE(pub i32);
3748#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3749pub const MBN_VOICE_CALL_STATE_NONE: MBN_VOICE_CALL_STATE = MBN_VOICE_CALL_STATE(0i32);
3750#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3751pub const MBN_VOICE_CALL_STATE_IN_PROGRESS: MBN_VOICE_CALL_STATE = MBN_VOICE_CALL_STATE(1i32);
3752#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3753pub const MBN_VOICE_CALL_STATE_HANGUP: MBN_VOICE_CALL_STATE = MBN_VOICE_CALL_STATE(2i32);
3754impl ::core::marker::Copy for MBN_VOICE_CALL_STATE {}
3755impl ::core::clone::Clone for MBN_VOICE_CALL_STATE {
3756 fn clone(&self) -> Self {
3757 *self
3758 }
3759}
3760impl ::core::default::Default for MBN_VOICE_CALL_STATE {
3761 fn default() -> Self {
3762 Self(0)
3763 }
3764}
3765impl ::windows::core::TypeKind for MBN_VOICE_CALL_STATE {
3766 type TypeKind = ::windows::core::CopyType;
3767}
3768impl ::core::fmt::Debug for MBN_VOICE_CALL_STATE {
3769 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3770 f.debug_tuple("MBN_VOICE_CALL_STATE").field(&self.0).finish()
3771 }
3772}
3773#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3774#[repr(transparent)]
3775#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3776pub struct MBN_VOICE_CLASS(pub i32);
3777#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3778pub const MBN_VOICE_CLASS_NONE: MBN_VOICE_CLASS = MBN_VOICE_CLASS(0i32);
3779#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3780pub const MBN_VOICE_CLASS_NO_VOICE: MBN_VOICE_CLASS = MBN_VOICE_CLASS(1i32);
3781#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3782pub const MBN_VOICE_CLASS_SEPARATE_VOICE_DATA: MBN_VOICE_CLASS = MBN_VOICE_CLASS(2i32);
3783#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3784pub const MBN_VOICE_CLASS_SIMULTANEOUS_VOICE_DATA: MBN_VOICE_CLASS = MBN_VOICE_CLASS(3i32);
3785impl ::core::marker::Copy for MBN_VOICE_CLASS {}
3786impl ::core::clone::Clone for MBN_VOICE_CLASS {
3787 fn clone(&self) -> Self {
3788 *self
3789 }
3790}
3791impl ::core::default::Default for MBN_VOICE_CLASS {
3792 fn default() -> Self {
3793 Self(0)
3794 }
3795}
3796impl ::windows::core::TypeKind for MBN_VOICE_CLASS {
3797 type TypeKind = ::windows::core::CopyType;
3798}
3799impl ::core::fmt::Debug for MBN_VOICE_CLASS {
3800 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3801 f.debug_tuple("MBN_VOICE_CLASS").field(&self.0).finish()
3802 }
3803}
3804#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3805#[repr(transparent)]
3806#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
3807pub struct WWAEXT_SMS_CONSTANTS(pub i32);
3808#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3809pub const MBN_MESSAGE_INDEX_NONE: WWAEXT_SMS_CONSTANTS = WWAEXT_SMS_CONSTANTS(0i32);
3810#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3811pub const MBN_CDMA_SHORT_MSG_SIZE_UNKNOWN: WWAEXT_SMS_CONSTANTS = WWAEXT_SMS_CONSTANTS(0i32);
3812#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3813pub const MBN_CDMA_SHORT_MSG_SIZE_MAX: WWAEXT_SMS_CONSTANTS = WWAEXT_SMS_CONSTANTS(160i32);
3814impl ::core::marker::Copy for WWAEXT_SMS_CONSTANTS {}
3815impl ::core::clone::Clone for WWAEXT_SMS_CONSTANTS {
3816 fn clone(&self) -> Self {
3817 *self
3818 }
3819}
3820impl ::core::default::Default for WWAEXT_SMS_CONSTANTS {
3821 fn default() -> Self {
3822 Self(0)
3823 }
3824}
3825impl ::windows::core::TypeKind for WWAEXT_SMS_CONSTANTS {
3826 type TypeKind = ::windows::core::CopyType;
3827}
3828impl ::core::fmt::Debug for WWAEXT_SMS_CONSTANTS {
3829 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3830 f.debug_tuple("WWAEXT_SMS_CONSTANTS").field(&self.0).finish()
3831 }
3832}
3833#[repr(C)]
3834#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3835pub struct MBN_CONTEXT {
3836 pub contextID: u32,
3837 pub contextType: MBN_CONTEXT_TYPE,
3838 pub accessString: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3839 pub userName: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3840 pub password: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3841 pub compression: MBN_COMPRESSION,
3842 pub authType: MBN_AUTH_PROTOCOL,
3843}
3844impl ::core::clone::Clone for MBN_CONTEXT {
3845 fn clone(&self) -> Self {
3846 unsafe { ::core::mem::transmute_copy(self) }
3847 }
3848}
3849impl ::core::fmt::Debug for MBN_CONTEXT {
3850 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3851 f.debug_struct("MBN_CONTEXT").field("contextID", &self.contextID).field("contextType", &self.contextType).field("accessString", &self.accessString).field("userName", &self.userName).field("password", &self.password).field("compression", &self.compression).field("authType", &self.authType).finish()
3852 }
3853}
3854impl ::windows::core::TypeKind for MBN_CONTEXT {
3855 type TypeKind = ::windows::core::CopyType;
3856}
3857impl ::core::cmp::PartialEq for MBN_CONTEXT {
3858 fn eq(&self, other: &Self) -> bool {
3859 self.contextID == other.contextID && self.contextType == other.contextType && self.accessString == other.accessString && self.userName == other.userName && self.password == other.password && self.compression == other.compression && self.authType == other.authType
3860 }
3861}
3862impl ::core::cmp::Eq for MBN_CONTEXT {}
3863impl ::core::default::Default for MBN_CONTEXT {
3864 fn default() -> Self {
3865 unsafe { ::core::mem::zeroed() }
3866 }
3867}
3868#[repr(C)]
3869#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`, `\"Win32_Foundation\"`*"]
3870#[cfg(feature = "Win32_Foundation")]
3871pub struct MBN_DEVICE_SERVICE {
3872 pub deviceServiceID: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3873 pub dataWriteSupported: super::super::Foundation::VARIANT_BOOL,
3874 pub dataReadSupported: super::super::Foundation::VARIANT_BOOL,
3875}
3876#[cfg(feature = "Win32_Foundation")]
3877impl ::core::clone::Clone for MBN_DEVICE_SERVICE {
3878 fn clone(&self) -> Self {
3879 unsafe { ::core::mem::transmute_copy(self) }
3880 }
3881}
3882#[cfg(feature = "Win32_Foundation")]
3883impl ::core::fmt::Debug for MBN_DEVICE_SERVICE {
3884 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3885 f.debug_struct("MBN_DEVICE_SERVICE").field("deviceServiceID", &self.deviceServiceID).field("dataWriteSupported", &self.dataWriteSupported).field("dataReadSupported", &self.dataReadSupported).finish()
3886 }
3887}
3888#[cfg(feature = "Win32_Foundation")]
3889impl ::windows::core::TypeKind for MBN_DEVICE_SERVICE {
3890 type TypeKind = ::windows::core::CopyType;
3891}
3892#[cfg(feature = "Win32_Foundation")]
3893impl ::core::cmp::PartialEq for MBN_DEVICE_SERVICE {
3894 fn eq(&self, other: &Self) -> bool {
3895 self.deviceServiceID == other.deviceServiceID && self.dataWriteSupported == other.dataWriteSupported && self.dataReadSupported == other.dataReadSupported
3896 }
3897}
3898#[cfg(feature = "Win32_Foundation")]
3899impl ::core::cmp::Eq for MBN_DEVICE_SERVICE {}
3900#[cfg(feature = "Win32_Foundation")]
3901impl ::core::default::Default for MBN_DEVICE_SERVICE {
3902 fn default() -> Self {
3903 unsafe { ::core::mem::zeroed() }
3904 }
3905}
3906#[repr(C)]
3907#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3908pub struct MBN_INTERFACE_CAPS {
3909 pub cellularClass: MBN_CELLULAR_CLASS,
3910 pub voiceClass: MBN_VOICE_CLASS,
3911 pub dataClass: u32,
3912 pub customDataClass: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3913 pub gsmBandClass: u32,
3914 pub cdmaBandClass: u32,
3915 pub customBandClass: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3916 pub smsCaps: u32,
3917 pub controlCaps: u32,
3918 pub deviceID: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3919 pub manufacturer: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3920 pub model: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3921 pub firmwareInfo: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3922}
3923impl ::core::clone::Clone for MBN_INTERFACE_CAPS {
3924 fn clone(&self) -> Self {
3925 unsafe { ::core::mem::transmute_copy(self) }
3926 }
3927}
3928impl ::core::fmt::Debug for MBN_INTERFACE_CAPS {
3929 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3930 f.debug_struct("MBN_INTERFACE_CAPS")
3931 .field("cellularClass", &self.cellularClass)
3932 .field("voiceClass", &self.voiceClass)
3933 .field("dataClass", &self.dataClass)
3934 .field("customDataClass", &self.customDataClass)
3935 .field("gsmBandClass", &self.gsmBandClass)
3936 .field("cdmaBandClass", &self.cdmaBandClass)
3937 .field("customBandClass", &self.customBandClass)
3938 .field("smsCaps", &self.smsCaps)
3939 .field("controlCaps", &self.controlCaps)
3940 .field("deviceID", &self.deviceID)
3941 .field("manufacturer", &self.manufacturer)
3942 .field("model", &self.model)
3943 .field("firmwareInfo", &self.firmwareInfo)
3944 .finish()
3945 }
3946}
3947impl ::windows::core::TypeKind for MBN_INTERFACE_CAPS {
3948 type TypeKind = ::windows::core::CopyType;
3949}
3950impl ::core::cmp::PartialEq for MBN_INTERFACE_CAPS {
3951 fn eq(&self, other: &Self) -> bool {
3952 self.cellularClass == other.cellularClass && self.voiceClass == other.voiceClass && self.dataClass == other.dataClass && self.customDataClass == other.customDataClass && self.gsmBandClass == other.gsmBandClass && self.cdmaBandClass == other.cdmaBandClass && self.customBandClass == other.customBandClass && self.smsCaps == other.smsCaps && self.controlCaps == other.controlCaps && self.deviceID == other.deviceID && self.manufacturer == other.manufacturer && self.model == other.model && self.firmwareInfo == other.firmwareInfo
3953 }
3954}
3955impl ::core::cmp::Eq for MBN_INTERFACE_CAPS {}
3956impl ::core::default::Default for MBN_INTERFACE_CAPS {
3957 fn default() -> Self {
3958 unsafe { ::core::mem::zeroed() }
3959 }
3960}
3961#[repr(C)]
3962#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3963pub struct MBN_PIN_INFO {
3964 pub pinState: MBN_PIN_STATE,
3965 pub pinType: MBN_PIN_TYPE,
3966 pub attemptsRemaining: u32,
3967}
3968impl ::core::marker::Copy for MBN_PIN_INFO {}
3969impl ::core::clone::Clone for MBN_PIN_INFO {
3970 fn clone(&self) -> Self {
3971 *self
3972 }
3973}
3974impl ::core::fmt::Debug for MBN_PIN_INFO {
3975 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
3976 f.debug_struct("MBN_PIN_INFO").field("pinState", &self.pinState).field("pinType", &self.pinType).field("attemptsRemaining", &self.attemptsRemaining).finish()
3977 }
3978}
3979impl ::windows::core::TypeKind for MBN_PIN_INFO {
3980 type TypeKind = ::windows::core::CopyType;
3981}
3982impl ::core::cmp::PartialEq for MBN_PIN_INFO {
3983 fn eq(&self, other: &Self) -> bool {
3984 self.pinState == other.pinState && self.pinType == other.pinType && self.attemptsRemaining == other.attemptsRemaining
3985 }
3986}
3987impl ::core::cmp::Eq for MBN_PIN_INFO {}
3988impl ::core::default::Default for MBN_PIN_INFO {
3989 fn default() -> Self {
3990 unsafe { ::core::mem::zeroed() }
3991 }
3992}
3993#[repr(C)]
3994#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
3995pub struct MBN_PROVIDER {
3996 pub providerID: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3997 pub providerState: u32,
3998 pub providerName: ::std::mem::ManuallyDrop<::windows::core::BSTR>,
3999 pub dataClass: u32,
4000}
4001impl ::core::clone::Clone for MBN_PROVIDER {
4002 fn clone(&self) -> Self {
4003 unsafe { ::core::mem::transmute_copy(self) }
4004 }
4005}
4006impl ::core::fmt::Debug for MBN_PROVIDER {
4007 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4008 f.debug_struct("MBN_PROVIDER").field("providerID", &self.providerID).field("providerState", &self.providerState).field("providerName", &self.providerName).field("dataClass", &self.dataClass).finish()
4009 }
4010}
4011impl ::windows::core::TypeKind for MBN_PROVIDER {
4012 type TypeKind = ::windows::core::CopyType;
4013}
4014impl ::core::cmp::PartialEq for MBN_PROVIDER {
4015 fn eq(&self, other: &Self) -> bool {
4016 self.providerID == other.providerID && self.providerState == other.providerState && self.providerName == other.providerName && self.dataClass == other.dataClass
4017 }
4018}
4019impl ::core::cmp::Eq for MBN_PROVIDER {}
4020impl ::core::default::Default for MBN_PROVIDER {
4021 fn default() -> Self {
4022 unsafe { ::core::mem::zeroed() }
4023 }
4024}
4025#[repr(C)]
4026#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
4027pub struct MBN_PROVIDER2 {
4028 pub provider: MBN_PROVIDER,
4029 pub cellularClass: MBN_CELLULAR_CLASS,
4030 pub signalStrength: u32,
4031 pub signalError: u32,
4032}
4033impl ::core::clone::Clone for MBN_PROVIDER2 {
4034 fn clone(&self) -> Self {
4035 unsafe { ::core::mem::transmute_copy(self) }
4036 }
4037}
4038impl ::core::fmt::Debug for MBN_PROVIDER2 {
4039 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4040 f.debug_struct("MBN_PROVIDER2").field("provider", &self.provider).field("cellularClass", &self.cellularClass).field("signalStrength", &self.signalStrength).field("signalError", &self.signalError).finish()
4041 }
4042}
4043impl ::windows::core::TypeKind for MBN_PROVIDER2 {
4044 type TypeKind = ::windows::core::CopyType;
4045}
4046impl ::core::cmp::PartialEq for MBN_PROVIDER2 {
4047 fn eq(&self, other: &Self) -> bool {
4048 self.provider == other.provider && self.cellularClass == other.cellularClass && self.signalStrength == other.signalStrength && self.signalError == other.signalError
4049 }
4050}
4051impl ::core::cmp::Eq for MBN_PROVIDER2 {}
4052impl ::core::default::Default for MBN_PROVIDER2 {
4053 fn default() -> Self {
4054 unsafe { ::core::mem::zeroed() }
4055 }
4056}
4057#[repr(C)]
4058#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
4059pub struct MBN_SMS_FILTER {
4060 pub flag: MBN_SMS_FLAG,
4061 pub messageIndex: u32,
4062}
4063impl ::core::marker::Copy for MBN_SMS_FILTER {}
4064impl ::core::clone::Clone for MBN_SMS_FILTER {
4065 fn clone(&self) -> Self {
4066 *self
4067 }
4068}
4069impl ::core::fmt::Debug for MBN_SMS_FILTER {
4070 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4071 f.debug_struct("MBN_SMS_FILTER").field("flag", &self.flag).field("messageIndex", &self.messageIndex).finish()
4072 }
4073}
4074impl ::windows::core::TypeKind for MBN_SMS_FILTER {
4075 type TypeKind = ::windows::core::CopyType;
4076}
4077impl ::core::cmp::PartialEq for MBN_SMS_FILTER {
4078 fn eq(&self, other: &Self) -> bool {
4079 self.flag == other.flag && self.messageIndex == other.messageIndex
4080 }
4081}
4082impl ::core::cmp::Eq for MBN_SMS_FILTER {}
4083impl ::core::default::Default for MBN_SMS_FILTER {
4084 fn default() -> Self {
4085 unsafe { ::core::mem::zeroed() }
4086 }
4087}
4088#[repr(C)]
4089#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
4090pub struct MBN_SMS_STATUS_INFO {
4091 pub flag: u32,
4092 pub messageIndex: u32,
4093}
4094impl ::core::marker::Copy for MBN_SMS_STATUS_INFO {}
4095impl ::core::clone::Clone for MBN_SMS_STATUS_INFO {
4096 fn clone(&self) -> Self {
4097 *self
4098 }
4099}
4100impl ::core::fmt::Debug for MBN_SMS_STATUS_INFO {
4101 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4102 f.debug_struct("MBN_SMS_STATUS_INFO").field("flag", &self.flag).field("messageIndex", &self.messageIndex).finish()
4103 }
4104}
4105impl ::windows::core::TypeKind for MBN_SMS_STATUS_INFO {
4106 type TypeKind = ::windows::core::CopyType;
4107}
4108impl ::core::cmp::PartialEq for MBN_SMS_STATUS_INFO {
4109 fn eq(&self, other: &Self) -> bool {
4110 self.flag == other.flag && self.messageIndex == other.messageIndex
4111 }
4112}
4113impl ::core::cmp::Eq for MBN_SMS_STATUS_INFO {}
4114impl ::core::default::Default for MBN_SMS_STATUS_INFO {
4115 fn default() -> Self {
4116 unsafe { ::core::mem::zeroed() }
4117 }
4118}
4119#[repr(C)]
4120#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
4121pub struct __DummyPinType__ {
4122 pub pinType: u32,
4123}
4124impl ::core::marker::Copy for __DummyPinType__ {}
4125impl ::core::clone::Clone for __DummyPinType__ {
4126 fn clone(&self) -> Self {
4127 *self
4128 }
4129}
4130impl ::core::fmt::Debug for __DummyPinType__ {
4131 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4132 f.debug_struct("__DummyPinType__").field("pinType", &self.pinType).finish()
4133 }
4134}
4135impl ::windows::core::TypeKind for __DummyPinType__ {
4136 type TypeKind = ::windows::core::CopyType;
4137}
4138impl ::core::cmp::PartialEq for __DummyPinType__ {
4139 fn eq(&self, other: &Self) -> bool {
4140 self.pinType == other.pinType
4141 }
4142}
4143impl ::core::cmp::Eq for __DummyPinType__ {}
4144impl ::core::default::Default for __DummyPinType__ {
4145 fn default() -> Self {
4146 unsafe { ::core::mem::zeroed() }
4147 }
4148}
4149#[repr(C)]
4150#[doc = "*Required features: `\"Win32_NetworkManagement_MobileBroadband\"`*"]
4151pub struct __mbnapi_ReferenceRemainingTypes__ {
4152 pub bandClass: MBN_BAND_CLASS,
4153 pub contextConstants: MBN_CONTEXT_CONSTANTS,
4154 pub ctrlCaps: MBN_CTRL_CAPS,
4155 pub dataClass: MBN_DATA_CLASS,
4156 pub interfaceCapsConstants: MBN_INTERFACE_CAPS_CONSTANTS,
4157 pub pinConstants: MBN_PIN_CONSTANTS,
4158 pub providerConstants: MBN_PROVIDER_CONSTANTS,
4159 pub providerState: MBN_PROVIDER_STATE,
4160 pub registrationConstants: MBN_REGISTRATION_CONSTANTS,
4161 pub signalConstants: MBN_SIGNAL_CONSTANTS,
4162 pub smsCaps: MBN_SMS_CAPS,
4163 pub smsConstants: WWAEXT_SMS_CONSTANTS,
4164 pub wwaextSmsConstants: WWAEXT_SMS_CONSTANTS,
4165 pub smsStatusFlag: MBN_SMS_STATUS_FLAG,
4166}
4167impl ::core::marker::Copy for __mbnapi_ReferenceRemainingTypes__ {}
4168impl ::core::clone::Clone for __mbnapi_ReferenceRemainingTypes__ {
4169 fn clone(&self) -> Self {
4170 *self
4171 }
4172}
4173impl ::core::fmt::Debug for __mbnapi_ReferenceRemainingTypes__ {
4174 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
4175 f.debug_struct("__mbnapi_ReferenceRemainingTypes__")
4176 .field("bandClass", &self.bandClass)
4177 .field("contextConstants", &self.contextConstants)
4178 .field("ctrlCaps", &self.ctrlCaps)
4179 .field("dataClass", &self.dataClass)
4180 .field("interfaceCapsConstants", &self.interfaceCapsConstants)
4181 .field("pinConstants", &self.pinConstants)
4182 .field("providerConstants", &self.providerConstants)
4183 .field("providerState", &self.providerState)
4184 .field("registrationConstants", &self.registrationConstants)
4185 .field("signalConstants", &self.signalConstants)
4186 .field("smsCaps", &self.smsCaps)
4187 .field("smsConstants", &self.smsConstants)
4188 .field("wwaextSmsConstants", &self.wwaextSmsConstants)
4189 .field("smsStatusFlag", &self.smsStatusFlag)
4190 .finish()
4191 }
4192}
4193impl ::windows::core::TypeKind for __mbnapi_ReferenceRemainingTypes__ {
4194 type TypeKind = ::windows::core::CopyType;
4195}
4196impl ::core::cmp::PartialEq for __mbnapi_ReferenceRemainingTypes__ {
4197 fn eq(&self, other: &Self) -> bool {
4198 self.bandClass == other.bandClass && self.contextConstants == other.contextConstants && self.ctrlCaps == other.ctrlCaps && self.dataClass == other.dataClass && self.interfaceCapsConstants == other.interfaceCapsConstants && self.pinConstants == other.pinConstants && self.providerConstants == other.providerConstants && self.providerState == other.providerState && self.registrationConstants == other.registrationConstants && self.signalConstants == other.signalConstants && self.smsCaps == other.smsCaps && self.smsConstants == other.smsConstants && self.wwaextSmsConstants == other.wwaextSmsConstants && self.smsStatusFlag == other.smsStatusFlag
4199 }
4200}
4201impl ::core::cmp::Eq for __mbnapi_ReferenceRemainingTypes__ {}
4202impl ::core::default::Default for __mbnapi_ReferenceRemainingTypes__ {
4203 fn default() -> Self {
4204 unsafe { ::core::mem::zeroed() }
4205 }
4206}
4207#[cfg(feature = "implement")]
4208::core::include!("impl.rs");