1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[cfg(feature = "Devices_PointOfService_Provider")]
3 pub mod Provider;
4 #[repr(transparent)]
5 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6 pub struct BarcodeScanner(::windows::runtime::IInspectable);
7 impl BarcodeScanner {
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>8     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
9         let this = self;
10         unsafe {
11             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
12             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
13         }
14     }
Capabilities(&self) -> ::windows::runtime::Result<BarcodeScannerCapabilities>15     pub fn Capabilities(&self) -> ::windows::runtime::Result<BarcodeScannerCapabilities> {
16         let this = self;
17         unsafe {
18             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<BarcodeScannerCapabilities>(result__)
20         }
21     }
22     #[cfg(feature = "Foundation")]
ClaimScannerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedBarcodeScanner>>23     pub fn ClaimScannerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedBarcodeScanner>> {
24         let this = self;
25         unsafe {
26             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
27             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<ClaimedBarcodeScanner>>(result__)
28         }
29     }
30     #[cfg(feature = "Foundation")]
CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>31     pub fn CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>> {
32         let this = self;
33         unsafe {
34             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
35             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), level, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>(result__)
36         }
37     }
38     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetSupportedSymbologiesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<u32>>>39     pub fn GetSupportedSymbologiesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<u32>>> {
40         let this = self;
41         unsafe {
42             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
43             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<u32>>>(result__)
44         }
45     }
46     #[cfg(feature = "Foundation")]
IsSymbologySupportedAsync(&self, barcodesymbology: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>47     pub fn IsSymbologySupportedAsync(&self, barcodesymbology: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
48         let this = self;
49         unsafe {
50             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
51             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), barcodesymbology, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
52         }
53     }
54     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections", feature = "Storage_Streams"))]
RetrieveStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Storage::Streams::IBuffer>>55     pub fn RetrieveStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Storage::Streams::IBuffer>> {
56         let this = self;
57         unsafe {
58             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
59             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), statisticscategories.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Storage::Streams::IBuffer>>(result__)
60         }
61     }
62     #[cfg(feature = "Foundation_Collections")]
GetSupportedProfiles(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<::windows::runtime::HSTRING>>63     pub fn GetSupportedProfiles(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<::windows::runtime::HSTRING>> {
64         let this = self;
65         unsafe {
66             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
67             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<::windows::runtime::HSTRING>>(result__)
68         }
69     }
IsProfileSupported<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, profile: Param0) -> ::windows::runtime::Result<bool>70     pub fn IsProfileSupported<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, profile: Param0) -> ::windows::runtime::Result<bool> {
71         let this = self;
72         unsafe {
73             let mut result__: bool = ::std::mem::zeroed();
74             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), profile.into_param().abi(), &mut result__).from_abi::<bool>(result__)
75         }
76     }
77     #[cfg(feature = "Foundation")]
StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<BarcodeScanner, BarcodeScannerStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>78     pub fn StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<BarcodeScanner, BarcodeScannerStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
79         let this = self;
80         unsafe {
81             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
82             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
83         }
84     }
85     #[cfg(feature = "Foundation")]
RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>86     pub fn RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
87         let this = self;
88         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
89     }
90     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>91     pub fn Close(&self) -> ::windows::runtime::Result<()> {
92         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
93         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
94     }
95     #[cfg(feature = "Foundation")]
GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<BarcodeScanner>>96     pub fn GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<BarcodeScanner>> {
97         Self::IBarcodeScannerStatics(|this| unsafe {
98             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
99             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<BarcodeScanner>>(result__)
100         })
101     }
102     #[cfg(feature = "Foundation")]
FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<BarcodeScanner>>103     pub fn FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<BarcodeScanner>> {
104         Self::IBarcodeScannerStatics(|this| unsafe {
105             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
106             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), deviceid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<BarcodeScanner>>(result__)
107         })
108     }
GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING>109     pub fn GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
110         Self::IBarcodeScannerStatics(|this| unsafe {
111             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
112             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
113         })
114     }
VideoDeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>115     pub fn VideoDeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
116         let this = &::windows::runtime::Interface::cast::<IBarcodeScanner2>(self)?;
117         unsafe {
118             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
119             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
120         }
121     }
GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING>122     pub fn GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
123         Self::IBarcodeScannerStatics2(|this| unsafe {
124             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
125             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), connectiontypes, &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
126         })
127     }
IBarcodeScannerStatics<R, F: FnOnce(&IBarcodeScannerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>128     pub fn IBarcodeScannerStatics<R, F: FnOnce(&IBarcodeScannerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
129         static mut SHARED: ::windows::runtime::FactoryCache<BarcodeScanner, IBarcodeScannerStatics> = ::windows::runtime::FactoryCache::new();
130         unsafe { SHARED.call(callback) }
131     }
IBarcodeScannerStatics2<R, F: FnOnce(&IBarcodeScannerStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>132     pub fn IBarcodeScannerStatics2<R, F: FnOnce(&IBarcodeScannerStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
133         static mut SHARED: ::windows::runtime::FactoryCache<BarcodeScanner, IBarcodeScannerStatics2> = ::windows::runtime::FactoryCache::new();
134         unsafe { SHARED.call(callback) }
135     }
136 }
137 unsafe impl ::windows::runtime::RuntimeType for BarcodeScanner {
138     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.BarcodeScanner;{bea33e06-b264-4f03-a9c1-45b20f01134f})");
139 }
140 unsafe impl ::windows::runtime::Interface for BarcodeScanner {
141     type Vtable = IBarcodeScanner_abi;
142     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3198369286, 45668, 20227, [169, 193, 69, 178, 15, 1, 19, 79]);
143 }
144 impl ::windows::runtime::RuntimeName for BarcodeScanner {
145     const NAME: &'static str = "Windows.Devices.PointOfService.BarcodeScanner";
146 }
147 impl ::std::convert::From<BarcodeScanner> for ::windows::runtime::IUnknown {
from(value: BarcodeScanner) -> Self148     fn from(value: BarcodeScanner) -> Self {
149         unsafe { ::std::mem::transmute(value) }
150     }
151 }
152 impl ::std::convert::From<&BarcodeScanner> for ::windows::runtime::IUnknown {
from(value: &BarcodeScanner) -> Self153     fn from(value: &BarcodeScanner) -> Self {
154         ::std::convert::From::from(::std::clone::Clone::clone(value))
155     }
156 }
157 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>158     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
159         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
160     }
161 }
162 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>163     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
164         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
165     }
166 }
167 impl ::std::convert::From<BarcodeScanner> for ::windows::runtime::IInspectable {
from(value: BarcodeScanner) -> Self168     fn from(value: BarcodeScanner) -> Self {
169         value.0
170     }
171 }
172 impl ::std::convert::From<&BarcodeScanner> for ::windows::runtime::IInspectable {
from(value: &BarcodeScanner) -> Self173     fn from(value: &BarcodeScanner) -> Self {
174         value.0.clone()
175     }
176 }
177 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>178     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
179         ::windows::runtime::Param::Owned(self.0)
180     }
181 }
182 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>183     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
184         ::windows::runtime::Param::Borrowed(&self.0)
185     }
186 }
187 #[cfg(feature = "Foundation")]
188 impl ::std::convert::TryFrom<BarcodeScanner> for super::super::Foundation::IClosable {
189     type Error = ::windows::runtime::Error;
try_from(value: BarcodeScanner) -> ::windows::runtime::Result<Self>190     fn try_from(value: BarcodeScanner) -> ::windows::runtime::Result<Self> {
191         ::std::convert::TryFrom::try_from(&value)
192     }
193 }
194 #[cfg(feature = "Foundation")]
195 impl ::std::convert::TryFrom<&BarcodeScanner> for super::super::Foundation::IClosable {
196     type Error = ::windows::runtime::Error;
try_from(value: &BarcodeScanner) -> ::windows::runtime::Result<Self>197     fn try_from(value: &BarcodeScanner) -> ::windows::runtime::Result<Self> {
198         ::windows::runtime::Interface::cast(value)
199     }
200 }
201 #[cfg(feature = "Foundation")]
202 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for BarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>203     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
204         ::windows::runtime::IntoParam::into_param(&self)
205     }
206 }
207 #[cfg(feature = "Foundation")]
208 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &BarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>209     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
210         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
211     }
212 }
213 unsafe impl ::std::marker::Send for BarcodeScanner {}
214 unsafe impl ::std::marker::Sync for BarcodeScanner {}
215 #[repr(transparent)]
216 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
217 pub struct BarcodeScannerCapabilities(::windows::runtime::IInspectable);
218 impl BarcodeScannerCapabilities {
PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType>219     pub fn PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType> {
220         let this = self;
221         unsafe {
222             let mut result__: UnifiedPosPowerReportingType = ::std::mem::zeroed();
223             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UnifiedPosPowerReportingType>(result__)
224         }
225     }
IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool>226     pub fn IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool> {
227         let this = self;
228         unsafe {
229             let mut result__: bool = ::std::mem::zeroed();
230             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
231         }
232     }
IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool>233     pub fn IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool> {
234         let this = self;
235         unsafe {
236             let mut result__: bool = ::std::mem::zeroed();
237             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
238         }
239     }
IsImagePreviewSupported(&self) -> ::windows::runtime::Result<bool>240     pub fn IsImagePreviewSupported(&self) -> ::windows::runtime::Result<bool> {
241         let this = self;
242         unsafe {
243             let mut result__: bool = ::std::mem::zeroed();
244             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
245         }
246     }
IsSoftwareTriggerSupported(&self) -> ::windows::runtime::Result<bool>247     pub fn IsSoftwareTriggerSupported(&self) -> ::windows::runtime::Result<bool> {
248         let this = &::windows::runtime::Interface::cast::<IBarcodeScannerCapabilities1>(self)?;
249         unsafe {
250             let mut result__: bool = ::std::mem::zeroed();
251             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
252         }
253     }
IsVideoPreviewSupported(&self) -> ::windows::runtime::Result<bool>254     pub fn IsVideoPreviewSupported(&self) -> ::windows::runtime::Result<bool> {
255         let this = &::windows::runtime::Interface::cast::<IBarcodeScannerCapabilities2>(self)?;
256         unsafe {
257             let mut result__: bool = ::std::mem::zeroed();
258             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
259         }
260     }
261 }
262 unsafe impl ::windows::runtime::RuntimeType for BarcodeScannerCapabilities {
263     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.BarcodeScannerCapabilities;{c60691e4-f2c8-4420-a307-b12ef6622857})");
264 }
265 unsafe impl ::windows::runtime::Interface for BarcodeScannerCapabilities {
266     type Vtable = IBarcodeScannerCapabilities_abi;
267     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3322319332, 62152, 17440, [163, 7, 177, 46, 246, 98, 40, 87]);
268 }
269 impl ::windows::runtime::RuntimeName for BarcodeScannerCapabilities {
270     const NAME: &'static str = "Windows.Devices.PointOfService.BarcodeScannerCapabilities";
271 }
272 impl ::std::convert::From<BarcodeScannerCapabilities> for ::windows::runtime::IUnknown {
from(value: BarcodeScannerCapabilities) -> Self273     fn from(value: BarcodeScannerCapabilities) -> Self {
274         unsafe { ::std::mem::transmute(value) }
275     }
276 }
277 impl ::std::convert::From<&BarcodeScannerCapabilities> for ::windows::runtime::IUnknown {
from(value: &BarcodeScannerCapabilities) -> Self278     fn from(value: &BarcodeScannerCapabilities) -> Self {
279         ::std::convert::From::from(::std::clone::Clone::clone(value))
280     }
281 }
282 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BarcodeScannerCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>283     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
284         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
285     }
286 }
287 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BarcodeScannerCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>288     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
289         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
290     }
291 }
292 impl ::std::convert::From<BarcodeScannerCapabilities> for ::windows::runtime::IInspectable {
from(value: BarcodeScannerCapabilities) -> Self293     fn from(value: BarcodeScannerCapabilities) -> Self {
294         value.0
295     }
296 }
297 impl ::std::convert::From<&BarcodeScannerCapabilities> for ::windows::runtime::IInspectable {
from(value: &BarcodeScannerCapabilities) -> Self298     fn from(value: &BarcodeScannerCapabilities) -> Self {
299         value.0.clone()
300     }
301 }
302 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BarcodeScannerCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>303     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
304         ::windows::runtime::Param::Owned(self.0)
305     }
306 }
307 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BarcodeScannerCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>308     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
309         ::windows::runtime::Param::Borrowed(&self.0)
310     }
311 }
312 unsafe impl ::std::marker::Send for BarcodeScannerCapabilities {}
313 unsafe impl ::std::marker::Sync for BarcodeScannerCapabilities {}
314 #[repr(transparent)]
315 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
316 pub struct BarcodeScannerDataReceivedEventArgs(::windows::runtime::IInspectable);
317 impl BarcodeScannerDataReceivedEventArgs {
Report(&self) -> ::windows::runtime::Result<BarcodeScannerReport>318     pub fn Report(&self) -> ::windows::runtime::Result<BarcodeScannerReport> {
319         let this = self;
320         unsafe {
321             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
322             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<BarcodeScannerReport>(result__)
323         }
324     }
325 }
326 unsafe impl ::windows::runtime::RuntimeType for BarcodeScannerDataReceivedEventArgs {
327     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.BarcodeScannerDataReceivedEventArgs;{4234a7e2-ed97-467d-ad2b-01e44313a929})");
328 }
329 unsafe impl ::windows::runtime::Interface for BarcodeScannerDataReceivedEventArgs {
330     type Vtable = IBarcodeScannerDataReceivedEventArgs_abi;
331     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1110747106, 60823, 18045, [173, 43, 1, 228, 67, 19, 169, 41]);
332 }
333 impl ::windows::runtime::RuntimeName for BarcodeScannerDataReceivedEventArgs {
334     const NAME: &'static str = "Windows.Devices.PointOfService.BarcodeScannerDataReceivedEventArgs";
335 }
336 impl ::std::convert::From<BarcodeScannerDataReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: BarcodeScannerDataReceivedEventArgs) -> Self337     fn from(value: BarcodeScannerDataReceivedEventArgs) -> Self {
338         unsafe { ::std::mem::transmute(value) }
339     }
340 }
341 impl ::std::convert::From<&BarcodeScannerDataReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: &BarcodeScannerDataReceivedEventArgs) -> Self342     fn from(value: &BarcodeScannerDataReceivedEventArgs) -> Self {
343         ::std::convert::From::from(::std::clone::Clone::clone(value))
344     }
345 }
346 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BarcodeScannerDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>347     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
348         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
349     }
350 }
351 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BarcodeScannerDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>352     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
353         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
354     }
355 }
356 impl ::std::convert::From<BarcodeScannerDataReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: BarcodeScannerDataReceivedEventArgs) -> Self357     fn from(value: BarcodeScannerDataReceivedEventArgs) -> Self {
358         value.0
359     }
360 }
361 impl ::std::convert::From<&BarcodeScannerDataReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: &BarcodeScannerDataReceivedEventArgs) -> Self362     fn from(value: &BarcodeScannerDataReceivedEventArgs) -> Self {
363         value.0.clone()
364     }
365 }
366 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BarcodeScannerDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>367     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
368         ::windows::runtime::Param::Owned(self.0)
369     }
370 }
371 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BarcodeScannerDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>372     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
373         ::windows::runtime::Param::Borrowed(&self.0)
374     }
375 }
376 unsafe impl ::std::marker::Send for BarcodeScannerDataReceivedEventArgs {}
377 unsafe impl ::std::marker::Sync for BarcodeScannerDataReceivedEventArgs {}
378 #[repr(transparent)]
379 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
380 pub struct BarcodeScannerErrorOccurredEventArgs(::windows::runtime::IInspectable);
381 impl BarcodeScannerErrorOccurredEventArgs {
PartialInputData(&self) -> ::windows::runtime::Result<BarcodeScannerReport>382     pub fn PartialInputData(&self) -> ::windows::runtime::Result<BarcodeScannerReport> {
383         let this = self;
384         unsafe {
385             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
386             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<BarcodeScannerReport>(result__)
387         }
388     }
IsRetriable(&self) -> ::windows::runtime::Result<bool>389     pub fn IsRetriable(&self) -> ::windows::runtime::Result<bool> {
390         let this = self;
391         unsafe {
392             let mut result__: bool = ::std::mem::zeroed();
393             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
394         }
395     }
ErrorData(&self) -> ::windows::runtime::Result<UnifiedPosErrorData>396     pub fn ErrorData(&self) -> ::windows::runtime::Result<UnifiedPosErrorData> {
397         let this = self;
398         unsafe {
399             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
400             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UnifiedPosErrorData>(result__)
401         }
402     }
403 }
404 unsafe impl ::windows::runtime::RuntimeType for BarcodeScannerErrorOccurredEventArgs {
405     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.BarcodeScannerErrorOccurredEventArgs;{2cd2602f-cf3a-4002-a75a-c5ec468f0a20})");
406 }
407 unsafe impl ::windows::runtime::Interface for BarcodeScannerErrorOccurredEventArgs {
408     type Vtable = IBarcodeScannerErrorOccurredEventArgs_abi;
409     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(751984687, 53050, 16386, [167, 90, 197, 236, 70, 143, 10, 32]);
410 }
411 impl ::windows::runtime::RuntimeName for BarcodeScannerErrorOccurredEventArgs {
412     const NAME: &'static str = "Windows.Devices.PointOfService.BarcodeScannerErrorOccurredEventArgs";
413 }
414 impl ::std::convert::From<BarcodeScannerErrorOccurredEventArgs> for ::windows::runtime::IUnknown {
from(value: BarcodeScannerErrorOccurredEventArgs) -> Self415     fn from(value: BarcodeScannerErrorOccurredEventArgs) -> Self {
416         unsafe { ::std::mem::transmute(value) }
417     }
418 }
419 impl ::std::convert::From<&BarcodeScannerErrorOccurredEventArgs> for ::windows::runtime::IUnknown {
from(value: &BarcodeScannerErrorOccurredEventArgs) -> Self420     fn from(value: &BarcodeScannerErrorOccurredEventArgs) -> Self {
421         ::std::convert::From::from(::std::clone::Clone::clone(value))
422     }
423 }
424 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BarcodeScannerErrorOccurredEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>425     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
426         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
427     }
428 }
429 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BarcodeScannerErrorOccurredEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>430     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
431         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
432     }
433 }
434 impl ::std::convert::From<BarcodeScannerErrorOccurredEventArgs> for ::windows::runtime::IInspectable {
from(value: BarcodeScannerErrorOccurredEventArgs) -> Self435     fn from(value: BarcodeScannerErrorOccurredEventArgs) -> Self {
436         value.0
437     }
438 }
439 impl ::std::convert::From<&BarcodeScannerErrorOccurredEventArgs> for ::windows::runtime::IInspectable {
from(value: &BarcodeScannerErrorOccurredEventArgs) -> Self440     fn from(value: &BarcodeScannerErrorOccurredEventArgs) -> Self {
441         value.0.clone()
442     }
443 }
444 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BarcodeScannerErrorOccurredEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>445     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
446         ::windows::runtime::Param::Owned(self.0)
447     }
448 }
449 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BarcodeScannerErrorOccurredEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>450     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
451         ::windows::runtime::Param::Borrowed(&self.0)
452     }
453 }
454 unsafe impl ::std::marker::Send for BarcodeScannerErrorOccurredEventArgs {}
455 unsafe impl ::std::marker::Sync for BarcodeScannerErrorOccurredEventArgs {}
456 #[repr(transparent)]
457 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
458 pub struct BarcodeScannerImagePreviewReceivedEventArgs(::windows::runtime::IInspectable);
459 impl BarcodeScannerImagePreviewReceivedEventArgs {
460     #[cfg(feature = "Storage_Streams")]
Preview(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IRandomAccessStreamWithContentType>461     pub fn Preview(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IRandomAccessStreamWithContentType> {
462         let this = self;
463         unsafe {
464             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
465             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IRandomAccessStreamWithContentType>(result__)
466         }
467     }
468 }
469 unsafe impl ::windows::runtime::RuntimeType for BarcodeScannerImagePreviewReceivedEventArgs {
470     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.BarcodeScannerImagePreviewReceivedEventArgs;{f3b7de85-6e8b-434e-9f58-06ef26bc4baf})");
471 }
472 unsafe impl ::windows::runtime::Interface for BarcodeScannerImagePreviewReceivedEventArgs {
473     type Vtable = IBarcodeScannerImagePreviewReceivedEventArgs_abi;
474     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4088913541, 28299, 17230, [159, 88, 6, 239, 38, 188, 75, 175]);
475 }
476 impl ::windows::runtime::RuntimeName for BarcodeScannerImagePreviewReceivedEventArgs {
477     const NAME: &'static str = "Windows.Devices.PointOfService.BarcodeScannerImagePreviewReceivedEventArgs";
478 }
479 impl ::std::convert::From<BarcodeScannerImagePreviewReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: BarcodeScannerImagePreviewReceivedEventArgs) -> Self480     fn from(value: BarcodeScannerImagePreviewReceivedEventArgs) -> Self {
481         unsafe { ::std::mem::transmute(value) }
482     }
483 }
484 impl ::std::convert::From<&BarcodeScannerImagePreviewReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: &BarcodeScannerImagePreviewReceivedEventArgs) -> Self485     fn from(value: &BarcodeScannerImagePreviewReceivedEventArgs) -> Self {
486         ::std::convert::From::from(::std::clone::Clone::clone(value))
487     }
488 }
489 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BarcodeScannerImagePreviewReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>490     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
491         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
492     }
493 }
494 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BarcodeScannerImagePreviewReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>495     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
496         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
497     }
498 }
499 impl ::std::convert::From<BarcodeScannerImagePreviewReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: BarcodeScannerImagePreviewReceivedEventArgs) -> Self500     fn from(value: BarcodeScannerImagePreviewReceivedEventArgs) -> Self {
501         value.0
502     }
503 }
504 impl ::std::convert::From<&BarcodeScannerImagePreviewReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: &BarcodeScannerImagePreviewReceivedEventArgs) -> Self505     fn from(value: &BarcodeScannerImagePreviewReceivedEventArgs) -> Self {
506         value.0.clone()
507     }
508 }
509 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BarcodeScannerImagePreviewReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>510     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
511         ::windows::runtime::Param::Owned(self.0)
512     }
513 }
514 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BarcodeScannerImagePreviewReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>515     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
516         ::windows::runtime::Param::Borrowed(&self.0)
517     }
518 }
519 unsafe impl ::std::marker::Send for BarcodeScannerImagePreviewReceivedEventArgs {}
520 unsafe impl ::std::marker::Sync for BarcodeScannerImagePreviewReceivedEventArgs {}
521 #[repr(transparent)]
522 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
523 pub struct BarcodeScannerReport(::windows::runtime::IInspectable);
524 impl BarcodeScannerReport {
ScanDataType(&self) -> ::windows::runtime::Result<u32>525     pub fn ScanDataType(&self) -> ::windows::runtime::Result<u32> {
526         let this = self;
527         unsafe {
528             let mut result__: u32 = ::std::mem::zeroed();
529             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
530         }
531     }
532     #[cfg(feature = "Storage_Streams")]
ScanData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer>533     pub fn ScanData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer> {
534         let this = self;
535         unsafe {
536             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
537             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IBuffer>(result__)
538         }
539     }
540     #[cfg(feature = "Storage_Streams")]
ScanDataLabel(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer>541     pub fn ScanDataLabel(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer> {
542         let this = self;
543         unsafe {
544             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
545             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IBuffer>(result__)
546         }
547     }
548     #[cfg(feature = "Storage_Streams")]
CreateInstance<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IBuffer>, Param2: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IBuffer>>(scandatatype: u32, scandata: Param1, scandatalabel: Param2) -> ::windows::runtime::Result<BarcodeScannerReport>549     pub fn CreateInstance<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IBuffer>, Param2: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IBuffer>>(scandatatype: u32, scandata: Param1, scandatalabel: Param2) -> ::windows::runtime::Result<BarcodeScannerReport> {
550         Self::IBarcodeScannerReportFactory(|this| unsafe {
551             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
552             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), scandatatype, scandata.into_param().abi(), scandatalabel.into_param().abi(), &mut result__).from_abi::<BarcodeScannerReport>(result__)
553         })
554     }
IBarcodeScannerReportFactory<R, F: FnOnce(&IBarcodeScannerReportFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>555     pub fn IBarcodeScannerReportFactory<R, F: FnOnce(&IBarcodeScannerReportFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
556         static mut SHARED: ::windows::runtime::FactoryCache<BarcodeScannerReport, IBarcodeScannerReportFactory> = ::windows::runtime::FactoryCache::new();
557         unsafe { SHARED.call(callback) }
558     }
559 }
560 unsafe impl ::windows::runtime::RuntimeType for BarcodeScannerReport {
561     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.BarcodeScannerReport;{5ce4d8b0-a489-4b96-86c4-f0bf8a37753d})");
562 }
563 unsafe impl ::windows::runtime::Interface for BarcodeScannerReport {
564     type Vtable = IBarcodeScannerReport_abi;
565     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1558501552, 42121, 19350, [134, 196, 240, 191, 138, 55, 117, 61]);
566 }
567 impl ::windows::runtime::RuntimeName for BarcodeScannerReport {
568     const NAME: &'static str = "Windows.Devices.PointOfService.BarcodeScannerReport";
569 }
570 impl ::std::convert::From<BarcodeScannerReport> for ::windows::runtime::IUnknown {
from(value: BarcodeScannerReport) -> Self571     fn from(value: BarcodeScannerReport) -> Self {
572         unsafe { ::std::mem::transmute(value) }
573     }
574 }
575 impl ::std::convert::From<&BarcodeScannerReport> for ::windows::runtime::IUnknown {
from(value: &BarcodeScannerReport) -> Self576     fn from(value: &BarcodeScannerReport) -> Self {
577         ::std::convert::From::from(::std::clone::Clone::clone(value))
578     }
579 }
580 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BarcodeScannerReport {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>581     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
582         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
583     }
584 }
585 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BarcodeScannerReport {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>586     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
587         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
588     }
589 }
590 impl ::std::convert::From<BarcodeScannerReport> for ::windows::runtime::IInspectable {
from(value: BarcodeScannerReport) -> Self591     fn from(value: BarcodeScannerReport) -> Self {
592         value.0
593     }
594 }
595 impl ::std::convert::From<&BarcodeScannerReport> for ::windows::runtime::IInspectable {
from(value: &BarcodeScannerReport) -> Self596     fn from(value: &BarcodeScannerReport) -> Self {
597         value.0.clone()
598     }
599 }
600 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BarcodeScannerReport {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>601     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
602         ::windows::runtime::Param::Owned(self.0)
603     }
604 }
605 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BarcodeScannerReport {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>606     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
607         ::windows::runtime::Param::Borrowed(&self.0)
608     }
609 }
610 unsafe impl ::std::marker::Send for BarcodeScannerReport {}
611 unsafe impl ::std::marker::Sync for BarcodeScannerReport {}
612 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
613 #[repr(transparent)]
614 pub struct BarcodeScannerStatus(pub i32);
615 impl BarcodeScannerStatus {
616     pub const Online: BarcodeScannerStatus = BarcodeScannerStatus(0i32);
617     pub const Off: BarcodeScannerStatus = BarcodeScannerStatus(1i32);
618     pub const Offline: BarcodeScannerStatus = BarcodeScannerStatus(2i32);
619     pub const OffOrOffline: BarcodeScannerStatus = BarcodeScannerStatus(3i32);
620     pub const Extended: BarcodeScannerStatus = BarcodeScannerStatus(4i32);
621 }
622 impl ::std::convert::From<i32> for BarcodeScannerStatus {
from(value: i32) -> Self623     fn from(value: i32) -> Self {
624         Self(value)
625     }
626 }
627 unsafe impl ::windows::runtime::Abi for BarcodeScannerStatus {
628     type Abi = Self;
629     type DefaultType = Self;
630 }
631 unsafe impl ::windows::runtime::RuntimeType for BarcodeScannerStatus {
632     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.BarcodeScannerStatus;i4)");
633 }
634 #[repr(transparent)]
635 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
636 pub struct BarcodeScannerStatusUpdatedEventArgs(::windows::runtime::IInspectable);
637 impl BarcodeScannerStatusUpdatedEventArgs {
Status(&self) -> ::windows::runtime::Result<BarcodeScannerStatus>638     pub fn Status(&self) -> ::windows::runtime::Result<BarcodeScannerStatus> {
639         let this = self;
640         unsafe {
641             let mut result__: BarcodeScannerStatus = ::std::mem::zeroed();
642             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<BarcodeScannerStatus>(result__)
643         }
644     }
ExtendedStatus(&self) -> ::windows::runtime::Result<u32>645     pub fn ExtendedStatus(&self) -> ::windows::runtime::Result<u32> {
646         let this = self;
647         unsafe {
648             let mut result__: u32 = ::std::mem::zeroed();
649             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
650         }
651     }
652 }
653 unsafe impl ::windows::runtime::RuntimeType for BarcodeScannerStatusUpdatedEventArgs {
654     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.BarcodeScannerStatusUpdatedEventArgs;{355d8586-9c43-462b-a91a-816dc97f452c})");
655 }
656 unsafe impl ::windows::runtime::Interface for BarcodeScannerStatusUpdatedEventArgs {
657     type Vtable = IBarcodeScannerStatusUpdatedEventArgs_abi;
658     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(895321478, 40003, 17963, [169, 26, 129, 109, 201, 127, 69, 44]);
659 }
660 impl ::windows::runtime::RuntimeName for BarcodeScannerStatusUpdatedEventArgs {
661     const NAME: &'static str = "Windows.Devices.PointOfService.BarcodeScannerStatusUpdatedEventArgs";
662 }
663 impl ::std::convert::From<BarcodeScannerStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: BarcodeScannerStatusUpdatedEventArgs) -> Self664     fn from(value: BarcodeScannerStatusUpdatedEventArgs) -> Self {
665         unsafe { ::std::mem::transmute(value) }
666     }
667 }
668 impl ::std::convert::From<&BarcodeScannerStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: &BarcodeScannerStatusUpdatedEventArgs) -> Self669     fn from(value: &BarcodeScannerStatusUpdatedEventArgs) -> Self {
670         ::std::convert::From::from(::std::clone::Clone::clone(value))
671     }
672 }
673 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BarcodeScannerStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>674     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
675         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
676     }
677 }
678 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BarcodeScannerStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>679     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
680         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
681     }
682 }
683 impl ::std::convert::From<BarcodeScannerStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: BarcodeScannerStatusUpdatedEventArgs) -> Self684     fn from(value: BarcodeScannerStatusUpdatedEventArgs) -> Self {
685         value.0
686     }
687 }
688 impl ::std::convert::From<&BarcodeScannerStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: &BarcodeScannerStatusUpdatedEventArgs) -> Self689     fn from(value: &BarcodeScannerStatusUpdatedEventArgs) -> Self {
690         value.0.clone()
691     }
692 }
693 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BarcodeScannerStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>694     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
695         ::windows::runtime::Param::Owned(self.0)
696     }
697 }
698 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BarcodeScannerStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>699     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
700         ::windows::runtime::Param::Borrowed(&self.0)
701     }
702 }
703 unsafe impl ::std::marker::Send for BarcodeScannerStatusUpdatedEventArgs {}
704 unsafe impl ::std::marker::Sync for BarcodeScannerStatusUpdatedEventArgs {}
705 pub struct BarcodeSymbologies {}
706 impl BarcodeSymbologies {
Unknown() -> ::windows::runtime::Result<u32>707     pub fn Unknown() -> ::windows::runtime::Result<u32> {
708         Self::IBarcodeSymbologiesStatics(|this| unsafe {
709             let mut result__: u32 = ::std::mem::zeroed();
710             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
711         })
712     }
Ean8() -> ::windows::runtime::Result<u32>713     pub fn Ean8() -> ::windows::runtime::Result<u32> {
714         Self::IBarcodeSymbologiesStatics(|this| unsafe {
715             let mut result__: u32 = ::std::mem::zeroed();
716             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
717         })
718     }
Ean8Add2() -> ::windows::runtime::Result<u32>719     pub fn Ean8Add2() -> ::windows::runtime::Result<u32> {
720         Self::IBarcodeSymbologiesStatics(|this| unsafe {
721             let mut result__: u32 = ::std::mem::zeroed();
722             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
723         })
724     }
Ean8Add5() -> ::windows::runtime::Result<u32>725     pub fn Ean8Add5() -> ::windows::runtime::Result<u32> {
726         Self::IBarcodeSymbologiesStatics(|this| unsafe {
727             let mut result__: u32 = ::std::mem::zeroed();
728             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
729         })
730     }
Eanv() -> ::windows::runtime::Result<u32>731     pub fn Eanv() -> ::windows::runtime::Result<u32> {
732         Self::IBarcodeSymbologiesStatics(|this| unsafe {
733             let mut result__: u32 = ::std::mem::zeroed();
734             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
735         })
736     }
EanvAdd2() -> ::windows::runtime::Result<u32>737     pub fn EanvAdd2() -> ::windows::runtime::Result<u32> {
738         Self::IBarcodeSymbologiesStatics(|this| unsafe {
739             let mut result__: u32 = ::std::mem::zeroed();
740             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
741         })
742     }
EanvAdd5() -> ::windows::runtime::Result<u32>743     pub fn EanvAdd5() -> ::windows::runtime::Result<u32> {
744         Self::IBarcodeSymbologiesStatics(|this| unsafe {
745             let mut result__: u32 = ::std::mem::zeroed();
746             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
747         })
748     }
Ean13() -> ::windows::runtime::Result<u32>749     pub fn Ean13() -> ::windows::runtime::Result<u32> {
750         Self::IBarcodeSymbologiesStatics(|this| unsafe {
751             let mut result__: u32 = ::std::mem::zeroed();
752             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
753         })
754     }
Ean13Add2() -> ::windows::runtime::Result<u32>755     pub fn Ean13Add2() -> ::windows::runtime::Result<u32> {
756         Self::IBarcodeSymbologiesStatics(|this| unsafe {
757             let mut result__: u32 = ::std::mem::zeroed();
758             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
759         })
760     }
Ean13Add5() -> ::windows::runtime::Result<u32>761     pub fn Ean13Add5() -> ::windows::runtime::Result<u32> {
762         Self::IBarcodeSymbologiesStatics(|this| unsafe {
763             let mut result__: u32 = ::std::mem::zeroed();
764             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
765         })
766     }
Isbn() -> ::windows::runtime::Result<u32>767     pub fn Isbn() -> ::windows::runtime::Result<u32> {
768         Self::IBarcodeSymbologiesStatics(|this| unsafe {
769             let mut result__: u32 = ::std::mem::zeroed();
770             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
771         })
772     }
IsbnAdd5() -> ::windows::runtime::Result<u32>773     pub fn IsbnAdd5() -> ::windows::runtime::Result<u32> {
774         Self::IBarcodeSymbologiesStatics(|this| unsafe {
775             let mut result__: u32 = ::std::mem::zeroed();
776             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
777         })
778     }
Ismn() -> ::windows::runtime::Result<u32>779     pub fn Ismn() -> ::windows::runtime::Result<u32> {
780         Self::IBarcodeSymbologiesStatics(|this| unsafe {
781             let mut result__: u32 = ::std::mem::zeroed();
782             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
783         })
784     }
IsmnAdd2() -> ::windows::runtime::Result<u32>785     pub fn IsmnAdd2() -> ::windows::runtime::Result<u32> {
786         Self::IBarcodeSymbologiesStatics(|this| unsafe {
787             let mut result__: u32 = ::std::mem::zeroed();
788             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
789         })
790     }
IsmnAdd5() -> ::windows::runtime::Result<u32>791     pub fn IsmnAdd5() -> ::windows::runtime::Result<u32> {
792         Self::IBarcodeSymbologiesStatics(|this| unsafe {
793             let mut result__: u32 = ::std::mem::zeroed();
794             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
795         })
796     }
Issn() -> ::windows::runtime::Result<u32>797     pub fn Issn() -> ::windows::runtime::Result<u32> {
798         Self::IBarcodeSymbologiesStatics(|this| unsafe {
799             let mut result__: u32 = ::std::mem::zeroed();
800             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
801         })
802     }
IssnAdd2() -> ::windows::runtime::Result<u32>803     pub fn IssnAdd2() -> ::windows::runtime::Result<u32> {
804         Self::IBarcodeSymbologiesStatics(|this| unsafe {
805             let mut result__: u32 = ::std::mem::zeroed();
806             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
807         })
808     }
IssnAdd5() -> ::windows::runtime::Result<u32>809     pub fn IssnAdd5() -> ::windows::runtime::Result<u32> {
810         Self::IBarcodeSymbologiesStatics(|this| unsafe {
811             let mut result__: u32 = ::std::mem::zeroed();
812             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
813         })
814     }
Ean99() -> ::windows::runtime::Result<u32>815     pub fn Ean99() -> ::windows::runtime::Result<u32> {
816         Self::IBarcodeSymbologiesStatics(|this| unsafe {
817             let mut result__: u32 = ::std::mem::zeroed();
818             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
819         })
820     }
Ean99Add2() -> ::windows::runtime::Result<u32>821     pub fn Ean99Add2() -> ::windows::runtime::Result<u32> {
822         Self::IBarcodeSymbologiesStatics(|this| unsafe {
823             let mut result__: u32 = ::std::mem::zeroed();
824             (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
825         })
826     }
Ean99Add5() -> ::windows::runtime::Result<u32>827     pub fn Ean99Add5() -> ::windows::runtime::Result<u32> {
828         Self::IBarcodeSymbologiesStatics(|this| unsafe {
829             let mut result__: u32 = ::std::mem::zeroed();
830             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
831         })
832     }
Upca() -> ::windows::runtime::Result<u32>833     pub fn Upca() -> ::windows::runtime::Result<u32> {
834         Self::IBarcodeSymbologiesStatics(|this| unsafe {
835             let mut result__: u32 = ::std::mem::zeroed();
836             (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
837         })
838     }
UpcaAdd2() -> ::windows::runtime::Result<u32>839     pub fn UpcaAdd2() -> ::windows::runtime::Result<u32> {
840         Self::IBarcodeSymbologiesStatics(|this| unsafe {
841             let mut result__: u32 = ::std::mem::zeroed();
842             (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
843         })
844     }
UpcaAdd5() -> ::windows::runtime::Result<u32>845     pub fn UpcaAdd5() -> ::windows::runtime::Result<u32> {
846         Self::IBarcodeSymbologiesStatics(|this| unsafe {
847             let mut result__: u32 = ::std::mem::zeroed();
848             (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
849         })
850     }
Upce() -> ::windows::runtime::Result<u32>851     pub fn Upce() -> ::windows::runtime::Result<u32> {
852         Self::IBarcodeSymbologiesStatics(|this| unsafe {
853             let mut result__: u32 = ::std::mem::zeroed();
854             (::windows::runtime::Interface::vtable(this).30)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
855         })
856     }
UpceAdd2() -> ::windows::runtime::Result<u32>857     pub fn UpceAdd2() -> ::windows::runtime::Result<u32> {
858         Self::IBarcodeSymbologiesStatics(|this| unsafe {
859             let mut result__: u32 = ::std::mem::zeroed();
860             (::windows::runtime::Interface::vtable(this).31)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
861         })
862     }
UpceAdd5() -> ::windows::runtime::Result<u32>863     pub fn UpceAdd5() -> ::windows::runtime::Result<u32> {
864         Self::IBarcodeSymbologiesStatics(|this| unsafe {
865             let mut result__: u32 = ::std::mem::zeroed();
866             (::windows::runtime::Interface::vtable(this).32)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
867         })
868     }
UpcCoupon() -> ::windows::runtime::Result<u32>869     pub fn UpcCoupon() -> ::windows::runtime::Result<u32> {
870         Self::IBarcodeSymbologiesStatics(|this| unsafe {
871             let mut result__: u32 = ::std::mem::zeroed();
872             (::windows::runtime::Interface::vtable(this).33)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
873         })
874     }
TfStd() -> ::windows::runtime::Result<u32>875     pub fn TfStd() -> ::windows::runtime::Result<u32> {
876         Self::IBarcodeSymbologiesStatics(|this| unsafe {
877             let mut result__: u32 = ::std::mem::zeroed();
878             (::windows::runtime::Interface::vtable(this).34)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
879         })
880     }
TfDis() -> ::windows::runtime::Result<u32>881     pub fn TfDis() -> ::windows::runtime::Result<u32> {
882         Self::IBarcodeSymbologiesStatics(|this| unsafe {
883             let mut result__: u32 = ::std::mem::zeroed();
884             (::windows::runtime::Interface::vtable(this).35)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
885         })
886     }
TfInt() -> ::windows::runtime::Result<u32>887     pub fn TfInt() -> ::windows::runtime::Result<u32> {
888         Self::IBarcodeSymbologiesStatics(|this| unsafe {
889             let mut result__: u32 = ::std::mem::zeroed();
890             (::windows::runtime::Interface::vtable(this).36)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
891         })
892     }
TfInd() -> ::windows::runtime::Result<u32>893     pub fn TfInd() -> ::windows::runtime::Result<u32> {
894         Self::IBarcodeSymbologiesStatics(|this| unsafe {
895             let mut result__: u32 = ::std::mem::zeroed();
896             (::windows::runtime::Interface::vtable(this).37)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
897         })
898     }
TfMat() -> ::windows::runtime::Result<u32>899     pub fn TfMat() -> ::windows::runtime::Result<u32> {
900         Self::IBarcodeSymbologiesStatics(|this| unsafe {
901             let mut result__: u32 = ::std::mem::zeroed();
902             (::windows::runtime::Interface::vtable(this).38)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
903         })
904     }
TfIata() -> ::windows::runtime::Result<u32>905     pub fn TfIata() -> ::windows::runtime::Result<u32> {
906         Self::IBarcodeSymbologiesStatics(|this| unsafe {
907             let mut result__: u32 = ::std::mem::zeroed();
908             (::windows::runtime::Interface::vtable(this).39)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
909         })
910     }
Gs1DatabarType1() -> ::windows::runtime::Result<u32>911     pub fn Gs1DatabarType1() -> ::windows::runtime::Result<u32> {
912         Self::IBarcodeSymbologiesStatics(|this| unsafe {
913             let mut result__: u32 = ::std::mem::zeroed();
914             (::windows::runtime::Interface::vtable(this).40)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
915         })
916     }
Gs1DatabarType2() -> ::windows::runtime::Result<u32>917     pub fn Gs1DatabarType2() -> ::windows::runtime::Result<u32> {
918         Self::IBarcodeSymbologiesStatics(|this| unsafe {
919             let mut result__: u32 = ::std::mem::zeroed();
920             (::windows::runtime::Interface::vtable(this).41)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
921         })
922     }
Gs1DatabarType3() -> ::windows::runtime::Result<u32>923     pub fn Gs1DatabarType3() -> ::windows::runtime::Result<u32> {
924         Self::IBarcodeSymbologiesStatics(|this| unsafe {
925             let mut result__: u32 = ::std::mem::zeroed();
926             (::windows::runtime::Interface::vtable(this).42)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
927         })
928     }
Code39() -> ::windows::runtime::Result<u32>929     pub fn Code39() -> ::windows::runtime::Result<u32> {
930         Self::IBarcodeSymbologiesStatics(|this| unsafe {
931             let mut result__: u32 = ::std::mem::zeroed();
932             (::windows::runtime::Interface::vtable(this).43)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
933         })
934     }
Code39Ex() -> ::windows::runtime::Result<u32>935     pub fn Code39Ex() -> ::windows::runtime::Result<u32> {
936         Self::IBarcodeSymbologiesStatics(|this| unsafe {
937             let mut result__: u32 = ::std::mem::zeroed();
938             (::windows::runtime::Interface::vtable(this).44)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
939         })
940     }
Trioptic39() -> ::windows::runtime::Result<u32>941     pub fn Trioptic39() -> ::windows::runtime::Result<u32> {
942         Self::IBarcodeSymbologiesStatics(|this| unsafe {
943             let mut result__: u32 = ::std::mem::zeroed();
944             (::windows::runtime::Interface::vtable(this).45)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
945         })
946     }
Code32() -> ::windows::runtime::Result<u32>947     pub fn Code32() -> ::windows::runtime::Result<u32> {
948         Self::IBarcodeSymbologiesStatics(|this| unsafe {
949             let mut result__: u32 = ::std::mem::zeroed();
950             (::windows::runtime::Interface::vtable(this).46)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
951         })
952     }
Pzn() -> ::windows::runtime::Result<u32>953     pub fn Pzn() -> ::windows::runtime::Result<u32> {
954         Self::IBarcodeSymbologiesStatics(|this| unsafe {
955             let mut result__: u32 = ::std::mem::zeroed();
956             (::windows::runtime::Interface::vtable(this).47)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
957         })
958     }
Code93() -> ::windows::runtime::Result<u32>959     pub fn Code93() -> ::windows::runtime::Result<u32> {
960         Self::IBarcodeSymbologiesStatics(|this| unsafe {
961             let mut result__: u32 = ::std::mem::zeroed();
962             (::windows::runtime::Interface::vtable(this).48)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
963         })
964     }
Code93Ex() -> ::windows::runtime::Result<u32>965     pub fn Code93Ex() -> ::windows::runtime::Result<u32> {
966         Self::IBarcodeSymbologiesStatics(|this| unsafe {
967             let mut result__: u32 = ::std::mem::zeroed();
968             (::windows::runtime::Interface::vtable(this).49)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
969         })
970     }
Code128() -> ::windows::runtime::Result<u32>971     pub fn Code128() -> ::windows::runtime::Result<u32> {
972         Self::IBarcodeSymbologiesStatics(|this| unsafe {
973             let mut result__: u32 = ::std::mem::zeroed();
974             (::windows::runtime::Interface::vtable(this).50)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
975         })
976     }
Gs1128() -> ::windows::runtime::Result<u32>977     pub fn Gs1128() -> ::windows::runtime::Result<u32> {
978         Self::IBarcodeSymbologiesStatics(|this| unsafe {
979             let mut result__: u32 = ::std::mem::zeroed();
980             (::windows::runtime::Interface::vtable(this).51)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
981         })
982     }
Gs1128Coupon() -> ::windows::runtime::Result<u32>983     pub fn Gs1128Coupon() -> ::windows::runtime::Result<u32> {
984         Self::IBarcodeSymbologiesStatics(|this| unsafe {
985             let mut result__: u32 = ::std::mem::zeroed();
986             (::windows::runtime::Interface::vtable(this).52)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
987         })
988     }
UccEan128() -> ::windows::runtime::Result<u32>989     pub fn UccEan128() -> ::windows::runtime::Result<u32> {
990         Self::IBarcodeSymbologiesStatics(|this| unsafe {
991             let mut result__: u32 = ::std::mem::zeroed();
992             (::windows::runtime::Interface::vtable(this).53)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
993         })
994     }
Sisac() -> ::windows::runtime::Result<u32>995     pub fn Sisac() -> ::windows::runtime::Result<u32> {
996         Self::IBarcodeSymbologiesStatics(|this| unsafe {
997             let mut result__: u32 = ::std::mem::zeroed();
998             (::windows::runtime::Interface::vtable(this).54)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
999         })
1000     }
Isbt() -> ::windows::runtime::Result<u32>1001     pub fn Isbt() -> ::windows::runtime::Result<u32> {
1002         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1003             let mut result__: u32 = ::std::mem::zeroed();
1004             (::windows::runtime::Interface::vtable(this).55)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1005         })
1006     }
Codabar() -> ::windows::runtime::Result<u32>1007     pub fn Codabar() -> ::windows::runtime::Result<u32> {
1008         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1009             let mut result__: u32 = ::std::mem::zeroed();
1010             (::windows::runtime::Interface::vtable(this).56)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1011         })
1012     }
Code11() -> ::windows::runtime::Result<u32>1013     pub fn Code11() -> ::windows::runtime::Result<u32> {
1014         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1015             let mut result__: u32 = ::std::mem::zeroed();
1016             (::windows::runtime::Interface::vtable(this).57)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1017         })
1018     }
Msi() -> ::windows::runtime::Result<u32>1019     pub fn Msi() -> ::windows::runtime::Result<u32> {
1020         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1021             let mut result__: u32 = ::std::mem::zeroed();
1022             (::windows::runtime::Interface::vtable(this).58)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1023         })
1024     }
Plessey() -> ::windows::runtime::Result<u32>1025     pub fn Plessey() -> ::windows::runtime::Result<u32> {
1026         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1027             let mut result__: u32 = ::std::mem::zeroed();
1028             (::windows::runtime::Interface::vtable(this).59)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1029         })
1030     }
Telepen() -> ::windows::runtime::Result<u32>1031     pub fn Telepen() -> ::windows::runtime::Result<u32> {
1032         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1033             let mut result__: u32 = ::std::mem::zeroed();
1034             (::windows::runtime::Interface::vtable(this).60)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1035         })
1036     }
Code16k() -> ::windows::runtime::Result<u32>1037     pub fn Code16k() -> ::windows::runtime::Result<u32> {
1038         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1039             let mut result__: u32 = ::std::mem::zeroed();
1040             (::windows::runtime::Interface::vtable(this).61)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1041         })
1042     }
CodablockA() -> ::windows::runtime::Result<u32>1043     pub fn CodablockA() -> ::windows::runtime::Result<u32> {
1044         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1045             let mut result__: u32 = ::std::mem::zeroed();
1046             (::windows::runtime::Interface::vtable(this).62)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1047         })
1048     }
CodablockF() -> ::windows::runtime::Result<u32>1049     pub fn CodablockF() -> ::windows::runtime::Result<u32> {
1050         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1051             let mut result__: u32 = ::std::mem::zeroed();
1052             (::windows::runtime::Interface::vtable(this).63)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1053         })
1054     }
Codablock128() -> ::windows::runtime::Result<u32>1055     pub fn Codablock128() -> ::windows::runtime::Result<u32> {
1056         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1057             let mut result__: u32 = ::std::mem::zeroed();
1058             (::windows::runtime::Interface::vtable(this).64)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1059         })
1060     }
Code49() -> ::windows::runtime::Result<u32>1061     pub fn Code49() -> ::windows::runtime::Result<u32> {
1062         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1063             let mut result__: u32 = ::std::mem::zeroed();
1064             (::windows::runtime::Interface::vtable(this).65)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1065         })
1066     }
Aztec() -> ::windows::runtime::Result<u32>1067     pub fn Aztec() -> ::windows::runtime::Result<u32> {
1068         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1069             let mut result__: u32 = ::std::mem::zeroed();
1070             (::windows::runtime::Interface::vtable(this).66)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1071         })
1072     }
DataCode() -> ::windows::runtime::Result<u32>1073     pub fn DataCode() -> ::windows::runtime::Result<u32> {
1074         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1075             let mut result__: u32 = ::std::mem::zeroed();
1076             (::windows::runtime::Interface::vtable(this).67)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1077         })
1078     }
DataMatrix() -> ::windows::runtime::Result<u32>1079     pub fn DataMatrix() -> ::windows::runtime::Result<u32> {
1080         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1081             let mut result__: u32 = ::std::mem::zeroed();
1082             (::windows::runtime::Interface::vtable(this).68)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1083         })
1084     }
HanXin() -> ::windows::runtime::Result<u32>1085     pub fn HanXin() -> ::windows::runtime::Result<u32> {
1086         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1087             let mut result__: u32 = ::std::mem::zeroed();
1088             (::windows::runtime::Interface::vtable(this).69)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1089         })
1090     }
Maxicode() -> ::windows::runtime::Result<u32>1091     pub fn Maxicode() -> ::windows::runtime::Result<u32> {
1092         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1093             let mut result__: u32 = ::std::mem::zeroed();
1094             (::windows::runtime::Interface::vtable(this).70)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1095         })
1096     }
MicroPdf417() -> ::windows::runtime::Result<u32>1097     pub fn MicroPdf417() -> ::windows::runtime::Result<u32> {
1098         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1099             let mut result__: u32 = ::std::mem::zeroed();
1100             (::windows::runtime::Interface::vtable(this).71)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1101         })
1102     }
MicroQr() -> ::windows::runtime::Result<u32>1103     pub fn MicroQr() -> ::windows::runtime::Result<u32> {
1104         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1105             let mut result__: u32 = ::std::mem::zeroed();
1106             (::windows::runtime::Interface::vtable(this).72)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1107         })
1108     }
Pdf417() -> ::windows::runtime::Result<u32>1109     pub fn Pdf417() -> ::windows::runtime::Result<u32> {
1110         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1111             let mut result__: u32 = ::std::mem::zeroed();
1112             (::windows::runtime::Interface::vtable(this).73)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1113         })
1114     }
Qr() -> ::windows::runtime::Result<u32>1115     pub fn Qr() -> ::windows::runtime::Result<u32> {
1116         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1117             let mut result__: u32 = ::std::mem::zeroed();
1118             (::windows::runtime::Interface::vtable(this).74)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1119         })
1120     }
MsTag() -> ::windows::runtime::Result<u32>1121     pub fn MsTag() -> ::windows::runtime::Result<u32> {
1122         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1123             let mut result__: u32 = ::std::mem::zeroed();
1124             (::windows::runtime::Interface::vtable(this).75)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1125         })
1126     }
Ccab() -> ::windows::runtime::Result<u32>1127     pub fn Ccab() -> ::windows::runtime::Result<u32> {
1128         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1129             let mut result__: u32 = ::std::mem::zeroed();
1130             (::windows::runtime::Interface::vtable(this).76)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1131         })
1132     }
Ccc() -> ::windows::runtime::Result<u32>1133     pub fn Ccc() -> ::windows::runtime::Result<u32> {
1134         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1135             let mut result__: u32 = ::std::mem::zeroed();
1136             (::windows::runtime::Interface::vtable(this).77)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1137         })
1138     }
Tlc39() -> ::windows::runtime::Result<u32>1139     pub fn Tlc39() -> ::windows::runtime::Result<u32> {
1140         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1141             let mut result__: u32 = ::std::mem::zeroed();
1142             (::windows::runtime::Interface::vtable(this).78)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1143         })
1144     }
AusPost() -> ::windows::runtime::Result<u32>1145     pub fn AusPost() -> ::windows::runtime::Result<u32> {
1146         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1147             let mut result__: u32 = ::std::mem::zeroed();
1148             (::windows::runtime::Interface::vtable(this).79)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1149         })
1150     }
CanPost() -> ::windows::runtime::Result<u32>1151     pub fn CanPost() -> ::windows::runtime::Result<u32> {
1152         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1153             let mut result__: u32 = ::std::mem::zeroed();
1154             (::windows::runtime::Interface::vtable(this).80)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1155         })
1156     }
ChinaPost() -> ::windows::runtime::Result<u32>1157     pub fn ChinaPost() -> ::windows::runtime::Result<u32> {
1158         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1159             let mut result__: u32 = ::std::mem::zeroed();
1160             (::windows::runtime::Interface::vtable(this).81)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1161         })
1162     }
DutchKix() -> ::windows::runtime::Result<u32>1163     pub fn DutchKix() -> ::windows::runtime::Result<u32> {
1164         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1165             let mut result__: u32 = ::std::mem::zeroed();
1166             (::windows::runtime::Interface::vtable(this).82)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1167         })
1168     }
InfoMail() -> ::windows::runtime::Result<u32>1169     pub fn InfoMail() -> ::windows::runtime::Result<u32> {
1170         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1171             let mut result__: u32 = ::std::mem::zeroed();
1172             (::windows::runtime::Interface::vtable(this).83)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1173         })
1174     }
ItalianPost25() -> ::windows::runtime::Result<u32>1175     pub fn ItalianPost25() -> ::windows::runtime::Result<u32> {
1176         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1177             let mut result__: u32 = ::std::mem::zeroed();
1178             (::windows::runtime::Interface::vtable(this).84)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1179         })
1180     }
ItalianPost39() -> ::windows::runtime::Result<u32>1181     pub fn ItalianPost39() -> ::windows::runtime::Result<u32> {
1182         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1183             let mut result__: u32 = ::std::mem::zeroed();
1184             (::windows::runtime::Interface::vtable(this).85)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1185         })
1186     }
JapanPost() -> ::windows::runtime::Result<u32>1187     pub fn JapanPost() -> ::windows::runtime::Result<u32> {
1188         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1189             let mut result__: u32 = ::std::mem::zeroed();
1190             (::windows::runtime::Interface::vtable(this).86)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1191         })
1192     }
KoreanPost() -> ::windows::runtime::Result<u32>1193     pub fn KoreanPost() -> ::windows::runtime::Result<u32> {
1194         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1195             let mut result__: u32 = ::std::mem::zeroed();
1196             (::windows::runtime::Interface::vtable(this).87)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1197         })
1198     }
SwedenPost() -> ::windows::runtime::Result<u32>1199     pub fn SwedenPost() -> ::windows::runtime::Result<u32> {
1200         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1201             let mut result__: u32 = ::std::mem::zeroed();
1202             (::windows::runtime::Interface::vtable(this).88)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1203         })
1204     }
UkPost() -> ::windows::runtime::Result<u32>1205     pub fn UkPost() -> ::windows::runtime::Result<u32> {
1206         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1207             let mut result__: u32 = ::std::mem::zeroed();
1208             (::windows::runtime::Interface::vtable(this).89)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1209         })
1210     }
UsIntelligent() -> ::windows::runtime::Result<u32>1211     pub fn UsIntelligent() -> ::windows::runtime::Result<u32> {
1212         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1213             let mut result__: u32 = ::std::mem::zeroed();
1214             (::windows::runtime::Interface::vtable(this).90)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1215         })
1216     }
UsIntelligentPkg() -> ::windows::runtime::Result<u32>1217     pub fn UsIntelligentPkg() -> ::windows::runtime::Result<u32> {
1218         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1219             let mut result__: u32 = ::std::mem::zeroed();
1220             (::windows::runtime::Interface::vtable(this).91)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1221         })
1222     }
UsPlanet() -> ::windows::runtime::Result<u32>1223     pub fn UsPlanet() -> ::windows::runtime::Result<u32> {
1224         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1225             let mut result__: u32 = ::std::mem::zeroed();
1226             (::windows::runtime::Interface::vtable(this).92)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1227         })
1228     }
UsPostNet() -> ::windows::runtime::Result<u32>1229     pub fn UsPostNet() -> ::windows::runtime::Result<u32> {
1230         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1231             let mut result__: u32 = ::std::mem::zeroed();
1232             (::windows::runtime::Interface::vtable(this).93)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1233         })
1234     }
Us4StateFics() -> ::windows::runtime::Result<u32>1235     pub fn Us4StateFics() -> ::windows::runtime::Result<u32> {
1236         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1237             let mut result__: u32 = ::std::mem::zeroed();
1238             (::windows::runtime::Interface::vtable(this).94)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1239         })
1240     }
OcrA() -> ::windows::runtime::Result<u32>1241     pub fn OcrA() -> ::windows::runtime::Result<u32> {
1242         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1243             let mut result__: u32 = ::std::mem::zeroed();
1244             (::windows::runtime::Interface::vtable(this).95)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1245         })
1246     }
OcrB() -> ::windows::runtime::Result<u32>1247     pub fn OcrB() -> ::windows::runtime::Result<u32> {
1248         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1249             let mut result__: u32 = ::std::mem::zeroed();
1250             (::windows::runtime::Interface::vtable(this).96)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1251         })
1252     }
Micr() -> ::windows::runtime::Result<u32>1253     pub fn Micr() -> ::windows::runtime::Result<u32> {
1254         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1255             let mut result__: u32 = ::std::mem::zeroed();
1256             (::windows::runtime::Interface::vtable(this).97)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1257         })
1258     }
ExtendedBase() -> ::windows::runtime::Result<u32>1259     pub fn ExtendedBase() -> ::windows::runtime::Result<u32> {
1260         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1261             let mut result__: u32 = ::std::mem::zeroed();
1262             (::windows::runtime::Interface::vtable(this).98)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1263         })
1264     }
GetName(scandatatype: u32) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1265     pub fn GetName(scandatatype: u32) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1266         Self::IBarcodeSymbologiesStatics(|this| unsafe {
1267             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1268             (::windows::runtime::Interface::vtable(this).99)(::std::mem::transmute_copy(this), scandatatype, &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1269         })
1270     }
Gs1DWCode() -> ::windows::runtime::Result<u32>1271     pub fn Gs1DWCode() -> ::windows::runtime::Result<u32> {
1272         Self::IBarcodeSymbologiesStatics2(|this| unsafe {
1273             let mut result__: u32 = ::std::mem::zeroed();
1274             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1275         })
1276     }
IBarcodeSymbologiesStatics<R, F: FnOnce(&IBarcodeSymbologiesStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1277     pub fn IBarcodeSymbologiesStatics<R, F: FnOnce(&IBarcodeSymbologiesStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1278         static mut SHARED: ::windows::runtime::FactoryCache<BarcodeSymbologies, IBarcodeSymbologiesStatics> = ::windows::runtime::FactoryCache::new();
1279         unsafe { SHARED.call(callback) }
1280     }
IBarcodeSymbologiesStatics2<R, F: FnOnce(&IBarcodeSymbologiesStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1281     pub fn IBarcodeSymbologiesStatics2<R, F: FnOnce(&IBarcodeSymbologiesStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1282         static mut SHARED: ::windows::runtime::FactoryCache<BarcodeSymbologies, IBarcodeSymbologiesStatics2> = ::windows::runtime::FactoryCache::new();
1283         unsafe { SHARED.call(callback) }
1284     }
1285 }
1286 impl ::windows::runtime::RuntimeName for BarcodeSymbologies {
1287     const NAME: &'static str = "Windows.Devices.PointOfService.BarcodeSymbologies";
1288 }
1289 #[repr(transparent)]
1290 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1291 pub struct BarcodeSymbologyAttributes(::windows::runtime::IInspectable);
1292 impl BarcodeSymbologyAttributes {
IsCheckDigitValidationEnabled(&self) -> ::windows::runtime::Result<bool>1293     pub fn IsCheckDigitValidationEnabled(&self) -> ::windows::runtime::Result<bool> {
1294         let this = self;
1295         unsafe {
1296             let mut result__: bool = ::std::mem::zeroed();
1297             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1298         }
1299     }
SetIsCheckDigitValidationEnabled(&self, value: bool) -> ::windows::runtime::Result<()>1300     pub fn SetIsCheckDigitValidationEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
1301         let this = self;
1302         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
1303     }
IsCheckDigitValidationSupported(&self) -> ::windows::runtime::Result<bool>1304     pub fn IsCheckDigitValidationSupported(&self) -> ::windows::runtime::Result<bool> {
1305         let this = self;
1306         unsafe {
1307             let mut result__: bool = ::std::mem::zeroed();
1308             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1309         }
1310     }
IsCheckDigitTransmissionEnabled(&self) -> ::windows::runtime::Result<bool>1311     pub fn IsCheckDigitTransmissionEnabled(&self) -> ::windows::runtime::Result<bool> {
1312         let this = self;
1313         unsafe {
1314             let mut result__: bool = ::std::mem::zeroed();
1315             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1316         }
1317     }
SetIsCheckDigitTransmissionEnabled(&self, value: bool) -> ::windows::runtime::Result<()>1318     pub fn SetIsCheckDigitTransmissionEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
1319         let this = self;
1320         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
1321     }
IsCheckDigitTransmissionSupported(&self) -> ::windows::runtime::Result<bool>1322     pub fn IsCheckDigitTransmissionSupported(&self) -> ::windows::runtime::Result<bool> {
1323         let this = self;
1324         unsafe {
1325             let mut result__: bool = ::std::mem::zeroed();
1326             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1327         }
1328     }
DecodeLength1(&self) -> ::windows::runtime::Result<u32>1329     pub fn DecodeLength1(&self) -> ::windows::runtime::Result<u32> {
1330         let this = self;
1331         unsafe {
1332             let mut result__: u32 = ::std::mem::zeroed();
1333             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1334         }
1335     }
SetDecodeLength1(&self, value: u32) -> ::windows::runtime::Result<()>1336     pub fn SetDecodeLength1(&self, value: u32) -> ::windows::runtime::Result<()> {
1337         let this = self;
1338         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
1339     }
DecodeLength2(&self) -> ::windows::runtime::Result<u32>1340     pub fn DecodeLength2(&self) -> ::windows::runtime::Result<u32> {
1341         let this = self;
1342         unsafe {
1343             let mut result__: u32 = ::std::mem::zeroed();
1344             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1345         }
1346     }
SetDecodeLength2(&self, value: u32) -> ::windows::runtime::Result<()>1347     pub fn SetDecodeLength2(&self, value: u32) -> ::windows::runtime::Result<()> {
1348         let this = self;
1349         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
1350     }
DecodeLengthKind(&self) -> ::windows::runtime::Result<BarcodeSymbologyDecodeLengthKind>1351     pub fn DecodeLengthKind(&self) -> ::windows::runtime::Result<BarcodeSymbologyDecodeLengthKind> {
1352         let this = self;
1353         unsafe {
1354             let mut result__: BarcodeSymbologyDecodeLengthKind = ::std::mem::zeroed();
1355             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<BarcodeSymbologyDecodeLengthKind>(result__)
1356         }
1357     }
SetDecodeLengthKind(&self, value: BarcodeSymbologyDecodeLengthKind) -> ::windows::runtime::Result<()>1358     pub fn SetDecodeLengthKind(&self, value: BarcodeSymbologyDecodeLengthKind) -> ::windows::runtime::Result<()> {
1359         let this = self;
1360         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
1361     }
IsDecodeLengthSupported(&self) -> ::windows::runtime::Result<bool>1362     pub fn IsDecodeLengthSupported(&self) -> ::windows::runtime::Result<bool> {
1363         let this = self;
1364         unsafe {
1365             let mut result__: bool = ::std::mem::zeroed();
1366             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1367         }
1368     }
1369 }
1370 unsafe impl ::windows::runtime::RuntimeType for BarcodeSymbologyAttributes {
1371     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.BarcodeSymbologyAttributes;{66413a78-ab7a-4ada-8ece-936014b2ead7})");
1372 }
1373 unsafe impl ::windows::runtime::Interface for BarcodeSymbologyAttributes {
1374     type Vtable = IBarcodeSymbologyAttributes_abi;
1375     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1715550840, 43898, 19162, [142, 206, 147, 96, 20, 178, 234, 215]);
1376 }
1377 impl ::windows::runtime::RuntimeName for BarcodeSymbologyAttributes {
1378     const NAME: &'static str = "Windows.Devices.PointOfService.BarcodeSymbologyAttributes";
1379 }
1380 impl ::std::convert::From<BarcodeSymbologyAttributes> for ::windows::runtime::IUnknown {
from(value: BarcodeSymbologyAttributes) -> Self1381     fn from(value: BarcodeSymbologyAttributes) -> Self {
1382         unsafe { ::std::mem::transmute(value) }
1383     }
1384 }
1385 impl ::std::convert::From<&BarcodeSymbologyAttributes> for ::windows::runtime::IUnknown {
from(value: &BarcodeSymbologyAttributes) -> Self1386     fn from(value: &BarcodeSymbologyAttributes) -> Self {
1387         ::std::convert::From::from(::std::clone::Clone::clone(value))
1388     }
1389 }
1390 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BarcodeSymbologyAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1391     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1392         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1393     }
1394 }
1395 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BarcodeSymbologyAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1396     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1397         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1398     }
1399 }
1400 impl ::std::convert::From<BarcodeSymbologyAttributes> for ::windows::runtime::IInspectable {
from(value: BarcodeSymbologyAttributes) -> Self1401     fn from(value: BarcodeSymbologyAttributes) -> Self {
1402         value.0
1403     }
1404 }
1405 impl ::std::convert::From<&BarcodeSymbologyAttributes> for ::windows::runtime::IInspectable {
from(value: &BarcodeSymbologyAttributes) -> Self1406     fn from(value: &BarcodeSymbologyAttributes) -> Self {
1407         value.0.clone()
1408     }
1409 }
1410 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BarcodeSymbologyAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1411     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1412         ::windows::runtime::Param::Owned(self.0)
1413     }
1414 }
1415 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BarcodeSymbologyAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1416     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1417         ::windows::runtime::Param::Borrowed(&self.0)
1418     }
1419 }
1420 unsafe impl ::std::marker::Send for BarcodeSymbologyAttributes {}
1421 unsafe impl ::std::marker::Sync for BarcodeSymbologyAttributes {}
1422 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1423 #[repr(transparent)]
1424 pub struct BarcodeSymbologyDecodeLengthKind(pub i32);
1425 impl BarcodeSymbologyDecodeLengthKind {
1426     pub const AnyLength: BarcodeSymbologyDecodeLengthKind = BarcodeSymbologyDecodeLengthKind(0i32);
1427     pub const Discrete: BarcodeSymbologyDecodeLengthKind = BarcodeSymbologyDecodeLengthKind(1i32);
1428     pub const Range: BarcodeSymbologyDecodeLengthKind = BarcodeSymbologyDecodeLengthKind(2i32);
1429 }
1430 impl ::std::convert::From<i32> for BarcodeSymbologyDecodeLengthKind {
from(value: i32) -> Self1431     fn from(value: i32) -> Self {
1432         Self(value)
1433     }
1434 }
1435 unsafe impl ::windows::runtime::Abi for BarcodeSymbologyDecodeLengthKind {
1436     type Abi = Self;
1437     type DefaultType = Self;
1438 }
1439 unsafe impl ::windows::runtime::RuntimeType for BarcodeSymbologyDecodeLengthKind {
1440     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.BarcodeSymbologyDecodeLengthKind;i4)");
1441 }
1442 #[repr(transparent)]
1443 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1444 pub struct CashDrawer(::windows::runtime::IInspectable);
1445 impl CashDrawer {
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1446     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1447         let this = self;
1448         unsafe {
1449             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1450             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1451         }
1452     }
Capabilities(&self) -> ::windows::runtime::Result<CashDrawerCapabilities>1453     pub fn Capabilities(&self) -> ::windows::runtime::Result<CashDrawerCapabilities> {
1454         let this = self;
1455         unsafe {
1456             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1457             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CashDrawerCapabilities>(result__)
1458         }
1459     }
Status(&self) -> ::windows::runtime::Result<CashDrawerStatus>1460     pub fn Status(&self) -> ::windows::runtime::Result<CashDrawerStatus> {
1461         let this = self;
1462         unsafe {
1463             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1464             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CashDrawerStatus>(result__)
1465         }
1466     }
IsDrawerOpen(&self) -> ::windows::runtime::Result<bool>1467     pub fn IsDrawerOpen(&self) -> ::windows::runtime::Result<bool> {
1468         let this = self;
1469         unsafe {
1470             let mut result__: bool = ::std::mem::zeroed();
1471             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1472         }
1473     }
DrawerEventSource(&self) -> ::windows::runtime::Result<CashDrawerEventSource>1474     pub fn DrawerEventSource(&self) -> ::windows::runtime::Result<CashDrawerEventSource> {
1475         let this = self;
1476         unsafe {
1477             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1478             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CashDrawerEventSource>(result__)
1479         }
1480     }
1481     #[cfg(feature = "Foundation")]
ClaimDrawerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedCashDrawer>>1482     pub fn ClaimDrawerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedCashDrawer>> {
1483         let this = self;
1484         unsafe {
1485             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1486             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<ClaimedCashDrawer>>(result__)
1487         }
1488     }
1489     #[cfg(feature = "Foundation")]
CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>1490     pub fn CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>> {
1491         let this = self;
1492         unsafe {
1493             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1494             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), level, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>(result__)
1495         }
1496     }
1497     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>1498     pub fn GetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>> {
1499         let this = self;
1500         unsafe {
1501             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1502             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), statisticscategories.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>(result__)
1503         }
1504     }
1505     #[cfg(feature = "Foundation")]
StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<CashDrawer, CashDrawerStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1506     pub fn StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<CashDrawer, CashDrawerStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1507         let this = self;
1508         unsafe {
1509             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1510             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1511         }
1512     }
1513     #[cfg(feature = "Foundation")]
RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>1514     pub fn RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
1515         let this = self;
1516         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
1517     }
1518     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>1519     pub fn Close(&self) -> ::windows::runtime::Result<()> {
1520         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
1521         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
1522     }
1523     #[cfg(feature = "Foundation")]
GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<CashDrawer>>1524     pub fn GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<CashDrawer>> {
1525         Self::ICashDrawerStatics(|this| unsafe {
1526             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1527             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<CashDrawer>>(result__)
1528         })
1529     }
1530     #[cfg(feature = "Foundation")]
FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<CashDrawer>>1531     pub fn FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<CashDrawer>> {
1532         Self::ICashDrawerStatics(|this| unsafe {
1533             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1534             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), deviceid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<CashDrawer>>(result__)
1535         })
1536     }
GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING>1537     pub fn GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1538         Self::ICashDrawerStatics(|this| unsafe {
1539             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1540             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1541         })
1542     }
GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1543     pub fn GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1544         Self::ICashDrawerStatics2(|this| unsafe {
1545             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1546             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), connectiontypes, &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1547         })
1548     }
ICashDrawerStatics<R, F: FnOnce(&ICashDrawerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1549     pub fn ICashDrawerStatics<R, F: FnOnce(&ICashDrawerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1550         static mut SHARED: ::windows::runtime::FactoryCache<CashDrawer, ICashDrawerStatics> = ::windows::runtime::FactoryCache::new();
1551         unsafe { SHARED.call(callback) }
1552     }
ICashDrawerStatics2<R, F: FnOnce(&ICashDrawerStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1553     pub fn ICashDrawerStatics2<R, F: FnOnce(&ICashDrawerStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1554         static mut SHARED: ::windows::runtime::FactoryCache<CashDrawer, ICashDrawerStatics2> = ::windows::runtime::FactoryCache::new();
1555         unsafe { SHARED.call(callback) }
1556     }
1557 }
1558 unsafe impl ::windows::runtime::RuntimeType for CashDrawer {
1559     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.CashDrawer;{9f88f5c8-de54-4aee-a890-920bcbfe30fc})");
1560 }
1561 unsafe impl ::windows::runtime::Interface for CashDrawer {
1562     type Vtable = ICashDrawer_abi;
1563     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2676553160, 56916, 19182, [168, 144, 146, 11, 203, 254, 48, 252]);
1564 }
1565 impl ::windows::runtime::RuntimeName for CashDrawer {
1566     const NAME: &'static str = "Windows.Devices.PointOfService.CashDrawer";
1567 }
1568 impl ::std::convert::From<CashDrawer> for ::windows::runtime::IUnknown {
from(value: CashDrawer) -> Self1569     fn from(value: CashDrawer) -> Self {
1570         unsafe { ::std::mem::transmute(value) }
1571     }
1572 }
1573 impl ::std::convert::From<&CashDrawer> for ::windows::runtime::IUnknown {
from(value: &CashDrawer) -> Self1574     fn from(value: &CashDrawer) -> Self {
1575         ::std::convert::From::from(::std::clone::Clone::clone(value))
1576     }
1577 }
1578 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1579     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1580         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1581     }
1582 }
1583 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1584     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1585         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1586     }
1587 }
1588 impl ::std::convert::From<CashDrawer> for ::windows::runtime::IInspectable {
from(value: CashDrawer) -> Self1589     fn from(value: CashDrawer) -> Self {
1590         value.0
1591     }
1592 }
1593 impl ::std::convert::From<&CashDrawer> for ::windows::runtime::IInspectable {
from(value: &CashDrawer) -> Self1594     fn from(value: &CashDrawer) -> Self {
1595         value.0.clone()
1596     }
1597 }
1598 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1599     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1600         ::windows::runtime::Param::Owned(self.0)
1601     }
1602 }
1603 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1604     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1605         ::windows::runtime::Param::Borrowed(&self.0)
1606     }
1607 }
1608 #[cfg(feature = "Foundation")]
1609 impl ::std::convert::TryFrom<CashDrawer> for super::super::Foundation::IClosable {
1610     type Error = ::windows::runtime::Error;
try_from(value: CashDrawer) -> ::windows::runtime::Result<Self>1611     fn try_from(value: CashDrawer) -> ::windows::runtime::Result<Self> {
1612         ::std::convert::TryFrom::try_from(&value)
1613     }
1614 }
1615 #[cfg(feature = "Foundation")]
1616 impl ::std::convert::TryFrom<&CashDrawer> for super::super::Foundation::IClosable {
1617     type Error = ::windows::runtime::Error;
try_from(value: &CashDrawer) -> ::windows::runtime::Result<Self>1618     fn try_from(value: &CashDrawer) -> ::windows::runtime::Result<Self> {
1619         ::windows::runtime::Interface::cast(value)
1620     }
1621 }
1622 #[cfg(feature = "Foundation")]
1623 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for CashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>1624     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
1625         ::windows::runtime::IntoParam::into_param(&self)
1626     }
1627 }
1628 #[cfg(feature = "Foundation")]
1629 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &CashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>1630     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
1631         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
1632     }
1633 }
1634 unsafe impl ::std::marker::Send for CashDrawer {}
1635 unsafe impl ::std::marker::Sync for CashDrawer {}
1636 #[repr(transparent)]
1637 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1638 pub struct CashDrawerCapabilities(::windows::runtime::IInspectable);
1639 impl CashDrawerCapabilities {
PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType>1640     pub fn PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType> {
1641         let this = self;
1642         unsafe {
1643             let mut result__: UnifiedPosPowerReportingType = ::std::mem::zeroed();
1644             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UnifiedPosPowerReportingType>(result__)
1645         }
1646     }
IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool>1647     pub fn IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool> {
1648         let this = self;
1649         unsafe {
1650             let mut result__: bool = ::std::mem::zeroed();
1651             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1652         }
1653     }
IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool>1654     pub fn IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool> {
1655         let this = self;
1656         unsafe {
1657             let mut result__: bool = ::std::mem::zeroed();
1658             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1659         }
1660     }
IsStatusReportingSupported(&self) -> ::windows::runtime::Result<bool>1661     pub fn IsStatusReportingSupported(&self) -> ::windows::runtime::Result<bool> {
1662         let this = self;
1663         unsafe {
1664             let mut result__: bool = ::std::mem::zeroed();
1665             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1666         }
1667     }
IsStatusMultiDrawerDetectSupported(&self) -> ::windows::runtime::Result<bool>1668     pub fn IsStatusMultiDrawerDetectSupported(&self) -> ::windows::runtime::Result<bool> {
1669         let this = self;
1670         unsafe {
1671             let mut result__: bool = ::std::mem::zeroed();
1672             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1673         }
1674     }
IsDrawerOpenSensorAvailable(&self) -> ::windows::runtime::Result<bool>1675     pub fn IsDrawerOpenSensorAvailable(&self) -> ::windows::runtime::Result<bool> {
1676         let this = self;
1677         unsafe {
1678             let mut result__: bool = ::std::mem::zeroed();
1679             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1680         }
1681     }
1682 }
1683 unsafe impl ::windows::runtime::RuntimeType for CashDrawerCapabilities {
1684     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.CashDrawerCapabilities;{0bc6de0b-e8e7-4b1f-b1d1-3e501ad08247})");
1685 }
1686 unsafe impl ::windows::runtime::Interface for CashDrawerCapabilities {
1687     type Vtable = ICashDrawerCapabilities_abi;
1688     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(197582347, 59623, 19231, [177, 209, 62, 80, 26, 208, 130, 71]);
1689 }
1690 impl ::windows::runtime::RuntimeName for CashDrawerCapabilities {
1691     const NAME: &'static str = "Windows.Devices.PointOfService.CashDrawerCapabilities";
1692 }
1693 impl ::std::convert::From<CashDrawerCapabilities> for ::windows::runtime::IUnknown {
from(value: CashDrawerCapabilities) -> Self1694     fn from(value: CashDrawerCapabilities) -> Self {
1695         unsafe { ::std::mem::transmute(value) }
1696     }
1697 }
1698 impl ::std::convert::From<&CashDrawerCapabilities> for ::windows::runtime::IUnknown {
from(value: &CashDrawerCapabilities) -> Self1699     fn from(value: &CashDrawerCapabilities) -> Self {
1700         ::std::convert::From::from(::std::clone::Clone::clone(value))
1701     }
1702 }
1703 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CashDrawerCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1704     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1705         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1706     }
1707 }
1708 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CashDrawerCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1709     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1710         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1711     }
1712 }
1713 impl ::std::convert::From<CashDrawerCapabilities> for ::windows::runtime::IInspectable {
from(value: CashDrawerCapabilities) -> Self1714     fn from(value: CashDrawerCapabilities) -> Self {
1715         value.0
1716     }
1717 }
1718 impl ::std::convert::From<&CashDrawerCapabilities> for ::windows::runtime::IInspectable {
from(value: &CashDrawerCapabilities) -> Self1719     fn from(value: &CashDrawerCapabilities) -> Self {
1720         value.0.clone()
1721     }
1722 }
1723 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CashDrawerCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1724     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1725         ::windows::runtime::Param::Owned(self.0)
1726     }
1727 }
1728 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CashDrawerCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1729     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1730         ::windows::runtime::Param::Borrowed(&self.0)
1731     }
1732 }
1733 unsafe impl ::std::marker::Send for CashDrawerCapabilities {}
1734 unsafe impl ::std::marker::Sync for CashDrawerCapabilities {}
1735 #[repr(transparent)]
1736 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1737 pub struct CashDrawerCloseAlarm(::windows::runtime::IInspectable);
1738 impl CashDrawerCloseAlarm {
1739     #[cfg(feature = "Foundation")]
SetAlarmTimeout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()>1740     pub fn SetAlarmTimeout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1741         let this = self;
1742         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1743     }
1744     #[cfg(feature = "Foundation")]
AlarmTimeout(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan>1745     pub fn AlarmTimeout(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
1746         let this = self;
1747         unsafe {
1748             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
1749             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
1750         }
1751     }
SetBeepFrequency(&self, value: u32) -> ::windows::runtime::Result<()>1752     pub fn SetBeepFrequency(&self, value: u32) -> ::windows::runtime::Result<()> {
1753         let this = self;
1754         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
1755     }
BeepFrequency(&self) -> ::windows::runtime::Result<u32>1756     pub fn BeepFrequency(&self) -> ::windows::runtime::Result<u32> {
1757         let this = self;
1758         unsafe {
1759             let mut result__: u32 = ::std::mem::zeroed();
1760             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1761         }
1762     }
1763     #[cfg(feature = "Foundation")]
SetBeepDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()>1764     pub fn SetBeepDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1765         let this = self;
1766         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1767     }
1768     #[cfg(feature = "Foundation")]
BeepDuration(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan>1769     pub fn BeepDuration(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
1770         let this = self;
1771         unsafe {
1772             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
1773             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
1774         }
1775     }
1776     #[cfg(feature = "Foundation")]
SetBeepDelay<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()>1777     pub fn SetBeepDelay<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1778         let this = self;
1779         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1780     }
1781     #[cfg(feature = "Foundation")]
BeepDelay(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan>1782     pub fn BeepDelay(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
1783         let this = self;
1784         unsafe {
1785             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
1786             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
1787         }
1788     }
1789     #[cfg(feature = "Foundation")]
AlarmTimeoutExpired<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<CashDrawerCloseAlarm, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1790     pub fn AlarmTimeoutExpired<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<CashDrawerCloseAlarm, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1791         let this = self;
1792         unsafe {
1793             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1794             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1795         }
1796     }
1797     #[cfg(feature = "Foundation")]
RemoveAlarmTimeoutExpired<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>1798     pub fn RemoveAlarmTimeoutExpired<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
1799         let this = self;
1800         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
1801     }
1802     #[cfg(feature = "Foundation")]
StartAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>1803     pub fn StartAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
1804         let this = self;
1805         unsafe {
1806             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1807             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
1808         }
1809     }
1810 }
1811 unsafe impl ::windows::runtime::RuntimeType for CashDrawerCloseAlarm {
1812     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.CashDrawerCloseAlarm;{6bf88cc7-6f63-430e-ab3b-95d75ffbe87f})");
1813 }
1814 unsafe impl ::windows::runtime::Interface for CashDrawerCloseAlarm {
1815     type Vtable = ICashDrawerCloseAlarm_abi;
1816     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1811451079, 28515, 17166, [171, 59, 149, 215, 95, 251, 232, 127]);
1817 }
1818 impl ::windows::runtime::RuntimeName for CashDrawerCloseAlarm {
1819     const NAME: &'static str = "Windows.Devices.PointOfService.CashDrawerCloseAlarm";
1820 }
1821 impl ::std::convert::From<CashDrawerCloseAlarm> for ::windows::runtime::IUnknown {
from(value: CashDrawerCloseAlarm) -> Self1822     fn from(value: CashDrawerCloseAlarm) -> Self {
1823         unsafe { ::std::mem::transmute(value) }
1824     }
1825 }
1826 impl ::std::convert::From<&CashDrawerCloseAlarm> for ::windows::runtime::IUnknown {
from(value: &CashDrawerCloseAlarm) -> Self1827     fn from(value: &CashDrawerCloseAlarm) -> Self {
1828         ::std::convert::From::from(::std::clone::Clone::clone(value))
1829     }
1830 }
1831 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CashDrawerCloseAlarm {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1832     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1833         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1834     }
1835 }
1836 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CashDrawerCloseAlarm {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1837     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1838         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1839     }
1840 }
1841 impl ::std::convert::From<CashDrawerCloseAlarm> for ::windows::runtime::IInspectable {
from(value: CashDrawerCloseAlarm) -> Self1842     fn from(value: CashDrawerCloseAlarm) -> Self {
1843         value.0
1844     }
1845 }
1846 impl ::std::convert::From<&CashDrawerCloseAlarm> for ::windows::runtime::IInspectable {
from(value: &CashDrawerCloseAlarm) -> Self1847     fn from(value: &CashDrawerCloseAlarm) -> Self {
1848         value.0.clone()
1849     }
1850 }
1851 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CashDrawerCloseAlarm {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1852     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1853         ::windows::runtime::Param::Owned(self.0)
1854     }
1855 }
1856 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CashDrawerCloseAlarm {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1857     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1858         ::windows::runtime::Param::Borrowed(&self.0)
1859     }
1860 }
1861 unsafe impl ::std::marker::Send for CashDrawerCloseAlarm {}
1862 unsafe impl ::std::marker::Sync for CashDrawerCloseAlarm {}
1863 #[repr(transparent)]
1864 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1865 pub struct CashDrawerClosedEventArgs(::windows::runtime::IInspectable);
1866 impl CashDrawerClosedEventArgs {
CashDrawer(&self) -> ::windows::runtime::Result<CashDrawer>1867     pub fn CashDrawer(&self) -> ::windows::runtime::Result<CashDrawer> {
1868         let this = self;
1869         unsafe {
1870             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1871             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CashDrawer>(result__)
1872         }
1873     }
1874 }
1875 unsafe impl ::windows::runtime::RuntimeType for CashDrawerClosedEventArgs {
1876     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.CashDrawerClosedEventArgs;{69cb3bc1-147f-421c-9c23-090123bb786c})");
1877 }
1878 unsafe impl ::windows::runtime::Interface for CashDrawerClosedEventArgs {
1879     type Vtable = ICashDrawerEventSourceEventArgs_abi;
1880     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1774926785, 5247, 16924, [156, 35, 9, 1, 35, 187, 120, 108]);
1881 }
1882 impl ::windows::runtime::RuntimeName for CashDrawerClosedEventArgs {
1883     const NAME: &'static str = "Windows.Devices.PointOfService.CashDrawerClosedEventArgs";
1884 }
1885 impl ::std::convert::From<CashDrawerClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: CashDrawerClosedEventArgs) -> Self1886     fn from(value: CashDrawerClosedEventArgs) -> Self {
1887         unsafe { ::std::mem::transmute(value) }
1888     }
1889 }
1890 impl ::std::convert::From<&CashDrawerClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: &CashDrawerClosedEventArgs) -> Self1891     fn from(value: &CashDrawerClosedEventArgs) -> Self {
1892         ::std::convert::From::from(::std::clone::Clone::clone(value))
1893     }
1894 }
1895 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1896     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1897         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1898     }
1899 }
1900 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1901     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1902         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1903     }
1904 }
1905 impl ::std::convert::From<CashDrawerClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: CashDrawerClosedEventArgs) -> Self1906     fn from(value: CashDrawerClosedEventArgs) -> Self {
1907         value.0
1908     }
1909 }
1910 impl ::std::convert::From<&CashDrawerClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: &CashDrawerClosedEventArgs) -> Self1911     fn from(value: &CashDrawerClosedEventArgs) -> Self {
1912         value.0.clone()
1913     }
1914 }
1915 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1916     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1917         ::windows::runtime::Param::Owned(self.0)
1918     }
1919 }
1920 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1921     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1922         ::windows::runtime::Param::Borrowed(&self.0)
1923     }
1924 }
1925 impl ::std::convert::From<CashDrawerClosedEventArgs> for ICashDrawerEventSourceEventArgs {
from(value: CashDrawerClosedEventArgs) -> Self1926     fn from(value: CashDrawerClosedEventArgs) -> Self {
1927         unsafe { ::std::mem::transmute(value) }
1928     }
1929 }
1930 impl ::std::convert::From<&CashDrawerClosedEventArgs> for ICashDrawerEventSourceEventArgs {
from(value: &CashDrawerClosedEventArgs) -> Self1931     fn from(value: &CashDrawerClosedEventArgs) -> Self {
1932         ::std::convert::From::from(::std::clone::Clone::clone(value))
1933     }
1934 }
1935 impl<'a> ::windows::runtime::IntoParam<'a, ICashDrawerEventSourceEventArgs> for CashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ICashDrawerEventSourceEventArgs>1936     fn into_param(self) -> ::windows::runtime::Param<'a, ICashDrawerEventSourceEventArgs> {
1937         ::windows::runtime::Param::Owned(::std::convert::Into::<ICashDrawerEventSourceEventArgs>::into(self))
1938     }
1939 }
1940 impl<'a> ::windows::runtime::IntoParam<'a, ICashDrawerEventSourceEventArgs> for &CashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ICashDrawerEventSourceEventArgs>1941     fn into_param(self) -> ::windows::runtime::Param<'a, ICashDrawerEventSourceEventArgs> {
1942         ::windows::runtime::Param::Owned(::std::convert::Into::<ICashDrawerEventSourceEventArgs>::into(::std::clone::Clone::clone(self)))
1943     }
1944 }
1945 unsafe impl ::std::marker::Send for CashDrawerClosedEventArgs {}
1946 unsafe impl ::std::marker::Sync for CashDrawerClosedEventArgs {}
1947 #[repr(transparent)]
1948 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1949 pub struct CashDrawerEventSource(::windows::runtime::IInspectable);
1950 impl CashDrawerEventSource {
1951     #[cfg(feature = "Foundation")]
DrawerClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<CashDrawerEventSource, CashDrawerClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1952     pub fn DrawerClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<CashDrawerEventSource, CashDrawerClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1953         let this = self;
1954         unsafe {
1955             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1956             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1957         }
1958     }
1959     #[cfg(feature = "Foundation")]
RemoveDrawerClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>1960     pub fn RemoveDrawerClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
1961         let this = self;
1962         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
1963     }
1964     #[cfg(feature = "Foundation")]
DrawerOpened<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<CashDrawerEventSource, CashDrawerOpenedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1965     pub fn DrawerOpened<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<CashDrawerEventSource, CashDrawerOpenedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1966         let this = self;
1967         unsafe {
1968             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1969             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1970         }
1971     }
1972     #[cfg(feature = "Foundation")]
RemoveDrawerOpened<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>1973     pub fn RemoveDrawerOpened<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
1974         let this = self;
1975         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
1976     }
1977 }
1978 unsafe impl ::windows::runtime::RuntimeType for CashDrawerEventSource {
1979     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.CashDrawerEventSource;{e006e46c-f2f9-442f-8dd6-06c10a4227ba})");
1980 }
1981 unsafe impl ::windows::runtime::Interface for CashDrawerEventSource {
1982     type Vtable = ICashDrawerEventSource_abi;
1983     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3758548076, 62201, 17455, [141, 214, 6, 193, 10, 66, 39, 186]);
1984 }
1985 impl ::windows::runtime::RuntimeName for CashDrawerEventSource {
1986     const NAME: &'static str = "Windows.Devices.PointOfService.CashDrawerEventSource";
1987 }
1988 impl ::std::convert::From<CashDrawerEventSource> for ::windows::runtime::IUnknown {
from(value: CashDrawerEventSource) -> Self1989     fn from(value: CashDrawerEventSource) -> Self {
1990         unsafe { ::std::mem::transmute(value) }
1991     }
1992 }
1993 impl ::std::convert::From<&CashDrawerEventSource> for ::windows::runtime::IUnknown {
from(value: &CashDrawerEventSource) -> Self1994     fn from(value: &CashDrawerEventSource) -> Self {
1995         ::std::convert::From::from(::std::clone::Clone::clone(value))
1996     }
1997 }
1998 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CashDrawerEventSource {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1999     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2000         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2001     }
2002 }
2003 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CashDrawerEventSource {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2004     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2005         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2006     }
2007 }
2008 impl ::std::convert::From<CashDrawerEventSource> for ::windows::runtime::IInspectable {
from(value: CashDrawerEventSource) -> Self2009     fn from(value: CashDrawerEventSource) -> Self {
2010         value.0
2011     }
2012 }
2013 impl ::std::convert::From<&CashDrawerEventSource> for ::windows::runtime::IInspectable {
from(value: &CashDrawerEventSource) -> Self2014     fn from(value: &CashDrawerEventSource) -> Self {
2015         value.0.clone()
2016     }
2017 }
2018 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CashDrawerEventSource {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2019     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2020         ::windows::runtime::Param::Owned(self.0)
2021     }
2022 }
2023 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CashDrawerEventSource {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2024     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2025         ::windows::runtime::Param::Borrowed(&self.0)
2026     }
2027 }
2028 unsafe impl ::std::marker::Send for CashDrawerEventSource {}
2029 unsafe impl ::std::marker::Sync for CashDrawerEventSource {}
2030 #[repr(transparent)]
2031 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2032 pub struct CashDrawerOpenedEventArgs(::windows::runtime::IInspectable);
2033 impl CashDrawerOpenedEventArgs {
CashDrawer(&self) -> ::windows::runtime::Result<CashDrawer>2034     pub fn CashDrawer(&self) -> ::windows::runtime::Result<CashDrawer> {
2035         let this = self;
2036         unsafe {
2037             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2038             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CashDrawer>(result__)
2039         }
2040     }
2041 }
2042 unsafe impl ::windows::runtime::RuntimeType for CashDrawerOpenedEventArgs {
2043     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.CashDrawerOpenedEventArgs;{69cb3bc1-147f-421c-9c23-090123bb786c})");
2044 }
2045 unsafe impl ::windows::runtime::Interface for CashDrawerOpenedEventArgs {
2046     type Vtable = ICashDrawerEventSourceEventArgs_abi;
2047     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1774926785, 5247, 16924, [156, 35, 9, 1, 35, 187, 120, 108]);
2048 }
2049 impl ::windows::runtime::RuntimeName for CashDrawerOpenedEventArgs {
2050     const NAME: &'static str = "Windows.Devices.PointOfService.CashDrawerOpenedEventArgs";
2051 }
2052 impl ::std::convert::From<CashDrawerOpenedEventArgs> for ::windows::runtime::IUnknown {
from(value: CashDrawerOpenedEventArgs) -> Self2053     fn from(value: CashDrawerOpenedEventArgs) -> Self {
2054         unsafe { ::std::mem::transmute(value) }
2055     }
2056 }
2057 impl ::std::convert::From<&CashDrawerOpenedEventArgs> for ::windows::runtime::IUnknown {
from(value: &CashDrawerOpenedEventArgs) -> Self2058     fn from(value: &CashDrawerOpenedEventArgs) -> Self {
2059         ::std::convert::From::from(::std::clone::Clone::clone(value))
2060     }
2061 }
2062 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CashDrawerOpenedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2063     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2064         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2065     }
2066 }
2067 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CashDrawerOpenedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2068     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2069         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2070     }
2071 }
2072 impl ::std::convert::From<CashDrawerOpenedEventArgs> for ::windows::runtime::IInspectable {
from(value: CashDrawerOpenedEventArgs) -> Self2073     fn from(value: CashDrawerOpenedEventArgs) -> Self {
2074         value.0
2075     }
2076 }
2077 impl ::std::convert::From<&CashDrawerOpenedEventArgs> for ::windows::runtime::IInspectable {
from(value: &CashDrawerOpenedEventArgs) -> Self2078     fn from(value: &CashDrawerOpenedEventArgs) -> Self {
2079         value.0.clone()
2080     }
2081 }
2082 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CashDrawerOpenedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2083     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2084         ::windows::runtime::Param::Owned(self.0)
2085     }
2086 }
2087 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CashDrawerOpenedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2088     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2089         ::windows::runtime::Param::Borrowed(&self.0)
2090     }
2091 }
2092 impl ::std::convert::From<CashDrawerOpenedEventArgs> for ICashDrawerEventSourceEventArgs {
from(value: CashDrawerOpenedEventArgs) -> Self2093     fn from(value: CashDrawerOpenedEventArgs) -> Self {
2094         unsafe { ::std::mem::transmute(value) }
2095     }
2096 }
2097 impl ::std::convert::From<&CashDrawerOpenedEventArgs> for ICashDrawerEventSourceEventArgs {
from(value: &CashDrawerOpenedEventArgs) -> Self2098     fn from(value: &CashDrawerOpenedEventArgs) -> Self {
2099         ::std::convert::From::from(::std::clone::Clone::clone(value))
2100     }
2101 }
2102 impl<'a> ::windows::runtime::IntoParam<'a, ICashDrawerEventSourceEventArgs> for CashDrawerOpenedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ICashDrawerEventSourceEventArgs>2103     fn into_param(self) -> ::windows::runtime::Param<'a, ICashDrawerEventSourceEventArgs> {
2104         ::windows::runtime::Param::Owned(::std::convert::Into::<ICashDrawerEventSourceEventArgs>::into(self))
2105     }
2106 }
2107 impl<'a> ::windows::runtime::IntoParam<'a, ICashDrawerEventSourceEventArgs> for &CashDrawerOpenedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ICashDrawerEventSourceEventArgs>2108     fn into_param(self) -> ::windows::runtime::Param<'a, ICashDrawerEventSourceEventArgs> {
2109         ::windows::runtime::Param::Owned(::std::convert::Into::<ICashDrawerEventSourceEventArgs>::into(::std::clone::Clone::clone(self)))
2110     }
2111 }
2112 unsafe impl ::std::marker::Send for CashDrawerOpenedEventArgs {}
2113 unsafe impl ::std::marker::Sync for CashDrawerOpenedEventArgs {}
2114 #[repr(transparent)]
2115 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2116 pub struct CashDrawerStatus(::windows::runtime::IInspectable);
2117 impl CashDrawerStatus {
StatusKind(&self) -> ::windows::runtime::Result<CashDrawerStatusKind>2118     pub fn StatusKind(&self) -> ::windows::runtime::Result<CashDrawerStatusKind> {
2119         let this = self;
2120         unsafe {
2121             let mut result__: CashDrawerStatusKind = ::std::mem::zeroed();
2122             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CashDrawerStatusKind>(result__)
2123         }
2124     }
ExtendedStatus(&self) -> ::windows::runtime::Result<u32>2125     pub fn ExtendedStatus(&self) -> ::windows::runtime::Result<u32> {
2126         let this = self;
2127         unsafe {
2128             let mut result__: u32 = ::std::mem::zeroed();
2129             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
2130         }
2131     }
2132 }
2133 unsafe impl ::windows::runtime::RuntimeType for CashDrawerStatus {
2134     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.CashDrawerStatus;{6bbd78bf-dca1-4e06-99eb-5af6a5aec108})");
2135 }
2136 unsafe impl ::windows::runtime::Interface for CashDrawerStatus {
2137     type Vtable = ICashDrawerStatus_abi;
2138     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1807579327, 56481, 19974, [153, 235, 90, 246, 165, 174, 193, 8]);
2139 }
2140 impl ::windows::runtime::RuntimeName for CashDrawerStatus {
2141     const NAME: &'static str = "Windows.Devices.PointOfService.CashDrawerStatus";
2142 }
2143 impl ::std::convert::From<CashDrawerStatus> for ::windows::runtime::IUnknown {
from(value: CashDrawerStatus) -> Self2144     fn from(value: CashDrawerStatus) -> Self {
2145         unsafe { ::std::mem::transmute(value) }
2146     }
2147 }
2148 impl ::std::convert::From<&CashDrawerStatus> for ::windows::runtime::IUnknown {
from(value: &CashDrawerStatus) -> Self2149     fn from(value: &CashDrawerStatus) -> Self {
2150         ::std::convert::From::from(::std::clone::Clone::clone(value))
2151     }
2152 }
2153 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CashDrawerStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2154     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2155         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2156     }
2157 }
2158 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CashDrawerStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2159     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2160         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2161     }
2162 }
2163 impl ::std::convert::From<CashDrawerStatus> for ::windows::runtime::IInspectable {
from(value: CashDrawerStatus) -> Self2164     fn from(value: CashDrawerStatus) -> Self {
2165         value.0
2166     }
2167 }
2168 impl ::std::convert::From<&CashDrawerStatus> for ::windows::runtime::IInspectable {
from(value: &CashDrawerStatus) -> Self2169     fn from(value: &CashDrawerStatus) -> Self {
2170         value.0.clone()
2171     }
2172 }
2173 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CashDrawerStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2174     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2175         ::windows::runtime::Param::Owned(self.0)
2176     }
2177 }
2178 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CashDrawerStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2179     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2180         ::windows::runtime::Param::Borrowed(&self.0)
2181     }
2182 }
2183 unsafe impl ::std::marker::Send for CashDrawerStatus {}
2184 unsafe impl ::std::marker::Sync for CashDrawerStatus {}
2185 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2186 #[repr(transparent)]
2187 pub struct CashDrawerStatusKind(pub i32);
2188 impl CashDrawerStatusKind {
2189     pub const Online: CashDrawerStatusKind = CashDrawerStatusKind(0i32);
2190     pub const Off: CashDrawerStatusKind = CashDrawerStatusKind(1i32);
2191     pub const Offline: CashDrawerStatusKind = CashDrawerStatusKind(2i32);
2192     pub const OffOrOffline: CashDrawerStatusKind = CashDrawerStatusKind(3i32);
2193     pub const Extended: CashDrawerStatusKind = CashDrawerStatusKind(4i32);
2194 }
2195 impl ::std::convert::From<i32> for CashDrawerStatusKind {
from(value: i32) -> Self2196     fn from(value: i32) -> Self {
2197         Self(value)
2198     }
2199 }
2200 unsafe impl ::windows::runtime::Abi for CashDrawerStatusKind {
2201     type Abi = Self;
2202     type DefaultType = Self;
2203 }
2204 unsafe impl ::windows::runtime::RuntimeType for CashDrawerStatusKind {
2205     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.CashDrawerStatusKind;i4)");
2206 }
2207 #[repr(transparent)]
2208 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2209 pub struct CashDrawerStatusUpdatedEventArgs(::windows::runtime::IInspectable);
2210 impl CashDrawerStatusUpdatedEventArgs {
Status(&self) -> ::windows::runtime::Result<CashDrawerStatus>2211     pub fn Status(&self) -> ::windows::runtime::Result<CashDrawerStatus> {
2212         let this = self;
2213         unsafe {
2214             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2215             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CashDrawerStatus>(result__)
2216         }
2217     }
2218 }
2219 unsafe impl ::windows::runtime::RuntimeType for CashDrawerStatusUpdatedEventArgs {
2220     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.CashDrawerStatusUpdatedEventArgs;{30aae98a-0d70-459c-9553-87e124c52488})");
2221 }
2222 unsafe impl ::windows::runtime::Interface for CashDrawerStatusUpdatedEventArgs {
2223     type Vtable = ICashDrawerStatusUpdatedEventArgs_abi;
2224     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(816507274, 3440, 17820, [149, 83, 135, 225, 36, 197, 36, 136]);
2225 }
2226 impl ::windows::runtime::RuntimeName for CashDrawerStatusUpdatedEventArgs {
2227     const NAME: &'static str = "Windows.Devices.PointOfService.CashDrawerStatusUpdatedEventArgs";
2228 }
2229 impl ::std::convert::From<CashDrawerStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: CashDrawerStatusUpdatedEventArgs) -> Self2230     fn from(value: CashDrawerStatusUpdatedEventArgs) -> Self {
2231         unsafe { ::std::mem::transmute(value) }
2232     }
2233 }
2234 impl ::std::convert::From<&CashDrawerStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: &CashDrawerStatusUpdatedEventArgs) -> Self2235     fn from(value: &CashDrawerStatusUpdatedEventArgs) -> Self {
2236         ::std::convert::From::from(::std::clone::Clone::clone(value))
2237     }
2238 }
2239 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CashDrawerStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2240     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2241         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2242     }
2243 }
2244 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CashDrawerStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2245     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2246         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2247     }
2248 }
2249 impl ::std::convert::From<CashDrawerStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: CashDrawerStatusUpdatedEventArgs) -> Self2250     fn from(value: CashDrawerStatusUpdatedEventArgs) -> Self {
2251         value.0
2252     }
2253 }
2254 impl ::std::convert::From<&CashDrawerStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: &CashDrawerStatusUpdatedEventArgs) -> Self2255     fn from(value: &CashDrawerStatusUpdatedEventArgs) -> Self {
2256         value.0.clone()
2257     }
2258 }
2259 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CashDrawerStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2260     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2261         ::windows::runtime::Param::Owned(self.0)
2262     }
2263 }
2264 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CashDrawerStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2265     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2266         ::windows::runtime::Param::Borrowed(&self.0)
2267     }
2268 }
2269 unsafe impl ::std::marker::Send for CashDrawerStatusUpdatedEventArgs {}
2270 unsafe impl ::std::marker::Sync for CashDrawerStatusUpdatedEventArgs {}
2271 #[repr(transparent)]
2272 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2273 pub struct ClaimedBarcodeScanner(::windows::runtime::IInspectable);
2274 impl ClaimedBarcodeScanner {
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>2275     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
2276         let this = self;
2277         unsafe {
2278             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
2279             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
2280         }
2281     }
IsEnabled(&self) -> ::windows::runtime::Result<bool>2282     pub fn IsEnabled(&self) -> ::windows::runtime::Result<bool> {
2283         let this = self;
2284         unsafe {
2285             let mut result__: bool = ::std::mem::zeroed();
2286             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2287         }
2288     }
SetIsDisabledOnDataReceived(&self, value: bool) -> ::windows::runtime::Result<()>2289     pub fn SetIsDisabledOnDataReceived(&self, value: bool) -> ::windows::runtime::Result<()> {
2290         let this = self;
2291         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
2292     }
IsDisabledOnDataReceived(&self) -> ::windows::runtime::Result<bool>2293     pub fn IsDisabledOnDataReceived(&self) -> ::windows::runtime::Result<bool> {
2294         let this = self;
2295         unsafe {
2296             let mut result__: bool = ::std::mem::zeroed();
2297             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2298         }
2299     }
SetIsDecodeDataEnabled(&self, value: bool) -> ::windows::runtime::Result<()>2300     pub fn SetIsDecodeDataEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
2301         let this = self;
2302         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
2303     }
IsDecodeDataEnabled(&self) -> ::windows::runtime::Result<bool>2304     pub fn IsDecodeDataEnabled(&self) -> ::windows::runtime::Result<bool> {
2305         let this = self;
2306         unsafe {
2307             let mut result__: bool = ::std::mem::zeroed();
2308             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2309         }
2310     }
2311     #[cfg(feature = "Foundation")]
EnableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2312     pub fn EnableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2313         let this = self;
2314         unsafe {
2315             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2316             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2317         }
2318     }
2319     #[cfg(feature = "Foundation")]
DisableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2320     pub fn DisableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2321         let this = self;
2322         unsafe {
2323             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2324             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2325         }
2326     }
RetainDevice(&self) -> ::windows::runtime::Result<()>2327     pub fn RetainDevice(&self) -> ::windows::runtime::Result<()> {
2328         let this = self;
2329         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
2330     }
2331     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
SetActiveSymbologiesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<u32>>>(&self, symbologies: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2332     pub fn SetActiveSymbologiesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<u32>>>(&self, symbologies: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2333         let this = self;
2334         unsafe {
2335             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2336             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), symbologies.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2337         }
2338     }
2339     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
ResetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2340     pub fn ResetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2341         let this = self;
2342         unsafe {
2343             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2344             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), statisticscategories.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2345         }
2346     }
2347     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
UpdateStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Collections::IKeyValuePair<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>>>(&self, statistics: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2348     pub fn UpdateStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Collections::IKeyValuePair<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>>>(&self, statistics: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2349         let this = self;
2350         unsafe {
2351             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2352             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), statistics.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2353         }
2354     }
2355     #[cfg(feature = "Foundation")]
SetActiveProfileAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, profile: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2356     pub fn SetActiveProfileAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, profile: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2357         let this = self;
2358         unsafe {
2359             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2360             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), profile.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2361         }
2362     }
2363     #[cfg(feature = "Foundation")]
DataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedBarcodeScanner, BarcodeScannerDataReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2364     pub fn DataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedBarcodeScanner, BarcodeScannerDataReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2365         let this = self;
2366         unsafe {
2367             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2368             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2369         }
2370     }
2371     #[cfg(feature = "Foundation")]
RemoveDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>2372     pub fn RemoveDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2373         let this = self;
2374         unsafe { (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2375     }
2376     #[cfg(feature = "Foundation")]
TriggerPressed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventHandler<ClaimedBarcodeScanner>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2377     pub fn TriggerPressed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventHandler<ClaimedBarcodeScanner>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2378         let this = self;
2379         unsafe {
2380             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2381             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2382         }
2383     }
2384     #[cfg(feature = "Foundation")]
RemoveTriggerPressed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>2385     pub fn RemoveTriggerPressed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2386         let this = self;
2387         unsafe { (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2388     }
2389     #[cfg(feature = "Foundation")]
TriggerReleased<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventHandler<ClaimedBarcodeScanner>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2390     pub fn TriggerReleased<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventHandler<ClaimedBarcodeScanner>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2391         let this = self;
2392         unsafe {
2393             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2394             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2395         }
2396     }
2397     #[cfg(feature = "Foundation")]
RemoveTriggerReleased<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>2398     pub fn RemoveTriggerReleased<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2399         let this = self;
2400         unsafe { (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2401     }
2402     #[cfg(feature = "Foundation")]
ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventHandler<ClaimedBarcodeScanner>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2403     pub fn ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventHandler<ClaimedBarcodeScanner>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2404         let this = self;
2405         unsafe {
2406             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2407             (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2408         }
2409     }
2410     #[cfg(feature = "Foundation")]
RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>2411     pub fn RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2412         let this = self;
2413         unsafe { (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2414     }
2415     #[cfg(feature = "Foundation")]
ImagePreviewReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedBarcodeScanner, BarcodeScannerImagePreviewReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2416     pub fn ImagePreviewReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedBarcodeScanner, BarcodeScannerImagePreviewReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2417         let this = self;
2418         unsafe {
2419             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2420             (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2421         }
2422     }
2423     #[cfg(feature = "Foundation")]
RemoveImagePreviewReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>2424     pub fn RemoveImagePreviewReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2425         let this = self;
2426         unsafe { (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2427     }
2428     #[cfg(feature = "Foundation")]
ErrorOccurred<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedBarcodeScanner, BarcodeScannerErrorOccurredEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2429     pub fn ErrorOccurred<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedBarcodeScanner, BarcodeScannerErrorOccurredEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2430         let this = self;
2431         unsafe {
2432             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2433             (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2434         }
2435     }
2436     #[cfg(feature = "Foundation")]
RemoveErrorOccurred<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>2437     pub fn RemoveErrorOccurred<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2438         let this = self;
2439         unsafe { (::windows::runtime::Interface::vtable(this).30)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2440     }
2441     #[cfg(feature = "Foundation")]
StartSoftwareTriggerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2442     pub fn StartSoftwareTriggerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2443         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner1>(self)?;
2444         unsafe {
2445             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2446             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2447         }
2448     }
2449     #[cfg(feature = "Foundation")]
StopSoftwareTriggerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2450     pub fn StopSoftwareTriggerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2451         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner1>(self)?;
2452         unsafe {
2453             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2454             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2455         }
2456     }
2457     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>2458     pub fn Close(&self) -> ::windows::runtime::Result<()> {
2459         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
2460         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
2461     }
2462     #[cfg(feature = "Foundation")]
GetSymbologyAttributesAsync(&self, barcodesymbology: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<BarcodeSymbologyAttributes>>2463     pub fn GetSymbologyAttributesAsync(&self, barcodesymbology: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<BarcodeSymbologyAttributes>> {
2464         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner2>(self)?;
2465         unsafe {
2466             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2467             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), barcodesymbology, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<BarcodeSymbologyAttributes>>(result__)
2468         }
2469     }
2470     #[cfg(feature = "Foundation")]
SetSymbologyAttributesAsync<'a, Param1: ::windows::runtime::IntoParam<'a, BarcodeSymbologyAttributes>>(&self, barcodesymbology: u32, attributes: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>2471     pub fn SetSymbologyAttributesAsync<'a, Param1: ::windows::runtime::IntoParam<'a, BarcodeSymbologyAttributes>>(&self, barcodesymbology: u32, attributes: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
2472         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner2>(self)?;
2473         unsafe {
2474             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2475             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), barcodesymbology, attributes.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
2476         }
2477     }
2478     #[cfg(feature = "Foundation")]
ShowVideoPreviewAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>2479     pub fn ShowVideoPreviewAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
2480         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner3>(self)?;
2481         unsafe {
2482             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2483             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
2484         }
2485     }
HideVideoPreview(&self) -> ::windows::runtime::Result<()>2486     pub fn HideVideoPreview(&self) -> ::windows::runtime::Result<()> {
2487         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner3>(self)?;
2488         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this)).ok() }
2489     }
SetIsVideoPreviewShownOnEnable(&self, value: bool) -> ::windows::runtime::Result<()>2490     pub fn SetIsVideoPreviewShownOnEnable(&self, value: bool) -> ::windows::runtime::Result<()> {
2491         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner3>(self)?;
2492         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
2493     }
IsVideoPreviewShownOnEnable(&self) -> ::windows::runtime::Result<bool>2494     pub fn IsVideoPreviewShownOnEnable(&self) -> ::windows::runtime::Result<bool> {
2495         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner3>(self)?;
2496         unsafe {
2497             let mut result__: bool = ::std::mem::zeroed();
2498             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2499         }
2500     }
2501     #[cfg(feature = "Foundation")]
Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedBarcodeScanner, ClaimedBarcodeScannerClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2502     pub fn Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedBarcodeScanner, ClaimedBarcodeScannerClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2503         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner4>(self)?;
2504         unsafe {
2505             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2506             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2507         }
2508     }
2509     #[cfg(feature = "Foundation")]
RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>2510     pub fn RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2511         let this = &::windows::runtime::Interface::cast::<IClaimedBarcodeScanner4>(self)?;
2512         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2513     }
2514 }
2515 unsafe impl ::windows::runtime::RuntimeType for ClaimedBarcodeScanner {
2516     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedBarcodeScanner;{4a63b49c-8fa4-4332-bb26-945d11d81e0f})");
2517 }
2518 unsafe impl ::windows::runtime::Interface for ClaimedBarcodeScanner {
2519     type Vtable = IClaimedBarcodeScanner_abi;
2520     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1248048284, 36772, 17202, [187, 38, 148, 93, 17, 216, 30, 15]);
2521 }
2522 impl ::windows::runtime::RuntimeName for ClaimedBarcodeScanner {
2523     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedBarcodeScanner";
2524 }
2525 impl ::std::convert::From<ClaimedBarcodeScanner> for ::windows::runtime::IUnknown {
from(value: ClaimedBarcodeScanner) -> Self2526     fn from(value: ClaimedBarcodeScanner) -> Self {
2527         unsafe { ::std::mem::transmute(value) }
2528     }
2529 }
2530 impl ::std::convert::From<&ClaimedBarcodeScanner> for ::windows::runtime::IUnknown {
from(value: &ClaimedBarcodeScanner) -> Self2531     fn from(value: &ClaimedBarcodeScanner) -> Self {
2532         ::std::convert::From::from(::std::clone::Clone::clone(value))
2533     }
2534 }
2535 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedBarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2536     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2537         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2538     }
2539 }
2540 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedBarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2541     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2542         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2543     }
2544 }
2545 impl ::std::convert::From<ClaimedBarcodeScanner> for ::windows::runtime::IInspectable {
from(value: ClaimedBarcodeScanner) -> Self2546     fn from(value: ClaimedBarcodeScanner) -> Self {
2547         value.0
2548     }
2549 }
2550 impl ::std::convert::From<&ClaimedBarcodeScanner> for ::windows::runtime::IInspectable {
from(value: &ClaimedBarcodeScanner) -> Self2551     fn from(value: &ClaimedBarcodeScanner) -> Self {
2552         value.0.clone()
2553     }
2554 }
2555 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedBarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2556     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2557         ::windows::runtime::Param::Owned(self.0)
2558     }
2559 }
2560 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedBarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2561     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2562         ::windows::runtime::Param::Borrowed(&self.0)
2563     }
2564 }
2565 #[cfg(feature = "Foundation")]
2566 impl ::std::convert::TryFrom<ClaimedBarcodeScanner> for super::super::Foundation::IClosable {
2567     type Error = ::windows::runtime::Error;
try_from(value: ClaimedBarcodeScanner) -> ::windows::runtime::Result<Self>2568     fn try_from(value: ClaimedBarcodeScanner) -> ::windows::runtime::Result<Self> {
2569         ::std::convert::TryFrom::try_from(&value)
2570     }
2571 }
2572 #[cfg(feature = "Foundation")]
2573 impl ::std::convert::TryFrom<&ClaimedBarcodeScanner> for super::super::Foundation::IClosable {
2574     type Error = ::windows::runtime::Error;
try_from(value: &ClaimedBarcodeScanner) -> ::windows::runtime::Result<Self>2575     fn try_from(value: &ClaimedBarcodeScanner) -> ::windows::runtime::Result<Self> {
2576         ::windows::runtime::Interface::cast(value)
2577     }
2578 }
2579 #[cfg(feature = "Foundation")]
2580 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for ClaimedBarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>2581     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
2582         ::windows::runtime::IntoParam::into_param(&self)
2583     }
2584 }
2585 #[cfg(feature = "Foundation")]
2586 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &ClaimedBarcodeScanner {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>2587     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
2588         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
2589     }
2590 }
2591 unsafe impl ::std::marker::Send for ClaimedBarcodeScanner {}
2592 unsafe impl ::std::marker::Sync for ClaimedBarcodeScanner {}
2593 #[repr(transparent)]
2594 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2595 pub struct ClaimedBarcodeScannerClosedEventArgs(::windows::runtime::IInspectable);
2596 impl ClaimedBarcodeScannerClosedEventArgs {}
2597 unsafe impl ::windows::runtime::RuntimeType for ClaimedBarcodeScannerClosedEventArgs {
2598     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedBarcodeScannerClosedEventArgs;{cf7d5489-a22c-4c65-a901-88d77d833954})");
2599 }
2600 unsafe impl ::windows::runtime::Interface for ClaimedBarcodeScannerClosedEventArgs {
2601     type Vtable = IClaimedBarcodeScannerClosedEventArgs_abi;
2602     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3481097353, 41516, 19557, [169, 1, 136, 215, 125, 131, 57, 84]);
2603 }
2604 impl ::windows::runtime::RuntimeName for ClaimedBarcodeScannerClosedEventArgs {
2605     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedBarcodeScannerClosedEventArgs";
2606 }
2607 impl ::std::convert::From<ClaimedBarcodeScannerClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: ClaimedBarcodeScannerClosedEventArgs) -> Self2608     fn from(value: ClaimedBarcodeScannerClosedEventArgs) -> Self {
2609         unsafe { ::std::mem::transmute(value) }
2610     }
2611 }
2612 impl ::std::convert::From<&ClaimedBarcodeScannerClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: &ClaimedBarcodeScannerClosedEventArgs) -> Self2613     fn from(value: &ClaimedBarcodeScannerClosedEventArgs) -> Self {
2614         ::std::convert::From::from(::std::clone::Clone::clone(value))
2615     }
2616 }
2617 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedBarcodeScannerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2618     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2619         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2620     }
2621 }
2622 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedBarcodeScannerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2623     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2624         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2625     }
2626 }
2627 impl ::std::convert::From<ClaimedBarcodeScannerClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: ClaimedBarcodeScannerClosedEventArgs) -> Self2628     fn from(value: ClaimedBarcodeScannerClosedEventArgs) -> Self {
2629         value.0
2630     }
2631 }
2632 impl ::std::convert::From<&ClaimedBarcodeScannerClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: &ClaimedBarcodeScannerClosedEventArgs) -> Self2633     fn from(value: &ClaimedBarcodeScannerClosedEventArgs) -> Self {
2634         value.0.clone()
2635     }
2636 }
2637 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedBarcodeScannerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2638     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2639         ::windows::runtime::Param::Owned(self.0)
2640     }
2641 }
2642 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedBarcodeScannerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2643     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2644         ::windows::runtime::Param::Borrowed(&self.0)
2645     }
2646 }
2647 unsafe impl ::std::marker::Send for ClaimedBarcodeScannerClosedEventArgs {}
2648 unsafe impl ::std::marker::Sync for ClaimedBarcodeScannerClosedEventArgs {}
2649 #[repr(transparent)]
2650 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2651 pub struct ClaimedCashDrawer(::windows::runtime::IInspectable);
2652 impl ClaimedCashDrawer {
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>2653     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
2654         let this = self;
2655         unsafe {
2656             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
2657             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
2658         }
2659     }
IsEnabled(&self) -> ::windows::runtime::Result<bool>2660     pub fn IsEnabled(&self) -> ::windows::runtime::Result<bool> {
2661         let this = self;
2662         unsafe {
2663             let mut result__: bool = ::std::mem::zeroed();
2664             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2665         }
2666     }
IsDrawerOpen(&self) -> ::windows::runtime::Result<bool>2667     pub fn IsDrawerOpen(&self) -> ::windows::runtime::Result<bool> {
2668         let this = self;
2669         unsafe {
2670             let mut result__: bool = ::std::mem::zeroed();
2671             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2672         }
2673     }
CloseAlarm(&self) -> ::windows::runtime::Result<CashDrawerCloseAlarm>2674     pub fn CloseAlarm(&self) -> ::windows::runtime::Result<CashDrawerCloseAlarm> {
2675         let this = self;
2676         unsafe {
2677             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2678             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CashDrawerCloseAlarm>(result__)
2679         }
2680     }
2681     #[cfg(feature = "Foundation")]
OpenDrawerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>2682     pub fn OpenDrawerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
2683         let this = self;
2684         unsafe {
2685             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2686             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
2687         }
2688     }
2689     #[cfg(feature = "Foundation")]
EnableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>2690     pub fn EnableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
2691         let this = self;
2692         unsafe {
2693             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2694             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
2695         }
2696     }
2697     #[cfg(feature = "Foundation")]
DisableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>2698     pub fn DisableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
2699         let this = self;
2700         unsafe {
2701             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2702             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
2703         }
2704     }
2705     #[cfg(feature = "Foundation")]
RetainDeviceAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>2706     pub fn RetainDeviceAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
2707         let this = self;
2708         unsafe {
2709             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2710             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
2711         }
2712     }
2713     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
ResetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>2714     pub fn ResetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
2715         let this = self;
2716         unsafe {
2717             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2718             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), statisticscategories.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
2719         }
2720     }
2721     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
UpdateStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Collections::IKeyValuePair<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>>>(&self, statistics: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>2722     pub fn UpdateStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Collections::IKeyValuePair<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>>>(&self, statistics: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
2723         let this = self;
2724         unsafe {
2725             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2726             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), statistics.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
2727         }
2728     }
2729     #[cfg(feature = "Foundation")]
ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedCashDrawer, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2730     pub fn ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedCashDrawer, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2731         let this = self;
2732         unsafe {
2733             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2734             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2735         }
2736     }
2737     #[cfg(feature = "Foundation")]
RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>2738     pub fn RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2739         let this = self;
2740         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2741     }
2742     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>2743     pub fn Close(&self) -> ::windows::runtime::Result<()> {
2744         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
2745         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
2746     }
2747     #[cfg(feature = "Foundation")]
Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedCashDrawer, ClaimedCashDrawerClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>2748     pub fn Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedCashDrawer, ClaimedCashDrawerClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
2749         let this = &::windows::runtime::Interface::cast::<IClaimedCashDrawer2>(self)?;
2750         unsafe {
2751             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2752             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
2753         }
2754     }
2755     #[cfg(feature = "Foundation")]
RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>2756     pub fn RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2757         let this = &::windows::runtime::Interface::cast::<IClaimedCashDrawer2>(self)?;
2758         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2759     }
2760 }
2761 unsafe impl ::windows::runtime::RuntimeType for ClaimedCashDrawer {
2762     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedCashDrawer;{ca3f99af-abb8-42c1-8a84-5c66512f5a75})");
2763 }
2764 unsafe impl ::windows::runtime::Interface for ClaimedCashDrawer {
2765     type Vtable = IClaimedCashDrawer_abi;
2766     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3393165743, 43960, 17089, [138, 132, 92, 102, 81, 47, 90, 117]);
2767 }
2768 impl ::windows::runtime::RuntimeName for ClaimedCashDrawer {
2769     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedCashDrawer";
2770 }
2771 impl ::std::convert::From<ClaimedCashDrawer> for ::windows::runtime::IUnknown {
from(value: ClaimedCashDrawer) -> Self2772     fn from(value: ClaimedCashDrawer) -> Self {
2773         unsafe { ::std::mem::transmute(value) }
2774     }
2775 }
2776 impl ::std::convert::From<&ClaimedCashDrawer> for ::windows::runtime::IUnknown {
from(value: &ClaimedCashDrawer) -> Self2777     fn from(value: &ClaimedCashDrawer) -> Self {
2778         ::std::convert::From::from(::std::clone::Clone::clone(value))
2779     }
2780 }
2781 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedCashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2782     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2783         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2784     }
2785 }
2786 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedCashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2787     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2788         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2789     }
2790 }
2791 impl ::std::convert::From<ClaimedCashDrawer> for ::windows::runtime::IInspectable {
from(value: ClaimedCashDrawer) -> Self2792     fn from(value: ClaimedCashDrawer) -> Self {
2793         value.0
2794     }
2795 }
2796 impl ::std::convert::From<&ClaimedCashDrawer> for ::windows::runtime::IInspectable {
from(value: &ClaimedCashDrawer) -> Self2797     fn from(value: &ClaimedCashDrawer) -> Self {
2798         value.0.clone()
2799     }
2800 }
2801 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedCashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2802     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2803         ::windows::runtime::Param::Owned(self.0)
2804     }
2805 }
2806 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedCashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2807     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2808         ::windows::runtime::Param::Borrowed(&self.0)
2809     }
2810 }
2811 #[cfg(feature = "Foundation")]
2812 impl ::std::convert::TryFrom<ClaimedCashDrawer> for super::super::Foundation::IClosable {
2813     type Error = ::windows::runtime::Error;
try_from(value: ClaimedCashDrawer) -> ::windows::runtime::Result<Self>2814     fn try_from(value: ClaimedCashDrawer) -> ::windows::runtime::Result<Self> {
2815         ::std::convert::TryFrom::try_from(&value)
2816     }
2817 }
2818 #[cfg(feature = "Foundation")]
2819 impl ::std::convert::TryFrom<&ClaimedCashDrawer> for super::super::Foundation::IClosable {
2820     type Error = ::windows::runtime::Error;
try_from(value: &ClaimedCashDrawer) -> ::windows::runtime::Result<Self>2821     fn try_from(value: &ClaimedCashDrawer) -> ::windows::runtime::Result<Self> {
2822         ::windows::runtime::Interface::cast(value)
2823     }
2824 }
2825 #[cfg(feature = "Foundation")]
2826 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for ClaimedCashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>2827     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
2828         ::windows::runtime::IntoParam::into_param(&self)
2829     }
2830 }
2831 #[cfg(feature = "Foundation")]
2832 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &ClaimedCashDrawer {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>2833     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
2834         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
2835     }
2836 }
2837 unsafe impl ::std::marker::Send for ClaimedCashDrawer {}
2838 unsafe impl ::std::marker::Sync for ClaimedCashDrawer {}
2839 #[repr(transparent)]
2840 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2841 pub struct ClaimedCashDrawerClosedEventArgs(::windows::runtime::IInspectable);
2842 impl ClaimedCashDrawerClosedEventArgs {}
2843 unsafe impl ::windows::runtime::RuntimeType for ClaimedCashDrawerClosedEventArgs {
2844     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedCashDrawerClosedEventArgs;{cc573f33-3f34-4c5c-baae-deadf16cd7fa})");
2845 }
2846 unsafe impl ::windows::runtime::Interface for ClaimedCashDrawerClosedEventArgs {
2847     type Vtable = IClaimedCashDrawerClosedEventArgs_abi;
2848     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3428269875, 16180, 19548, [186, 174, 222, 173, 241, 108, 215, 250]);
2849 }
2850 impl ::windows::runtime::RuntimeName for ClaimedCashDrawerClosedEventArgs {
2851     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedCashDrawerClosedEventArgs";
2852 }
2853 impl ::std::convert::From<ClaimedCashDrawerClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: ClaimedCashDrawerClosedEventArgs) -> Self2854     fn from(value: ClaimedCashDrawerClosedEventArgs) -> Self {
2855         unsafe { ::std::mem::transmute(value) }
2856     }
2857 }
2858 impl ::std::convert::From<&ClaimedCashDrawerClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: &ClaimedCashDrawerClosedEventArgs) -> Self2859     fn from(value: &ClaimedCashDrawerClosedEventArgs) -> Self {
2860         ::std::convert::From::from(::std::clone::Clone::clone(value))
2861     }
2862 }
2863 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedCashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2864     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2865         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2866     }
2867 }
2868 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedCashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2869     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2870         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2871     }
2872 }
2873 impl ::std::convert::From<ClaimedCashDrawerClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: ClaimedCashDrawerClosedEventArgs) -> Self2874     fn from(value: ClaimedCashDrawerClosedEventArgs) -> Self {
2875         value.0
2876     }
2877 }
2878 impl ::std::convert::From<&ClaimedCashDrawerClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: &ClaimedCashDrawerClosedEventArgs) -> Self2879     fn from(value: &ClaimedCashDrawerClosedEventArgs) -> Self {
2880         value.0.clone()
2881     }
2882 }
2883 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedCashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2884     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2885         ::windows::runtime::Param::Owned(self.0)
2886     }
2887 }
2888 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedCashDrawerClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2889     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2890         ::windows::runtime::Param::Borrowed(&self.0)
2891     }
2892 }
2893 unsafe impl ::std::marker::Send for ClaimedCashDrawerClosedEventArgs {}
2894 unsafe impl ::std::marker::Sync for ClaimedCashDrawerClosedEventArgs {}
2895 #[repr(transparent)]
2896 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2897 pub struct ClaimedJournalPrinter(::windows::runtime::IInspectable);
2898 impl ClaimedJournalPrinter {
CreateJob(&self) -> ::windows::runtime::Result<JournalPrintJob>2899     pub fn CreateJob(&self) -> ::windows::runtime::Result<JournalPrintJob> {
2900         let this = self;
2901         unsafe {
2902             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2903             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<JournalPrintJob>(result__)
2904         }
2905     }
SetCharactersPerLine(&self, value: u32) -> ::windows::runtime::Result<()>2906     pub fn SetCharactersPerLine(&self, value: u32) -> ::windows::runtime::Result<()> {
2907         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2908         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
2909     }
CharactersPerLine(&self) -> ::windows::runtime::Result<u32>2910     pub fn CharactersPerLine(&self) -> ::windows::runtime::Result<u32> {
2911         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2912         unsafe {
2913             let mut result__: u32 = ::std::mem::zeroed();
2914             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
2915         }
2916     }
SetLineHeight(&self, value: u32) -> ::windows::runtime::Result<()>2917     pub fn SetLineHeight(&self, value: u32) -> ::windows::runtime::Result<()> {
2918         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2919         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
2920     }
LineHeight(&self) -> ::windows::runtime::Result<u32>2921     pub fn LineHeight(&self) -> ::windows::runtime::Result<u32> {
2922         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2923         unsafe {
2924             let mut result__: u32 = ::std::mem::zeroed();
2925             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
2926         }
2927     }
SetLineSpacing(&self, value: u32) -> ::windows::runtime::Result<()>2928     pub fn SetLineSpacing(&self, value: u32) -> ::windows::runtime::Result<()> {
2929         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2930         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
2931     }
LineSpacing(&self) -> ::windows::runtime::Result<u32>2932     pub fn LineSpacing(&self) -> ::windows::runtime::Result<u32> {
2933         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2934         unsafe {
2935             let mut result__: u32 = ::std::mem::zeroed();
2936             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
2937         }
2938     }
LineWidth(&self) -> ::windows::runtime::Result<u32>2939     pub fn LineWidth(&self) -> ::windows::runtime::Result<u32> {
2940         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2941         unsafe {
2942             let mut result__: u32 = ::std::mem::zeroed();
2943             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
2944         }
2945     }
SetIsLetterQuality(&self, value: bool) -> ::windows::runtime::Result<()>2946     pub fn SetIsLetterQuality(&self, value: bool) -> ::windows::runtime::Result<()> {
2947         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2948         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
2949     }
IsLetterQuality(&self) -> ::windows::runtime::Result<bool>2950     pub fn IsLetterQuality(&self) -> ::windows::runtime::Result<bool> {
2951         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2952         unsafe {
2953             let mut result__: bool = ::std::mem::zeroed();
2954             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2955         }
2956     }
IsPaperNearEnd(&self) -> ::windows::runtime::Result<bool>2957     pub fn IsPaperNearEnd(&self) -> ::windows::runtime::Result<bool> {
2958         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2959         unsafe {
2960             let mut result__: bool = ::std::mem::zeroed();
2961             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2962         }
2963     }
SetColorCartridge(&self, value: PosPrinterColorCartridge) -> ::windows::runtime::Result<()>2964     pub fn SetColorCartridge(&self, value: PosPrinterColorCartridge) -> ::windows::runtime::Result<()> {
2965         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2966         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), value).ok() }
2967     }
ColorCartridge(&self) -> ::windows::runtime::Result<PosPrinterColorCartridge>2968     pub fn ColorCartridge(&self) -> ::windows::runtime::Result<PosPrinterColorCartridge> {
2969         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2970         unsafe {
2971             let mut result__: PosPrinterColorCartridge = ::std::mem::zeroed();
2972             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterColorCartridge>(result__)
2973         }
2974     }
IsCoverOpen(&self) -> ::windows::runtime::Result<bool>2975     pub fn IsCoverOpen(&self) -> ::windows::runtime::Result<bool> {
2976         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2977         unsafe {
2978             let mut result__: bool = ::std::mem::zeroed();
2979             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2980         }
2981     }
IsCartridgeRemoved(&self) -> ::windows::runtime::Result<bool>2982     pub fn IsCartridgeRemoved(&self) -> ::windows::runtime::Result<bool> {
2983         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2984         unsafe {
2985             let mut result__: bool = ::std::mem::zeroed();
2986             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2987         }
2988     }
IsCartridgeEmpty(&self) -> ::windows::runtime::Result<bool>2989     pub fn IsCartridgeEmpty(&self) -> ::windows::runtime::Result<bool> {
2990         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2991         unsafe {
2992             let mut result__: bool = ::std::mem::zeroed();
2993             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2994         }
2995     }
IsHeadCleaning(&self) -> ::windows::runtime::Result<bool>2996     pub fn IsHeadCleaning(&self) -> ::windows::runtime::Result<bool> {
2997         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
2998         unsafe {
2999             let mut result__: bool = ::std::mem::zeroed();
3000             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3001         }
3002     }
IsPaperEmpty(&self) -> ::windows::runtime::Result<bool>3003     pub fn IsPaperEmpty(&self) -> ::windows::runtime::Result<bool> {
3004         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
3005         unsafe {
3006             let mut result__: bool = ::std::mem::zeroed();
3007             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3008         }
3009     }
IsReadyToPrint(&self) -> ::windows::runtime::Result<bool>3010     pub fn IsReadyToPrint(&self) -> ::windows::runtime::Result<bool> {
3011         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
3012         unsafe {
3013             let mut result__: bool = ::std::mem::zeroed();
3014             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3015         }
3016     }
ValidateData<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<bool>3017     pub fn ValidateData<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<bool> {
3018         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
3019         unsafe {
3020             let mut result__: bool = ::std::mem::zeroed();
3021             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), data.into_param().abi(), &mut result__).from_abi::<bool>(result__)
3022         }
3023     }
3024 }
3025 unsafe impl ::windows::runtime::RuntimeType for ClaimedJournalPrinter {
3026     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedJournalPrinter;{67ea0630-517d-487f-9fdf-d2e0a0a264a5})");
3027 }
3028 unsafe impl ::windows::runtime::Interface for ClaimedJournalPrinter {
3029     type Vtable = IClaimedJournalPrinter_abi;
3030     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1743390256, 20861, 18559, [159, 223, 210, 224, 160, 162, 100, 165]);
3031 }
3032 impl ::windows::runtime::RuntimeName for ClaimedJournalPrinter {
3033     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedJournalPrinter";
3034 }
3035 impl ::std::convert::From<ClaimedJournalPrinter> for ::windows::runtime::IUnknown {
from(value: ClaimedJournalPrinter) -> Self3036     fn from(value: ClaimedJournalPrinter) -> Self {
3037         unsafe { ::std::mem::transmute(value) }
3038     }
3039 }
3040 impl ::std::convert::From<&ClaimedJournalPrinter> for ::windows::runtime::IUnknown {
from(value: &ClaimedJournalPrinter) -> Self3041     fn from(value: &ClaimedJournalPrinter) -> Self {
3042         ::std::convert::From::from(::std::clone::Clone::clone(value))
3043     }
3044 }
3045 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedJournalPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3046     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3047         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3048     }
3049 }
3050 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedJournalPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3051     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3052         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3053     }
3054 }
3055 impl ::std::convert::From<ClaimedJournalPrinter> for ::windows::runtime::IInspectable {
from(value: ClaimedJournalPrinter) -> Self3056     fn from(value: ClaimedJournalPrinter) -> Self {
3057         value.0
3058     }
3059 }
3060 impl ::std::convert::From<&ClaimedJournalPrinter> for ::windows::runtime::IInspectable {
from(value: &ClaimedJournalPrinter) -> Self3061     fn from(value: &ClaimedJournalPrinter) -> Self {
3062         value.0.clone()
3063     }
3064 }
3065 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedJournalPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3066     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3067         ::windows::runtime::Param::Owned(self.0)
3068     }
3069 }
3070 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedJournalPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3071     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3072         ::windows::runtime::Param::Borrowed(&self.0)
3073     }
3074 }
3075 impl ::std::convert::TryFrom<ClaimedJournalPrinter> for ICommonClaimedPosPrinterStation {
3076     type Error = ::windows::runtime::Error;
try_from(value: ClaimedJournalPrinter) -> ::windows::runtime::Result<Self>3077     fn try_from(value: ClaimedJournalPrinter) -> ::windows::runtime::Result<Self> {
3078         ::std::convert::TryFrom::try_from(&value)
3079     }
3080 }
3081 impl ::std::convert::TryFrom<&ClaimedJournalPrinter> for ICommonClaimedPosPrinterStation {
3082     type Error = ::windows::runtime::Error;
try_from(value: &ClaimedJournalPrinter) -> ::windows::runtime::Result<Self>3083     fn try_from(value: &ClaimedJournalPrinter) -> ::windows::runtime::Result<Self> {
3084         ::windows::runtime::Interface::cast(value)
3085     }
3086 }
3087 impl<'a> ::windows::runtime::IntoParam<'a, ICommonClaimedPosPrinterStation> for ClaimedJournalPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation>3088     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation> {
3089         ::windows::runtime::IntoParam::into_param(&self)
3090     }
3091 }
3092 impl<'a> ::windows::runtime::IntoParam<'a, ICommonClaimedPosPrinterStation> for &ClaimedJournalPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation>3093     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation> {
3094         ::std::convert::TryInto::<ICommonClaimedPosPrinterStation>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
3095     }
3096 }
3097 unsafe impl ::std::marker::Send for ClaimedJournalPrinter {}
3098 unsafe impl ::std::marker::Sync for ClaimedJournalPrinter {}
3099 #[repr(transparent)]
3100 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3101 pub struct ClaimedLineDisplay(::windows::runtime::IInspectable);
3102 impl ClaimedLineDisplay {
3103     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>3104     pub fn Close(&self) -> ::windows::runtime::Result<()> {
3105         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
3106         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
3107     }
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3108     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3109         let this = self;
3110         unsafe {
3111             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3112             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3113         }
3114     }
Capabilities(&self) -> ::windows::runtime::Result<LineDisplayCapabilities>3115     pub fn Capabilities(&self) -> ::windows::runtime::Result<LineDisplayCapabilities> {
3116         let this = self;
3117         unsafe {
3118             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3119             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayCapabilities>(result__)
3120         }
3121     }
PhysicalDeviceName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3122     pub fn PhysicalDeviceName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3123         let this = self;
3124         unsafe {
3125             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3126             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3127         }
3128     }
PhysicalDeviceDescription(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3129     pub fn PhysicalDeviceDescription(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3130         let this = self;
3131         unsafe {
3132             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3133             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3134         }
3135     }
DeviceControlDescription(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3136     pub fn DeviceControlDescription(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3137         let this = self;
3138         unsafe {
3139             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3140             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3141         }
3142     }
DeviceControlVersion(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3143     pub fn DeviceControlVersion(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3144         let this = self;
3145         unsafe {
3146             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3147             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3148         }
3149     }
DeviceServiceVersion(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3150     pub fn DeviceServiceVersion(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3151         let this = self;
3152         unsafe {
3153             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3154             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3155         }
3156     }
DefaultWindow(&self) -> ::windows::runtime::Result<LineDisplayWindow>3157     pub fn DefaultWindow(&self) -> ::windows::runtime::Result<LineDisplayWindow> {
3158         let this = self;
3159         unsafe {
3160             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3161             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayWindow>(result__)
3162         }
3163     }
RetainDevice(&self) -> ::windows::runtime::Result<()>3164     pub fn RetainDevice(&self) -> ::windows::runtime::Result<()> {
3165         let this = self;
3166         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
3167     }
3168     #[cfg(feature = "Foundation")]
ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedLineDisplay, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3169     pub fn ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedLineDisplay, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3170         let this = self;
3171         unsafe {
3172             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3173             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3174         }
3175     }
3176     #[cfg(feature = "Foundation")]
RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3177     pub fn RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3178         let this = self;
3179         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3180     }
3181     #[cfg(feature = "Foundation")]
FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedLineDisplay>>3182     pub fn FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedLineDisplay>> {
3183         Self::IClaimedLineDisplayStatics(|this| unsafe {
3184             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3185             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), deviceid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<ClaimedLineDisplay>>(result__)
3186         })
3187     }
GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING>3188     pub fn GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3189         Self::IClaimedLineDisplayStatics(|this| unsafe {
3190             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3191             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3192         })
3193     }
GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3194     pub fn GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3195         Self::IClaimedLineDisplayStatics(|this| unsafe {
3196             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3197             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), connectiontypes, &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3198         })
3199     }
3200     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>3201     pub fn GetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>> {
3202         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3203         unsafe {
3204             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3205             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), statisticscategories.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>(result__)
3206         }
3207     }
3208     #[cfg(feature = "Foundation")]
CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>3209     pub fn CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>> {
3210         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3211         unsafe {
3212             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3213             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), level, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>(result__)
3214         }
3215     }
3216     #[cfg(feature = "Foundation")]
CheckPowerStatusAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayPowerStatus>>3217     pub fn CheckPowerStatusAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayPowerStatus>> {
3218         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3219         unsafe {
3220             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3221             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<LineDisplayPowerStatus>>(result__)
3222         }
3223     }
3224     #[cfg(feature = "Foundation")]
StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedLineDisplay, LineDisplayStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3225     pub fn StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedLineDisplay, LineDisplayStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3226         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3227         unsafe {
3228             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3229             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3230         }
3231     }
3232     #[cfg(feature = "Foundation")]
RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3233     pub fn RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3234         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3235         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3236     }
3237     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
SupportedScreenSizesInCharacters(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<super::super::Foundation::Size>>3238     pub fn SupportedScreenSizesInCharacters(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<super::super::Foundation::Size>> {
3239         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3240         unsafe {
3241             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3242             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<super::super::Foundation::Size>>(result__)
3243         }
3244     }
3245     #[cfg(feature = "Foundation")]
MaxBitmapSizeInPixels(&self) -> ::windows::runtime::Result<super::super::Foundation::Size>3246     pub fn MaxBitmapSizeInPixels(&self) -> ::windows::runtime::Result<super::super::Foundation::Size> {
3247         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3248         unsafe {
3249             let mut result__: super::super::Foundation::Size = ::std::mem::zeroed();
3250             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Size>(result__)
3251         }
3252     }
3253     #[cfg(feature = "Foundation_Collections")]
SupportedCharacterSets(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<i32>>3254     pub fn SupportedCharacterSets(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<i32>> {
3255         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3256         unsafe {
3257             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3258             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<i32>>(result__)
3259         }
3260     }
CustomGlyphs(&self) -> ::windows::runtime::Result<LineDisplayCustomGlyphs>3261     pub fn CustomGlyphs(&self) -> ::windows::runtime::Result<LineDisplayCustomGlyphs> {
3262         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3263         unsafe {
3264             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3265             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayCustomGlyphs>(result__)
3266         }
3267     }
GetAttributes(&self) -> ::windows::runtime::Result<LineDisplayAttributes>3268     pub fn GetAttributes(&self) -> ::windows::runtime::Result<LineDisplayAttributes> {
3269         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3270         unsafe {
3271             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3272             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayAttributes>(result__)
3273         }
3274     }
3275     #[cfg(feature = "Foundation")]
TryUpdateAttributesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, LineDisplayAttributes>>(&self, attributes: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>3276     pub fn TryUpdateAttributesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, LineDisplayAttributes>>(&self, attributes: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
3277         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3278         unsafe {
3279             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3280             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), attributes.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
3281         }
3282     }
3283     #[cfg(feature = "Foundation")]
TrySetDescriptorAsync(&self, descriptor: u32, descriptorstate: LineDisplayDescriptorState) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>3284     pub fn TrySetDescriptorAsync(&self, descriptor: u32, descriptorstate: LineDisplayDescriptorState) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
3285         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3286         unsafe {
3287             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3288             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), descriptor, descriptorstate, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
3289         }
3290     }
3291     #[cfg(feature = "Foundation")]
TryClearDescriptorsAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>3292     pub fn TryClearDescriptorsAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
3293         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3294         unsafe {
3295             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3296             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
3297         }
3298     }
3299     #[cfg(feature = "Foundation")]
TryCreateWindowAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Rect>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Size>>(&self, viewport: Param0, windowsize: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayWindow>>3300     pub fn TryCreateWindowAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Rect>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Size>>(&self, viewport: Param0, windowsize: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayWindow>> {
3301         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3302         unsafe {
3303             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3304             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), viewport.into_param().abi(), windowsize.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<LineDisplayWindow>>(result__)
3305         }
3306     }
3307     #[cfg(all(feature = "Foundation", feature = "Storage"))]
TryStoreStorageFileBitmapAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayStoredBitmap>>3308     pub fn TryStoreStorageFileBitmapAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayStoredBitmap>> {
3309         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3310         unsafe {
3311             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3312             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<LineDisplayStoredBitmap>>(result__)
3313         }
3314     }
3315     #[cfg(all(feature = "Foundation", feature = "Storage"))]
TryStoreStorageFileBitmapWithAlignmentAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayStoredBitmap>>3316     pub fn TryStoreStorageFileBitmapWithAlignmentAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayStoredBitmap>> {
3317         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3318         unsafe {
3319             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3320             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), horizontalalignment, verticalalignment, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<LineDisplayStoredBitmap>>(result__)
3321         }
3322     }
3323     #[cfg(all(feature = "Foundation", feature = "Storage"))]
TryStoreStorageFileBitmapWithAlignmentAndWidthAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment, widthinpixels: i32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayStoredBitmap>>3324     pub fn TryStoreStorageFileBitmapWithAlignmentAndWidthAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment, widthinpixels: i32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayStoredBitmap>> {
3325         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay2>(self)?;
3326         unsafe {
3327             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3328             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), horizontalalignment, verticalalignment, widthinpixels, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<LineDisplayStoredBitmap>>(result__)
3329         }
3330     }
3331     #[cfg(feature = "Foundation")]
Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedLineDisplay, ClaimedLineDisplayClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3332     pub fn Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedLineDisplay, ClaimedLineDisplayClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3333         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay3>(self)?;
3334         unsafe {
3335             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3336             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3337         }
3338     }
3339     #[cfg(feature = "Foundation")]
RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3340     pub fn RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3341         let this = &::windows::runtime::Interface::cast::<IClaimedLineDisplay3>(self)?;
3342         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3343     }
IClaimedLineDisplayStatics<R, F: FnOnce(&IClaimedLineDisplayStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>3344     pub fn IClaimedLineDisplayStatics<R, F: FnOnce(&IClaimedLineDisplayStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3345         static mut SHARED: ::windows::runtime::FactoryCache<ClaimedLineDisplay, IClaimedLineDisplayStatics> = ::windows::runtime::FactoryCache::new();
3346         unsafe { SHARED.call(callback) }
3347     }
3348 }
3349 unsafe impl ::windows::runtime::RuntimeType for ClaimedLineDisplay {
3350     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedLineDisplay;{120ac970-9a75-4acf-aae7-09972bcf8794})");
3351 }
3352 unsafe impl ::windows::runtime::Interface for ClaimedLineDisplay {
3353     type Vtable = IClaimedLineDisplay_abi;
3354     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(302696816, 39541, 19151, [170, 231, 9, 151, 43, 207, 135, 148]);
3355 }
3356 impl ::windows::runtime::RuntimeName for ClaimedLineDisplay {
3357     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedLineDisplay";
3358 }
3359 impl ::std::convert::From<ClaimedLineDisplay> for ::windows::runtime::IUnknown {
from(value: ClaimedLineDisplay) -> Self3360     fn from(value: ClaimedLineDisplay) -> Self {
3361         unsafe { ::std::mem::transmute(value) }
3362     }
3363 }
3364 impl ::std::convert::From<&ClaimedLineDisplay> for ::windows::runtime::IUnknown {
from(value: &ClaimedLineDisplay) -> Self3365     fn from(value: &ClaimedLineDisplay) -> Self {
3366         ::std::convert::From::from(::std::clone::Clone::clone(value))
3367     }
3368 }
3369 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedLineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3370     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3371         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3372     }
3373 }
3374 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedLineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3375     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3376         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3377     }
3378 }
3379 impl ::std::convert::From<ClaimedLineDisplay> for ::windows::runtime::IInspectable {
from(value: ClaimedLineDisplay) -> Self3380     fn from(value: ClaimedLineDisplay) -> Self {
3381         value.0
3382     }
3383 }
3384 impl ::std::convert::From<&ClaimedLineDisplay> for ::windows::runtime::IInspectable {
from(value: &ClaimedLineDisplay) -> Self3385     fn from(value: &ClaimedLineDisplay) -> Self {
3386         value.0.clone()
3387     }
3388 }
3389 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedLineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3390     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3391         ::windows::runtime::Param::Owned(self.0)
3392     }
3393 }
3394 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedLineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3395     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3396         ::windows::runtime::Param::Borrowed(&self.0)
3397     }
3398 }
3399 #[cfg(feature = "Foundation")]
3400 impl ::std::convert::TryFrom<ClaimedLineDisplay> for super::super::Foundation::IClosable {
3401     type Error = ::windows::runtime::Error;
try_from(value: ClaimedLineDisplay) -> ::windows::runtime::Result<Self>3402     fn try_from(value: ClaimedLineDisplay) -> ::windows::runtime::Result<Self> {
3403         ::std::convert::TryFrom::try_from(&value)
3404     }
3405 }
3406 #[cfg(feature = "Foundation")]
3407 impl ::std::convert::TryFrom<&ClaimedLineDisplay> for super::super::Foundation::IClosable {
3408     type Error = ::windows::runtime::Error;
try_from(value: &ClaimedLineDisplay) -> ::windows::runtime::Result<Self>3409     fn try_from(value: &ClaimedLineDisplay) -> ::windows::runtime::Result<Self> {
3410         ::windows::runtime::Interface::cast(value)
3411     }
3412 }
3413 #[cfg(feature = "Foundation")]
3414 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for ClaimedLineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>3415     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
3416         ::windows::runtime::IntoParam::into_param(&self)
3417     }
3418 }
3419 #[cfg(feature = "Foundation")]
3420 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &ClaimedLineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>3421     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
3422         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
3423     }
3424 }
3425 unsafe impl ::std::marker::Send for ClaimedLineDisplay {}
3426 unsafe impl ::std::marker::Sync for ClaimedLineDisplay {}
3427 #[repr(transparent)]
3428 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3429 pub struct ClaimedLineDisplayClosedEventArgs(::windows::runtime::IInspectable);
3430 impl ClaimedLineDisplayClosedEventArgs {}
3431 unsafe impl ::windows::runtime::RuntimeType for ClaimedLineDisplayClosedEventArgs {
3432     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedLineDisplayClosedEventArgs;{f915f364-d3d5-4f10-b511-90939edfacd8})");
3433 }
3434 unsafe impl ::windows::runtime::Interface for ClaimedLineDisplayClosedEventArgs {
3435     type Vtable = IClaimedLineDisplayClosedEventArgs_abi;
3436     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4178965348, 54229, 20240, [181, 17, 144, 147, 158, 223, 172, 216]);
3437 }
3438 impl ::windows::runtime::RuntimeName for ClaimedLineDisplayClosedEventArgs {
3439     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedLineDisplayClosedEventArgs";
3440 }
3441 impl ::std::convert::From<ClaimedLineDisplayClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: ClaimedLineDisplayClosedEventArgs) -> Self3442     fn from(value: ClaimedLineDisplayClosedEventArgs) -> Self {
3443         unsafe { ::std::mem::transmute(value) }
3444     }
3445 }
3446 impl ::std::convert::From<&ClaimedLineDisplayClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: &ClaimedLineDisplayClosedEventArgs) -> Self3447     fn from(value: &ClaimedLineDisplayClosedEventArgs) -> Self {
3448         ::std::convert::From::from(::std::clone::Clone::clone(value))
3449     }
3450 }
3451 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedLineDisplayClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3452     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3453         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3454     }
3455 }
3456 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedLineDisplayClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3457     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3458         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3459     }
3460 }
3461 impl ::std::convert::From<ClaimedLineDisplayClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: ClaimedLineDisplayClosedEventArgs) -> Self3462     fn from(value: ClaimedLineDisplayClosedEventArgs) -> Self {
3463         value.0
3464     }
3465 }
3466 impl ::std::convert::From<&ClaimedLineDisplayClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: &ClaimedLineDisplayClosedEventArgs) -> Self3467     fn from(value: &ClaimedLineDisplayClosedEventArgs) -> Self {
3468         value.0.clone()
3469     }
3470 }
3471 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedLineDisplayClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3472     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3473         ::windows::runtime::Param::Owned(self.0)
3474     }
3475 }
3476 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedLineDisplayClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3477     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3478         ::windows::runtime::Param::Borrowed(&self.0)
3479     }
3480 }
3481 unsafe impl ::std::marker::Send for ClaimedLineDisplayClosedEventArgs {}
3482 unsafe impl ::std::marker::Sync for ClaimedLineDisplayClosedEventArgs {}
3483 #[repr(transparent)]
3484 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3485 pub struct ClaimedMagneticStripeReader(::windows::runtime::IInspectable);
3486 impl ClaimedMagneticStripeReader {
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3487     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3488         let this = self;
3489         unsafe {
3490             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3491             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3492         }
3493     }
IsEnabled(&self) -> ::windows::runtime::Result<bool>3494     pub fn IsEnabled(&self) -> ::windows::runtime::Result<bool> {
3495         let this = self;
3496         unsafe {
3497             let mut result__: bool = ::std::mem::zeroed();
3498             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3499         }
3500     }
SetIsDisabledOnDataReceived(&self, value: bool) -> ::windows::runtime::Result<()>3501     pub fn SetIsDisabledOnDataReceived(&self, value: bool) -> ::windows::runtime::Result<()> {
3502         let this = self;
3503         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
3504     }
IsDisabledOnDataReceived(&self) -> ::windows::runtime::Result<bool>3505     pub fn IsDisabledOnDataReceived(&self) -> ::windows::runtime::Result<bool> {
3506         let this = self;
3507         unsafe {
3508             let mut result__: bool = ::std::mem::zeroed();
3509             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3510         }
3511     }
SetIsDecodeDataEnabled(&self, value: bool) -> ::windows::runtime::Result<()>3512     pub fn SetIsDecodeDataEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
3513         let this = self;
3514         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
3515     }
IsDecodeDataEnabled(&self) -> ::windows::runtime::Result<bool>3516     pub fn IsDecodeDataEnabled(&self) -> ::windows::runtime::Result<bool> {
3517         let this = self;
3518         unsafe {
3519             let mut result__: bool = ::std::mem::zeroed();
3520             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3521         }
3522     }
IsDeviceAuthenticated(&self) -> ::windows::runtime::Result<bool>3523     pub fn IsDeviceAuthenticated(&self) -> ::windows::runtime::Result<bool> {
3524         let this = self;
3525         unsafe {
3526             let mut result__: bool = ::std::mem::zeroed();
3527             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3528         }
3529     }
SetDataEncryptionAlgorithm(&self, value: u32) -> ::windows::runtime::Result<()>3530     pub fn SetDataEncryptionAlgorithm(&self, value: u32) -> ::windows::runtime::Result<()> {
3531         let this = self;
3532         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
3533     }
DataEncryptionAlgorithm(&self) -> ::windows::runtime::Result<u32>3534     pub fn DataEncryptionAlgorithm(&self) -> ::windows::runtime::Result<u32> {
3535         let this = self;
3536         unsafe {
3537             let mut result__: u32 = ::std::mem::zeroed();
3538             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
3539         }
3540     }
SetTracksToRead(&self, value: MagneticStripeReaderTrackIds) -> ::windows::runtime::Result<()>3541     pub fn SetTracksToRead(&self, value: MagneticStripeReaderTrackIds) -> ::windows::runtime::Result<()> {
3542         let this = self;
3543         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
3544     }
TracksToRead(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackIds>3545     pub fn TracksToRead(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackIds> {
3546         let this = self;
3547         unsafe {
3548             let mut result__: MagneticStripeReaderTrackIds = ::std::mem::zeroed();
3549             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderTrackIds>(result__)
3550         }
3551     }
SetIsTransmitSentinelsEnabled(&self, value: bool) -> ::windows::runtime::Result<()>3552     pub fn SetIsTransmitSentinelsEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
3553         let this = self;
3554         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
3555     }
IsTransmitSentinelsEnabled(&self) -> ::windows::runtime::Result<bool>3556     pub fn IsTransmitSentinelsEnabled(&self) -> ::windows::runtime::Result<bool> {
3557         let this = self;
3558         unsafe {
3559             let mut result__: bool = ::std::mem::zeroed();
3560             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3561         }
3562     }
3563     #[cfg(feature = "Foundation")]
EnableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>3564     pub fn EnableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
3565         let this = self;
3566         unsafe {
3567             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3568             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
3569         }
3570     }
3571     #[cfg(feature = "Foundation")]
DisableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>3572     pub fn DisableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
3573         let this = self;
3574         unsafe {
3575             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3576             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
3577         }
3578     }
RetainDevice(&self) -> ::windows::runtime::Result<()>3579     pub fn RetainDevice(&self) -> ::windows::runtime::Result<()> {
3580         let this = self;
3581         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this)).ok() }
3582     }
SetErrorReportingType(&self, value: MagneticStripeReaderErrorReportingType) -> ::windows::runtime::Result<()>3583     pub fn SetErrorReportingType(&self, value: MagneticStripeReaderErrorReportingType) -> ::windows::runtime::Result<()> {
3584         let this = self;
3585         unsafe { (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), value).ok() }
3586     }
3587     #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
RetrieveDeviceAuthenticationDataAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Storage::Streams::IBuffer>>3588     pub fn RetrieveDeviceAuthenticationDataAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Storage::Streams::IBuffer>> {
3589         let this = self;
3590         unsafe {
3591             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3592             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Storage::Streams::IBuffer>>(result__)
3593         }
3594     }
3595     #[cfg(feature = "Foundation")]
AuthenticateDeviceAsync(&self, responsetoken: &[<u8 as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>3596     pub fn AuthenticateDeviceAsync(&self, responsetoken: &[<u8 as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
3597         let this = self;
3598         unsafe {
3599             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3600             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), responsetoken.len() as u32, ::std::mem::transmute(responsetoken.as_ptr()), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
3601         }
3602     }
3603     #[cfg(feature = "Foundation")]
DeAuthenticateDeviceAsync(&self, responsetoken: &[<u8 as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>3604     pub fn DeAuthenticateDeviceAsync(&self, responsetoken: &[<u8 as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
3605         let this = self;
3606         unsafe {
3607             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3608             (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), responsetoken.len() as u32, ::std::mem::transmute(responsetoken.as_ptr()), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
3609         }
3610     }
3611     #[cfg(feature = "Foundation")]
UpdateKeyAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, key: Param0, keyname: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>3612     pub fn UpdateKeyAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, key: Param0, keyname: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
3613         let this = self;
3614         unsafe {
3615             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3616             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), key.into_param().abi(), keyname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
3617         }
3618     }
3619     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
ResetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>3620     pub fn ResetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
3621         let this = self;
3622         unsafe {
3623             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3624             (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), statisticscategories.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
3625         }
3626     }
3627     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
UpdateStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Collections::IKeyValuePair<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>>>(&self, statistics: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>3628     pub fn UpdateStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Collections::IKeyValuePair<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>>>(&self, statistics: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
3629         let this = self;
3630         unsafe {
3631             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3632             (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), statistics.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
3633         }
3634     }
3635     #[cfg(feature = "Foundation")]
BankCardDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, MagneticStripeReaderBankCardDataReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3636     pub fn BankCardDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, MagneticStripeReaderBankCardDataReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3637         let this = self;
3638         unsafe {
3639             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3640             (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3641         }
3642     }
3643     #[cfg(feature = "Foundation")]
RemoveBankCardDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3644     pub fn RemoveBankCardDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3645         let this = self;
3646         unsafe { (::windows::runtime::Interface::vtable(this).30)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3647     }
3648     #[cfg(feature = "Foundation")]
AamvaCardDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, MagneticStripeReaderAamvaCardDataReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3649     pub fn AamvaCardDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, MagneticStripeReaderAamvaCardDataReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3650         let this = self;
3651         unsafe {
3652             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3653             (::windows::runtime::Interface::vtable(this).31)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3654         }
3655     }
3656     #[cfg(feature = "Foundation")]
RemoveAamvaCardDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3657     pub fn RemoveAamvaCardDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3658         let this = self;
3659         unsafe { (::windows::runtime::Interface::vtable(this).32)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3660     }
3661     #[cfg(feature = "Foundation")]
VendorSpecificDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3662     pub fn VendorSpecificDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3663         let this = self;
3664         unsafe {
3665             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3666             (::windows::runtime::Interface::vtable(this).33)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3667         }
3668     }
3669     #[cfg(feature = "Foundation")]
RemoveVendorSpecificDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3670     pub fn RemoveVendorSpecificDataReceived<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3671         let this = self;
3672         unsafe { (::windows::runtime::Interface::vtable(this).34)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3673     }
3674     #[cfg(feature = "Foundation")]
ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventHandler<ClaimedMagneticStripeReader>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3675     pub fn ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventHandler<ClaimedMagneticStripeReader>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3676         let this = self;
3677         unsafe {
3678             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3679             (::windows::runtime::Interface::vtable(this).35)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3680         }
3681     }
3682     #[cfg(feature = "Foundation")]
RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3683     pub fn RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3684         let this = self;
3685         unsafe { (::windows::runtime::Interface::vtable(this).36)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3686     }
3687     #[cfg(feature = "Foundation")]
ErrorOccurred<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, MagneticStripeReaderErrorOccurredEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3688     pub fn ErrorOccurred<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, MagneticStripeReaderErrorOccurredEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3689         let this = self;
3690         unsafe {
3691             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3692             (::windows::runtime::Interface::vtable(this).37)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3693         }
3694     }
3695     #[cfg(feature = "Foundation")]
RemoveErrorOccurred<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3696     pub fn RemoveErrorOccurred<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3697         let this = self;
3698         unsafe { (::windows::runtime::Interface::vtable(this).38)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3699     }
3700     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>3701     pub fn Close(&self) -> ::windows::runtime::Result<()> {
3702         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
3703         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
3704     }
3705     #[cfg(feature = "Foundation")]
Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, ClaimedMagneticStripeReaderClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3706     pub fn Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedMagneticStripeReader, ClaimedMagneticStripeReaderClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3707         let this = &::windows::runtime::Interface::cast::<IClaimedMagneticStripeReader2>(self)?;
3708         unsafe {
3709             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3710             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3711         }
3712     }
3713     #[cfg(feature = "Foundation")]
RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3714     pub fn RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3715         let this = &::windows::runtime::Interface::cast::<IClaimedMagneticStripeReader2>(self)?;
3716         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3717     }
3718 }
3719 unsafe impl ::windows::runtime::RuntimeType for ClaimedMagneticStripeReader {
3720     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedMagneticStripeReader;{475ca8f3-9417-48bc-b9d7-4163a7844c02})");
3721 }
3722 unsafe impl ::windows::runtime::Interface for ClaimedMagneticStripeReader {
3723     type Vtable = IClaimedMagneticStripeReader_abi;
3724     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1197254899, 37911, 18620, [185, 215, 65, 99, 167, 132, 76, 2]);
3725 }
3726 impl ::windows::runtime::RuntimeName for ClaimedMagneticStripeReader {
3727     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedMagneticStripeReader";
3728 }
3729 impl ::std::convert::From<ClaimedMagneticStripeReader> for ::windows::runtime::IUnknown {
from(value: ClaimedMagneticStripeReader) -> Self3730     fn from(value: ClaimedMagneticStripeReader) -> Self {
3731         unsafe { ::std::mem::transmute(value) }
3732     }
3733 }
3734 impl ::std::convert::From<&ClaimedMagneticStripeReader> for ::windows::runtime::IUnknown {
from(value: &ClaimedMagneticStripeReader) -> Self3735     fn from(value: &ClaimedMagneticStripeReader) -> Self {
3736         ::std::convert::From::from(::std::clone::Clone::clone(value))
3737     }
3738 }
3739 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedMagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3740     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3741         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3742     }
3743 }
3744 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedMagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3745     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3746         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3747     }
3748 }
3749 impl ::std::convert::From<ClaimedMagneticStripeReader> for ::windows::runtime::IInspectable {
from(value: ClaimedMagneticStripeReader) -> Self3750     fn from(value: ClaimedMagneticStripeReader) -> Self {
3751         value.0
3752     }
3753 }
3754 impl ::std::convert::From<&ClaimedMagneticStripeReader> for ::windows::runtime::IInspectable {
from(value: &ClaimedMagneticStripeReader) -> Self3755     fn from(value: &ClaimedMagneticStripeReader) -> Self {
3756         value.0.clone()
3757     }
3758 }
3759 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedMagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3760     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3761         ::windows::runtime::Param::Owned(self.0)
3762     }
3763 }
3764 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedMagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3765     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3766         ::windows::runtime::Param::Borrowed(&self.0)
3767     }
3768 }
3769 #[cfg(feature = "Foundation")]
3770 impl ::std::convert::TryFrom<ClaimedMagneticStripeReader> for super::super::Foundation::IClosable {
3771     type Error = ::windows::runtime::Error;
try_from(value: ClaimedMagneticStripeReader) -> ::windows::runtime::Result<Self>3772     fn try_from(value: ClaimedMagneticStripeReader) -> ::windows::runtime::Result<Self> {
3773         ::std::convert::TryFrom::try_from(&value)
3774     }
3775 }
3776 #[cfg(feature = "Foundation")]
3777 impl ::std::convert::TryFrom<&ClaimedMagneticStripeReader> for super::super::Foundation::IClosable {
3778     type Error = ::windows::runtime::Error;
try_from(value: &ClaimedMagneticStripeReader) -> ::windows::runtime::Result<Self>3779     fn try_from(value: &ClaimedMagneticStripeReader) -> ::windows::runtime::Result<Self> {
3780         ::windows::runtime::Interface::cast(value)
3781     }
3782 }
3783 #[cfg(feature = "Foundation")]
3784 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for ClaimedMagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>3785     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
3786         ::windows::runtime::IntoParam::into_param(&self)
3787     }
3788 }
3789 #[cfg(feature = "Foundation")]
3790 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &ClaimedMagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>3791     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
3792         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
3793     }
3794 }
3795 unsafe impl ::std::marker::Send for ClaimedMagneticStripeReader {}
3796 unsafe impl ::std::marker::Sync for ClaimedMagneticStripeReader {}
3797 #[repr(transparent)]
3798 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3799 pub struct ClaimedMagneticStripeReaderClosedEventArgs(::windows::runtime::IInspectable);
3800 impl ClaimedMagneticStripeReaderClosedEventArgs {}
3801 unsafe impl ::windows::runtime::RuntimeType for ClaimedMagneticStripeReaderClosedEventArgs {
3802     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedMagneticStripeReaderClosedEventArgs;{14ada93a-adcd-4c80-acda-c3eaed2647e1})");
3803 }
3804 unsafe impl ::windows::runtime::Interface for ClaimedMagneticStripeReaderClosedEventArgs {
3805     type Vtable = IClaimedMagneticStripeReaderClosedEventArgs_abi;
3806     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(346925370, 44493, 19584, [172, 218, 195, 234, 237, 38, 71, 225]);
3807 }
3808 impl ::windows::runtime::RuntimeName for ClaimedMagneticStripeReaderClosedEventArgs {
3809     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedMagneticStripeReaderClosedEventArgs";
3810 }
3811 impl ::std::convert::From<ClaimedMagneticStripeReaderClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: ClaimedMagneticStripeReaderClosedEventArgs) -> Self3812     fn from(value: ClaimedMagneticStripeReaderClosedEventArgs) -> Self {
3813         unsafe { ::std::mem::transmute(value) }
3814     }
3815 }
3816 impl ::std::convert::From<&ClaimedMagneticStripeReaderClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: &ClaimedMagneticStripeReaderClosedEventArgs) -> Self3817     fn from(value: &ClaimedMagneticStripeReaderClosedEventArgs) -> Self {
3818         ::std::convert::From::from(::std::clone::Clone::clone(value))
3819     }
3820 }
3821 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedMagneticStripeReaderClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3822     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3823         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3824     }
3825 }
3826 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedMagneticStripeReaderClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3827     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3828         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3829     }
3830 }
3831 impl ::std::convert::From<ClaimedMagneticStripeReaderClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: ClaimedMagneticStripeReaderClosedEventArgs) -> Self3832     fn from(value: ClaimedMagneticStripeReaderClosedEventArgs) -> Self {
3833         value.0
3834     }
3835 }
3836 impl ::std::convert::From<&ClaimedMagneticStripeReaderClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: &ClaimedMagneticStripeReaderClosedEventArgs) -> Self3837     fn from(value: &ClaimedMagneticStripeReaderClosedEventArgs) -> Self {
3838         value.0.clone()
3839     }
3840 }
3841 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedMagneticStripeReaderClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3842     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3843         ::windows::runtime::Param::Owned(self.0)
3844     }
3845 }
3846 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedMagneticStripeReaderClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3847     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3848         ::windows::runtime::Param::Borrowed(&self.0)
3849     }
3850 }
3851 unsafe impl ::std::marker::Send for ClaimedMagneticStripeReaderClosedEventArgs {}
3852 unsafe impl ::std::marker::Sync for ClaimedMagneticStripeReaderClosedEventArgs {}
3853 #[repr(transparent)]
3854 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3855 pub struct ClaimedPosPrinter(::windows::runtime::IInspectable);
3856 impl ClaimedPosPrinter {
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3857     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3858         let this = self;
3859         unsafe {
3860             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3861             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3862         }
3863     }
IsEnabled(&self) -> ::windows::runtime::Result<bool>3864     pub fn IsEnabled(&self) -> ::windows::runtime::Result<bool> {
3865         let this = self;
3866         unsafe {
3867             let mut result__: bool = ::std::mem::zeroed();
3868             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3869         }
3870     }
SetCharacterSet(&self, value: u32) -> ::windows::runtime::Result<()>3871     pub fn SetCharacterSet(&self, value: u32) -> ::windows::runtime::Result<()> {
3872         let this = self;
3873         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
3874     }
CharacterSet(&self) -> ::windows::runtime::Result<u32>3875     pub fn CharacterSet(&self) -> ::windows::runtime::Result<u32> {
3876         let this = self;
3877         unsafe {
3878             let mut result__: u32 = ::std::mem::zeroed();
3879             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
3880         }
3881     }
IsCoverOpen(&self) -> ::windows::runtime::Result<bool>3882     pub fn IsCoverOpen(&self) -> ::windows::runtime::Result<bool> {
3883         let this = self;
3884         unsafe {
3885             let mut result__: bool = ::std::mem::zeroed();
3886             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3887         }
3888     }
SetIsCharacterSetMappingEnabled(&self, value: bool) -> ::windows::runtime::Result<()>3889     pub fn SetIsCharacterSetMappingEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
3890         let this = self;
3891         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
3892     }
IsCharacterSetMappingEnabled(&self) -> ::windows::runtime::Result<bool>3893     pub fn IsCharacterSetMappingEnabled(&self) -> ::windows::runtime::Result<bool> {
3894         let this = self;
3895         unsafe {
3896             let mut result__: bool = ::std::mem::zeroed();
3897             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3898         }
3899     }
SetMapMode(&self, value: PosPrinterMapMode) -> ::windows::runtime::Result<()>3900     pub fn SetMapMode(&self, value: PosPrinterMapMode) -> ::windows::runtime::Result<()> {
3901         let this = self;
3902         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
3903     }
MapMode(&self) -> ::windows::runtime::Result<PosPrinterMapMode>3904     pub fn MapMode(&self) -> ::windows::runtime::Result<PosPrinterMapMode> {
3905         let this = self;
3906         unsafe {
3907             let mut result__: PosPrinterMapMode = ::std::mem::zeroed();
3908             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterMapMode>(result__)
3909         }
3910     }
Receipt(&self) -> ::windows::runtime::Result<ClaimedReceiptPrinter>3911     pub fn Receipt(&self) -> ::windows::runtime::Result<ClaimedReceiptPrinter> {
3912         let this = self;
3913         unsafe {
3914             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3915             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ClaimedReceiptPrinter>(result__)
3916         }
3917     }
Slip(&self) -> ::windows::runtime::Result<ClaimedSlipPrinter>3918     pub fn Slip(&self) -> ::windows::runtime::Result<ClaimedSlipPrinter> {
3919         let this = self;
3920         unsafe {
3921             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3922             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ClaimedSlipPrinter>(result__)
3923         }
3924     }
Journal(&self) -> ::windows::runtime::Result<ClaimedJournalPrinter>3925     pub fn Journal(&self) -> ::windows::runtime::Result<ClaimedJournalPrinter> {
3926         let this = self;
3927         unsafe {
3928             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3929             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ClaimedJournalPrinter>(result__)
3930         }
3931     }
3932     #[cfg(feature = "Foundation")]
EnableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>3933     pub fn EnableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
3934         let this = self;
3935         unsafe {
3936             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3937             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
3938         }
3939     }
3940     #[cfg(feature = "Foundation")]
DisableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>3941     pub fn DisableAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
3942         let this = self;
3943         unsafe {
3944             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3945             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
3946         }
3947     }
3948     #[cfg(feature = "Foundation")]
RetainDeviceAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>3949     pub fn RetainDeviceAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
3950         let this = self;
3951         unsafe {
3952             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3953             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
3954         }
3955     }
3956     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
ResetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>3957     pub fn ResetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
3958         let this = self;
3959         unsafe {
3960             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3961             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), statisticscategories.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
3962         }
3963     }
3964     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
UpdateStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Collections::IKeyValuePair<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>>>(&self, statistics: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>3965     pub fn UpdateStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Collections::IKeyValuePair<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>>>(&self, statistics: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
3966         let this = self;
3967         unsafe {
3968             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3969             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), statistics.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
3970         }
3971     }
3972     #[cfg(feature = "Foundation")]
ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedPosPrinter, PosPrinterReleaseDeviceRequestedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3973     pub fn ReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedPosPrinter, PosPrinterReleaseDeviceRequestedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3974         let this = self;
3975         unsafe {
3976             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3977             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3978         }
3979     }
3980     #[cfg(feature = "Foundation")]
RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3981     pub fn RemoveReleaseDeviceRequested<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3982         let this = self;
3983         unsafe { (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3984     }
3985     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>3986     pub fn Close(&self) -> ::windows::runtime::Result<()> {
3987         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
3988         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
3989     }
3990     #[cfg(feature = "Foundation")]
Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedPosPrinter, ClaimedPosPrinterClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3991     pub fn Closed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<ClaimedPosPrinter, ClaimedPosPrinterClosedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3992         let this = &::windows::runtime::Interface::cast::<IClaimedPosPrinter2>(self)?;
3993         unsafe {
3994             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3995             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3996         }
3997     }
3998     #[cfg(feature = "Foundation")]
RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3999     pub fn RemoveClosed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
4000         let this = &::windows::runtime::Interface::cast::<IClaimedPosPrinter2>(self)?;
4001         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
4002     }
4003 }
4004 unsafe impl ::windows::runtime::RuntimeType for ClaimedPosPrinter {
4005     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedPosPrinter;{6d64ce0c-e03e-4b14-a38e-c28c34b86353})");
4006 }
4007 unsafe impl ::windows::runtime::Interface for ClaimedPosPrinter {
4008     type Vtable = IClaimedPosPrinter_abi;
4009     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1835322892, 57406, 19220, [163, 142, 194, 140, 52, 184, 99, 83]);
4010 }
4011 impl ::windows::runtime::RuntimeName for ClaimedPosPrinter {
4012     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedPosPrinter";
4013 }
4014 impl ::std::convert::From<ClaimedPosPrinter> for ::windows::runtime::IUnknown {
from(value: ClaimedPosPrinter) -> Self4015     fn from(value: ClaimedPosPrinter) -> Self {
4016         unsafe { ::std::mem::transmute(value) }
4017     }
4018 }
4019 impl ::std::convert::From<&ClaimedPosPrinter> for ::windows::runtime::IUnknown {
from(value: &ClaimedPosPrinter) -> Self4020     fn from(value: &ClaimedPosPrinter) -> Self {
4021         ::std::convert::From::from(::std::clone::Clone::clone(value))
4022     }
4023 }
4024 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedPosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4025     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4026         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4027     }
4028 }
4029 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedPosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4030     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4031         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4032     }
4033 }
4034 impl ::std::convert::From<ClaimedPosPrinter> for ::windows::runtime::IInspectable {
from(value: ClaimedPosPrinter) -> Self4035     fn from(value: ClaimedPosPrinter) -> Self {
4036         value.0
4037     }
4038 }
4039 impl ::std::convert::From<&ClaimedPosPrinter> for ::windows::runtime::IInspectable {
from(value: &ClaimedPosPrinter) -> Self4040     fn from(value: &ClaimedPosPrinter) -> Self {
4041         value.0.clone()
4042     }
4043 }
4044 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedPosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4045     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4046         ::windows::runtime::Param::Owned(self.0)
4047     }
4048 }
4049 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedPosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4050     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4051         ::windows::runtime::Param::Borrowed(&self.0)
4052     }
4053 }
4054 #[cfg(feature = "Foundation")]
4055 impl ::std::convert::TryFrom<ClaimedPosPrinter> for super::super::Foundation::IClosable {
4056     type Error = ::windows::runtime::Error;
try_from(value: ClaimedPosPrinter) -> ::windows::runtime::Result<Self>4057     fn try_from(value: ClaimedPosPrinter) -> ::windows::runtime::Result<Self> {
4058         ::std::convert::TryFrom::try_from(&value)
4059     }
4060 }
4061 #[cfg(feature = "Foundation")]
4062 impl ::std::convert::TryFrom<&ClaimedPosPrinter> for super::super::Foundation::IClosable {
4063     type Error = ::windows::runtime::Error;
try_from(value: &ClaimedPosPrinter) -> ::windows::runtime::Result<Self>4064     fn try_from(value: &ClaimedPosPrinter) -> ::windows::runtime::Result<Self> {
4065         ::windows::runtime::Interface::cast(value)
4066     }
4067 }
4068 #[cfg(feature = "Foundation")]
4069 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for ClaimedPosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>4070     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
4071         ::windows::runtime::IntoParam::into_param(&self)
4072     }
4073 }
4074 #[cfg(feature = "Foundation")]
4075 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &ClaimedPosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>4076     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
4077         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
4078     }
4079 }
4080 unsafe impl ::std::marker::Send for ClaimedPosPrinter {}
4081 unsafe impl ::std::marker::Sync for ClaimedPosPrinter {}
4082 #[repr(transparent)]
4083 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4084 pub struct ClaimedPosPrinterClosedEventArgs(::windows::runtime::IInspectable);
4085 impl ClaimedPosPrinterClosedEventArgs {}
4086 unsafe impl ::windows::runtime::RuntimeType for ClaimedPosPrinterClosedEventArgs {
4087     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedPosPrinterClosedEventArgs;{e2b7a27b-4d40-471d-92ed-63375b18c788})");
4088 }
4089 unsafe impl ::windows::runtime::Interface for ClaimedPosPrinterClosedEventArgs {
4090     type Vtable = IClaimedPosPrinterClosedEventArgs_abi;
4091     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3803685499, 19776, 18205, [146, 237, 99, 55, 91, 24, 199, 136]);
4092 }
4093 impl ::windows::runtime::RuntimeName for ClaimedPosPrinterClosedEventArgs {
4094     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedPosPrinterClosedEventArgs";
4095 }
4096 impl ::std::convert::From<ClaimedPosPrinterClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: ClaimedPosPrinterClosedEventArgs) -> Self4097     fn from(value: ClaimedPosPrinterClosedEventArgs) -> Self {
4098         unsafe { ::std::mem::transmute(value) }
4099     }
4100 }
4101 impl ::std::convert::From<&ClaimedPosPrinterClosedEventArgs> for ::windows::runtime::IUnknown {
from(value: &ClaimedPosPrinterClosedEventArgs) -> Self4102     fn from(value: &ClaimedPosPrinterClosedEventArgs) -> Self {
4103         ::std::convert::From::from(::std::clone::Clone::clone(value))
4104     }
4105 }
4106 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedPosPrinterClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4107     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4108         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4109     }
4110 }
4111 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedPosPrinterClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4112     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4113         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4114     }
4115 }
4116 impl ::std::convert::From<ClaimedPosPrinterClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: ClaimedPosPrinterClosedEventArgs) -> Self4117     fn from(value: ClaimedPosPrinterClosedEventArgs) -> Self {
4118         value.0
4119     }
4120 }
4121 impl ::std::convert::From<&ClaimedPosPrinterClosedEventArgs> for ::windows::runtime::IInspectable {
from(value: &ClaimedPosPrinterClosedEventArgs) -> Self4122     fn from(value: &ClaimedPosPrinterClosedEventArgs) -> Self {
4123         value.0.clone()
4124     }
4125 }
4126 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedPosPrinterClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4127     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4128         ::windows::runtime::Param::Owned(self.0)
4129     }
4130 }
4131 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedPosPrinterClosedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4132     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4133         ::windows::runtime::Param::Borrowed(&self.0)
4134     }
4135 }
4136 unsafe impl ::std::marker::Send for ClaimedPosPrinterClosedEventArgs {}
4137 unsafe impl ::std::marker::Sync for ClaimedPosPrinterClosedEventArgs {}
4138 #[repr(transparent)]
4139 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4140 pub struct ClaimedReceiptPrinter(::windows::runtime::IInspectable);
4141 impl ClaimedReceiptPrinter {
SidewaysMaxLines(&self) -> ::windows::runtime::Result<u32>4142     pub fn SidewaysMaxLines(&self) -> ::windows::runtime::Result<u32> {
4143         let this = self;
4144         unsafe {
4145             let mut result__: u32 = ::std::mem::zeroed();
4146             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4147         }
4148     }
SidewaysMaxChars(&self) -> ::windows::runtime::Result<u32>4149     pub fn SidewaysMaxChars(&self) -> ::windows::runtime::Result<u32> {
4150         let this = self;
4151         unsafe {
4152             let mut result__: u32 = ::std::mem::zeroed();
4153             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4154         }
4155     }
LinesToPaperCut(&self) -> ::windows::runtime::Result<u32>4156     pub fn LinesToPaperCut(&self) -> ::windows::runtime::Result<u32> {
4157         let this = self;
4158         unsafe {
4159             let mut result__: u32 = ::std::mem::zeroed();
4160             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4161         }
4162     }
4163     #[cfg(feature = "Foundation")]
PageSize(&self) -> ::windows::runtime::Result<super::super::Foundation::Size>4164     pub fn PageSize(&self) -> ::windows::runtime::Result<super::super::Foundation::Size> {
4165         let this = self;
4166         unsafe {
4167             let mut result__: super::super::Foundation::Size = ::std::mem::zeroed();
4168             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Size>(result__)
4169         }
4170     }
4171     #[cfg(feature = "Foundation")]
PrintArea(&self) -> ::windows::runtime::Result<super::super::Foundation::Rect>4172     pub fn PrintArea(&self) -> ::windows::runtime::Result<super::super::Foundation::Rect> {
4173         let this = self;
4174         unsafe {
4175             let mut result__: super::super::Foundation::Rect = ::std::mem::zeroed();
4176             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Rect>(result__)
4177         }
4178     }
CreateJob(&self) -> ::windows::runtime::Result<ReceiptPrintJob>4179     pub fn CreateJob(&self) -> ::windows::runtime::Result<ReceiptPrintJob> {
4180         let this = self;
4181         unsafe {
4182             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4183             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ReceiptPrintJob>(result__)
4184         }
4185     }
SetCharactersPerLine(&self, value: u32) -> ::windows::runtime::Result<()>4186     pub fn SetCharactersPerLine(&self, value: u32) -> ::windows::runtime::Result<()> {
4187         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4188         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
4189     }
CharactersPerLine(&self) -> ::windows::runtime::Result<u32>4190     pub fn CharactersPerLine(&self) -> ::windows::runtime::Result<u32> {
4191         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4192         unsafe {
4193             let mut result__: u32 = ::std::mem::zeroed();
4194             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4195         }
4196     }
SetLineHeight(&self, value: u32) -> ::windows::runtime::Result<()>4197     pub fn SetLineHeight(&self, value: u32) -> ::windows::runtime::Result<()> {
4198         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4199         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
4200     }
LineHeight(&self) -> ::windows::runtime::Result<u32>4201     pub fn LineHeight(&self) -> ::windows::runtime::Result<u32> {
4202         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4203         unsafe {
4204             let mut result__: u32 = ::std::mem::zeroed();
4205             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4206         }
4207     }
SetLineSpacing(&self, value: u32) -> ::windows::runtime::Result<()>4208     pub fn SetLineSpacing(&self, value: u32) -> ::windows::runtime::Result<()> {
4209         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4210         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
4211     }
LineSpacing(&self) -> ::windows::runtime::Result<u32>4212     pub fn LineSpacing(&self) -> ::windows::runtime::Result<u32> {
4213         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4214         unsafe {
4215             let mut result__: u32 = ::std::mem::zeroed();
4216             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4217         }
4218     }
LineWidth(&self) -> ::windows::runtime::Result<u32>4219     pub fn LineWidth(&self) -> ::windows::runtime::Result<u32> {
4220         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4221         unsafe {
4222             let mut result__: u32 = ::std::mem::zeroed();
4223             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4224         }
4225     }
SetIsLetterQuality(&self, value: bool) -> ::windows::runtime::Result<()>4226     pub fn SetIsLetterQuality(&self, value: bool) -> ::windows::runtime::Result<()> {
4227         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4228         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
4229     }
IsLetterQuality(&self) -> ::windows::runtime::Result<bool>4230     pub fn IsLetterQuality(&self) -> ::windows::runtime::Result<bool> {
4231         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4232         unsafe {
4233             let mut result__: bool = ::std::mem::zeroed();
4234             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4235         }
4236     }
IsPaperNearEnd(&self) -> ::windows::runtime::Result<bool>4237     pub fn IsPaperNearEnd(&self) -> ::windows::runtime::Result<bool> {
4238         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4239         unsafe {
4240             let mut result__: bool = ::std::mem::zeroed();
4241             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4242         }
4243     }
SetColorCartridge(&self, value: PosPrinterColorCartridge) -> ::windows::runtime::Result<()>4244     pub fn SetColorCartridge(&self, value: PosPrinterColorCartridge) -> ::windows::runtime::Result<()> {
4245         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4246         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), value).ok() }
4247     }
ColorCartridge(&self) -> ::windows::runtime::Result<PosPrinterColorCartridge>4248     pub fn ColorCartridge(&self) -> ::windows::runtime::Result<PosPrinterColorCartridge> {
4249         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4250         unsafe {
4251             let mut result__: PosPrinterColorCartridge = ::std::mem::zeroed();
4252             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterColorCartridge>(result__)
4253         }
4254     }
IsCoverOpen(&self) -> ::windows::runtime::Result<bool>4255     pub fn IsCoverOpen(&self) -> ::windows::runtime::Result<bool> {
4256         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4257         unsafe {
4258             let mut result__: bool = ::std::mem::zeroed();
4259             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4260         }
4261     }
IsCartridgeRemoved(&self) -> ::windows::runtime::Result<bool>4262     pub fn IsCartridgeRemoved(&self) -> ::windows::runtime::Result<bool> {
4263         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4264         unsafe {
4265             let mut result__: bool = ::std::mem::zeroed();
4266             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4267         }
4268     }
IsCartridgeEmpty(&self) -> ::windows::runtime::Result<bool>4269     pub fn IsCartridgeEmpty(&self) -> ::windows::runtime::Result<bool> {
4270         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4271         unsafe {
4272             let mut result__: bool = ::std::mem::zeroed();
4273             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4274         }
4275     }
IsHeadCleaning(&self) -> ::windows::runtime::Result<bool>4276     pub fn IsHeadCleaning(&self) -> ::windows::runtime::Result<bool> {
4277         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4278         unsafe {
4279             let mut result__: bool = ::std::mem::zeroed();
4280             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4281         }
4282     }
IsPaperEmpty(&self) -> ::windows::runtime::Result<bool>4283     pub fn IsPaperEmpty(&self) -> ::windows::runtime::Result<bool> {
4284         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4285         unsafe {
4286             let mut result__: bool = ::std::mem::zeroed();
4287             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4288         }
4289     }
IsReadyToPrint(&self) -> ::windows::runtime::Result<bool>4290     pub fn IsReadyToPrint(&self) -> ::windows::runtime::Result<bool> {
4291         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4292         unsafe {
4293             let mut result__: bool = ::std::mem::zeroed();
4294             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4295         }
4296     }
ValidateData<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<bool>4297     pub fn ValidateData<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<bool> {
4298         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4299         unsafe {
4300             let mut result__: bool = ::std::mem::zeroed();
4301             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), data.into_param().abi(), &mut result__).from_abi::<bool>(result__)
4302         }
4303     }
4304 }
4305 unsafe impl ::windows::runtime::RuntimeType for ClaimedReceiptPrinter {
4306     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedReceiptPrinter;{9ad27a74-dd61-4ee2-9837-5b5d72d538b9})");
4307 }
4308 unsafe impl ::windows::runtime::Interface for ClaimedReceiptPrinter {
4309     type Vtable = IClaimedReceiptPrinter_abi;
4310     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2597485172, 56673, 20194, [152, 55, 91, 93, 114, 213, 56, 185]);
4311 }
4312 impl ::windows::runtime::RuntimeName for ClaimedReceiptPrinter {
4313     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedReceiptPrinter";
4314 }
4315 impl ::std::convert::From<ClaimedReceiptPrinter> for ::windows::runtime::IUnknown {
from(value: ClaimedReceiptPrinter) -> Self4316     fn from(value: ClaimedReceiptPrinter) -> Self {
4317         unsafe { ::std::mem::transmute(value) }
4318     }
4319 }
4320 impl ::std::convert::From<&ClaimedReceiptPrinter> for ::windows::runtime::IUnknown {
from(value: &ClaimedReceiptPrinter) -> Self4321     fn from(value: &ClaimedReceiptPrinter) -> Self {
4322         ::std::convert::From::from(::std::clone::Clone::clone(value))
4323     }
4324 }
4325 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedReceiptPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4326     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4327         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4328     }
4329 }
4330 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedReceiptPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4331     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4332         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4333     }
4334 }
4335 impl ::std::convert::From<ClaimedReceiptPrinter> for ::windows::runtime::IInspectable {
from(value: ClaimedReceiptPrinter) -> Self4336     fn from(value: ClaimedReceiptPrinter) -> Self {
4337         value.0
4338     }
4339 }
4340 impl ::std::convert::From<&ClaimedReceiptPrinter> for ::windows::runtime::IInspectable {
from(value: &ClaimedReceiptPrinter) -> Self4341     fn from(value: &ClaimedReceiptPrinter) -> Self {
4342         value.0.clone()
4343     }
4344 }
4345 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedReceiptPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4346     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4347         ::windows::runtime::Param::Owned(self.0)
4348     }
4349 }
4350 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedReceiptPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4351     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4352         ::windows::runtime::Param::Borrowed(&self.0)
4353     }
4354 }
4355 impl ::std::convert::TryFrom<ClaimedReceiptPrinter> for ICommonClaimedPosPrinterStation {
4356     type Error = ::windows::runtime::Error;
try_from(value: ClaimedReceiptPrinter) -> ::windows::runtime::Result<Self>4357     fn try_from(value: ClaimedReceiptPrinter) -> ::windows::runtime::Result<Self> {
4358         ::std::convert::TryFrom::try_from(&value)
4359     }
4360 }
4361 impl ::std::convert::TryFrom<&ClaimedReceiptPrinter> for ICommonClaimedPosPrinterStation {
4362     type Error = ::windows::runtime::Error;
try_from(value: &ClaimedReceiptPrinter) -> ::windows::runtime::Result<Self>4363     fn try_from(value: &ClaimedReceiptPrinter) -> ::windows::runtime::Result<Self> {
4364         ::windows::runtime::Interface::cast(value)
4365     }
4366 }
4367 impl<'a> ::windows::runtime::IntoParam<'a, ICommonClaimedPosPrinterStation> for ClaimedReceiptPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation>4368     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation> {
4369         ::windows::runtime::IntoParam::into_param(&self)
4370     }
4371 }
4372 impl<'a> ::windows::runtime::IntoParam<'a, ICommonClaimedPosPrinterStation> for &ClaimedReceiptPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation>4373     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation> {
4374         ::std::convert::TryInto::<ICommonClaimedPosPrinterStation>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
4375     }
4376 }
4377 unsafe impl ::std::marker::Send for ClaimedReceiptPrinter {}
4378 unsafe impl ::std::marker::Sync for ClaimedReceiptPrinter {}
4379 #[repr(transparent)]
4380 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4381 pub struct ClaimedSlipPrinter(::windows::runtime::IInspectable);
4382 impl ClaimedSlipPrinter {
SidewaysMaxLines(&self) -> ::windows::runtime::Result<u32>4383     pub fn SidewaysMaxLines(&self) -> ::windows::runtime::Result<u32> {
4384         let this = self;
4385         unsafe {
4386             let mut result__: u32 = ::std::mem::zeroed();
4387             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4388         }
4389     }
SidewaysMaxChars(&self) -> ::windows::runtime::Result<u32>4390     pub fn SidewaysMaxChars(&self) -> ::windows::runtime::Result<u32> {
4391         let this = self;
4392         unsafe {
4393             let mut result__: u32 = ::std::mem::zeroed();
4394             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4395         }
4396     }
MaxLines(&self) -> ::windows::runtime::Result<u32>4397     pub fn MaxLines(&self) -> ::windows::runtime::Result<u32> {
4398         let this = self;
4399         unsafe {
4400             let mut result__: u32 = ::std::mem::zeroed();
4401             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4402         }
4403     }
LinesNearEndToEnd(&self) -> ::windows::runtime::Result<u32>4404     pub fn LinesNearEndToEnd(&self) -> ::windows::runtime::Result<u32> {
4405         let this = self;
4406         unsafe {
4407             let mut result__: u32 = ::std::mem::zeroed();
4408             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4409         }
4410     }
PrintSide(&self) -> ::windows::runtime::Result<PosPrinterPrintSide>4411     pub fn PrintSide(&self) -> ::windows::runtime::Result<PosPrinterPrintSide> {
4412         let this = self;
4413         unsafe {
4414             let mut result__: PosPrinterPrintSide = ::std::mem::zeroed();
4415             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterPrintSide>(result__)
4416         }
4417     }
4418     #[cfg(feature = "Foundation")]
PageSize(&self) -> ::windows::runtime::Result<super::super::Foundation::Size>4419     pub fn PageSize(&self) -> ::windows::runtime::Result<super::super::Foundation::Size> {
4420         let this = self;
4421         unsafe {
4422             let mut result__: super::super::Foundation::Size = ::std::mem::zeroed();
4423             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Size>(result__)
4424         }
4425     }
4426     #[cfg(feature = "Foundation")]
PrintArea(&self) -> ::windows::runtime::Result<super::super::Foundation::Rect>4427     pub fn PrintArea(&self) -> ::windows::runtime::Result<super::super::Foundation::Rect> {
4428         let this = self;
4429         unsafe {
4430             let mut result__: super::super::Foundation::Rect = ::std::mem::zeroed();
4431             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Rect>(result__)
4432         }
4433     }
OpenJaws(&self) -> ::windows::runtime::Result<()>4434     pub fn OpenJaws(&self) -> ::windows::runtime::Result<()> {
4435         let this = self;
4436         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this)).ok() }
4437     }
CloseJaws(&self) -> ::windows::runtime::Result<()>4438     pub fn CloseJaws(&self) -> ::windows::runtime::Result<()> {
4439         let this = self;
4440         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
4441     }
4442     #[cfg(feature = "Foundation")]
InsertSlipAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, timeout: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>4443     pub fn InsertSlipAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, timeout: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
4444         let this = self;
4445         unsafe {
4446             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4447             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), timeout.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
4448         }
4449     }
4450     #[cfg(feature = "Foundation")]
RemoveSlipAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, timeout: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>4451     pub fn RemoveSlipAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, timeout: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
4452         let this = self;
4453         unsafe {
4454             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4455             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), timeout.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
4456         }
4457     }
ChangePrintSide(&self, printside: PosPrinterPrintSide) -> ::windows::runtime::Result<()>4458     pub fn ChangePrintSide(&self, printside: PosPrinterPrintSide) -> ::windows::runtime::Result<()> {
4459         let this = self;
4460         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), printside).ok() }
4461     }
CreateJob(&self) -> ::windows::runtime::Result<SlipPrintJob>4462     pub fn CreateJob(&self) -> ::windows::runtime::Result<SlipPrintJob> {
4463         let this = self;
4464         unsafe {
4465             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4466             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SlipPrintJob>(result__)
4467         }
4468     }
SetCharactersPerLine(&self, value: u32) -> ::windows::runtime::Result<()>4469     pub fn SetCharactersPerLine(&self, value: u32) -> ::windows::runtime::Result<()> {
4470         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4471         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
4472     }
CharactersPerLine(&self) -> ::windows::runtime::Result<u32>4473     pub fn CharactersPerLine(&self) -> ::windows::runtime::Result<u32> {
4474         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4475         unsafe {
4476             let mut result__: u32 = ::std::mem::zeroed();
4477             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4478         }
4479     }
SetLineHeight(&self, value: u32) -> ::windows::runtime::Result<()>4480     pub fn SetLineHeight(&self, value: u32) -> ::windows::runtime::Result<()> {
4481         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4482         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
4483     }
LineHeight(&self) -> ::windows::runtime::Result<u32>4484     pub fn LineHeight(&self) -> ::windows::runtime::Result<u32> {
4485         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4486         unsafe {
4487             let mut result__: u32 = ::std::mem::zeroed();
4488             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4489         }
4490     }
SetLineSpacing(&self, value: u32) -> ::windows::runtime::Result<()>4491     pub fn SetLineSpacing(&self, value: u32) -> ::windows::runtime::Result<()> {
4492         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4493         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
4494     }
LineSpacing(&self) -> ::windows::runtime::Result<u32>4495     pub fn LineSpacing(&self) -> ::windows::runtime::Result<u32> {
4496         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4497         unsafe {
4498             let mut result__: u32 = ::std::mem::zeroed();
4499             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4500         }
4501     }
LineWidth(&self) -> ::windows::runtime::Result<u32>4502     pub fn LineWidth(&self) -> ::windows::runtime::Result<u32> {
4503         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4504         unsafe {
4505             let mut result__: u32 = ::std::mem::zeroed();
4506             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4507         }
4508     }
SetIsLetterQuality(&self, value: bool) -> ::windows::runtime::Result<()>4509     pub fn SetIsLetterQuality(&self, value: bool) -> ::windows::runtime::Result<()> {
4510         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4511         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
4512     }
IsLetterQuality(&self) -> ::windows::runtime::Result<bool>4513     pub fn IsLetterQuality(&self) -> ::windows::runtime::Result<bool> {
4514         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4515         unsafe {
4516             let mut result__: bool = ::std::mem::zeroed();
4517             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4518         }
4519     }
IsPaperNearEnd(&self) -> ::windows::runtime::Result<bool>4520     pub fn IsPaperNearEnd(&self) -> ::windows::runtime::Result<bool> {
4521         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4522         unsafe {
4523             let mut result__: bool = ::std::mem::zeroed();
4524             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4525         }
4526     }
SetColorCartridge(&self, value: PosPrinterColorCartridge) -> ::windows::runtime::Result<()>4527     pub fn SetColorCartridge(&self, value: PosPrinterColorCartridge) -> ::windows::runtime::Result<()> {
4528         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4529         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), value).ok() }
4530     }
ColorCartridge(&self) -> ::windows::runtime::Result<PosPrinterColorCartridge>4531     pub fn ColorCartridge(&self) -> ::windows::runtime::Result<PosPrinterColorCartridge> {
4532         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4533         unsafe {
4534             let mut result__: PosPrinterColorCartridge = ::std::mem::zeroed();
4535             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterColorCartridge>(result__)
4536         }
4537     }
IsCoverOpen(&self) -> ::windows::runtime::Result<bool>4538     pub fn IsCoverOpen(&self) -> ::windows::runtime::Result<bool> {
4539         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4540         unsafe {
4541             let mut result__: bool = ::std::mem::zeroed();
4542             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4543         }
4544     }
IsCartridgeRemoved(&self) -> ::windows::runtime::Result<bool>4545     pub fn IsCartridgeRemoved(&self) -> ::windows::runtime::Result<bool> {
4546         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4547         unsafe {
4548             let mut result__: bool = ::std::mem::zeroed();
4549             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4550         }
4551     }
IsCartridgeEmpty(&self) -> ::windows::runtime::Result<bool>4552     pub fn IsCartridgeEmpty(&self) -> ::windows::runtime::Result<bool> {
4553         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4554         unsafe {
4555             let mut result__: bool = ::std::mem::zeroed();
4556             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4557         }
4558     }
IsHeadCleaning(&self) -> ::windows::runtime::Result<bool>4559     pub fn IsHeadCleaning(&self) -> ::windows::runtime::Result<bool> {
4560         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4561         unsafe {
4562             let mut result__: bool = ::std::mem::zeroed();
4563             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4564         }
4565     }
IsPaperEmpty(&self) -> ::windows::runtime::Result<bool>4566     pub fn IsPaperEmpty(&self) -> ::windows::runtime::Result<bool> {
4567         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4568         unsafe {
4569             let mut result__: bool = ::std::mem::zeroed();
4570             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4571         }
4572     }
IsReadyToPrint(&self) -> ::windows::runtime::Result<bool>4573     pub fn IsReadyToPrint(&self) -> ::windows::runtime::Result<bool> {
4574         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4575         unsafe {
4576             let mut result__: bool = ::std::mem::zeroed();
4577             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4578         }
4579     }
ValidateData<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<bool>4580     pub fn ValidateData<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<bool> {
4581         let this = &::windows::runtime::Interface::cast::<ICommonClaimedPosPrinterStation>(self)?;
4582         unsafe {
4583             let mut result__: bool = ::std::mem::zeroed();
4584             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), data.into_param().abi(), &mut result__).from_abi::<bool>(result__)
4585         }
4586     }
4587 }
4588 unsafe impl ::windows::runtime::RuntimeType for ClaimedSlipPrinter {
4589     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ClaimedSlipPrinter;{bd5deff2-af90-4e8a-b77b-e3ae9ca63a7f})");
4590 }
4591 unsafe impl ::windows::runtime::Interface for ClaimedSlipPrinter {
4592     type Vtable = IClaimedSlipPrinter_abi;
4593     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3177050098, 44944, 20106, [183, 123, 227, 174, 156, 166, 58, 127]);
4594 }
4595 impl ::windows::runtime::RuntimeName for ClaimedSlipPrinter {
4596     const NAME: &'static str = "Windows.Devices.PointOfService.ClaimedSlipPrinter";
4597 }
4598 impl ::std::convert::From<ClaimedSlipPrinter> for ::windows::runtime::IUnknown {
from(value: ClaimedSlipPrinter) -> Self4599     fn from(value: ClaimedSlipPrinter) -> Self {
4600         unsafe { ::std::mem::transmute(value) }
4601     }
4602 }
4603 impl ::std::convert::From<&ClaimedSlipPrinter> for ::windows::runtime::IUnknown {
from(value: &ClaimedSlipPrinter) -> Self4604     fn from(value: &ClaimedSlipPrinter) -> Self {
4605         ::std::convert::From::from(::std::clone::Clone::clone(value))
4606     }
4607 }
4608 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ClaimedSlipPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4609     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4610         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4611     }
4612 }
4613 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ClaimedSlipPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4614     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4615         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4616     }
4617 }
4618 impl ::std::convert::From<ClaimedSlipPrinter> for ::windows::runtime::IInspectable {
from(value: ClaimedSlipPrinter) -> Self4619     fn from(value: ClaimedSlipPrinter) -> Self {
4620         value.0
4621     }
4622 }
4623 impl ::std::convert::From<&ClaimedSlipPrinter> for ::windows::runtime::IInspectable {
from(value: &ClaimedSlipPrinter) -> Self4624     fn from(value: &ClaimedSlipPrinter) -> Self {
4625         value.0.clone()
4626     }
4627 }
4628 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ClaimedSlipPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4629     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4630         ::windows::runtime::Param::Owned(self.0)
4631     }
4632 }
4633 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ClaimedSlipPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4634     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4635         ::windows::runtime::Param::Borrowed(&self.0)
4636     }
4637 }
4638 impl ::std::convert::TryFrom<ClaimedSlipPrinter> for ICommonClaimedPosPrinterStation {
4639     type Error = ::windows::runtime::Error;
try_from(value: ClaimedSlipPrinter) -> ::windows::runtime::Result<Self>4640     fn try_from(value: ClaimedSlipPrinter) -> ::windows::runtime::Result<Self> {
4641         ::std::convert::TryFrom::try_from(&value)
4642     }
4643 }
4644 impl ::std::convert::TryFrom<&ClaimedSlipPrinter> for ICommonClaimedPosPrinterStation {
4645     type Error = ::windows::runtime::Error;
try_from(value: &ClaimedSlipPrinter) -> ::windows::runtime::Result<Self>4646     fn try_from(value: &ClaimedSlipPrinter) -> ::windows::runtime::Result<Self> {
4647         ::windows::runtime::Interface::cast(value)
4648     }
4649 }
4650 impl<'a> ::windows::runtime::IntoParam<'a, ICommonClaimedPosPrinterStation> for ClaimedSlipPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation>4651     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation> {
4652         ::windows::runtime::IntoParam::into_param(&self)
4653     }
4654 }
4655 impl<'a> ::windows::runtime::IntoParam<'a, ICommonClaimedPosPrinterStation> for &ClaimedSlipPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation>4656     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonClaimedPosPrinterStation> {
4657         ::std::convert::TryInto::<ICommonClaimedPosPrinterStation>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
4658     }
4659 }
4660 unsafe impl ::std::marker::Send for ClaimedSlipPrinter {}
4661 unsafe impl ::std::marker::Sync for ClaimedSlipPrinter {}
4662 #[repr(transparent)]
4663 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4664 #[doc(hidden)]
4665 pub struct IBarcodeScanner(::windows::runtime::IInspectable);
4666 unsafe impl ::windows::runtime::Interface for IBarcodeScanner {
4667     type Vtable = IBarcodeScanner_abi;
4668     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3198369286, 45668, 20227, [169, 193, 69, 178, 15, 1, 19, 79]);
4669 }
4670 #[repr(C)]
4671 #[doc(hidden)]
4672 pub struct IBarcodeScanner_abi(
4673     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4674     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4675     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4676     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4677     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4678     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4679     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
4680     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4681     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4682     #[cfg(not(feature = "Foundation"))] usize,
4683     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, level: UnifiedPosHealthCheckLevel, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4684     #[cfg(not(feature = "Foundation"))] usize,
4685     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4686     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
4687     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, barcodesymbology: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4688     #[cfg(not(feature = "Foundation"))] usize,
4689     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections", feature = "Storage_Streams"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statisticscategories: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4690     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections", feature = "Storage_Streams")))] usize,
4691     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4692     #[cfg(not(feature = "Foundation_Collections"))] usize,
4693     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, profile: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut bool) -> ::windows::runtime::HRESULT,
4694     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
4695     #[cfg(not(feature = "Foundation"))] usize,
4696     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
4697     #[cfg(not(feature = "Foundation"))] usize,
4698 );
4699 #[repr(transparent)]
4700 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4701 #[doc(hidden)]
4702 pub struct IBarcodeScanner2(::windows::runtime::IInspectable);
4703 unsafe impl ::windows::runtime::Interface for IBarcodeScanner2 {
4704     type Vtable = IBarcodeScanner2_abi;
4705     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2300662119, 36078, 17261, [137, 171, 141, 251, 67, 187, 66, 134]);
4706 }
4707 #[repr(C)]
4708 #[doc(hidden)]
4709 pub struct IBarcodeScanner2_abi(
4710     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4711     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4712     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4713     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4714     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4715     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4716     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
4717 );
4718 #[repr(transparent)]
4719 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4720 #[doc(hidden)]
4721 pub struct IBarcodeScannerCapabilities(::windows::runtime::IInspectable);
4722 unsafe impl ::windows::runtime::Interface for IBarcodeScannerCapabilities {
4723     type Vtable = IBarcodeScannerCapabilities_abi;
4724     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3322319332, 62152, 17440, [163, 7, 177, 46, 246, 98, 40, 87]);
4725 }
4726 #[repr(C)]
4727 #[doc(hidden)]
4728 pub struct IBarcodeScannerCapabilities_abi(
4729     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4730     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4731     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4732     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4733     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4734     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4735     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut UnifiedPosPowerReportingType) -> ::windows::runtime::HRESULT,
4736     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
4737     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
4738     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
4739 );
4740 #[repr(transparent)]
4741 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4742 #[doc(hidden)]
4743 pub struct IBarcodeScannerCapabilities1(::windows::runtime::IInspectable);
4744 unsafe impl ::windows::runtime::Interface for IBarcodeScannerCapabilities1 {
4745     type Vtable = IBarcodeScannerCapabilities1_abi;
4746     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2388308969, 3628, 18223, [161, 204, 238, 128, 84, 182, 166, 132]);
4747 }
4748 #[repr(C)]
4749 #[doc(hidden)]
4750 pub struct IBarcodeScannerCapabilities1_abi(
4751     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4752     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4753     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4754     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4755     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4756     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4757     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
4758 );
4759 #[repr(transparent)]
4760 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4761 #[doc(hidden)]
4762 pub struct IBarcodeScannerCapabilities2(::windows::runtime::IInspectable);
4763 unsafe impl ::windows::runtime::Interface for IBarcodeScannerCapabilities2 {
4764     type Vtable = IBarcodeScannerCapabilities2_abi;
4765     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4061253612, 57761, 20136, [154, 188, 146, 177, 89, 98, 112, 171]);
4766 }
4767 #[repr(C)]
4768 #[doc(hidden)]
4769 pub struct IBarcodeScannerCapabilities2_abi(
4770     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4771     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4772     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4773     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4774     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4775     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4776     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
4777 );
4778 #[repr(transparent)]
4779 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4780 #[doc(hidden)]
4781 pub struct IBarcodeScannerDataReceivedEventArgs(::windows::runtime::IInspectable);
4782 unsafe impl ::windows::runtime::Interface for IBarcodeScannerDataReceivedEventArgs {
4783     type Vtable = IBarcodeScannerDataReceivedEventArgs_abi;
4784     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1110747106, 60823, 18045, [173, 43, 1, 228, 67, 19, 169, 41]);
4785 }
4786 #[repr(C)]
4787 #[doc(hidden)]
4788 pub struct IBarcodeScannerDataReceivedEventArgs_abi(
4789     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4790     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4791     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4792     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4793     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4794     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4795     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4796 );
4797 #[repr(transparent)]
4798 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4799 #[doc(hidden)]
4800 pub struct IBarcodeScannerErrorOccurredEventArgs(::windows::runtime::IInspectable);
4801 unsafe impl ::windows::runtime::Interface for IBarcodeScannerErrorOccurredEventArgs {
4802     type Vtable = IBarcodeScannerErrorOccurredEventArgs_abi;
4803     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(751984687, 53050, 16386, [167, 90, 197, 236, 70, 143, 10, 32]);
4804 }
4805 #[repr(C)]
4806 #[doc(hidden)]
4807 pub struct IBarcodeScannerErrorOccurredEventArgs_abi(
4808     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4809     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4810     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4811     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4812     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4813     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4814     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4815     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
4816     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4817 );
4818 #[repr(transparent)]
4819 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4820 #[doc(hidden)]
4821 pub struct IBarcodeScannerImagePreviewReceivedEventArgs(::windows::runtime::IInspectable);
4822 unsafe impl ::windows::runtime::Interface for IBarcodeScannerImagePreviewReceivedEventArgs {
4823     type Vtable = IBarcodeScannerImagePreviewReceivedEventArgs_abi;
4824     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4088913541, 28299, 17230, [159, 88, 6, 239, 38, 188, 75, 175]);
4825 }
4826 #[repr(C)]
4827 #[doc(hidden)]
4828 pub struct IBarcodeScannerImagePreviewReceivedEventArgs_abi(
4829     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4830     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4831     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4832     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4833     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4834     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4835     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4836     #[cfg(not(feature = "Storage_Streams"))] usize,
4837 );
4838 #[repr(transparent)]
4839 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4840 #[doc(hidden)]
4841 pub struct IBarcodeScannerReport(::windows::runtime::IInspectable);
4842 unsafe impl ::windows::runtime::Interface for IBarcodeScannerReport {
4843     type Vtable = IBarcodeScannerReport_abi;
4844     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1558501552, 42121, 19350, [134, 196, 240, 191, 138, 55, 117, 61]);
4845 }
4846 #[repr(C)]
4847 #[doc(hidden)]
4848 pub struct IBarcodeScannerReport_abi(
4849     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4850     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4851     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4852     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4853     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4854     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4855     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4856     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4857     #[cfg(not(feature = "Storage_Streams"))] usize,
4858     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4859     #[cfg(not(feature = "Storage_Streams"))] usize,
4860 );
4861 #[repr(transparent)]
4862 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4863 #[doc(hidden)]
4864 pub struct IBarcodeScannerReportFactory(::windows::runtime::IInspectable);
4865 unsafe impl ::windows::runtime::Interface for IBarcodeScannerReportFactory {
4866     type Vtable = IBarcodeScannerReportFactory_abi;
4867     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2723443494, 8211, 17788, [137, 99, 73, 193, 93, 202, 120, 206]);
4868 }
4869 #[repr(C)]
4870 #[doc(hidden)]
4871 pub struct IBarcodeScannerReportFactory_abi(
4872     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4873     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4874     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4875     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4876     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4877     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4878     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, scandatatype: u32, scandata: ::windows::runtime::RawPtr, scandatalabel: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4879     #[cfg(not(feature = "Storage_Streams"))] usize,
4880 );
4881 #[repr(transparent)]
4882 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4883 #[doc(hidden)]
4884 pub struct IBarcodeScannerStatics(::windows::runtime::IInspectable);
4885 unsafe impl ::windows::runtime::Interface for IBarcodeScannerStatics {
4886     type Vtable = IBarcodeScannerStatics_abi;
4887     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1561419631, 55881, 16872, [140, 140, 240, 203, 98, 169, 196, 252]);
4888 }
4889 #[repr(C)]
4890 #[doc(hidden)]
4891 pub struct IBarcodeScannerStatics_abi(
4892     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4893     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4894     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4895     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4896     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4897     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4898     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4899     #[cfg(not(feature = "Foundation"))] usize,
4900     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, deviceid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4901     #[cfg(not(feature = "Foundation"))] usize,
4902     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
4903 );
4904 #[repr(transparent)]
4905 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4906 #[doc(hidden)]
4907 pub struct IBarcodeScannerStatics2(::windows::runtime::IInspectable);
4908 unsafe impl ::windows::runtime::Interface for IBarcodeScannerStatics2 {
4909     type Vtable = IBarcodeScannerStatics2_abi;
4910     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3093636211, 41839, 16391, [177, 208, 39, 158, 190, 146, 166, 86]);
4911 }
4912 #[repr(C)]
4913 #[doc(hidden)]
4914 pub struct IBarcodeScannerStatics2_abi(
4915     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4916     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4917     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4918     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4919     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4920     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4921     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, connectiontypes: PosConnectionTypes, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
4922 );
4923 #[repr(transparent)]
4924 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4925 #[doc(hidden)]
4926 pub struct IBarcodeScannerStatusUpdatedEventArgs(::windows::runtime::IInspectable);
4927 unsafe impl ::windows::runtime::Interface for IBarcodeScannerStatusUpdatedEventArgs {
4928     type Vtable = IBarcodeScannerStatusUpdatedEventArgs_abi;
4929     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(895321478, 40003, 17963, [169, 26, 129, 109, 201, 127, 69, 44]);
4930 }
4931 #[repr(C)]
4932 #[doc(hidden)]
4933 pub struct IBarcodeScannerStatusUpdatedEventArgs_abi(
4934     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4935     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4936     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4937     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4938     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4939     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4940     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut BarcodeScannerStatus) -> ::windows::runtime::HRESULT,
4941     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4942 );
4943 #[repr(transparent)]
4944 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4945 #[doc(hidden)]
4946 pub struct IBarcodeSymbologiesStatics(::windows::runtime::IInspectable);
4947 unsafe impl ::windows::runtime::Interface for IBarcodeSymbologiesStatics {
4948     type Vtable = IBarcodeSymbologiesStatics_abi;
4949     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3397732795, 1746, 17396, [164, 75, 198, 32, 103, 159, 216, 208]);
4950 }
4951 #[repr(C)]
4952 #[doc(hidden)]
4953 pub struct IBarcodeSymbologiesStatics_abi(
4954     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4955     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4956     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4957     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
4958     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4959     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
4960     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4961     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4962     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4963     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4964     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4965     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4967     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4968     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4969     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4970     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4971     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4972     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4973     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4974     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4975     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4976     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4977     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4978     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4979     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4980     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4981     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4982     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4983     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4984     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4985     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4986     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4987     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4988     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4989     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4990     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4991     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4992     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4993     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4994     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4995     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4996     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4997     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4998     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
4999     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5000     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5001     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5002     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5003     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5004     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5005     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5006     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5007     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5008     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5009     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5010     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5011     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5012     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5013     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5014     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5015     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5016     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5017     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5018     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5019     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5020     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5021     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5022     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5023     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5024     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5025     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5026     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5027     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5028     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5029     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5030     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5031     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5032     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5033     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5034     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5035     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5036     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5037     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5038     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5039     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5040     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5041     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5042     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5043     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5044     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5045     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5046     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5047     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5048     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5049     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5050     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5051     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5052     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5053     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, scandatatype: u32, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5054 );
5055 #[repr(transparent)]
5056 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5057 #[doc(hidden)]
5058 pub struct IBarcodeSymbologiesStatics2(::windows::runtime::IInspectable);
5059 unsafe impl ::windows::runtime::Interface for IBarcodeSymbologiesStatics2 {
5060     type Vtable = IBarcodeSymbologiesStatics2_abi;
5061     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2339707124, 39376, 16575, [148, 36, 185, 29, 109, 212, 198, 224]);
5062 }
5063 #[repr(C)]
5064 #[doc(hidden)]
5065 pub struct IBarcodeSymbologiesStatics2_abi(
5066     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5067     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5068     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5069     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5070     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5071     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5072     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5073 );
5074 #[repr(transparent)]
5075 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5076 #[doc(hidden)]
5077 pub struct IBarcodeSymbologyAttributes(::windows::runtime::IInspectable);
5078 unsafe impl ::windows::runtime::Interface for IBarcodeSymbologyAttributes {
5079     type Vtable = IBarcodeSymbologyAttributes_abi;
5080     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1715550840, 43898, 19162, [142, 206, 147, 96, 20, 178, 234, 215]);
5081 }
5082 #[repr(C)]
5083 #[doc(hidden)]
5084 pub struct IBarcodeSymbologyAttributes_abi(
5085     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5086     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5087     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5088     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5089     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5090     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5091     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5092     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5093     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5094     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5095     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5096     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5097     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5098     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
5099     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5100     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
5101     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut BarcodeSymbologyDecodeLengthKind) -> ::windows::runtime::HRESULT,
5102     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: BarcodeSymbologyDecodeLengthKind) -> ::windows::runtime::HRESULT,
5103     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5104 );
5105 #[repr(transparent)]
5106 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5107 #[doc(hidden)]
5108 pub struct ICashDrawer(::windows::runtime::IInspectable);
5109 unsafe impl ::windows::runtime::Interface for ICashDrawer {
5110     type Vtable = ICashDrawer_abi;
5111     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2676553160, 56916, 19182, [168, 144, 146, 11, 203, 254, 48, 252]);
5112 }
5113 #[repr(C)]
5114 #[doc(hidden)]
5115 pub struct ICashDrawer_abi(
5116     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5117     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5118     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5119     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5120     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5121     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5122     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5123     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5124     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5125     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5126     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5127     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5128     #[cfg(not(feature = "Foundation"))] usize,
5129     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, level: UnifiedPosHealthCheckLevel, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5130     #[cfg(not(feature = "Foundation"))] usize,
5131     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statisticscategories: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5132     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5133     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5134     #[cfg(not(feature = "Foundation"))] usize,
5135     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5136     #[cfg(not(feature = "Foundation"))] usize,
5137 );
5138 #[repr(transparent)]
5139 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5140 #[doc(hidden)]
5141 pub struct ICashDrawerCapabilities(::windows::runtime::IInspectable);
5142 unsafe impl ::windows::runtime::Interface for ICashDrawerCapabilities {
5143     type Vtable = ICashDrawerCapabilities_abi;
5144     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(197582347, 59623, 19231, [177, 209, 62, 80, 26, 208, 130, 71]);
5145 }
5146 #[repr(C)]
5147 #[doc(hidden)]
5148 pub struct ICashDrawerCapabilities_abi(
5149     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5150     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5151     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5152     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5153     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5154     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5155     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut UnifiedPosPowerReportingType) -> ::windows::runtime::HRESULT,
5156     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5157     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5158     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5159     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5160     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5161 );
5162 #[repr(transparent)]
5163 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5164 #[doc(hidden)]
5165 pub struct ICashDrawerCloseAlarm(::windows::runtime::IInspectable);
5166 unsafe impl ::windows::runtime::Interface for ICashDrawerCloseAlarm {
5167     type Vtable = ICashDrawerCloseAlarm_abi;
5168     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1811451079, 28515, 17166, [171, 59, 149, 215, 95, 251, 232, 127]);
5169 }
5170 #[repr(C)]
5171 #[doc(hidden)]
5172 pub struct ICashDrawerCloseAlarm_abi(
5173     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5174     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5175     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5176     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5177     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5178     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5179     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
5180     #[cfg(not(feature = "Foundation"))] usize,
5181     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
5182     #[cfg(not(feature = "Foundation"))] usize,
5183     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
5184     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5185     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
5186     #[cfg(not(feature = "Foundation"))] usize,
5187     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
5188     #[cfg(not(feature = "Foundation"))] usize,
5189     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
5190     #[cfg(not(feature = "Foundation"))] usize,
5191     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
5192     #[cfg(not(feature = "Foundation"))] usize,
5193     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5194     #[cfg(not(feature = "Foundation"))] usize,
5195     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5196     #[cfg(not(feature = "Foundation"))] usize,
5197     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5198     #[cfg(not(feature = "Foundation"))] usize,
5199 );
5200 #[repr(transparent)]
5201 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5202 #[doc(hidden)]
5203 pub struct ICashDrawerEventSource(::windows::runtime::IInspectable);
5204 unsafe impl ::windows::runtime::Interface for ICashDrawerEventSource {
5205     type Vtable = ICashDrawerEventSource_abi;
5206     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3758548076, 62201, 17455, [141, 214, 6, 193, 10, 66, 39, 186]);
5207 }
5208 #[repr(C)]
5209 #[doc(hidden)]
5210 pub struct ICashDrawerEventSource_abi(
5211     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5212     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5213     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5214     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5215     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5216     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5217     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5218     #[cfg(not(feature = "Foundation"))] usize,
5219     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5220     #[cfg(not(feature = "Foundation"))] usize,
5221     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5222     #[cfg(not(feature = "Foundation"))] usize,
5223     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5224     #[cfg(not(feature = "Foundation"))] usize,
5225 );
5226 #[repr(transparent)]
5227 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5228 pub struct ICashDrawerEventSourceEventArgs(::windows::runtime::IInspectable);
5229 unsafe impl ::windows::runtime::Interface for ICashDrawerEventSourceEventArgs {
5230     type Vtable = ICashDrawerEventSourceEventArgs_abi;
5231     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1774926785, 5247, 16924, [156, 35, 9, 1, 35, 187, 120, 108]);
5232 }
5233 impl ICashDrawerEventSourceEventArgs {
CashDrawer(&self) -> ::windows::runtime::Result<CashDrawer>5234     pub fn CashDrawer(&self) -> ::windows::runtime::Result<CashDrawer> {
5235         let this = self;
5236         unsafe {
5237             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5238             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CashDrawer>(result__)
5239         }
5240     }
5241 }
5242 unsafe impl ::windows::runtime::RuntimeType for ICashDrawerEventSourceEventArgs {
5243     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"{69cb3bc1-147f-421c-9c23-090123bb786c}");
5244 }
5245 impl ::std::convert::From<ICashDrawerEventSourceEventArgs> for ::windows::runtime::IUnknown {
from(value: ICashDrawerEventSourceEventArgs) -> Self5246     fn from(value: ICashDrawerEventSourceEventArgs) -> Self {
5247         unsafe { ::std::mem::transmute(value) }
5248     }
5249 }
5250 impl ::std::convert::From<&ICashDrawerEventSourceEventArgs> for ::windows::runtime::IUnknown {
from(value: &ICashDrawerEventSourceEventArgs) -> Self5251     fn from(value: &ICashDrawerEventSourceEventArgs) -> Self {
5252         ::std::convert::From::from(::std::clone::Clone::clone(value))
5253     }
5254 }
5255 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ICashDrawerEventSourceEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>5256     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5257         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
5258     }
5259 }
5260 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ICashDrawerEventSourceEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>5261     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5262         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
5263     }
5264 }
5265 impl ::std::convert::From<ICashDrawerEventSourceEventArgs> for ::windows::runtime::IInspectable {
from(value: ICashDrawerEventSourceEventArgs) -> Self5266     fn from(value: ICashDrawerEventSourceEventArgs) -> Self {
5267         value.0
5268     }
5269 }
5270 impl ::std::convert::From<&ICashDrawerEventSourceEventArgs> for ::windows::runtime::IInspectable {
from(value: &ICashDrawerEventSourceEventArgs) -> Self5271     fn from(value: &ICashDrawerEventSourceEventArgs) -> Self {
5272         value.0.clone()
5273     }
5274 }
5275 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ICashDrawerEventSourceEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>5276     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5277         ::windows::runtime::Param::Owned(self.0)
5278     }
5279 }
5280 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ICashDrawerEventSourceEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>5281     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5282         ::windows::runtime::Param::Borrowed(&self.0)
5283     }
5284 }
5285 #[repr(C)]
5286 #[doc(hidden)]
5287 pub struct ICashDrawerEventSourceEventArgs_abi(
5288     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5289     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5290     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5291     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5292     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5293     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5294     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5295 );
5296 #[repr(transparent)]
5297 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5298 #[doc(hidden)]
5299 pub struct ICashDrawerStatics(::windows::runtime::IInspectable);
5300 unsafe impl ::windows::runtime::Interface for ICashDrawerStatics {
5301     type Vtable = ICashDrawerStatics_abi;
5302     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3751843162, 54327, 20479, [181, 71, 221, 169, 105, 164, 248, 131]);
5303 }
5304 #[repr(C)]
5305 #[doc(hidden)]
5306 pub struct ICashDrawerStatics_abi(
5307     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5308     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5309     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5310     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5311     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5312     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5313     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5314     #[cfg(not(feature = "Foundation"))] usize,
5315     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, deviceid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5316     #[cfg(not(feature = "Foundation"))] usize,
5317     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5318 );
5319 #[repr(transparent)]
5320 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5321 #[doc(hidden)]
5322 pub struct ICashDrawerStatics2(::windows::runtime::IInspectable);
5323 unsafe impl ::windows::runtime::Interface for ICashDrawerStatics2 {
5324     type Vtable = ICashDrawerStatics2_abi;
5325     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1048674593, 35906, 16616, [156, 14, 64, 41, 112, 72, 16, 76]);
5326 }
5327 #[repr(C)]
5328 #[doc(hidden)]
5329 pub struct ICashDrawerStatics2_abi(
5330     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5331     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5332     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5333     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5334     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5335     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5336     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, connectiontypes: PosConnectionTypes, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5337 );
5338 #[repr(transparent)]
5339 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5340 #[doc(hidden)]
5341 pub struct ICashDrawerStatus(::windows::runtime::IInspectable);
5342 unsafe impl ::windows::runtime::Interface for ICashDrawerStatus {
5343     type Vtable = ICashDrawerStatus_abi;
5344     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1807579327, 56481, 19974, [153, 235, 90, 246, 165, 174, 193, 8]);
5345 }
5346 #[repr(C)]
5347 #[doc(hidden)]
5348 pub struct ICashDrawerStatus_abi(
5349     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5350     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5351     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5352     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5353     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5354     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5355     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut CashDrawerStatusKind) -> ::windows::runtime::HRESULT,
5356     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5357 );
5358 #[repr(transparent)]
5359 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5360 #[doc(hidden)]
5361 pub struct ICashDrawerStatusUpdatedEventArgs(::windows::runtime::IInspectable);
5362 unsafe impl ::windows::runtime::Interface for ICashDrawerStatusUpdatedEventArgs {
5363     type Vtable = ICashDrawerStatusUpdatedEventArgs_abi;
5364     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(816507274, 3440, 17820, [149, 83, 135, 225, 36, 197, 36, 136]);
5365 }
5366 #[repr(C)]
5367 #[doc(hidden)]
5368 pub struct ICashDrawerStatusUpdatedEventArgs_abi(
5369     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5370     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5371     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5372     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5373     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5374     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5375     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5376 );
5377 #[repr(transparent)]
5378 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5379 #[doc(hidden)]
5380 pub struct IClaimedBarcodeScanner(::windows::runtime::IInspectable);
5381 unsafe impl ::windows::runtime::Interface for IClaimedBarcodeScanner {
5382     type Vtable = IClaimedBarcodeScanner_abi;
5383     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1248048284, 36772, 17202, [187, 38, 148, 93, 17, 216, 30, 15]);
5384 }
5385 #[repr(C)]
5386 #[doc(hidden)]
5387 pub struct IClaimedBarcodeScanner_abi(
5388     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5389     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5390     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5391     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5392     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5393     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5394     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5395     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5396     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5397     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5398     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5399     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5400     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5401     #[cfg(not(feature = "Foundation"))] usize,
5402     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5403     #[cfg(not(feature = "Foundation"))] usize,
5404     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5405     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, symbologies: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5406     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5407     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statisticscategories: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5408     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5409     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statistics: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5410     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5411     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, profile: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5412     #[cfg(not(feature = "Foundation"))] usize,
5413     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5414     #[cfg(not(feature = "Foundation"))] usize,
5415     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5416     #[cfg(not(feature = "Foundation"))] usize,
5417     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5418     #[cfg(not(feature = "Foundation"))] usize,
5419     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5420     #[cfg(not(feature = "Foundation"))] usize,
5421     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5422     #[cfg(not(feature = "Foundation"))] usize,
5423     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5424     #[cfg(not(feature = "Foundation"))] usize,
5425     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5426     #[cfg(not(feature = "Foundation"))] usize,
5427     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5428     #[cfg(not(feature = "Foundation"))] usize,
5429     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5430     #[cfg(not(feature = "Foundation"))] usize,
5431     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5432     #[cfg(not(feature = "Foundation"))] usize,
5433     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5434     #[cfg(not(feature = "Foundation"))] usize,
5435     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5436     #[cfg(not(feature = "Foundation"))] usize,
5437 );
5438 #[repr(transparent)]
5439 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5440 #[doc(hidden)]
5441 pub struct IClaimedBarcodeScanner1(::windows::runtime::IInspectable);
5442 unsafe impl ::windows::runtime::Interface for IClaimedBarcodeScanner1 {
5443     type Vtable = IClaimedBarcodeScanner1_abi;
5444     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4128943372, 34129, 17076, [153, 140, 151, 12, 32, 33, 10, 34]);
5445 }
5446 #[repr(C)]
5447 #[doc(hidden)]
5448 pub struct IClaimedBarcodeScanner1_abi(
5449     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5450     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5451     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5452     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5453     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5454     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5455     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5456     #[cfg(not(feature = "Foundation"))] usize,
5457     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5458     #[cfg(not(feature = "Foundation"))] usize,
5459 );
5460 #[repr(transparent)]
5461 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5462 #[doc(hidden)]
5463 pub struct IClaimedBarcodeScanner2(::windows::runtime::IInspectable);
5464 unsafe impl ::windows::runtime::Interface for IClaimedBarcodeScanner2 {
5465     type Vtable = IClaimedBarcodeScanner2_abi;
5466     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3820330636, 11659, 20336, [138, 243, 52, 72, 190, 221, 95, 226]);
5467 }
5468 #[repr(C)]
5469 #[doc(hidden)]
5470 pub struct IClaimedBarcodeScanner2_abi(
5471     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5472     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5473     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5474     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5475     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5476     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5477     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, barcodesymbology: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5478     #[cfg(not(feature = "Foundation"))] usize,
5479     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, barcodesymbology: u32, attributes: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5480     #[cfg(not(feature = "Foundation"))] usize,
5481 );
5482 #[repr(transparent)]
5483 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5484 #[doc(hidden)]
5485 pub struct IClaimedBarcodeScanner3(::windows::runtime::IInspectable);
5486 unsafe impl ::windows::runtime::Interface for IClaimedBarcodeScanner3 {
5487     type Vtable = IClaimedBarcodeScanner3_abi;
5488     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3872306224, 28974, 17916, [139, 134, 205, 85, 245, 174, 247, 157]);
5489 }
5490 #[repr(C)]
5491 #[doc(hidden)]
5492 pub struct IClaimedBarcodeScanner3_abi(
5493     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5494     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5495     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5496     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5497     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5498     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5499     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5500     #[cfg(not(feature = "Foundation"))] usize,
5501     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5502     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5503     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5504 );
5505 #[repr(transparent)]
5506 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5507 #[doc(hidden)]
5508 pub struct IClaimedBarcodeScanner4(::windows::runtime::IInspectable);
5509 unsafe impl ::windows::runtime::Interface for IClaimedBarcodeScanner4 {
5510     type Vtable = IClaimedBarcodeScanner4_abi;
5511     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1565532055, 14186, 16808, [162, 48, 47, 55, 193, 148, 157, 222]);
5512 }
5513 #[repr(C)]
5514 #[doc(hidden)]
5515 pub struct IClaimedBarcodeScanner4_abi(
5516     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5517     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5518     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5519     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5520     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5521     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5522     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5523     #[cfg(not(feature = "Foundation"))] usize,
5524     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5525     #[cfg(not(feature = "Foundation"))] usize,
5526 );
5527 #[repr(transparent)]
5528 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5529 #[doc(hidden)]
5530 pub struct IClaimedBarcodeScannerClosedEventArgs(::windows::runtime::IInspectable);
5531 unsafe impl ::windows::runtime::Interface for IClaimedBarcodeScannerClosedEventArgs {
5532     type Vtable = IClaimedBarcodeScannerClosedEventArgs_abi;
5533     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3481097353, 41516, 19557, [169, 1, 136, 215, 125, 131, 57, 84]);
5534 }
5535 #[repr(C)]
5536 #[doc(hidden)]
5537 pub struct IClaimedBarcodeScannerClosedEventArgs_abi(
5538     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5539     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5540     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5541     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5542     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5543     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5544 );
5545 #[repr(transparent)]
5546 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5547 #[doc(hidden)]
5548 pub struct IClaimedCashDrawer(::windows::runtime::IInspectable);
5549 unsafe impl ::windows::runtime::Interface for IClaimedCashDrawer {
5550     type Vtable = IClaimedCashDrawer_abi;
5551     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3393165743, 43960, 17089, [138, 132, 92, 102, 81, 47, 90, 117]);
5552 }
5553 #[repr(C)]
5554 #[doc(hidden)]
5555 pub struct IClaimedCashDrawer_abi(
5556     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5557     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5558     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5559     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5560     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5561     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5562     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5563     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5564     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5565     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5566     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5567     #[cfg(not(feature = "Foundation"))] usize,
5568     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5569     #[cfg(not(feature = "Foundation"))] usize,
5570     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5571     #[cfg(not(feature = "Foundation"))] usize,
5572     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5573     #[cfg(not(feature = "Foundation"))] usize,
5574     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statisticscategories: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5575     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5576     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statistics: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5577     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5578     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5579     #[cfg(not(feature = "Foundation"))] usize,
5580     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5581     #[cfg(not(feature = "Foundation"))] usize,
5582 );
5583 #[repr(transparent)]
5584 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5585 #[doc(hidden)]
5586 pub struct IClaimedCashDrawer2(::windows::runtime::IInspectable);
5587 unsafe impl ::windows::runtime::Interface for IClaimedCashDrawer2 {
5588     type Vtable = IClaimedCashDrawer2_abi;
5589     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2629481890, 56898, 19803, [176, 193, 155, 87, 162, 186, 137, 195]);
5590 }
5591 #[repr(C)]
5592 #[doc(hidden)]
5593 pub struct IClaimedCashDrawer2_abi(
5594     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5595     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5596     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5597     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5598     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5599     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5600     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5601     #[cfg(not(feature = "Foundation"))] usize,
5602     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5603     #[cfg(not(feature = "Foundation"))] usize,
5604 );
5605 #[repr(transparent)]
5606 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5607 #[doc(hidden)]
5608 pub struct IClaimedCashDrawerClosedEventArgs(::windows::runtime::IInspectable);
5609 unsafe impl ::windows::runtime::Interface for IClaimedCashDrawerClosedEventArgs {
5610     type Vtable = IClaimedCashDrawerClosedEventArgs_abi;
5611     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3428269875, 16180, 19548, [186, 174, 222, 173, 241, 108, 215, 250]);
5612 }
5613 #[repr(C)]
5614 #[doc(hidden)]
5615 pub struct IClaimedCashDrawerClosedEventArgs_abi(
5616     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5617     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5618     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5619     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5620     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5621     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5622 );
5623 #[repr(transparent)]
5624 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5625 #[doc(hidden)]
5626 pub struct IClaimedJournalPrinter(::windows::runtime::IInspectable);
5627 unsafe impl ::windows::runtime::Interface for IClaimedJournalPrinter {
5628     type Vtable = IClaimedJournalPrinter_abi;
5629     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1743390256, 20861, 18559, [159, 223, 210, 224, 160, 162, 100, 165]);
5630 }
5631 #[repr(C)]
5632 #[doc(hidden)]
5633 pub struct IClaimedJournalPrinter_abi(
5634     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5635     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5636     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5637     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5638     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5639     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5640     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5641 );
5642 #[repr(transparent)]
5643 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5644 #[doc(hidden)]
5645 pub struct IClaimedLineDisplay(::windows::runtime::IInspectable);
5646 unsafe impl ::windows::runtime::Interface for IClaimedLineDisplay {
5647     type Vtable = IClaimedLineDisplay_abi;
5648     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(302696816, 39541, 19151, [170, 231, 9, 151, 43, 207, 135, 148]);
5649 }
5650 #[repr(C)]
5651 #[doc(hidden)]
5652 pub struct IClaimedLineDisplay_abi(
5653     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5654     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5655     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5656     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5657     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5658     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5659     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5660     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5661     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5662     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5663     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5664     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5665     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5666     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5667     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5668     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5669     #[cfg(not(feature = "Foundation"))] usize,
5670     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5671     #[cfg(not(feature = "Foundation"))] usize,
5672 );
5673 #[repr(transparent)]
5674 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5675 #[doc(hidden)]
5676 pub struct IClaimedLineDisplay2(::windows::runtime::IInspectable);
5677 unsafe impl ::windows::runtime::Interface for IClaimedLineDisplay2 {
5678     type Vtable = IClaimedLineDisplay2_abi;
5679     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2736551405, 16885, 20086, [160, 116, 121, 94, 71, 164, 110, 151]);
5680 }
5681 #[repr(C)]
5682 #[doc(hidden)]
5683 pub struct IClaimedLineDisplay2_abi(
5684     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5685     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5686     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5687     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5688     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5689     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5690     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statisticscategories: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5691     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5692     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, level: UnifiedPosHealthCheckLevel, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5693     #[cfg(not(feature = "Foundation"))] usize,
5694     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5695     #[cfg(not(feature = "Foundation"))] usize,
5696     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5697     #[cfg(not(feature = "Foundation"))] usize,
5698     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5699     #[cfg(not(feature = "Foundation"))] usize,
5700     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5701     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5702     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::Size) -> ::windows::runtime::HRESULT,
5703     #[cfg(not(feature = "Foundation"))] usize,
5704     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5705     #[cfg(not(feature = "Foundation_Collections"))] usize,
5706     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5707     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5708     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, attributes: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5709     #[cfg(not(feature = "Foundation"))] usize,
5710     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, descriptor: u32, descriptorstate: LineDisplayDescriptorState, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5711     #[cfg(not(feature = "Foundation"))] usize,
5712     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5713     #[cfg(not(feature = "Foundation"))] usize,
5714     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, viewport: super::super::Foundation::Rect, windowsize: super::super::Foundation::Size, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5715     #[cfg(not(feature = "Foundation"))] usize,
5716     #[cfg(all(feature = "Foundation", feature = "Storage"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5717     #[cfg(not(all(feature = "Foundation", feature = "Storage")))] usize,
5718     #[cfg(all(feature = "Foundation", feature = "Storage"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5719     #[cfg(not(all(feature = "Foundation", feature = "Storage")))] usize,
5720     #[cfg(all(feature = "Foundation", feature = "Storage"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment, widthinpixels: i32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5721     #[cfg(not(all(feature = "Foundation", feature = "Storage")))] usize,
5722 );
5723 #[repr(transparent)]
5724 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5725 #[doc(hidden)]
5726 pub struct IClaimedLineDisplay3(::windows::runtime::IInspectable);
5727 unsafe impl ::windows::runtime::Interface for IClaimedLineDisplay3 {
5728     type Vtable = IClaimedLineDisplay3_abi;
5729     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1680788882, 59860, 20172, [175, 117, 50, 156, 39, 76, 209, 143]);
5730 }
5731 #[repr(C)]
5732 #[doc(hidden)]
5733 pub struct IClaimedLineDisplay3_abi(
5734     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5735     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5736     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5737     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5738     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5739     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5740     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5741     #[cfg(not(feature = "Foundation"))] usize,
5742     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5743     #[cfg(not(feature = "Foundation"))] usize,
5744 );
5745 #[repr(transparent)]
5746 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5747 #[doc(hidden)]
5748 pub struct IClaimedLineDisplayClosedEventArgs(::windows::runtime::IInspectable);
5749 unsafe impl ::windows::runtime::Interface for IClaimedLineDisplayClosedEventArgs {
5750     type Vtable = IClaimedLineDisplayClosedEventArgs_abi;
5751     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4178965348, 54229, 20240, [181, 17, 144, 147, 158, 223, 172, 216]);
5752 }
5753 #[repr(C)]
5754 #[doc(hidden)]
5755 pub struct IClaimedLineDisplayClosedEventArgs_abi(
5756     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5757     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5758     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5759     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5760     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5761     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5762 );
5763 #[repr(transparent)]
5764 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5765 #[doc(hidden)]
5766 pub struct IClaimedLineDisplayStatics(::windows::runtime::IInspectable);
5767 unsafe impl ::windows::runtime::Interface for IClaimedLineDisplayStatics {
5768     type Vtable = IClaimedLineDisplayStatics_abi;
5769     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2026543355, 35691, 18803, [134, 240, 62, 87, 12, 53, 24, 37]);
5770 }
5771 #[repr(C)]
5772 #[doc(hidden)]
5773 pub struct IClaimedLineDisplayStatics_abi(
5774     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5775     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5776     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5777     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5778     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5779     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5780     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, deviceid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5781     #[cfg(not(feature = "Foundation"))] usize,
5782     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5783     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, connectiontypes: PosConnectionTypes, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5784 );
5785 #[repr(transparent)]
5786 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5787 #[doc(hidden)]
5788 pub struct IClaimedMagneticStripeReader(::windows::runtime::IInspectable);
5789 unsafe impl ::windows::runtime::Interface for IClaimedMagneticStripeReader {
5790     type Vtable = IClaimedMagneticStripeReader_abi;
5791     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1197254899, 37911, 18620, [185, 215, 65, 99, 167, 132, 76, 2]);
5792 }
5793 #[repr(C)]
5794 #[doc(hidden)]
5795 pub struct IClaimedMagneticStripeReader_abi(
5796     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5797     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5798     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5799     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5800     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5801     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5802     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5803     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5804     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5805     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5806     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5807     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5808     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5809     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
5810     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5811     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: MagneticStripeReaderTrackIds) -> ::windows::runtime::HRESULT,
5812     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut MagneticStripeReaderTrackIds) -> ::windows::runtime::HRESULT,
5813     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5814     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5815     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5816     #[cfg(not(feature = "Foundation"))] usize,
5817     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5818     #[cfg(not(feature = "Foundation"))] usize,
5819     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5820     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: MagneticStripeReaderErrorReportingType) -> ::windows::runtime::HRESULT,
5821     #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5822     #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))] usize,
5823     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, responseToken_array_size: u32, responsetoken: *const u8, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5824     #[cfg(not(feature = "Foundation"))] usize,
5825     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, responseToken_array_size: u32, responsetoken: *const u8, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5826     #[cfg(not(feature = "Foundation"))] usize,
5827     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, keyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5828     #[cfg(not(feature = "Foundation"))] usize,
5829     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statisticscategories: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5830     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5831     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statistics: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5832     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5833     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5834     #[cfg(not(feature = "Foundation"))] usize,
5835     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5836     #[cfg(not(feature = "Foundation"))] usize,
5837     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5838     #[cfg(not(feature = "Foundation"))] usize,
5839     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5840     #[cfg(not(feature = "Foundation"))] usize,
5841     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5842     #[cfg(not(feature = "Foundation"))] usize,
5843     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5844     #[cfg(not(feature = "Foundation"))] usize,
5845     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5846     #[cfg(not(feature = "Foundation"))] usize,
5847     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5848     #[cfg(not(feature = "Foundation"))] usize,
5849     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5850     #[cfg(not(feature = "Foundation"))] usize,
5851     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5852     #[cfg(not(feature = "Foundation"))] usize,
5853 );
5854 #[repr(transparent)]
5855 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5856 #[doc(hidden)]
5857 pub struct IClaimedMagneticStripeReader2(::windows::runtime::IInspectable);
5858 unsafe impl ::windows::runtime::Interface for IClaimedMagneticStripeReader2 {
5859     type Vtable = IClaimedMagneticStripeReader2_abi;
5860     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(594522079, 58076, 19837, [156, 120, 6, 13, 242, 191, 41, 40]);
5861 }
5862 #[repr(C)]
5863 #[doc(hidden)]
5864 pub struct IClaimedMagneticStripeReader2_abi(
5865     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5866     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5867     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5868     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5869     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5870     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5871     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5872     #[cfg(not(feature = "Foundation"))] usize,
5873     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5874     #[cfg(not(feature = "Foundation"))] usize,
5875 );
5876 #[repr(transparent)]
5877 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5878 #[doc(hidden)]
5879 pub struct IClaimedMagneticStripeReaderClosedEventArgs(::windows::runtime::IInspectable);
5880 unsafe impl ::windows::runtime::Interface for IClaimedMagneticStripeReaderClosedEventArgs {
5881     type Vtable = IClaimedMagneticStripeReaderClosedEventArgs_abi;
5882     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(346925370, 44493, 19584, [172, 218, 195, 234, 237, 38, 71, 225]);
5883 }
5884 #[repr(C)]
5885 #[doc(hidden)]
5886 pub struct IClaimedMagneticStripeReaderClosedEventArgs_abi(
5887     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5888     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5889     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5890     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5891     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5892     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5893 );
5894 #[repr(transparent)]
5895 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5896 #[doc(hidden)]
5897 pub struct IClaimedPosPrinter(::windows::runtime::IInspectable);
5898 unsafe impl ::windows::runtime::Interface for IClaimedPosPrinter {
5899     type Vtable = IClaimedPosPrinter_abi;
5900     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1835322892, 57406, 19220, [163, 142, 194, 140, 52, 184, 99, 83]);
5901 }
5902 #[repr(C)]
5903 #[doc(hidden)]
5904 pub struct IClaimedPosPrinter_abi(
5905     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5906     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5907     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5908     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5909     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5910     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5911     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5912     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5913     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
5914     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5915     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5916     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5917     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5918     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: PosPrinterMapMode) -> ::windows::runtime::HRESULT,
5919     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PosPrinterMapMode) -> ::windows::runtime::HRESULT,
5920     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5921     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5922     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5923     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5924     #[cfg(not(feature = "Foundation"))] usize,
5925     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5926     #[cfg(not(feature = "Foundation"))] usize,
5927     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5928     #[cfg(not(feature = "Foundation"))] usize,
5929     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statisticscategories: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5930     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5931     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statistics: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5932     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5933     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5934     #[cfg(not(feature = "Foundation"))] usize,
5935     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5936     #[cfg(not(feature = "Foundation"))] usize,
5937 );
5938 #[repr(transparent)]
5939 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5940 #[doc(hidden)]
5941 pub struct IClaimedPosPrinter2(::windows::runtime::IInspectable);
5942 unsafe impl ::windows::runtime::Interface for IClaimedPosPrinter2 {
5943     type Vtable = IClaimedPosPrinter2_abi;
5944     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1542955989, 20888, 17274, [130, 223, 88, 153, 147, 250, 119, 225]);
5945 }
5946 #[repr(C)]
5947 #[doc(hidden)]
5948 pub struct IClaimedPosPrinter2_abi(
5949     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5950     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5951     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5952     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5953     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5954     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5955     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5956     #[cfg(not(feature = "Foundation"))] usize,
5957     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5958     #[cfg(not(feature = "Foundation"))] usize,
5959 );
5960 #[repr(transparent)]
5961 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5962 #[doc(hidden)]
5963 pub struct IClaimedPosPrinterClosedEventArgs(::windows::runtime::IInspectable);
5964 unsafe impl ::windows::runtime::Interface for IClaimedPosPrinterClosedEventArgs {
5965     type Vtable = IClaimedPosPrinterClosedEventArgs_abi;
5966     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3803685499, 19776, 18205, [146, 237, 99, 55, 91, 24, 199, 136]);
5967 }
5968 #[repr(C)]
5969 #[doc(hidden)]
5970 pub struct IClaimedPosPrinterClosedEventArgs_abi(
5971     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5972     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5973     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5974     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5975     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5976     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5977 );
5978 #[repr(transparent)]
5979 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5980 #[doc(hidden)]
5981 pub struct IClaimedReceiptPrinter(::windows::runtime::IInspectable);
5982 unsafe impl ::windows::runtime::Interface for IClaimedReceiptPrinter {
5983     type Vtable = IClaimedReceiptPrinter_abi;
5984     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2597485172, 56673, 20194, [152, 55, 91, 93, 114, 213, 56, 185]);
5985 }
5986 #[repr(C)]
5987 #[doc(hidden)]
5988 pub struct IClaimedReceiptPrinter_abi(
5989     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5990     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5991     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5992     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5993     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5994     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5995     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5996     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5997     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5998     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::Size) -> ::windows::runtime::HRESULT,
5999     #[cfg(not(feature = "Foundation"))] usize,
6000     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::Rect) -> ::windows::runtime::HRESULT,
6001     #[cfg(not(feature = "Foundation"))] usize,
6002     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6003 );
6004 #[repr(transparent)]
6005 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6006 #[doc(hidden)]
6007 pub struct IClaimedSlipPrinter(::windows::runtime::IInspectable);
6008 unsafe impl ::windows::runtime::Interface for IClaimedSlipPrinter {
6009     type Vtable = IClaimedSlipPrinter_abi;
6010     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3177050098, 44944, 20106, [183, 123, 227, 174, 156, 166, 58, 127]);
6011 }
6012 #[repr(C)]
6013 #[doc(hidden)]
6014 pub struct IClaimedSlipPrinter_abi(
6015     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6016     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6017     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6018     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6019     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6020     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6021     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6022     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6023     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6024     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6025     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PosPrinterPrintSide) -> ::windows::runtime::HRESULT,
6026     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::Size) -> ::windows::runtime::HRESULT,
6027     #[cfg(not(feature = "Foundation"))] usize,
6028     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::Rect) -> ::windows::runtime::HRESULT,
6029     #[cfg(not(feature = "Foundation"))] usize,
6030     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6031     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6032     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, timeout: super::super::Foundation::TimeSpan, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6033     #[cfg(not(feature = "Foundation"))] usize,
6034     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, timeout: super::super::Foundation::TimeSpan, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6035     #[cfg(not(feature = "Foundation"))] usize,
6036     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, printside: PosPrinterPrintSide) -> ::windows::runtime::HRESULT,
6037     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6038 );
6039 #[repr(transparent)]
6040 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6041 pub struct ICommonClaimedPosPrinterStation(::windows::runtime::IInspectable);
6042 unsafe impl ::windows::runtime::Interface for ICommonClaimedPosPrinterStation {
6043     type Vtable = ICommonClaimedPosPrinterStation_abi;
6044     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3085657768, 65162, 19707, [139, 66, 227, 91, 40, 12, 178, 124]);
6045 }
6046 impl ICommonClaimedPosPrinterStation {
SetCharactersPerLine(&self, value: u32) -> ::windows::runtime::Result<()>6047     pub fn SetCharactersPerLine(&self, value: u32) -> ::windows::runtime::Result<()> {
6048         let this = self;
6049         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
6050     }
CharactersPerLine(&self) -> ::windows::runtime::Result<u32>6051     pub fn CharactersPerLine(&self) -> ::windows::runtime::Result<u32> {
6052         let this = self;
6053         unsafe {
6054             let mut result__: u32 = ::std::mem::zeroed();
6055             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
6056         }
6057     }
SetLineHeight(&self, value: u32) -> ::windows::runtime::Result<()>6058     pub fn SetLineHeight(&self, value: u32) -> ::windows::runtime::Result<()> {
6059         let this = self;
6060         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
6061     }
LineHeight(&self) -> ::windows::runtime::Result<u32>6062     pub fn LineHeight(&self) -> ::windows::runtime::Result<u32> {
6063         let this = self;
6064         unsafe {
6065             let mut result__: u32 = ::std::mem::zeroed();
6066             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
6067         }
6068     }
SetLineSpacing(&self, value: u32) -> ::windows::runtime::Result<()>6069     pub fn SetLineSpacing(&self, value: u32) -> ::windows::runtime::Result<()> {
6070         let this = self;
6071         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
6072     }
LineSpacing(&self) -> ::windows::runtime::Result<u32>6073     pub fn LineSpacing(&self) -> ::windows::runtime::Result<u32> {
6074         let this = self;
6075         unsafe {
6076             let mut result__: u32 = ::std::mem::zeroed();
6077             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
6078         }
6079     }
LineWidth(&self) -> ::windows::runtime::Result<u32>6080     pub fn LineWidth(&self) -> ::windows::runtime::Result<u32> {
6081         let this = self;
6082         unsafe {
6083             let mut result__: u32 = ::std::mem::zeroed();
6084             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
6085         }
6086     }
SetIsLetterQuality(&self, value: bool) -> ::windows::runtime::Result<()>6087     pub fn SetIsLetterQuality(&self, value: bool) -> ::windows::runtime::Result<()> {
6088         let this = self;
6089         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
6090     }
IsLetterQuality(&self) -> ::windows::runtime::Result<bool>6091     pub fn IsLetterQuality(&self) -> ::windows::runtime::Result<bool> {
6092         let this = self;
6093         unsafe {
6094             let mut result__: bool = ::std::mem::zeroed();
6095             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6096         }
6097     }
IsPaperNearEnd(&self) -> ::windows::runtime::Result<bool>6098     pub fn IsPaperNearEnd(&self) -> ::windows::runtime::Result<bool> {
6099         let this = self;
6100         unsafe {
6101             let mut result__: bool = ::std::mem::zeroed();
6102             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6103         }
6104     }
SetColorCartridge(&self, value: PosPrinterColorCartridge) -> ::windows::runtime::Result<()>6105     pub fn SetColorCartridge(&self, value: PosPrinterColorCartridge) -> ::windows::runtime::Result<()> {
6106         let this = self;
6107         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), value).ok() }
6108     }
ColorCartridge(&self) -> ::windows::runtime::Result<PosPrinterColorCartridge>6109     pub fn ColorCartridge(&self) -> ::windows::runtime::Result<PosPrinterColorCartridge> {
6110         let this = self;
6111         unsafe {
6112             let mut result__: PosPrinterColorCartridge = ::std::mem::zeroed();
6113             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterColorCartridge>(result__)
6114         }
6115     }
IsCoverOpen(&self) -> ::windows::runtime::Result<bool>6116     pub fn IsCoverOpen(&self) -> ::windows::runtime::Result<bool> {
6117         let this = self;
6118         unsafe {
6119             let mut result__: bool = ::std::mem::zeroed();
6120             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6121         }
6122     }
IsCartridgeRemoved(&self) -> ::windows::runtime::Result<bool>6123     pub fn IsCartridgeRemoved(&self) -> ::windows::runtime::Result<bool> {
6124         let this = self;
6125         unsafe {
6126             let mut result__: bool = ::std::mem::zeroed();
6127             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6128         }
6129     }
IsCartridgeEmpty(&self) -> ::windows::runtime::Result<bool>6130     pub fn IsCartridgeEmpty(&self) -> ::windows::runtime::Result<bool> {
6131         let this = self;
6132         unsafe {
6133             let mut result__: bool = ::std::mem::zeroed();
6134             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6135         }
6136     }
IsHeadCleaning(&self) -> ::windows::runtime::Result<bool>6137     pub fn IsHeadCleaning(&self) -> ::windows::runtime::Result<bool> {
6138         let this = self;
6139         unsafe {
6140             let mut result__: bool = ::std::mem::zeroed();
6141             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6142         }
6143     }
IsPaperEmpty(&self) -> ::windows::runtime::Result<bool>6144     pub fn IsPaperEmpty(&self) -> ::windows::runtime::Result<bool> {
6145         let this = self;
6146         unsafe {
6147             let mut result__: bool = ::std::mem::zeroed();
6148             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6149         }
6150     }
IsReadyToPrint(&self) -> ::windows::runtime::Result<bool>6151     pub fn IsReadyToPrint(&self) -> ::windows::runtime::Result<bool> {
6152         let this = self;
6153         unsafe {
6154             let mut result__: bool = ::std::mem::zeroed();
6155             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6156         }
6157     }
ValidateData<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<bool>6158     pub fn ValidateData<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<bool> {
6159         let this = self;
6160         unsafe {
6161             let mut result__: bool = ::std::mem::zeroed();
6162             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), data.into_param().abi(), &mut result__).from_abi::<bool>(result__)
6163         }
6164     }
6165 }
6166 unsafe impl ::windows::runtime::RuntimeType for ICommonClaimedPosPrinterStation {
6167     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"{b7eb66a8-fe8a-4cfb-8b42-e35b280cb27c}");
6168 }
6169 impl ::std::convert::From<ICommonClaimedPosPrinterStation> for ::windows::runtime::IUnknown {
from(value: ICommonClaimedPosPrinterStation) -> Self6170     fn from(value: ICommonClaimedPosPrinterStation) -> Self {
6171         unsafe { ::std::mem::transmute(value) }
6172     }
6173 }
6174 impl ::std::convert::From<&ICommonClaimedPosPrinterStation> for ::windows::runtime::IUnknown {
from(value: &ICommonClaimedPosPrinterStation) -> Self6175     fn from(value: &ICommonClaimedPosPrinterStation) -> Self {
6176         ::std::convert::From::from(::std::clone::Clone::clone(value))
6177     }
6178 }
6179 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ICommonClaimedPosPrinterStation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6180     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6181         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6182     }
6183 }
6184 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ICommonClaimedPosPrinterStation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6185     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6186         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6187     }
6188 }
6189 impl ::std::convert::From<ICommonClaimedPosPrinterStation> for ::windows::runtime::IInspectable {
from(value: ICommonClaimedPosPrinterStation) -> Self6190     fn from(value: ICommonClaimedPosPrinterStation) -> Self {
6191         value.0
6192     }
6193 }
6194 impl ::std::convert::From<&ICommonClaimedPosPrinterStation> for ::windows::runtime::IInspectable {
from(value: &ICommonClaimedPosPrinterStation) -> Self6195     fn from(value: &ICommonClaimedPosPrinterStation) -> Self {
6196         value.0.clone()
6197     }
6198 }
6199 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ICommonClaimedPosPrinterStation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>6200     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6201         ::windows::runtime::Param::Owned(self.0)
6202     }
6203 }
6204 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ICommonClaimedPosPrinterStation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>6205     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6206         ::windows::runtime::Param::Borrowed(&self.0)
6207     }
6208 }
6209 #[repr(C)]
6210 #[doc(hidden)]
6211 pub struct ICommonClaimedPosPrinterStation_abi(
6212     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6213     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6214     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6215     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6216     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6217     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6218     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
6219     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6220     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
6221     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6222     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
6223     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6224     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6225     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6226     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6227     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6228     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: PosPrinterColorCartridge) -> ::windows::runtime::HRESULT,
6229     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PosPrinterColorCartridge) -> ::windows::runtime::HRESULT,
6230     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6231     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6232     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6233     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6234     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6235     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6236     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, data: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut bool) -> ::windows::runtime::HRESULT,
6237 );
6238 #[repr(transparent)]
6239 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6240 pub struct ICommonPosPrintStationCapabilities(::windows::runtime::IInspectable);
6241 unsafe impl ::windows::runtime::Interface for ICommonPosPrintStationCapabilities {
6242     type Vtable = ICommonPosPrintStationCapabilities_abi;
6243     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3730526922, 57390, 16617, [158, 94, 27, 72, 142, 106, 172, 252]);
6244 }
6245 impl ICommonPosPrintStationCapabilities {
IsPrinterPresent(&self) -> ::windows::runtime::Result<bool>6246     pub fn IsPrinterPresent(&self) -> ::windows::runtime::Result<bool> {
6247         let this = self;
6248         unsafe {
6249             let mut result__: bool = ::std::mem::zeroed();
6250             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6251         }
6252     }
IsDualColorSupported(&self) -> ::windows::runtime::Result<bool>6253     pub fn IsDualColorSupported(&self) -> ::windows::runtime::Result<bool> {
6254         let this = self;
6255         unsafe {
6256             let mut result__: bool = ::std::mem::zeroed();
6257             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6258         }
6259     }
ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities>6260     pub fn ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities> {
6261         let this = self;
6262         unsafe {
6263             let mut result__: PosPrinterColorCapabilities = ::std::mem::zeroed();
6264             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterColorCapabilities>(result__)
6265         }
6266     }
CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors>6267     pub fn CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors> {
6268         let this = self;
6269         unsafe {
6270             let mut result__: PosPrinterCartridgeSensors = ::std::mem::zeroed();
6271             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterCartridgeSensors>(result__)
6272         }
6273     }
IsBoldSupported(&self) -> ::windows::runtime::Result<bool>6274     pub fn IsBoldSupported(&self) -> ::windows::runtime::Result<bool> {
6275         let this = self;
6276         unsafe {
6277             let mut result__: bool = ::std::mem::zeroed();
6278             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6279         }
6280     }
IsItalicSupported(&self) -> ::windows::runtime::Result<bool>6281     pub fn IsItalicSupported(&self) -> ::windows::runtime::Result<bool> {
6282         let this = self;
6283         unsafe {
6284             let mut result__: bool = ::std::mem::zeroed();
6285             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6286         }
6287     }
IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool>6288     pub fn IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool> {
6289         let this = self;
6290         unsafe {
6291             let mut result__: bool = ::std::mem::zeroed();
6292             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6293         }
6294     }
IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool>6295     pub fn IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool> {
6296         let this = self;
6297         unsafe {
6298             let mut result__: bool = ::std::mem::zeroed();
6299             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6300         }
6301     }
IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>6302     pub fn IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
6303         let this = self;
6304         unsafe {
6305             let mut result__: bool = ::std::mem::zeroed();
6306             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6307         }
6308     }
IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>6309     pub fn IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
6310         let this = self;
6311         unsafe {
6312             let mut result__: bool = ::std::mem::zeroed();
6313             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6314         }
6315     }
IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool>6316     pub fn IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool> {
6317         let this = self;
6318         unsafe {
6319             let mut result__: bool = ::std::mem::zeroed();
6320             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6321         }
6322     }
IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool>6323     pub fn IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool> {
6324         let this = self;
6325         unsafe {
6326             let mut result__: bool = ::std::mem::zeroed();
6327             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6328         }
6329     }
6330     #[cfg(feature = "Foundation_Collections")]
SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>>6331     pub fn SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>> {
6332         let this = self;
6333         unsafe {
6334             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6335             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<u32>>(result__)
6336         }
6337     }
6338 }
6339 unsafe impl ::windows::runtime::RuntimeType for ICommonPosPrintStationCapabilities {
6340     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"{de5b52ca-e02e-40e9-9e5e-1b488e6aacfc}");
6341 }
6342 impl ::std::convert::From<ICommonPosPrintStationCapabilities> for ::windows::runtime::IUnknown {
from(value: ICommonPosPrintStationCapabilities) -> Self6343     fn from(value: ICommonPosPrintStationCapabilities) -> Self {
6344         unsafe { ::std::mem::transmute(value) }
6345     }
6346 }
6347 impl ::std::convert::From<&ICommonPosPrintStationCapabilities> for ::windows::runtime::IUnknown {
from(value: &ICommonPosPrintStationCapabilities) -> Self6348     fn from(value: &ICommonPosPrintStationCapabilities) -> Self {
6349         ::std::convert::From::from(::std::clone::Clone::clone(value))
6350     }
6351 }
6352 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ICommonPosPrintStationCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6353     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6354         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6355     }
6356 }
6357 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ICommonPosPrintStationCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6358     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6359         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6360     }
6361 }
6362 impl ::std::convert::From<ICommonPosPrintStationCapabilities> for ::windows::runtime::IInspectable {
from(value: ICommonPosPrintStationCapabilities) -> Self6363     fn from(value: ICommonPosPrintStationCapabilities) -> Self {
6364         value.0
6365     }
6366 }
6367 impl ::std::convert::From<&ICommonPosPrintStationCapabilities> for ::windows::runtime::IInspectable {
from(value: &ICommonPosPrintStationCapabilities) -> Self6368     fn from(value: &ICommonPosPrintStationCapabilities) -> Self {
6369         value.0.clone()
6370     }
6371 }
6372 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ICommonPosPrintStationCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>6373     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6374         ::windows::runtime::Param::Owned(self.0)
6375     }
6376 }
6377 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ICommonPosPrintStationCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>6378     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6379         ::windows::runtime::Param::Borrowed(&self.0)
6380     }
6381 }
6382 #[repr(C)]
6383 #[doc(hidden)]
6384 pub struct ICommonPosPrintStationCapabilities_abi(
6385     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6386     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6387     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6388     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6389     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6390     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6391     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6392     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6393     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PosPrinterColorCapabilities) -> ::windows::runtime::HRESULT,
6394     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PosPrinterCartridgeSensors) -> ::windows::runtime::HRESULT,
6395     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6396     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6397     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6398     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6399     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6400     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6401     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6402     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6403     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6404     #[cfg(not(feature = "Foundation_Collections"))] usize,
6405 );
6406 #[repr(transparent)]
6407 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6408 pub struct ICommonReceiptSlipCapabilities(::windows::runtime::IInspectable);
6409 unsafe impl ::windows::runtime::Interface for ICommonReceiptSlipCapabilities {
6410     type Vtable = ICommonReceiptSlipCapabilities_abi;
6411     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(153643915, 39027, 19717, [191, 190, 71, 39, 166, 3, 143, 105]);
6412 }
6413 impl ICommonReceiptSlipCapabilities {
IsBarcodeSupported(&self) -> ::windows::runtime::Result<bool>6414     pub fn IsBarcodeSupported(&self) -> ::windows::runtime::Result<bool> {
6415         let this = self;
6416         unsafe {
6417             let mut result__: bool = ::std::mem::zeroed();
6418             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6419         }
6420     }
IsBitmapSupported(&self) -> ::windows::runtime::Result<bool>6421     pub fn IsBitmapSupported(&self) -> ::windows::runtime::Result<bool> {
6422         let this = self;
6423         unsafe {
6424             let mut result__: bool = ::std::mem::zeroed();
6425             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6426         }
6427     }
IsLeft90RotationSupported(&self) -> ::windows::runtime::Result<bool>6428     pub fn IsLeft90RotationSupported(&self) -> ::windows::runtime::Result<bool> {
6429         let this = self;
6430         unsafe {
6431             let mut result__: bool = ::std::mem::zeroed();
6432             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6433         }
6434     }
IsRight90RotationSupported(&self) -> ::windows::runtime::Result<bool>6435     pub fn IsRight90RotationSupported(&self) -> ::windows::runtime::Result<bool> {
6436         let this = self;
6437         unsafe {
6438             let mut result__: bool = ::std::mem::zeroed();
6439             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6440         }
6441     }
Is180RotationSupported(&self) -> ::windows::runtime::Result<bool>6442     pub fn Is180RotationSupported(&self) -> ::windows::runtime::Result<bool> {
6443         let this = self;
6444         unsafe {
6445             let mut result__: bool = ::std::mem::zeroed();
6446             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6447         }
6448     }
IsPrintAreaSupported(&self) -> ::windows::runtime::Result<bool>6449     pub fn IsPrintAreaSupported(&self) -> ::windows::runtime::Result<bool> {
6450         let this = self;
6451         unsafe {
6452             let mut result__: bool = ::std::mem::zeroed();
6453             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6454         }
6455     }
RuledLineCapabilities(&self) -> ::windows::runtime::Result<PosPrinterRuledLineCapabilities>6456     pub fn RuledLineCapabilities(&self) -> ::windows::runtime::Result<PosPrinterRuledLineCapabilities> {
6457         let this = self;
6458         unsafe {
6459             let mut result__: PosPrinterRuledLineCapabilities = ::std::mem::zeroed();
6460             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterRuledLineCapabilities>(result__)
6461         }
6462     }
6463     #[cfg(feature = "Foundation_Collections")]
SupportedBarcodeRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>6464     pub fn SupportedBarcodeRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>> {
6465         let this = self;
6466         unsafe {
6467             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6468             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>(result__)
6469         }
6470     }
6471     #[cfg(feature = "Foundation_Collections")]
SupportedBitmapRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>6472     pub fn SupportedBitmapRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>> {
6473         let this = self;
6474         unsafe {
6475             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6476             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>(result__)
6477         }
6478     }
IsPrinterPresent(&self) -> ::windows::runtime::Result<bool>6479     pub fn IsPrinterPresent(&self) -> ::windows::runtime::Result<bool> {
6480         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6481         unsafe {
6482             let mut result__: bool = ::std::mem::zeroed();
6483             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6484         }
6485     }
IsDualColorSupported(&self) -> ::windows::runtime::Result<bool>6486     pub fn IsDualColorSupported(&self) -> ::windows::runtime::Result<bool> {
6487         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6488         unsafe {
6489             let mut result__: bool = ::std::mem::zeroed();
6490             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6491         }
6492     }
ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities>6493     pub fn ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities> {
6494         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6495         unsafe {
6496             let mut result__: PosPrinterColorCapabilities = ::std::mem::zeroed();
6497             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterColorCapabilities>(result__)
6498         }
6499     }
CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors>6500     pub fn CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors> {
6501         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6502         unsafe {
6503             let mut result__: PosPrinterCartridgeSensors = ::std::mem::zeroed();
6504             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterCartridgeSensors>(result__)
6505         }
6506     }
IsBoldSupported(&self) -> ::windows::runtime::Result<bool>6507     pub fn IsBoldSupported(&self) -> ::windows::runtime::Result<bool> {
6508         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6509         unsafe {
6510             let mut result__: bool = ::std::mem::zeroed();
6511             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6512         }
6513     }
IsItalicSupported(&self) -> ::windows::runtime::Result<bool>6514     pub fn IsItalicSupported(&self) -> ::windows::runtime::Result<bool> {
6515         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6516         unsafe {
6517             let mut result__: bool = ::std::mem::zeroed();
6518             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6519         }
6520     }
IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool>6521     pub fn IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool> {
6522         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6523         unsafe {
6524             let mut result__: bool = ::std::mem::zeroed();
6525             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6526         }
6527     }
IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool>6528     pub fn IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool> {
6529         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6530         unsafe {
6531             let mut result__: bool = ::std::mem::zeroed();
6532             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6533         }
6534     }
IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>6535     pub fn IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
6536         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6537         unsafe {
6538             let mut result__: bool = ::std::mem::zeroed();
6539             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6540         }
6541     }
IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>6542     pub fn IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
6543         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6544         unsafe {
6545             let mut result__: bool = ::std::mem::zeroed();
6546             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6547         }
6548     }
IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool>6549     pub fn IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool> {
6550         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6551         unsafe {
6552             let mut result__: bool = ::std::mem::zeroed();
6553             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6554         }
6555     }
IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool>6556     pub fn IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool> {
6557         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6558         unsafe {
6559             let mut result__: bool = ::std::mem::zeroed();
6560             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6561         }
6562     }
6563     #[cfg(feature = "Foundation_Collections")]
SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>>6564     pub fn SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>> {
6565         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
6566         unsafe {
6567             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6568             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<u32>>(result__)
6569         }
6570     }
6571 }
6572 unsafe impl ::windows::runtime::RuntimeType for ICommonReceiptSlipCapabilities {
6573     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"{09286b8b-9873-4d05-bfbe-4727a6038f69}");
6574 }
6575 impl ::std::convert::From<ICommonReceiptSlipCapabilities> for ::windows::runtime::IUnknown {
from(value: ICommonReceiptSlipCapabilities) -> Self6576     fn from(value: ICommonReceiptSlipCapabilities) -> Self {
6577         unsafe { ::std::mem::transmute(value) }
6578     }
6579 }
6580 impl ::std::convert::From<&ICommonReceiptSlipCapabilities> for ::windows::runtime::IUnknown {
from(value: &ICommonReceiptSlipCapabilities) -> Self6581     fn from(value: &ICommonReceiptSlipCapabilities) -> Self {
6582         ::std::convert::From::from(::std::clone::Clone::clone(value))
6583     }
6584 }
6585 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ICommonReceiptSlipCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6586     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6587         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6588     }
6589 }
6590 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ICommonReceiptSlipCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6591     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6592         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6593     }
6594 }
6595 impl ::std::convert::From<ICommonReceiptSlipCapabilities> for ::windows::runtime::IInspectable {
from(value: ICommonReceiptSlipCapabilities) -> Self6596     fn from(value: ICommonReceiptSlipCapabilities) -> Self {
6597         value.0
6598     }
6599 }
6600 impl ::std::convert::From<&ICommonReceiptSlipCapabilities> for ::windows::runtime::IInspectable {
from(value: &ICommonReceiptSlipCapabilities) -> Self6601     fn from(value: &ICommonReceiptSlipCapabilities) -> Self {
6602         value.0.clone()
6603     }
6604 }
6605 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ICommonReceiptSlipCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>6606     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6607         ::windows::runtime::Param::Owned(self.0)
6608     }
6609 }
6610 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ICommonReceiptSlipCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>6611     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6612         ::windows::runtime::Param::Borrowed(&self.0)
6613     }
6614 }
6615 impl ::std::convert::TryFrom<ICommonReceiptSlipCapabilities> for ICommonPosPrintStationCapabilities {
6616     type Error = ::windows::runtime::Error;
try_from(value: ICommonReceiptSlipCapabilities) -> ::windows::runtime::Result<Self>6617     fn try_from(value: ICommonReceiptSlipCapabilities) -> ::windows::runtime::Result<Self> {
6618         ::std::convert::TryFrom::try_from(&value)
6619     }
6620 }
6621 impl ::std::convert::TryFrom<&ICommonReceiptSlipCapabilities> for ICommonPosPrintStationCapabilities {
6622     type Error = ::windows::runtime::Error;
try_from(value: &ICommonReceiptSlipCapabilities) -> ::windows::runtime::Result<Self>6623     fn try_from(value: &ICommonReceiptSlipCapabilities) -> ::windows::runtime::Result<Self> {
6624         ::windows::runtime::Interface::cast(value)
6625     }
6626 }
6627 impl<'a> ::windows::runtime::IntoParam<'a, ICommonPosPrintStationCapabilities> for ICommonReceiptSlipCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities>6628     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities> {
6629         ::windows::runtime::IntoParam::into_param(&self)
6630     }
6631 }
6632 impl<'a> ::windows::runtime::IntoParam<'a, ICommonPosPrintStationCapabilities> for &ICommonReceiptSlipCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities>6633     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities> {
6634         ::std::convert::TryInto::<ICommonPosPrintStationCapabilities>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
6635     }
6636 }
6637 #[repr(C)]
6638 #[doc(hidden)]
6639 pub struct ICommonReceiptSlipCapabilities_abi(
6640     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6641     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6642     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6643     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6644     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6645     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6646     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6647     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6648     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6649     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6650     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6651     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6652     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PosPrinterRuledLineCapabilities) -> ::windows::runtime::HRESULT,
6653     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6654     #[cfg(not(feature = "Foundation_Collections"))] usize,
6655     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6656     #[cfg(not(feature = "Foundation_Collections"))] usize,
6657 );
6658 #[repr(transparent)]
6659 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6660 #[doc(hidden)]
6661 pub struct IJournalPrintJob(::windows::runtime::IInspectable);
6662 unsafe impl ::windows::runtime::Interface for IJournalPrintJob {
6663     type Vtable = IJournalPrintJob_abi;
6664     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2672765028, 62448, 21968, [140, 57, 116, 204, 145, 120, 62, 237]);
6665 }
6666 #[repr(C)]
6667 #[doc(hidden)]
6668 pub struct IJournalPrintJob_abi(
6669     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6670     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6671     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6672     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6673     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6674     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6675     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, data: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, printoptions: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6676     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, linecount: i32) -> ::windows::runtime::HRESULT,
6677     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, distance: i32) -> ::windows::runtime::HRESULT,
6678 );
6679 #[repr(transparent)]
6680 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6681 #[doc(hidden)]
6682 pub struct IJournalPrinterCapabilities(::windows::runtime::IInspectable);
6683 unsafe impl ::windows::runtime::Interface for IJournalPrinterCapabilities {
6684     type Vtable = IJournalPrinterCapabilities_abi;
6685     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(995937347, 57415, 17507, [187, 88, 23, 181, 186, 29, 128, 86]);
6686 }
6687 #[repr(C)]
6688 #[doc(hidden)]
6689 pub struct IJournalPrinterCapabilities_abi(
6690     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6691     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6692     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6693     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6694     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6695     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6696 );
6697 #[repr(transparent)]
6698 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6699 #[doc(hidden)]
6700 pub struct IJournalPrinterCapabilities2(::windows::runtime::IInspectable);
6701 unsafe impl ::windows::runtime::Interface for IJournalPrinterCapabilities2 {
6702     type Vtable = IJournalPrinterCapabilities2_abi;
6703     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(61912645, 13240, 21307, [186, 170, 164, 56, 146, 131, 171, 10]);
6704 }
6705 #[repr(C)]
6706 #[doc(hidden)]
6707 pub struct IJournalPrinterCapabilities2_abi(
6708     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6709     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6710     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6711     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6712     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6713     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6714     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6715     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6716     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6717     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6718     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6719     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6720 );
6721 #[repr(transparent)]
6722 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6723 #[doc(hidden)]
6724 pub struct ILineDisplay(::windows::runtime::IInspectable);
6725 unsafe impl ::windows::runtime::Interface for ILineDisplay {
6726     type Vtable = ILineDisplay_abi;
6727     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(620093262, 15513, 17634, [183, 63, 229, 27, 227, 99, 122, 140]);
6728 }
6729 #[repr(C)]
6730 #[doc(hidden)]
6731 pub struct ILineDisplay_abi(
6732     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6733     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6734     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6735     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6736     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6737     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6738     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6739     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6740     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6741     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6742     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6743     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6744     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6745     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6746     #[cfg(not(feature = "Foundation"))] usize,
6747 );
6748 #[repr(transparent)]
6749 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6750 #[doc(hidden)]
6751 pub struct ILineDisplay2(::windows::runtime::IInspectable);
6752 unsafe impl ::windows::runtime::Interface for ILineDisplay2 {
6753     type Vtable = ILineDisplay2_abi;
6754     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3264652840, 61252, 16627, [189, 28, 176, 76, 106, 92, 220, 125]);
6755 }
6756 #[repr(C)]
6757 #[doc(hidden)]
6758 pub struct ILineDisplay2_abi(
6759     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6760     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6761     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6762     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6763     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6764     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6765     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6766     #[cfg(not(feature = "Foundation"))] usize,
6767 );
6768 #[repr(transparent)]
6769 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6770 #[doc(hidden)]
6771 pub struct ILineDisplayAttributes(::windows::runtime::IInspectable);
6772 unsafe impl ::windows::runtime::Interface for ILineDisplayAttributes {
6773     type Vtable = ILineDisplayAttributes_abi;
6774     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3246254492, 8858, 19476, [166, 241, 180, 228, 177, 254, 173, 146]);
6775 }
6776 #[repr(C)]
6777 #[doc(hidden)]
6778 pub struct ILineDisplayAttributes_abi(
6779     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6780     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6781     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6782     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6783     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6784     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6785     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6786     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6787     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut i32) -> ::windows::runtime::HRESULT,
6788     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: i32) -> ::windows::runtime::HRESULT,
6789     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
6790     #[cfg(not(feature = "Foundation"))] usize,
6791     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
6792     #[cfg(not(feature = "Foundation"))] usize,
6793     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::Size) -> ::windows::runtime::HRESULT,
6794     #[cfg(not(feature = "Foundation"))] usize,
6795     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::Size) -> ::windows::runtime::HRESULT,
6796     #[cfg(not(feature = "Foundation"))] usize,
6797     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut i32) -> ::windows::runtime::HRESULT,
6798     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: i32) -> ::windows::runtime::HRESULT,
6799     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6800     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6801     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6802     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6803 );
6804 #[repr(transparent)]
6805 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6806 #[doc(hidden)]
6807 pub struct ILineDisplayCapabilities(::windows::runtime::IInspectable);
6808 unsafe impl ::windows::runtime::Interface for ILineDisplayCapabilities {
6809     type Vtable = ILineDisplayCapabilities_abi;
6810     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1511372241, 36293, 19356, [145, 114, 48, 62, 71, 183, 12, 85]);
6811 }
6812 #[repr(C)]
6813 #[doc(hidden)]
6814 pub struct ILineDisplayCapabilities_abi(
6815     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6816     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6817     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6818     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6819     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6820     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6821     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6822     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6823     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut UnifiedPosPowerReportingType) -> ::windows::runtime::HRESULT,
6824     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6825     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6826     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6827     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6828     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6829     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut LineDisplayTextAttributeGranularity) -> ::windows::runtime::HRESULT,
6830     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut LineDisplayTextAttributeGranularity) -> ::windows::runtime::HRESULT,
6831     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6832     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6833     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6834     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6835     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6836     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6837     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6838     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6839 );
6840 #[repr(transparent)]
6841 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6842 #[doc(hidden)]
6843 pub struct ILineDisplayCursor(::windows::runtime::IInspectable);
6844 unsafe impl ::windows::runtime::Interface for ILineDisplayCursor {
6845     type Vtable = ILineDisplayCursor_abi;
6846     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3974102085, 30026, 20027, [171, 43, 21, 17, 129, 8, 86, 5]);
6847 }
6848 #[repr(C)]
6849 #[doc(hidden)]
6850 pub struct ILineDisplayCursor_abi(
6851     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6852     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6853     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6854     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6855     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6856     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6857     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6858     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6859     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6860     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6861     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6862     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6863     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6864     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6865     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, attributes: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6866     #[cfg(not(feature = "Foundation"))] usize,
6867 );
6868 #[repr(transparent)]
6869 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6870 #[doc(hidden)]
6871 pub struct ILineDisplayCursorAttributes(::windows::runtime::IInspectable);
6872 unsafe impl ::windows::runtime::Interface for ILineDisplayCursorAttributes {
6873     type Vtable = ILineDisplayCursorAttributes_abi;
6874     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1311593726, 20477, 16784, [170, 225, 206, 40, 95, 32, 200, 150]);
6875 }
6876 #[repr(C)]
6877 #[doc(hidden)]
6878 pub struct ILineDisplayCursorAttributes_abi(
6879     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6880     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6881     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6882     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6883     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6884     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6885     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6886     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6887     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut LineDisplayCursorType) -> ::windows::runtime::HRESULT,
6888     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: LineDisplayCursorType) -> ::windows::runtime::HRESULT,
6889     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6890     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6891     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::Point) -> ::windows::runtime::HRESULT,
6892     #[cfg(not(feature = "Foundation"))] usize,
6893     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::Point) -> ::windows::runtime::HRESULT,
6894     #[cfg(not(feature = "Foundation"))] usize,
6895 );
6896 #[repr(transparent)]
6897 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6898 #[doc(hidden)]
6899 pub struct ILineDisplayCustomGlyphs(::windows::runtime::IInspectable);
6900 unsafe impl ::windows::runtime::Interface for ILineDisplayCustomGlyphs {
6901     type Vtable = ILineDisplayCustomGlyphs_abi;
6902     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(576190012, 62051, 17649, [161, 160, 231, 80, 166, 160, 236, 84]);
6903 }
6904 #[repr(C)]
6905 #[doc(hidden)]
6906 pub struct ILineDisplayCustomGlyphs_abi(
6907     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6908     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6909     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6910     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6911     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6912     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6913     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::Size) -> ::windows::runtime::HRESULT,
6914     #[cfg(not(feature = "Foundation"))] usize,
6915     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6916     #[cfg(not(feature = "Foundation_Collections"))] usize,
6917     #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphcode: u32, glyphdata: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6918     #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))] usize,
6919 );
6920 #[repr(transparent)]
6921 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6922 #[doc(hidden)]
6923 pub struct ILineDisplayMarquee(::windows::runtime::IInspectable);
6924 unsafe impl ::windows::runtime::Interface for ILineDisplayMarquee {
6925     type Vtable = ILineDisplayMarquee_abi;
6926     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2748530238, 62570, 19322, [188, 33, 83, 235, 59, 87, 248, 180]);
6927 }
6928 #[repr(C)]
6929 #[doc(hidden)]
6930 pub struct ILineDisplayMarquee_abi(
6931     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6932     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6933     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6934     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6935     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6936     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6937     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut LineDisplayMarqueeFormat) -> ::windows::runtime::HRESULT,
6938     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: LineDisplayMarqueeFormat) -> ::windows::runtime::HRESULT,
6939     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
6940     #[cfg(not(feature = "Foundation"))] usize,
6941     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
6942     #[cfg(not(feature = "Foundation"))] usize,
6943     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
6944     #[cfg(not(feature = "Foundation"))] usize,
6945     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
6946     #[cfg(not(feature = "Foundation"))] usize,
6947     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, direction: LineDisplayScrollDirection, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6948     #[cfg(not(feature = "Foundation"))] usize,
6949     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6950     #[cfg(not(feature = "Foundation"))] usize,
6951 );
6952 #[repr(transparent)]
6953 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6954 #[doc(hidden)]
6955 pub struct ILineDisplayStatics(::windows::runtime::IInspectable);
6956 unsafe impl ::windows::runtime::Interface for ILineDisplayStatics {
6957     type Vtable = ILineDisplayStatics_abi;
6958     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(36552886, 4528, 18064, [149, 71, 11, 57, 197, 175, 33, 20]);
6959 }
6960 #[repr(C)]
6961 #[doc(hidden)]
6962 pub struct ILineDisplayStatics_abi(
6963     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6964     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6965     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6967     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6968     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6969     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, deviceid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6970     #[cfg(not(feature = "Foundation"))] usize,
6971     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6972     #[cfg(not(feature = "Foundation"))] usize,
6973     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6974     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, connectiontypes: PosConnectionTypes, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6975 );
6976 #[repr(transparent)]
6977 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6978 #[doc(hidden)]
6979 pub struct ILineDisplayStatics2(::windows::runtime::IInspectable);
6980 unsafe impl ::windows::runtime::Interface for ILineDisplayStatics2 {
6981     type Vtable = ILineDisplayStatics2_abi;
6982     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1611415324, 30635, 18792, [167, 222, 192, 47, 241, 105, 242, 204]);
6983 }
6984 #[repr(C)]
6985 #[doc(hidden)]
6986 pub struct ILineDisplayStatics2_abi(
6987     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6988     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6989     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6990     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6991     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6992     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6993     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6994 );
6995 #[repr(transparent)]
6996 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6997 #[doc(hidden)]
6998 pub struct ILineDisplayStatisticsCategorySelector(::windows::runtime::IInspectable);
6999 unsafe impl ::windows::runtime::Interface for ILineDisplayStatisticsCategorySelector {
7000     type Vtable = ILineDisplayStatisticsCategorySelector_abi;
7001     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3038889067, 37492, 19748, [148, 243, 182, 1, 123, 131, 36, 68]);
7002 }
7003 #[repr(C)]
7004 #[doc(hidden)]
7005 pub struct ILineDisplayStatisticsCategorySelector_abi(
7006     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7007     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7008     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7009     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7010     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7011     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7012     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7013     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7014     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7015 );
7016 #[repr(transparent)]
7017 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7018 #[doc(hidden)]
7019 pub struct ILineDisplayStatusUpdatedEventArgs(::windows::runtime::IInspectable);
7020 unsafe impl ::windows::runtime::Interface for ILineDisplayStatusUpdatedEventArgs {
7021     type Vtable = ILineDisplayStatusUpdatedEventArgs_abi;
7022     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3721755674, 34555, 20154, [147, 209, 111, 94, 218, 82, 183, 82]);
7023 }
7024 #[repr(C)]
7025 #[doc(hidden)]
7026 pub struct ILineDisplayStatusUpdatedEventArgs_abi(
7027     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7028     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7029     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7030     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7031     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7032     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7033     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut LineDisplayPowerStatus) -> ::windows::runtime::HRESULT,
7034 );
7035 #[repr(transparent)]
7036 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7037 #[doc(hidden)]
7038 pub struct ILineDisplayStoredBitmap(::windows::runtime::IInspectable);
7039 unsafe impl ::windows::runtime::Interface for ILineDisplayStoredBitmap {
7040     type Vtable = ILineDisplayStoredBitmap_abi;
7041     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4129378651, 55326, 17338, [191, 27, 188, 250, 60, 120, 91, 160]);
7042 }
7043 #[repr(C)]
7044 #[doc(hidden)]
7045 pub struct ILineDisplayStoredBitmap_abi(
7046     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7047     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7048     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7049     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7050     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7051     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7052     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7053     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7054     #[cfg(not(feature = "Foundation"))] usize,
7055 );
7056 #[repr(transparent)]
7057 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7058 #[doc(hidden)]
7059 pub struct ILineDisplayWindow(::windows::runtime::IInspectable);
7060 unsafe impl ::windows::runtime::Interface for ILineDisplayWindow {
7061     type Vtable = ILineDisplayWindow_abi;
7062     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3525308148, 9060, 19429, [190, 225, 133, 22, 128, 175, 73, 100]);
7063 }
7064 #[repr(C)]
7065 #[doc(hidden)]
7066 pub struct ILineDisplayWindow_abi(
7067     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7068     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7069     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7070     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7071     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7072     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7073     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::Size) -> ::windows::runtime::HRESULT,
7074     #[cfg(not(feature = "Foundation"))] usize,
7075     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
7076     #[cfg(not(feature = "Foundation"))] usize,
7077     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
7078     #[cfg(not(feature = "Foundation"))] usize,
7079     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7080     #[cfg(not(feature = "Foundation"))] usize,
7081     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, text: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, displayattribute: LineDisplayTextAttribute, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7082     #[cfg(not(feature = "Foundation"))] usize,
7083     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, text: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, displayattribute: LineDisplayTextAttribute, startposition: super::super::Foundation::Point, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7084     #[cfg(not(feature = "Foundation"))] usize,
7085     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, text: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7086     #[cfg(not(feature = "Foundation"))] usize,
7087     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, direction: LineDisplayScrollDirection, numberofcolumnsorrows: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7088     #[cfg(not(feature = "Foundation"))] usize,
7089     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7090     #[cfg(not(feature = "Foundation"))] usize,
7091 );
7092 #[repr(transparent)]
7093 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7094 #[doc(hidden)]
7095 pub struct ILineDisplayWindow2(::windows::runtime::IInspectable);
7096 unsafe impl ::windows::runtime::Interface for ILineDisplayWindow2 {
7097     type Vtable = ILineDisplayWindow2_abi;
7098     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2841436902, 48600, 17253, [142, 17, 222, 148, 222, 141, 255, 2]);
7099 }
7100 #[repr(C)]
7101 #[doc(hidden)]
7102 pub struct ILineDisplayWindow2_abi(
7103     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7104     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7105     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7106     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7107     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7108     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7109     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7110     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7111     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7112     #[cfg(not(feature = "Foundation"))] usize,
7113     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7114     #[cfg(not(feature = "Foundation"))] usize,
7115     #[cfg(all(feature = "Foundation", feature = "Storage"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7116     #[cfg(not(all(feature = "Foundation", feature = "Storage")))] usize,
7117     #[cfg(all(feature = "Foundation", feature = "Storage"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7118     #[cfg(not(all(feature = "Foundation", feature = "Storage")))] usize,
7119     #[cfg(all(feature = "Foundation", feature = "Storage"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment, widthinpixels: i32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7120     #[cfg(not(all(feature = "Foundation", feature = "Storage")))] usize,
7121     #[cfg(all(feature = "Foundation", feature = "Storage"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, offsetinpixels: super::super::Foundation::Point, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7122     #[cfg(not(all(feature = "Foundation", feature = "Storage")))] usize,
7123     #[cfg(all(feature = "Foundation", feature = "Storage"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, offsetinpixels: super::super::Foundation::Point, widthinpixels: i32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7124     #[cfg(not(all(feature = "Foundation", feature = "Storage")))] usize,
7125 );
7126 #[repr(transparent)]
7127 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7128 #[doc(hidden)]
7129 pub struct IMagneticStripeReader(::windows::runtime::IInspectable);
7130 unsafe impl ::windows::runtime::Interface for IMagneticStripeReader {
7131     type Vtable = IMagneticStripeReader_abi;
7132     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(445820949, 18371, 18058, [147, 51, 12, 101, 23, 87, 72, 131]);
7133 }
7134 #[repr(C)]
7135 #[doc(hidden)]
7136 pub struct IMagneticStripeReader_abi(
7137     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7138     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7139     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7140     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7141     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7142     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7143     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7144     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7145     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result_size__: *mut u32, result__: *mut *mut u32) -> ::windows::runtime::HRESULT,
7146     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut MagneticStripeReaderAuthenticationProtocol) -> ::windows::runtime::HRESULT,
7147     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, level: UnifiedPosHealthCheckLevel, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7148     #[cfg(not(feature = "Foundation"))] usize,
7149     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7150     #[cfg(not(feature = "Foundation"))] usize,
7151     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections", feature = "Storage_Streams"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statisticscategories: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7152     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections", feature = "Storage_Streams")))] usize,
7153     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut MagneticStripeReaderErrorReportingType) -> ::windows::runtime::HRESULT,
7154     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
7155     #[cfg(not(feature = "Foundation"))] usize,
7156     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
7157     #[cfg(not(feature = "Foundation"))] usize,
7158 );
7159 #[repr(transparent)]
7160 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7161 #[doc(hidden)]
7162 pub struct IMagneticStripeReaderAamvaCardDataReceivedEventArgs(::windows::runtime::IInspectable);
7163 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderAamvaCardDataReceivedEventArgs {
7164     type Vtable = IMagneticStripeReaderAamvaCardDataReceivedEventArgs_abi;
7165     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(172735825, 49942, 18704, [135, 243, 122, 98, 186, 134, 45, 49]);
7166 }
7167 #[repr(C)]
7168 #[doc(hidden)]
7169 pub struct IMagneticStripeReaderAamvaCardDataReceivedEventArgs_abi(
7170     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7171     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7172     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7173     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7174     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7175     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7176     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7177     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7178     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7179     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7180     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7181     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7182     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7183     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7184     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7185     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7186     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7187     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7188     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7189     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7190     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7191     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7192     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7193     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7194     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7195 );
7196 #[repr(transparent)]
7197 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7198 #[doc(hidden)]
7199 pub struct IMagneticStripeReaderBankCardDataReceivedEventArgs(::windows::runtime::IInspectable);
7200 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderBankCardDataReceivedEventArgs {
7201     type Vtable = IMagneticStripeReaderBankCardDataReceivedEventArgs_abi;
7202     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(781551651, 41754, 18275, [136, 44, 35, 114, 94, 57, 176, 142]);
7203 }
7204 #[repr(C)]
7205 #[doc(hidden)]
7206 pub struct IMagneticStripeReaderBankCardDataReceivedEventArgs_abi(
7207     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7208     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7209     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7210     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7211     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7212     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7213     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7214     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7215     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7216     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7217     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7218     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7219     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7220     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7221     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7222 );
7223 #[repr(transparent)]
7224 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7225 #[doc(hidden)]
7226 pub struct IMagneticStripeReaderCapabilities(::windows::runtime::IInspectable);
7227 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderCapabilities {
7228     type Vtable = IMagneticStripeReaderCapabilities_abi;
7229     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1898479772, 50240, 17570, [164, 103, 70, 145, 117, 208, 40, 150]);
7230 }
7231 #[repr(C)]
7232 #[doc(hidden)]
7233 pub struct IMagneticStripeReaderCapabilities_abi(
7234     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7235     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7236     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7237     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7238     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7239     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7240     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7241     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7242     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut MagneticStripeReaderAuthenticationLevel) -> ::windows::runtime::HRESULT,
7243     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7244     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7245     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7246     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut UnifiedPosPowerReportingType) -> ::windows::runtime::HRESULT,
7247     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7248     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7249     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7250     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7251 );
7252 #[repr(transparent)]
7253 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7254 #[doc(hidden)]
7255 pub struct IMagneticStripeReaderCardTypesStatics(::windows::runtime::IInspectable);
7256 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderCardTypesStatics {
7257     type Vtable = IMagneticStripeReaderCardTypesStatics_abi;
7258     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1385114717, 10630, 18255, [132, 84, 124, 205, 5, 146, 141, 95]);
7259 }
7260 #[repr(C)]
7261 #[doc(hidden)]
7262 pub struct IMagneticStripeReaderCardTypesStatics_abi(
7263     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7264     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7265     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7266     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7267     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7268     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7269     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7270     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7271     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7272     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7273 );
7274 #[repr(transparent)]
7275 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7276 #[doc(hidden)]
7277 pub struct IMagneticStripeReaderEncryptionAlgorithmsStatics(::windows::runtime::IInspectable);
7278 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderEncryptionAlgorithmsStatics {
7279     type Vtable = IMagneticStripeReaderEncryptionAlgorithmsStatics_abi;
7280     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1404400464, 50139, 18260, [156, 0, 65, 57, 35, 116, 161, 9]);
7281 }
7282 #[repr(C)]
7283 #[doc(hidden)]
7284 pub struct IMagneticStripeReaderEncryptionAlgorithmsStatics_abi(
7285     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7286     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7287     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7288     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7289     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7290     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7291     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7292     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7293     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7294 );
7295 #[repr(transparent)]
7296 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7297 #[doc(hidden)]
7298 pub struct IMagneticStripeReaderErrorOccurredEventArgs(::windows::runtime::IInspectable);
7299 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderErrorOccurredEventArgs {
7300     type Vtable = IMagneticStripeReaderErrorOccurredEventArgs_abi;
7301     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(535689565, 11396, 16813, [183, 120, 242, 53, 106, 120, 154, 177]);
7302 }
7303 #[repr(C)]
7304 #[doc(hidden)]
7305 pub struct IMagneticStripeReaderErrorOccurredEventArgs_abi(
7306     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7307     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7308     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7309     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7310     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7311     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7312     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut MagneticStripeReaderTrackErrorType) -> ::windows::runtime::HRESULT,
7313     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut MagneticStripeReaderTrackErrorType) -> ::windows::runtime::HRESULT,
7314     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut MagneticStripeReaderTrackErrorType) -> ::windows::runtime::HRESULT,
7315     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut MagneticStripeReaderTrackErrorType) -> ::windows::runtime::HRESULT,
7316     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7317     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7318 );
7319 #[repr(transparent)]
7320 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7321 #[doc(hidden)]
7322 pub struct IMagneticStripeReaderReport(::windows::runtime::IInspectable);
7323 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderReport {
7324     type Vtable = IMagneticStripeReaderReport_abi;
7325     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1784373319, 39344, 16776, [190, 241, 237, 223, 121, 247, 143, 230]);
7326 }
7327 #[repr(C)]
7328 #[doc(hidden)]
7329 pub struct IMagneticStripeReaderReport_abi(
7330     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7331     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7332     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7333     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7334     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7335     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7336     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7337     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7338     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7339     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7340     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7341     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7342     #[cfg(not(feature = "Foundation_Collections"))] usize,
7343     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7344     #[cfg(not(feature = "Storage_Streams"))] usize,
7345     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7346     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7347     #[cfg(not(feature = "Storage_Streams"))] usize,
7348 );
7349 #[repr(transparent)]
7350 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7351 #[doc(hidden)]
7352 pub struct IMagneticStripeReaderStatics(::windows::runtime::IInspectable);
7353 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderStatics {
7354     type Vtable = IMagneticStripeReaderStatics_abi;
7355     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3294604106, 61399, 18272, [165, 206, 21, 176, 228, 126, 148, 235]);
7356 }
7357 #[repr(C)]
7358 #[doc(hidden)]
7359 pub struct IMagneticStripeReaderStatics_abi(
7360     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7361     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7362     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7363     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7364     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7365     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7366     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7367     #[cfg(not(feature = "Foundation"))] usize,
7368     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, deviceid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7369     #[cfg(not(feature = "Foundation"))] usize,
7370     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7371 );
7372 #[repr(transparent)]
7373 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7374 #[doc(hidden)]
7375 pub struct IMagneticStripeReaderStatics2(::windows::runtime::IInspectable);
7376 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderStatics2 {
7377     type Vtable = IMagneticStripeReaderStatics2_abi;
7378     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2360197986, 54887, 18682, [134, 188, 245, 174, 17, 137, 38, 43]);
7379 }
7380 #[repr(C)]
7381 #[doc(hidden)]
7382 pub struct IMagneticStripeReaderStatics2_abi(
7383     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7384     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7385     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7386     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7387     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7388     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7389     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, connectiontypes: PosConnectionTypes, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7390 );
7391 #[repr(transparent)]
7392 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7393 #[doc(hidden)]
7394 pub struct IMagneticStripeReaderStatusUpdatedEventArgs(::windows::runtime::IInspectable);
7395 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderStatusUpdatedEventArgs {
7396     type Vtable = IMagneticStripeReaderStatusUpdatedEventArgs_abi;
7397     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(164391856, 12898, 16413, [158, 138, 232, 13, 99, 88, 144, 107]);
7398 }
7399 #[repr(C)]
7400 #[doc(hidden)]
7401 pub struct IMagneticStripeReaderStatusUpdatedEventArgs_abi(
7402     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7403     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7404     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7405     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7406     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7407     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7408     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut MagneticStripeReaderStatus) -> ::windows::runtime::HRESULT,
7409     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7410 );
7411 #[repr(transparent)]
7412 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7413 #[doc(hidden)]
7414 pub struct IMagneticStripeReaderTrackData(::windows::runtime::IInspectable);
7415 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderTrackData {
7416     type Vtable = IMagneticStripeReaderTrackData_abi;
7417     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(273479281, 19101, 17518, [171, 197, 32, 64, 35, 7, 186, 54]);
7418 }
7419 #[repr(C)]
7420 #[doc(hidden)]
7421 pub struct IMagneticStripeReaderTrackData_abi(
7422     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7423     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7424     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7425     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7426     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7427     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7428     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7429     #[cfg(not(feature = "Storage_Streams"))] usize,
7430     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7431     #[cfg(not(feature = "Storage_Streams"))] usize,
7432     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7433     #[cfg(not(feature = "Storage_Streams"))] usize,
7434 );
7435 #[repr(transparent)]
7436 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7437 #[doc(hidden)]
7438 pub struct IMagneticStripeReaderVendorSpecificCardDataReceivedEventArgs(::windows::runtime::IInspectable);
7439 unsafe impl ::windows::runtime::Interface for IMagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {
7440     type Vtable = IMagneticStripeReaderVendorSpecificCardDataReceivedEventArgs_abi;
7441     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2936689940, 22988, 19040, [153, 232, 153, 165, 61, 172, 229, 170]);
7442 }
7443 #[repr(C)]
7444 #[doc(hidden)]
7445 pub struct IMagneticStripeReaderVendorSpecificCardDataReceivedEventArgs_abi(
7446     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7447     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7448     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7449     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7450     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7451     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7452     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7453 );
7454 #[repr(transparent)]
7455 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7456 #[doc(hidden)]
7457 pub struct IPosPrinter(::windows::runtime::IInspectable);
7458 unsafe impl ::windows::runtime::Interface for IPosPrinter {
7459     type Vtable = IPosPrinter_abi;
7460     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(704889102, 39449, 18945, [153, 79, 18, 223, 173, 106, 220, 191]);
7461 }
7462 #[repr(C)]
7463 #[doc(hidden)]
7464 pub struct IPosPrinter_abi(
7465     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7466     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7467     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7468     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7469     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7470     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7471     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7472     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7473     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7474     #[cfg(not(feature = "Foundation_Collections"))] usize,
7475     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7476     #[cfg(not(feature = "Foundation_Collections"))] usize,
7477     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7478     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7479     #[cfg(not(feature = "Foundation"))] usize,
7480     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, level: UnifiedPosHealthCheckLevel, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7481     #[cfg(not(feature = "Foundation"))] usize,
7482     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, statisticscategories: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7483     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
7484     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
7485     #[cfg(not(feature = "Foundation"))] usize,
7486     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
7487     #[cfg(not(feature = "Foundation"))] usize,
7488 );
7489 #[repr(transparent)]
7490 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7491 #[doc(hidden)]
7492 pub struct IPosPrinter2(::windows::runtime::IInspectable);
7493 unsafe impl ::windows::runtime::Interface for IPosPrinter2 {
7494     type Vtable = IPosPrinter2_abi;
7495     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(612660712, 35736, 21783, [142, 72, 118, 14, 134, 246, 137, 135]);
7496 }
7497 #[repr(C)]
7498 #[doc(hidden)]
7499 pub struct IPosPrinter2_abi(
7500     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7501     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7502     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7503     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7504     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7505     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7506     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7507     #[cfg(not(feature = "Foundation_Collections"))] usize,
7508     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typeface: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7509 );
7510 #[repr(transparent)]
7511 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7512 #[doc(hidden)]
7513 pub struct IPosPrinterCapabilities(::windows::runtime::IInspectable);
7514 unsafe impl ::windows::runtime::Interface for IPosPrinterCapabilities {
7515     type Vtable = IPosPrinterCapabilities_abi;
7516     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3454621473, 17280, 18821, [173, 197, 57, 219, 48, 205, 147, 188]);
7517 }
7518 #[repr(C)]
7519 #[doc(hidden)]
7520 pub struct IPosPrinterCapabilities_abi(
7521     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7522     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7523     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7524     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7525     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7526     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7527     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut UnifiedPosPowerReportingType) -> ::windows::runtime::HRESULT,
7528     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7529     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7530     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7531     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7532     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7533     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7534     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7535     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7536     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7537 );
7538 #[repr(transparent)]
7539 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7540 #[doc(hidden)]
7541 pub struct IPosPrinterCharacterSetIdsStatics(::windows::runtime::IInspectable);
7542 unsafe impl ::windows::runtime::Interface for IPosPrinterCharacterSetIdsStatics {
7543     type Vtable = IPosPrinterCharacterSetIdsStatics_abi;
7544     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1550884607, 28826, 20455, [178, 21, 6, 167, 72, 163, 139, 57]);
7545 }
7546 #[repr(C)]
7547 #[doc(hidden)]
7548 pub struct IPosPrinterCharacterSetIdsStatics_abi(
7549     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7550     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7551     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7552     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7553     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7554     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7555     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7556     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7557     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7558 );
7559 #[repr(transparent)]
7560 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7561 #[doc(hidden)]
7562 pub struct IPosPrinterFontProperty(::windows::runtime::IInspectable);
7563 unsafe impl ::windows::runtime::Interface for IPosPrinterFontProperty {
7564     type Vtable = IPosPrinterFontProperty_abi;
7565     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2817845562, 63660, 24324, [132, 210, 41, 177, 109, 138, 99, 60]);
7566 }
7567 #[repr(C)]
7568 #[doc(hidden)]
7569 pub struct IPosPrinterFontProperty_abi(
7570     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7571     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7572     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7573     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7574     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7575     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7576     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7577     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7578     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7579     #[cfg(not(feature = "Foundation_Collections"))] usize,
7580 );
7581 #[repr(transparent)]
7582 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7583 pub struct IPosPrinterJob(::windows::runtime::IInspectable);
7584 unsafe impl ::windows::runtime::Interface for IPosPrinterJob {
7585     type Vtable = IPosPrinterJob_abi;
7586     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2593390684, 1557, 17809, [165, 143, 48, 248, 126, 223, 226, 228]);
7587 }
7588 impl IPosPrinterJob {
Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>7589     pub fn Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
7590         let this = self;
7591         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
7592     }
PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>7593     pub fn PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
7594         let this = self;
7595         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
7596     }
PrintNewline(&self) -> ::windows::runtime::Result<()>7597     pub fn PrintNewline(&self) -> ::windows::runtime::Result<()> {
7598         let this = self;
7599         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this)).ok() }
7600     }
7601     #[cfg(feature = "Foundation")]
ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>7602     pub fn ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
7603         let this = self;
7604         unsafe {
7605             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7606             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
7607         }
7608     }
7609 }
7610 unsafe impl ::windows::runtime::RuntimeType for IPosPrinterJob {
7611     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"{9a94005c-0615-4591-a58f-30f87edfe2e4}");
7612 }
7613 impl ::std::convert::From<IPosPrinterJob> for ::windows::runtime::IUnknown {
from(value: IPosPrinterJob) -> Self7614     fn from(value: IPosPrinterJob) -> Self {
7615         unsafe { ::std::mem::transmute(value) }
7616     }
7617 }
7618 impl ::std::convert::From<&IPosPrinterJob> for ::windows::runtime::IUnknown {
from(value: &IPosPrinterJob) -> Self7619     fn from(value: &IPosPrinterJob) -> Self {
7620         ::std::convert::From::from(::std::clone::Clone::clone(value))
7621     }
7622 }
7623 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPosPrinterJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7624     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7625         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7626     }
7627 }
7628 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPosPrinterJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7629     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7630         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7631     }
7632 }
7633 impl ::std::convert::From<IPosPrinterJob> for ::windows::runtime::IInspectable {
from(value: IPosPrinterJob) -> Self7634     fn from(value: IPosPrinterJob) -> Self {
7635         value.0
7636     }
7637 }
7638 impl ::std::convert::From<&IPosPrinterJob> for ::windows::runtime::IInspectable {
from(value: &IPosPrinterJob) -> Self7639     fn from(value: &IPosPrinterJob) -> Self {
7640         value.0.clone()
7641     }
7642 }
7643 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for IPosPrinterJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>7644     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7645         ::windows::runtime::Param::Owned(self.0)
7646     }
7647 }
7648 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a IPosPrinterJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>7649     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7650         ::windows::runtime::Param::Borrowed(&self.0)
7651     }
7652 }
7653 #[repr(C)]
7654 #[doc(hidden)]
7655 pub struct IPosPrinterJob_abi(
7656     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7657     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7658     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7659     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7660     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7661     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7662     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, data: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7663     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, data: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7664     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7665     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7666     #[cfg(not(feature = "Foundation"))] usize,
7667 );
7668 #[repr(transparent)]
7669 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7670 #[doc(hidden)]
7671 pub struct IPosPrinterPrintOptions(::windows::runtime::IInspectable);
7672 unsafe impl ::windows::runtime::Interface for IPosPrinterPrintOptions {
7673     type Vtable = IPosPrinterPrintOptions_abi;
7674     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(170792701, 7426, 23128, [157, 89, 191, 205, 231, 111, 222, 134]);
7675 }
7676 #[repr(C)]
7677 #[doc(hidden)]
7678 pub struct IPosPrinterPrintOptions_abi(
7679     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7680     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7681     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7682     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7683     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7684     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7685     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7686     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7687     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7688     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
7689     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7690     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
7691     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7692     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
7693     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7694     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
7695     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7696     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
7697     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7698     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
7699     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7700     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
7701     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7702     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
7703     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7704     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
7705     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
7706     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
7707     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PosPrinterAlignment) -> ::windows::runtime::HRESULT,
7708     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: PosPrinterAlignment) -> ::windows::runtime::HRESULT,
7709     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7710     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
7711 );
7712 #[repr(transparent)]
7713 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7714 #[doc(hidden)]
7715 pub struct IPosPrinterReleaseDeviceRequestedEventArgs(::windows::runtime::IInspectable);
7716 unsafe impl ::windows::runtime::Interface for IPosPrinterReleaseDeviceRequestedEventArgs {
7717     type Vtable = IPosPrinterReleaseDeviceRequestedEventArgs_abi;
7718     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(734765913, 7407, 16562, [158, 203, 249, 39, 248, 86, 174, 60]);
7719 }
7720 #[repr(C)]
7721 #[doc(hidden)]
7722 pub struct IPosPrinterReleaseDeviceRequestedEventArgs_abi(
7723     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7724     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7725     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7726     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7727     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7728     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7729 );
7730 #[repr(transparent)]
7731 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7732 #[doc(hidden)]
7733 pub struct IPosPrinterStatics(::windows::runtime::IInspectable);
7734 unsafe impl ::windows::runtime::Interface for IPosPrinterStatics {
7735     type Vtable = IPosPrinterStatics_abi;
7736     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2363544810, 4911, 19679, [166, 74, 45, 13, 124, 150, 168, 91]);
7737 }
7738 #[repr(C)]
7739 #[doc(hidden)]
7740 pub struct IPosPrinterStatics_abi(
7741     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7742     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7743     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7744     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7745     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7746     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7747     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7748     #[cfg(not(feature = "Foundation"))] usize,
7749     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, deviceid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7750     #[cfg(not(feature = "Foundation"))] usize,
7751     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7752 );
7753 #[repr(transparent)]
7754 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7755 #[doc(hidden)]
7756 pub struct IPosPrinterStatics2(::windows::runtime::IInspectable);
7757 unsafe impl ::windows::runtime::Interface for IPosPrinterStatics2 {
7758     type Vtable = IPosPrinterStatics2_abi;
7759     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4006423580, 45264, 17127, [177, 55, 184, 155, 22, 36, 77, 65]);
7760 }
7761 #[repr(C)]
7762 #[doc(hidden)]
7763 pub struct IPosPrinterStatics2_abi(
7764     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7765     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7766     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7767     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7768     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7769     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7770     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, connectiontypes: PosConnectionTypes, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
7771 );
7772 #[repr(transparent)]
7773 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7774 #[doc(hidden)]
7775 pub struct IPosPrinterStatus(::windows::runtime::IInspectable);
7776 unsafe impl ::windows::runtime::Interface for IPosPrinterStatus {
7777     type Vtable = IPosPrinterStatus_abi;
7778     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3522217776, 55872, 17192, [191, 118, 81, 86, 250, 51, 183, 71]);
7779 }
7780 #[repr(C)]
7781 #[doc(hidden)]
7782 pub struct IPosPrinterStatus_abi(
7783     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7784     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7785     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7786     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7787     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7788     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7789     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PosPrinterStatusKind) -> ::windows::runtime::HRESULT,
7790     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
7791 );
7792 #[repr(transparent)]
7793 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7794 #[doc(hidden)]
7795 pub struct IPosPrinterStatusUpdatedEventArgs(::windows::runtime::IInspectable);
7796 unsafe impl ::windows::runtime::Interface for IPosPrinterStatusUpdatedEventArgs {
7797     type Vtable = IPosPrinterStatusUpdatedEventArgs_abi;
7798     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(786139103, 5030, 17037, [186, 129, 176, 231, 195, 229, 163, 205]);
7799 }
7800 #[repr(C)]
7801 #[doc(hidden)]
7802 pub struct IPosPrinterStatusUpdatedEventArgs_abi(
7803     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7804     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7805     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7806     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7807     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7808     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7809     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7810 );
7811 #[repr(transparent)]
7812 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7813 pub struct IReceiptOrSlipJob(::windows::runtime::IInspectable);
7814 unsafe impl ::windows::runtime::Interface for IReceiptOrSlipJob {
7815     type Vtable = IReceiptOrSlipJob_abi;
7816     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1394710974, 51395, 19906, [137, 233, 92, 74, 55, 179, 77, 220]);
7817 }
7818 impl IReceiptOrSlipJob {
SetBarcodeRotation(&self, value: PosPrinterRotation) -> ::windows::runtime::Result<()>7819     pub fn SetBarcodeRotation(&self, value: PosPrinterRotation) -> ::windows::runtime::Result<()> {
7820         let this = self;
7821         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
7822     }
SetPrintRotation(&self, value: PosPrinterRotation, includebitmaps: bool) -> ::windows::runtime::Result<()>7823     pub fn SetPrintRotation(&self, value: PosPrinterRotation, includebitmaps: bool) -> ::windows::runtime::Result<()> {
7824         let this = self;
7825         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value, includebitmaps).ok() }
7826     }
7827     #[cfg(feature = "Foundation")]
SetPrintArea<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Rect>>(&self, value: Param0) -> ::windows::runtime::Result<()>7828     pub fn SetPrintArea<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Rect>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
7829         let this = self;
7830         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
7831     }
7832     #[cfg(feature = "Graphics_Imaging")]
SetBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()>7833     pub fn SetBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
7834         let this = self;
7835         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignment).ok() }
7836     }
7837     #[cfg(feature = "Graphics_Imaging")]
SetBitmapCustomWidthStandardAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()>7838     pub fn SetBitmapCustomWidthStandardAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()> {
7839         let this = self;
7840         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignment, width).ok() }
7841     }
7842     #[cfg(feature = "Graphics_Imaging")]
SetCustomAlignedBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32) -> ::windows::runtime::Result<()>7843     pub fn SetCustomAlignedBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32) -> ::windows::runtime::Result<()> {
7844         let this = self;
7845         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignmentdistance).ok() }
7846     }
7847     #[cfg(feature = "Graphics_Imaging")]
SetBitmapCustomWidthCustomAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()>7848     pub fn SetBitmapCustomWidthCustomAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()> {
7849         let this = self;
7850         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignmentdistance, width).ok() }
7851     }
PrintSavedBitmap(&self, bitmapnumber: u32) -> ::windows::runtime::Result<()>7852     pub fn PrintSavedBitmap(&self, bitmapnumber: u32) -> ::windows::runtime::Result<()> {
7853         let this = self;
7854         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), bitmapnumber).ok() }
7855     }
DrawRuledLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, positionlist: Param0, linedirection: PosPrinterLineDirection, linewidth: u32, linestyle: PosPrinterLineStyle, linecolor: u32) -> ::windows::runtime::Result<()>7856     pub fn DrawRuledLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, positionlist: Param0, linedirection: PosPrinterLineDirection, linewidth: u32, linestyle: PosPrinterLineStyle, linecolor: u32) -> ::windows::runtime::Result<()> {
7857         let this = self;
7858         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), positionlist.into_param().abi(), linedirection, linewidth, linestyle, linecolor).ok() }
7859     }
PrintBarcode<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()>7860     pub fn PrintBarcode<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
7861         let this = self;
7862         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), data.into_param().abi(), symbology, height, width, textposition, alignment).ok() }
7863     }
PrintBarcodeCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignmentdistance: u32) -> ::windows::runtime::Result<()>7864     pub fn PrintBarcodeCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignmentdistance: u32) -> ::windows::runtime::Result<()> {
7865         let this = self;
7866         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), data.into_param().abi(), symbology, height, width, textposition, alignmentdistance).ok() }
7867     }
7868     #[cfg(feature = "Graphics_Imaging")]
PrintBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()>7869     pub fn PrintBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
7870         let this = self;
7871         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignment).ok() }
7872     }
7873     #[cfg(feature = "Graphics_Imaging")]
PrintBitmapCustomWidthStandardAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()>7874     pub fn PrintBitmapCustomWidthStandardAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()> {
7875         let this = self;
7876         unsafe { (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignment, width).ok() }
7877     }
7878     #[cfg(feature = "Graphics_Imaging")]
PrintCustomAlignedBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32) -> ::windows::runtime::Result<()>7879     pub fn PrintCustomAlignedBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32) -> ::windows::runtime::Result<()> {
7880         let this = self;
7881         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignmentdistance).ok() }
7882     }
7883     #[cfg(feature = "Graphics_Imaging")]
PrintBitmapCustomWidthCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()>7884     pub fn PrintBitmapCustomWidthCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()> {
7885         let this = self;
7886         unsafe { (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignmentdistance, width).ok() }
7887     }
Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>7888     pub fn Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
7889         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
7890         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
7891     }
PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>7892     pub fn PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
7893         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
7894         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
7895     }
PrintNewline(&self) -> ::windows::runtime::Result<()>7896     pub fn PrintNewline(&self) -> ::windows::runtime::Result<()> {
7897         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
7898         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this)).ok() }
7899     }
7900     #[cfg(feature = "Foundation")]
ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>7901     pub fn ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
7902         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
7903         unsafe {
7904             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7905             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
7906         }
7907     }
7908 }
7909 unsafe impl ::windows::runtime::RuntimeType for IReceiptOrSlipJob {
7910     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"{532199be-c8c3-4dc2-89e9-5c4a37b34ddc}");
7911 }
7912 impl ::std::convert::From<IReceiptOrSlipJob> for ::windows::runtime::IUnknown {
from(value: IReceiptOrSlipJob) -> Self7913     fn from(value: IReceiptOrSlipJob) -> Self {
7914         unsafe { ::std::mem::transmute(value) }
7915     }
7916 }
7917 impl ::std::convert::From<&IReceiptOrSlipJob> for ::windows::runtime::IUnknown {
from(value: &IReceiptOrSlipJob) -> Self7918     fn from(value: &IReceiptOrSlipJob) -> Self {
7919         ::std::convert::From::from(::std::clone::Clone::clone(value))
7920     }
7921 }
7922 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IReceiptOrSlipJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7923     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7924         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7925     }
7926 }
7927 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IReceiptOrSlipJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7928     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7929         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7930     }
7931 }
7932 impl ::std::convert::From<IReceiptOrSlipJob> for ::windows::runtime::IInspectable {
from(value: IReceiptOrSlipJob) -> Self7933     fn from(value: IReceiptOrSlipJob) -> Self {
7934         value.0
7935     }
7936 }
7937 impl ::std::convert::From<&IReceiptOrSlipJob> for ::windows::runtime::IInspectable {
from(value: &IReceiptOrSlipJob) -> Self7938     fn from(value: &IReceiptOrSlipJob) -> Self {
7939         value.0.clone()
7940     }
7941 }
7942 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for IReceiptOrSlipJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>7943     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7944         ::windows::runtime::Param::Owned(self.0)
7945     }
7946 }
7947 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a IReceiptOrSlipJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>7948     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7949         ::windows::runtime::Param::Borrowed(&self.0)
7950     }
7951 }
7952 impl ::std::convert::TryFrom<IReceiptOrSlipJob> for IPosPrinterJob {
7953     type Error = ::windows::runtime::Error;
try_from(value: IReceiptOrSlipJob) -> ::windows::runtime::Result<Self>7954     fn try_from(value: IReceiptOrSlipJob) -> ::windows::runtime::Result<Self> {
7955         ::std::convert::TryFrom::try_from(&value)
7956     }
7957 }
7958 impl ::std::convert::TryFrom<&IReceiptOrSlipJob> for IPosPrinterJob {
7959     type Error = ::windows::runtime::Error;
try_from(value: &IReceiptOrSlipJob) -> ::windows::runtime::Result<Self>7960     fn try_from(value: &IReceiptOrSlipJob) -> ::windows::runtime::Result<Self> {
7961         ::windows::runtime::Interface::cast(value)
7962     }
7963 }
7964 impl<'a> ::windows::runtime::IntoParam<'a, IPosPrinterJob> for IReceiptOrSlipJob {
into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob>7965     fn into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob> {
7966         ::windows::runtime::IntoParam::into_param(&self)
7967     }
7968 }
7969 impl<'a> ::windows::runtime::IntoParam<'a, IPosPrinterJob> for &IReceiptOrSlipJob {
into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob>7970     fn into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob> {
7971         ::std::convert::TryInto::<IPosPrinterJob>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
7972     }
7973 }
7974 #[repr(C)]
7975 #[doc(hidden)]
7976 pub struct IReceiptOrSlipJob_abi(
7977     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7978     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7979     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7980     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
7981     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7982     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
7983     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: PosPrinterRotation) -> ::windows::runtime::HRESULT,
7984     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: PosPrinterRotation, includebitmaps: bool) -> ::windows::runtime::HRESULT,
7985     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::Rect) -> ::windows::runtime::HRESULT,
7986     #[cfg(not(feature = "Foundation"))] usize,
7987     #[cfg(feature = "Graphics_Imaging")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmapnumber: u32, bitmap: ::windows::runtime::RawPtr, alignment: PosPrinterAlignment) -> ::windows::runtime::HRESULT,
7988     #[cfg(not(feature = "Graphics_Imaging"))] usize,
7989     #[cfg(feature = "Graphics_Imaging")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmapnumber: u32, bitmap: ::windows::runtime::RawPtr, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::HRESULT,
7990     #[cfg(not(feature = "Graphics_Imaging"))] usize,
7991     #[cfg(feature = "Graphics_Imaging")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmapnumber: u32, bitmap: ::windows::runtime::RawPtr, alignmentdistance: u32) -> ::windows::runtime::HRESULT,
7992     #[cfg(not(feature = "Graphics_Imaging"))] usize,
7993     #[cfg(feature = "Graphics_Imaging")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmapnumber: u32, bitmap: ::windows::runtime::RawPtr, alignmentdistance: u32, width: u32) -> ::windows::runtime::HRESULT,
7994     #[cfg(not(feature = "Graphics_Imaging"))] usize,
7995     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmapnumber: u32) -> ::windows::runtime::HRESULT,
7996     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, positionlist: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, linedirection: PosPrinterLineDirection, linewidth: u32, linestyle: PosPrinterLineStyle, linecolor: u32) -> ::windows::runtime::HRESULT,
7997     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, data: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignment: PosPrinterAlignment) -> ::windows::runtime::HRESULT,
7998     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, data: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignmentdistance: u32) -> ::windows::runtime::HRESULT,
7999     #[cfg(feature = "Graphics_Imaging")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, alignment: PosPrinterAlignment) -> ::windows::runtime::HRESULT,
8000     #[cfg(not(feature = "Graphics_Imaging"))] usize,
8001     #[cfg(feature = "Graphics_Imaging")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::HRESULT,
8002     #[cfg(not(feature = "Graphics_Imaging"))] usize,
8003     #[cfg(feature = "Graphics_Imaging")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, alignmentdistance: u32) -> ::windows::runtime::HRESULT,
8004     #[cfg(not(feature = "Graphics_Imaging"))] usize,
8005     #[cfg(feature = "Graphics_Imaging")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bitmap: ::windows::runtime::RawPtr, alignmentdistance: u32, width: u32) -> ::windows::runtime::HRESULT,
8006     #[cfg(not(feature = "Graphics_Imaging"))] usize,
8007 );
8008 #[repr(transparent)]
8009 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8010 #[doc(hidden)]
8011 pub struct IReceiptPrintJob(::windows::runtime::IInspectable);
8012 unsafe impl ::windows::runtime::Interface for IReceiptPrintJob {
8013     type Vtable = IReceiptPrintJob_abi;
8014     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2861958766, 44205, 19321, [157, 15, 192, 207, 192, 141, 199, 123]);
8015 }
8016 #[repr(C)]
8017 #[doc(hidden)]
8018 pub struct IReceiptPrintJob_abi(
8019     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8020     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8021     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8022     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8023     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8024     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8025     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, kind: PosPrinterMarkFeedKind) -> ::windows::runtime::HRESULT,
8026     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, percentage: f64) -> ::windows::runtime::HRESULT,
8027     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8028 );
8029 #[repr(transparent)]
8030 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8031 #[doc(hidden)]
8032 pub struct IReceiptPrintJob2(::windows::runtime::IInspectable);
8033 unsafe impl ::windows::runtime::Interface for IReceiptPrintJob2 {
8034     type Vtable = IReceiptPrintJob2_abi;
8035     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(213652195, 40489, 20857, [188, 216, 24, 17, 211, 185, 161, 14]);
8036 }
8037 #[repr(C)]
8038 #[doc(hidden)]
8039 pub struct IReceiptPrintJob2_abi(
8040     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8041     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8042     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8043     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8044     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8045     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8046     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8047     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, data: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, printoptions: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8048     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, linecount: i32) -> ::windows::runtime::HRESULT,
8049     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, distance: i32) -> ::windows::runtime::HRESULT,
8050 );
8051 #[repr(transparent)]
8052 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8053 #[doc(hidden)]
8054 pub struct IReceiptPrinterCapabilities(::windows::runtime::IInspectable);
8055 unsafe impl ::windows::runtime::Interface for IReceiptPrinterCapabilities {
8056     type Vtable = IReceiptPrinterCapabilities_abi;
8057     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3102782863, 20904, 17404, [155, 213, 141, 226, 114, 166, 65, 91]);
8058 }
8059 #[repr(C)]
8060 #[doc(hidden)]
8061 pub struct IReceiptPrinterCapabilities_abi(
8062     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8063     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8064     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8065     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8066     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8067     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8068     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8069     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8070     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PosPrinterMarkFeedCapabilities) -> ::windows::runtime::HRESULT,
8071 );
8072 #[repr(transparent)]
8073 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8074 #[doc(hidden)]
8075 pub struct IReceiptPrinterCapabilities2(::windows::runtime::IInspectable);
8076 unsafe impl ::windows::runtime::Interface for IReceiptPrinterCapabilities2 {
8077     type Vtable = IReceiptPrinterCapabilities2_abi;
8078     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(537069112, 35372, 21932, [154, 123, 117, 118, 216, 134, 158, 153]);
8079 }
8080 #[repr(C)]
8081 #[doc(hidden)]
8082 pub struct IReceiptPrinterCapabilities2_abi(
8083     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8084     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8085     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8086     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8087     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8088     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8089     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8090     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8091     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8092     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8093     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8094     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8095 );
8096 #[repr(transparent)]
8097 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8098 #[doc(hidden)]
8099 pub struct ISlipPrintJob(::windows::runtime::IInspectable);
8100 unsafe impl ::windows::runtime::Interface for ISlipPrintJob {
8101     type Vtable = ISlipPrintJob_abi;
8102     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1569257821, 24881, 23115, [183, 213, 142, 242, 218, 123, 65, 101]);
8103 }
8104 #[repr(C)]
8105 #[doc(hidden)]
8106 pub struct ISlipPrintJob_abi(
8107     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8108     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8109     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8110     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8111     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8112     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8113     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, data: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, printoptions: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8114     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, linecount: i32) -> ::windows::runtime::HRESULT,
8115     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, distance: i32) -> ::windows::runtime::HRESULT,
8116 );
8117 #[repr(transparent)]
8118 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8119 #[doc(hidden)]
8120 pub struct ISlipPrinterCapabilities(::windows::runtime::IInspectable);
8121 unsafe impl ::windows::runtime::Interface for ISlipPrinterCapabilities {
8122     type Vtable = ISlipPrinterCapabilities_abi;
8123     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2578539417, 18572, 16727, [138, 194, 159, 87, 247, 8, 211, 219]);
8124 }
8125 #[repr(C)]
8126 #[doc(hidden)]
8127 pub struct ISlipPrinterCapabilities_abi(
8128     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8129     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8130     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8131     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8132     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8133     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8134     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8135     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8136 );
8137 #[repr(transparent)]
8138 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8139 #[doc(hidden)]
8140 pub struct ISlipPrinterCapabilities2(::windows::runtime::IInspectable);
8141 unsafe impl ::windows::runtime::Interface for ISlipPrinterCapabilities2 {
8142     type Vtable = ISlipPrinterCapabilities2_abi;
8143     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1878562417, 11546, 20480, [135, 194, 176, 133, 27, 253, 240, 126]);
8144 }
8145 #[repr(C)]
8146 #[doc(hidden)]
8147 pub struct ISlipPrinterCapabilities2_abi(
8148     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8149     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8150     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8151     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8152     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8153     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8154     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8155     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8156     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8157     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8158     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8159     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
8160 );
8161 #[repr(transparent)]
8162 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8163 #[doc(hidden)]
8164 pub struct IUnifiedPosErrorData(::windows::runtime::IInspectable);
8165 unsafe impl ::windows::runtime::Interface for IUnifiedPosErrorData {
8166     type Vtable = IUnifiedPosErrorData_abi;
8167     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(731483194, 21852, 18569, [142, 216, 197, 153, 187, 58, 113, 42]);
8168 }
8169 #[repr(C)]
8170 #[doc(hidden)]
8171 pub struct IUnifiedPosErrorData_abi(
8172     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8173     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8174     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8175     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8176     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8177     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8178     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
8179     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut UnifiedPosErrorSeverity) -> ::windows::runtime::HRESULT,
8180     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut UnifiedPosErrorReason) -> ::windows::runtime::HRESULT,
8181     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
8182 );
8183 #[repr(transparent)]
8184 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8185 #[doc(hidden)]
8186 pub struct IUnifiedPosErrorDataFactory(::windows::runtime::IInspectable);
8187 unsafe impl ::windows::runtime::Interface for IUnifiedPosErrorDataFactory {
8188     type Vtable = IUnifiedPosErrorDataFactory_abi;
8189     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1268262225, 8190, 17691, [163, 104, 99, 224, 206, 70, 95, 90]);
8190 }
8191 #[repr(C)]
8192 #[doc(hidden)]
8193 pub struct IUnifiedPosErrorDataFactory_abi(
8194     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8195     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8196     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8197     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8198     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8199     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8200     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, message: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, severity: UnifiedPosErrorSeverity, reason: UnifiedPosErrorReason, extendedreason: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8201 );
8202 #[repr(transparent)]
8203 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8204 pub struct JournalPrintJob(::windows::runtime::IInspectable);
8205 impl JournalPrintJob {
Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>8206     pub fn Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
8207         let this = self;
8208         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
8209     }
PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>8210     pub fn PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
8211         let this = self;
8212         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
8213     }
PrintNewline(&self) -> ::windows::runtime::Result<()>8214     pub fn PrintNewline(&self) -> ::windows::runtime::Result<()> {
8215         let this = self;
8216         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this)).ok() }
8217     }
8218     #[cfg(feature = "Foundation")]
ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>8219     pub fn ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
8220         let this = self;
8221         unsafe {
8222             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8223             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
8224         }
8225     }
Print2<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, PosPrinterPrintOptions>>(&self, data: Param0, printoptions: Param1) -> ::windows::runtime::Result<()>8226     pub fn Print2<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, PosPrinterPrintOptions>>(&self, data: Param0, printoptions: Param1) -> ::windows::runtime::Result<()> {
8227         let this = &::windows::runtime::Interface::cast::<IJournalPrintJob>(self)?;
8228         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), data.into_param().abi(), printoptions.into_param().abi()).ok() }
8229     }
FeedPaperByLine(&self, linecount: i32) -> ::windows::runtime::Result<()>8230     pub fn FeedPaperByLine(&self, linecount: i32) -> ::windows::runtime::Result<()> {
8231         let this = &::windows::runtime::Interface::cast::<IJournalPrintJob>(self)?;
8232         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), linecount).ok() }
8233     }
FeedPaperByMapModeUnit(&self, distance: i32) -> ::windows::runtime::Result<()>8234     pub fn FeedPaperByMapModeUnit(&self, distance: i32) -> ::windows::runtime::Result<()> {
8235         let this = &::windows::runtime::Interface::cast::<IJournalPrintJob>(self)?;
8236         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), distance).ok() }
8237     }
8238 }
8239 unsafe impl ::windows::runtime::RuntimeType for JournalPrintJob {
8240     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.JournalPrintJob;{9a94005c-0615-4591-a58f-30f87edfe2e4})");
8241 }
8242 unsafe impl ::windows::runtime::Interface for JournalPrintJob {
8243     type Vtable = IPosPrinterJob_abi;
8244     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2593390684, 1557, 17809, [165, 143, 48, 248, 126, 223, 226, 228]);
8245 }
8246 impl ::windows::runtime::RuntimeName for JournalPrintJob {
8247     const NAME: &'static str = "Windows.Devices.PointOfService.JournalPrintJob";
8248 }
8249 impl ::std::convert::From<JournalPrintJob> for ::windows::runtime::IUnknown {
from(value: JournalPrintJob) -> Self8250     fn from(value: JournalPrintJob) -> Self {
8251         unsafe { ::std::mem::transmute(value) }
8252     }
8253 }
8254 impl ::std::convert::From<&JournalPrintJob> for ::windows::runtime::IUnknown {
from(value: &JournalPrintJob) -> Self8255     fn from(value: &JournalPrintJob) -> Self {
8256         ::std::convert::From::from(::std::clone::Clone::clone(value))
8257     }
8258 }
8259 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for JournalPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>8260     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8261         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
8262     }
8263 }
8264 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &JournalPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>8265     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8266         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
8267     }
8268 }
8269 impl ::std::convert::From<JournalPrintJob> for ::windows::runtime::IInspectable {
from(value: JournalPrintJob) -> Self8270     fn from(value: JournalPrintJob) -> Self {
8271         value.0
8272     }
8273 }
8274 impl ::std::convert::From<&JournalPrintJob> for ::windows::runtime::IInspectable {
from(value: &JournalPrintJob) -> Self8275     fn from(value: &JournalPrintJob) -> Self {
8276         value.0.clone()
8277     }
8278 }
8279 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for JournalPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>8280     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8281         ::windows::runtime::Param::Owned(self.0)
8282     }
8283 }
8284 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a JournalPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>8285     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8286         ::windows::runtime::Param::Borrowed(&self.0)
8287     }
8288 }
8289 impl ::std::convert::From<JournalPrintJob> for IPosPrinterJob {
from(value: JournalPrintJob) -> Self8290     fn from(value: JournalPrintJob) -> Self {
8291         unsafe { ::std::mem::transmute(value) }
8292     }
8293 }
8294 impl ::std::convert::From<&JournalPrintJob> for IPosPrinterJob {
from(value: &JournalPrintJob) -> Self8295     fn from(value: &JournalPrintJob) -> Self {
8296         ::std::convert::From::from(::std::clone::Clone::clone(value))
8297     }
8298 }
8299 impl<'a> ::windows::runtime::IntoParam<'a, IPosPrinterJob> for JournalPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob>8300     fn into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob> {
8301         ::windows::runtime::Param::Owned(::std::convert::Into::<IPosPrinterJob>::into(self))
8302     }
8303 }
8304 impl<'a> ::windows::runtime::IntoParam<'a, IPosPrinterJob> for &JournalPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob>8305     fn into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob> {
8306         ::windows::runtime::Param::Owned(::std::convert::Into::<IPosPrinterJob>::into(::std::clone::Clone::clone(self)))
8307     }
8308 }
8309 unsafe impl ::std::marker::Send for JournalPrintJob {}
8310 unsafe impl ::std::marker::Sync for JournalPrintJob {}
8311 #[repr(transparent)]
8312 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8313 pub struct JournalPrinterCapabilities(::windows::runtime::IInspectable);
8314 impl JournalPrinterCapabilities {
IsPrinterPresent(&self) -> ::windows::runtime::Result<bool>8315     pub fn IsPrinterPresent(&self) -> ::windows::runtime::Result<bool> {
8316         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8317         unsafe {
8318             let mut result__: bool = ::std::mem::zeroed();
8319             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8320         }
8321     }
IsDualColorSupported(&self) -> ::windows::runtime::Result<bool>8322     pub fn IsDualColorSupported(&self) -> ::windows::runtime::Result<bool> {
8323         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8324         unsafe {
8325             let mut result__: bool = ::std::mem::zeroed();
8326             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8327         }
8328     }
ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities>8329     pub fn ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities> {
8330         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8331         unsafe {
8332             let mut result__: PosPrinterColorCapabilities = ::std::mem::zeroed();
8333             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterColorCapabilities>(result__)
8334         }
8335     }
CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors>8336     pub fn CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors> {
8337         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8338         unsafe {
8339             let mut result__: PosPrinterCartridgeSensors = ::std::mem::zeroed();
8340             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterCartridgeSensors>(result__)
8341         }
8342     }
IsBoldSupported(&self) -> ::windows::runtime::Result<bool>8343     pub fn IsBoldSupported(&self) -> ::windows::runtime::Result<bool> {
8344         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8345         unsafe {
8346             let mut result__: bool = ::std::mem::zeroed();
8347             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8348         }
8349     }
IsItalicSupported(&self) -> ::windows::runtime::Result<bool>8350     pub fn IsItalicSupported(&self) -> ::windows::runtime::Result<bool> {
8351         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8352         unsafe {
8353             let mut result__: bool = ::std::mem::zeroed();
8354             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8355         }
8356     }
IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool>8357     pub fn IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool> {
8358         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8359         unsafe {
8360             let mut result__: bool = ::std::mem::zeroed();
8361             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8362         }
8363     }
IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool>8364     pub fn IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool> {
8365         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8366         unsafe {
8367             let mut result__: bool = ::std::mem::zeroed();
8368             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8369         }
8370     }
IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>8371     pub fn IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
8372         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8373         unsafe {
8374             let mut result__: bool = ::std::mem::zeroed();
8375             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8376         }
8377     }
IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>8378     pub fn IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
8379         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8380         unsafe {
8381             let mut result__: bool = ::std::mem::zeroed();
8382             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8383         }
8384     }
IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool>8385     pub fn IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool> {
8386         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8387         unsafe {
8388             let mut result__: bool = ::std::mem::zeroed();
8389             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8390         }
8391     }
IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool>8392     pub fn IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool> {
8393         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8394         unsafe {
8395             let mut result__: bool = ::std::mem::zeroed();
8396             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8397         }
8398     }
8399     #[cfg(feature = "Foundation_Collections")]
SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>>8400     pub fn SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>> {
8401         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
8402         unsafe {
8403             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8404             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<u32>>(result__)
8405         }
8406     }
IsReverseVideoSupported(&self) -> ::windows::runtime::Result<bool>8407     pub fn IsReverseVideoSupported(&self) -> ::windows::runtime::Result<bool> {
8408         let this = &::windows::runtime::Interface::cast::<IJournalPrinterCapabilities2>(self)?;
8409         unsafe {
8410             let mut result__: bool = ::std::mem::zeroed();
8411             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8412         }
8413     }
IsStrikethroughSupported(&self) -> ::windows::runtime::Result<bool>8414     pub fn IsStrikethroughSupported(&self) -> ::windows::runtime::Result<bool> {
8415         let this = &::windows::runtime::Interface::cast::<IJournalPrinterCapabilities2>(self)?;
8416         unsafe {
8417             let mut result__: bool = ::std::mem::zeroed();
8418             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8419         }
8420     }
IsSuperscriptSupported(&self) -> ::windows::runtime::Result<bool>8421     pub fn IsSuperscriptSupported(&self) -> ::windows::runtime::Result<bool> {
8422         let this = &::windows::runtime::Interface::cast::<IJournalPrinterCapabilities2>(self)?;
8423         unsafe {
8424             let mut result__: bool = ::std::mem::zeroed();
8425             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8426         }
8427     }
IsSubscriptSupported(&self) -> ::windows::runtime::Result<bool>8428     pub fn IsSubscriptSupported(&self) -> ::windows::runtime::Result<bool> {
8429         let this = &::windows::runtime::Interface::cast::<IJournalPrinterCapabilities2>(self)?;
8430         unsafe {
8431             let mut result__: bool = ::std::mem::zeroed();
8432             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8433         }
8434     }
IsReversePaperFeedByLineSupported(&self) -> ::windows::runtime::Result<bool>8435     pub fn IsReversePaperFeedByLineSupported(&self) -> ::windows::runtime::Result<bool> {
8436         let this = &::windows::runtime::Interface::cast::<IJournalPrinterCapabilities2>(self)?;
8437         unsafe {
8438             let mut result__: bool = ::std::mem::zeroed();
8439             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8440         }
8441     }
IsReversePaperFeedByMapModeUnitSupported(&self) -> ::windows::runtime::Result<bool>8442     pub fn IsReversePaperFeedByMapModeUnitSupported(&self) -> ::windows::runtime::Result<bool> {
8443         let this = &::windows::runtime::Interface::cast::<IJournalPrinterCapabilities2>(self)?;
8444         unsafe {
8445             let mut result__: bool = ::std::mem::zeroed();
8446             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8447         }
8448     }
8449 }
8450 unsafe impl ::windows::runtime::RuntimeType for JournalPrinterCapabilities {
8451     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.JournalPrinterCapabilities;{3b5ccc43-e047-4463-bb58-17b5ba1d8056})");
8452 }
8453 unsafe impl ::windows::runtime::Interface for JournalPrinterCapabilities {
8454     type Vtable = IJournalPrinterCapabilities_abi;
8455     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(995937347, 57415, 17507, [187, 88, 23, 181, 186, 29, 128, 86]);
8456 }
8457 impl ::windows::runtime::RuntimeName for JournalPrinterCapabilities {
8458     const NAME: &'static str = "Windows.Devices.PointOfService.JournalPrinterCapabilities";
8459 }
8460 impl ::std::convert::From<JournalPrinterCapabilities> for ::windows::runtime::IUnknown {
from(value: JournalPrinterCapabilities) -> Self8461     fn from(value: JournalPrinterCapabilities) -> Self {
8462         unsafe { ::std::mem::transmute(value) }
8463     }
8464 }
8465 impl ::std::convert::From<&JournalPrinterCapabilities> for ::windows::runtime::IUnknown {
from(value: &JournalPrinterCapabilities) -> Self8466     fn from(value: &JournalPrinterCapabilities) -> Self {
8467         ::std::convert::From::from(::std::clone::Clone::clone(value))
8468     }
8469 }
8470 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for JournalPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>8471     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8472         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
8473     }
8474 }
8475 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &JournalPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>8476     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8477         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
8478     }
8479 }
8480 impl ::std::convert::From<JournalPrinterCapabilities> for ::windows::runtime::IInspectable {
from(value: JournalPrinterCapabilities) -> Self8481     fn from(value: JournalPrinterCapabilities) -> Self {
8482         value.0
8483     }
8484 }
8485 impl ::std::convert::From<&JournalPrinterCapabilities> for ::windows::runtime::IInspectable {
from(value: &JournalPrinterCapabilities) -> Self8486     fn from(value: &JournalPrinterCapabilities) -> Self {
8487         value.0.clone()
8488     }
8489 }
8490 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for JournalPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>8491     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8492         ::windows::runtime::Param::Owned(self.0)
8493     }
8494 }
8495 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a JournalPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>8496     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8497         ::windows::runtime::Param::Borrowed(&self.0)
8498     }
8499 }
8500 impl ::std::convert::TryFrom<JournalPrinterCapabilities> for ICommonPosPrintStationCapabilities {
8501     type Error = ::windows::runtime::Error;
try_from(value: JournalPrinterCapabilities) -> ::windows::runtime::Result<Self>8502     fn try_from(value: JournalPrinterCapabilities) -> ::windows::runtime::Result<Self> {
8503         ::std::convert::TryFrom::try_from(&value)
8504     }
8505 }
8506 impl ::std::convert::TryFrom<&JournalPrinterCapabilities> for ICommonPosPrintStationCapabilities {
8507     type Error = ::windows::runtime::Error;
try_from(value: &JournalPrinterCapabilities) -> ::windows::runtime::Result<Self>8508     fn try_from(value: &JournalPrinterCapabilities) -> ::windows::runtime::Result<Self> {
8509         ::windows::runtime::Interface::cast(value)
8510     }
8511 }
8512 impl<'a> ::windows::runtime::IntoParam<'a, ICommonPosPrintStationCapabilities> for JournalPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities>8513     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities> {
8514         ::windows::runtime::IntoParam::into_param(&self)
8515     }
8516 }
8517 impl<'a> ::windows::runtime::IntoParam<'a, ICommonPosPrintStationCapabilities> for &JournalPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities>8518     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities> {
8519         ::std::convert::TryInto::<ICommonPosPrintStationCapabilities>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
8520     }
8521 }
8522 unsafe impl ::std::marker::Send for JournalPrinterCapabilities {}
8523 unsafe impl ::std::marker::Sync for JournalPrinterCapabilities {}
8524 #[repr(transparent)]
8525 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8526 pub struct LineDisplay(::windows::runtime::IInspectable);
8527 impl LineDisplay {
8528     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>8529     pub fn Close(&self) -> ::windows::runtime::Result<()> {
8530         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
8531         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
8532     }
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>8533     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8534         let this = self;
8535         unsafe {
8536             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8537             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8538         }
8539     }
Capabilities(&self) -> ::windows::runtime::Result<LineDisplayCapabilities>8540     pub fn Capabilities(&self) -> ::windows::runtime::Result<LineDisplayCapabilities> {
8541         let this = self;
8542         unsafe {
8543             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8544             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayCapabilities>(result__)
8545         }
8546     }
PhysicalDeviceName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>8547     pub fn PhysicalDeviceName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8548         let this = self;
8549         unsafe {
8550             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8551             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8552         }
8553     }
PhysicalDeviceDescription(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>8554     pub fn PhysicalDeviceDescription(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8555         let this = self;
8556         unsafe {
8557             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8558             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8559         }
8560     }
DeviceControlDescription(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>8561     pub fn DeviceControlDescription(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8562         let this = self;
8563         unsafe {
8564             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8565             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8566         }
8567     }
DeviceControlVersion(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>8568     pub fn DeviceControlVersion(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8569         let this = self;
8570         unsafe {
8571             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8572             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8573         }
8574     }
DeviceServiceVersion(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>8575     pub fn DeviceServiceVersion(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8576         let this = self;
8577         unsafe {
8578             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8579             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8580         }
8581     }
8582     #[cfg(feature = "Foundation")]
ClaimAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedLineDisplay>>8583     pub fn ClaimAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedLineDisplay>> {
8584         let this = self;
8585         unsafe {
8586             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8587             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<ClaimedLineDisplay>>(result__)
8588         }
8589     }
8590     #[cfg(feature = "Foundation")]
FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplay>>8591     pub fn FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplay>> {
8592         Self::ILineDisplayStatics(|this| unsafe {
8593             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8594             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), deviceid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<LineDisplay>>(result__)
8595         })
8596     }
8597     #[cfg(feature = "Foundation")]
GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplay>>8598     pub fn GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplay>> {
8599         Self::ILineDisplayStatics(|this| unsafe {
8600             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8601             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<LineDisplay>>(result__)
8602         })
8603     }
GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING>8604     pub fn GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8605         Self::ILineDisplayStatics(|this| unsafe {
8606             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8607             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8608         })
8609     }
GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING>8610     pub fn GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8611         Self::ILineDisplayStatics(|this| unsafe {
8612             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8613             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), connectiontypes, &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8614         })
8615     }
8616     #[cfg(feature = "Foundation")]
CheckPowerStatusAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayPowerStatus>>8617     pub fn CheckPowerStatusAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<LineDisplayPowerStatus>> {
8618         let this = &::windows::runtime::Interface::cast::<ILineDisplay2>(self)?;
8619         unsafe {
8620             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8621             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<LineDisplayPowerStatus>>(result__)
8622         }
8623     }
StatisticsCategorySelector() -> ::windows::runtime::Result<LineDisplayStatisticsCategorySelector>8624     pub fn StatisticsCategorySelector() -> ::windows::runtime::Result<LineDisplayStatisticsCategorySelector> {
8625         Self::ILineDisplayStatics2(|this| unsafe {
8626             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8627             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayStatisticsCategorySelector>(result__)
8628         })
8629     }
ILineDisplayStatics<R, F: FnOnce(&ILineDisplayStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>8630     pub fn ILineDisplayStatics<R, F: FnOnce(&ILineDisplayStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
8631         static mut SHARED: ::windows::runtime::FactoryCache<LineDisplay, ILineDisplayStatics> = ::windows::runtime::FactoryCache::new();
8632         unsafe { SHARED.call(callback) }
8633     }
ILineDisplayStatics2<R, F: FnOnce(&ILineDisplayStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>8634     pub fn ILineDisplayStatics2<R, F: FnOnce(&ILineDisplayStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
8635         static mut SHARED: ::windows::runtime::FactoryCache<LineDisplay, ILineDisplayStatics2> = ::windows::runtime::FactoryCache::new();
8636         unsafe { SHARED.call(callback) }
8637     }
8638 }
8639 unsafe impl ::windows::runtime::RuntimeType for LineDisplay {
8640     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplay;{24f5df4e-3c99-44e2-b73f-e51be3637a8c})");
8641 }
8642 unsafe impl ::windows::runtime::Interface for LineDisplay {
8643     type Vtable = ILineDisplay_abi;
8644     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(620093262, 15513, 17634, [183, 63, 229, 27, 227, 99, 122, 140]);
8645 }
8646 impl ::windows::runtime::RuntimeName for LineDisplay {
8647     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplay";
8648 }
8649 impl ::std::convert::From<LineDisplay> for ::windows::runtime::IUnknown {
from(value: LineDisplay) -> Self8650     fn from(value: LineDisplay) -> Self {
8651         unsafe { ::std::mem::transmute(value) }
8652     }
8653 }
8654 impl ::std::convert::From<&LineDisplay> for ::windows::runtime::IUnknown {
from(value: &LineDisplay) -> Self8655     fn from(value: &LineDisplay) -> Self {
8656         ::std::convert::From::from(::std::clone::Clone::clone(value))
8657     }
8658 }
8659 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>8660     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8661         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
8662     }
8663 }
8664 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>8665     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8666         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
8667     }
8668 }
8669 impl ::std::convert::From<LineDisplay> for ::windows::runtime::IInspectable {
from(value: LineDisplay) -> Self8670     fn from(value: LineDisplay) -> Self {
8671         value.0
8672     }
8673 }
8674 impl ::std::convert::From<&LineDisplay> for ::windows::runtime::IInspectable {
from(value: &LineDisplay) -> Self8675     fn from(value: &LineDisplay) -> Self {
8676         value.0.clone()
8677     }
8678 }
8679 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>8680     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8681         ::windows::runtime::Param::Owned(self.0)
8682     }
8683 }
8684 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>8685     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8686         ::windows::runtime::Param::Borrowed(&self.0)
8687     }
8688 }
8689 #[cfg(feature = "Foundation")]
8690 impl ::std::convert::TryFrom<LineDisplay> for super::super::Foundation::IClosable {
8691     type Error = ::windows::runtime::Error;
try_from(value: LineDisplay) -> ::windows::runtime::Result<Self>8692     fn try_from(value: LineDisplay) -> ::windows::runtime::Result<Self> {
8693         ::std::convert::TryFrom::try_from(&value)
8694     }
8695 }
8696 #[cfg(feature = "Foundation")]
8697 impl ::std::convert::TryFrom<&LineDisplay> for super::super::Foundation::IClosable {
8698     type Error = ::windows::runtime::Error;
try_from(value: &LineDisplay) -> ::windows::runtime::Result<Self>8699     fn try_from(value: &LineDisplay) -> ::windows::runtime::Result<Self> {
8700         ::windows::runtime::Interface::cast(value)
8701     }
8702 }
8703 #[cfg(feature = "Foundation")]
8704 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for LineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>8705     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
8706         ::windows::runtime::IntoParam::into_param(&self)
8707     }
8708 }
8709 #[cfg(feature = "Foundation")]
8710 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &LineDisplay {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>8711     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
8712         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
8713     }
8714 }
8715 unsafe impl ::std::marker::Send for LineDisplay {}
8716 unsafe impl ::std::marker::Sync for LineDisplay {}
8717 #[repr(transparent)]
8718 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8719 pub struct LineDisplayAttributes(::windows::runtime::IInspectable);
8720 impl LineDisplayAttributes {
IsPowerNotifyEnabled(&self) -> ::windows::runtime::Result<bool>8721     pub fn IsPowerNotifyEnabled(&self) -> ::windows::runtime::Result<bool> {
8722         let this = self;
8723         unsafe {
8724             let mut result__: bool = ::std::mem::zeroed();
8725             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8726         }
8727     }
SetIsPowerNotifyEnabled(&self, value: bool) -> ::windows::runtime::Result<()>8728     pub fn SetIsPowerNotifyEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
8729         let this = self;
8730         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
8731     }
Brightness(&self) -> ::windows::runtime::Result<i32>8732     pub fn Brightness(&self) -> ::windows::runtime::Result<i32> {
8733         let this = self;
8734         unsafe {
8735             let mut result__: i32 = ::std::mem::zeroed();
8736             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<i32>(result__)
8737         }
8738     }
SetBrightness(&self, value: i32) -> ::windows::runtime::Result<()>8739     pub fn SetBrightness(&self, value: i32) -> ::windows::runtime::Result<()> {
8740         let this = self;
8741         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
8742     }
8743     #[cfg(feature = "Foundation")]
BlinkRate(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan>8744     pub fn BlinkRate(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
8745         let this = self;
8746         unsafe {
8747             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
8748             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
8749         }
8750     }
8751     #[cfg(feature = "Foundation")]
SetBlinkRate<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()>8752     pub fn SetBlinkRate<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8753         let this = self;
8754         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8755     }
8756     #[cfg(feature = "Foundation")]
ScreenSizeInCharacters(&self) -> ::windows::runtime::Result<super::super::Foundation::Size>8757     pub fn ScreenSizeInCharacters(&self) -> ::windows::runtime::Result<super::super::Foundation::Size> {
8758         let this = self;
8759         unsafe {
8760             let mut result__: super::super::Foundation::Size = ::std::mem::zeroed();
8761             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Size>(result__)
8762         }
8763     }
8764     #[cfg(feature = "Foundation")]
SetScreenSizeInCharacters<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Size>>(&self, value: Param0) -> ::windows::runtime::Result<()>8765     pub fn SetScreenSizeInCharacters<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Size>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8766         let this = self;
8767         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8768     }
CharacterSet(&self) -> ::windows::runtime::Result<i32>8769     pub fn CharacterSet(&self) -> ::windows::runtime::Result<i32> {
8770         let this = self;
8771         unsafe {
8772             let mut result__: i32 = ::std::mem::zeroed();
8773             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<i32>(result__)
8774         }
8775     }
SetCharacterSet(&self, value: i32) -> ::windows::runtime::Result<()>8776     pub fn SetCharacterSet(&self, value: i32) -> ::windows::runtime::Result<()> {
8777         let this = self;
8778         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
8779     }
IsCharacterSetMappingEnabled(&self) -> ::windows::runtime::Result<bool>8780     pub fn IsCharacterSetMappingEnabled(&self) -> ::windows::runtime::Result<bool> {
8781         let this = self;
8782         unsafe {
8783             let mut result__: bool = ::std::mem::zeroed();
8784             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8785         }
8786     }
SetIsCharacterSetMappingEnabled(&self, value: bool) -> ::windows::runtime::Result<()>8787     pub fn SetIsCharacterSetMappingEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
8788         let this = self;
8789         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
8790     }
CurrentWindow(&self) -> ::windows::runtime::Result<LineDisplayWindow>8791     pub fn CurrentWindow(&self) -> ::windows::runtime::Result<LineDisplayWindow> {
8792         let this = self;
8793         unsafe {
8794             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8795             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayWindow>(result__)
8796         }
8797     }
SetCurrentWindow<'a, Param0: ::windows::runtime::IntoParam<'a, LineDisplayWindow>>(&self, value: Param0) -> ::windows::runtime::Result<()>8798     pub fn SetCurrentWindow<'a, Param0: ::windows::runtime::IntoParam<'a, LineDisplayWindow>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8799         let this = self;
8800         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8801     }
8802 }
8803 unsafe impl ::windows::runtime::RuntimeType for LineDisplayAttributes {
8804     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayAttributes;{c17de99c-229a-4c14-a6f1-b4e4b1fead92})");
8805 }
8806 unsafe impl ::windows::runtime::Interface for LineDisplayAttributes {
8807     type Vtable = ILineDisplayAttributes_abi;
8808     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3246254492, 8858, 19476, [166, 241, 180, 228, 177, 254, 173, 146]);
8809 }
8810 impl ::windows::runtime::RuntimeName for LineDisplayAttributes {
8811     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayAttributes";
8812 }
8813 impl ::std::convert::From<LineDisplayAttributes> for ::windows::runtime::IUnknown {
from(value: LineDisplayAttributes) -> Self8814     fn from(value: LineDisplayAttributes) -> Self {
8815         unsafe { ::std::mem::transmute(value) }
8816     }
8817 }
8818 impl ::std::convert::From<&LineDisplayAttributes> for ::windows::runtime::IUnknown {
from(value: &LineDisplayAttributes) -> Self8819     fn from(value: &LineDisplayAttributes) -> Self {
8820         ::std::convert::From::from(::std::clone::Clone::clone(value))
8821     }
8822 }
8823 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>8824     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8825         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
8826     }
8827 }
8828 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>8829     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8830         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
8831     }
8832 }
8833 impl ::std::convert::From<LineDisplayAttributes> for ::windows::runtime::IInspectable {
from(value: LineDisplayAttributes) -> Self8834     fn from(value: LineDisplayAttributes) -> Self {
8835         value.0
8836     }
8837 }
8838 impl ::std::convert::From<&LineDisplayAttributes> for ::windows::runtime::IInspectable {
from(value: &LineDisplayAttributes) -> Self8839     fn from(value: &LineDisplayAttributes) -> Self {
8840         value.0.clone()
8841     }
8842 }
8843 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>8844     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8845         ::windows::runtime::Param::Owned(self.0)
8846     }
8847 }
8848 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>8849     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8850         ::windows::runtime::Param::Borrowed(&self.0)
8851     }
8852 }
8853 unsafe impl ::std::marker::Send for LineDisplayAttributes {}
8854 unsafe impl ::std::marker::Sync for LineDisplayAttributes {}
8855 #[repr(transparent)]
8856 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8857 pub struct LineDisplayCapabilities(::windows::runtime::IInspectable);
8858 impl LineDisplayCapabilities {
IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool>8859     pub fn IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool> {
8860         let this = self;
8861         unsafe {
8862             let mut result__: bool = ::std::mem::zeroed();
8863             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8864         }
8865     }
IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool>8866     pub fn IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool> {
8867         let this = self;
8868         unsafe {
8869             let mut result__: bool = ::std::mem::zeroed();
8870             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8871         }
8872     }
PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType>8873     pub fn PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType> {
8874         let this = self;
8875         unsafe {
8876             let mut result__: UnifiedPosPowerReportingType = ::std::mem::zeroed();
8877             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UnifiedPosPowerReportingType>(result__)
8878         }
8879     }
CanChangeScreenSize(&self) -> ::windows::runtime::Result<bool>8880     pub fn CanChangeScreenSize(&self) -> ::windows::runtime::Result<bool> {
8881         let this = self;
8882         unsafe {
8883             let mut result__: bool = ::std::mem::zeroed();
8884             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8885         }
8886     }
CanDisplayBitmaps(&self) -> ::windows::runtime::Result<bool>8887     pub fn CanDisplayBitmaps(&self) -> ::windows::runtime::Result<bool> {
8888         let this = self;
8889         unsafe {
8890             let mut result__: bool = ::std::mem::zeroed();
8891             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8892         }
8893     }
CanReadCharacterAtCursor(&self) -> ::windows::runtime::Result<bool>8894     pub fn CanReadCharacterAtCursor(&self) -> ::windows::runtime::Result<bool> {
8895         let this = self;
8896         unsafe {
8897             let mut result__: bool = ::std::mem::zeroed();
8898             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8899         }
8900     }
CanMapCharacterSets(&self) -> ::windows::runtime::Result<bool>8901     pub fn CanMapCharacterSets(&self) -> ::windows::runtime::Result<bool> {
8902         let this = self;
8903         unsafe {
8904             let mut result__: bool = ::std::mem::zeroed();
8905             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8906         }
8907     }
CanDisplayCustomGlyphs(&self) -> ::windows::runtime::Result<bool>8908     pub fn CanDisplayCustomGlyphs(&self) -> ::windows::runtime::Result<bool> {
8909         let this = self;
8910         unsafe {
8911             let mut result__: bool = ::std::mem::zeroed();
8912             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8913         }
8914     }
CanReverse(&self) -> ::windows::runtime::Result<LineDisplayTextAttributeGranularity>8915     pub fn CanReverse(&self) -> ::windows::runtime::Result<LineDisplayTextAttributeGranularity> {
8916         let this = self;
8917         unsafe {
8918             let mut result__: LineDisplayTextAttributeGranularity = ::std::mem::zeroed();
8919             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayTextAttributeGranularity>(result__)
8920         }
8921     }
CanBlink(&self) -> ::windows::runtime::Result<LineDisplayTextAttributeGranularity>8922     pub fn CanBlink(&self) -> ::windows::runtime::Result<LineDisplayTextAttributeGranularity> {
8923         let this = self;
8924         unsafe {
8925             let mut result__: LineDisplayTextAttributeGranularity = ::std::mem::zeroed();
8926             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayTextAttributeGranularity>(result__)
8927         }
8928     }
CanChangeBlinkRate(&self) -> ::windows::runtime::Result<bool>8929     pub fn CanChangeBlinkRate(&self) -> ::windows::runtime::Result<bool> {
8930         let this = self;
8931         unsafe {
8932             let mut result__: bool = ::std::mem::zeroed();
8933             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8934         }
8935     }
IsBrightnessSupported(&self) -> ::windows::runtime::Result<bool>8936     pub fn IsBrightnessSupported(&self) -> ::windows::runtime::Result<bool> {
8937         let this = self;
8938         unsafe {
8939             let mut result__: bool = ::std::mem::zeroed();
8940             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8941         }
8942     }
IsCursorSupported(&self) -> ::windows::runtime::Result<bool>8943     pub fn IsCursorSupported(&self) -> ::windows::runtime::Result<bool> {
8944         let this = self;
8945         unsafe {
8946             let mut result__: bool = ::std::mem::zeroed();
8947             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8948         }
8949     }
IsHorizontalMarqueeSupported(&self) -> ::windows::runtime::Result<bool>8950     pub fn IsHorizontalMarqueeSupported(&self) -> ::windows::runtime::Result<bool> {
8951         let this = self;
8952         unsafe {
8953             let mut result__: bool = ::std::mem::zeroed();
8954             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8955         }
8956     }
IsVerticalMarqueeSupported(&self) -> ::windows::runtime::Result<bool>8957     pub fn IsVerticalMarqueeSupported(&self) -> ::windows::runtime::Result<bool> {
8958         let this = self;
8959         unsafe {
8960             let mut result__: bool = ::std::mem::zeroed();
8961             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8962         }
8963     }
IsInterCharacterWaitSupported(&self) -> ::windows::runtime::Result<bool>8964     pub fn IsInterCharacterWaitSupported(&self) -> ::windows::runtime::Result<bool> {
8965         let this = self;
8966         unsafe {
8967             let mut result__: bool = ::std::mem::zeroed();
8968             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8969         }
8970     }
SupportedDescriptors(&self) -> ::windows::runtime::Result<u32>8971     pub fn SupportedDescriptors(&self) -> ::windows::runtime::Result<u32> {
8972         let this = self;
8973         unsafe {
8974             let mut result__: u32 = ::std::mem::zeroed();
8975             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
8976         }
8977     }
SupportedWindows(&self) -> ::windows::runtime::Result<u32>8978     pub fn SupportedWindows(&self) -> ::windows::runtime::Result<u32> {
8979         let this = self;
8980         unsafe {
8981             let mut result__: u32 = ::std::mem::zeroed();
8982             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
8983         }
8984     }
8985 }
8986 unsafe impl ::windows::runtime::RuntimeType for LineDisplayCapabilities {
8987     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayCapabilities;{5a15b5d1-8dc5-4b9c-9172-303e47b70c55})");
8988 }
8989 unsafe impl ::windows::runtime::Interface for LineDisplayCapabilities {
8990     type Vtable = ILineDisplayCapabilities_abi;
8991     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1511372241, 36293, 19356, [145, 114, 48, 62, 71, 183, 12, 85]);
8992 }
8993 impl ::windows::runtime::RuntimeName for LineDisplayCapabilities {
8994     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayCapabilities";
8995 }
8996 impl ::std::convert::From<LineDisplayCapabilities> for ::windows::runtime::IUnknown {
from(value: LineDisplayCapabilities) -> Self8997     fn from(value: LineDisplayCapabilities) -> Self {
8998         unsafe { ::std::mem::transmute(value) }
8999     }
9000 }
9001 impl ::std::convert::From<&LineDisplayCapabilities> for ::windows::runtime::IUnknown {
from(value: &LineDisplayCapabilities) -> Self9002     fn from(value: &LineDisplayCapabilities) -> Self {
9003         ::std::convert::From::from(::std::clone::Clone::clone(value))
9004     }
9005 }
9006 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9007     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9008         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
9009     }
9010 }
9011 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9012     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9013         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
9014     }
9015 }
9016 impl ::std::convert::From<LineDisplayCapabilities> for ::windows::runtime::IInspectable {
from(value: LineDisplayCapabilities) -> Self9017     fn from(value: LineDisplayCapabilities) -> Self {
9018         value.0
9019     }
9020 }
9021 impl ::std::convert::From<&LineDisplayCapabilities> for ::windows::runtime::IInspectable {
from(value: &LineDisplayCapabilities) -> Self9022     fn from(value: &LineDisplayCapabilities) -> Self {
9023         value.0.clone()
9024     }
9025 }
9026 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9027     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9028         ::windows::runtime::Param::Owned(self.0)
9029     }
9030 }
9031 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9032     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9033         ::windows::runtime::Param::Borrowed(&self.0)
9034     }
9035 }
9036 unsafe impl ::std::marker::Send for LineDisplayCapabilities {}
9037 unsafe impl ::std::marker::Sync for LineDisplayCapabilities {}
9038 #[repr(transparent)]
9039 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9040 pub struct LineDisplayCursor(::windows::runtime::IInspectable);
9041 impl LineDisplayCursor {
CanCustomize(&self) -> ::windows::runtime::Result<bool>9042     pub fn CanCustomize(&self) -> ::windows::runtime::Result<bool> {
9043         let this = self;
9044         unsafe {
9045             let mut result__: bool = ::std::mem::zeroed();
9046             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
9047         }
9048     }
IsBlinkSupported(&self) -> ::windows::runtime::Result<bool>9049     pub fn IsBlinkSupported(&self) -> ::windows::runtime::Result<bool> {
9050         let this = self;
9051         unsafe {
9052             let mut result__: bool = ::std::mem::zeroed();
9053             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
9054         }
9055     }
IsBlockSupported(&self) -> ::windows::runtime::Result<bool>9056     pub fn IsBlockSupported(&self) -> ::windows::runtime::Result<bool> {
9057         let this = self;
9058         unsafe {
9059             let mut result__: bool = ::std::mem::zeroed();
9060             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
9061         }
9062     }
IsHalfBlockSupported(&self) -> ::windows::runtime::Result<bool>9063     pub fn IsHalfBlockSupported(&self) -> ::windows::runtime::Result<bool> {
9064         let this = self;
9065         unsafe {
9066             let mut result__: bool = ::std::mem::zeroed();
9067             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
9068         }
9069     }
IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool>9070     pub fn IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool> {
9071         let this = self;
9072         unsafe {
9073             let mut result__: bool = ::std::mem::zeroed();
9074             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
9075         }
9076     }
IsReverseSupported(&self) -> ::windows::runtime::Result<bool>9077     pub fn IsReverseSupported(&self) -> ::windows::runtime::Result<bool> {
9078         let this = self;
9079         unsafe {
9080             let mut result__: bool = ::std::mem::zeroed();
9081             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
9082         }
9083     }
IsOtherSupported(&self) -> ::windows::runtime::Result<bool>9084     pub fn IsOtherSupported(&self) -> ::windows::runtime::Result<bool> {
9085         let this = self;
9086         unsafe {
9087             let mut result__: bool = ::std::mem::zeroed();
9088             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
9089         }
9090     }
GetAttributes(&self) -> ::windows::runtime::Result<LineDisplayCursorAttributes>9091     pub fn GetAttributes(&self) -> ::windows::runtime::Result<LineDisplayCursorAttributes> {
9092         let this = self;
9093         unsafe {
9094             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9095             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayCursorAttributes>(result__)
9096         }
9097     }
9098     #[cfg(feature = "Foundation")]
TryUpdateAttributesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, LineDisplayCursorAttributes>>(&self, attributes: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9099     pub fn TryUpdateAttributesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, LineDisplayCursorAttributes>>(&self, attributes: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9100         let this = self;
9101         unsafe {
9102             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9103             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), attributes.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9104         }
9105     }
9106 }
9107 unsafe impl ::windows::runtime::RuntimeType for LineDisplayCursor {
9108     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayCursor;{ecdffc45-754a-4e3b-ab2b-151181085605})");
9109 }
9110 unsafe impl ::windows::runtime::Interface for LineDisplayCursor {
9111     type Vtable = ILineDisplayCursor_abi;
9112     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3974102085, 30026, 20027, [171, 43, 21, 17, 129, 8, 86, 5]);
9113 }
9114 impl ::windows::runtime::RuntimeName for LineDisplayCursor {
9115     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayCursor";
9116 }
9117 impl ::std::convert::From<LineDisplayCursor> for ::windows::runtime::IUnknown {
from(value: LineDisplayCursor) -> Self9118     fn from(value: LineDisplayCursor) -> Self {
9119         unsafe { ::std::mem::transmute(value) }
9120     }
9121 }
9122 impl ::std::convert::From<&LineDisplayCursor> for ::windows::runtime::IUnknown {
from(value: &LineDisplayCursor) -> Self9123     fn from(value: &LineDisplayCursor) -> Self {
9124         ::std::convert::From::from(::std::clone::Clone::clone(value))
9125     }
9126 }
9127 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayCursor {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9128     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9129         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
9130     }
9131 }
9132 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayCursor {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9133     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9134         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
9135     }
9136 }
9137 impl ::std::convert::From<LineDisplayCursor> for ::windows::runtime::IInspectable {
from(value: LineDisplayCursor) -> Self9138     fn from(value: LineDisplayCursor) -> Self {
9139         value.0
9140     }
9141 }
9142 impl ::std::convert::From<&LineDisplayCursor> for ::windows::runtime::IInspectable {
from(value: &LineDisplayCursor) -> Self9143     fn from(value: &LineDisplayCursor) -> Self {
9144         value.0.clone()
9145     }
9146 }
9147 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayCursor {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9148     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9149         ::windows::runtime::Param::Owned(self.0)
9150     }
9151 }
9152 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayCursor {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9153     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9154         ::windows::runtime::Param::Borrowed(&self.0)
9155     }
9156 }
9157 unsafe impl ::std::marker::Send for LineDisplayCursor {}
9158 unsafe impl ::std::marker::Sync for LineDisplayCursor {}
9159 #[repr(transparent)]
9160 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9161 pub struct LineDisplayCursorAttributes(::windows::runtime::IInspectable);
9162 impl LineDisplayCursorAttributes {
IsBlinkEnabled(&self) -> ::windows::runtime::Result<bool>9163     pub fn IsBlinkEnabled(&self) -> ::windows::runtime::Result<bool> {
9164         let this = self;
9165         unsafe {
9166             let mut result__: bool = ::std::mem::zeroed();
9167             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
9168         }
9169     }
SetIsBlinkEnabled(&self, value: bool) -> ::windows::runtime::Result<()>9170     pub fn SetIsBlinkEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
9171         let this = self;
9172         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
9173     }
CursorType(&self) -> ::windows::runtime::Result<LineDisplayCursorType>9174     pub fn CursorType(&self) -> ::windows::runtime::Result<LineDisplayCursorType> {
9175         let this = self;
9176         unsafe {
9177             let mut result__: LineDisplayCursorType = ::std::mem::zeroed();
9178             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayCursorType>(result__)
9179         }
9180     }
SetCursorType(&self, value: LineDisplayCursorType) -> ::windows::runtime::Result<()>9181     pub fn SetCursorType(&self, value: LineDisplayCursorType) -> ::windows::runtime::Result<()> {
9182         let this = self;
9183         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
9184     }
IsAutoAdvanceEnabled(&self) -> ::windows::runtime::Result<bool>9185     pub fn IsAutoAdvanceEnabled(&self) -> ::windows::runtime::Result<bool> {
9186         let this = self;
9187         unsafe {
9188             let mut result__: bool = ::std::mem::zeroed();
9189             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
9190         }
9191     }
SetIsAutoAdvanceEnabled(&self, value: bool) -> ::windows::runtime::Result<()>9192     pub fn SetIsAutoAdvanceEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
9193         let this = self;
9194         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
9195     }
9196     #[cfg(feature = "Foundation")]
Position(&self) -> ::windows::runtime::Result<super::super::Foundation::Point>9197     pub fn Position(&self) -> ::windows::runtime::Result<super::super::Foundation::Point> {
9198         let this = self;
9199         unsafe {
9200             let mut result__: super::super::Foundation::Point = ::std::mem::zeroed();
9201             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Point>(result__)
9202         }
9203     }
9204     #[cfg(feature = "Foundation")]
SetPosition<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Point>>(&self, value: Param0) -> ::windows::runtime::Result<()>9205     pub fn SetPosition<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Point>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
9206         let this = self;
9207         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
9208     }
9209 }
9210 unsafe impl ::windows::runtime::RuntimeType for LineDisplayCursorAttributes {
9211     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayCursorAttributes;{4e2d54fe-4ffd-4190-aae1-ce285f20c896})");
9212 }
9213 unsafe impl ::windows::runtime::Interface for LineDisplayCursorAttributes {
9214     type Vtable = ILineDisplayCursorAttributes_abi;
9215     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1311593726, 20477, 16784, [170, 225, 206, 40, 95, 32, 200, 150]);
9216 }
9217 impl ::windows::runtime::RuntimeName for LineDisplayCursorAttributes {
9218     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayCursorAttributes";
9219 }
9220 impl ::std::convert::From<LineDisplayCursorAttributes> for ::windows::runtime::IUnknown {
from(value: LineDisplayCursorAttributes) -> Self9221     fn from(value: LineDisplayCursorAttributes) -> Self {
9222         unsafe { ::std::mem::transmute(value) }
9223     }
9224 }
9225 impl ::std::convert::From<&LineDisplayCursorAttributes> for ::windows::runtime::IUnknown {
from(value: &LineDisplayCursorAttributes) -> Self9226     fn from(value: &LineDisplayCursorAttributes) -> Self {
9227         ::std::convert::From::from(::std::clone::Clone::clone(value))
9228     }
9229 }
9230 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayCursorAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9231     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9232         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
9233     }
9234 }
9235 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayCursorAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9236     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9237         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
9238     }
9239 }
9240 impl ::std::convert::From<LineDisplayCursorAttributes> for ::windows::runtime::IInspectable {
from(value: LineDisplayCursorAttributes) -> Self9241     fn from(value: LineDisplayCursorAttributes) -> Self {
9242         value.0
9243     }
9244 }
9245 impl ::std::convert::From<&LineDisplayCursorAttributes> for ::windows::runtime::IInspectable {
from(value: &LineDisplayCursorAttributes) -> Self9246     fn from(value: &LineDisplayCursorAttributes) -> Self {
9247         value.0.clone()
9248     }
9249 }
9250 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayCursorAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9251     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9252         ::windows::runtime::Param::Owned(self.0)
9253     }
9254 }
9255 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayCursorAttributes {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9256     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9257         ::windows::runtime::Param::Borrowed(&self.0)
9258     }
9259 }
9260 unsafe impl ::std::marker::Send for LineDisplayCursorAttributes {}
9261 unsafe impl ::std::marker::Sync for LineDisplayCursorAttributes {}
9262 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
9263 #[repr(transparent)]
9264 pub struct LineDisplayCursorType(pub i32);
9265 impl LineDisplayCursorType {
9266     pub const None: LineDisplayCursorType = LineDisplayCursorType(0i32);
9267     pub const Block: LineDisplayCursorType = LineDisplayCursorType(1i32);
9268     pub const HalfBlock: LineDisplayCursorType = LineDisplayCursorType(2i32);
9269     pub const Underline: LineDisplayCursorType = LineDisplayCursorType(3i32);
9270     pub const Reverse: LineDisplayCursorType = LineDisplayCursorType(4i32);
9271     pub const Other: LineDisplayCursorType = LineDisplayCursorType(5i32);
9272 }
9273 impl ::std::convert::From<i32> for LineDisplayCursorType {
from(value: i32) -> Self9274     fn from(value: i32) -> Self {
9275         Self(value)
9276     }
9277 }
9278 unsafe impl ::windows::runtime::Abi for LineDisplayCursorType {
9279     type Abi = Self;
9280     type DefaultType = Self;
9281 }
9282 unsafe impl ::windows::runtime::RuntimeType for LineDisplayCursorType {
9283     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.LineDisplayCursorType;i4)");
9284 }
9285 #[repr(transparent)]
9286 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9287 pub struct LineDisplayCustomGlyphs(::windows::runtime::IInspectable);
9288 impl LineDisplayCustomGlyphs {
9289     #[cfg(feature = "Foundation")]
SizeInPixels(&self) -> ::windows::runtime::Result<super::super::Foundation::Size>9290     pub fn SizeInPixels(&self) -> ::windows::runtime::Result<super::super::Foundation::Size> {
9291         let this = self;
9292         unsafe {
9293             let mut result__: super::super::Foundation::Size = ::std::mem::zeroed();
9294             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Size>(result__)
9295         }
9296     }
9297     #[cfg(feature = "Foundation_Collections")]
SupportedGlyphCodes(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>>9298     pub fn SupportedGlyphCodes(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>> {
9299         let this = self;
9300         unsafe {
9301             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9302             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<u32>>(result__)
9303         }
9304     }
9305     #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
TryRedefineAsync<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IBuffer>>(&self, glyphcode: u32, glyphdata: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9306     pub fn TryRedefineAsync<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IBuffer>>(&self, glyphcode: u32, glyphdata: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9307         let this = self;
9308         unsafe {
9309             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9310             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), glyphcode, glyphdata.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9311         }
9312     }
9313 }
9314 unsafe impl ::windows::runtime::RuntimeType for LineDisplayCustomGlyphs {
9315     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayCustomGlyphs;{2257f63c-f263-44f1-a1a0-e750a6a0ec54})");
9316 }
9317 unsafe impl ::windows::runtime::Interface for LineDisplayCustomGlyphs {
9318     type Vtable = ILineDisplayCustomGlyphs_abi;
9319     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(576190012, 62051, 17649, [161, 160, 231, 80, 166, 160, 236, 84]);
9320 }
9321 impl ::windows::runtime::RuntimeName for LineDisplayCustomGlyphs {
9322     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayCustomGlyphs";
9323 }
9324 impl ::std::convert::From<LineDisplayCustomGlyphs> for ::windows::runtime::IUnknown {
from(value: LineDisplayCustomGlyphs) -> Self9325     fn from(value: LineDisplayCustomGlyphs) -> Self {
9326         unsafe { ::std::mem::transmute(value) }
9327     }
9328 }
9329 impl ::std::convert::From<&LineDisplayCustomGlyphs> for ::windows::runtime::IUnknown {
from(value: &LineDisplayCustomGlyphs) -> Self9330     fn from(value: &LineDisplayCustomGlyphs) -> Self {
9331         ::std::convert::From::from(::std::clone::Clone::clone(value))
9332     }
9333 }
9334 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayCustomGlyphs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9335     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9336         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
9337     }
9338 }
9339 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayCustomGlyphs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9340     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9341         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
9342     }
9343 }
9344 impl ::std::convert::From<LineDisplayCustomGlyphs> for ::windows::runtime::IInspectable {
from(value: LineDisplayCustomGlyphs) -> Self9345     fn from(value: LineDisplayCustomGlyphs) -> Self {
9346         value.0
9347     }
9348 }
9349 impl ::std::convert::From<&LineDisplayCustomGlyphs> for ::windows::runtime::IInspectable {
from(value: &LineDisplayCustomGlyphs) -> Self9350     fn from(value: &LineDisplayCustomGlyphs) -> Self {
9351         value.0.clone()
9352     }
9353 }
9354 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayCustomGlyphs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9355     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9356         ::windows::runtime::Param::Owned(self.0)
9357     }
9358 }
9359 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayCustomGlyphs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9360     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9361         ::windows::runtime::Param::Borrowed(&self.0)
9362     }
9363 }
9364 unsafe impl ::std::marker::Send for LineDisplayCustomGlyphs {}
9365 unsafe impl ::std::marker::Sync for LineDisplayCustomGlyphs {}
9366 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
9367 #[repr(transparent)]
9368 pub struct LineDisplayDescriptorState(pub i32);
9369 impl LineDisplayDescriptorState {
9370     pub const Off: LineDisplayDescriptorState = LineDisplayDescriptorState(0i32);
9371     pub const On: LineDisplayDescriptorState = LineDisplayDescriptorState(1i32);
9372     pub const Blink: LineDisplayDescriptorState = LineDisplayDescriptorState(2i32);
9373 }
9374 impl ::std::convert::From<i32> for LineDisplayDescriptorState {
from(value: i32) -> Self9375     fn from(value: i32) -> Self {
9376         Self(value)
9377     }
9378 }
9379 unsafe impl ::windows::runtime::Abi for LineDisplayDescriptorState {
9380     type Abi = Self;
9381     type DefaultType = Self;
9382 }
9383 unsafe impl ::windows::runtime::RuntimeType for LineDisplayDescriptorState {
9384     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.LineDisplayDescriptorState;i4)");
9385 }
9386 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
9387 #[repr(transparent)]
9388 pub struct LineDisplayHorizontalAlignment(pub i32);
9389 impl LineDisplayHorizontalAlignment {
9390     pub const Left: LineDisplayHorizontalAlignment = LineDisplayHorizontalAlignment(0i32);
9391     pub const Center: LineDisplayHorizontalAlignment = LineDisplayHorizontalAlignment(1i32);
9392     pub const Right: LineDisplayHorizontalAlignment = LineDisplayHorizontalAlignment(2i32);
9393 }
9394 impl ::std::convert::From<i32> for LineDisplayHorizontalAlignment {
from(value: i32) -> Self9395     fn from(value: i32) -> Self {
9396         Self(value)
9397     }
9398 }
9399 unsafe impl ::windows::runtime::Abi for LineDisplayHorizontalAlignment {
9400     type Abi = Self;
9401     type DefaultType = Self;
9402 }
9403 unsafe impl ::windows::runtime::RuntimeType for LineDisplayHorizontalAlignment {
9404     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.LineDisplayHorizontalAlignment;i4)");
9405 }
9406 #[repr(transparent)]
9407 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9408 pub struct LineDisplayMarquee(::windows::runtime::IInspectable);
9409 impl LineDisplayMarquee {
Format(&self) -> ::windows::runtime::Result<LineDisplayMarqueeFormat>9410     pub fn Format(&self) -> ::windows::runtime::Result<LineDisplayMarqueeFormat> {
9411         let this = self;
9412         unsafe {
9413             let mut result__: LineDisplayMarqueeFormat = ::std::mem::zeroed();
9414             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayMarqueeFormat>(result__)
9415         }
9416     }
SetFormat(&self, value: LineDisplayMarqueeFormat) -> ::windows::runtime::Result<()>9417     pub fn SetFormat(&self, value: LineDisplayMarqueeFormat) -> ::windows::runtime::Result<()> {
9418         let this = self;
9419         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
9420     }
9421     #[cfg(feature = "Foundation")]
RepeatWaitInterval(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan>9422     pub fn RepeatWaitInterval(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
9423         let this = self;
9424         unsafe {
9425             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
9426             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
9427         }
9428     }
9429     #[cfg(feature = "Foundation")]
SetRepeatWaitInterval<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()>9430     pub fn SetRepeatWaitInterval<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
9431         let this = self;
9432         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
9433     }
9434     #[cfg(feature = "Foundation")]
ScrollWaitInterval(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan>9435     pub fn ScrollWaitInterval(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
9436         let this = self;
9437         unsafe {
9438             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
9439             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
9440         }
9441     }
9442     #[cfg(feature = "Foundation")]
SetScrollWaitInterval<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()>9443     pub fn SetScrollWaitInterval<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
9444         let this = self;
9445         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
9446     }
9447     #[cfg(feature = "Foundation")]
TryStartScrollingAsync(&self, direction: LineDisplayScrollDirection) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9448     pub fn TryStartScrollingAsync(&self, direction: LineDisplayScrollDirection) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9449         let this = self;
9450         unsafe {
9451             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9452             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), direction, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9453         }
9454     }
9455     #[cfg(feature = "Foundation")]
TryStopScrollingAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9456     pub fn TryStopScrollingAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9457         let this = self;
9458         unsafe {
9459             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9460             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9461         }
9462     }
9463 }
9464 unsafe impl ::windows::runtime::RuntimeType for LineDisplayMarquee {
9465     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayMarquee;{a3d33e3e-f46a-4b7a-bc21-53eb3b57f8b4})");
9466 }
9467 unsafe impl ::windows::runtime::Interface for LineDisplayMarquee {
9468     type Vtable = ILineDisplayMarquee_abi;
9469     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2748530238, 62570, 19322, [188, 33, 83, 235, 59, 87, 248, 180]);
9470 }
9471 impl ::windows::runtime::RuntimeName for LineDisplayMarquee {
9472     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayMarquee";
9473 }
9474 impl ::std::convert::From<LineDisplayMarquee> for ::windows::runtime::IUnknown {
from(value: LineDisplayMarquee) -> Self9475     fn from(value: LineDisplayMarquee) -> Self {
9476         unsafe { ::std::mem::transmute(value) }
9477     }
9478 }
9479 impl ::std::convert::From<&LineDisplayMarquee> for ::windows::runtime::IUnknown {
from(value: &LineDisplayMarquee) -> Self9480     fn from(value: &LineDisplayMarquee) -> Self {
9481         ::std::convert::From::from(::std::clone::Clone::clone(value))
9482     }
9483 }
9484 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayMarquee {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9485     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9486         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
9487     }
9488 }
9489 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayMarquee {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9490     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9491         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
9492     }
9493 }
9494 impl ::std::convert::From<LineDisplayMarquee> for ::windows::runtime::IInspectable {
from(value: LineDisplayMarquee) -> Self9495     fn from(value: LineDisplayMarquee) -> Self {
9496         value.0
9497     }
9498 }
9499 impl ::std::convert::From<&LineDisplayMarquee> for ::windows::runtime::IInspectable {
from(value: &LineDisplayMarquee) -> Self9500     fn from(value: &LineDisplayMarquee) -> Self {
9501         value.0.clone()
9502     }
9503 }
9504 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayMarquee {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9505     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9506         ::windows::runtime::Param::Owned(self.0)
9507     }
9508 }
9509 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayMarquee {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9510     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9511         ::windows::runtime::Param::Borrowed(&self.0)
9512     }
9513 }
9514 unsafe impl ::std::marker::Send for LineDisplayMarquee {}
9515 unsafe impl ::std::marker::Sync for LineDisplayMarquee {}
9516 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
9517 #[repr(transparent)]
9518 pub struct LineDisplayMarqueeFormat(pub i32);
9519 impl LineDisplayMarqueeFormat {
9520     pub const None: LineDisplayMarqueeFormat = LineDisplayMarqueeFormat(0i32);
9521     pub const Walk: LineDisplayMarqueeFormat = LineDisplayMarqueeFormat(1i32);
9522     pub const Place: LineDisplayMarqueeFormat = LineDisplayMarqueeFormat(2i32);
9523 }
9524 impl ::std::convert::From<i32> for LineDisplayMarqueeFormat {
from(value: i32) -> Self9525     fn from(value: i32) -> Self {
9526         Self(value)
9527     }
9528 }
9529 unsafe impl ::windows::runtime::Abi for LineDisplayMarqueeFormat {
9530     type Abi = Self;
9531     type DefaultType = Self;
9532 }
9533 unsafe impl ::windows::runtime::RuntimeType for LineDisplayMarqueeFormat {
9534     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.LineDisplayMarqueeFormat;i4)");
9535 }
9536 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
9537 #[repr(transparent)]
9538 pub struct LineDisplayPowerStatus(pub i32);
9539 impl LineDisplayPowerStatus {
9540     pub const Unknown: LineDisplayPowerStatus = LineDisplayPowerStatus(0i32);
9541     pub const Online: LineDisplayPowerStatus = LineDisplayPowerStatus(1i32);
9542     pub const Off: LineDisplayPowerStatus = LineDisplayPowerStatus(2i32);
9543     pub const Offline: LineDisplayPowerStatus = LineDisplayPowerStatus(3i32);
9544     pub const OffOrOffline: LineDisplayPowerStatus = LineDisplayPowerStatus(4i32);
9545 }
9546 impl ::std::convert::From<i32> for LineDisplayPowerStatus {
from(value: i32) -> Self9547     fn from(value: i32) -> Self {
9548         Self(value)
9549     }
9550 }
9551 unsafe impl ::windows::runtime::Abi for LineDisplayPowerStatus {
9552     type Abi = Self;
9553     type DefaultType = Self;
9554 }
9555 unsafe impl ::windows::runtime::RuntimeType for LineDisplayPowerStatus {
9556     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.LineDisplayPowerStatus;i4)");
9557 }
9558 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
9559 #[repr(transparent)]
9560 pub struct LineDisplayScrollDirection(pub i32);
9561 impl LineDisplayScrollDirection {
9562     pub const Up: LineDisplayScrollDirection = LineDisplayScrollDirection(0i32);
9563     pub const Down: LineDisplayScrollDirection = LineDisplayScrollDirection(1i32);
9564     pub const Left: LineDisplayScrollDirection = LineDisplayScrollDirection(2i32);
9565     pub const Right: LineDisplayScrollDirection = LineDisplayScrollDirection(3i32);
9566 }
9567 impl ::std::convert::From<i32> for LineDisplayScrollDirection {
from(value: i32) -> Self9568     fn from(value: i32) -> Self {
9569         Self(value)
9570     }
9571 }
9572 unsafe impl ::windows::runtime::Abi for LineDisplayScrollDirection {
9573     type Abi = Self;
9574     type DefaultType = Self;
9575 }
9576 unsafe impl ::windows::runtime::RuntimeType for LineDisplayScrollDirection {
9577     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.LineDisplayScrollDirection;i4)");
9578 }
9579 #[repr(transparent)]
9580 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9581 pub struct LineDisplayStatisticsCategorySelector(::windows::runtime::IInspectable);
9582 impl LineDisplayStatisticsCategorySelector {
AllStatistics(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>9583     pub fn AllStatistics(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
9584         let this = self;
9585         unsafe {
9586             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
9587             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
9588         }
9589     }
UnifiedPosStatistics(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>9590     pub fn UnifiedPosStatistics(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
9591         let this = self;
9592         unsafe {
9593             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
9594             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
9595         }
9596     }
ManufacturerStatistics(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>9597     pub fn ManufacturerStatistics(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
9598         let this = self;
9599         unsafe {
9600             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
9601             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
9602         }
9603     }
9604 }
9605 unsafe impl ::windows::runtime::RuntimeType for LineDisplayStatisticsCategorySelector {
9606     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayStatisticsCategorySelector;{b521c46b-9274-4d24-94f3-b6017b832444})");
9607 }
9608 unsafe impl ::windows::runtime::Interface for LineDisplayStatisticsCategorySelector {
9609     type Vtable = ILineDisplayStatisticsCategorySelector_abi;
9610     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3038889067, 37492, 19748, [148, 243, 182, 1, 123, 131, 36, 68]);
9611 }
9612 impl ::windows::runtime::RuntimeName for LineDisplayStatisticsCategorySelector {
9613     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayStatisticsCategorySelector";
9614 }
9615 impl ::std::convert::From<LineDisplayStatisticsCategorySelector> for ::windows::runtime::IUnknown {
from(value: LineDisplayStatisticsCategorySelector) -> Self9616     fn from(value: LineDisplayStatisticsCategorySelector) -> Self {
9617         unsafe { ::std::mem::transmute(value) }
9618     }
9619 }
9620 impl ::std::convert::From<&LineDisplayStatisticsCategorySelector> for ::windows::runtime::IUnknown {
from(value: &LineDisplayStatisticsCategorySelector) -> Self9621     fn from(value: &LineDisplayStatisticsCategorySelector) -> Self {
9622         ::std::convert::From::from(::std::clone::Clone::clone(value))
9623     }
9624 }
9625 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayStatisticsCategorySelector {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9626     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9627         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
9628     }
9629 }
9630 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayStatisticsCategorySelector {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9631     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9632         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
9633     }
9634 }
9635 impl ::std::convert::From<LineDisplayStatisticsCategorySelector> for ::windows::runtime::IInspectable {
from(value: LineDisplayStatisticsCategorySelector) -> Self9636     fn from(value: LineDisplayStatisticsCategorySelector) -> Self {
9637         value.0
9638     }
9639 }
9640 impl ::std::convert::From<&LineDisplayStatisticsCategorySelector> for ::windows::runtime::IInspectable {
from(value: &LineDisplayStatisticsCategorySelector) -> Self9641     fn from(value: &LineDisplayStatisticsCategorySelector) -> Self {
9642         value.0.clone()
9643     }
9644 }
9645 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayStatisticsCategorySelector {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9646     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9647         ::windows::runtime::Param::Owned(self.0)
9648     }
9649 }
9650 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayStatisticsCategorySelector {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9651     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9652         ::windows::runtime::Param::Borrowed(&self.0)
9653     }
9654 }
9655 unsafe impl ::std::marker::Send for LineDisplayStatisticsCategorySelector {}
9656 unsafe impl ::std::marker::Sync for LineDisplayStatisticsCategorySelector {}
9657 #[repr(transparent)]
9658 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9659 pub struct LineDisplayStatusUpdatedEventArgs(::windows::runtime::IInspectable);
9660 impl LineDisplayStatusUpdatedEventArgs {
Status(&self) -> ::windows::runtime::Result<LineDisplayPowerStatus>9661     pub fn Status(&self) -> ::windows::runtime::Result<LineDisplayPowerStatus> {
9662         let this = self;
9663         unsafe {
9664             let mut result__: LineDisplayPowerStatus = ::std::mem::zeroed();
9665             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayPowerStatus>(result__)
9666         }
9667     }
9668 }
9669 unsafe impl ::windows::runtime::RuntimeType for LineDisplayStatusUpdatedEventArgs {
9670     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayStatusUpdatedEventArgs;{ddd57c1a-86fb-4eba-93d1-6f5eda52b752})");
9671 }
9672 unsafe impl ::windows::runtime::Interface for LineDisplayStatusUpdatedEventArgs {
9673     type Vtable = ILineDisplayStatusUpdatedEventArgs_abi;
9674     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3721755674, 34555, 20154, [147, 209, 111, 94, 218, 82, 183, 82]);
9675 }
9676 impl ::windows::runtime::RuntimeName for LineDisplayStatusUpdatedEventArgs {
9677     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayStatusUpdatedEventArgs";
9678 }
9679 impl ::std::convert::From<LineDisplayStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: LineDisplayStatusUpdatedEventArgs) -> Self9680     fn from(value: LineDisplayStatusUpdatedEventArgs) -> Self {
9681         unsafe { ::std::mem::transmute(value) }
9682     }
9683 }
9684 impl ::std::convert::From<&LineDisplayStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: &LineDisplayStatusUpdatedEventArgs) -> Self9685     fn from(value: &LineDisplayStatusUpdatedEventArgs) -> Self {
9686         ::std::convert::From::from(::std::clone::Clone::clone(value))
9687     }
9688 }
9689 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9690     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9691         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
9692     }
9693 }
9694 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9695     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9696         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
9697     }
9698 }
9699 impl ::std::convert::From<LineDisplayStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: LineDisplayStatusUpdatedEventArgs) -> Self9700     fn from(value: LineDisplayStatusUpdatedEventArgs) -> Self {
9701         value.0
9702     }
9703 }
9704 impl ::std::convert::From<&LineDisplayStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: &LineDisplayStatusUpdatedEventArgs) -> Self9705     fn from(value: &LineDisplayStatusUpdatedEventArgs) -> Self {
9706         value.0.clone()
9707     }
9708 }
9709 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9710     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9711         ::windows::runtime::Param::Owned(self.0)
9712     }
9713 }
9714 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9715     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9716         ::windows::runtime::Param::Borrowed(&self.0)
9717     }
9718 }
9719 unsafe impl ::std::marker::Send for LineDisplayStatusUpdatedEventArgs {}
9720 unsafe impl ::std::marker::Sync for LineDisplayStatusUpdatedEventArgs {}
9721 #[repr(transparent)]
9722 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9723 pub struct LineDisplayStoredBitmap(::windows::runtime::IInspectable);
9724 impl LineDisplayStoredBitmap {
EscapeSequence(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>9725     pub fn EscapeSequence(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
9726         let this = self;
9727         unsafe {
9728             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
9729             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
9730         }
9731     }
9732     #[cfg(feature = "Foundation")]
TryDeleteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9733     pub fn TryDeleteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9734         let this = self;
9735         unsafe {
9736             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9737             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9738         }
9739     }
9740 }
9741 unsafe impl ::windows::runtime::RuntimeType for LineDisplayStoredBitmap {
9742     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayStoredBitmap;{f621515b-d81e-43ba-bf1b-bcfa3c785ba0})");
9743 }
9744 unsafe impl ::windows::runtime::Interface for LineDisplayStoredBitmap {
9745     type Vtable = ILineDisplayStoredBitmap_abi;
9746     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4129378651, 55326, 17338, [191, 27, 188, 250, 60, 120, 91, 160]);
9747 }
9748 impl ::windows::runtime::RuntimeName for LineDisplayStoredBitmap {
9749     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayStoredBitmap";
9750 }
9751 impl ::std::convert::From<LineDisplayStoredBitmap> for ::windows::runtime::IUnknown {
from(value: LineDisplayStoredBitmap) -> Self9752     fn from(value: LineDisplayStoredBitmap) -> Self {
9753         unsafe { ::std::mem::transmute(value) }
9754     }
9755 }
9756 impl ::std::convert::From<&LineDisplayStoredBitmap> for ::windows::runtime::IUnknown {
from(value: &LineDisplayStoredBitmap) -> Self9757     fn from(value: &LineDisplayStoredBitmap) -> Self {
9758         ::std::convert::From::from(::std::clone::Clone::clone(value))
9759     }
9760 }
9761 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayStoredBitmap {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9762     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9763         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
9764     }
9765 }
9766 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayStoredBitmap {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>9767     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
9768         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
9769     }
9770 }
9771 impl ::std::convert::From<LineDisplayStoredBitmap> for ::windows::runtime::IInspectable {
from(value: LineDisplayStoredBitmap) -> Self9772     fn from(value: LineDisplayStoredBitmap) -> Self {
9773         value.0
9774     }
9775 }
9776 impl ::std::convert::From<&LineDisplayStoredBitmap> for ::windows::runtime::IInspectable {
from(value: &LineDisplayStoredBitmap) -> Self9777     fn from(value: &LineDisplayStoredBitmap) -> Self {
9778         value.0.clone()
9779     }
9780 }
9781 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayStoredBitmap {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9782     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9783         ::windows::runtime::Param::Owned(self.0)
9784     }
9785 }
9786 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayStoredBitmap {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>9787     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
9788         ::windows::runtime::Param::Borrowed(&self.0)
9789     }
9790 }
9791 unsafe impl ::std::marker::Send for LineDisplayStoredBitmap {}
9792 unsafe impl ::std::marker::Sync for LineDisplayStoredBitmap {}
9793 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
9794 #[repr(transparent)]
9795 pub struct LineDisplayTextAttribute(pub i32);
9796 impl LineDisplayTextAttribute {
9797     pub const Normal: LineDisplayTextAttribute = LineDisplayTextAttribute(0i32);
9798     pub const Blink: LineDisplayTextAttribute = LineDisplayTextAttribute(1i32);
9799     pub const Reverse: LineDisplayTextAttribute = LineDisplayTextAttribute(2i32);
9800     pub const ReverseBlink: LineDisplayTextAttribute = LineDisplayTextAttribute(3i32);
9801 }
9802 impl ::std::convert::From<i32> for LineDisplayTextAttribute {
from(value: i32) -> Self9803     fn from(value: i32) -> Self {
9804         Self(value)
9805     }
9806 }
9807 unsafe impl ::windows::runtime::Abi for LineDisplayTextAttribute {
9808     type Abi = Self;
9809     type DefaultType = Self;
9810 }
9811 unsafe impl ::windows::runtime::RuntimeType for LineDisplayTextAttribute {
9812     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.LineDisplayTextAttribute;i4)");
9813 }
9814 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
9815 #[repr(transparent)]
9816 pub struct LineDisplayTextAttributeGranularity(pub i32);
9817 impl LineDisplayTextAttributeGranularity {
9818     pub const NotSupported: LineDisplayTextAttributeGranularity = LineDisplayTextAttributeGranularity(0i32);
9819     pub const EntireDisplay: LineDisplayTextAttributeGranularity = LineDisplayTextAttributeGranularity(1i32);
9820     pub const PerCharacter: LineDisplayTextAttributeGranularity = LineDisplayTextAttributeGranularity(2i32);
9821 }
9822 impl ::std::convert::From<i32> for LineDisplayTextAttributeGranularity {
from(value: i32) -> Self9823     fn from(value: i32) -> Self {
9824         Self(value)
9825     }
9826 }
9827 unsafe impl ::windows::runtime::Abi for LineDisplayTextAttributeGranularity {
9828     type Abi = Self;
9829     type DefaultType = Self;
9830 }
9831 unsafe impl ::windows::runtime::RuntimeType for LineDisplayTextAttributeGranularity {
9832     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.LineDisplayTextAttributeGranularity;i4)");
9833 }
9834 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
9835 #[repr(transparent)]
9836 pub struct LineDisplayVerticalAlignment(pub i32);
9837 impl LineDisplayVerticalAlignment {
9838     pub const Top: LineDisplayVerticalAlignment = LineDisplayVerticalAlignment(0i32);
9839     pub const Center: LineDisplayVerticalAlignment = LineDisplayVerticalAlignment(1i32);
9840     pub const Bottom: LineDisplayVerticalAlignment = LineDisplayVerticalAlignment(2i32);
9841 }
9842 impl ::std::convert::From<i32> for LineDisplayVerticalAlignment {
from(value: i32) -> Self9843     fn from(value: i32) -> Self {
9844         Self(value)
9845     }
9846 }
9847 unsafe impl ::windows::runtime::Abi for LineDisplayVerticalAlignment {
9848     type Abi = Self;
9849     type DefaultType = Self;
9850 }
9851 unsafe impl ::windows::runtime::RuntimeType for LineDisplayVerticalAlignment {
9852     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.LineDisplayVerticalAlignment;i4)");
9853 }
9854 #[repr(transparent)]
9855 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9856 pub struct LineDisplayWindow(::windows::runtime::IInspectable);
9857 impl LineDisplayWindow {
9858     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>9859     pub fn Close(&self) -> ::windows::runtime::Result<()> {
9860         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
9861         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
9862     }
9863     #[cfg(feature = "Foundation")]
SizeInCharacters(&self) -> ::windows::runtime::Result<super::super::Foundation::Size>9864     pub fn SizeInCharacters(&self) -> ::windows::runtime::Result<super::super::Foundation::Size> {
9865         let this = self;
9866         unsafe {
9867             let mut result__: super::super::Foundation::Size = ::std::mem::zeroed();
9868             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Size>(result__)
9869         }
9870     }
9871     #[cfg(feature = "Foundation")]
InterCharacterWaitInterval(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan>9872     pub fn InterCharacterWaitInterval(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
9873         let this = self;
9874         unsafe {
9875             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
9876             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
9877         }
9878     }
9879     #[cfg(feature = "Foundation")]
SetInterCharacterWaitInterval<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()>9880     pub fn SetInterCharacterWaitInterval<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
9881         let this = self;
9882         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
9883     }
9884     #[cfg(feature = "Foundation")]
TryRefreshAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9885     pub fn TryRefreshAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9886         let this = self;
9887         unsafe {
9888             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9889             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9890         }
9891     }
9892     #[cfg(feature = "Foundation")]
TryDisplayTextAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, text: Param0, displayattribute: LineDisplayTextAttribute) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9893     pub fn TryDisplayTextAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, text: Param0, displayattribute: LineDisplayTextAttribute) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9894         let this = self;
9895         unsafe {
9896             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9897             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), text.into_param().abi(), displayattribute, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9898         }
9899     }
9900     #[cfg(feature = "Foundation")]
TryDisplayTextAtPositionAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::Point>>(&self, text: Param0, displayattribute: LineDisplayTextAttribute, startposition: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9901     pub fn TryDisplayTextAtPositionAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::Point>>(&self, text: Param0, displayattribute: LineDisplayTextAttribute, startposition: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9902         let this = self;
9903         unsafe {
9904             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9905             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), text.into_param().abi(), displayattribute, startposition.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9906         }
9907     }
9908     #[cfg(feature = "Foundation")]
TryDisplayTextNormalAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, text: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9909     pub fn TryDisplayTextNormalAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, text: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9910         let this = self;
9911         unsafe {
9912             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9913             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), text.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9914         }
9915     }
9916     #[cfg(feature = "Foundation")]
TryScrollTextAsync(&self, direction: LineDisplayScrollDirection, numberofcolumnsorrows: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9917     pub fn TryScrollTextAsync(&self, direction: LineDisplayScrollDirection, numberofcolumnsorrows: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9918         let this = self;
9919         unsafe {
9920             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9921             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), direction, numberofcolumnsorrows, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9922         }
9923     }
9924     #[cfg(feature = "Foundation")]
TryClearTextAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9925     pub fn TryClearTextAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9926         let this = self;
9927         unsafe {
9928             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9929             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9930         }
9931     }
Cursor(&self) -> ::windows::runtime::Result<LineDisplayCursor>9932     pub fn Cursor(&self) -> ::windows::runtime::Result<LineDisplayCursor> {
9933         let this = &::windows::runtime::Interface::cast::<ILineDisplayWindow2>(self)?;
9934         unsafe {
9935             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9936             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayCursor>(result__)
9937         }
9938     }
Marquee(&self) -> ::windows::runtime::Result<LineDisplayMarquee>9939     pub fn Marquee(&self) -> ::windows::runtime::Result<LineDisplayMarquee> {
9940         let this = &::windows::runtime::Interface::cast::<ILineDisplayWindow2>(self)?;
9941         unsafe {
9942             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9943             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<LineDisplayMarquee>(result__)
9944         }
9945     }
9946     #[cfg(feature = "Foundation")]
ReadCharacterAtCursorAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>>9947     pub fn ReadCharacterAtCursorAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u32>> {
9948         let this = &::windows::runtime::Interface::cast::<ILineDisplayWindow2>(self)?;
9949         unsafe {
9950             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9951             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u32>>(result__)
9952         }
9953     }
9954     #[cfg(feature = "Foundation")]
TryDisplayStoredBitmapAtCursorAsync<'a, Param0: ::windows::runtime::IntoParam<'a, LineDisplayStoredBitmap>>(&self, bitmap: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9955     pub fn TryDisplayStoredBitmapAtCursorAsync<'a, Param0: ::windows::runtime::IntoParam<'a, LineDisplayStoredBitmap>>(&self, bitmap: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9956         let this = &::windows::runtime::Interface::cast::<ILineDisplayWindow2>(self)?;
9957         unsafe {
9958             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9959             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9960         }
9961     }
9962     #[cfg(all(feature = "Foundation", feature = "Storage"))]
TryDisplayStorageFileBitmapAtCursorAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9963     pub fn TryDisplayStorageFileBitmapAtCursorAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9964         let this = &::windows::runtime::Interface::cast::<ILineDisplayWindow2>(self)?;
9965         unsafe {
9966             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9967             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9968         }
9969     }
9970     #[cfg(all(feature = "Foundation", feature = "Storage"))]
TryDisplayStorageFileBitmapAtCursorWithAlignmentAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9971     pub fn TryDisplayStorageFileBitmapAtCursorWithAlignmentAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9972         let this = &::windows::runtime::Interface::cast::<ILineDisplayWindow2>(self)?;
9973         unsafe {
9974             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9975             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), horizontalalignment, verticalalignment, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9976         }
9977     }
9978     #[cfg(all(feature = "Foundation", feature = "Storage"))]
TryDisplayStorageFileBitmapAtCursorWithAlignmentAndWidthAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment, widthinpixels: i32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9979     pub fn TryDisplayStorageFileBitmapAtCursorWithAlignmentAndWidthAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>>(&self, bitmap: Param0, horizontalalignment: LineDisplayHorizontalAlignment, verticalalignment: LineDisplayVerticalAlignment, widthinpixels: i32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9980         let this = &::windows::runtime::Interface::cast::<ILineDisplayWindow2>(self)?;
9981         unsafe {
9982             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9983             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), horizontalalignment, verticalalignment, widthinpixels, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9984         }
9985     }
9986     #[cfg(all(feature = "Foundation", feature = "Storage"))]
TryDisplayStorageFileBitmapAtPointAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Point>>(&self, bitmap: Param0, offsetinpixels: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9987     pub fn TryDisplayStorageFileBitmapAtPointAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Point>>(&self, bitmap: Param0, offsetinpixels: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9988         let this = &::windows::runtime::Interface::cast::<ILineDisplayWindow2>(self)?;
9989         unsafe {
9990             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9991             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), offsetinpixels.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
9992         }
9993     }
9994     #[cfg(all(feature = "Foundation", feature = "Storage"))]
TryDisplayStorageFileBitmapAtPointWithWidthAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Point>>(&self, bitmap: Param0, offsetinpixels: Param1, widthinpixels: i32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>9995     pub fn TryDisplayStorageFileBitmapAtPointWithWidthAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::StorageFile>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Point>>(&self, bitmap: Param0, offsetinpixels: Param1, widthinpixels: i32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
9996         let this = &::windows::runtime::Interface::cast::<ILineDisplayWindow2>(self)?;
9997         unsafe {
9998             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
9999             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), offsetinpixels.into_param().abi(), widthinpixels, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
10000         }
10001     }
10002 }
10003 unsafe impl ::windows::runtime::RuntimeType for LineDisplayWindow {
10004     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.LineDisplayWindow;{d21feef4-2364-4be5-bee1-851680af4964})");
10005 }
10006 unsafe impl ::windows::runtime::Interface for LineDisplayWindow {
10007     type Vtable = ILineDisplayWindow_abi;
10008     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3525308148, 9060, 19429, [190, 225, 133, 22, 128, 175, 73, 100]);
10009 }
10010 impl ::windows::runtime::RuntimeName for LineDisplayWindow {
10011     const NAME: &'static str = "Windows.Devices.PointOfService.LineDisplayWindow";
10012 }
10013 impl ::std::convert::From<LineDisplayWindow> for ::windows::runtime::IUnknown {
from(value: LineDisplayWindow) -> Self10014     fn from(value: LineDisplayWindow) -> Self {
10015         unsafe { ::std::mem::transmute(value) }
10016     }
10017 }
10018 impl ::std::convert::From<&LineDisplayWindow> for ::windows::runtime::IUnknown {
from(value: &LineDisplayWindow) -> Self10019     fn from(value: &LineDisplayWindow) -> Self {
10020         ::std::convert::From::from(::std::clone::Clone::clone(value))
10021     }
10022 }
10023 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LineDisplayWindow {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10024     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10025         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
10026     }
10027 }
10028 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LineDisplayWindow {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10029     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10030         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
10031     }
10032 }
10033 impl ::std::convert::From<LineDisplayWindow> for ::windows::runtime::IInspectable {
from(value: LineDisplayWindow) -> Self10034     fn from(value: LineDisplayWindow) -> Self {
10035         value.0
10036     }
10037 }
10038 impl ::std::convert::From<&LineDisplayWindow> for ::windows::runtime::IInspectable {
from(value: &LineDisplayWindow) -> Self10039     fn from(value: &LineDisplayWindow) -> Self {
10040         value.0.clone()
10041     }
10042 }
10043 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LineDisplayWindow {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10044     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10045         ::windows::runtime::Param::Owned(self.0)
10046     }
10047 }
10048 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LineDisplayWindow {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10049     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10050         ::windows::runtime::Param::Borrowed(&self.0)
10051     }
10052 }
10053 #[cfg(feature = "Foundation")]
10054 impl ::std::convert::TryFrom<LineDisplayWindow> for super::super::Foundation::IClosable {
10055     type Error = ::windows::runtime::Error;
try_from(value: LineDisplayWindow) -> ::windows::runtime::Result<Self>10056     fn try_from(value: LineDisplayWindow) -> ::windows::runtime::Result<Self> {
10057         ::std::convert::TryFrom::try_from(&value)
10058     }
10059 }
10060 #[cfg(feature = "Foundation")]
10061 impl ::std::convert::TryFrom<&LineDisplayWindow> for super::super::Foundation::IClosable {
10062     type Error = ::windows::runtime::Error;
try_from(value: &LineDisplayWindow) -> ::windows::runtime::Result<Self>10063     fn try_from(value: &LineDisplayWindow) -> ::windows::runtime::Result<Self> {
10064         ::windows::runtime::Interface::cast(value)
10065     }
10066 }
10067 #[cfg(feature = "Foundation")]
10068 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for LineDisplayWindow {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>10069     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
10070         ::windows::runtime::IntoParam::into_param(&self)
10071     }
10072 }
10073 #[cfg(feature = "Foundation")]
10074 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &LineDisplayWindow {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>10075     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
10076         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
10077     }
10078 }
10079 unsafe impl ::std::marker::Send for LineDisplayWindow {}
10080 unsafe impl ::std::marker::Sync for LineDisplayWindow {}
10081 #[repr(transparent)]
10082 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10083 pub struct MagneticStripeReader(::windows::runtime::IInspectable);
10084 impl MagneticStripeReader {
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10085     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10086         let this = self;
10087         unsafe {
10088             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10089             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10090         }
10091     }
Capabilities(&self) -> ::windows::runtime::Result<MagneticStripeReaderCapabilities>10092     pub fn Capabilities(&self) -> ::windows::runtime::Result<MagneticStripeReaderCapabilities> {
10093         let this = self;
10094         unsafe {
10095             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10096             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderCapabilities>(result__)
10097         }
10098     }
SupportedCardTypes(&self) -> ::windows::runtime::Result<::windows::runtime::Array<u32>>10099     pub fn SupportedCardTypes(&self) -> ::windows::runtime::Result<::windows::runtime::Array<u32>> {
10100         let this = self;
10101         unsafe {
10102             let mut result__: ::windows::runtime::Array<u32> = ::std::mem::zeroed();
10103             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), ::windows::runtime::Array::<u32>::set_abi_len(&mut result__), &mut result__ as *mut _ as _).and_then(|| result__)
10104         }
10105     }
DeviceAuthenticationProtocol(&self) -> ::windows::runtime::Result<MagneticStripeReaderAuthenticationProtocol>10106     pub fn DeviceAuthenticationProtocol(&self) -> ::windows::runtime::Result<MagneticStripeReaderAuthenticationProtocol> {
10107         let this = self;
10108         unsafe {
10109             let mut result__: MagneticStripeReaderAuthenticationProtocol = ::std::mem::zeroed();
10110             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderAuthenticationProtocol>(result__)
10111         }
10112     }
10113     #[cfg(feature = "Foundation")]
CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>10114     pub fn CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>> {
10115         let this = self;
10116         unsafe {
10117             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10118             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), level, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>(result__)
10119         }
10120     }
10121     #[cfg(feature = "Foundation")]
ClaimReaderAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedMagneticStripeReader>>10122     pub fn ClaimReaderAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedMagneticStripeReader>> {
10123         let this = self;
10124         unsafe {
10125             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10126             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<ClaimedMagneticStripeReader>>(result__)
10127         }
10128     }
10129     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections", feature = "Storage_Streams"))]
RetrieveStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Storage::Streams::IBuffer>>10130     pub fn RetrieveStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Storage::Streams::IBuffer>> {
10131         let this = self;
10132         unsafe {
10133             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10134             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), statisticscategories.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Storage::Streams::IBuffer>>(result__)
10135         }
10136     }
GetErrorReportingType(&self) -> ::windows::runtime::Result<MagneticStripeReaderErrorReportingType>10137     pub fn GetErrorReportingType(&self) -> ::windows::runtime::Result<MagneticStripeReaderErrorReportingType> {
10138         let this = self;
10139         unsafe {
10140             let mut result__: MagneticStripeReaderErrorReportingType = ::std::mem::zeroed();
10141             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderErrorReportingType>(result__)
10142         }
10143     }
10144     #[cfg(feature = "Foundation")]
StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<MagneticStripeReader, MagneticStripeReaderStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>10145     pub fn StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<MagneticStripeReader, MagneticStripeReaderStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
10146         let this = self;
10147         unsafe {
10148             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
10149             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
10150         }
10151     }
10152     #[cfg(feature = "Foundation")]
RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>10153     pub fn RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
10154         let this = self;
10155         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
10156     }
10157     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>10158     pub fn Close(&self) -> ::windows::runtime::Result<()> {
10159         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
10160         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
10161     }
10162     #[cfg(feature = "Foundation")]
GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<MagneticStripeReader>>10163     pub fn GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<MagneticStripeReader>> {
10164         Self::IMagneticStripeReaderStatics(|this| unsafe {
10165             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10166             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<MagneticStripeReader>>(result__)
10167         })
10168     }
10169     #[cfg(feature = "Foundation")]
FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<MagneticStripeReader>>10170     pub fn FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<MagneticStripeReader>> {
10171         Self::IMagneticStripeReaderStatics(|this| unsafe {
10172             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10173             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), deviceid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<MagneticStripeReader>>(result__)
10174         })
10175     }
GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING>10176     pub fn GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10177         Self::IMagneticStripeReaderStatics(|this| unsafe {
10178             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10179             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10180         })
10181     }
GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10182     pub fn GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10183         Self::IMagneticStripeReaderStatics2(|this| unsafe {
10184             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10185             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), connectiontypes, &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10186         })
10187     }
IMagneticStripeReaderStatics<R, F: FnOnce(&IMagneticStripeReaderStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>10188     pub fn IMagneticStripeReaderStatics<R, F: FnOnce(&IMagneticStripeReaderStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
10189         static mut SHARED: ::windows::runtime::FactoryCache<MagneticStripeReader, IMagneticStripeReaderStatics> = ::windows::runtime::FactoryCache::new();
10190         unsafe { SHARED.call(callback) }
10191     }
IMagneticStripeReaderStatics2<R, F: FnOnce(&IMagneticStripeReaderStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>10192     pub fn IMagneticStripeReaderStatics2<R, F: FnOnce(&IMagneticStripeReaderStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
10193         static mut SHARED: ::windows::runtime::FactoryCache<MagneticStripeReader, IMagneticStripeReaderStatics2> = ::windows::runtime::FactoryCache::new();
10194         unsafe { SHARED.call(callback) }
10195     }
10196 }
10197 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReader {
10198     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.MagneticStripeReader;{1a92b015-47c3-468a-9333-0c6517574883})");
10199 }
10200 unsafe impl ::windows::runtime::Interface for MagneticStripeReader {
10201     type Vtable = IMagneticStripeReader_abi;
10202     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(445820949, 18371, 18058, [147, 51, 12, 101, 23, 87, 72, 131]);
10203 }
10204 impl ::windows::runtime::RuntimeName for MagneticStripeReader {
10205     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReader";
10206 }
10207 impl ::std::convert::From<MagneticStripeReader> for ::windows::runtime::IUnknown {
from(value: MagneticStripeReader) -> Self10208     fn from(value: MagneticStripeReader) -> Self {
10209         unsafe { ::std::mem::transmute(value) }
10210     }
10211 }
10212 impl ::std::convert::From<&MagneticStripeReader> for ::windows::runtime::IUnknown {
from(value: &MagneticStripeReader) -> Self10213     fn from(value: &MagneticStripeReader) -> Self {
10214         ::std::convert::From::from(::std::clone::Clone::clone(value))
10215     }
10216 }
10217 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for MagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10218     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10219         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
10220     }
10221 }
10222 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &MagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10223     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10224         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
10225     }
10226 }
10227 impl ::std::convert::From<MagneticStripeReader> for ::windows::runtime::IInspectable {
from(value: MagneticStripeReader) -> Self10228     fn from(value: MagneticStripeReader) -> Self {
10229         value.0
10230     }
10231 }
10232 impl ::std::convert::From<&MagneticStripeReader> for ::windows::runtime::IInspectable {
from(value: &MagneticStripeReader) -> Self10233     fn from(value: &MagneticStripeReader) -> Self {
10234         value.0.clone()
10235     }
10236 }
10237 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for MagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10238     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10239         ::windows::runtime::Param::Owned(self.0)
10240     }
10241 }
10242 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a MagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10243     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10244         ::windows::runtime::Param::Borrowed(&self.0)
10245     }
10246 }
10247 #[cfg(feature = "Foundation")]
10248 impl ::std::convert::TryFrom<MagneticStripeReader> for super::super::Foundation::IClosable {
10249     type Error = ::windows::runtime::Error;
try_from(value: MagneticStripeReader) -> ::windows::runtime::Result<Self>10250     fn try_from(value: MagneticStripeReader) -> ::windows::runtime::Result<Self> {
10251         ::std::convert::TryFrom::try_from(&value)
10252     }
10253 }
10254 #[cfg(feature = "Foundation")]
10255 impl ::std::convert::TryFrom<&MagneticStripeReader> for super::super::Foundation::IClosable {
10256     type Error = ::windows::runtime::Error;
try_from(value: &MagneticStripeReader) -> ::windows::runtime::Result<Self>10257     fn try_from(value: &MagneticStripeReader) -> ::windows::runtime::Result<Self> {
10258         ::windows::runtime::Interface::cast(value)
10259     }
10260 }
10261 #[cfg(feature = "Foundation")]
10262 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for MagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>10263     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
10264         ::windows::runtime::IntoParam::into_param(&self)
10265     }
10266 }
10267 #[cfg(feature = "Foundation")]
10268 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &MagneticStripeReader {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>10269     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
10270         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
10271     }
10272 }
10273 unsafe impl ::std::marker::Send for MagneticStripeReader {}
10274 unsafe impl ::std::marker::Sync for MagneticStripeReader {}
10275 #[repr(transparent)]
10276 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10277 pub struct MagneticStripeReaderAamvaCardDataReceivedEventArgs(::windows::runtime::IInspectable);
10278 impl MagneticStripeReaderAamvaCardDataReceivedEventArgs {
Report(&self) -> ::windows::runtime::Result<MagneticStripeReaderReport>10279     pub fn Report(&self) -> ::windows::runtime::Result<MagneticStripeReaderReport> {
10280         let this = self;
10281         unsafe {
10282             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10283             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderReport>(result__)
10284         }
10285     }
LicenseNumber(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10286     pub fn LicenseNumber(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10287         let this = self;
10288         unsafe {
10289             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10290             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10291         }
10292     }
ExpirationDate(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10293     pub fn ExpirationDate(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10294         let this = self;
10295         unsafe {
10296             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10297             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10298         }
10299     }
Restrictions(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10300     pub fn Restrictions(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10301         let this = self;
10302         unsafe {
10303             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10304             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10305         }
10306     }
Class(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10307     pub fn Class(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10308         let this = self;
10309         unsafe {
10310             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10311             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10312         }
10313     }
Endorsements(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10314     pub fn Endorsements(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10315         let this = self;
10316         unsafe {
10317             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10318             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10319         }
10320     }
BirthDate(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10321     pub fn BirthDate(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10322         let this = self;
10323         unsafe {
10324             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10325             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10326         }
10327     }
FirstName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10328     pub fn FirstName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10329         let this = self;
10330         unsafe {
10331             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10332             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10333         }
10334     }
Surname(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10335     pub fn Surname(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10336         let this = self;
10337         unsafe {
10338             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10339             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10340         }
10341     }
Suffix(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10342     pub fn Suffix(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10343         let this = self;
10344         unsafe {
10345             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10346             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10347         }
10348     }
Gender(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10349     pub fn Gender(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10350         let this = self;
10351         unsafe {
10352             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10353             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10354         }
10355     }
HairColor(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10356     pub fn HairColor(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10357         let this = self;
10358         unsafe {
10359             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10360             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10361         }
10362     }
EyeColor(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10363     pub fn EyeColor(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10364         let this = self;
10365         unsafe {
10366             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10367             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10368         }
10369     }
Height(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10370     pub fn Height(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10371         let this = self;
10372         unsafe {
10373             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10374             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10375         }
10376     }
Weight(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10377     pub fn Weight(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10378         let this = self;
10379         unsafe {
10380             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10381             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10382         }
10383     }
Address(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10384     pub fn Address(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10385         let this = self;
10386         unsafe {
10387             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10388             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10389         }
10390     }
City(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10391     pub fn City(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10392         let this = self;
10393         unsafe {
10394             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10395             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10396         }
10397     }
State(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10398     pub fn State(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10399         let this = self;
10400         unsafe {
10401             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10402             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10403         }
10404     }
PostalCode(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10405     pub fn PostalCode(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10406         let this = self;
10407         unsafe {
10408             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10409             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10410         }
10411     }
10412 }
10413 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderAamvaCardDataReceivedEventArgs {
10414     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.MagneticStripeReaderAamvaCardDataReceivedEventArgs;{0a4bbd51-c316-4910-87f3-7a62ba862d31})");
10415 }
10416 unsafe impl ::windows::runtime::Interface for MagneticStripeReaderAamvaCardDataReceivedEventArgs {
10417     type Vtable = IMagneticStripeReaderAamvaCardDataReceivedEventArgs_abi;
10418     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(172735825, 49942, 18704, [135, 243, 122, 98, 186, 134, 45, 49]);
10419 }
10420 impl ::windows::runtime::RuntimeName for MagneticStripeReaderAamvaCardDataReceivedEventArgs {
10421     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderAamvaCardDataReceivedEventArgs";
10422 }
10423 impl ::std::convert::From<MagneticStripeReaderAamvaCardDataReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: MagneticStripeReaderAamvaCardDataReceivedEventArgs) -> Self10424     fn from(value: MagneticStripeReaderAamvaCardDataReceivedEventArgs) -> Self {
10425         unsafe { ::std::mem::transmute(value) }
10426     }
10427 }
10428 impl ::std::convert::From<&MagneticStripeReaderAamvaCardDataReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: &MagneticStripeReaderAamvaCardDataReceivedEventArgs) -> Self10429     fn from(value: &MagneticStripeReaderAamvaCardDataReceivedEventArgs) -> Self {
10430         ::std::convert::From::from(::std::clone::Clone::clone(value))
10431     }
10432 }
10433 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for MagneticStripeReaderAamvaCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10434     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10435         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
10436     }
10437 }
10438 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &MagneticStripeReaderAamvaCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10439     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10440         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
10441     }
10442 }
10443 impl ::std::convert::From<MagneticStripeReaderAamvaCardDataReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: MagneticStripeReaderAamvaCardDataReceivedEventArgs) -> Self10444     fn from(value: MagneticStripeReaderAamvaCardDataReceivedEventArgs) -> Self {
10445         value.0
10446     }
10447 }
10448 impl ::std::convert::From<&MagneticStripeReaderAamvaCardDataReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: &MagneticStripeReaderAamvaCardDataReceivedEventArgs) -> Self10449     fn from(value: &MagneticStripeReaderAamvaCardDataReceivedEventArgs) -> Self {
10450         value.0.clone()
10451     }
10452 }
10453 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for MagneticStripeReaderAamvaCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10454     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10455         ::windows::runtime::Param::Owned(self.0)
10456     }
10457 }
10458 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a MagneticStripeReaderAamvaCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10459     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10460         ::windows::runtime::Param::Borrowed(&self.0)
10461     }
10462 }
10463 unsafe impl ::std::marker::Send for MagneticStripeReaderAamvaCardDataReceivedEventArgs {}
10464 unsafe impl ::std::marker::Sync for MagneticStripeReaderAamvaCardDataReceivedEventArgs {}
10465 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
10466 #[repr(transparent)]
10467 pub struct MagneticStripeReaderAuthenticationLevel(pub i32);
10468 impl MagneticStripeReaderAuthenticationLevel {
10469     pub const NotSupported: MagneticStripeReaderAuthenticationLevel = MagneticStripeReaderAuthenticationLevel(0i32);
10470     pub const Optional: MagneticStripeReaderAuthenticationLevel = MagneticStripeReaderAuthenticationLevel(1i32);
10471     pub const Required: MagneticStripeReaderAuthenticationLevel = MagneticStripeReaderAuthenticationLevel(2i32);
10472 }
10473 impl ::std::convert::From<i32> for MagneticStripeReaderAuthenticationLevel {
from(value: i32) -> Self10474     fn from(value: i32) -> Self {
10475         Self(value)
10476     }
10477 }
10478 unsafe impl ::windows::runtime::Abi for MagneticStripeReaderAuthenticationLevel {
10479     type Abi = Self;
10480     type DefaultType = Self;
10481 }
10482 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderAuthenticationLevel {
10483     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.MagneticStripeReaderAuthenticationLevel;i4)");
10484 }
10485 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
10486 #[repr(transparent)]
10487 pub struct MagneticStripeReaderAuthenticationProtocol(pub i32);
10488 impl MagneticStripeReaderAuthenticationProtocol {
10489     pub const None: MagneticStripeReaderAuthenticationProtocol = MagneticStripeReaderAuthenticationProtocol(0i32);
10490     pub const ChallengeResponse: MagneticStripeReaderAuthenticationProtocol = MagneticStripeReaderAuthenticationProtocol(1i32);
10491 }
10492 impl ::std::convert::From<i32> for MagneticStripeReaderAuthenticationProtocol {
from(value: i32) -> Self10493     fn from(value: i32) -> Self {
10494         Self(value)
10495     }
10496 }
10497 unsafe impl ::windows::runtime::Abi for MagneticStripeReaderAuthenticationProtocol {
10498     type Abi = Self;
10499     type DefaultType = Self;
10500 }
10501 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderAuthenticationProtocol {
10502     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.MagneticStripeReaderAuthenticationProtocol;i4)");
10503 }
10504 #[repr(transparent)]
10505 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10506 pub struct MagneticStripeReaderBankCardDataReceivedEventArgs(::windows::runtime::IInspectable);
10507 impl MagneticStripeReaderBankCardDataReceivedEventArgs {
Report(&self) -> ::windows::runtime::Result<MagneticStripeReaderReport>10508     pub fn Report(&self) -> ::windows::runtime::Result<MagneticStripeReaderReport> {
10509         let this = self;
10510         unsafe {
10511             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10512             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderReport>(result__)
10513         }
10514     }
AccountNumber(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10515     pub fn AccountNumber(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10516         let this = self;
10517         unsafe {
10518             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10519             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10520         }
10521     }
ExpirationDate(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10522     pub fn ExpirationDate(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10523         let this = self;
10524         unsafe {
10525             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10526             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10527         }
10528     }
ServiceCode(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10529     pub fn ServiceCode(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10530         let this = self;
10531         unsafe {
10532             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10533             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10534         }
10535     }
Title(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10536     pub fn Title(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10537         let this = self;
10538         unsafe {
10539             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10540             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10541         }
10542     }
FirstName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10543     pub fn FirstName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10544         let this = self;
10545         unsafe {
10546             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10547             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10548         }
10549     }
MiddleInitial(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10550     pub fn MiddleInitial(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10551         let this = self;
10552         unsafe {
10553             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10554             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10555         }
10556     }
Surname(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10557     pub fn Surname(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10558         let this = self;
10559         unsafe {
10560             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10561             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10562         }
10563     }
Suffix(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10564     pub fn Suffix(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10565         let this = self;
10566         unsafe {
10567             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10568             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10569         }
10570     }
10571 }
10572 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderBankCardDataReceivedEventArgs {
10573     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.MagneticStripeReaderBankCardDataReceivedEventArgs;{2e958823-a31a-4763-882c-23725e39b08e})");
10574 }
10575 unsafe impl ::windows::runtime::Interface for MagneticStripeReaderBankCardDataReceivedEventArgs {
10576     type Vtable = IMagneticStripeReaderBankCardDataReceivedEventArgs_abi;
10577     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(781551651, 41754, 18275, [136, 44, 35, 114, 94, 57, 176, 142]);
10578 }
10579 impl ::windows::runtime::RuntimeName for MagneticStripeReaderBankCardDataReceivedEventArgs {
10580     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderBankCardDataReceivedEventArgs";
10581 }
10582 impl ::std::convert::From<MagneticStripeReaderBankCardDataReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: MagneticStripeReaderBankCardDataReceivedEventArgs) -> Self10583     fn from(value: MagneticStripeReaderBankCardDataReceivedEventArgs) -> Self {
10584         unsafe { ::std::mem::transmute(value) }
10585     }
10586 }
10587 impl ::std::convert::From<&MagneticStripeReaderBankCardDataReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: &MagneticStripeReaderBankCardDataReceivedEventArgs) -> Self10588     fn from(value: &MagneticStripeReaderBankCardDataReceivedEventArgs) -> Self {
10589         ::std::convert::From::from(::std::clone::Clone::clone(value))
10590     }
10591 }
10592 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for MagneticStripeReaderBankCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10593     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10594         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
10595     }
10596 }
10597 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &MagneticStripeReaderBankCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10598     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10599         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
10600     }
10601 }
10602 impl ::std::convert::From<MagneticStripeReaderBankCardDataReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: MagneticStripeReaderBankCardDataReceivedEventArgs) -> Self10603     fn from(value: MagneticStripeReaderBankCardDataReceivedEventArgs) -> Self {
10604         value.0
10605     }
10606 }
10607 impl ::std::convert::From<&MagneticStripeReaderBankCardDataReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: &MagneticStripeReaderBankCardDataReceivedEventArgs) -> Self10608     fn from(value: &MagneticStripeReaderBankCardDataReceivedEventArgs) -> Self {
10609         value.0.clone()
10610     }
10611 }
10612 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for MagneticStripeReaderBankCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10613     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10614         ::windows::runtime::Param::Owned(self.0)
10615     }
10616 }
10617 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a MagneticStripeReaderBankCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10618     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10619         ::windows::runtime::Param::Borrowed(&self.0)
10620     }
10621 }
10622 unsafe impl ::std::marker::Send for MagneticStripeReaderBankCardDataReceivedEventArgs {}
10623 unsafe impl ::std::marker::Sync for MagneticStripeReaderBankCardDataReceivedEventArgs {}
10624 #[repr(transparent)]
10625 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10626 pub struct MagneticStripeReaderCapabilities(::windows::runtime::IInspectable);
10627 impl MagneticStripeReaderCapabilities {
CardAuthentication(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>10628     pub fn CardAuthentication(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
10629         let this = self;
10630         unsafe {
10631             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
10632             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
10633         }
10634     }
SupportedEncryptionAlgorithms(&self) -> ::windows::runtime::Result<u32>10635     pub fn SupportedEncryptionAlgorithms(&self) -> ::windows::runtime::Result<u32> {
10636         let this = self;
10637         unsafe {
10638             let mut result__: u32 = ::std::mem::zeroed();
10639             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10640         }
10641     }
AuthenticationLevel(&self) -> ::windows::runtime::Result<MagneticStripeReaderAuthenticationLevel>10642     pub fn AuthenticationLevel(&self) -> ::windows::runtime::Result<MagneticStripeReaderAuthenticationLevel> {
10643         let this = self;
10644         unsafe {
10645             let mut result__: MagneticStripeReaderAuthenticationLevel = ::std::mem::zeroed();
10646             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderAuthenticationLevel>(result__)
10647         }
10648     }
IsIsoSupported(&self) -> ::windows::runtime::Result<bool>10649     pub fn IsIsoSupported(&self) -> ::windows::runtime::Result<bool> {
10650         let this = self;
10651         unsafe {
10652             let mut result__: bool = ::std::mem::zeroed();
10653             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
10654         }
10655     }
IsJisOneSupported(&self) -> ::windows::runtime::Result<bool>10656     pub fn IsJisOneSupported(&self) -> ::windows::runtime::Result<bool> {
10657         let this = self;
10658         unsafe {
10659             let mut result__: bool = ::std::mem::zeroed();
10660             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
10661         }
10662     }
IsJisTwoSupported(&self) -> ::windows::runtime::Result<bool>10663     pub fn IsJisTwoSupported(&self) -> ::windows::runtime::Result<bool> {
10664         let this = self;
10665         unsafe {
10666             let mut result__: bool = ::std::mem::zeroed();
10667             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
10668         }
10669     }
PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType>10670     pub fn PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType> {
10671         let this = self;
10672         unsafe {
10673             let mut result__: UnifiedPosPowerReportingType = ::std::mem::zeroed();
10674             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UnifiedPosPowerReportingType>(result__)
10675         }
10676     }
IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool>10677     pub fn IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool> {
10678         let this = self;
10679         unsafe {
10680             let mut result__: bool = ::std::mem::zeroed();
10681             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
10682         }
10683     }
IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool>10684     pub fn IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool> {
10685         let this = self;
10686         unsafe {
10687             let mut result__: bool = ::std::mem::zeroed();
10688             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
10689         }
10690     }
IsTrackDataMaskingSupported(&self) -> ::windows::runtime::Result<bool>10691     pub fn IsTrackDataMaskingSupported(&self) -> ::windows::runtime::Result<bool> {
10692         let this = self;
10693         unsafe {
10694             let mut result__: bool = ::std::mem::zeroed();
10695             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
10696         }
10697     }
IsTransmitSentinelsSupported(&self) -> ::windows::runtime::Result<bool>10698     pub fn IsTransmitSentinelsSupported(&self) -> ::windows::runtime::Result<bool> {
10699         let this = self;
10700         unsafe {
10701             let mut result__: bool = ::std::mem::zeroed();
10702             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
10703         }
10704     }
10705 }
10706 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderCapabilities {
10707     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.MagneticStripeReaderCapabilities;{7128809c-c440-44a2-a467-469175d02896})");
10708 }
10709 unsafe impl ::windows::runtime::Interface for MagneticStripeReaderCapabilities {
10710     type Vtable = IMagneticStripeReaderCapabilities_abi;
10711     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1898479772, 50240, 17570, [164, 103, 70, 145, 117, 208, 40, 150]);
10712 }
10713 impl ::windows::runtime::RuntimeName for MagneticStripeReaderCapabilities {
10714     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderCapabilities";
10715 }
10716 impl ::std::convert::From<MagneticStripeReaderCapabilities> for ::windows::runtime::IUnknown {
from(value: MagneticStripeReaderCapabilities) -> Self10717     fn from(value: MagneticStripeReaderCapabilities) -> Self {
10718         unsafe { ::std::mem::transmute(value) }
10719     }
10720 }
10721 impl ::std::convert::From<&MagneticStripeReaderCapabilities> for ::windows::runtime::IUnknown {
from(value: &MagneticStripeReaderCapabilities) -> Self10722     fn from(value: &MagneticStripeReaderCapabilities) -> Self {
10723         ::std::convert::From::from(::std::clone::Clone::clone(value))
10724     }
10725 }
10726 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for MagneticStripeReaderCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10727     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10728         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
10729     }
10730 }
10731 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &MagneticStripeReaderCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10732     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10733         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
10734     }
10735 }
10736 impl ::std::convert::From<MagneticStripeReaderCapabilities> for ::windows::runtime::IInspectable {
from(value: MagneticStripeReaderCapabilities) -> Self10737     fn from(value: MagneticStripeReaderCapabilities) -> Self {
10738         value.0
10739     }
10740 }
10741 impl ::std::convert::From<&MagneticStripeReaderCapabilities> for ::windows::runtime::IInspectable {
from(value: &MagneticStripeReaderCapabilities) -> Self10742     fn from(value: &MagneticStripeReaderCapabilities) -> Self {
10743         value.0.clone()
10744     }
10745 }
10746 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for MagneticStripeReaderCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10747     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10748         ::windows::runtime::Param::Owned(self.0)
10749     }
10750 }
10751 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a MagneticStripeReaderCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10752     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10753         ::windows::runtime::Param::Borrowed(&self.0)
10754     }
10755 }
10756 unsafe impl ::std::marker::Send for MagneticStripeReaderCapabilities {}
10757 unsafe impl ::std::marker::Sync for MagneticStripeReaderCapabilities {}
10758 pub struct MagneticStripeReaderCardTypes {}
10759 impl MagneticStripeReaderCardTypes {
Unknown() -> ::windows::runtime::Result<u32>10760     pub fn Unknown() -> ::windows::runtime::Result<u32> {
10761         Self::IMagneticStripeReaderCardTypesStatics(|this| unsafe {
10762             let mut result__: u32 = ::std::mem::zeroed();
10763             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10764         })
10765     }
Bank() -> ::windows::runtime::Result<u32>10766     pub fn Bank() -> ::windows::runtime::Result<u32> {
10767         Self::IMagneticStripeReaderCardTypesStatics(|this| unsafe {
10768             let mut result__: u32 = ::std::mem::zeroed();
10769             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10770         })
10771     }
Aamva() -> ::windows::runtime::Result<u32>10772     pub fn Aamva() -> ::windows::runtime::Result<u32> {
10773         Self::IMagneticStripeReaderCardTypesStatics(|this| unsafe {
10774             let mut result__: u32 = ::std::mem::zeroed();
10775             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10776         })
10777     }
ExtendedBase() -> ::windows::runtime::Result<u32>10778     pub fn ExtendedBase() -> ::windows::runtime::Result<u32> {
10779         Self::IMagneticStripeReaderCardTypesStatics(|this| unsafe {
10780             let mut result__: u32 = ::std::mem::zeroed();
10781             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10782         })
10783     }
IMagneticStripeReaderCardTypesStatics<R, F: FnOnce(&IMagneticStripeReaderCardTypesStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>10784     pub fn IMagneticStripeReaderCardTypesStatics<R, F: FnOnce(&IMagneticStripeReaderCardTypesStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
10785         static mut SHARED: ::windows::runtime::FactoryCache<MagneticStripeReaderCardTypes, IMagneticStripeReaderCardTypesStatics> = ::windows::runtime::FactoryCache::new();
10786         unsafe { SHARED.call(callback) }
10787     }
10788 }
10789 impl ::windows::runtime::RuntimeName for MagneticStripeReaderCardTypes {
10790     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderCardTypes";
10791 }
10792 pub struct MagneticStripeReaderEncryptionAlgorithms {}
10793 impl MagneticStripeReaderEncryptionAlgorithms {
None() -> ::windows::runtime::Result<u32>10794     pub fn None() -> ::windows::runtime::Result<u32> {
10795         Self::IMagneticStripeReaderEncryptionAlgorithmsStatics(|this| unsafe {
10796             let mut result__: u32 = ::std::mem::zeroed();
10797             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10798         })
10799     }
TripleDesDukpt() -> ::windows::runtime::Result<u32>10800     pub fn TripleDesDukpt() -> ::windows::runtime::Result<u32> {
10801         Self::IMagneticStripeReaderEncryptionAlgorithmsStatics(|this| unsafe {
10802             let mut result__: u32 = ::std::mem::zeroed();
10803             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10804         })
10805     }
ExtendedBase() -> ::windows::runtime::Result<u32>10806     pub fn ExtendedBase() -> ::windows::runtime::Result<u32> {
10807         Self::IMagneticStripeReaderEncryptionAlgorithmsStatics(|this| unsafe {
10808             let mut result__: u32 = ::std::mem::zeroed();
10809             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10810         })
10811     }
IMagneticStripeReaderEncryptionAlgorithmsStatics<R, F: FnOnce(&IMagneticStripeReaderEncryptionAlgorithmsStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>10812     pub fn IMagneticStripeReaderEncryptionAlgorithmsStatics<R, F: FnOnce(&IMagneticStripeReaderEncryptionAlgorithmsStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
10813         static mut SHARED: ::windows::runtime::FactoryCache<MagneticStripeReaderEncryptionAlgorithms, IMagneticStripeReaderEncryptionAlgorithmsStatics> = ::windows::runtime::FactoryCache::new();
10814         unsafe { SHARED.call(callback) }
10815     }
10816 }
10817 impl ::windows::runtime::RuntimeName for MagneticStripeReaderEncryptionAlgorithms {
10818     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderEncryptionAlgorithms";
10819 }
10820 #[repr(transparent)]
10821 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10822 pub struct MagneticStripeReaderErrorOccurredEventArgs(::windows::runtime::IInspectable);
10823 impl MagneticStripeReaderErrorOccurredEventArgs {
Track1Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackErrorType>10824     pub fn Track1Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackErrorType> {
10825         let this = self;
10826         unsafe {
10827             let mut result__: MagneticStripeReaderTrackErrorType = ::std::mem::zeroed();
10828             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderTrackErrorType>(result__)
10829         }
10830     }
Track2Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackErrorType>10831     pub fn Track2Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackErrorType> {
10832         let this = self;
10833         unsafe {
10834             let mut result__: MagneticStripeReaderTrackErrorType = ::std::mem::zeroed();
10835             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderTrackErrorType>(result__)
10836         }
10837     }
Track3Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackErrorType>10838     pub fn Track3Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackErrorType> {
10839         let this = self;
10840         unsafe {
10841             let mut result__: MagneticStripeReaderTrackErrorType = ::std::mem::zeroed();
10842             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderTrackErrorType>(result__)
10843         }
10844     }
Track4Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackErrorType>10845     pub fn Track4Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackErrorType> {
10846         let this = self;
10847         unsafe {
10848             let mut result__: MagneticStripeReaderTrackErrorType = ::std::mem::zeroed();
10849             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderTrackErrorType>(result__)
10850         }
10851     }
ErrorData(&self) -> ::windows::runtime::Result<UnifiedPosErrorData>10852     pub fn ErrorData(&self) -> ::windows::runtime::Result<UnifiedPosErrorData> {
10853         let this = self;
10854         unsafe {
10855             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10856             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UnifiedPosErrorData>(result__)
10857         }
10858     }
PartialInputData(&self) -> ::windows::runtime::Result<MagneticStripeReaderReport>10859     pub fn PartialInputData(&self) -> ::windows::runtime::Result<MagneticStripeReaderReport> {
10860         let this = self;
10861         unsafe {
10862             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10863             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderReport>(result__)
10864         }
10865     }
10866 }
10867 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderErrorOccurredEventArgs {
10868     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.MagneticStripeReaderErrorOccurredEventArgs;{1fedf95d-2c84-41ad-b778-f2356a789ab1})");
10869 }
10870 unsafe impl ::windows::runtime::Interface for MagneticStripeReaderErrorOccurredEventArgs {
10871     type Vtable = IMagneticStripeReaderErrorOccurredEventArgs_abi;
10872     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(535689565, 11396, 16813, [183, 120, 242, 53, 106, 120, 154, 177]);
10873 }
10874 impl ::windows::runtime::RuntimeName for MagneticStripeReaderErrorOccurredEventArgs {
10875     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderErrorOccurredEventArgs";
10876 }
10877 impl ::std::convert::From<MagneticStripeReaderErrorOccurredEventArgs> for ::windows::runtime::IUnknown {
from(value: MagneticStripeReaderErrorOccurredEventArgs) -> Self10878     fn from(value: MagneticStripeReaderErrorOccurredEventArgs) -> Self {
10879         unsafe { ::std::mem::transmute(value) }
10880     }
10881 }
10882 impl ::std::convert::From<&MagneticStripeReaderErrorOccurredEventArgs> for ::windows::runtime::IUnknown {
from(value: &MagneticStripeReaderErrorOccurredEventArgs) -> Self10883     fn from(value: &MagneticStripeReaderErrorOccurredEventArgs) -> Self {
10884         ::std::convert::From::from(::std::clone::Clone::clone(value))
10885     }
10886 }
10887 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for MagneticStripeReaderErrorOccurredEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10888     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10889         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
10890     }
10891 }
10892 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &MagneticStripeReaderErrorOccurredEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>10893     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
10894         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
10895     }
10896 }
10897 impl ::std::convert::From<MagneticStripeReaderErrorOccurredEventArgs> for ::windows::runtime::IInspectable {
from(value: MagneticStripeReaderErrorOccurredEventArgs) -> Self10898     fn from(value: MagneticStripeReaderErrorOccurredEventArgs) -> Self {
10899         value.0
10900     }
10901 }
10902 impl ::std::convert::From<&MagneticStripeReaderErrorOccurredEventArgs> for ::windows::runtime::IInspectable {
from(value: &MagneticStripeReaderErrorOccurredEventArgs) -> Self10903     fn from(value: &MagneticStripeReaderErrorOccurredEventArgs) -> Self {
10904         value.0.clone()
10905     }
10906 }
10907 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for MagneticStripeReaderErrorOccurredEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10908     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10909         ::windows::runtime::Param::Owned(self.0)
10910     }
10911 }
10912 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a MagneticStripeReaderErrorOccurredEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>10913     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
10914         ::windows::runtime::Param::Borrowed(&self.0)
10915     }
10916 }
10917 unsafe impl ::std::marker::Send for MagneticStripeReaderErrorOccurredEventArgs {}
10918 unsafe impl ::std::marker::Sync for MagneticStripeReaderErrorOccurredEventArgs {}
10919 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
10920 #[repr(transparent)]
10921 pub struct MagneticStripeReaderErrorReportingType(pub i32);
10922 impl MagneticStripeReaderErrorReportingType {
10923     pub const CardLevel: MagneticStripeReaderErrorReportingType = MagneticStripeReaderErrorReportingType(0i32);
10924     pub const TrackLevel: MagneticStripeReaderErrorReportingType = MagneticStripeReaderErrorReportingType(1i32);
10925 }
10926 impl ::std::convert::From<i32> for MagneticStripeReaderErrorReportingType {
from(value: i32) -> Self10927     fn from(value: i32) -> Self {
10928         Self(value)
10929     }
10930 }
10931 unsafe impl ::windows::runtime::Abi for MagneticStripeReaderErrorReportingType {
10932     type Abi = Self;
10933     type DefaultType = Self;
10934 }
10935 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderErrorReportingType {
10936     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.MagneticStripeReaderErrorReportingType;i4)");
10937 }
10938 #[repr(transparent)]
10939 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10940 pub struct MagneticStripeReaderReport(::windows::runtime::IInspectable);
10941 impl MagneticStripeReaderReport {
CardType(&self) -> ::windows::runtime::Result<u32>10942     pub fn CardType(&self) -> ::windows::runtime::Result<u32> {
10943         let this = self;
10944         unsafe {
10945             let mut result__: u32 = ::std::mem::zeroed();
10946             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10947         }
10948     }
Track1(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackData>10949     pub fn Track1(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackData> {
10950         let this = self;
10951         unsafe {
10952             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10953             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderTrackData>(result__)
10954         }
10955     }
Track2(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackData>10956     pub fn Track2(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackData> {
10957         let this = self;
10958         unsafe {
10959             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10960             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderTrackData>(result__)
10961         }
10962     }
Track3(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackData>10963     pub fn Track3(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackData> {
10964         let this = self;
10965         unsafe {
10966             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10967             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderTrackData>(result__)
10968         }
10969     }
Track4(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackData>10970     pub fn Track4(&self) -> ::windows::runtime::Result<MagneticStripeReaderTrackData> {
10971         let this = self;
10972         unsafe {
10973             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10974             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderTrackData>(result__)
10975         }
10976     }
10977     #[cfg(feature = "Foundation_Collections")]
Properties(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>10978     pub fn Properties(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>> {
10979         let this = self;
10980         unsafe {
10981             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10982             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::HSTRING>>(result__)
10983         }
10984     }
10985     #[cfg(feature = "Storage_Streams")]
CardAuthenticationData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer>10986     pub fn CardAuthenticationData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer> {
10987         let this = self;
10988         unsafe {
10989             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10990             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IBuffer>(result__)
10991         }
10992     }
CardAuthenticationDataLength(&self) -> ::windows::runtime::Result<u32>10993     pub fn CardAuthenticationDataLength(&self) -> ::windows::runtime::Result<u32> {
10994         let this = self;
10995         unsafe {
10996             let mut result__: u32 = ::std::mem::zeroed();
10997             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
10998         }
10999     }
11000     #[cfg(feature = "Storage_Streams")]
AdditionalSecurityInformation(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer>11001     pub fn AdditionalSecurityInformation(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer> {
11002         let this = self;
11003         unsafe {
11004             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11005             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IBuffer>(result__)
11006         }
11007     }
11008 }
11009 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderReport {
11010     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.MagneticStripeReaderReport;{6a5b6047-99b0-4188-bef1-eddf79f78fe6})");
11011 }
11012 unsafe impl ::windows::runtime::Interface for MagneticStripeReaderReport {
11013     type Vtable = IMagneticStripeReaderReport_abi;
11014     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1784373319, 39344, 16776, [190, 241, 237, 223, 121, 247, 143, 230]);
11015 }
11016 impl ::windows::runtime::RuntimeName for MagneticStripeReaderReport {
11017     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderReport";
11018 }
11019 impl ::std::convert::From<MagneticStripeReaderReport> for ::windows::runtime::IUnknown {
from(value: MagneticStripeReaderReport) -> Self11020     fn from(value: MagneticStripeReaderReport) -> Self {
11021         unsafe { ::std::mem::transmute(value) }
11022     }
11023 }
11024 impl ::std::convert::From<&MagneticStripeReaderReport> for ::windows::runtime::IUnknown {
from(value: &MagneticStripeReaderReport) -> Self11025     fn from(value: &MagneticStripeReaderReport) -> Self {
11026         ::std::convert::From::from(::std::clone::Clone::clone(value))
11027     }
11028 }
11029 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for MagneticStripeReaderReport {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11030     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11031         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
11032     }
11033 }
11034 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &MagneticStripeReaderReport {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11035     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11036         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
11037     }
11038 }
11039 impl ::std::convert::From<MagneticStripeReaderReport> for ::windows::runtime::IInspectable {
from(value: MagneticStripeReaderReport) -> Self11040     fn from(value: MagneticStripeReaderReport) -> Self {
11041         value.0
11042     }
11043 }
11044 impl ::std::convert::From<&MagneticStripeReaderReport> for ::windows::runtime::IInspectable {
from(value: &MagneticStripeReaderReport) -> Self11045     fn from(value: &MagneticStripeReaderReport) -> Self {
11046         value.0.clone()
11047     }
11048 }
11049 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for MagneticStripeReaderReport {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11050     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11051         ::windows::runtime::Param::Owned(self.0)
11052     }
11053 }
11054 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a MagneticStripeReaderReport {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11055     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11056         ::windows::runtime::Param::Borrowed(&self.0)
11057     }
11058 }
11059 unsafe impl ::std::marker::Send for MagneticStripeReaderReport {}
11060 unsafe impl ::std::marker::Sync for MagneticStripeReaderReport {}
11061 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
11062 #[repr(transparent)]
11063 pub struct MagneticStripeReaderStatus(pub i32);
11064 impl MagneticStripeReaderStatus {
11065     pub const Unauthenticated: MagneticStripeReaderStatus = MagneticStripeReaderStatus(0i32);
11066     pub const Authenticated: MagneticStripeReaderStatus = MagneticStripeReaderStatus(1i32);
11067     pub const Extended: MagneticStripeReaderStatus = MagneticStripeReaderStatus(2i32);
11068 }
11069 impl ::std::convert::From<i32> for MagneticStripeReaderStatus {
from(value: i32) -> Self11070     fn from(value: i32) -> Self {
11071         Self(value)
11072     }
11073 }
11074 unsafe impl ::windows::runtime::Abi for MagneticStripeReaderStatus {
11075     type Abi = Self;
11076     type DefaultType = Self;
11077 }
11078 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderStatus {
11079     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.MagneticStripeReaderStatus;i4)");
11080 }
11081 #[repr(transparent)]
11082 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11083 pub struct MagneticStripeReaderStatusUpdatedEventArgs(::windows::runtime::IInspectable);
11084 impl MagneticStripeReaderStatusUpdatedEventArgs {
Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderStatus>11085     pub fn Status(&self) -> ::windows::runtime::Result<MagneticStripeReaderStatus> {
11086         let this = self;
11087         unsafe {
11088             let mut result__: MagneticStripeReaderStatus = ::std::mem::zeroed();
11089             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderStatus>(result__)
11090         }
11091     }
ExtendedStatus(&self) -> ::windows::runtime::Result<u32>11092     pub fn ExtendedStatus(&self) -> ::windows::runtime::Result<u32> {
11093         let this = self;
11094         unsafe {
11095             let mut result__: u32 = ::std::mem::zeroed();
11096             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
11097         }
11098     }
11099 }
11100 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderStatusUpdatedEventArgs {
11101     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.MagneticStripeReaderStatusUpdatedEventArgs;{09cc6bb0-3262-401d-9e8a-e80d6358906b})");
11102 }
11103 unsafe impl ::windows::runtime::Interface for MagneticStripeReaderStatusUpdatedEventArgs {
11104     type Vtable = IMagneticStripeReaderStatusUpdatedEventArgs_abi;
11105     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(164391856, 12898, 16413, [158, 138, 232, 13, 99, 88, 144, 107]);
11106 }
11107 impl ::windows::runtime::RuntimeName for MagneticStripeReaderStatusUpdatedEventArgs {
11108     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderStatusUpdatedEventArgs";
11109 }
11110 impl ::std::convert::From<MagneticStripeReaderStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: MagneticStripeReaderStatusUpdatedEventArgs) -> Self11111     fn from(value: MagneticStripeReaderStatusUpdatedEventArgs) -> Self {
11112         unsafe { ::std::mem::transmute(value) }
11113     }
11114 }
11115 impl ::std::convert::From<&MagneticStripeReaderStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: &MagneticStripeReaderStatusUpdatedEventArgs) -> Self11116     fn from(value: &MagneticStripeReaderStatusUpdatedEventArgs) -> Self {
11117         ::std::convert::From::from(::std::clone::Clone::clone(value))
11118     }
11119 }
11120 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for MagneticStripeReaderStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11121     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11122         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
11123     }
11124 }
11125 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &MagneticStripeReaderStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11126     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11127         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
11128     }
11129 }
11130 impl ::std::convert::From<MagneticStripeReaderStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: MagneticStripeReaderStatusUpdatedEventArgs) -> Self11131     fn from(value: MagneticStripeReaderStatusUpdatedEventArgs) -> Self {
11132         value.0
11133     }
11134 }
11135 impl ::std::convert::From<&MagneticStripeReaderStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: &MagneticStripeReaderStatusUpdatedEventArgs) -> Self11136     fn from(value: &MagneticStripeReaderStatusUpdatedEventArgs) -> Self {
11137         value.0.clone()
11138     }
11139 }
11140 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for MagneticStripeReaderStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11141     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11142         ::windows::runtime::Param::Owned(self.0)
11143     }
11144 }
11145 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a MagneticStripeReaderStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11146     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11147         ::windows::runtime::Param::Borrowed(&self.0)
11148     }
11149 }
11150 unsafe impl ::std::marker::Send for MagneticStripeReaderStatusUpdatedEventArgs {}
11151 unsafe impl ::std::marker::Sync for MagneticStripeReaderStatusUpdatedEventArgs {}
11152 #[repr(transparent)]
11153 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11154 pub struct MagneticStripeReaderTrackData(::windows::runtime::IInspectable);
11155 impl MagneticStripeReaderTrackData {
11156     #[cfg(feature = "Storage_Streams")]
Data(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer>11157     pub fn Data(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer> {
11158         let this = self;
11159         unsafe {
11160             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11161             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IBuffer>(result__)
11162         }
11163     }
11164     #[cfg(feature = "Storage_Streams")]
DiscretionaryData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer>11165     pub fn DiscretionaryData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer> {
11166         let this = self;
11167         unsafe {
11168             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11169             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IBuffer>(result__)
11170         }
11171     }
11172     #[cfg(feature = "Storage_Streams")]
EncryptedData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer>11173     pub fn EncryptedData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IBuffer> {
11174         let this = self;
11175         unsafe {
11176             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11177             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IBuffer>(result__)
11178         }
11179     }
11180 }
11181 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderTrackData {
11182     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.MagneticStripeReaderTrackData;{104cf671-4a9d-446e-abc5-20402307ba36})");
11183 }
11184 unsafe impl ::windows::runtime::Interface for MagneticStripeReaderTrackData {
11185     type Vtable = IMagneticStripeReaderTrackData_abi;
11186     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(273479281, 19101, 17518, [171, 197, 32, 64, 35, 7, 186, 54]);
11187 }
11188 impl ::windows::runtime::RuntimeName for MagneticStripeReaderTrackData {
11189     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderTrackData";
11190 }
11191 impl ::std::convert::From<MagneticStripeReaderTrackData> for ::windows::runtime::IUnknown {
from(value: MagneticStripeReaderTrackData) -> Self11192     fn from(value: MagneticStripeReaderTrackData) -> Self {
11193         unsafe { ::std::mem::transmute(value) }
11194     }
11195 }
11196 impl ::std::convert::From<&MagneticStripeReaderTrackData> for ::windows::runtime::IUnknown {
from(value: &MagneticStripeReaderTrackData) -> Self11197     fn from(value: &MagneticStripeReaderTrackData) -> Self {
11198         ::std::convert::From::from(::std::clone::Clone::clone(value))
11199     }
11200 }
11201 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for MagneticStripeReaderTrackData {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11202     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11203         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
11204     }
11205 }
11206 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &MagneticStripeReaderTrackData {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11207     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11208         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
11209     }
11210 }
11211 impl ::std::convert::From<MagneticStripeReaderTrackData> for ::windows::runtime::IInspectable {
from(value: MagneticStripeReaderTrackData) -> Self11212     fn from(value: MagneticStripeReaderTrackData) -> Self {
11213         value.0
11214     }
11215 }
11216 impl ::std::convert::From<&MagneticStripeReaderTrackData> for ::windows::runtime::IInspectable {
from(value: &MagneticStripeReaderTrackData) -> Self11217     fn from(value: &MagneticStripeReaderTrackData) -> Self {
11218         value.0.clone()
11219     }
11220 }
11221 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for MagneticStripeReaderTrackData {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11222     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11223         ::windows::runtime::Param::Owned(self.0)
11224     }
11225 }
11226 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a MagneticStripeReaderTrackData {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11227     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11228         ::windows::runtime::Param::Borrowed(&self.0)
11229     }
11230 }
11231 unsafe impl ::std::marker::Send for MagneticStripeReaderTrackData {}
11232 unsafe impl ::std::marker::Sync for MagneticStripeReaderTrackData {}
11233 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
11234 #[repr(transparent)]
11235 pub struct MagneticStripeReaderTrackErrorType(pub i32);
11236 impl MagneticStripeReaderTrackErrorType {
11237     pub const None: MagneticStripeReaderTrackErrorType = MagneticStripeReaderTrackErrorType(0i32);
11238     pub const StartSentinelError: MagneticStripeReaderTrackErrorType = MagneticStripeReaderTrackErrorType(1i32);
11239     pub const EndSentinelError: MagneticStripeReaderTrackErrorType = MagneticStripeReaderTrackErrorType(2i32);
11240     pub const ParityError: MagneticStripeReaderTrackErrorType = MagneticStripeReaderTrackErrorType(3i32);
11241     pub const LrcError: MagneticStripeReaderTrackErrorType = MagneticStripeReaderTrackErrorType(4i32);
11242     pub const Unknown: MagneticStripeReaderTrackErrorType = MagneticStripeReaderTrackErrorType(-1i32);
11243 }
11244 impl ::std::convert::From<i32> for MagneticStripeReaderTrackErrorType {
from(value: i32) -> Self11245     fn from(value: i32) -> Self {
11246         Self(value)
11247     }
11248 }
11249 unsafe impl ::windows::runtime::Abi for MagneticStripeReaderTrackErrorType {
11250     type Abi = Self;
11251     type DefaultType = Self;
11252 }
11253 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderTrackErrorType {
11254     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.MagneticStripeReaderTrackErrorType;i4)");
11255 }
11256 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
11257 #[repr(transparent)]
11258 pub struct MagneticStripeReaderTrackIds(pub i32);
11259 impl MagneticStripeReaderTrackIds {
11260     pub const None: MagneticStripeReaderTrackIds = MagneticStripeReaderTrackIds(0i32);
11261     pub const Track1: MagneticStripeReaderTrackIds = MagneticStripeReaderTrackIds(1i32);
11262     pub const Track2: MagneticStripeReaderTrackIds = MagneticStripeReaderTrackIds(2i32);
11263     pub const Track3: MagneticStripeReaderTrackIds = MagneticStripeReaderTrackIds(4i32);
11264     pub const Track4: MagneticStripeReaderTrackIds = MagneticStripeReaderTrackIds(8i32);
11265 }
11266 impl ::std::convert::From<i32> for MagneticStripeReaderTrackIds {
from(value: i32) -> Self11267     fn from(value: i32) -> Self {
11268         Self(value)
11269     }
11270 }
11271 unsafe impl ::windows::runtime::Abi for MagneticStripeReaderTrackIds {
11272     type Abi = Self;
11273     type DefaultType = Self;
11274 }
11275 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderTrackIds {
11276     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.MagneticStripeReaderTrackIds;i4)");
11277 }
11278 #[repr(transparent)]
11279 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11280 pub struct MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs(::windows::runtime::IInspectable);
11281 impl MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {
Report(&self) -> ::windows::runtime::Result<MagneticStripeReaderReport>11282     pub fn Report(&self) -> ::windows::runtime::Result<MagneticStripeReaderReport> {
11283         let this = self;
11284         unsafe {
11285             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11286             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<MagneticStripeReaderReport>(result__)
11287         }
11288     }
11289 }
11290 unsafe impl ::windows::runtime::RuntimeType for MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {
11291     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs;{af0a5514-59cc-4a60-99e8-99a53dace5aa})");
11292 }
11293 unsafe impl ::windows::runtime::Interface for MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {
11294     type Vtable = IMagneticStripeReaderVendorSpecificCardDataReceivedEventArgs_abi;
11295     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2936689940, 22988, 19040, [153, 232, 153, 165, 61, 172, 229, 170]);
11296 }
11297 impl ::windows::runtime::RuntimeName for MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {
11298     const NAME: &'static str = "Windows.Devices.PointOfService.MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs";
11299 }
11300 impl ::std::convert::From<MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs) -> Self11301     fn from(value: MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs) -> Self {
11302         unsafe { ::std::mem::transmute(value) }
11303     }
11304 }
11305 impl ::std::convert::From<&MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs> for ::windows::runtime::IUnknown {
from(value: &MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs) -> Self11306     fn from(value: &MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs) -> Self {
11307         ::std::convert::From::from(::std::clone::Clone::clone(value))
11308     }
11309 }
11310 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11311     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11312         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
11313     }
11314 }
11315 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11316     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11317         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
11318     }
11319 }
11320 impl ::std::convert::From<MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs) -> Self11321     fn from(value: MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs) -> Self {
11322         value.0
11323     }
11324 }
11325 impl ::std::convert::From<&MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs> for ::windows::runtime::IInspectable {
from(value: &MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs) -> Self11326     fn from(value: &MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs) -> Self {
11327         value.0.clone()
11328     }
11329 }
11330 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11331     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11332         ::windows::runtime::Param::Owned(self.0)
11333     }
11334 }
11335 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11336     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11337         ::windows::runtime::Param::Borrowed(&self.0)
11338     }
11339 }
11340 unsafe impl ::std::marker::Send for MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {}
11341 unsafe impl ::std::marker::Sync for MagneticStripeReaderVendorSpecificCardDataReceivedEventArgs {}
11342 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
11343 #[repr(transparent)]
11344 pub struct PosConnectionTypes(pub u32);
11345 impl PosConnectionTypes {
11346     pub const Local: PosConnectionTypes = PosConnectionTypes(1u32);
11347     pub const IP: PosConnectionTypes = PosConnectionTypes(2u32);
11348     pub const Bluetooth: PosConnectionTypes = PosConnectionTypes(4u32);
11349     pub const All: PosConnectionTypes = PosConnectionTypes(4294967295u32);
11350 }
11351 impl ::std::convert::From<u32> for PosConnectionTypes {
from(value: u32) -> Self11352     fn from(value: u32) -> Self {
11353         Self(value)
11354     }
11355 }
11356 unsafe impl ::windows::runtime::Abi for PosConnectionTypes {
11357     type Abi = Self;
11358     type DefaultType = Self;
11359 }
11360 unsafe impl ::windows::runtime::RuntimeType for PosConnectionTypes {
11361     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosConnectionTypes;u4)");
11362 }
11363 impl ::std::ops::BitOr for PosConnectionTypes {
11364     type Output = Self;
bitor(self, rhs: Self) -> Self11365     fn bitor(self, rhs: Self) -> Self {
11366         Self(self.0 | rhs.0)
11367     }
11368 }
11369 impl ::std::ops::BitAnd for PosConnectionTypes {
11370     type Output = Self;
bitand(self, rhs: Self) -> Self11371     fn bitand(self, rhs: Self) -> Self {
11372         Self(self.0 & rhs.0)
11373     }
11374 }
11375 impl ::std::ops::BitOrAssign for PosConnectionTypes {
bitor_assign(&mut self, rhs: Self)11376     fn bitor_assign(&mut self, rhs: Self) {
11377         self.0.bitor_assign(rhs.0)
11378     }
11379 }
11380 impl ::std::ops::BitAndAssign for PosConnectionTypes {
bitand_assign(&mut self, rhs: Self)11381     fn bitand_assign(&mut self, rhs: Self) {
11382         self.0.bitand_assign(rhs.0)
11383     }
11384 }
11385 impl ::std::ops::Not for PosConnectionTypes {
11386     type Output = Self;
not(self) -> Self11387     fn not(self) -> Self {
11388         Self(self.0.not())
11389     }
11390 }
11391 #[repr(transparent)]
11392 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11393 pub struct PosPrinter(::windows::runtime::IInspectable);
11394 impl PosPrinter {
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>11395     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
11396         let this = self;
11397         unsafe {
11398             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
11399             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
11400         }
11401     }
Capabilities(&self) -> ::windows::runtime::Result<PosPrinterCapabilities>11402     pub fn Capabilities(&self) -> ::windows::runtime::Result<PosPrinterCapabilities> {
11403         let this = self;
11404         unsafe {
11405             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11406             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterCapabilities>(result__)
11407         }
11408     }
11409     #[cfg(feature = "Foundation_Collections")]
SupportedCharacterSets(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>>11410     pub fn SupportedCharacterSets(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>> {
11411         let this = self;
11412         unsafe {
11413             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11414             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<u32>>(result__)
11415         }
11416     }
11417     #[cfg(feature = "Foundation_Collections")]
SupportedTypeFaces(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<::windows::runtime::HSTRING>>11418     pub fn SupportedTypeFaces(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<::windows::runtime::HSTRING>> {
11419         let this = self;
11420         unsafe {
11421             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11422             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<::windows::runtime::HSTRING>>(result__)
11423         }
11424     }
Status(&self) -> ::windows::runtime::Result<PosPrinterStatus>11425     pub fn Status(&self) -> ::windows::runtime::Result<PosPrinterStatus> {
11426         let this = self;
11427         unsafe {
11428             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11429             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterStatus>(result__)
11430         }
11431     }
11432     #[cfg(feature = "Foundation")]
ClaimPrinterAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedPosPrinter>>11433     pub fn ClaimPrinterAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<ClaimedPosPrinter>> {
11434         let this = self;
11435         unsafe {
11436             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11437             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<ClaimedPosPrinter>>(result__)
11438         }
11439     }
11440     #[cfg(feature = "Foundation")]
CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>11441     pub fn CheckHealthAsync(&self, level: UnifiedPosHealthCheckLevel) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>> {
11442         let this = self;
11443         unsafe {
11444             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11445             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), level, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>(result__)
11446         }
11447     }
11448     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>11449     pub fn GetStatisticsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, statisticscategories: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>> {
11450         let this = self;
11451         unsafe {
11452             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11453             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), statisticscategories.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<::windows::runtime::HSTRING>>(result__)
11454         }
11455     }
11456     #[cfg(feature = "Foundation")]
StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<PosPrinter, PosPrinterStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>11457     pub fn StatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<PosPrinter, PosPrinterStatusUpdatedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
11458         let this = self;
11459         unsafe {
11460             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
11461             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
11462         }
11463     }
11464     #[cfg(feature = "Foundation")]
RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>11465     pub fn RemoveStatusUpdated<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
11466         let this = self;
11467         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
11468     }
11469     #[cfg(feature = "Foundation")]
Close(&self) -> ::windows::runtime::Result<()>11470     pub fn Close(&self) -> ::windows::runtime::Result<()> {
11471         let this = &::windows::runtime::Interface::cast::<super::super::Foundation::IClosable>(self)?;
11472         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
11473     }
11474     #[cfg(feature = "Foundation")]
GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<PosPrinter>>11475     pub fn GetDefaultAsync() -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<PosPrinter>> {
11476         Self::IPosPrinterStatics(|this| unsafe {
11477             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11478             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<PosPrinter>>(result__)
11479         })
11480     }
11481     #[cfg(feature = "Foundation")]
FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<PosPrinter>>11482     pub fn FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(deviceid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<PosPrinter>> {
11483         Self::IPosPrinterStatics(|this| unsafe {
11484             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11485             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), deviceid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<PosPrinter>>(result__)
11486         })
11487     }
GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING>11488     pub fn GetDeviceSelector() -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
11489         Self::IPosPrinterStatics(|this| unsafe {
11490             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
11491             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
11492         })
11493     }
GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING>11494     pub fn GetDeviceSelectorWithConnectionTypes(connectiontypes: PosConnectionTypes) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
11495         Self::IPosPrinterStatics2(|this| unsafe {
11496             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
11497             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), connectiontypes, &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
11498         })
11499     }
11500     #[cfg(feature = "Foundation_Collections")]
SupportedBarcodeSymbologies(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>>11501     pub fn SupportedBarcodeSymbologies(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>> {
11502         let this = &::windows::runtime::Interface::cast::<IPosPrinter2>(self)?;
11503         unsafe {
11504             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11505             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<u32>>(result__)
11506         }
11507     }
GetFontProperty<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, typeface: Param0) -> ::windows::runtime::Result<PosPrinterFontProperty>11508     pub fn GetFontProperty<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, typeface: Param0) -> ::windows::runtime::Result<PosPrinterFontProperty> {
11509         let this = &::windows::runtime::Interface::cast::<IPosPrinter2>(self)?;
11510         unsafe {
11511             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11512             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), typeface.into_param().abi(), &mut result__).from_abi::<PosPrinterFontProperty>(result__)
11513         }
11514     }
IPosPrinterStatics<R, F: FnOnce(&IPosPrinterStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>11515     pub fn IPosPrinterStatics<R, F: FnOnce(&IPosPrinterStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
11516         static mut SHARED: ::windows::runtime::FactoryCache<PosPrinter, IPosPrinterStatics> = ::windows::runtime::FactoryCache::new();
11517         unsafe { SHARED.call(callback) }
11518     }
IPosPrinterStatics2<R, F: FnOnce(&IPosPrinterStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>11519     pub fn IPosPrinterStatics2<R, F: FnOnce(&IPosPrinterStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
11520         static mut SHARED: ::windows::runtime::FactoryCache<PosPrinter, IPosPrinterStatics2> = ::windows::runtime::FactoryCache::new();
11521         unsafe { SHARED.call(callback) }
11522     }
11523 }
11524 unsafe impl ::windows::runtime::RuntimeType for PosPrinter {
11525     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.PosPrinter;{2a03c10e-9a19-4a01-994f-12dfad6adcbf})");
11526 }
11527 unsafe impl ::windows::runtime::Interface for PosPrinter {
11528     type Vtable = IPosPrinter_abi;
11529     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(704889102, 39449, 18945, [153, 79, 18, 223, 173, 106, 220, 191]);
11530 }
11531 impl ::windows::runtime::RuntimeName for PosPrinter {
11532     const NAME: &'static str = "Windows.Devices.PointOfService.PosPrinter";
11533 }
11534 impl ::std::convert::From<PosPrinter> for ::windows::runtime::IUnknown {
from(value: PosPrinter) -> Self11535     fn from(value: PosPrinter) -> Self {
11536         unsafe { ::std::mem::transmute(value) }
11537     }
11538 }
11539 impl ::std::convert::From<&PosPrinter> for ::windows::runtime::IUnknown {
from(value: &PosPrinter) -> Self11540     fn from(value: &PosPrinter) -> Self {
11541         ::std::convert::From::from(::std::clone::Clone::clone(value))
11542     }
11543 }
11544 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11545     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11546         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
11547     }
11548 }
11549 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11550     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11551         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
11552     }
11553 }
11554 impl ::std::convert::From<PosPrinter> for ::windows::runtime::IInspectable {
from(value: PosPrinter) -> Self11555     fn from(value: PosPrinter) -> Self {
11556         value.0
11557     }
11558 }
11559 impl ::std::convert::From<&PosPrinter> for ::windows::runtime::IInspectable {
from(value: &PosPrinter) -> Self11560     fn from(value: &PosPrinter) -> Self {
11561         value.0.clone()
11562     }
11563 }
11564 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11565     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11566         ::windows::runtime::Param::Owned(self.0)
11567     }
11568 }
11569 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11570     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11571         ::windows::runtime::Param::Borrowed(&self.0)
11572     }
11573 }
11574 #[cfg(feature = "Foundation")]
11575 impl ::std::convert::TryFrom<PosPrinter> for super::super::Foundation::IClosable {
11576     type Error = ::windows::runtime::Error;
try_from(value: PosPrinter) -> ::windows::runtime::Result<Self>11577     fn try_from(value: PosPrinter) -> ::windows::runtime::Result<Self> {
11578         ::std::convert::TryFrom::try_from(&value)
11579     }
11580 }
11581 #[cfg(feature = "Foundation")]
11582 impl ::std::convert::TryFrom<&PosPrinter> for super::super::Foundation::IClosable {
11583     type Error = ::windows::runtime::Error;
try_from(value: &PosPrinter) -> ::windows::runtime::Result<Self>11584     fn try_from(value: &PosPrinter) -> ::windows::runtime::Result<Self> {
11585         ::windows::runtime::Interface::cast(value)
11586     }
11587 }
11588 #[cfg(feature = "Foundation")]
11589 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for PosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>11590     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
11591         ::windows::runtime::IntoParam::into_param(&self)
11592     }
11593 }
11594 #[cfg(feature = "Foundation")]
11595 impl<'a> ::windows::runtime::IntoParam<'a, super::super::Foundation::IClosable> for &PosPrinter {
into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable>11596     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::Foundation::IClosable> {
11597         ::std::convert::TryInto::<super::super::Foundation::IClosable>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
11598     }
11599 }
11600 unsafe impl ::std::marker::Send for PosPrinter {}
11601 unsafe impl ::std::marker::Sync for PosPrinter {}
11602 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
11603 #[repr(transparent)]
11604 pub struct PosPrinterAlignment(pub i32);
11605 impl PosPrinterAlignment {
11606     pub const Left: PosPrinterAlignment = PosPrinterAlignment(0i32);
11607     pub const Center: PosPrinterAlignment = PosPrinterAlignment(1i32);
11608     pub const Right: PosPrinterAlignment = PosPrinterAlignment(2i32);
11609 }
11610 impl ::std::convert::From<i32> for PosPrinterAlignment {
from(value: i32) -> Self11611     fn from(value: i32) -> Self {
11612         Self(value)
11613     }
11614 }
11615 unsafe impl ::windows::runtime::Abi for PosPrinterAlignment {
11616     type Abi = Self;
11617     type DefaultType = Self;
11618 }
11619 unsafe impl ::windows::runtime::RuntimeType for PosPrinterAlignment {
11620     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterAlignment;i4)");
11621 }
11622 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
11623 #[repr(transparent)]
11624 pub struct PosPrinterBarcodeTextPosition(pub i32);
11625 impl PosPrinterBarcodeTextPosition {
11626     pub const None: PosPrinterBarcodeTextPosition = PosPrinterBarcodeTextPosition(0i32);
11627     pub const Above: PosPrinterBarcodeTextPosition = PosPrinterBarcodeTextPosition(1i32);
11628     pub const Below: PosPrinterBarcodeTextPosition = PosPrinterBarcodeTextPosition(2i32);
11629 }
11630 impl ::std::convert::From<i32> for PosPrinterBarcodeTextPosition {
from(value: i32) -> Self11631     fn from(value: i32) -> Self {
11632         Self(value)
11633     }
11634 }
11635 unsafe impl ::windows::runtime::Abi for PosPrinterBarcodeTextPosition {
11636     type Abi = Self;
11637     type DefaultType = Self;
11638 }
11639 unsafe impl ::windows::runtime::RuntimeType for PosPrinterBarcodeTextPosition {
11640     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterBarcodeTextPosition;i4)");
11641 }
11642 #[repr(transparent)]
11643 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11644 pub struct PosPrinterCapabilities(::windows::runtime::IInspectable);
11645 impl PosPrinterCapabilities {
PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType>11646     pub fn PowerReportingType(&self) -> ::windows::runtime::Result<UnifiedPosPowerReportingType> {
11647         let this = self;
11648         unsafe {
11649             let mut result__: UnifiedPosPowerReportingType = ::std::mem::zeroed();
11650             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UnifiedPosPowerReportingType>(result__)
11651         }
11652     }
IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool>11653     pub fn IsStatisticsReportingSupported(&self) -> ::windows::runtime::Result<bool> {
11654         let this = self;
11655         unsafe {
11656             let mut result__: bool = ::std::mem::zeroed();
11657             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
11658         }
11659     }
IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool>11660     pub fn IsStatisticsUpdatingSupported(&self) -> ::windows::runtime::Result<bool> {
11661         let this = self;
11662         unsafe {
11663             let mut result__: bool = ::std::mem::zeroed();
11664             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
11665         }
11666     }
DefaultCharacterSet(&self) -> ::windows::runtime::Result<u32>11667     pub fn DefaultCharacterSet(&self) -> ::windows::runtime::Result<u32> {
11668         let this = self;
11669         unsafe {
11670             let mut result__: u32 = ::std::mem::zeroed();
11671             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
11672         }
11673     }
HasCoverSensor(&self) -> ::windows::runtime::Result<bool>11674     pub fn HasCoverSensor(&self) -> ::windows::runtime::Result<bool> {
11675         let this = self;
11676         unsafe {
11677             let mut result__: bool = ::std::mem::zeroed();
11678             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
11679         }
11680     }
CanMapCharacterSet(&self) -> ::windows::runtime::Result<bool>11681     pub fn CanMapCharacterSet(&self) -> ::windows::runtime::Result<bool> {
11682         let this = self;
11683         unsafe {
11684             let mut result__: bool = ::std::mem::zeroed();
11685             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
11686         }
11687     }
IsTransactionSupported(&self) -> ::windows::runtime::Result<bool>11688     pub fn IsTransactionSupported(&self) -> ::windows::runtime::Result<bool> {
11689         let this = self;
11690         unsafe {
11691             let mut result__: bool = ::std::mem::zeroed();
11692             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
11693         }
11694     }
Receipt(&self) -> ::windows::runtime::Result<ReceiptPrinterCapabilities>11695     pub fn Receipt(&self) -> ::windows::runtime::Result<ReceiptPrinterCapabilities> {
11696         let this = self;
11697         unsafe {
11698             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11699             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ReceiptPrinterCapabilities>(result__)
11700         }
11701     }
Slip(&self) -> ::windows::runtime::Result<SlipPrinterCapabilities>11702     pub fn Slip(&self) -> ::windows::runtime::Result<SlipPrinterCapabilities> {
11703         let this = self;
11704         unsafe {
11705             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11706             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SlipPrinterCapabilities>(result__)
11707         }
11708     }
Journal(&self) -> ::windows::runtime::Result<JournalPrinterCapabilities>11709     pub fn Journal(&self) -> ::windows::runtime::Result<JournalPrinterCapabilities> {
11710         let this = self;
11711         unsafe {
11712             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11713             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<JournalPrinterCapabilities>(result__)
11714         }
11715     }
11716 }
11717 unsafe impl ::windows::runtime::RuntimeType for PosPrinterCapabilities {
11718     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.PosPrinterCapabilities;{cde95721-4380-4985-adc5-39db30cd93bc})");
11719 }
11720 unsafe impl ::windows::runtime::Interface for PosPrinterCapabilities {
11721     type Vtable = IPosPrinterCapabilities_abi;
11722     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3454621473, 17280, 18821, [173, 197, 57, 219, 48, 205, 147, 188]);
11723 }
11724 impl ::windows::runtime::RuntimeName for PosPrinterCapabilities {
11725     const NAME: &'static str = "Windows.Devices.PointOfService.PosPrinterCapabilities";
11726 }
11727 impl ::std::convert::From<PosPrinterCapabilities> for ::windows::runtime::IUnknown {
from(value: PosPrinterCapabilities) -> Self11728     fn from(value: PosPrinterCapabilities) -> Self {
11729         unsafe { ::std::mem::transmute(value) }
11730     }
11731 }
11732 impl ::std::convert::From<&PosPrinterCapabilities> for ::windows::runtime::IUnknown {
from(value: &PosPrinterCapabilities) -> Self11733     fn from(value: &PosPrinterCapabilities) -> Self {
11734         ::std::convert::From::from(::std::clone::Clone::clone(value))
11735     }
11736 }
11737 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PosPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11738     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11739         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
11740     }
11741 }
11742 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PosPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11743     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11744         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
11745     }
11746 }
11747 impl ::std::convert::From<PosPrinterCapabilities> for ::windows::runtime::IInspectable {
from(value: PosPrinterCapabilities) -> Self11748     fn from(value: PosPrinterCapabilities) -> Self {
11749         value.0
11750     }
11751 }
11752 impl ::std::convert::From<&PosPrinterCapabilities> for ::windows::runtime::IInspectable {
from(value: &PosPrinterCapabilities) -> Self11753     fn from(value: &PosPrinterCapabilities) -> Self {
11754         value.0.clone()
11755     }
11756 }
11757 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PosPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11758     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11759         ::windows::runtime::Param::Owned(self.0)
11760     }
11761 }
11762 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PosPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>11763     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
11764         ::windows::runtime::Param::Borrowed(&self.0)
11765     }
11766 }
11767 unsafe impl ::std::marker::Send for PosPrinterCapabilities {}
11768 unsafe impl ::std::marker::Sync for PosPrinterCapabilities {}
11769 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
11770 #[repr(transparent)]
11771 pub struct PosPrinterCartridgeSensors(pub u32);
11772 impl PosPrinterCartridgeSensors {
11773     pub const None: PosPrinterCartridgeSensors = PosPrinterCartridgeSensors(0u32);
11774     pub const Removed: PosPrinterCartridgeSensors = PosPrinterCartridgeSensors(1u32);
11775     pub const Empty: PosPrinterCartridgeSensors = PosPrinterCartridgeSensors(2u32);
11776     pub const HeadCleaning: PosPrinterCartridgeSensors = PosPrinterCartridgeSensors(4u32);
11777     pub const NearEnd: PosPrinterCartridgeSensors = PosPrinterCartridgeSensors(8u32);
11778 }
11779 impl ::std::convert::From<u32> for PosPrinterCartridgeSensors {
from(value: u32) -> Self11780     fn from(value: u32) -> Self {
11781         Self(value)
11782     }
11783 }
11784 unsafe impl ::windows::runtime::Abi for PosPrinterCartridgeSensors {
11785     type Abi = Self;
11786     type DefaultType = Self;
11787 }
11788 unsafe impl ::windows::runtime::RuntimeType for PosPrinterCartridgeSensors {
11789     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterCartridgeSensors;u4)");
11790 }
11791 impl ::std::ops::BitOr for PosPrinterCartridgeSensors {
11792     type Output = Self;
bitor(self, rhs: Self) -> Self11793     fn bitor(self, rhs: Self) -> Self {
11794         Self(self.0 | rhs.0)
11795     }
11796 }
11797 impl ::std::ops::BitAnd for PosPrinterCartridgeSensors {
11798     type Output = Self;
bitand(self, rhs: Self) -> Self11799     fn bitand(self, rhs: Self) -> Self {
11800         Self(self.0 & rhs.0)
11801     }
11802 }
11803 impl ::std::ops::BitOrAssign for PosPrinterCartridgeSensors {
bitor_assign(&mut self, rhs: Self)11804     fn bitor_assign(&mut self, rhs: Self) {
11805         self.0.bitor_assign(rhs.0)
11806     }
11807 }
11808 impl ::std::ops::BitAndAssign for PosPrinterCartridgeSensors {
bitand_assign(&mut self, rhs: Self)11809     fn bitand_assign(&mut self, rhs: Self) {
11810         self.0.bitand_assign(rhs.0)
11811     }
11812 }
11813 impl ::std::ops::Not for PosPrinterCartridgeSensors {
11814     type Output = Self;
not(self) -> Self11815     fn not(self) -> Self {
11816         Self(self.0.not())
11817     }
11818 }
11819 pub struct PosPrinterCharacterSetIds {}
11820 impl PosPrinterCharacterSetIds {
Utf16LE() -> ::windows::runtime::Result<u32>11821     pub fn Utf16LE() -> ::windows::runtime::Result<u32> {
11822         Self::IPosPrinterCharacterSetIdsStatics(|this| unsafe {
11823             let mut result__: u32 = ::std::mem::zeroed();
11824             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
11825         })
11826     }
Ascii() -> ::windows::runtime::Result<u32>11827     pub fn Ascii() -> ::windows::runtime::Result<u32> {
11828         Self::IPosPrinterCharacterSetIdsStatics(|this| unsafe {
11829             let mut result__: u32 = ::std::mem::zeroed();
11830             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
11831         })
11832     }
Ansi() -> ::windows::runtime::Result<u32>11833     pub fn Ansi() -> ::windows::runtime::Result<u32> {
11834         Self::IPosPrinterCharacterSetIdsStatics(|this| unsafe {
11835             let mut result__: u32 = ::std::mem::zeroed();
11836             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
11837         })
11838     }
IPosPrinterCharacterSetIdsStatics<R, F: FnOnce(&IPosPrinterCharacterSetIdsStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>11839     pub fn IPosPrinterCharacterSetIdsStatics<R, F: FnOnce(&IPosPrinterCharacterSetIdsStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
11840         static mut SHARED: ::windows::runtime::FactoryCache<PosPrinterCharacterSetIds, IPosPrinterCharacterSetIdsStatics> = ::windows::runtime::FactoryCache::new();
11841         unsafe { SHARED.call(callback) }
11842     }
11843 }
11844 impl ::windows::runtime::RuntimeName for PosPrinterCharacterSetIds {
11845     const NAME: &'static str = "Windows.Devices.PointOfService.PosPrinterCharacterSetIds";
11846 }
11847 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
11848 #[repr(transparent)]
11849 pub struct PosPrinterColorCapabilities(pub u32);
11850 impl PosPrinterColorCapabilities {
11851     pub const None: PosPrinterColorCapabilities = PosPrinterColorCapabilities(0u32);
11852     pub const Primary: PosPrinterColorCapabilities = PosPrinterColorCapabilities(1u32);
11853     pub const Custom1: PosPrinterColorCapabilities = PosPrinterColorCapabilities(2u32);
11854     pub const Custom2: PosPrinterColorCapabilities = PosPrinterColorCapabilities(4u32);
11855     pub const Custom3: PosPrinterColorCapabilities = PosPrinterColorCapabilities(8u32);
11856     pub const Custom4: PosPrinterColorCapabilities = PosPrinterColorCapabilities(16u32);
11857     pub const Custom5: PosPrinterColorCapabilities = PosPrinterColorCapabilities(32u32);
11858     pub const Custom6: PosPrinterColorCapabilities = PosPrinterColorCapabilities(64u32);
11859     pub const Cyan: PosPrinterColorCapabilities = PosPrinterColorCapabilities(128u32);
11860     pub const Magenta: PosPrinterColorCapabilities = PosPrinterColorCapabilities(256u32);
11861     pub const Yellow: PosPrinterColorCapabilities = PosPrinterColorCapabilities(512u32);
11862     pub const Full: PosPrinterColorCapabilities = PosPrinterColorCapabilities(1024u32);
11863 }
11864 impl ::std::convert::From<u32> for PosPrinterColorCapabilities {
from(value: u32) -> Self11865     fn from(value: u32) -> Self {
11866         Self(value)
11867     }
11868 }
11869 unsafe impl ::windows::runtime::Abi for PosPrinterColorCapabilities {
11870     type Abi = Self;
11871     type DefaultType = Self;
11872 }
11873 unsafe impl ::windows::runtime::RuntimeType for PosPrinterColorCapabilities {
11874     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterColorCapabilities;u4)");
11875 }
11876 impl ::std::ops::BitOr for PosPrinterColorCapabilities {
11877     type Output = Self;
bitor(self, rhs: Self) -> Self11878     fn bitor(self, rhs: Self) -> Self {
11879         Self(self.0 | rhs.0)
11880     }
11881 }
11882 impl ::std::ops::BitAnd for PosPrinterColorCapabilities {
11883     type Output = Self;
bitand(self, rhs: Self) -> Self11884     fn bitand(self, rhs: Self) -> Self {
11885         Self(self.0 & rhs.0)
11886     }
11887 }
11888 impl ::std::ops::BitOrAssign for PosPrinterColorCapabilities {
bitor_assign(&mut self, rhs: Self)11889     fn bitor_assign(&mut self, rhs: Self) {
11890         self.0.bitor_assign(rhs.0)
11891     }
11892 }
11893 impl ::std::ops::BitAndAssign for PosPrinterColorCapabilities {
bitand_assign(&mut self, rhs: Self)11894     fn bitand_assign(&mut self, rhs: Self) {
11895         self.0.bitand_assign(rhs.0)
11896     }
11897 }
11898 impl ::std::ops::Not for PosPrinterColorCapabilities {
11899     type Output = Self;
not(self) -> Self11900     fn not(self) -> Self {
11901         Self(self.0.not())
11902     }
11903 }
11904 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
11905 #[repr(transparent)]
11906 pub struct PosPrinterColorCartridge(pub i32);
11907 impl PosPrinterColorCartridge {
11908     pub const Unknown: PosPrinterColorCartridge = PosPrinterColorCartridge(0i32);
11909     pub const Primary: PosPrinterColorCartridge = PosPrinterColorCartridge(1i32);
11910     pub const Custom1: PosPrinterColorCartridge = PosPrinterColorCartridge(2i32);
11911     pub const Custom2: PosPrinterColorCartridge = PosPrinterColorCartridge(3i32);
11912     pub const Custom3: PosPrinterColorCartridge = PosPrinterColorCartridge(4i32);
11913     pub const Custom4: PosPrinterColorCartridge = PosPrinterColorCartridge(5i32);
11914     pub const Custom5: PosPrinterColorCartridge = PosPrinterColorCartridge(6i32);
11915     pub const Custom6: PosPrinterColorCartridge = PosPrinterColorCartridge(7i32);
11916     pub const Cyan: PosPrinterColorCartridge = PosPrinterColorCartridge(8i32);
11917     pub const Magenta: PosPrinterColorCartridge = PosPrinterColorCartridge(9i32);
11918     pub const Yellow: PosPrinterColorCartridge = PosPrinterColorCartridge(10i32);
11919 }
11920 impl ::std::convert::From<i32> for PosPrinterColorCartridge {
from(value: i32) -> Self11921     fn from(value: i32) -> Self {
11922         Self(value)
11923     }
11924 }
11925 unsafe impl ::windows::runtime::Abi for PosPrinterColorCartridge {
11926     type Abi = Self;
11927     type DefaultType = Self;
11928 }
11929 unsafe impl ::windows::runtime::RuntimeType for PosPrinterColorCartridge {
11930     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterColorCartridge;i4)");
11931 }
11932 #[repr(transparent)]
11933 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11934 pub struct PosPrinterFontProperty(::windows::runtime::IInspectable);
11935 impl PosPrinterFontProperty {
TypeFace(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>11936     pub fn TypeFace(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
11937         let this = self;
11938         unsafe {
11939             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
11940             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
11941         }
11942     }
IsScalableToAnySize(&self) -> ::windows::runtime::Result<bool>11943     pub fn IsScalableToAnySize(&self) -> ::windows::runtime::Result<bool> {
11944         let this = self;
11945         unsafe {
11946             let mut result__: bool = ::std::mem::zeroed();
11947             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
11948         }
11949     }
11950     #[cfg(feature = "Foundation_Collections")]
CharacterSizes(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<SizeUInt32>>11951     pub fn CharacterSizes(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<SizeUInt32>> {
11952         let this = self;
11953         unsafe {
11954             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
11955             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<SizeUInt32>>(result__)
11956         }
11957     }
11958 }
11959 unsafe impl ::windows::runtime::RuntimeType for PosPrinterFontProperty {
11960     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.PosPrinterFontProperty;{a7f4e93a-f8ac-5f04-84d2-29b16d8a633c})");
11961 }
11962 unsafe impl ::windows::runtime::Interface for PosPrinterFontProperty {
11963     type Vtable = IPosPrinterFontProperty_abi;
11964     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2817845562, 63660, 24324, [132, 210, 41, 177, 109, 138, 99, 60]);
11965 }
11966 impl ::windows::runtime::RuntimeName for PosPrinterFontProperty {
11967     const NAME: &'static str = "Windows.Devices.PointOfService.PosPrinterFontProperty";
11968 }
11969 impl ::std::convert::From<PosPrinterFontProperty> for ::windows::runtime::IUnknown {
from(value: PosPrinterFontProperty) -> Self11970     fn from(value: PosPrinterFontProperty) -> Self {
11971         unsafe { ::std::mem::transmute(value) }
11972     }
11973 }
11974 impl ::std::convert::From<&PosPrinterFontProperty> for ::windows::runtime::IUnknown {
from(value: &PosPrinterFontProperty) -> Self11975     fn from(value: &PosPrinterFontProperty) -> Self {
11976         ::std::convert::From::from(::std::clone::Clone::clone(value))
11977     }
11978 }
11979 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PosPrinterFontProperty {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11980     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11981         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
11982     }
11983 }
11984 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PosPrinterFontProperty {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>11985     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
11986         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
11987     }
11988 }
11989 impl ::std::convert::From<PosPrinterFontProperty> for ::windows::runtime::IInspectable {
from(value: PosPrinterFontProperty) -> Self11990     fn from(value: PosPrinterFontProperty) -> Self {
11991         value.0
11992     }
11993 }
11994 impl ::std::convert::From<&PosPrinterFontProperty> for ::windows::runtime::IInspectable {
from(value: &PosPrinterFontProperty) -> Self11995     fn from(value: &PosPrinterFontProperty) -> Self {
11996         value.0.clone()
11997     }
11998 }
11999 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PosPrinterFontProperty {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12000     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12001         ::windows::runtime::Param::Owned(self.0)
12002     }
12003 }
12004 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PosPrinterFontProperty {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12005     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12006         ::windows::runtime::Param::Borrowed(&self.0)
12007     }
12008 }
12009 unsafe impl ::std::marker::Send for PosPrinterFontProperty {}
12010 unsafe impl ::std::marker::Sync for PosPrinterFontProperty {}
12011 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
12012 #[repr(transparent)]
12013 pub struct PosPrinterLineDirection(pub i32);
12014 impl PosPrinterLineDirection {
12015     pub const Horizontal: PosPrinterLineDirection = PosPrinterLineDirection(0i32);
12016     pub const Vertical: PosPrinterLineDirection = PosPrinterLineDirection(1i32);
12017 }
12018 impl ::std::convert::From<i32> for PosPrinterLineDirection {
from(value: i32) -> Self12019     fn from(value: i32) -> Self {
12020         Self(value)
12021     }
12022 }
12023 unsafe impl ::windows::runtime::Abi for PosPrinterLineDirection {
12024     type Abi = Self;
12025     type DefaultType = Self;
12026 }
12027 unsafe impl ::windows::runtime::RuntimeType for PosPrinterLineDirection {
12028     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterLineDirection;i4)");
12029 }
12030 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
12031 #[repr(transparent)]
12032 pub struct PosPrinterLineStyle(pub i32);
12033 impl PosPrinterLineStyle {
12034     pub const SingleSolid: PosPrinterLineStyle = PosPrinterLineStyle(0i32);
12035     pub const DoubleSolid: PosPrinterLineStyle = PosPrinterLineStyle(1i32);
12036     pub const Broken: PosPrinterLineStyle = PosPrinterLineStyle(2i32);
12037     pub const Chain: PosPrinterLineStyle = PosPrinterLineStyle(3i32);
12038 }
12039 impl ::std::convert::From<i32> for PosPrinterLineStyle {
from(value: i32) -> Self12040     fn from(value: i32) -> Self {
12041         Self(value)
12042     }
12043 }
12044 unsafe impl ::windows::runtime::Abi for PosPrinterLineStyle {
12045     type Abi = Self;
12046     type DefaultType = Self;
12047 }
12048 unsafe impl ::windows::runtime::RuntimeType for PosPrinterLineStyle {
12049     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterLineStyle;i4)");
12050 }
12051 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
12052 #[repr(transparent)]
12053 pub struct PosPrinterMapMode(pub i32);
12054 impl PosPrinterMapMode {
12055     pub const Dots: PosPrinterMapMode = PosPrinterMapMode(0i32);
12056     pub const Twips: PosPrinterMapMode = PosPrinterMapMode(1i32);
12057     pub const English: PosPrinterMapMode = PosPrinterMapMode(2i32);
12058     pub const Metric: PosPrinterMapMode = PosPrinterMapMode(3i32);
12059 }
12060 impl ::std::convert::From<i32> for PosPrinterMapMode {
from(value: i32) -> Self12061     fn from(value: i32) -> Self {
12062         Self(value)
12063     }
12064 }
12065 unsafe impl ::windows::runtime::Abi for PosPrinterMapMode {
12066     type Abi = Self;
12067     type DefaultType = Self;
12068 }
12069 unsafe impl ::windows::runtime::RuntimeType for PosPrinterMapMode {
12070     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterMapMode;i4)");
12071 }
12072 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
12073 #[repr(transparent)]
12074 pub struct PosPrinterMarkFeedCapabilities(pub u32);
12075 impl PosPrinterMarkFeedCapabilities {
12076     pub const None: PosPrinterMarkFeedCapabilities = PosPrinterMarkFeedCapabilities(0u32);
12077     pub const ToTakeUp: PosPrinterMarkFeedCapabilities = PosPrinterMarkFeedCapabilities(1u32);
12078     pub const ToCutter: PosPrinterMarkFeedCapabilities = PosPrinterMarkFeedCapabilities(2u32);
12079     pub const ToCurrentTopOfForm: PosPrinterMarkFeedCapabilities = PosPrinterMarkFeedCapabilities(4u32);
12080     pub const ToNextTopOfForm: PosPrinterMarkFeedCapabilities = PosPrinterMarkFeedCapabilities(8u32);
12081 }
12082 impl ::std::convert::From<u32> for PosPrinterMarkFeedCapabilities {
from(value: u32) -> Self12083     fn from(value: u32) -> Self {
12084         Self(value)
12085     }
12086 }
12087 unsafe impl ::windows::runtime::Abi for PosPrinterMarkFeedCapabilities {
12088     type Abi = Self;
12089     type DefaultType = Self;
12090 }
12091 unsafe impl ::windows::runtime::RuntimeType for PosPrinterMarkFeedCapabilities {
12092     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterMarkFeedCapabilities;u4)");
12093 }
12094 impl ::std::ops::BitOr for PosPrinterMarkFeedCapabilities {
12095     type Output = Self;
bitor(self, rhs: Self) -> Self12096     fn bitor(self, rhs: Self) -> Self {
12097         Self(self.0 | rhs.0)
12098     }
12099 }
12100 impl ::std::ops::BitAnd for PosPrinterMarkFeedCapabilities {
12101     type Output = Self;
bitand(self, rhs: Self) -> Self12102     fn bitand(self, rhs: Self) -> Self {
12103         Self(self.0 & rhs.0)
12104     }
12105 }
12106 impl ::std::ops::BitOrAssign for PosPrinterMarkFeedCapabilities {
bitor_assign(&mut self, rhs: Self)12107     fn bitor_assign(&mut self, rhs: Self) {
12108         self.0.bitor_assign(rhs.0)
12109     }
12110 }
12111 impl ::std::ops::BitAndAssign for PosPrinterMarkFeedCapabilities {
bitand_assign(&mut self, rhs: Self)12112     fn bitand_assign(&mut self, rhs: Self) {
12113         self.0.bitand_assign(rhs.0)
12114     }
12115 }
12116 impl ::std::ops::Not for PosPrinterMarkFeedCapabilities {
12117     type Output = Self;
not(self) -> Self12118     fn not(self) -> Self {
12119         Self(self.0.not())
12120     }
12121 }
12122 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
12123 #[repr(transparent)]
12124 pub struct PosPrinterMarkFeedKind(pub i32);
12125 impl PosPrinterMarkFeedKind {
12126     pub const ToTakeUp: PosPrinterMarkFeedKind = PosPrinterMarkFeedKind(0i32);
12127     pub const ToCutter: PosPrinterMarkFeedKind = PosPrinterMarkFeedKind(1i32);
12128     pub const ToCurrentTopOfForm: PosPrinterMarkFeedKind = PosPrinterMarkFeedKind(2i32);
12129     pub const ToNextTopOfForm: PosPrinterMarkFeedKind = PosPrinterMarkFeedKind(3i32);
12130 }
12131 impl ::std::convert::From<i32> for PosPrinterMarkFeedKind {
from(value: i32) -> Self12132     fn from(value: i32) -> Self {
12133         Self(value)
12134     }
12135 }
12136 unsafe impl ::windows::runtime::Abi for PosPrinterMarkFeedKind {
12137     type Abi = Self;
12138     type DefaultType = Self;
12139 }
12140 unsafe impl ::windows::runtime::RuntimeType for PosPrinterMarkFeedKind {
12141     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterMarkFeedKind;i4)");
12142 }
12143 #[repr(transparent)]
12144 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12145 pub struct PosPrinterPrintOptions(::windows::runtime::IInspectable);
12146 impl PosPrinterPrintOptions {
new() -> ::windows::runtime::Result<Self>12147     pub fn new() -> ::windows::runtime::Result<Self> {
12148         Self::IActivationFactory(|f| f.activate_instance::<Self>())
12149     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>12150     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
12151         static mut SHARED: ::windows::runtime::FactoryCache<PosPrinterPrintOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
12152         unsafe { SHARED.call(callback) }
12153     }
TypeFace(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>12154     pub fn TypeFace(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
12155         let this = self;
12156         unsafe {
12157             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
12158             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
12159         }
12160     }
SetTypeFace<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>12161     pub fn SetTypeFace<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12162         let this = self;
12163         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12164     }
CharacterHeight(&self) -> ::windows::runtime::Result<u32>12165     pub fn CharacterHeight(&self) -> ::windows::runtime::Result<u32> {
12166         let this = self;
12167         unsafe {
12168             let mut result__: u32 = ::std::mem::zeroed();
12169             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
12170         }
12171     }
SetCharacterHeight(&self, value: u32) -> ::windows::runtime::Result<()>12172     pub fn SetCharacterHeight(&self, value: u32) -> ::windows::runtime::Result<()> {
12173         let this = self;
12174         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
12175     }
Bold(&self) -> ::windows::runtime::Result<bool>12176     pub fn Bold(&self) -> ::windows::runtime::Result<bool> {
12177         let this = self;
12178         unsafe {
12179             let mut result__: bool = ::std::mem::zeroed();
12180             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12181         }
12182     }
SetBold(&self, value: bool) -> ::windows::runtime::Result<()>12183     pub fn SetBold(&self, value: bool) -> ::windows::runtime::Result<()> {
12184         let this = self;
12185         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
12186     }
Italic(&self) -> ::windows::runtime::Result<bool>12187     pub fn Italic(&self) -> ::windows::runtime::Result<bool> {
12188         let this = self;
12189         unsafe {
12190             let mut result__: bool = ::std::mem::zeroed();
12191             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12192         }
12193     }
SetItalic(&self, value: bool) -> ::windows::runtime::Result<()>12194     pub fn SetItalic(&self, value: bool) -> ::windows::runtime::Result<()> {
12195         let this = self;
12196         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
12197     }
Underline(&self) -> ::windows::runtime::Result<bool>12198     pub fn Underline(&self) -> ::windows::runtime::Result<bool> {
12199         let this = self;
12200         unsafe {
12201             let mut result__: bool = ::std::mem::zeroed();
12202             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12203         }
12204     }
SetUnderline(&self, value: bool) -> ::windows::runtime::Result<()>12205     pub fn SetUnderline(&self, value: bool) -> ::windows::runtime::Result<()> {
12206         let this = self;
12207         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
12208     }
ReverseVideo(&self) -> ::windows::runtime::Result<bool>12209     pub fn ReverseVideo(&self) -> ::windows::runtime::Result<bool> {
12210         let this = self;
12211         unsafe {
12212             let mut result__: bool = ::std::mem::zeroed();
12213             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12214         }
12215     }
SetReverseVideo(&self, value: bool) -> ::windows::runtime::Result<()>12216     pub fn SetReverseVideo(&self, value: bool) -> ::windows::runtime::Result<()> {
12217         let this = self;
12218         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
12219     }
Strikethrough(&self) -> ::windows::runtime::Result<bool>12220     pub fn Strikethrough(&self) -> ::windows::runtime::Result<bool> {
12221         let this = self;
12222         unsafe {
12223             let mut result__: bool = ::std::mem::zeroed();
12224             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12225         }
12226     }
SetStrikethrough(&self, value: bool) -> ::windows::runtime::Result<()>12227     pub fn SetStrikethrough(&self, value: bool) -> ::windows::runtime::Result<()> {
12228         let this = self;
12229         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
12230     }
Superscript(&self) -> ::windows::runtime::Result<bool>12231     pub fn Superscript(&self) -> ::windows::runtime::Result<bool> {
12232         let this = self;
12233         unsafe {
12234             let mut result__: bool = ::std::mem::zeroed();
12235             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12236         }
12237     }
SetSuperscript(&self, value: bool) -> ::windows::runtime::Result<()>12238     pub fn SetSuperscript(&self, value: bool) -> ::windows::runtime::Result<()> {
12239         let this = self;
12240         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), value).ok() }
12241     }
Subscript(&self) -> ::windows::runtime::Result<bool>12242     pub fn Subscript(&self) -> ::windows::runtime::Result<bool> {
12243         let this = self;
12244         unsafe {
12245             let mut result__: bool = ::std::mem::zeroed();
12246             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12247         }
12248     }
SetSubscript(&self, value: bool) -> ::windows::runtime::Result<()>12249     pub fn SetSubscript(&self, value: bool) -> ::windows::runtime::Result<()> {
12250         let this = self;
12251         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), value).ok() }
12252     }
DoubleWide(&self) -> ::windows::runtime::Result<bool>12253     pub fn DoubleWide(&self) -> ::windows::runtime::Result<bool> {
12254         let this = self;
12255         unsafe {
12256             let mut result__: bool = ::std::mem::zeroed();
12257             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12258         }
12259     }
SetDoubleWide(&self, value: bool) -> ::windows::runtime::Result<()>12260     pub fn SetDoubleWide(&self, value: bool) -> ::windows::runtime::Result<()> {
12261         let this = self;
12262         unsafe { (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), value).ok() }
12263     }
DoubleHigh(&self) -> ::windows::runtime::Result<bool>12264     pub fn DoubleHigh(&self) -> ::windows::runtime::Result<bool> {
12265         let this = self;
12266         unsafe {
12267             let mut result__: bool = ::std::mem::zeroed();
12268             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12269         }
12270     }
SetDoubleHigh(&self, value: bool) -> ::windows::runtime::Result<()>12271     pub fn SetDoubleHigh(&self, value: bool) -> ::windows::runtime::Result<()> {
12272         let this = self;
12273         unsafe { (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), value).ok() }
12274     }
Alignment(&self) -> ::windows::runtime::Result<PosPrinterAlignment>12275     pub fn Alignment(&self) -> ::windows::runtime::Result<PosPrinterAlignment> {
12276         let this = self;
12277         unsafe {
12278             let mut result__: PosPrinterAlignment = ::std::mem::zeroed();
12279             (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterAlignment>(result__)
12280         }
12281     }
SetAlignment(&self, value: PosPrinterAlignment) -> ::windows::runtime::Result<()>12282     pub fn SetAlignment(&self, value: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
12283         let this = self;
12284         unsafe { (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), value).ok() }
12285     }
CharacterSet(&self) -> ::windows::runtime::Result<u32>12286     pub fn CharacterSet(&self) -> ::windows::runtime::Result<u32> {
12287         let this = self;
12288         unsafe {
12289             let mut result__: u32 = ::std::mem::zeroed();
12290             (::windows::runtime::Interface::vtable(this).30)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
12291         }
12292     }
SetCharacterSet(&self, value: u32) -> ::windows::runtime::Result<()>12293     pub fn SetCharacterSet(&self, value: u32) -> ::windows::runtime::Result<()> {
12294         let this = self;
12295         unsafe { (::windows::runtime::Interface::vtable(this).31)(::std::mem::transmute_copy(this), value).ok() }
12296     }
12297 }
12298 unsafe impl ::windows::runtime::RuntimeType for PosPrinterPrintOptions {
12299     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.PosPrinterPrintOptions;{0a2e16fd-1d02-5a58-9d59-bfcde76fde86})");
12300 }
12301 unsafe impl ::windows::runtime::Interface for PosPrinterPrintOptions {
12302     type Vtable = IPosPrinterPrintOptions_abi;
12303     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(170792701, 7426, 23128, [157, 89, 191, 205, 231, 111, 222, 134]);
12304 }
12305 impl ::windows::runtime::RuntimeName for PosPrinterPrintOptions {
12306     const NAME: &'static str = "Windows.Devices.PointOfService.PosPrinterPrintOptions";
12307 }
12308 impl ::std::convert::From<PosPrinterPrintOptions> for ::windows::runtime::IUnknown {
from(value: PosPrinterPrintOptions) -> Self12309     fn from(value: PosPrinterPrintOptions) -> Self {
12310         unsafe { ::std::mem::transmute(value) }
12311     }
12312 }
12313 impl ::std::convert::From<&PosPrinterPrintOptions> for ::windows::runtime::IUnknown {
from(value: &PosPrinterPrintOptions) -> Self12314     fn from(value: &PosPrinterPrintOptions) -> Self {
12315         ::std::convert::From::from(::std::clone::Clone::clone(value))
12316     }
12317 }
12318 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PosPrinterPrintOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12319     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12320         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12321     }
12322 }
12323 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PosPrinterPrintOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12324     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12325         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12326     }
12327 }
12328 impl ::std::convert::From<PosPrinterPrintOptions> for ::windows::runtime::IInspectable {
from(value: PosPrinterPrintOptions) -> Self12329     fn from(value: PosPrinterPrintOptions) -> Self {
12330         value.0
12331     }
12332 }
12333 impl ::std::convert::From<&PosPrinterPrintOptions> for ::windows::runtime::IInspectable {
from(value: &PosPrinterPrintOptions) -> Self12334     fn from(value: &PosPrinterPrintOptions) -> Self {
12335         value.0.clone()
12336     }
12337 }
12338 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PosPrinterPrintOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12339     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12340         ::windows::runtime::Param::Owned(self.0)
12341     }
12342 }
12343 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PosPrinterPrintOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12344     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12345         ::windows::runtime::Param::Borrowed(&self.0)
12346     }
12347 }
12348 unsafe impl ::std::marker::Send for PosPrinterPrintOptions {}
12349 unsafe impl ::std::marker::Sync for PosPrinterPrintOptions {}
12350 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
12351 #[repr(transparent)]
12352 pub struct PosPrinterPrintSide(pub i32);
12353 impl PosPrinterPrintSide {
12354     pub const Unknown: PosPrinterPrintSide = PosPrinterPrintSide(0i32);
12355     pub const Side1: PosPrinterPrintSide = PosPrinterPrintSide(1i32);
12356     pub const Side2: PosPrinterPrintSide = PosPrinterPrintSide(2i32);
12357 }
12358 impl ::std::convert::From<i32> for PosPrinterPrintSide {
from(value: i32) -> Self12359     fn from(value: i32) -> Self {
12360         Self(value)
12361     }
12362 }
12363 unsafe impl ::windows::runtime::Abi for PosPrinterPrintSide {
12364     type Abi = Self;
12365     type DefaultType = Self;
12366 }
12367 unsafe impl ::windows::runtime::RuntimeType for PosPrinterPrintSide {
12368     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterPrintSide;i4)");
12369 }
12370 #[repr(transparent)]
12371 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12372 pub struct PosPrinterReleaseDeviceRequestedEventArgs(::windows::runtime::IInspectable);
12373 impl PosPrinterReleaseDeviceRequestedEventArgs {}
12374 unsafe impl ::windows::runtime::RuntimeType for PosPrinterReleaseDeviceRequestedEventArgs {
12375     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.PosPrinterReleaseDeviceRequestedEventArgs;{2bcba359-1cef-40b2-9ecb-f927f856ae3c})");
12376 }
12377 unsafe impl ::windows::runtime::Interface for PosPrinterReleaseDeviceRequestedEventArgs {
12378     type Vtable = IPosPrinterReleaseDeviceRequestedEventArgs_abi;
12379     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(734765913, 7407, 16562, [158, 203, 249, 39, 248, 86, 174, 60]);
12380 }
12381 impl ::windows::runtime::RuntimeName for PosPrinterReleaseDeviceRequestedEventArgs {
12382     const NAME: &'static str = "Windows.Devices.PointOfService.PosPrinterReleaseDeviceRequestedEventArgs";
12383 }
12384 impl ::std::convert::From<PosPrinterReleaseDeviceRequestedEventArgs> for ::windows::runtime::IUnknown {
from(value: PosPrinterReleaseDeviceRequestedEventArgs) -> Self12385     fn from(value: PosPrinterReleaseDeviceRequestedEventArgs) -> Self {
12386         unsafe { ::std::mem::transmute(value) }
12387     }
12388 }
12389 impl ::std::convert::From<&PosPrinterReleaseDeviceRequestedEventArgs> for ::windows::runtime::IUnknown {
from(value: &PosPrinterReleaseDeviceRequestedEventArgs) -> Self12390     fn from(value: &PosPrinterReleaseDeviceRequestedEventArgs) -> Self {
12391         ::std::convert::From::from(::std::clone::Clone::clone(value))
12392     }
12393 }
12394 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PosPrinterReleaseDeviceRequestedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12395     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12396         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12397     }
12398 }
12399 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PosPrinterReleaseDeviceRequestedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12400     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12401         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12402     }
12403 }
12404 impl ::std::convert::From<PosPrinterReleaseDeviceRequestedEventArgs> for ::windows::runtime::IInspectable {
from(value: PosPrinterReleaseDeviceRequestedEventArgs) -> Self12405     fn from(value: PosPrinterReleaseDeviceRequestedEventArgs) -> Self {
12406         value.0
12407     }
12408 }
12409 impl ::std::convert::From<&PosPrinterReleaseDeviceRequestedEventArgs> for ::windows::runtime::IInspectable {
from(value: &PosPrinterReleaseDeviceRequestedEventArgs) -> Self12410     fn from(value: &PosPrinterReleaseDeviceRequestedEventArgs) -> Self {
12411         value.0.clone()
12412     }
12413 }
12414 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PosPrinterReleaseDeviceRequestedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12415     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12416         ::windows::runtime::Param::Owned(self.0)
12417     }
12418 }
12419 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PosPrinterReleaseDeviceRequestedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12420     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12421         ::windows::runtime::Param::Borrowed(&self.0)
12422     }
12423 }
12424 unsafe impl ::std::marker::Send for PosPrinterReleaseDeviceRequestedEventArgs {}
12425 unsafe impl ::std::marker::Sync for PosPrinterReleaseDeviceRequestedEventArgs {}
12426 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
12427 #[repr(transparent)]
12428 pub struct PosPrinterRotation(pub i32);
12429 impl PosPrinterRotation {
12430     pub const Normal: PosPrinterRotation = PosPrinterRotation(0i32);
12431     pub const Right90: PosPrinterRotation = PosPrinterRotation(1i32);
12432     pub const Left90: PosPrinterRotation = PosPrinterRotation(2i32);
12433     pub const Rotate180: PosPrinterRotation = PosPrinterRotation(3i32);
12434 }
12435 impl ::std::convert::From<i32> for PosPrinterRotation {
from(value: i32) -> Self12436     fn from(value: i32) -> Self {
12437         Self(value)
12438     }
12439 }
12440 unsafe impl ::windows::runtime::Abi for PosPrinterRotation {
12441     type Abi = Self;
12442     type DefaultType = Self;
12443 }
12444 unsafe impl ::windows::runtime::RuntimeType for PosPrinterRotation {
12445     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterRotation;i4)");
12446 }
12447 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
12448 #[repr(transparent)]
12449 pub struct PosPrinterRuledLineCapabilities(pub u32);
12450 impl PosPrinterRuledLineCapabilities {
12451     pub const None: PosPrinterRuledLineCapabilities = PosPrinterRuledLineCapabilities(0u32);
12452     pub const Horizontal: PosPrinterRuledLineCapabilities = PosPrinterRuledLineCapabilities(1u32);
12453     pub const Vertical: PosPrinterRuledLineCapabilities = PosPrinterRuledLineCapabilities(2u32);
12454 }
12455 impl ::std::convert::From<u32> for PosPrinterRuledLineCapabilities {
from(value: u32) -> Self12456     fn from(value: u32) -> Self {
12457         Self(value)
12458     }
12459 }
12460 unsafe impl ::windows::runtime::Abi for PosPrinterRuledLineCapabilities {
12461     type Abi = Self;
12462     type DefaultType = Self;
12463 }
12464 unsafe impl ::windows::runtime::RuntimeType for PosPrinterRuledLineCapabilities {
12465     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterRuledLineCapabilities;u4)");
12466 }
12467 impl ::std::ops::BitOr for PosPrinterRuledLineCapabilities {
12468     type Output = Self;
bitor(self, rhs: Self) -> Self12469     fn bitor(self, rhs: Self) -> Self {
12470         Self(self.0 | rhs.0)
12471     }
12472 }
12473 impl ::std::ops::BitAnd for PosPrinterRuledLineCapabilities {
12474     type Output = Self;
bitand(self, rhs: Self) -> Self12475     fn bitand(self, rhs: Self) -> Self {
12476         Self(self.0 & rhs.0)
12477     }
12478 }
12479 impl ::std::ops::BitOrAssign for PosPrinterRuledLineCapabilities {
bitor_assign(&mut self, rhs: Self)12480     fn bitor_assign(&mut self, rhs: Self) {
12481         self.0.bitor_assign(rhs.0)
12482     }
12483 }
12484 impl ::std::ops::BitAndAssign for PosPrinterRuledLineCapabilities {
bitand_assign(&mut self, rhs: Self)12485     fn bitand_assign(&mut self, rhs: Self) {
12486         self.0.bitand_assign(rhs.0)
12487     }
12488 }
12489 impl ::std::ops::Not for PosPrinterRuledLineCapabilities {
12490     type Output = Self;
not(self) -> Self12491     fn not(self) -> Self {
12492         Self(self.0.not())
12493     }
12494 }
12495 #[repr(transparent)]
12496 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12497 pub struct PosPrinterStatus(::windows::runtime::IInspectable);
12498 impl PosPrinterStatus {
StatusKind(&self) -> ::windows::runtime::Result<PosPrinterStatusKind>12499     pub fn StatusKind(&self) -> ::windows::runtime::Result<PosPrinterStatusKind> {
12500         let this = self;
12501         unsafe {
12502             let mut result__: PosPrinterStatusKind = ::std::mem::zeroed();
12503             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterStatusKind>(result__)
12504         }
12505     }
ExtendedStatus(&self) -> ::windows::runtime::Result<u32>12506     pub fn ExtendedStatus(&self) -> ::windows::runtime::Result<u32> {
12507         let this = self;
12508         unsafe {
12509             let mut result__: u32 = ::std::mem::zeroed();
12510             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
12511         }
12512     }
12513 }
12514 unsafe impl ::windows::runtime::RuntimeType for PosPrinterStatus {
12515     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.PosPrinterStatus;{d1f0c730-da40-4328-bf76-5156fa33b747})");
12516 }
12517 unsafe impl ::windows::runtime::Interface for PosPrinterStatus {
12518     type Vtable = IPosPrinterStatus_abi;
12519     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3522217776, 55872, 17192, [191, 118, 81, 86, 250, 51, 183, 71]);
12520 }
12521 impl ::windows::runtime::RuntimeName for PosPrinterStatus {
12522     const NAME: &'static str = "Windows.Devices.PointOfService.PosPrinterStatus";
12523 }
12524 impl ::std::convert::From<PosPrinterStatus> for ::windows::runtime::IUnknown {
from(value: PosPrinterStatus) -> Self12525     fn from(value: PosPrinterStatus) -> Self {
12526         unsafe { ::std::mem::transmute(value) }
12527     }
12528 }
12529 impl ::std::convert::From<&PosPrinterStatus> for ::windows::runtime::IUnknown {
from(value: &PosPrinterStatus) -> Self12530     fn from(value: &PosPrinterStatus) -> Self {
12531         ::std::convert::From::from(::std::clone::Clone::clone(value))
12532     }
12533 }
12534 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PosPrinterStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12535     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12536         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12537     }
12538 }
12539 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PosPrinterStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12540     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12541         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12542     }
12543 }
12544 impl ::std::convert::From<PosPrinterStatus> for ::windows::runtime::IInspectable {
from(value: PosPrinterStatus) -> Self12545     fn from(value: PosPrinterStatus) -> Self {
12546         value.0
12547     }
12548 }
12549 impl ::std::convert::From<&PosPrinterStatus> for ::windows::runtime::IInspectable {
from(value: &PosPrinterStatus) -> Self12550     fn from(value: &PosPrinterStatus) -> Self {
12551         value.0.clone()
12552     }
12553 }
12554 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PosPrinterStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12555     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12556         ::windows::runtime::Param::Owned(self.0)
12557     }
12558 }
12559 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PosPrinterStatus {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12560     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12561         ::windows::runtime::Param::Borrowed(&self.0)
12562     }
12563 }
12564 unsafe impl ::std::marker::Send for PosPrinterStatus {}
12565 unsafe impl ::std::marker::Sync for PosPrinterStatus {}
12566 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
12567 #[repr(transparent)]
12568 pub struct PosPrinterStatusKind(pub i32);
12569 impl PosPrinterStatusKind {
12570     pub const Online: PosPrinterStatusKind = PosPrinterStatusKind(0i32);
12571     pub const Off: PosPrinterStatusKind = PosPrinterStatusKind(1i32);
12572     pub const Offline: PosPrinterStatusKind = PosPrinterStatusKind(2i32);
12573     pub const OffOrOffline: PosPrinterStatusKind = PosPrinterStatusKind(3i32);
12574     pub const Extended: PosPrinterStatusKind = PosPrinterStatusKind(4i32);
12575 }
12576 impl ::std::convert::From<i32> for PosPrinterStatusKind {
from(value: i32) -> Self12577     fn from(value: i32) -> Self {
12578         Self(value)
12579     }
12580 }
12581 unsafe impl ::windows::runtime::Abi for PosPrinterStatusKind {
12582     type Abi = Self;
12583     type DefaultType = Self;
12584 }
12585 unsafe impl ::windows::runtime::RuntimeType for PosPrinterStatusKind {
12586     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.PosPrinterStatusKind;i4)");
12587 }
12588 #[repr(transparent)]
12589 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12590 pub struct PosPrinterStatusUpdatedEventArgs(::windows::runtime::IInspectable);
12591 impl PosPrinterStatusUpdatedEventArgs {
Status(&self) -> ::windows::runtime::Result<PosPrinterStatus>12592     pub fn Status(&self) -> ::windows::runtime::Result<PosPrinterStatus> {
12593         let this = self;
12594         unsafe {
12595             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12596             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterStatus>(result__)
12597         }
12598     }
12599 }
12600 unsafe impl ::windows::runtime::RuntimeType for PosPrinterStatusUpdatedEventArgs {
12601     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.PosPrinterStatusUpdatedEventArgs;{2edb87df-13a6-428d-ba81-b0e7c3e5a3cd})");
12602 }
12603 unsafe impl ::windows::runtime::Interface for PosPrinterStatusUpdatedEventArgs {
12604     type Vtable = IPosPrinterStatusUpdatedEventArgs_abi;
12605     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(786139103, 5030, 17037, [186, 129, 176, 231, 195, 229, 163, 205]);
12606 }
12607 impl ::windows::runtime::RuntimeName for PosPrinterStatusUpdatedEventArgs {
12608     const NAME: &'static str = "Windows.Devices.PointOfService.PosPrinterStatusUpdatedEventArgs";
12609 }
12610 impl ::std::convert::From<PosPrinterStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: PosPrinterStatusUpdatedEventArgs) -> Self12611     fn from(value: PosPrinterStatusUpdatedEventArgs) -> Self {
12612         unsafe { ::std::mem::transmute(value) }
12613     }
12614 }
12615 impl ::std::convert::From<&PosPrinterStatusUpdatedEventArgs> for ::windows::runtime::IUnknown {
from(value: &PosPrinterStatusUpdatedEventArgs) -> Self12616     fn from(value: &PosPrinterStatusUpdatedEventArgs) -> Self {
12617         ::std::convert::From::from(::std::clone::Clone::clone(value))
12618     }
12619 }
12620 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PosPrinterStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12621     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12622         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12623     }
12624 }
12625 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PosPrinterStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12626     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12627         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12628     }
12629 }
12630 impl ::std::convert::From<PosPrinterStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: PosPrinterStatusUpdatedEventArgs) -> Self12631     fn from(value: PosPrinterStatusUpdatedEventArgs) -> Self {
12632         value.0
12633     }
12634 }
12635 impl ::std::convert::From<&PosPrinterStatusUpdatedEventArgs> for ::windows::runtime::IInspectable {
from(value: &PosPrinterStatusUpdatedEventArgs) -> Self12636     fn from(value: &PosPrinterStatusUpdatedEventArgs) -> Self {
12637         value.0.clone()
12638     }
12639 }
12640 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PosPrinterStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12641     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12642         ::windows::runtime::Param::Owned(self.0)
12643     }
12644 }
12645 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PosPrinterStatusUpdatedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12646     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12647         ::windows::runtime::Param::Borrowed(&self.0)
12648     }
12649 }
12650 unsafe impl ::std::marker::Send for PosPrinterStatusUpdatedEventArgs {}
12651 unsafe impl ::std::marker::Sync for PosPrinterStatusUpdatedEventArgs {}
12652 #[repr(transparent)]
12653 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12654 pub struct ReceiptPrintJob(::windows::runtime::IInspectable);
12655 impl ReceiptPrintJob {
MarkFeed(&self, kind: PosPrinterMarkFeedKind) -> ::windows::runtime::Result<()>12656     pub fn MarkFeed(&self, kind: PosPrinterMarkFeedKind) -> ::windows::runtime::Result<()> {
12657         let this = self;
12658         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), kind).ok() }
12659     }
CutPaper(&self, percentage: f64) -> ::windows::runtime::Result<()>12660     pub fn CutPaper(&self, percentage: f64) -> ::windows::runtime::Result<()> {
12661         let this = self;
12662         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), percentage).ok() }
12663     }
CutPaperDefault(&self) -> ::windows::runtime::Result<()>12664     pub fn CutPaperDefault(&self) -> ::windows::runtime::Result<()> {
12665         let this = self;
12666         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this)).ok() }
12667     }
Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>12668     pub fn Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
12669         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
12670         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
12671     }
PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>12672     pub fn PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
12673         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
12674         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
12675     }
PrintNewline(&self) -> ::windows::runtime::Result<()>12676     pub fn PrintNewline(&self) -> ::windows::runtime::Result<()> {
12677         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
12678         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this)).ok() }
12679     }
12680     #[cfg(feature = "Foundation")]
ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>12681     pub fn ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
12682         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
12683         unsafe {
12684             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12685             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
12686         }
12687     }
SetBarcodeRotation(&self, value: PosPrinterRotation) -> ::windows::runtime::Result<()>12688     pub fn SetBarcodeRotation(&self, value: PosPrinterRotation) -> ::windows::runtime::Result<()> {
12689         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12690         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
12691     }
SetPrintRotation(&self, value: PosPrinterRotation, includebitmaps: bool) -> ::windows::runtime::Result<()>12692     pub fn SetPrintRotation(&self, value: PosPrinterRotation, includebitmaps: bool) -> ::windows::runtime::Result<()> {
12693         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12694         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value, includebitmaps).ok() }
12695     }
12696     #[cfg(feature = "Foundation")]
SetPrintArea<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Rect>>(&self, value: Param0) -> ::windows::runtime::Result<()>12697     pub fn SetPrintArea<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Rect>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12698         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12699         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12700     }
12701     #[cfg(feature = "Graphics_Imaging")]
SetBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()>12702     pub fn SetBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
12703         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12704         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignment).ok() }
12705     }
12706     #[cfg(feature = "Graphics_Imaging")]
SetBitmapCustomWidthStandardAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()>12707     pub fn SetBitmapCustomWidthStandardAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()> {
12708         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12709         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignment, width).ok() }
12710     }
12711     #[cfg(feature = "Graphics_Imaging")]
SetCustomAlignedBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32) -> ::windows::runtime::Result<()>12712     pub fn SetCustomAlignedBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32) -> ::windows::runtime::Result<()> {
12713         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12714         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignmentdistance).ok() }
12715     }
12716     #[cfg(feature = "Graphics_Imaging")]
SetBitmapCustomWidthCustomAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()>12717     pub fn SetBitmapCustomWidthCustomAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()> {
12718         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12719         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignmentdistance, width).ok() }
12720     }
PrintSavedBitmap(&self, bitmapnumber: u32) -> ::windows::runtime::Result<()>12721     pub fn PrintSavedBitmap(&self, bitmapnumber: u32) -> ::windows::runtime::Result<()> {
12722         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12723         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), bitmapnumber).ok() }
12724     }
DrawRuledLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, positionlist: Param0, linedirection: PosPrinterLineDirection, linewidth: u32, linestyle: PosPrinterLineStyle, linecolor: u32) -> ::windows::runtime::Result<()>12725     pub fn DrawRuledLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, positionlist: Param0, linedirection: PosPrinterLineDirection, linewidth: u32, linestyle: PosPrinterLineStyle, linecolor: u32) -> ::windows::runtime::Result<()> {
12726         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12727         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), positionlist.into_param().abi(), linedirection, linewidth, linestyle, linecolor).ok() }
12728     }
PrintBarcode<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()>12729     pub fn PrintBarcode<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
12730         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12731         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), data.into_param().abi(), symbology, height, width, textposition, alignment).ok() }
12732     }
PrintBarcodeCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignmentdistance: u32) -> ::windows::runtime::Result<()>12733     pub fn PrintBarcodeCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignmentdistance: u32) -> ::windows::runtime::Result<()> {
12734         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12735         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), data.into_param().abi(), symbology, height, width, textposition, alignmentdistance).ok() }
12736     }
12737     #[cfg(feature = "Graphics_Imaging")]
PrintBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()>12738     pub fn PrintBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
12739         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12740         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignment).ok() }
12741     }
12742     #[cfg(feature = "Graphics_Imaging")]
PrintBitmapCustomWidthStandardAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()>12743     pub fn PrintBitmapCustomWidthStandardAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()> {
12744         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12745         unsafe { (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignment, width).ok() }
12746     }
12747     #[cfg(feature = "Graphics_Imaging")]
PrintCustomAlignedBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32) -> ::windows::runtime::Result<()>12748     pub fn PrintCustomAlignedBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32) -> ::windows::runtime::Result<()> {
12749         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12750         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignmentdistance).ok() }
12751     }
12752     #[cfg(feature = "Graphics_Imaging")]
PrintBitmapCustomWidthCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()>12753     pub fn PrintBitmapCustomWidthCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()> {
12754         let this = &::windows::runtime::Interface::cast::<IReceiptOrSlipJob>(self)?;
12755         unsafe { (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignmentdistance, width).ok() }
12756     }
StampPaper(&self) -> ::windows::runtime::Result<()>12757     pub fn StampPaper(&self) -> ::windows::runtime::Result<()> {
12758         let this = &::windows::runtime::Interface::cast::<IReceiptPrintJob2>(self)?;
12759         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
12760     }
Print2<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, PosPrinterPrintOptions>>(&self, data: Param0, printoptions: Param1) -> ::windows::runtime::Result<()>12761     pub fn Print2<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, PosPrinterPrintOptions>>(&self, data: Param0, printoptions: Param1) -> ::windows::runtime::Result<()> {
12762         let this = &::windows::runtime::Interface::cast::<IReceiptPrintJob2>(self)?;
12763         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), data.into_param().abi(), printoptions.into_param().abi()).ok() }
12764     }
FeedPaperByLine(&self, linecount: i32) -> ::windows::runtime::Result<()>12765     pub fn FeedPaperByLine(&self, linecount: i32) -> ::windows::runtime::Result<()> {
12766         let this = &::windows::runtime::Interface::cast::<IReceiptPrintJob2>(self)?;
12767         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), linecount).ok() }
12768     }
FeedPaperByMapModeUnit(&self, distance: i32) -> ::windows::runtime::Result<()>12769     pub fn FeedPaperByMapModeUnit(&self, distance: i32) -> ::windows::runtime::Result<()> {
12770         let this = &::windows::runtime::Interface::cast::<IReceiptPrintJob2>(self)?;
12771         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), distance).ok() }
12772     }
12773 }
12774 unsafe impl ::windows::runtime::RuntimeType for ReceiptPrintJob {
12775     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ReceiptPrintJob;{aa96066e-acad-4b79-9d0f-c0cfc08dc77b})");
12776 }
12777 unsafe impl ::windows::runtime::Interface for ReceiptPrintJob {
12778     type Vtable = IReceiptPrintJob_abi;
12779     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2861958766, 44205, 19321, [157, 15, 192, 207, 192, 141, 199, 123]);
12780 }
12781 impl ::windows::runtime::RuntimeName for ReceiptPrintJob {
12782     const NAME: &'static str = "Windows.Devices.PointOfService.ReceiptPrintJob";
12783 }
12784 impl ::std::convert::From<ReceiptPrintJob> for ::windows::runtime::IUnknown {
from(value: ReceiptPrintJob) -> Self12785     fn from(value: ReceiptPrintJob) -> Self {
12786         unsafe { ::std::mem::transmute(value) }
12787     }
12788 }
12789 impl ::std::convert::From<&ReceiptPrintJob> for ::windows::runtime::IUnknown {
from(value: &ReceiptPrintJob) -> Self12790     fn from(value: &ReceiptPrintJob) -> Self {
12791         ::std::convert::From::from(::std::clone::Clone::clone(value))
12792     }
12793 }
12794 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ReceiptPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12795     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12796         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12797     }
12798 }
12799 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ReceiptPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>12800     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12801         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12802     }
12803 }
12804 impl ::std::convert::From<ReceiptPrintJob> for ::windows::runtime::IInspectable {
from(value: ReceiptPrintJob) -> Self12805     fn from(value: ReceiptPrintJob) -> Self {
12806         value.0
12807     }
12808 }
12809 impl ::std::convert::From<&ReceiptPrintJob> for ::windows::runtime::IInspectable {
from(value: &ReceiptPrintJob) -> Self12810     fn from(value: &ReceiptPrintJob) -> Self {
12811         value.0.clone()
12812     }
12813 }
12814 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ReceiptPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12815     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12816         ::windows::runtime::Param::Owned(self.0)
12817     }
12818 }
12819 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ReceiptPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>12820     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12821         ::windows::runtime::Param::Borrowed(&self.0)
12822     }
12823 }
12824 impl ::std::convert::TryFrom<ReceiptPrintJob> for IPosPrinterJob {
12825     type Error = ::windows::runtime::Error;
try_from(value: ReceiptPrintJob) -> ::windows::runtime::Result<Self>12826     fn try_from(value: ReceiptPrintJob) -> ::windows::runtime::Result<Self> {
12827         ::std::convert::TryFrom::try_from(&value)
12828     }
12829 }
12830 impl ::std::convert::TryFrom<&ReceiptPrintJob> for IPosPrinterJob {
12831     type Error = ::windows::runtime::Error;
try_from(value: &ReceiptPrintJob) -> ::windows::runtime::Result<Self>12832     fn try_from(value: &ReceiptPrintJob) -> ::windows::runtime::Result<Self> {
12833         ::windows::runtime::Interface::cast(value)
12834     }
12835 }
12836 impl<'a> ::windows::runtime::IntoParam<'a, IPosPrinterJob> for ReceiptPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob>12837     fn into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob> {
12838         ::windows::runtime::IntoParam::into_param(&self)
12839     }
12840 }
12841 impl<'a> ::windows::runtime::IntoParam<'a, IPosPrinterJob> for &ReceiptPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob>12842     fn into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob> {
12843         ::std::convert::TryInto::<IPosPrinterJob>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
12844     }
12845 }
12846 impl ::std::convert::TryFrom<ReceiptPrintJob> for IReceiptOrSlipJob {
12847     type Error = ::windows::runtime::Error;
try_from(value: ReceiptPrintJob) -> ::windows::runtime::Result<Self>12848     fn try_from(value: ReceiptPrintJob) -> ::windows::runtime::Result<Self> {
12849         ::std::convert::TryFrom::try_from(&value)
12850     }
12851 }
12852 impl ::std::convert::TryFrom<&ReceiptPrintJob> for IReceiptOrSlipJob {
12853     type Error = ::windows::runtime::Error;
try_from(value: &ReceiptPrintJob) -> ::windows::runtime::Result<Self>12854     fn try_from(value: &ReceiptPrintJob) -> ::windows::runtime::Result<Self> {
12855         ::windows::runtime::Interface::cast(value)
12856     }
12857 }
12858 impl<'a> ::windows::runtime::IntoParam<'a, IReceiptOrSlipJob> for ReceiptPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IReceiptOrSlipJob>12859     fn into_param(self) -> ::windows::runtime::Param<'a, IReceiptOrSlipJob> {
12860         ::windows::runtime::IntoParam::into_param(&self)
12861     }
12862 }
12863 impl<'a> ::windows::runtime::IntoParam<'a, IReceiptOrSlipJob> for &ReceiptPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IReceiptOrSlipJob>12864     fn into_param(self) -> ::windows::runtime::Param<'a, IReceiptOrSlipJob> {
12865         ::std::convert::TryInto::<IReceiptOrSlipJob>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
12866     }
12867 }
12868 unsafe impl ::std::marker::Send for ReceiptPrintJob {}
12869 unsafe impl ::std::marker::Sync for ReceiptPrintJob {}
12870 #[repr(transparent)]
12871 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12872 pub struct ReceiptPrinterCapabilities(::windows::runtime::IInspectable);
12873 impl ReceiptPrinterCapabilities {
CanCutPaper(&self) -> ::windows::runtime::Result<bool>12874     pub fn CanCutPaper(&self) -> ::windows::runtime::Result<bool> {
12875         let this = self;
12876         unsafe {
12877             let mut result__: bool = ::std::mem::zeroed();
12878             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12879         }
12880     }
IsStampSupported(&self) -> ::windows::runtime::Result<bool>12881     pub fn IsStampSupported(&self) -> ::windows::runtime::Result<bool> {
12882         let this = self;
12883         unsafe {
12884             let mut result__: bool = ::std::mem::zeroed();
12885             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12886         }
12887     }
MarkFeedCapabilities(&self) -> ::windows::runtime::Result<PosPrinterMarkFeedCapabilities>12888     pub fn MarkFeedCapabilities(&self) -> ::windows::runtime::Result<PosPrinterMarkFeedCapabilities> {
12889         let this = self;
12890         unsafe {
12891             let mut result__: PosPrinterMarkFeedCapabilities = ::std::mem::zeroed();
12892             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterMarkFeedCapabilities>(result__)
12893         }
12894     }
IsPrinterPresent(&self) -> ::windows::runtime::Result<bool>12895     pub fn IsPrinterPresent(&self) -> ::windows::runtime::Result<bool> {
12896         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12897         unsafe {
12898             let mut result__: bool = ::std::mem::zeroed();
12899             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12900         }
12901     }
IsDualColorSupported(&self) -> ::windows::runtime::Result<bool>12902     pub fn IsDualColorSupported(&self) -> ::windows::runtime::Result<bool> {
12903         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12904         unsafe {
12905             let mut result__: bool = ::std::mem::zeroed();
12906             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12907         }
12908     }
ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities>12909     pub fn ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities> {
12910         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12911         unsafe {
12912             let mut result__: PosPrinterColorCapabilities = ::std::mem::zeroed();
12913             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterColorCapabilities>(result__)
12914         }
12915     }
CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors>12916     pub fn CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors> {
12917         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12918         unsafe {
12919             let mut result__: PosPrinterCartridgeSensors = ::std::mem::zeroed();
12920             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterCartridgeSensors>(result__)
12921         }
12922     }
IsBoldSupported(&self) -> ::windows::runtime::Result<bool>12923     pub fn IsBoldSupported(&self) -> ::windows::runtime::Result<bool> {
12924         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12925         unsafe {
12926             let mut result__: bool = ::std::mem::zeroed();
12927             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12928         }
12929     }
IsItalicSupported(&self) -> ::windows::runtime::Result<bool>12930     pub fn IsItalicSupported(&self) -> ::windows::runtime::Result<bool> {
12931         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12932         unsafe {
12933             let mut result__: bool = ::std::mem::zeroed();
12934             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12935         }
12936     }
IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool>12937     pub fn IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool> {
12938         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12939         unsafe {
12940             let mut result__: bool = ::std::mem::zeroed();
12941             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12942         }
12943     }
IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool>12944     pub fn IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool> {
12945         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12946         unsafe {
12947             let mut result__: bool = ::std::mem::zeroed();
12948             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12949         }
12950     }
IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>12951     pub fn IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
12952         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12953         unsafe {
12954             let mut result__: bool = ::std::mem::zeroed();
12955             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12956         }
12957     }
IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>12958     pub fn IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
12959         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12960         unsafe {
12961             let mut result__: bool = ::std::mem::zeroed();
12962             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12963         }
12964     }
IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool>12965     pub fn IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool> {
12966         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12967         unsafe {
12968             let mut result__: bool = ::std::mem::zeroed();
12969             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12970         }
12971     }
IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool>12972     pub fn IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool> {
12973         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12974         unsafe {
12975             let mut result__: bool = ::std::mem::zeroed();
12976             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12977         }
12978     }
12979     #[cfg(feature = "Foundation_Collections")]
SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>>12980     pub fn SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>> {
12981         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
12982         unsafe {
12983             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12984             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<u32>>(result__)
12985         }
12986     }
IsBarcodeSupported(&self) -> ::windows::runtime::Result<bool>12987     pub fn IsBarcodeSupported(&self) -> ::windows::runtime::Result<bool> {
12988         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
12989         unsafe {
12990             let mut result__: bool = ::std::mem::zeroed();
12991             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12992         }
12993     }
IsBitmapSupported(&self) -> ::windows::runtime::Result<bool>12994     pub fn IsBitmapSupported(&self) -> ::windows::runtime::Result<bool> {
12995         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
12996         unsafe {
12997             let mut result__: bool = ::std::mem::zeroed();
12998             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
12999         }
13000     }
IsLeft90RotationSupported(&self) -> ::windows::runtime::Result<bool>13001     pub fn IsLeft90RotationSupported(&self) -> ::windows::runtime::Result<bool> {
13002         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13003         unsafe {
13004             let mut result__: bool = ::std::mem::zeroed();
13005             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13006         }
13007     }
IsRight90RotationSupported(&self) -> ::windows::runtime::Result<bool>13008     pub fn IsRight90RotationSupported(&self) -> ::windows::runtime::Result<bool> {
13009         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13010         unsafe {
13011             let mut result__: bool = ::std::mem::zeroed();
13012             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13013         }
13014     }
Is180RotationSupported(&self) -> ::windows::runtime::Result<bool>13015     pub fn Is180RotationSupported(&self) -> ::windows::runtime::Result<bool> {
13016         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13017         unsafe {
13018             let mut result__: bool = ::std::mem::zeroed();
13019             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13020         }
13021     }
IsPrintAreaSupported(&self) -> ::windows::runtime::Result<bool>13022     pub fn IsPrintAreaSupported(&self) -> ::windows::runtime::Result<bool> {
13023         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13024         unsafe {
13025             let mut result__: bool = ::std::mem::zeroed();
13026             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13027         }
13028     }
RuledLineCapabilities(&self) -> ::windows::runtime::Result<PosPrinterRuledLineCapabilities>13029     pub fn RuledLineCapabilities(&self) -> ::windows::runtime::Result<PosPrinterRuledLineCapabilities> {
13030         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13031         unsafe {
13032             let mut result__: PosPrinterRuledLineCapabilities = ::std::mem::zeroed();
13033             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterRuledLineCapabilities>(result__)
13034         }
13035     }
13036     #[cfg(feature = "Foundation_Collections")]
SupportedBarcodeRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>13037     pub fn SupportedBarcodeRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>> {
13038         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13039         unsafe {
13040             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13041             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>(result__)
13042         }
13043     }
13044     #[cfg(feature = "Foundation_Collections")]
SupportedBitmapRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>13045     pub fn SupportedBitmapRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>> {
13046         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13047         unsafe {
13048             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13049             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>(result__)
13050         }
13051     }
IsReverseVideoSupported(&self) -> ::windows::runtime::Result<bool>13052     pub fn IsReverseVideoSupported(&self) -> ::windows::runtime::Result<bool> {
13053         let this = &::windows::runtime::Interface::cast::<IReceiptPrinterCapabilities2>(self)?;
13054         unsafe {
13055             let mut result__: bool = ::std::mem::zeroed();
13056             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13057         }
13058     }
IsStrikethroughSupported(&self) -> ::windows::runtime::Result<bool>13059     pub fn IsStrikethroughSupported(&self) -> ::windows::runtime::Result<bool> {
13060         let this = &::windows::runtime::Interface::cast::<IReceiptPrinterCapabilities2>(self)?;
13061         unsafe {
13062             let mut result__: bool = ::std::mem::zeroed();
13063             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13064         }
13065     }
IsSuperscriptSupported(&self) -> ::windows::runtime::Result<bool>13066     pub fn IsSuperscriptSupported(&self) -> ::windows::runtime::Result<bool> {
13067         let this = &::windows::runtime::Interface::cast::<IReceiptPrinterCapabilities2>(self)?;
13068         unsafe {
13069             let mut result__: bool = ::std::mem::zeroed();
13070             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13071         }
13072     }
IsSubscriptSupported(&self) -> ::windows::runtime::Result<bool>13073     pub fn IsSubscriptSupported(&self) -> ::windows::runtime::Result<bool> {
13074         let this = &::windows::runtime::Interface::cast::<IReceiptPrinterCapabilities2>(self)?;
13075         unsafe {
13076             let mut result__: bool = ::std::mem::zeroed();
13077             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13078         }
13079     }
IsReversePaperFeedByLineSupported(&self) -> ::windows::runtime::Result<bool>13080     pub fn IsReversePaperFeedByLineSupported(&self) -> ::windows::runtime::Result<bool> {
13081         let this = &::windows::runtime::Interface::cast::<IReceiptPrinterCapabilities2>(self)?;
13082         unsafe {
13083             let mut result__: bool = ::std::mem::zeroed();
13084             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13085         }
13086     }
IsReversePaperFeedByMapModeUnitSupported(&self) -> ::windows::runtime::Result<bool>13087     pub fn IsReversePaperFeedByMapModeUnitSupported(&self) -> ::windows::runtime::Result<bool> {
13088         let this = &::windows::runtime::Interface::cast::<IReceiptPrinterCapabilities2>(self)?;
13089         unsafe {
13090             let mut result__: bool = ::std::mem::zeroed();
13091             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13092         }
13093     }
13094 }
13095 unsafe impl ::windows::runtime::RuntimeType for ReceiptPrinterCapabilities {
13096     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.ReceiptPrinterCapabilities;{b8f0b58f-51a8-43fc-9bd5-8de272a6415b})");
13097 }
13098 unsafe impl ::windows::runtime::Interface for ReceiptPrinterCapabilities {
13099     type Vtable = IReceiptPrinterCapabilities_abi;
13100     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3102782863, 20904, 17404, [155, 213, 141, 226, 114, 166, 65, 91]);
13101 }
13102 impl ::windows::runtime::RuntimeName for ReceiptPrinterCapabilities {
13103     const NAME: &'static str = "Windows.Devices.PointOfService.ReceiptPrinterCapabilities";
13104 }
13105 impl ::std::convert::From<ReceiptPrinterCapabilities> for ::windows::runtime::IUnknown {
from(value: ReceiptPrinterCapabilities) -> Self13106     fn from(value: ReceiptPrinterCapabilities) -> Self {
13107         unsafe { ::std::mem::transmute(value) }
13108     }
13109 }
13110 impl ::std::convert::From<&ReceiptPrinterCapabilities> for ::windows::runtime::IUnknown {
from(value: &ReceiptPrinterCapabilities) -> Self13111     fn from(value: &ReceiptPrinterCapabilities) -> Self {
13112         ::std::convert::From::from(::std::clone::Clone::clone(value))
13113     }
13114 }
13115 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ReceiptPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>13116     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13117         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13118     }
13119 }
13120 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ReceiptPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>13121     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13122         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13123     }
13124 }
13125 impl ::std::convert::From<ReceiptPrinterCapabilities> for ::windows::runtime::IInspectable {
from(value: ReceiptPrinterCapabilities) -> Self13126     fn from(value: ReceiptPrinterCapabilities) -> Self {
13127         value.0
13128     }
13129 }
13130 impl ::std::convert::From<&ReceiptPrinterCapabilities> for ::windows::runtime::IInspectable {
from(value: &ReceiptPrinterCapabilities) -> Self13131     fn from(value: &ReceiptPrinterCapabilities) -> Self {
13132         value.0.clone()
13133     }
13134 }
13135 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ReceiptPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>13136     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13137         ::windows::runtime::Param::Owned(self.0)
13138     }
13139 }
13140 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ReceiptPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>13141     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13142         ::windows::runtime::Param::Borrowed(&self.0)
13143     }
13144 }
13145 impl ::std::convert::TryFrom<ReceiptPrinterCapabilities> for ICommonPosPrintStationCapabilities {
13146     type Error = ::windows::runtime::Error;
try_from(value: ReceiptPrinterCapabilities) -> ::windows::runtime::Result<Self>13147     fn try_from(value: ReceiptPrinterCapabilities) -> ::windows::runtime::Result<Self> {
13148         ::std::convert::TryFrom::try_from(&value)
13149     }
13150 }
13151 impl ::std::convert::TryFrom<&ReceiptPrinterCapabilities> for ICommonPosPrintStationCapabilities {
13152     type Error = ::windows::runtime::Error;
try_from(value: &ReceiptPrinterCapabilities) -> ::windows::runtime::Result<Self>13153     fn try_from(value: &ReceiptPrinterCapabilities) -> ::windows::runtime::Result<Self> {
13154         ::windows::runtime::Interface::cast(value)
13155     }
13156 }
13157 impl<'a> ::windows::runtime::IntoParam<'a, ICommonPosPrintStationCapabilities> for ReceiptPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities>13158     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities> {
13159         ::windows::runtime::IntoParam::into_param(&self)
13160     }
13161 }
13162 impl<'a> ::windows::runtime::IntoParam<'a, ICommonPosPrintStationCapabilities> for &ReceiptPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities>13163     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities> {
13164         ::std::convert::TryInto::<ICommonPosPrintStationCapabilities>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
13165     }
13166 }
13167 impl ::std::convert::TryFrom<ReceiptPrinterCapabilities> for ICommonReceiptSlipCapabilities {
13168     type Error = ::windows::runtime::Error;
try_from(value: ReceiptPrinterCapabilities) -> ::windows::runtime::Result<Self>13169     fn try_from(value: ReceiptPrinterCapabilities) -> ::windows::runtime::Result<Self> {
13170         ::std::convert::TryFrom::try_from(&value)
13171     }
13172 }
13173 impl ::std::convert::TryFrom<&ReceiptPrinterCapabilities> for ICommonReceiptSlipCapabilities {
13174     type Error = ::windows::runtime::Error;
try_from(value: &ReceiptPrinterCapabilities) -> ::windows::runtime::Result<Self>13175     fn try_from(value: &ReceiptPrinterCapabilities) -> ::windows::runtime::Result<Self> {
13176         ::windows::runtime::Interface::cast(value)
13177     }
13178 }
13179 impl<'a> ::windows::runtime::IntoParam<'a, ICommonReceiptSlipCapabilities> for ReceiptPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonReceiptSlipCapabilities>13180     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonReceiptSlipCapabilities> {
13181         ::windows::runtime::IntoParam::into_param(&self)
13182     }
13183 }
13184 impl<'a> ::windows::runtime::IntoParam<'a, ICommonReceiptSlipCapabilities> for &ReceiptPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonReceiptSlipCapabilities>13185     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonReceiptSlipCapabilities> {
13186         ::std::convert::TryInto::<ICommonReceiptSlipCapabilities>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
13187     }
13188 }
13189 unsafe impl ::std::marker::Send for ReceiptPrinterCapabilities {}
13190 unsafe impl ::std::marker::Sync for ReceiptPrinterCapabilities {}
13191 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
13192 #[repr(C)]
13193 pub struct SizeUInt32 {
13194     pub Width: u32,
13195     pub Height: u32,
13196 }
13197 impl SizeUInt32 {}
13198 impl ::std::default::Default for SizeUInt32 {
default() -> Self13199     fn default() -> Self {
13200         unsafe { ::std::mem::zeroed() }
13201     }
13202 }
13203 impl ::std::fmt::Debug for SizeUInt32 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result13204     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13205         fmt.debug_struct("SizeUInt32").field("Width", &self.Width).field("Height", &self.Height).finish()
13206     }
13207 }
13208 impl ::std::cmp::PartialEq for SizeUInt32 {
eq(&self, other: &Self) -> bool13209     fn eq(&self, other: &Self) -> bool {
13210         self.Width == other.Width && self.Height == other.Height
13211     }
13212 }
13213 impl ::std::cmp::Eq for SizeUInt32 {}
13214 unsafe impl ::windows::runtime::Abi for SizeUInt32 {
13215     type Abi = Self;
13216     type DefaultType = Self;
13217 }
13218 unsafe impl ::windows::runtime::RuntimeType for SizeUInt32 {
13219     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"struct(Windows.Devices.PointOfService.SizeUInt32;u4;u4)");
13220 }
13221 #[repr(transparent)]
13222 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
13223 pub struct SlipPrintJob(::windows::runtime::IInspectable);
13224 impl SlipPrintJob {
SetBarcodeRotation(&self, value: PosPrinterRotation) -> ::windows::runtime::Result<()>13225     pub fn SetBarcodeRotation(&self, value: PosPrinterRotation) -> ::windows::runtime::Result<()> {
13226         let this = self;
13227         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
13228     }
SetPrintRotation(&self, value: PosPrinterRotation, includebitmaps: bool) -> ::windows::runtime::Result<()>13229     pub fn SetPrintRotation(&self, value: PosPrinterRotation, includebitmaps: bool) -> ::windows::runtime::Result<()> {
13230         let this = self;
13231         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value, includebitmaps).ok() }
13232     }
13233     #[cfg(feature = "Foundation")]
SetPrintArea<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Rect>>(&self, value: Param0) -> ::windows::runtime::Result<()>13234     pub fn SetPrintArea<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Rect>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
13235         let this = self;
13236         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
13237     }
13238     #[cfg(feature = "Graphics_Imaging")]
SetBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()>13239     pub fn SetBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
13240         let this = self;
13241         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignment).ok() }
13242     }
13243     #[cfg(feature = "Graphics_Imaging")]
SetBitmapCustomWidthStandardAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()>13244     pub fn SetBitmapCustomWidthStandardAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()> {
13245         let this = self;
13246         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignment, width).ok() }
13247     }
13248     #[cfg(feature = "Graphics_Imaging")]
SetCustomAlignedBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32) -> ::windows::runtime::Result<()>13249     pub fn SetCustomAlignedBitmap<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32) -> ::windows::runtime::Result<()> {
13250         let this = self;
13251         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignmentdistance).ok() }
13252     }
13253     #[cfg(feature = "Graphics_Imaging")]
SetBitmapCustomWidthCustomAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()>13254     pub fn SetBitmapCustomWidthCustomAlign<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmapnumber: u32, bitmap: Param1, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()> {
13255         let this = self;
13256         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), bitmapnumber, bitmap.into_param().abi(), alignmentdistance, width).ok() }
13257     }
PrintSavedBitmap(&self, bitmapnumber: u32) -> ::windows::runtime::Result<()>13258     pub fn PrintSavedBitmap(&self, bitmapnumber: u32) -> ::windows::runtime::Result<()> {
13259         let this = self;
13260         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), bitmapnumber).ok() }
13261     }
DrawRuledLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, positionlist: Param0, linedirection: PosPrinterLineDirection, linewidth: u32, linestyle: PosPrinterLineStyle, linecolor: u32) -> ::windows::runtime::Result<()>13262     pub fn DrawRuledLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, positionlist: Param0, linedirection: PosPrinterLineDirection, linewidth: u32, linestyle: PosPrinterLineStyle, linecolor: u32) -> ::windows::runtime::Result<()> {
13263         let this = self;
13264         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), positionlist.into_param().abi(), linedirection, linewidth, linestyle, linecolor).ok() }
13265     }
PrintBarcode<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()>13266     pub fn PrintBarcode<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
13267         let this = self;
13268         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), data.into_param().abi(), symbology, height, width, textposition, alignment).ok() }
13269     }
PrintBarcodeCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignmentdistance: u32) -> ::windows::runtime::Result<()>13270     pub fn PrintBarcodeCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0, symbology: u32, height: u32, width: u32, textposition: PosPrinterBarcodeTextPosition, alignmentdistance: u32) -> ::windows::runtime::Result<()> {
13271         let this = self;
13272         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), data.into_param().abi(), symbology, height, width, textposition, alignmentdistance).ok() }
13273     }
13274     #[cfg(feature = "Graphics_Imaging")]
PrintBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()>13275     pub fn PrintBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment) -> ::windows::runtime::Result<()> {
13276         let this = self;
13277         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignment).ok() }
13278     }
13279     #[cfg(feature = "Graphics_Imaging")]
PrintBitmapCustomWidthStandardAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()>13280     pub fn PrintBitmapCustomWidthStandardAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignment: PosPrinterAlignment, width: u32) -> ::windows::runtime::Result<()> {
13281         let this = self;
13282         unsafe { (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignment, width).ok() }
13283     }
13284     #[cfg(feature = "Graphics_Imaging")]
PrintCustomAlignedBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32) -> ::windows::runtime::Result<()>13285     pub fn PrintCustomAlignedBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32) -> ::windows::runtime::Result<()> {
13286         let this = self;
13287         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignmentdistance).ok() }
13288     }
13289     #[cfg(feature = "Graphics_Imaging")]
PrintBitmapCustomWidthCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()>13290     pub fn PrintBitmapCustomWidthCustomAlign<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Graphics::Imaging::BitmapFrame>>(&self, bitmap: Param0, alignmentdistance: u32, width: u32) -> ::windows::runtime::Result<()> {
13291         let this = self;
13292         unsafe { (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), bitmap.into_param().abi(), alignmentdistance, width).ok() }
13293     }
Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>13294     pub fn Print<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
13295         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
13296         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
13297     }
PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()>13298     pub fn PrintLine<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, data: Param0) -> ::windows::runtime::Result<()> {
13299         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
13300         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), data.into_param().abi()).ok() }
13301     }
PrintNewline(&self) -> ::windows::runtime::Result<()>13302     pub fn PrintNewline(&self) -> ::windows::runtime::Result<()> {
13303         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
13304         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this)).ok() }
13305     }
13306     #[cfg(feature = "Foundation")]
ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>13307     pub fn ExecuteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
13308         let this = &::windows::runtime::Interface::cast::<IPosPrinterJob>(self)?;
13309         unsafe {
13310             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13311             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
13312         }
13313     }
Print2<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, PosPrinterPrintOptions>>(&self, data: Param0, printoptions: Param1) -> ::windows::runtime::Result<()>13314     pub fn Print2<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, PosPrinterPrintOptions>>(&self, data: Param0, printoptions: Param1) -> ::windows::runtime::Result<()> {
13315         let this = &::windows::runtime::Interface::cast::<ISlipPrintJob>(self)?;
13316         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), data.into_param().abi(), printoptions.into_param().abi()).ok() }
13317     }
FeedPaperByLine(&self, linecount: i32) -> ::windows::runtime::Result<()>13318     pub fn FeedPaperByLine(&self, linecount: i32) -> ::windows::runtime::Result<()> {
13319         let this = &::windows::runtime::Interface::cast::<ISlipPrintJob>(self)?;
13320         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), linecount).ok() }
13321     }
FeedPaperByMapModeUnit(&self, distance: i32) -> ::windows::runtime::Result<()>13322     pub fn FeedPaperByMapModeUnit(&self, distance: i32) -> ::windows::runtime::Result<()> {
13323         let this = &::windows::runtime::Interface::cast::<ISlipPrintJob>(self)?;
13324         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), distance).ok() }
13325     }
13326 }
13327 unsafe impl ::windows::runtime::RuntimeType for SlipPrintJob {
13328     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.SlipPrintJob;{532199be-c8c3-4dc2-89e9-5c4a37b34ddc})");
13329 }
13330 unsafe impl ::windows::runtime::Interface for SlipPrintJob {
13331     type Vtable = IReceiptOrSlipJob_abi;
13332     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1394710974, 51395, 19906, [137, 233, 92, 74, 55, 179, 77, 220]);
13333 }
13334 impl ::windows::runtime::RuntimeName for SlipPrintJob {
13335     const NAME: &'static str = "Windows.Devices.PointOfService.SlipPrintJob";
13336 }
13337 impl ::std::convert::From<SlipPrintJob> for ::windows::runtime::IUnknown {
from(value: SlipPrintJob) -> Self13338     fn from(value: SlipPrintJob) -> Self {
13339         unsafe { ::std::mem::transmute(value) }
13340     }
13341 }
13342 impl ::std::convert::From<&SlipPrintJob> for ::windows::runtime::IUnknown {
from(value: &SlipPrintJob) -> Self13343     fn from(value: &SlipPrintJob) -> Self {
13344         ::std::convert::From::from(::std::clone::Clone::clone(value))
13345     }
13346 }
13347 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SlipPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>13348     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13349         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13350     }
13351 }
13352 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SlipPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>13353     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13354         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13355     }
13356 }
13357 impl ::std::convert::From<SlipPrintJob> for ::windows::runtime::IInspectable {
from(value: SlipPrintJob) -> Self13358     fn from(value: SlipPrintJob) -> Self {
13359         value.0
13360     }
13361 }
13362 impl ::std::convert::From<&SlipPrintJob> for ::windows::runtime::IInspectable {
from(value: &SlipPrintJob) -> Self13363     fn from(value: &SlipPrintJob) -> Self {
13364         value.0.clone()
13365     }
13366 }
13367 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SlipPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>13368     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13369         ::windows::runtime::Param::Owned(self.0)
13370     }
13371 }
13372 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SlipPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>13373     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13374         ::windows::runtime::Param::Borrowed(&self.0)
13375     }
13376 }
13377 impl ::std::convert::From<SlipPrintJob> for IReceiptOrSlipJob {
from(value: SlipPrintJob) -> Self13378     fn from(value: SlipPrintJob) -> Self {
13379         unsafe { ::std::mem::transmute(value) }
13380     }
13381 }
13382 impl ::std::convert::From<&SlipPrintJob> for IReceiptOrSlipJob {
from(value: &SlipPrintJob) -> Self13383     fn from(value: &SlipPrintJob) -> Self {
13384         ::std::convert::From::from(::std::clone::Clone::clone(value))
13385     }
13386 }
13387 impl<'a> ::windows::runtime::IntoParam<'a, IReceiptOrSlipJob> for SlipPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IReceiptOrSlipJob>13388     fn into_param(self) -> ::windows::runtime::Param<'a, IReceiptOrSlipJob> {
13389         ::windows::runtime::Param::Owned(::std::convert::Into::<IReceiptOrSlipJob>::into(self))
13390     }
13391 }
13392 impl<'a> ::windows::runtime::IntoParam<'a, IReceiptOrSlipJob> for &SlipPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IReceiptOrSlipJob>13393     fn into_param(self) -> ::windows::runtime::Param<'a, IReceiptOrSlipJob> {
13394         ::windows::runtime::Param::Owned(::std::convert::Into::<IReceiptOrSlipJob>::into(::std::clone::Clone::clone(self)))
13395     }
13396 }
13397 impl ::std::convert::TryFrom<SlipPrintJob> for IPosPrinterJob {
13398     type Error = ::windows::runtime::Error;
try_from(value: SlipPrintJob) -> ::windows::runtime::Result<Self>13399     fn try_from(value: SlipPrintJob) -> ::windows::runtime::Result<Self> {
13400         ::std::convert::TryFrom::try_from(&value)
13401     }
13402 }
13403 impl ::std::convert::TryFrom<&SlipPrintJob> for IPosPrinterJob {
13404     type Error = ::windows::runtime::Error;
try_from(value: &SlipPrintJob) -> ::windows::runtime::Result<Self>13405     fn try_from(value: &SlipPrintJob) -> ::windows::runtime::Result<Self> {
13406         ::windows::runtime::Interface::cast(value)
13407     }
13408 }
13409 impl<'a> ::windows::runtime::IntoParam<'a, IPosPrinterJob> for SlipPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob>13410     fn into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob> {
13411         ::windows::runtime::IntoParam::into_param(&self)
13412     }
13413 }
13414 impl<'a> ::windows::runtime::IntoParam<'a, IPosPrinterJob> for &SlipPrintJob {
into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob>13415     fn into_param(self) -> ::windows::runtime::Param<'a, IPosPrinterJob> {
13416         ::std::convert::TryInto::<IPosPrinterJob>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
13417     }
13418 }
13419 unsafe impl ::std::marker::Send for SlipPrintJob {}
13420 unsafe impl ::std::marker::Sync for SlipPrintJob {}
13421 #[repr(transparent)]
13422 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
13423 pub struct SlipPrinterCapabilities(::windows::runtime::IInspectable);
13424 impl SlipPrinterCapabilities {
IsFullLengthSupported(&self) -> ::windows::runtime::Result<bool>13425     pub fn IsFullLengthSupported(&self) -> ::windows::runtime::Result<bool> {
13426         let this = self;
13427         unsafe {
13428             let mut result__: bool = ::std::mem::zeroed();
13429             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13430         }
13431     }
IsBothSidesPrintingSupported(&self) -> ::windows::runtime::Result<bool>13432     pub fn IsBothSidesPrintingSupported(&self) -> ::windows::runtime::Result<bool> {
13433         let this = self;
13434         unsafe {
13435             let mut result__: bool = ::std::mem::zeroed();
13436             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13437         }
13438     }
IsPrinterPresent(&self) -> ::windows::runtime::Result<bool>13439     pub fn IsPrinterPresent(&self) -> ::windows::runtime::Result<bool> {
13440         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13441         unsafe {
13442             let mut result__: bool = ::std::mem::zeroed();
13443             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13444         }
13445     }
IsDualColorSupported(&self) -> ::windows::runtime::Result<bool>13446     pub fn IsDualColorSupported(&self) -> ::windows::runtime::Result<bool> {
13447         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13448         unsafe {
13449             let mut result__: bool = ::std::mem::zeroed();
13450             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13451         }
13452     }
ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities>13453     pub fn ColorCartridgeCapabilities(&self) -> ::windows::runtime::Result<PosPrinterColorCapabilities> {
13454         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13455         unsafe {
13456             let mut result__: PosPrinterColorCapabilities = ::std::mem::zeroed();
13457             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterColorCapabilities>(result__)
13458         }
13459     }
CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors>13460     pub fn CartridgeSensors(&self) -> ::windows::runtime::Result<PosPrinterCartridgeSensors> {
13461         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13462         unsafe {
13463             let mut result__: PosPrinterCartridgeSensors = ::std::mem::zeroed();
13464             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterCartridgeSensors>(result__)
13465         }
13466     }
IsBoldSupported(&self) -> ::windows::runtime::Result<bool>13467     pub fn IsBoldSupported(&self) -> ::windows::runtime::Result<bool> {
13468         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13469         unsafe {
13470             let mut result__: bool = ::std::mem::zeroed();
13471             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13472         }
13473     }
IsItalicSupported(&self) -> ::windows::runtime::Result<bool>13474     pub fn IsItalicSupported(&self) -> ::windows::runtime::Result<bool> {
13475         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13476         unsafe {
13477             let mut result__: bool = ::std::mem::zeroed();
13478             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13479         }
13480     }
IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool>13481     pub fn IsUnderlineSupported(&self) -> ::windows::runtime::Result<bool> {
13482         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13483         unsafe {
13484             let mut result__: bool = ::std::mem::zeroed();
13485             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13486         }
13487     }
IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool>13488     pub fn IsDoubleHighPrintSupported(&self) -> ::windows::runtime::Result<bool> {
13489         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13490         unsafe {
13491             let mut result__: bool = ::std::mem::zeroed();
13492             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13493         }
13494     }
IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>13495     pub fn IsDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
13496         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13497         unsafe {
13498             let mut result__: bool = ::std::mem::zeroed();
13499             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13500         }
13501     }
IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool>13502     pub fn IsDoubleHighDoubleWidePrintSupported(&self) -> ::windows::runtime::Result<bool> {
13503         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13504         unsafe {
13505             let mut result__: bool = ::std::mem::zeroed();
13506             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13507         }
13508     }
IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool>13509     pub fn IsPaperEmptySensorSupported(&self) -> ::windows::runtime::Result<bool> {
13510         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13511         unsafe {
13512             let mut result__: bool = ::std::mem::zeroed();
13513             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13514         }
13515     }
IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool>13516     pub fn IsPaperNearEndSensorSupported(&self) -> ::windows::runtime::Result<bool> {
13517         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13518         unsafe {
13519             let mut result__: bool = ::std::mem::zeroed();
13520             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13521         }
13522     }
13523     #[cfg(feature = "Foundation_Collections")]
SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>>13524     pub fn SupportedCharactersPerLine(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<u32>> {
13525         let this = &::windows::runtime::Interface::cast::<ICommonPosPrintStationCapabilities>(self)?;
13526         unsafe {
13527             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13528             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<u32>>(result__)
13529         }
13530     }
IsBarcodeSupported(&self) -> ::windows::runtime::Result<bool>13531     pub fn IsBarcodeSupported(&self) -> ::windows::runtime::Result<bool> {
13532         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13533         unsafe {
13534             let mut result__: bool = ::std::mem::zeroed();
13535             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13536         }
13537     }
IsBitmapSupported(&self) -> ::windows::runtime::Result<bool>13538     pub fn IsBitmapSupported(&self) -> ::windows::runtime::Result<bool> {
13539         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13540         unsafe {
13541             let mut result__: bool = ::std::mem::zeroed();
13542             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13543         }
13544     }
IsLeft90RotationSupported(&self) -> ::windows::runtime::Result<bool>13545     pub fn IsLeft90RotationSupported(&self) -> ::windows::runtime::Result<bool> {
13546         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13547         unsafe {
13548             let mut result__: bool = ::std::mem::zeroed();
13549             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13550         }
13551     }
IsRight90RotationSupported(&self) -> ::windows::runtime::Result<bool>13552     pub fn IsRight90RotationSupported(&self) -> ::windows::runtime::Result<bool> {
13553         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13554         unsafe {
13555             let mut result__: bool = ::std::mem::zeroed();
13556             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13557         }
13558     }
Is180RotationSupported(&self) -> ::windows::runtime::Result<bool>13559     pub fn Is180RotationSupported(&self) -> ::windows::runtime::Result<bool> {
13560         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13561         unsafe {
13562             let mut result__: bool = ::std::mem::zeroed();
13563             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13564         }
13565     }
IsPrintAreaSupported(&self) -> ::windows::runtime::Result<bool>13566     pub fn IsPrintAreaSupported(&self) -> ::windows::runtime::Result<bool> {
13567         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13568         unsafe {
13569             let mut result__: bool = ::std::mem::zeroed();
13570             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13571         }
13572     }
RuledLineCapabilities(&self) -> ::windows::runtime::Result<PosPrinterRuledLineCapabilities>13573     pub fn RuledLineCapabilities(&self) -> ::windows::runtime::Result<PosPrinterRuledLineCapabilities> {
13574         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13575         unsafe {
13576             let mut result__: PosPrinterRuledLineCapabilities = ::std::mem::zeroed();
13577             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PosPrinterRuledLineCapabilities>(result__)
13578         }
13579     }
13580     #[cfg(feature = "Foundation_Collections")]
SupportedBarcodeRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>13581     pub fn SupportedBarcodeRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>> {
13582         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13583         unsafe {
13584             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13585             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>(result__)
13586         }
13587     }
13588     #[cfg(feature = "Foundation_Collections")]
SupportedBitmapRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>13589     pub fn SupportedBitmapRotations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>> {
13590         let this = &::windows::runtime::Interface::cast::<ICommonReceiptSlipCapabilities>(self)?;
13591         unsafe {
13592             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13593             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<PosPrinterRotation>>(result__)
13594         }
13595     }
IsReverseVideoSupported(&self) -> ::windows::runtime::Result<bool>13596     pub fn IsReverseVideoSupported(&self) -> ::windows::runtime::Result<bool> {
13597         let this = &::windows::runtime::Interface::cast::<ISlipPrinterCapabilities2>(self)?;
13598         unsafe {
13599             let mut result__: bool = ::std::mem::zeroed();
13600             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13601         }
13602     }
IsStrikethroughSupported(&self) -> ::windows::runtime::Result<bool>13603     pub fn IsStrikethroughSupported(&self) -> ::windows::runtime::Result<bool> {
13604         let this = &::windows::runtime::Interface::cast::<ISlipPrinterCapabilities2>(self)?;
13605         unsafe {
13606             let mut result__: bool = ::std::mem::zeroed();
13607             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13608         }
13609     }
IsSuperscriptSupported(&self) -> ::windows::runtime::Result<bool>13610     pub fn IsSuperscriptSupported(&self) -> ::windows::runtime::Result<bool> {
13611         let this = &::windows::runtime::Interface::cast::<ISlipPrinterCapabilities2>(self)?;
13612         unsafe {
13613             let mut result__: bool = ::std::mem::zeroed();
13614             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13615         }
13616     }
IsSubscriptSupported(&self) -> ::windows::runtime::Result<bool>13617     pub fn IsSubscriptSupported(&self) -> ::windows::runtime::Result<bool> {
13618         let this = &::windows::runtime::Interface::cast::<ISlipPrinterCapabilities2>(self)?;
13619         unsafe {
13620             let mut result__: bool = ::std::mem::zeroed();
13621             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13622         }
13623     }
IsReversePaperFeedByLineSupported(&self) -> ::windows::runtime::Result<bool>13624     pub fn IsReversePaperFeedByLineSupported(&self) -> ::windows::runtime::Result<bool> {
13625         let this = &::windows::runtime::Interface::cast::<ISlipPrinterCapabilities2>(self)?;
13626         unsafe {
13627             let mut result__: bool = ::std::mem::zeroed();
13628             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13629         }
13630     }
IsReversePaperFeedByMapModeUnitSupported(&self) -> ::windows::runtime::Result<bool>13631     pub fn IsReversePaperFeedByMapModeUnitSupported(&self) -> ::windows::runtime::Result<bool> {
13632         let this = &::windows::runtime::Interface::cast::<ISlipPrinterCapabilities2>(self)?;
13633         unsafe {
13634             let mut result__: bool = ::std::mem::zeroed();
13635             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13636         }
13637     }
13638 }
13639 unsafe impl ::windows::runtime::RuntimeType for SlipPrinterCapabilities {
13640     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.SlipPrinterCapabilities;{99b16399-488c-4157-8ac2-9f57f708d3db})");
13641 }
13642 unsafe impl ::windows::runtime::Interface for SlipPrinterCapabilities {
13643     type Vtable = ISlipPrinterCapabilities_abi;
13644     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2578539417, 18572, 16727, [138, 194, 159, 87, 247, 8, 211, 219]);
13645 }
13646 impl ::windows::runtime::RuntimeName for SlipPrinterCapabilities {
13647     const NAME: &'static str = "Windows.Devices.PointOfService.SlipPrinterCapabilities";
13648 }
13649 impl ::std::convert::From<SlipPrinterCapabilities> for ::windows::runtime::IUnknown {
from(value: SlipPrinterCapabilities) -> Self13650     fn from(value: SlipPrinterCapabilities) -> Self {
13651         unsafe { ::std::mem::transmute(value) }
13652     }
13653 }
13654 impl ::std::convert::From<&SlipPrinterCapabilities> for ::windows::runtime::IUnknown {
from(value: &SlipPrinterCapabilities) -> Self13655     fn from(value: &SlipPrinterCapabilities) -> Self {
13656         ::std::convert::From::from(::std::clone::Clone::clone(value))
13657     }
13658 }
13659 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SlipPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>13660     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13661         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13662     }
13663 }
13664 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SlipPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>13665     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13666         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13667     }
13668 }
13669 impl ::std::convert::From<SlipPrinterCapabilities> for ::windows::runtime::IInspectable {
from(value: SlipPrinterCapabilities) -> Self13670     fn from(value: SlipPrinterCapabilities) -> Self {
13671         value.0
13672     }
13673 }
13674 impl ::std::convert::From<&SlipPrinterCapabilities> for ::windows::runtime::IInspectable {
from(value: &SlipPrinterCapabilities) -> Self13675     fn from(value: &SlipPrinterCapabilities) -> Self {
13676         value.0.clone()
13677     }
13678 }
13679 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SlipPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>13680     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13681         ::windows::runtime::Param::Owned(self.0)
13682     }
13683 }
13684 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SlipPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>13685     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13686         ::windows::runtime::Param::Borrowed(&self.0)
13687     }
13688 }
13689 impl ::std::convert::TryFrom<SlipPrinterCapabilities> for ICommonPosPrintStationCapabilities {
13690     type Error = ::windows::runtime::Error;
try_from(value: SlipPrinterCapabilities) -> ::windows::runtime::Result<Self>13691     fn try_from(value: SlipPrinterCapabilities) -> ::windows::runtime::Result<Self> {
13692         ::std::convert::TryFrom::try_from(&value)
13693     }
13694 }
13695 impl ::std::convert::TryFrom<&SlipPrinterCapabilities> for ICommonPosPrintStationCapabilities {
13696     type Error = ::windows::runtime::Error;
try_from(value: &SlipPrinterCapabilities) -> ::windows::runtime::Result<Self>13697     fn try_from(value: &SlipPrinterCapabilities) -> ::windows::runtime::Result<Self> {
13698         ::windows::runtime::Interface::cast(value)
13699     }
13700 }
13701 impl<'a> ::windows::runtime::IntoParam<'a, ICommonPosPrintStationCapabilities> for SlipPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities>13702     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities> {
13703         ::windows::runtime::IntoParam::into_param(&self)
13704     }
13705 }
13706 impl<'a> ::windows::runtime::IntoParam<'a, ICommonPosPrintStationCapabilities> for &SlipPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities>13707     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonPosPrintStationCapabilities> {
13708         ::std::convert::TryInto::<ICommonPosPrintStationCapabilities>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
13709     }
13710 }
13711 impl ::std::convert::TryFrom<SlipPrinterCapabilities> for ICommonReceiptSlipCapabilities {
13712     type Error = ::windows::runtime::Error;
try_from(value: SlipPrinterCapabilities) -> ::windows::runtime::Result<Self>13713     fn try_from(value: SlipPrinterCapabilities) -> ::windows::runtime::Result<Self> {
13714         ::std::convert::TryFrom::try_from(&value)
13715     }
13716 }
13717 impl ::std::convert::TryFrom<&SlipPrinterCapabilities> for ICommonReceiptSlipCapabilities {
13718     type Error = ::windows::runtime::Error;
try_from(value: &SlipPrinterCapabilities) -> ::windows::runtime::Result<Self>13719     fn try_from(value: &SlipPrinterCapabilities) -> ::windows::runtime::Result<Self> {
13720         ::windows::runtime::Interface::cast(value)
13721     }
13722 }
13723 impl<'a> ::windows::runtime::IntoParam<'a, ICommonReceiptSlipCapabilities> for SlipPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonReceiptSlipCapabilities>13724     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonReceiptSlipCapabilities> {
13725         ::windows::runtime::IntoParam::into_param(&self)
13726     }
13727 }
13728 impl<'a> ::windows::runtime::IntoParam<'a, ICommonReceiptSlipCapabilities> for &SlipPrinterCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ICommonReceiptSlipCapabilities>13729     fn into_param(self) -> ::windows::runtime::Param<'a, ICommonReceiptSlipCapabilities> {
13730         ::std::convert::TryInto::<ICommonReceiptSlipCapabilities>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
13731     }
13732 }
13733 unsafe impl ::std::marker::Send for SlipPrinterCapabilities {}
13734 unsafe impl ::std::marker::Sync for SlipPrinterCapabilities {}
13735 #[repr(transparent)]
13736 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
13737 pub struct UnifiedPosErrorData(::windows::runtime::IInspectable);
13738 impl UnifiedPosErrorData {
Message(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>13739     pub fn Message(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
13740         let this = self;
13741         unsafe {
13742             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
13743             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
13744         }
13745     }
Severity(&self) -> ::windows::runtime::Result<UnifiedPosErrorSeverity>13746     pub fn Severity(&self) -> ::windows::runtime::Result<UnifiedPosErrorSeverity> {
13747         let this = self;
13748         unsafe {
13749             let mut result__: UnifiedPosErrorSeverity = ::std::mem::zeroed();
13750             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UnifiedPosErrorSeverity>(result__)
13751         }
13752     }
Reason(&self) -> ::windows::runtime::Result<UnifiedPosErrorReason>13753     pub fn Reason(&self) -> ::windows::runtime::Result<UnifiedPosErrorReason> {
13754         let this = self;
13755         unsafe {
13756             let mut result__: UnifiedPosErrorReason = ::std::mem::zeroed();
13757             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UnifiedPosErrorReason>(result__)
13758         }
13759     }
ExtendedReason(&self) -> ::windows::runtime::Result<u32>13760     pub fn ExtendedReason(&self) -> ::windows::runtime::Result<u32> {
13761         let this = self;
13762         unsafe {
13763             let mut result__: u32 = ::std::mem::zeroed();
13764             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
13765         }
13766     }
CreateInstance<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(message: Param0, severity: UnifiedPosErrorSeverity, reason: UnifiedPosErrorReason, extendedreason: u32) -> ::windows::runtime::Result<UnifiedPosErrorData>13767     pub fn CreateInstance<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(message: Param0, severity: UnifiedPosErrorSeverity, reason: UnifiedPosErrorReason, extendedreason: u32) -> ::windows::runtime::Result<UnifiedPosErrorData> {
13768         Self::IUnifiedPosErrorDataFactory(|this| unsafe {
13769             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13770             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), message.into_param().abi(), severity, reason, extendedreason, &mut result__).from_abi::<UnifiedPosErrorData>(result__)
13771         })
13772     }
IUnifiedPosErrorDataFactory<R, F: FnOnce(&IUnifiedPosErrorDataFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>13773     pub fn IUnifiedPosErrorDataFactory<R, F: FnOnce(&IUnifiedPosErrorDataFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
13774         static mut SHARED: ::windows::runtime::FactoryCache<UnifiedPosErrorData, IUnifiedPosErrorDataFactory> = ::windows::runtime::FactoryCache::new();
13775         unsafe { SHARED.call(callback) }
13776     }
13777 }
13778 unsafe impl ::windows::runtime::RuntimeType for UnifiedPosErrorData {
13779     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.PointOfService.UnifiedPosErrorData;{2b998c3a-555c-4889-8ed8-c599bb3a712a})");
13780 }
13781 unsafe impl ::windows::runtime::Interface for UnifiedPosErrorData {
13782     type Vtable = IUnifiedPosErrorData_abi;
13783     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(731483194, 21852, 18569, [142, 216, 197, 153, 187, 58, 113, 42]);
13784 }
13785 impl ::windows::runtime::RuntimeName for UnifiedPosErrorData {
13786     const NAME: &'static str = "Windows.Devices.PointOfService.UnifiedPosErrorData";
13787 }
13788 impl ::std::convert::From<UnifiedPosErrorData> for ::windows::runtime::IUnknown {
from(value: UnifiedPosErrorData) -> Self13789     fn from(value: UnifiedPosErrorData) -> Self {
13790         unsafe { ::std::mem::transmute(value) }
13791     }
13792 }
13793 impl ::std::convert::From<&UnifiedPosErrorData> for ::windows::runtime::IUnknown {
from(value: &UnifiedPosErrorData) -> Self13794     fn from(value: &UnifiedPosErrorData) -> Self {
13795         ::std::convert::From::from(::std::clone::Clone::clone(value))
13796     }
13797 }
13798 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for UnifiedPosErrorData {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>13799     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13800         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13801     }
13802 }
13803 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &UnifiedPosErrorData {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>13804     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13805         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13806     }
13807 }
13808 impl ::std::convert::From<UnifiedPosErrorData> for ::windows::runtime::IInspectable {
from(value: UnifiedPosErrorData) -> Self13809     fn from(value: UnifiedPosErrorData) -> Self {
13810         value.0
13811     }
13812 }
13813 impl ::std::convert::From<&UnifiedPosErrorData> for ::windows::runtime::IInspectable {
from(value: &UnifiedPosErrorData) -> Self13814     fn from(value: &UnifiedPosErrorData) -> Self {
13815         value.0.clone()
13816     }
13817 }
13818 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for UnifiedPosErrorData {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>13819     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13820         ::windows::runtime::Param::Owned(self.0)
13821     }
13822 }
13823 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a UnifiedPosErrorData {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>13824     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13825         ::windows::runtime::Param::Borrowed(&self.0)
13826     }
13827 }
13828 unsafe impl ::std::marker::Send for UnifiedPosErrorData {}
13829 unsafe impl ::std::marker::Sync for UnifiedPosErrorData {}
13830 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
13831 #[repr(transparent)]
13832 pub struct UnifiedPosErrorReason(pub i32);
13833 impl UnifiedPosErrorReason {
13834     pub const UnknownErrorReason: UnifiedPosErrorReason = UnifiedPosErrorReason(0i32);
13835     pub const NoService: UnifiedPosErrorReason = UnifiedPosErrorReason(1i32);
13836     pub const Disabled: UnifiedPosErrorReason = UnifiedPosErrorReason(2i32);
13837     pub const Illegal: UnifiedPosErrorReason = UnifiedPosErrorReason(3i32);
13838     pub const NoHardware: UnifiedPosErrorReason = UnifiedPosErrorReason(4i32);
13839     pub const Closed: UnifiedPosErrorReason = UnifiedPosErrorReason(5i32);
13840     pub const Offline: UnifiedPosErrorReason = UnifiedPosErrorReason(6i32);
13841     pub const Failure: UnifiedPosErrorReason = UnifiedPosErrorReason(7i32);
13842     pub const Timeout: UnifiedPosErrorReason = UnifiedPosErrorReason(8i32);
13843     pub const Busy: UnifiedPosErrorReason = UnifiedPosErrorReason(9i32);
13844     pub const Extended: UnifiedPosErrorReason = UnifiedPosErrorReason(10i32);
13845 }
13846 impl ::std::convert::From<i32> for UnifiedPosErrorReason {
from(value: i32) -> Self13847     fn from(value: i32) -> Self {
13848         Self(value)
13849     }
13850 }
13851 unsafe impl ::windows::runtime::Abi for UnifiedPosErrorReason {
13852     type Abi = Self;
13853     type DefaultType = Self;
13854 }
13855 unsafe impl ::windows::runtime::RuntimeType for UnifiedPosErrorReason {
13856     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.UnifiedPosErrorReason;i4)");
13857 }
13858 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
13859 #[repr(transparent)]
13860 pub struct UnifiedPosErrorSeverity(pub i32);
13861 impl UnifiedPosErrorSeverity {
13862     pub const UnknownErrorSeverity: UnifiedPosErrorSeverity = UnifiedPosErrorSeverity(0i32);
13863     pub const Warning: UnifiedPosErrorSeverity = UnifiedPosErrorSeverity(1i32);
13864     pub const Recoverable: UnifiedPosErrorSeverity = UnifiedPosErrorSeverity(2i32);
13865     pub const Unrecoverable: UnifiedPosErrorSeverity = UnifiedPosErrorSeverity(3i32);
13866     pub const AssistanceRequired: UnifiedPosErrorSeverity = UnifiedPosErrorSeverity(4i32);
13867     pub const Fatal: UnifiedPosErrorSeverity = UnifiedPosErrorSeverity(5i32);
13868 }
13869 impl ::std::convert::From<i32> for UnifiedPosErrorSeverity {
from(value: i32) -> Self13870     fn from(value: i32) -> Self {
13871         Self(value)
13872     }
13873 }
13874 unsafe impl ::windows::runtime::Abi for UnifiedPosErrorSeverity {
13875     type Abi = Self;
13876     type DefaultType = Self;
13877 }
13878 unsafe impl ::windows::runtime::RuntimeType for UnifiedPosErrorSeverity {
13879     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.UnifiedPosErrorSeverity;i4)");
13880 }
13881 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
13882 #[repr(transparent)]
13883 pub struct UnifiedPosHealthCheckLevel(pub i32);
13884 impl UnifiedPosHealthCheckLevel {
13885     pub const UnknownHealthCheckLevel: UnifiedPosHealthCheckLevel = UnifiedPosHealthCheckLevel(0i32);
13886     pub const POSInternal: UnifiedPosHealthCheckLevel = UnifiedPosHealthCheckLevel(1i32);
13887     pub const External: UnifiedPosHealthCheckLevel = UnifiedPosHealthCheckLevel(2i32);
13888     pub const Interactive: UnifiedPosHealthCheckLevel = UnifiedPosHealthCheckLevel(3i32);
13889 }
13890 impl ::std::convert::From<i32> for UnifiedPosHealthCheckLevel {
from(value: i32) -> Self13891     fn from(value: i32) -> Self {
13892         Self(value)
13893     }
13894 }
13895 unsafe impl ::windows::runtime::Abi for UnifiedPosHealthCheckLevel {
13896     type Abi = Self;
13897     type DefaultType = Self;
13898 }
13899 unsafe impl ::windows::runtime::RuntimeType for UnifiedPosHealthCheckLevel {
13900     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.UnifiedPosHealthCheckLevel;i4)");
13901 }
13902 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
13903 #[repr(transparent)]
13904 pub struct UnifiedPosPowerReportingType(pub i32);
13905 impl UnifiedPosPowerReportingType {
13906     pub const UnknownPowerReportingType: UnifiedPosPowerReportingType = UnifiedPosPowerReportingType(0i32);
13907     pub const Standard: UnifiedPosPowerReportingType = UnifiedPosPowerReportingType(1i32);
13908     pub const Advanced: UnifiedPosPowerReportingType = UnifiedPosPowerReportingType(2i32);
13909 }
13910 impl ::std::convert::From<i32> for UnifiedPosPowerReportingType {
from(value: i32) -> Self13911     fn from(value: i32) -> Self {
13912         Self(value)
13913     }
13914 }
13915 unsafe impl ::windows::runtime::Abi for UnifiedPosPowerReportingType {
13916     type Abi = Self;
13917     type DefaultType = Self;
13918 }
13919 unsafe impl ::windows::runtime::RuntimeType for UnifiedPosPowerReportingType {
13920     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Devices.PointOfService.UnifiedPosPowerReportingType;i4)");
13921 }
13922