1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[repr(transparent)]
3 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4 pub struct CustomSensor(::windows::runtime::IInspectable);
5 impl CustomSensor {
GetCurrentReading(&self) -> ::windows::runtime::Result<CustomSensorReading>6     pub fn GetCurrentReading(&self) -> ::windows::runtime::Result<CustomSensorReading> {
7         let this = self;
8         unsafe {
9             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
10             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CustomSensorReading>(result__)
11         }
12     }
MinimumReportInterval(&self) -> ::windows::runtime::Result<u32>13     pub fn MinimumReportInterval(&self) -> ::windows::runtime::Result<u32> {
14         let this = self;
15         unsafe {
16             let mut result__: u32 = ::std::mem::zeroed();
17             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
18         }
19     }
SetReportInterval(&self, value: u32) -> ::windows::runtime::Result<()>20     pub fn SetReportInterval(&self, value: u32) -> ::windows::runtime::Result<()> {
21         let this = self;
22         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
23     }
ReportInterval(&self) -> ::windows::runtime::Result<u32>24     pub fn ReportInterval(&self) -> ::windows::runtime::Result<u32> {
25         let this = self;
26         unsafe {
27             let mut result__: u32 = ::std::mem::zeroed();
28             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
29         }
30     }
DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>31     pub fn DeviceId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
32         let this = self;
33         unsafe {
34             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
35             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
36         }
37     }
38     #[cfg(feature = "Foundation")]
ReadingChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Foundation::TypedEventHandler<CustomSensor, CustomSensorReadingChangedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::Foundation::EventRegistrationToken>39     pub fn ReadingChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Foundation::TypedEventHandler<CustomSensor, CustomSensorReadingChangedEventArgs>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::Foundation::EventRegistrationToken> {
40         let this = self;
41         unsafe {
42             let mut result__: super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
43             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::Foundation::EventRegistrationToken>(result__)
44         }
45     }
46     #[cfg(feature = "Foundation")]
RemoveReadingChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>47     pub fn RemoveReadingChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
48         let this = self;
49         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
50     }
GetDeviceSelector<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(interfaceid: Param0) -> ::windows::runtime::Result<::windows::runtime::HSTRING>51     pub fn GetDeviceSelector<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(interfaceid: Param0) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
52         Self::ICustomSensorStatics(|this| unsafe {
53             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
54             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), interfaceid.into_param().abi(), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
55         })
56     }
57     #[cfg(feature = "Foundation")]
FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(sensorid: Param0) -> ::windows::runtime::Result<super::super::super::Foundation::IAsyncOperation<CustomSensor>>58     pub fn FromIdAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(sensorid: Param0) -> ::windows::runtime::Result<super::super::super::Foundation::IAsyncOperation<CustomSensor>> {
59         Self::ICustomSensorStatics(|this| unsafe {
60             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
61             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), sensorid.into_param().abi(), &mut result__).from_abi::<super::super::super::Foundation::IAsyncOperation<CustomSensor>>(result__)
62         })
63     }
SetReportLatency(&self, value: u32) -> ::windows::runtime::Result<()>64     pub fn SetReportLatency(&self, value: u32) -> ::windows::runtime::Result<()> {
65         let this = &::windows::runtime::Interface::cast::<ICustomSensor2>(self)?;
66         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
67     }
ReportLatency(&self) -> ::windows::runtime::Result<u32>68     pub fn ReportLatency(&self) -> ::windows::runtime::Result<u32> {
69         let this = &::windows::runtime::Interface::cast::<ICustomSensor2>(self)?;
70         unsafe {
71             let mut result__: u32 = ::std::mem::zeroed();
72             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
73         }
74     }
MaxBatchSize(&self) -> ::windows::runtime::Result<u32>75     pub fn MaxBatchSize(&self) -> ::windows::runtime::Result<u32> {
76         let this = &::windows::runtime::Interface::cast::<ICustomSensor2>(self)?;
77         unsafe {
78             let mut result__: u32 = ::std::mem::zeroed();
79             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
80         }
81     }
ICustomSensorStatics<R, F: FnOnce(&ICustomSensorStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>82     pub fn ICustomSensorStatics<R, F: FnOnce(&ICustomSensorStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
83         static mut SHARED: ::windows::runtime::FactoryCache<CustomSensor, ICustomSensorStatics> = ::windows::runtime::FactoryCache::new();
84         unsafe { SHARED.call(callback) }
85     }
86 }
87 unsafe impl ::windows::runtime::RuntimeType for CustomSensor {
88     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.Sensors.Custom.CustomSensor;{a136f9ad-4034-4b4d-99dd-531aac649c09})");
89 }
90 unsafe impl ::windows::runtime::Interface for CustomSensor {
91     type Vtable = ICustomSensor_abi;
92     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2704734637, 16436, 19277, [153, 221, 83, 26, 172, 100, 156, 9]);
93 }
94 impl ::windows::runtime::RuntimeName for CustomSensor {
95     const NAME: &'static str = "Windows.Devices.Sensors.Custom.CustomSensor";
96 }
97 impl ::std::convert::From<CustomSensor> for ::windows::runtime::IUnknown {
from(value: CustomSensor) -> Self98     fn from(value: CustomSensor) -> Self {
99         unsafe { ::std::mem::transmute(value) }
100     }
101 }
102 impl ::std::convert::From<&CustomSensor> for ::windows::runtime::IUnknown {
from(value: &CustomSensor) -> Self103     fn from(value: &CustomSensor) -> Self {
104         ::std::convert::From::from(::std::clone::Clone::clone(value))
105     }
106 }
107 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CustomSensor {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>108     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
109         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
110     }
111 }
112 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CustomSensor {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>113     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
114         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
115     }
116 }
117 impl ::std::convert::From<CustomSensor> for ::windows::runtime::IInspectable {
from(value: CustomSensor) -> Self118     fn from(value: CustomSensor) -> Self {
119         value.0
120     }
121 }
122 impl ::std::convert::From<&CustomSensor> for ::windows::runtime::IInspectable {
from(value: &CustomSensor) -> Self123     fn from(value: &CustomSensor) -> Self {
124         value.0.clone()
125     }
126 }
127 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CustomSensor {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>128     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
129         ::windows::runtime::Param::Owned(self.0)
130     }
131 }
132 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CustomSensor {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>133     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
134         ::windows::runtime::Param::Borrowed(&self.0)
135     }
136 }
137 unsafe impl ::std::marker::Send for CustomSensor {}
138 unsafe impl ::std::marker::Sync for CustomSensor {}
139 #[repr(transparent)]
140 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
141 pub struct CustomSensorReading(::windows::runtime::IInspectable);
142 impl CustomSensorReading {
143     #[cfg(feature = "Foundation")]
Timestamp(&self) -> ::windows::runtime::Result<super::super::super::Foundation::DateTime>144     pub fn Timestamp(&self) -> ::windows::runtime::Result<super::super::super::Foundation::DateTime> {
145         let this = self;
146         unsafe {
147             let mut result__: super::super::super::Foundation::DateTime = ::std::mem::zeroed();
148             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Foundation::DateTime>(result__)
149         }
150     }
151     #[cfg(feature = "Foundation_Collections")]
Properties(&self) -> ::windows::runtime::Result<super::super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>152     pub fn Properties(&self) -> ::windows::runtime::Result<super::super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>> {
153         let this = self;
154         unsafe {
155             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
156             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Foundation::Collections::IMapView<::windows::runtime::HSTRING, ::windows::runtime::IInspectable>>(result__)
157         }
158     }
159     #[cfg(feature = "Foundation")]
PerformanceCount(&self) -> ::windows::runtime::Result<super::super::super::Foundation::IReference<super::super::super::Foundation::TimeSpan>>160     pub fn PerformanceCount(&self) -> ::windows::runtime::Result<super::super::super::Foundation::IReference<super::super::super::Foundation::TimeSpan>> {
161         let this = &::windows::runtime::Interface::cast::<ICustomSensorReading2>(self)?;
162         unsafe {
163             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
164             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Foundation::IReference<super::super::super::Foundation::TimeSpan>>(result__)
165         }
166     }
167 }
168 unsafe impl ::windows::runtime::RuntimeType for CustomSensorReading {
169     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.Sensors.Custom.CustomSensorReading;{64004f4d-446a-4366-a87a-5f963268ec53})");
170 }
171 unsafe impl ::windows::runtime::Interface for CustomSensorReading {
172     type Vtable = ICustomSensorReading_abi;
173     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1677741901, 17514, 17254, [168, 122, 95, 150, 50, 104, 236, 83]);
174 }
175 impl ::windows::runtime::RuntimeName for CustomSensorReading {
176     const NAME: &'static str = "Windows.Devices.Sensors.Custom.CustomSensorReading";
177 }
178 impl ::std::convert::From<CustomSensorReading> for ::windows::runtime::IUnknown {
from(value: CustomSensorReading) -> Self179     fn from(value: CustomSensorReading) -> Self {
180         unsafe { ::std::mem::transmute(value) }
181     }
182 }
183 impl ::std::convert::From<&CustomSensorReading> for ::windows::runtime::IUnknown {
from(value: &CustomSensorReading) -> Self184     fn from(value: &CustomSensorReading) -> Self {
185         ::std::convert::From::from(::std::clone::Clone::clone(value))
186     }
187 }
188 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CustomSensorReading {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>189     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
190         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
191     }
192 }
193 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CustomSensorReading {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>194     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
195         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
196     }
197 }
198 impl ::std::convert::From<CustomSensorReading> for ::windows::runtime::IInspectable {
from(value: CustomSensorReading) -> Self199     fn from(value: CustomSensorReading) -> Self {
200         value.0
201     }
202 }
203 impl ::std::convert::From<&CustomSensorReading> for ::windows::runtime::IInspectable {
from(value: &CustomSensorReading) -> Self204     fn from(value: &CustomSensorReading) -> Self {
205         value.0.clone()
206     }
207 }
208 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CustomSensorReading {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>209     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
210         ::windows::runtime::Param::Owned(self.0)
211     }
212 }
213 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CustomSensorReading {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>214     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
215         ::windows::runtime::Param::Borrowed(&self.0)
216     }
217 }
218 unsafe impl ::std::marker::Send for CustomSensorReading {}
219 unsafe impl ::std::marker::Sync for CustomSensorReading {}
220 #[repr(transparent)]
221 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
222 pub struct CustomSensorReadingChangedEventArgs(::windows::runtime::IInspectable);
223 impl CustomSensorReadingChangedEventArgs {
Reading(&self) -> ::windows::runtime::Result<CustomSensorReading>224     pub fn Reading(&self) -> ::windows::runtime::Result<CustomSensorReading> {
225         let this = self;
226         unsafe {
227             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
228             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<CustomSensorReading>(result__)
229         }
230     }
231 }
232 unsafe impl ::windows::runtime::RuntimeType for CustomSensorReadingChangedEventArgs {
233     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Devices.Sensors.Custom.CustomSensorReadingChangedEventArgs;{6b202023-cffd-4cc1-8ff0-e21823d76fcc})");
234 }
235 unsafe impl ::windows::runtime::Interface for CustomSensorReadingChangedEventArgs {
236     type Vtable = ICustomSensorReadingChangedEventArgs_abi;
237     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1797267491, 53245, 19649, [143, 240, 226, 24, 35, 215, 111, 204]);
238 }
239 impl ::windows::runtime::RuntimeName for CustomSensorReadingChangedEventArgs {
240     const NAME: &'static str = "Windows.Devices.Sensors.Custom.CustomSensorReadingChangedEventArgs";
241 }
242 impl ::std::convert::From<CustomSensorReadingChangedEventArgs> for ::windows::runtime::IUnknown {
from(value: CustomSensorReadingChangedEventArgs) -> Self243     fn from(value: CustomSensorReadingChangedEventArgs) -> Self {
244         unsafe { ::std::mem::transmute(value) }
245     }
246 }
247 impl ::std::convert::From<&CustomSensorReadingChangedEventArgs> for ::windows::runtime::IUnknown {
from(value: &CustomSensorReadingChangedEventArgs) -> Self248     fn from(value: &CustomSensorReadingChangedEventArgs) -> Self {
249         ::std::convert::From::from(::std::clone::Clone::clone(value))
250     }
251 }
252 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CustomSensorReadingChangedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>253     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
254         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
255     }
256 }
257 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CustomSensorReadingChangedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>258     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
259         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
260     }
261 }
262 impl ::std::convert::From<CustomSensorReadingChangedEventArgs> for ::windows::runtime::IInspectable {
from(value: CustomSensorReadingChangedEventArgs) -> Self263     fn from(value: CustomSensorReadingChangedEventArgs) -> Self {
264         value.0
265     }
266 }
267 impl ::std::convert::From<&CustomSensorReadingChangedEventArgs> for ::windows::runtime::IInspectable {
from(value: &CustomSensorReadingChangedEventArgs) -> Self268     fn from(value: &CustomSensorReadingChangedEventArgs) -> Self {
269         value.0.clone()
270     }
271 }
272 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CustomSensorReadingChangedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>273     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
274         ::windows::runtime::Param::Owned(self.0)
275     }
276 }
277 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CustomSensorReadingChangedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>278     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
279         ::windows::runtime::Param::Borrowed(&self.0)
280     }
281 }
282 unsafe impl ::std::marker::Send for CustomSensorReadingChangedEventArgs {}
283 unsafe impl ::std::marker::Sync for CustomSensorReadingChangedEventArgs {}
284 #[repr(transparent)]
285 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
286 #[doc(hidden)]
287 pub struct ICustomSensor(::windows::runtime::IInspectable);
288 unsafe impl ::windows::runtime::Interface for ICustomSensor {
289     type Vtable = ICustomSensor_abi;
290     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2704734637, 16436, 19277, [153, 221, 83, 26, 172, 100, 156, 9]);
291 }
292 #[repr(C)]
293 #[doc(hidden)]
294 pub struct ICustomSensor_abi(
295     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
296     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
297     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
298     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
299     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
300     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
301     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
302     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
303     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
304     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
305     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
306     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
307     #[cfg(not(feature = "Foundation"))] usize,
308     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
309     #[cfg(not(feature = "Foundation"))] usize,
310 );
311 #[repr(transparent)]
312 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
313 #[doc(hidden)]
314 pub struct ICustomSensor2(::windows::runtime::IInspectable);
315 unsafe impl ::windows::runtime::Interface for ICustomSensor2 {
316     type Vtable = ICustomSensor2_abi;
317     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(551235857, 60504, 19871, [191, 189, 231, 120, 37, 8, 133, 16]);
318 }
319 #[repr(C)]
320 #[doc(hidden)]
321 pub struct ICustomSensor2_abi(
322     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
323     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
324     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
325     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
326     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
327     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
328     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
329     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
330     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
331 );
332 #[repr(transparent)]
333 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
334 #[doc(hidden)]
335 pub struct ICustomSensorReading(::windows::runtime::IInspectable);
336 unsafe impl ::windows::runtime::Interface for ICustomSensorReading {
337     type Vtable = ICustomSensorReading_abi;
338     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1677741901, 17514, 17254, [168, 122, 95, 150, 50, 104, 236, 83]);
339 }
340 #[repr(C)]
341 #[doc(hidden)]
342 pub struct ICustomSensorReading_abi(
343     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
344     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
345     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
346     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
347     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
348     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
349     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
350     #[cfg(not(feature = "Foundation"))] usize,
351     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
352     #[cfg(not(feature = "Foundation_Collections"))] usize,
353 );
354 #[repr(transparent)]
355 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
356 #[doc(hidden)]
357 pub struct ICustomSensorReading2(::windows::runtime::IInspectable);
358 unsafe impl ::windows::runtime::Interface for ICustomSensorReading2 {
359     type Vtable = ICustomSensorReading2_abi;
360     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(574396650, 49011, 18834, [154, 72, 211, 200, 151, 89, 76, 203]);
361 }
362 #[repr(C)]
363 #[doc(hidden)]
364 pub struct ICustomSensorReading2_abi(
365     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
366     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
367     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
368     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
369     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
370     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
371     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
372     #[cfg(not(feature = "Foundation"))] usize,
373 );
374 #[repr(transparent)]
375 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
376 #[doc(hidden)]
377 pub struct ICustomSensorReadingChangedEventArgs(::windows::runtime::IInspectable);
378 unsafe impl ::windows::runtime::Interface for ICustomSensorReadingChangedEventArgs {
379     type Vtable = ICustomSensorReadingChangedEventArgs_abi;
380     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1797267491, 53245, 19649, [143, 240, 226, 24, 35, 215, 111, 204]);
381 }
382 #[repr(C)]
383 #[doc(hidden)]
384 pub struct ICustomSensorReadingChangedEventArgs_abi(
385     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
386     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
387     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
388     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
389     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
390     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
391     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
392 );
393 #[repr(transparent)]
394 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
395 #[doc(hidden)]
396 pub struct ICustomSensorStatics(::windows::runtime::IInspectable);
397 unsafe impl ::windows::runtime::Interface for ICustomSensorStatics {
398     type Vtable = ICustomSensorStatics_abi;
399     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2569032399, 62498, 19581, [131, 107, 231, 220, 116, 167, 18, 75]);
400 }
401 #[repr(C)]
402 #[doc(hidden)]
403 pub struct ICustomSensorStatics_abi(
404     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
405     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
406     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
407     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
408     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
409     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
410     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, interfaceid: ::windows::runtime::GUID, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
411     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, sensorid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
412     #[cfg(not(feature = "Foundation"))] usize,
413 );
414