objc2_io_kit/generated/
hid.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::cell::UnsafeCell;
4use core::ffi::*;
5use core::marker::{PhantomData, PhantomPinned};
6use core::ptr::NonNull;
7#[cfg(feature = "dispatch2")]
8use dispatch2::*;
9#[cfg(feature = "objc2")]
10use objc2::__framework_prelude::*;
11use objc2_core_foundation::*;
12
13use crate::*;
14
15/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidpointeraccelerationkey?language=objc)
16pub const kIOHIDPointerAccelerationKey: &CStr =
17    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDPointerAcceleration\0") };
18/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtrackpadscrollaccelerationkey?language=objc)
19pub const kIOHIDTrackpadScrollAccelerationKey: &CStr =
20    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDTrackpadScrollAcceleration\0") };
21/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtrackpadaccelerationtype?language=objc)
22pub const kIOHIDTrackpadAccelerationType: &CStr =
23    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDTrackpadAcceleration\0") };
24/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidpointeraccelerationtypekey?language=objc)
25pub const kIOHIDPointerAccelerationTypeKey: &CStr =
26    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDPointerAccelerationType\0") };
27/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmousescrollaccelerationkey?language=objc)
28pub const kIOHIDMouseScrollAccelerationKey: &CStr =
29    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDMouseScrollAcceleration\0") };
30/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmouseaccelerationtypekey?language=objc)
31pub const kIOHIDMouseAccelerationTypeKey: &CStr =
32    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDMouseAcceleration\0") };
33/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidscrollaccelerationkey?language=objc)
34pub const kIOHIDScrollAccelerationKey: &CStr =
35    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDScrollAcceleration\0") };
36/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidscrollaccelerationtypekey?language=objc)
37pub const kIOHIDScrollAccelerationTypeKey: &CStr =
38    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDScrollAccelerationType\0") };
39/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddigitizertipthresholdkey?language=objc)
40pub const kIOHIDDigitizerTipThresholdKey: &CStr =
41    unsafe { CStr::from_bytes_with_nul_unchecked(b"DigitizerTipThreshold\0") };
42/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidsurfacedimensionskey?language=objc)
43pub const kIOHIDSurfaceDimensionsKey: &CStr =
44    unsafe { CStr::from_bytes_with_nul_unchecked(b"SurfaceDimensions\0") };
45/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidwidthkey?language=objc)
46pub const kIOHIDWidthKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Width\0") };
47/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidheightkey?language=objc)
48pub const kIOHIDHeightKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Height\0") };
49/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohideventdriverhandlesreport?language=objc)
50pub const kIOHIDEventDriverHandlesReport: &CStr =
51    unsafe { CStr::from_bytes_with_nul_unchecked(b"IOHIDEventDriverHandlesReport\0") };
52/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidserviceaccelerationproperties?language=objc)
53pub const kIOHIDServiceAccelerationProperties: &CStr =
54    unsafe { CStr::from_bytes_with_nul_unchecked(b"IOHIDSetAcceleration\0") };
55/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidpointeraccelerationmultiplierkey?language=objc)
56pub const kIOHIDPointerAccelerationMultiplierKey: &CStr =
57    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDPointerAccelerationMultiplier\0") };
58/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpointerreportratekey?language=objc)
59pub const kHIDPointerReportRateKey: &CStr =
60    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDPointerReportRate\0") };
61/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidscrollreportratekey?language=objc)
62pub const kIOHIDScrollReportRateKey: &CStr =
63    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDScrollReportRate\0") };
64/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidaccelparametriccurveskey?language=objc)
65pub const kHIDAccelParametricCurvesKey: &CStr =
66    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDAccelCurves\0") };
67/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidscrollaccelparametriccurveskey?language=objc)
68pub const kHIDScrollAccelParametricCurvesKey: &CStr =
69    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDScrollAccelCurves\0") };
70/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidscrollresolutionkey?language=objc)
71pub const kIOHIDScrollResolutionKey: &CStr =
72    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDScrollResolution\0") };
73/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddropaccelpropertyeventskey?language=objc)
74pub const kIOHIDDropAccelPropertyEventsKey: &CStr =
75    unsafe { CStr::from_bytes_with_nul_unchecked(b"DropAccelPropertyEvents\0") };
76/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidscrollresolutionxkey?language=objc)
77pub const kIOHIDScrollResolutionXKey: &CStr =
78    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDScrollResolutionX\0") };
79/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidscrollresolutionykey?language=objc)
80pub const kIOHIDScrollResolutionYKey: &CStr =
81    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDScrollResolutionY\0") };
82/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidscrollresolutionzkey?language=objc)
83pub const kIOHIDScrollResolutionZKey: &CStr =
84    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDScrollResolutionZ\0") };
85/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiduselinearscalingmouseaccelerationkey?language=objc)
86pub const kIOHIDUseLinearScalingMouseAccelerationKey: &CStr =
87    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDUseLinearScalingMouseAcceleration\0") };
88/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidpointeraccelerationsupportkey?language=objc)
89pub const kIOHIDPointerAccelerationSupportKey: &CStr =
90    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDSupportsPointerAcceleration\0") };
91/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidscrollaccelerationsupportkey?language=objc)
92pub const kIOHIDScrollAccelerationSupportKey: &CStr =
93    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDSupportsScrollAcceleration\0") };
94/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmouseaccelerationtype?language=objc)
95pub const kIOHIDMouseAccelerationType: &CStr =
96    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDMouseAcceleration\0") };
97/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidpointerbuttonmode?language=objc)
98pub const kIOHIDPointerButtonMode: &CStr =
99    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDPointerButtonMode\0") };
100/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidpointerbuttonmodekey?language=objc)
101pub const kIOHIDPointerButtonModeKey: &CStr = kIOHIDPointerButtonMode;
102/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiduserkeyusagemapkey?language=objc)
103pub const kIOHIDUserKeyUsageMapKey: &CStr =
104    unsafe { CStr::from_bytes_with_nul_unchecked(b"UserKeyMapping\0") };
105/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardcapslockdelayoverride?language=objc)
106pub const kIOHIDKeyboardCapsLockDelayOverride: &CStr =
107    unsafe { CStr::from_bytes_with_nul_unchecked(b"CapsLockDelayOverride\0") };
108/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardcapslockdelayoverridekey?language=objc)
109pub const kIOHIDKeyboardCapsLockDelayOverrideKey: &CStr = kIOHIDKeyboardCapsLockDelayOverride;
110/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidserviceejectdelaykey?language=objc)
111pub const kIOHIDServiceEjectDelayKey: &CStr =
112    unsafe { CStr::from_bytes_with_nul_unchecked(b"EjectDelay\0") };
113/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidservicelockkeydelaykey?language=objc)
114pub const kIOHIDServiceLockKeyDelayKey: &CStr =
115    unsafe { CStr::from_bytes_with_nul_unchecked(b"LockKeyDelay\0") };
116/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidserviceinitialkeyrepeatdelaykey?language=objc)
117pub const kIOHIDServiceInitialKeyRepeatDelayKey: &CStr =
118    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDInitialKeyRepeat\0") };
119/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidservicekeyrepeatdelaykey?language=objc)
120pub const kIOHIDServiceKeyRepeatDelayKey: &CStr =
121    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDKeyRepeat\0") };
122/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohididletimemicrosecondskey?language=objc)
123pub const kIOHIDIdleTimeMicrosecondsKey: &CStr =
124    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDIdleTimeMicroseconds\0") };
125/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidservicecapslockstatekey?language=objc)
126pub const kIOHIDServiceCapsLockStateKey: &CStr =
127    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDCapsLockState\0") };
128/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddevicedefaultasyncrequesttimeout?language=objc)
129pub const kIOHIDDeviceDefaultAsyncRequestTimeout: c_uint = 1000;
130/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddeviceminasyncrequesttimeout?language=objc)
131pub const kIOHIDDeviceMinAsyncRequestTimeout: c_uint = 50;
132/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddevicemaxasyncrequesttimeout?language=objc)
133pub const kIOHIDDeviceMaxAsyncRequestTimeout: c_uint = 1200000;
134/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportkey?language=objc)
135pub const kIOHIDTransportKey: &CStr =
136    unsafe { CStr::from_bytes_with_nul_unchecked(b"Transport\0") };
137/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidvendoridkey?language=objc)
138pub const kIOHIDVendorIDKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"VendorID\0") };
139/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidproductidkey?language=objc)
140pub const kIOHIDProductIDKey: &CStr =
141    unsafe { CStr::from_bytes_with_nul_unchecked(b"ProductID\0") };
142/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidversionnumberkey?language=objc)
143pub const kIOHIDVersionNumberKey: &CStr =
144    unsafe { CStr::from_bytes_with_nul_unchecked(b"VersionNumber\0") };
145/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmanufacturerkey?language=objc)
146pub const kIOHIDManufacturerKey: &CStr =
147    unsafe { CStr::from_bytes_with_nul_unchecked(b"Manufacturer\0") };
148/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidproductkey?language=objc)
149pub const kIOHIDProductKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Product\0") };
150/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidserialnumberkey?language=objc)
151pub const kIOHIDSerialNumberKey: &CStr =
152    unsafe { CStr::from_bytes_with_nul_unchecked(b"SerialNumber\0") };
153/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidcountrycodekey?language=objc)
154pub const kIOHIDCountryCodeKey: &CStr =
155    unsafe { CStr::from_bytes_with_nul_unchecked(b"CountryCode\0") };
156/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidlocationidkey?language=objc)
157pub const kIOHIDLocationIDKey: &CStr =
158    unsafe { CStr::from_bytes_with_nul_unchecked(b"LocationID\0") };
159/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddeviceusagepairskey?language=objc)
160pub const kIOHIDDeviceUsagePairsKey: &CStr =
161    unsafe { CStr::from_bytes_with_nul_unchecked(b"DeviceUsagePairs\0") };
162/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddeviceusagekey?language=objc)
163pub const kIOHIDDeviceUsageKey: &CStr =
164    unsafe { CStr::from_bytes_with_nul_unchecked(b"DeviceUsage\0") };
165/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddeviceusagepagekey?language=objc)
166pub const kIOHIDDeviceUsagePageKey: &CStr =
167    unsafe { CStr::from_bytes_with_nul_unchecked(b"DeviceUsagePage\0") };
168/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidprimaryusagekey?language=objc)
169pub const kIOHIDPrimaryUsageKey: &CStr =
170    unsafe { CStr::from_bytes_with_nul_unchecked(b"PrimaryUsage\0") };
171/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidprimaryusagepagekey?language=objc)
172pub const kIOHIDPrimaryUsagePageKey: &CStr =
173    unsafe { CStr::from_bytes_with_nul_unchecked(b"PrimaryUsagePage\0") };
174/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmaxinputreportsizekey?language=objc)
175pub const kIOHIDMaxInputReportSizeKey: &CStr =
176    unsafe { CStr::from_bytes_with_nul_unchecked(b"MaxInputReportSize\0") };
177/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmaxoutputreportsizekey?language=objc)
178pub const kIOHIDMaxOutputReportSizeKey: &CStr =
179    unsafe { CStr::from_bytes_with_nul_unchecked(b"MaxOutputReportSize\0") };
180/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmaxfeaturereportsizekey?language=objc)
181pub const kIOHIDMaxFeatureReportSizeKey: &CStr =
182    unsafe { CStr::from_bytes_with_nul_unchecked(b"MaxFeatureReportSize\0") };
183/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidreportintervalkey?language=objc)
184pub const kIOHIDReportIntervalKey: &CStr =
185    unsafe { CStr::from_bytes_with_nul_unchecked(b"ReportInterval\0") };
186/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidbatchintervalkey?language=objc)
187pub const kIOHIDBatchIntervalKey: &CStr =
188    unsafe { CStr::from_bytes_with_nul_unchecked(b"BatchInterval\0") };
189/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidrequesttimeoutkey?language=objc)
190pub const kIOHIDRequestTimeoutKey: &CStr =
191    unsafe { CStr::from_bytes_with_nul_unchecked(b"RequestTimeout\0") };
192/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidreportdescriptorkey?language=objc)
193pub const kIOHIDReportDescriptorKey: &CStr =
194    unsafe { CStr::from_bytes_with_nul_unchecked(b"ReportDescriptor\0") };
195/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidbuiltinkey?language=objc)
196pub const kIOHIDBuiltInKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Built-In\0") };
197/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidphysicaldeviceuniqueidkey?language=objc)
198pub const kIOHIDPhysicalDeviceUniqueIDKey: &CStr =
199    unsafe { CStr::from_bytes_with_nul_unchecked(b"PhysicalDeviceUniqueID\0") };
200/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddeviceaccessentitlementkey?language=objc)
201pub const kIOHIDDeviceAccessEntitlementKey: &CStr =
202    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDDeviceAccessEntitlement\0") };
203/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddevicekey?language=objc)
204pub const kIOHIDDeviceKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"IOHIDDevice\0") };
205/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidvendoridsourcekey?language=objc)
206pub const kIOHIDVendorIDSourceKey: &CStr =
207    unsafe { CStr::from_bytes_with_nul_unchecked(b"VendorIDSource\0") };
208/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidstandardtypekey?language=objc)
209pub const kIOHIDStandardTypeKey: &CStr =
210    unsafe { CStr::from_bytes_with_nul_unchecked(b"StandardType\0") };
211/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidsampleintervalkey?language=objc)
212pub const kIOHIDSampleIntervalKey: &CStr =
213    unsafe { CStr::from_bytes_with_nul_unchecked(b"SampleInterval\0") };
214/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidresetkey?language=objc)
215pub const kIOHIDResetKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Reset\0") };
216/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardlanguagekey?language=objc)
217pub const kIOHIDKeyboardLanguageKey: &CStr =
218    unsafe { CStr::from_bytes_with_nul_unchecked(b"KeyboardLanguage\0") };
219/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidalthandleridkey?language=objc)
220pub const kIOHIDAltHandlerIdKey: &CStr =
221    unsafe { CStr::from_bytes_with_nul_unchecked(b"alt_handler_id\0") };
222/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddisplayintegratedkey?language=objc)
223pub const kIOHIDDisplayIntegratedKey: &CStr =
224    unsafe { CStr::from_bytes_with_nul_unchecked(b"DisplayIntegrated\0") };
225/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidproductidmaskkey?language=objc)
226pub const kIOHIDProductIDMaskKey: &CStr =
227    unsafe { CStr::from_bytes_with_nul_unchecked(b"ProductIDMask\0") };
228/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidproductidarraykey?language=objc)
229pub const kIOHIDProductIDArrayKey: &CStr =
230    unsafe { CStr::from_bytes_with_nul_unchecked(b"ProductIDArray\0") };
231/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidpowerondelaynskey?language=objc)
232pub const kIOHIDPowerOnDelayNSKey: &CStr =
233    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDPowerOnDelayNS\0") };
234/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidcategorykey?language=objc)
235pub const kIOHIDCategoryKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Category\0") };
236/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmaxresponselatencykey?language=objc)
237pub const kIOHIDMaxResponseLatencyKey: &CStr =
238    unsafe { CStr::from_bytes_with_nul_unchecked(b"MaxResponseLatency\0") };
239/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiduniqueidkey?language=objc)
240pub const kIOHIDUniqueIDKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"UniqueID\0") };
241/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmodelnumberkey?language=objc)
242pub const kIOHIDModelNumberKey: &CStr =
243    unsafe { CStr::from_bytes_with_nul_unchecked(b"ModelNumber\0") };
244/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportusbvalue?language=objc)
245pub const kIOHIDTransportUSBValue: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"USB\0") };
246/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportbluetoothvalue?language=objc)
247pub const kIOHIDTransportBluetoothValue: &CStr =
248    unsafe { CStr::from_bytes_with_nul_unchecked(b"Bluetooth\0") };
249/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportbluetoothlowenergyvalue?language=objc)
250pub const kIOHIDTransportBluetoothLowEnergyValue: &CStr =
251    unsafe { CStr::from_bytes_with_nul_unchecked(b"BluetoothLowEnergy\0") };
252/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportaidbvalue?language=objc)
253pub const kIOHIDTransportAIDBValue: &CStr =
254    unsafe { CStr::from_bytes_with_nul_unchecked(b"AID\0") };
255/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransporti2cvalue?language=objc)
256pub const kIOHIDTransportI2CValue: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"I2C\0") };
257/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportspivalue?language=objc)
258pub const kIOHIDTransportSPIValue: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"SPI\0") };
259/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportserialvalue?language=objc)
260pub const kIOHIDTransportSerialValue: &CStr =
261    unsafe { CStr::from_bytes_with_nul_unchecked(b"Serial\0") };
262/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportiapvalue?language=objc)
263pub const kIOHIDTransportIAPValue: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"iAP\0") };
264/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportairplayvalue?language=objc)
265pub const kIOHIDTransportAirPlayValue: &CStr =
266    unsafe { CStr::from_bytes_with_nul_unchecked(b"AirPlay\0") };
267/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportspuvalue?language=objc)
268pub const kIOHIDTransportSPUValue: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"SPU\0") };
269/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportbtaacpvalue?language=objc)
270pub const kIOHIDTransportBTAACPValue: &CStr =
271    unsafe { CStr::from_bytes_with_nul_unchecked(b"BT-AACP\0") };
272/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransportfifovalue?language=objc)
273pub const kIOHIDTransportFIFOValue: &CStr =
274    unsafe { CStr::from_bytes_with_nul_unchecked(b"FIFO\0") };
275/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidcategoryautomotivevalue?language=objc)
276pub const kIOHIDCategoryAutomotiveValue: &CStr =
277    unsafe { CStr::from_bytes_with_nul_unchecked(b"Automotive\0") };
278/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementkey?language=objc)
279pub const kIOHIDElementKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Elements\0") };
280/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcookiekey?language=objc)
281pub const kIOHIDElementCookieKey: &CStr =
282    unsafe { CStr::from_bytes_with_nul_unchecked(b"ElementCookie\0") };
283/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementtypekey?language=objc)
284pub const kIOHIDElementTypeKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Type\0") };
285/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcollectiontypekey?language=objc)
286pub const kIOHIDElementCollectionTypeKey: &CStr =
287    unsafe { CStr::from_bytes_with_nul_unchecked(b"CollectionType\0") };
288/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementusagekey?language=objc)
289pub const kIOHIDElementUsageKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Usage\0") };
290/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementusagepagekey?language=objc)
291pub const kIOHIDElementUsagePageKey: &CStr =
292    unsafe { CStr::from_bytes_with_nul_unchecked(b"UsagePage\0") };
293/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementminkey?language=objc)
294pub const kIOHIDElementMinKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Min\0") };
295/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementmaxkey?language=objc)
296pub const kIOHIDElementMaxKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Max\0") };
297/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementscaledminkey?language=objc)
298pub const kIOHIDElementScaledMinKey: &CStr =
299    unsafe { CStr::from_bytes_with_nul_unchecked(b"ScaledMin\0") };
300/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementscaledmaxkey?language=objc)
301pub const kIOHIDElementScaledMaxKey: &CStr =
302    unsafe { CStr::from_bytes_with_nul_unchecked(b"ScaledMax\0") };
303/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementsizekey?language=objc)
304pub const kIOHIDElementSizeKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Size\0") };
305/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementreportsizekey?language=objc)
306pub const kIOHIDElementReportSizeKey: &CStr =
307    unsafe { CStr::from_bytes_with_nul_unchecked(b"ReportSize\0") };
308/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementreportcountkey?language=objc)
309pub const kIOHIDElementReportCountKey: &CStr =
310    unsafe { CStr::from_bytes_with_nul_unchecked(b"ReportCount\0") };
311/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementreportidkey?language=objc)
312pub const kIOHIDElementReportIDKey: &CStr =
313    unsafe { CStr::from_bytes_with_nul_unchecked(b"ReportID\0") };
314/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementisarraykey?language=objc)
315pub const kIOHIDElementIsArrayKey: &CStr =
316    unsafe { CStr::from_bytes_with_nul_unchecked(b"IsArray\0") };
317/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementisrelativekey?language=objc)
318pub const kIOHIDElementIsRelativeKey: &CStr =
319    unsafe { CStr::from_bytes_with_nul_unchecked(b"IsRelative\0") };
320/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementiswrappingkey?language=objc)
321pub const kIOHIDElementIsWrappingKey: &CStr =
322    unsafe { CStr::from_bytes_with_nul_unchecked(b"IsWrapping\0") };
323/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementisnonlinearkey?language=objc)
324pub const kIOHIDElementIsNonLinearKey: &CStr =
325    unsafe { CStr::from_bytes_with_nul_unchecked(b"IsNonLinear\0") };
326/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementhaspreferredstatekey?language=objc)
327pub const kIOHIDElementHasPreferredStateKey: &CStr =
328    unsafe { CStr::from_bytes_with_nul_unchecked(b"HasPreferredState\0") };
329/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementhasnullstatekey?language=objc)
330pub const kIOHIDElementHasNullStateKey: &CStr =
331    unsafe { CStr::from_bytes_with_nul_unchecked(b"HasNullState\0") };
332/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagskey?language=objc)
333pub const kIOHIDElementFlagsKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Flags\0") };
334/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementunitkey?language=objc)
335pub const kIOHIDElementUnitKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Unit\0") };
336/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementunitexponentkey?language=objc)
337pub const kIOHIDElementUnitExponentKey: &CStr =
338    unsafe { CStr::from_bytes_with_nul_unchecked(b"UnitExponent\0") };
339/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementnamekey?language=objc)
340pub const kIOHIDElementNameKey: &CStr = unsafe { CStr::from_bytes_with_nul_unchecked(b"Name\0") };
341/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementvaluelocationkey?language=objc)
342pub const kIOHIDElementValueLocationKey: &CStr =
343    unsafe { CStr::from_bytes_with_nul_unchecked(b"ValueLocation\0") };
344/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementduplicateindexkey?language=objc)
345pub const kIOHIDElementDuplicateIndexKey: &CStr =
346    unsafe { CStr::from_bytes_with_nul_unchecked(b"DuplicateIndex\0") };
347/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementparentcollectionkey?language=objc)
348pub const kIOHIDElementParentCollectionKey: &CStr =
349    unsafe { CStr::from_bytes_with_nul_unchecked(b"ParentCollection\0") };
350/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementvariablesizekey?language=objc)
351pub const kIOHIDElementVariableSizeKey: &CStr =
352    unsafe { CStr::from_bytes_with_nul_unchecked(b"VariableSize\0") };
353/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementvendorspecifickey?language=objc)
354pub const kIOHIDElementVendorSpecificKey: &CStr =
355    unsafe { CStr::from_bytes_with_nul_unchecked(b"VendorSpecific\0") };
356/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcookieminkey?language=objc)
357pub const kIOHIDElementCookieMinKey: &CStr =
358    unsafe { CStr::from_bytes_with_nul_unchecked(b"ElementCookieMin\0") };
359/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcookiemaxkey?language=objc)
360pub const kIOHIDElementCookieMaxKey: &CStr =
361    unsafe { CStr::from_bytes_with_nul_unchecked(b"ElementCookieMax\0") };
362/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementusageminkey?language=objc)
363pub const kIOHIDElementUsageMinKey: &CStr =
364    unsafe { CStr::from_bytes_with_nul_unchecked(b"UsageMin\0") };
365/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementusagemaxkey?language=objc)
366pub const kIOHIDElementUsageMaxKey: &CStr =
367    unsafe { CStr::from_bytes_with_nul_unchecked(b"UsageMax\0") };
368/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcalibrationminkey?language=objc)
369pub const kIOHIDElementCalibrationMinKey: &CStr =
370    unsafe { CStr::from_bytes_with_nul_unchecked(b"CalibrationMin\0") };
371/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcalibrationmaxkey?language=objc)
372pub const kIOHIDElementCalibrationMaxKey: &CStr =
373    unsafe { CStr::from_bytes_with_nul_unchecked(b"CalibrationMax\0") };
374/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcalibrationsaturationminkey?language=objc)
375pub const kIOHIDElementCalibrationSaturationMinKey: &CStr =
376    unsafe { CStr::from_bytes_with_nul_unchecked(b"CalibrationSaturationMin\0") };
377/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcalibrationsaturationmaxkey?language=objc)
378pub const kIOHIDElementCalibrationSaturationMaxKey: &CStr =
379    unsafe { CStr::from_bytes_with_nul_unchecked(b"CalibrationSaturationMax\0") };
380/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcalibrationdeadzoneminkey?language=objc)
381pub const kIOHIDElementCalibrationDeadZoneMinKey: &CStr =
382    unsafe { CStr::from_bytes_with_nul_unchecked(b"CalibrationDeadZoneMin\0") };
383/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcalibrationdeadzonemaxkey?language=objc)
384pub const kIOHIDElementCalibrationDeadZoneMaxKey: &CStr =
385    unsafe { CStr::from_bytes_with_nul_unchecked(b"CalibrationDeadZoneMax\0") };
386/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementcalibrationgranularitykey?language=objc)
387pub const kIOHIDElementCalibrationGranularityKey: &CStr =
388    unsafe { CStr::from_bytes_with_nul_unchecked(b"CalibrationGranularity\0") };
389/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardsupportsesckey?language=objc)
390pub const kIOHIDKeyboardSupportsEscKey: &CStr =
391    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDKeyboardSupportsEscKey\0") };
392/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardsupportsdonotdisturbkey?language=objc)
393pub const kIOHIDKeyboardSupportsDoNotDisturbKey: &CStr =
394    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDKeyboardSupportsDoNotDisturbKey\0") };
395/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddigitizergesturecharacterstatekey?language=objc)
396pub const kIOHIDDigitizerGestureCharacterStateKey: &CStr =
397    unsafe { CStr::from_bytes_with_nul_unchecked(b"DigitizerCharacterGestureState\0") };
398/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardcapslockdelay?language=objc)
399pub const kIOHIDKeyboardCapsLockDelay: &CStr =
400    unsafe { CStr::from_bytes_with_nul_unchecked(b"CapsLockDelay\0") };
401/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardejectdelay?language=objc)
402pub const kIOHIDKeyboardEjectDelay: &CStr =
403    unsafe { CStr::from_bytes_with_nul_unchecked(b"EjectDelay\0") };
404/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kfnfunctionusagemapkey?language=objc)
405pub const kFnFunctionUsageMapKey: &CStr =
406    unsafe { CStr::from_bytes_with_nul_unchecked(b"FnFunctionUsageMap\0") };
407/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kfnkeyboardusagemapkey?language=objc)
408pub const kFnKeyboardUsageMapKey: &CStr =
409    unsafe { CStr::from_bytes_with_nul_unchecked(b"FnKeyboardUsageMap\0") };
410/// [Apple's documentation](https://developer.apple.com/documentation/iokit/knumlockkeyboardusagemapkey?language=objc)
411pub const kNumLockKeyboardUsageMapKey: &CStr =
412    unsafe { CStr::from_bytes_with_nul_unchecked(b"NumLockKeyboardUsageMap\0") };
413/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kkeyboardusagemapkey?language=objc)
414pub const kKeyboardUsageMapKey: &CStr =
415    unsafe { CStr::from_bytes_with_nul_unchecked(b"KeyboardUsageMap\0") };
416/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddeviceopenedbyeventsystemkey?language=objc)
417pub const kIOHIDDeviceOpenedByEventSystemKey: &CStr =
418    unsafe { CStr::from_bytes_with_nul_unchecked(b"DeviceOpenedByEventSystem\0") };
419/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddevicesuspendkey?language=objc)
420pub const kIOHIDDeviceSuspendKey: &CStr =
421    unsafe { CStr::from_bytes_with_nul_unchecked(b"IOHIDDeviceSuspend\0") };
422/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidmaxreportbuffercountkey?language=objc)
423pub const kIOHIDMaxReportBufferCountKey: &CStr =
424    unsafe { CStr::from_bytes_with_nul_unchecked(b"MaxReportBufferCount\0") };
425/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidreportbufferentrysizekey?language=objc)
426pub const kIOHIDReportBufferEntrySizeKey: &CStr =
427    unsafe { CStr::from_bytes_with_nul_unchecked(b"ReportBufferEntrySize\0") };
428/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidsensorpropertyreportintervalkey?language=objc)
429pub const kIOHIDSensorPropertyReportIntervalKey: &CStr = kIOHIDReportIntervalKey;
430/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidsensorpropertysampleintervalkey?language=objc)
431pub const kIOHIDSensorPropertySampleIntervalKey: &CStr = kIOHIDSampleIntervalKey;
432/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidsensorpropertybatchintervalkey?language=objc)
433pub const kIOHIDSensorPropertyBatchIntervalKey: &CStr = kIOHIDBatchIntervalKey;
434/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidsensorpropertyreportlatencykey?language=objc)
435pub const kIOHIDSensorPropertyReportLatencyKey: &CStr = kIOHIDSensorPropertyBatchIntervalKey;
436/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidsensorpropertymaxfifoeventskey?language=objc)
437pub const kIOHIDSensorPropertyMaxFIFOEventsKey: &CStr =
438    unsafe { CStr::from_bytes_with_nul_unchecked(b"MaxFIFOEvents\0") };
439/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohiddigitizersurfaceswitchkey?language=objc)
440pub const kIOHIDDigitizerSurfaceSwitchKey: &CStr =
441    unsafe { CStr::from_bytes_with_nul_unchecked(b"DigitizerSurfaceSwitch\0") };
442/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardlayoutvaluekey?language=objc)
443pub const kIOHIDKeyboardLayoutValueKey: &CStr =
444    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDKeyboardLayoutValue\0") };
445/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidpointeraccelerationalgorithmkey?language=objc)
446pub const kIOHIDPointerAccelerationAlgorithmKey: &CStr =
447    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDPointerAccelerationAlgorithm\0") };
448/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidscrollaccelerationalgorithmkey?language=objc)
449pub const kIOHIDScrollAccelerationAlgorithmKey: &CStr =
450    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDScrollAccelerationAlgorithm\0") };
451/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidpointeraccelerationminimumkey?language=objc)
452pub const kIOHIDPointerAccelerationMinimumKey: &CStr =
453    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDPointerAccelerationMinimum\0") };
454/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidprimarytrackpadcanbedisabledkey?language=objc)
455pub const kIOHIDPrimaryTrackpadCanBeDisabledKey: &CStr =
456    unsafe { CStr::from_bytes_with_nul_unchecked(b"PrimaryTrackpadCanBeDisabled\0") };
457/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardfunctionkeycountkey?language=objc)
458pub const kIOHIDKeyboardFunctionKeyCountKey: &CStr =
459    unsafe { CStr::from_bytes_with_nul_unchecked(b"HIDKeyboardFunctionKeyCount\0") };
460/// Describes different type of HID reports.
461///
462/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidreporttype?language=objc)
463#[repr(transparent)]
464#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
465pub struct IOHIDReportType(pub c_uint);
466impl IOHIDReportType {
467    #[doc(alias = "kIOHIDReportTypeInput")]
468    pub const Input: Self = Self(0);
469    #[doc(alias = "kIOHIDReportTypeOutput")]
470    pub const Output: Self = Self(1);
471    #[doc(alias = "kIOHIDReportTypeFeature")]
472    pub const Feature: Self = Self(2);
473    #[doc(alias = "kIOHIDReportTypeCount")]
474    pub const Count: Self = Self(3);
475}
476
477#[cfg(feature = "objc2")]
478unsafe impl Encode for IOHIDReportType {
479    const ENCODING: Encoding = c_uint::ENCODING;
480}
481
482#[cfg(feature = "objc2")]
483unsafe impl RefEncode for IOHIDReportType {
484    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
485}
486
487/// Commit direction passed in to the commit() function of an IOHIDElement.
488///
489/// Field: kIOHIDElementCommitDirectionIn
490/// Passing in kIOHIDElementCommitDirectionIn will issue a getReport call to the
491/// device, and the element  will be updated with the value retrieved by the
492/// device. The value can be accessed via the getValue() or getDataValue()
493/// functions.
494///
495/// Field: kIOHIDElementCommitDirectionOut
496/// Passing in kIOHIDElementCommitDirectionOut will issue a setReport call to the
497/// device. Before issuing this call, the desired value should be set on the
498/// element with the setValue() or setDataValue() functions.
499///
500/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidelementcommitdirection?language=objc)
501#[repr(transparent)]
502#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
503pub struct IOHIDElementCommitDirection(pub c_uint);
504impl IOHIDElementCommitDirection {
505    #[doc(alias = "kIOHIDElementCommitDirectionIn")]
506    pub const In: Self = Self(0);
507    #[doc(alias = "kIOHIDElementCommitDirectionOut")]
508    pub const Out: Self = Self(1);
509}
510
511#[cfg(feature = "objc2")]
512unsafe impl Encode for IOHIDElementCommitDirection {
513    const ENCODING: Encoding = c_uint::ENCODING;
514}
515
516#[cfg(feature = "objc2")]
517unsafe impl RefEncode for IOHIDElementCommitDirection {
518    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
519}
520
521/// Abstract data type used as a unique identifier for an element.
522///
523/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidelementcookie?language=objc)
524pub type IOHIDElementCookie = u32;
525
526/// Describes different types of HID elements.
527///
528///
529/// Used by the IOHIDFamily to identify the type of element processed.
530/// Represented by the key kIOHIDElementTypeKey in the dictionary describing the
531/// element.
532///
533/// Field: kIOHIDElementTypeInput_Misc
534/// Misc input data field or varying size.
535///
536/// Field: kIOHIDElementTypeInput_Button
537/// One bit input data field.
538///
539/// Field: kIOHIDElementTypeInput_Axis
540/// Input data field used to represent an axis.
541///
542/// Field: kIOHIDElementTypeInput_ScanCodes
543/// Input data field used to represent a scan code or usage selector.
544///
545/// Field: kIOHIDElementTypeInput_NULL
546/// Input data field used to represent the end of an input report when receiving
547/// input elements.
548///
549/// Field: kIOHIDElementTypeOutput
550/// Used to represent an output data field in a report.
551///
552/// Field: kIOHIDElementTypeFeature
553/// Describes input and output elements not intended for consumption by the end
554/// user.
555///
556/// Field: kIOHIDElementTypeCollection
557/// Element used to identify a relationship between two or more elements.
558///
559/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidelementtype?language=objc)
560#[repr(transparent)]
561#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
562pub struct IOHIDElementType(pub c_uint);
563impl IOHIDElementType {
564    #[doc(alias = "kIOHIDElementTypeInput_Misc")]
565    pub const Input_Misc: Self = Self(1);
566    #[doc(alias = "kIOHIDElementTypeInput_Button")]
567    pub const Input_Button: Self = Self(2);
568    #[doc(alias = "kIOHIDElementTypeInput_Axis")]
569    pub const Input_Axis: Self = Self(3);
570    #[doc(alias = "kIOHIDElementTypeInput_ScanCodes")]
571    pub const Input_ScanCodes: Self = Self(4);
572    #[doc(alias = "kIOHIDElementTypeInput_NULL")]
573    pub const Input_NULL: Self = Self(5);
574    #[doc(alias = "kIOHIDElementTypeOutput")]
575    pub const Output: Self = Self(129);
576    #[doc(alias = "kIOHIDElementTypeFeature")]
577    pub const Feature: Self = Self(257);
578    #[doc(alias = "kIOHIDElementTypeCollection")]
579    pub const Collection: Self = Self(513);
580}
581
582#[cfg(feature = "objc2")]
583unsafe impl Encode for IOHIDElementType {
584    const ENCODING: Encoding = c_uint::ENCODING;
585}
586
587#[cfg(feature = "objc2")]
588unsafe impl RefEncode for IOHIDElementType {
589    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
590}
591
592/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagsconstantmask?language=objc)
593pub const kIOHIDElementFlagsConstantMask: c_uint = 0x0001;
594/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagsvariablemask?language=objc)
595pub const kIOHIDElementFlagsVariableMask: c_uint = 0x0002;
596/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagsrelativemask?language=objc)
597pub const kIOHIDElementFlagsRelativeMask: c_uint = 0x0004;
598/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagswrapmask?language=objc)
599pub const kIOHIDElementFlagsWrapMask: c_uint = 0x0008;
600/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagsnonlinearmask?language=objc)
601pub const kIOHIDElementFlagsNonLinearMask: c_uint = 0x0010;
602/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagsnopreferredmask?language=objc)
603pub const kIOHIDElementFlagsNoPreferredMask: c_uint = 0x0020;
604/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagsnullstatemask?language=objc)
605pub const kIOHIDElementFlagsNullStateMask: c_uint = 0x0040;
606/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagsvolativemask?language=objc)
607pub const kIOHIDElementFlagsVolativeMask: c_uint = 0x0080;
608/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidelementflagsbufferedbytemask?language=objc)
609pub const kIOHIDElementFlagsBufferedByteMask: c_uint = 0x0100;
610
611/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidelementflags?language=objc)
612pub type IOHIDElementFlags = u32;
613
614/// Describes different types of HID collections.
615///
616///
617/// Collections identify a relationship between two or more elements.
618///
619/// Field: kIOHIDElementCollectionTypePhysical
620/// Used for a set of data items that represent data points collected at one
621/// geometric point.
622///
623/// Field: kIOHIDElementCollectionTypeApplication
624/// Identifies item groups serving different purposes in a single device.
625///
626/// Field: kIOHIDElementCollectionTypeLogical
627/// Used when a set of data items form a composite data structure.
628///
629/// Field: kIOHIDElementCollectionTypeReport
630/// Wraps all the fields in a report.
631///
632/// Field: kIOHIDElementCollectionTypeNamedArray
633/// Contains an array of selector usages.
634///
635/// Field: kIOHIDElementCollectionTypeUsageSwitch
636/// Modifies the meaning of the usage it contains.
637///
638/// Field: kIOHIDElementCollectionTypeUsageModifier
639/// Modifies the meaning of the usage attached to the encompassing collection.
640///
641/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidelementcollectiontype?language=objc)
642#[repr(transparent)]
643#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
644pub struct IOHIDElementCollectionType(pub c_uint);
645impl IOHIDElementCollectionType {
646    #[doc(alias = "kIOHIDElementCollectionTypePhysical")]
647    pub const Physical: Self = Self(0x00);
648    #[doc(alias = "kIOHIDElementCollectionTypeApplication")]
649    pub const Application: Self = Self(1);
650    #[doc(alias = "kIOHIDElementCollectionTypeLogical")]
651    pub const Logical: Self = Self(2);
652    #[doc(alias = "kIOHIDElementCollectionTypeReport")]
653    pub const Report: Self = Self(3);
654    #[doc(alias = "kIOHIDElementCollectionTypeNamedArray")]
655    pub const NamedArray: Self = Self(4);
656    #[doc(alias = "kIOHIDElementCollectionTypeUsageSwitch")]
657    pub const UsageSwitch: Self = Self(5);
658    #[doc(alias = "kIOHIDElementCollectionTypeUsageModifier")]
659    pub const UsageModifier: Self = Self(6);
660}
661
662#[cfg(feature = "objc2")]
663unsafe impl Encode for IOHIDElementCollectionType {
664    const ENCODING: Encoding = c_uint::ENCODING;
665}
666
667#[cfg(feature = "objc2")]
668unsafe impl RefEncode for IOHIDElementCollectionType {
669    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
670}
671
672/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidvaluescaletypecalibrated?language=objc)
673pub const kIOHIDValueScaleTypeCalibrated: c_uint = 0;
674/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidvaluescaletypephysical?language=objc)
675pub const kIOHIDValueScaleTypePhysical: c_uint = 1;
676/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidvaluescaletypeexponent?language=objc)
677pub const kIOHIDValueScaleTypeExponent: c_uint = 2;
678
679/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidvaluescaletype?language=objc)
680pub type IOHIDValueScaleType = u32;
681
682/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidvalueoptionsflagrelativesimple?language=objc)
683pub const kIOHIDValueOptionsFlagRelativeSimple: c_uint = 1 << 0;
684/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidvalueoptionsflagprevious?language=objc)
685pub const kIOHIDValueOptionsFlagPrevious: c_uint = 1 << 1;
686/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidvalueoptionsupdateelementvalues?language=objc)
687pub const kIOHIDValueOptionsUpdateElementValues: c_uint = 1 << 2;
688
689/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidvalueoptions?language=objc)
690pub type IOHIDValueOptions = u32;
691
692/// Function called when set/get report completes
693///
694///
695/// Parameter `target`: The target specified in the IOHIDCompletion struct.
696///
697///
698/// Parameter `parameter`: The parameter specified in the IOHIDCompletion struct.
699///
700///
701/// Parameter `status`: Completion status
702///
703/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidcompletionaction?language=objc)
704pub type IOHIDCompletionAction =
705    Option<unsafe extern "C-unwind" fn(*mut c_void, *mut c_void, IOReturn, u32)>;
706
707/// Struct specifying action to perform when set/get report completes.
708///
709///
710/// The target to pass to the action function.
711///
712///
713/// The function to call.
714///
715///
716/// The parameter to pass to the action function.
717///
718/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidcompletion?language=objc)
719#[repr(C)]
720#[derive(Clone, Copy, Debug, PartialEq)]
721pub struct IOHIDCompletion {
722    pub target: *mut c_void,
723    pub action: IOHIDCompletionAction,
724    pub parameter: *mut c_void,
725}
726
727#[cfg(feature = "objc2")]
728unsafe impl Encode for IOHIDCompletion {
729    const ENCODING: Encoding = Encoding::Struct(
730        "IOHIDCompletion",
731        &[
732            <*mut c_void>::ENCODING,
733            <IOHIDCompletionAction>::ENCODING,
734            <*mut c_void>::ENCODING,
735        ],
736    );
737}
738
739#[cfg(feature = "objc2")]
740unsafe impl RefEncode for IOHIDCompletion {
741    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
742}
743
744/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidreportoptionnotinterrupt?language=objc)
745pub const kIOHIDReportOptionNotInterrupt: c_uint = 0x100;
746/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidreportoptionvariablesize?language=objc)
747pub const kIOHIDReportOptionVariableSize: c_uint = 0x200;
748
749/// Type of the report command for DriverKit driver
750///
751/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/hidreportcommandtype?language=objc)
752#[repr(transparent)]
753#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
754pub struct HIDReportCommandType(pub c_uint);
755impl HIDReportCommandType {
756    #[doc(alias = "kIOHIDReportCommandSetReport")]
757    pub const IOHIDReportCommandSetReport: Self = Self(0);
758    #[doc(alias = "kIOHIDReportCommandGetReport")]
759    pub const IOHIDReportCommandGetReport: Self = Self(1);
760}
761
762#[cfg(feature = "objc2")]
763unsafe impl Encode for HIDReportCommandType {
764    const ENCODING: Encoding = c_uint::ENCODING;
765}
766
767#[cfg(feature = "objc2")]
768unsafe impl RefEncode for HIDReportCommandType {
769    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
770}
771
772/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidoptionstypenone?language=objc)
773pub const kIOHIDOptionsTypeNone: c_uint = 0x00;
774/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidoptionstypeseizedevice?language=objc)
775pub const kIOHIDOptionsTypeSeizeDevice: c_uint = 0x01;
776/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidoptionstypemaskprivate?language=objc)
777pub const kIOHIDOptionsTypeMaskPrivate: c_uint = 0xff0000;
778
779/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidoptionstype?language=objc)
780pub type IOHIDOptionsType = u32;
781
782/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidqueueoptionstypenone?language=objc)
783pub const kIOHIDQueueOptionsTypeNone: c_uint = 0x00;
784/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidqueueoptionstypeenqueueall?language=objc)
785pub const kIOHIDQueueOptionsTypeEnqueueAll: c_uint = 0x01;
786
787/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidqueueoptionstype?language=objc)
788pub type IOHIDQueueOptionsType = u32;
789
790/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidstandardtypeansi?language=objc)
791pub const kIOHIDStandardTypeANSI: c_uint = 0x0;
792/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidstandardtypeiso?language=objc)
793pub const kIOHIDStandardTypeISO: c_uint = 0x1;
794/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidstandardtypejis?language=objc)
795pub const kIOHIDStandardTypeJIS: c_uint = 0x2;
796/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidstandardtypeunspecified?language=objc)
797pub const kIOHIDStandardTypeUnspecified: c_uint = 0xFFFFFFFF;
798
799/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidstandardtype?language=objc)
800pub type IOHIDStandardType = u32;
801
802/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardphysicallayouttypeunknown?language=objc)
803pub const kIOHIDKeyboardPhysicalLayoutTypeUnknown: c_uint = 0x0;
804/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardphysicallayouttype101?language=objc)
805pub const kIOHIDKeyboardPhysicalLayoutType101: c_uint = 0x1;
806/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardphysicallayouttype103?language=objc)
807pub const kIOHIDKeyboardPhysicalLayoutType103: c_uint = 0x2;
808/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardphysicallayouttype102?language=objc)
809pub const kIOHIDKeyboardPhysicalLayoutType102: c_uint = 0x3;
810/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardphysicallayouttype104?language=objc)
811pub const kIOHIDKeyboardPhysicalLayoutType104: c_uint = 0x4;
812/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardphysicallayouttype106?language=objc)
813pub const kIOHIDKeyboardPhysicalLayoutType106: c_uint = 0x5;
814/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidkeyboardphysicallayouttypevendor?language=objc)
815pub const kIOHIDKeyboardPhysicalLayoutTypeVendor: c_uint = 0x6;
816
817/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidkeyboardphysicallayouttype?language=objc)
818pub type IOHIDKeyboardPhysicalLayoutType = u32;
819
820/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidaccelerationalgorithmtypetable?language=objc)
821pub const kIOHIDAccelerationAlgorithmTypeTable: c_uint = 0;
822/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidaccelerationalgorithmtypeparametric?language=objc)
823pub const kIOHIDAccelerationAlgorithmTypeParametric: c_uint = 1;
824/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidaccelerationalgorithmtypedefault?language=objc)
825pub const kIOHIDAccelerationAlgorithmTypeDefault: c_uint = 2;
826
827/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidaccelerationalgorithmtype?language=objc)
828pub type IOHIDAccelerationAlgorithmType = u8;
829
830/// This is the type of a reference to the IOHIDDevice.
831///
832/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddevice?language=objc)
833#[repr(C)]
834pub struct IOHIDDevice {
835    inner: [u8; 0],
836    _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
837}
838
839cf_type!(
840    unsafe impl IOHIDDevice {}
841);
842#[cfg(feature = "objc2")]
843cf_objc2_type!(
844    unsafe impl RefEncode<"__IOHIDDevice"> for IOHIDDevice {}
845);
846
847/// This is the type of a reference to the IOHIDElement.
848///
849/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidelement?language=objc)
850#[repr(C)]
851pub struct IOHIDElement {
852    inner: [u8; 0],
853    _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
854}
855
856cf_type!(
857    unsafe impl IOHIDElement {}
858);
859#[cfg(feature = "objc2")]
860cf_objc2_type!(
861    unsafe impl RefEncode<"__IOHIDElement"> for IOHIDElement {}
862);
863
864/// This is the type of a reference to the IOHIDValue.
865///
866/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidvalue?language=objc)
867#[repr(C)]
868pub struct IOHIDValue {
869    inner: [u8; 0],
870    _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
871}
872
873cf_type!(
874    unsafe impl IOHIDValue {}
875);
876#[cfg(feature = "objc2")]
877cf_objc2_type!(
878    unsafe impl RefEncode<"__IOHIDValue"> for IOHIDValue {}
879);
880
881/// Direction for an IOHIDDeviceTransactionInterface.
882///
883/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidtransactiondirectiontype?language=objc)
884// NS_ENUM
885#[repr(transparent)]
886#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
887pub struct IOHIDTransactionDirectionType(pub u32);
888impl IOHIDTransactionDirectionType {
889    #[doc(alias = "kIOHIDTransactionDirectionTypeInput")]
890    pub const Input: Self = Self(0);
891    #[doc(alias = "kIOHIDTransactionDirectionTypeOutput")]
892    pub const Output: Self = Self(1);
893}
894
895#[cfg(feature = "objc2")]
896unsafe impl Encode for IOHIDTransactionDirectionType {
897    const ENCODING: Encoding = u32::ENCODING;
898}
899
900#[cfg(feature = "objc2")]
901unsafe impl RefEncode for IOHIDTransactionDirectionType {
902    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
903}
904
905/// Options to be used in conjuntion with an IOHIDDeviceTransactionInterface.
906///
907/// IOHIDDeviceTransactionInterface of direction kIOHIDTransactionDirectionTypeOutput.
908///
909/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/kiohidtransactionoptiondefaultoutputvalue?language=objc)
910pub static kIOHIDTransactionOptionDefaultOutputValue: IOOptionBits = 0x0001;
911
912/// Type and arguments of callout C function that is used when a completion routine is called.
913///
914/// Parameter `context`: void * pointer to your data, often a pointer to an object.
915///
916/// Parameter `result`: Completion result of desired operation.
917///
918/// Parameter `sender`: Interface instance sending the completion routine.
919///
920/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidcallback?language=objc)
921pub type IOHIDCallback = Option<unsafe extern "C-unwind" fn(*mut c_void, IOReturn, *mut c_void)>;
922
923/// Type and arguments of callout C function that is used when a HID report completion routine is called.
924///
925/// Parameter `context`: void * pointer to your data, often a pointer to an object.
926///
927/// Parameter `result`: Completion result of desired operation.
928///
929/// Parameter `sender`: Interface instance sending the completion routine.
930///
931/// Parameter `type`: The type of the report that was completed.
932///
933/// Parameter `reportID`: The ID of the report that was completed.
934///
935/// Parameter `report`: Pointer to the buffer containing the contents of the report.
936///
937/// Parameter `reportLength`: Size of the buffer received upon completion.
938///
939/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidreportcallback?language=objc)
940pub type IOHIDReportCallback = Option<
941    unsafe extern "C-unwind" fn(
942        *mut c_void,
943        IOReturn,
944        *mut c_void,
945        IOHIDReportType,
946        u32,
947        NonNull<u8>,
948        CFIndex,
949    ),
950>;
951
952/// Type and arguments of callout C function that is used when a HID report completion routine is called.
953///
954/// Parameter `context`: void * pointer to your data, often a pointer to an object.
955///
956/// Parameter `result`: Completion result of desired operation.
957///
958/// Parameter `sender`: Interface instance sending the completion routine.
959///
960/// Parameter `type`: The type of the report that was completed.
961///
962/// Parameter `reportID`: The ID of the report that was completed.
963///
964/// Parameter `report`: Pointer to the buffer containing the contents of the report.
965///
966/// Parameter `reportLength`: Size of the buffer received upon completion.
967///
968/// Parameter `timeStamp`: The time at which the report arrived.
969///
970/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidreportwithtimestampcallback?language=objc)
971pub type IOHIDReportWithTimeStampCallback = Option<
972    unsafe extern "C-unwind" fn(
973        *mut c_void,
974        IOReturn,
975        *mut c_void,
976        IOHIDReportType,
977        u32,
978        NonNull<u8>,
979        CFIndex,
980        u64,
981    ),
982>;
983
984/// Type and arguments of callout C function that is used when an element value completion routine is called.
985///
986/// Parameter `context`: void * pointer to more data.
987///
988/// Parameter `result`: Completion result of desired operation.
989///
990/// Parameter `sender`: Interface instance sending the completion routine.
991///
992/// Parameter `value`: IOHIDValueRef containing the returned element value.
993///
994/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidvaluecallback?language=objc)
995pub type IOHIDValueCallback =
996    Option<unsafe extern "C-unwind" fn(*mut c_void, IOReturn, *mut c_void, NonNull<IOHIDValue>)>;
997
998/// Type and arguments of callout C function that is used when an element value completion routine is called.
999///
1000/// Parameter `context`: void * pointer to more data.
1001///
1002/// Parameter `result`: Completion result of desired operation.
1003///
1004/// Parameter `sender`: Interface instance sending the completion routine.
1005///
1006/// Parameter `multiple`: CFDictionaryRef containing the returned element key value pairs.
1007///
1008/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidvaluemultiplecallback?language=objc)
1009pub type IOHIDValueMultipleCallback =
1010    Option<unsafe extern "C-unwind" fn(*mut c_void, IOReturn, *mut c_void, NonNull<CFDictionary>)>;
1011
1012/// Type and arguments of callout C function that is used when a device routine is called.
1013///
1014/// Parameter `context`: void * pointer to more data.
1015///
1016/// Parameter `result`: Completion result of desired operation.
1017///
1018/// Parameter `device`: IOHIDDeviceRef containing the sending device.
1019///
1020/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddevicecallback?language=objc)
1021pub type IOHIDDeviceCallback =
1022    Option<unsafe extern "C-unwind" fn(*mut c_void, IOReturn, *mut c_void, NonNull<IOHIDDevice>)>;
1023
1024/// This is the type of a reference to the IOHIDQueue.
1025///
1026/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidqueue?language=objc)
1027#[repr(C)]
1028pub struct IOHIDQueue {
1029    inner: [u8; 0],
1030    _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
1031}
1032
1033cf_type!(
1034    unsafe impl IOHIDQueue {}
1035);
1036#[cfg(feature = "objc2")]
1037cf_objc2_type!(
1038    unsafe impl RefEncode<"__IOHIDQueue"> for IOHIDQueue {}
1039);
1040
1041unsafe impl ConcreteType for IOHIDQueue {
1042    /// Returns the type identifier of all IOHIDQueue instances.
1043    #[doc(alias = "IOHIDQueueGetTypeID")]
1044    #[inline]
1045    fn type_id() -> CFTypeID {
1046        extern "C-unwind" {
1047            fn IOHIDQueueGetTypeID() -> CFTypeID;
1048        }
1049        unsafe { IOHIDQueueGetTypeID() }
1050    }
1051}
1052
1053impl IOHIDQueue {
1054    /// Creates an IOHIDQueue object for the specified device.
1055    ///
1056    /// Take care in specifying an appropriate depth to prevent dropping
1057    /// events.
1058    ///
1059    /// Parameter `allocator`: Allocator to be used during creation.
1060    ///
1061    /// Parameter `device`: IOHIDDevice object
1062    ///
1063    /// Parameter `depth`: The number of values that can be handled by the queue.
1064    ///
1065    /// Parameter `options`: Reserved for future use.
1066    ///
1067    /// Returns: Returns a new IOHIDQueueRef.
1068    #[doc(alias = "IOHIDQueueCreate")]
1069    #[inline]
1070    pub unsafe fn new(
1071        allocator: Option<&CFAllocator>,
1072        device: &IOHIDDevice,
1073        depth: CFIndex,
1074        options: IOOptionBits,
1075    ) -> Option<CFRetained<IOHIDQueue>> {
1076        extern "C-unwind" {
1077            fn IOHIDQueueCreate(
1078                allocator: Option<&CFAllocator>,
1079                device: &IOHIDDevice,
1080                depth: CFIndex,
1081                options: IOOptionBits,
1082            ) -> Option<NonNull<IOHIDQueue>>;
1083        }
1084        let ret = unsafe { IOHIDQueueCreate(allocator, device, depth, options) };
1085        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1086    }
1087
1088    /// Obtain the device associated with the queue.
1089    ///
1090    /// Parameter `queue`: IOHIDQueue to be queried.
1091    ///
1092    /// Returns: Returns the a reference to the device.
1093    #[doc(alias = "IOHIDQueueGetDevice")]
1094    #[inline]
1095    pub unsafe fn device(self: &IOHIDQueue) -> CFRetained<IOHIDDevice> {
1096        extern "C-unwind" {
1097            fn IOHIDQueueGetDevice(queue: &IOHIDQueue) -> Option<NonNull<IOHIDDevice>>;
1098        }
1099        let ret = unsafe { IOHIDQueueGetDevice(self) };
1100        let ret =
1101            ret.expect("function was marked as returning non-null, but actually returned NULL");
1102        unsafe { CFRetained::retain(ret) }
1103    }
1104
1105    /// Obtain the depth of the queue.
1106    ///
1107    /// Parameter `queue`: IOHIDQueue to be queried.
1108    ///
1109    /// Returns: Returns the queue depth.
1110    #[doc(alias = "IOHIDQueueGetDepth")]
1111    #[inline]
1112    pub unsafe fn depth(self: &IOHIDQueue) -> CFIndex {
1113        extern "C-unwind" {
1114            fn IOHIDQueueGetDepth(queue: &IOHIDQueue) -> CFIndex;
1115        }
1116        unsafe { IOHIDQueueGetDepth(self) }
1117    }
1118
1119    /// Sets the depth of the queue.
1120    ///
1121    /// Set the appropriate depth value based on the number of elements
1122    /// contained in a queue.
1123    ///
1124    /// Parameter `queue`: IOHIDQueue object to be modified.
1125    ///
1126    /// Parameter `depth`: The new queue depth.
1127    #[doc(alias = "IOHIDQueueSetDepth")]
1128    #[inline]
1129    pub unsafe fn set_depth(self: &IOHIDQueue, depth: CFIndex) {
1130        extern "C-unwind" {
1131            fn IOHIDQueueSetDepth(queue: &IOHIDQueue, depth: CFIndex);
1132        }
1133        unsafe { IOHIDQueueSetDepth(self, depth) }
1134    }
1135
1136    /// Adds an element to the queue
1137    ///
1138    /// Parameter `queue`: IOHIDQueue object to be modified.
1139    ///
1140    /// Parameter `element`: Element to be added to the queue.
1141    #[doc(alias = "IOHIDQueueAddElement")]
1142    #[inline]
1143    pub unsafe fn add_element(self: &IOHIDQueue, element: &IOHIDElement) {
1144        extern "C-unwind" {
1145            fn IOHIDQueueAddElement(queue: &IOHIDQueue, element: &IOHIDElement);
1146        }
1147        unsafe { IOHIDQueueAddElement(self, element) }
1148    }
1149
1150    /// Removes an element from the queue
1151    ///
1152    /// Parameter `queue`: IOHIDQueue object to be modified.
1153    ///
1154    /// Parameter `element`: Element to be removed from the queue.
1155    #[doc(alias = "IOHIDQueueRemoveElement")]
1156    #[inline]
1157    pub unsafe fn remove_element(self: &IOHIDQueue, element: &IOHIDElement) {
1158        extern "C-unwind" {
1159            fn IOHIDQueueRemoveElement(queue: &IOHIDQueue, element: &IOHIDElement);
1160        }
1161        unsafe { IOHIDQueueRemoveElement(self, element) }
1162    }
1163
1164    /// Queries the queue to determine if elemement has been added.
1165    ///
1166    /// Parameter `queue`: IOHIDQueue object to be queried.
1167    ///
1168    /// Parameter `element`: Element to be queried.
1169    ///
1170    /// Returns: Returns true or false depending if element is present.
1171    #[doc(alias = "IOHIDQueueContainsElement")]
1172    #[inline]
1173    pub unsafe fn contains_element(self: &IOHIDQueue, element: &IOHIDElement) -> bool {
1174        extern "C-unwind" {
1175            fn IOHIDQueueContainsElement(queue: &IOHIDQueue, element: &IOHIDElement) -> Boolean;
1176        }
1177        let ret = unsafe { IOHIDQueueContainsElement(self, element) };
1178        ret != 0
1179    }
1180
1181    /// Starts element value delivery to the queue.
1182    ///
1183    /// When a dispatch queue is assocaited with the IOHIDQueue
1184    /// via IOHIDQueueSetDispatchQueue, the queue does not need
1185    /// to be explicity started, this will be done during activation
1186    /// when IOHIDQueueActivate is called.
1187    ///
1188    /// Parameter `queue`: IOHIDQueue object to be started.
1189    #[doc(alias = "IOHIDQueueStart")]
1190    #[inline]
1191    pub unsafe fn start(self: &IOHIDQueue) {
1192        extern "C-unwind" {
1193            fn IOHIDQueueStart(queue: &IOHIDQueue);
1194        }
1195        unsafe { IOHIDQueueStart(self) }
1196    }
1197
1198    /// Stops element value delivery to the queue.
1199    ///
1200    /// When a dispatch queue is assocaited with the IOHIDQueue
1201    /// via IOHIDQueueSetDispatchQueue, the queue does not need
1202    /// to be explicity stopped, this will be done during cancellation
1203    /// when IOHIDQueueCancel is called.
1204    ///
1205    /// Parameter `queue`: IOHIDQueue object to be stopped.
1206    #[doc(alias = "IOHIDQueueStop")]
1207    #[inline]
1208    pub unsafe fn stop(self: &IOHIDQueue) {
1209        extern "C-unwind" {
1210            fn IOHIDQueueStop(queue: &IOHIDQueue);
1211        }
1212        unsafe { IOHIDQueueStop(self) }
1213    }
1214
1215    /// Schedules queue with run loop.
1216    ///
1217    /// Formally associates queue with client's run loop. Scheduling
1218    /// this queue with the run loop is necessary before making
1219    /// use of any asynchronous APIs.
1220    ///
1221    /// Parameter `queue`: IOHIDQueue object to be modified.
1222    ///
1223    /// Parameter `runLoop`: RunLoop to be used when scheduling any asynchronous
1224    /// activity.
1225    ///
1226    /// Parameter `runLoopMode`: Run loop mode to be used when scheduling any
1227    /// asynchronous activity.
1228    #[doc(alias = "IOHIDQueueScheduleWithRunLoop")]
1229    #[inline]
1230    pub unsafe fn schedule_with_run_loop(
1231        self: &IOHIDQueue,
1232        run_loop: &CFRunLoop,
1233        run_loop_mode: &CFString,
1234    ) {
1235        extern "C-unwind" {
1236            fn IOHIDQueueScheduleWithRunLoop(
1237                queue: &IOHIDQueue,
1238                run_loop: &CFRunLoop,
1239                run_loop_mode: &CFString,
1240            );
1241        }
1242        unsafe { IOHIDQueueScheduleWithRunLoop(self, run_loop, run_loop_mode) }
1243    }
1244
1245    /// Unschedules queue with run loop.
1246    ///
1247    /// Formally disassociates queue with client's run loop.
1248    ///
1249    /// Parameter `queue`: IOHIDQueue object to be modified.
1250    ///
1251    /// Parameter `runLoop`: RunLoop to be used when scheduling any asynchronous
1252    /// activity.
1253    ///
1254    /// Parameter `runLoopMode`: Run loop mode to be used when scheduling any
1255    /// asynchronous activity.
1256    #[doc(alias = "IOHIDQueueUnscheduleFromRunLoop")]
1257    #[inline]
1258    pub unsafe fn unschedule_from_run_loop(
1259        self: &IOHIDQueue,
1260        run_loop: &CFRunLoop,
1261        run_loop_mode: &CFString,
1262    ) {
1263        extern "C-unwind" {
1264            fn IOHIDQueueUnscheduleFromRunLoop(
1265                queue: &IOHIDQueue,
1266                run_loop: &CFRunLoop,
1267                run_loop_mode: &CFString,
1268            );
1269        }
1270        unsafe { IOHIDQueueUnscheduleFromRunLoop(self, run_loop, run_loop_mode) }
1271    }
1272
1273    /// Sets the dispatch queue to be associated with the IOHIDQueue.
1274    /// This is necessary in order to receive asynchronous events from the kernel.
1275    ///
1276    ///
1277    /// An IOHIDQueue should not be associated with both a runloop and
1278    /// dispatch queue. A call to IOHIDQueueSetDispatchQueue should only be made once.
1279    ///
1280    /// After a dispatch queue is set, the IOHIDQueue must make a call to activate
1281    /// via IOHIDQueueActivate and cancel via IOHIDQueueCancel. All calls to "Register"
1282    /// functions should be done before activation and not after cancellation.
1283    ///
1284    ///
1285    /// Parameter `queue`: Reference to an IOHIDQueue
1286    ///
1287    ///
1288    /// Parameter `dispatchQueue`: The dispatch queue to which the event handler block will be submitted.
1289    #[doc(alias = "IOHIDQueueSetDispatchQueue")]
1290    #[cfg(feature = "dispatch2")]
1291    #[inline]
1292    pub unsafe fn set_dispatch_queue(self: &IOHIDQueue, dispatch_queue: &DispatchQueue) {
1293        extern "C-unwind" {
1294            fn IOHIDQueueSetDispatchQueue(queue: &IOHIDQueue, dispatch_queue: &DispatchQueue);
1295        }
1296        unsafe { IOHIDQueueSetDispatchQueue(self, dispatch_queue) }
1297    }
1298
1299    /// Sets a cancellation handler for the dispatch queue associated with
1300    /// IOHIDQueueSetDispatchQueue.
1301    ///
1302    ///
1303    /// The cancellation handler (if specified) will be will be submitted to the
1304    /// queue's dispatch queue in response to a call to IOHIDQueueCancel after all
1305    /// the events have been handled.
1306    ///
1307    /// IOHIDQueueSetCancelHandler should not be used when scheduling with
1308    /// a run loop.
1309    ///
1310    /// The IOHIDQueueRef should only be released after the queue has been
1311    /// cancelled, and the cancel handler has been called. This is to ensure all
1312    /// asynchronous objects are released. For example:
1313    ///
1314    /// dispatch_block_t cancelHandler = dispatch_block_create(0, ^{
1315    /// CFRelease(queue);
1316    /// });
1317    /// IOHIDQueueSetCancelHandler(queue, cancelHandler);
1318    /// IOHIDQueueActivate(queue);
1319    /// IOHIDQueueCancel(queue);
1320    ///
1321    ///
1322    /// Parameter `queue`: Reference to an IOHIDQueue.
1323    ///
1324    ///
1325    /// Parameter `handler`: The cancellation handler block to be associated with the dispatch queue.
1326    #[doc(alias = "IOHIDQueueSetCancelHandler")]
1327    #[cfg(feature = "dispatch2")]
1328    #[inline]
1329    pub unsafe fn set_cancel_handler(self: &IOHIDQueue, handler: dispatch_block_t) {
1330        extern "C-unwind" {
1331            fn IOHIDQueueSetCancelHandler(queue: &IOHIDQueue, handler: dispatch_block_t);
1332        }
1333        unsafe { IOHIDQueueSetCancelHandler(self, handler) }
1334    }
1335
1336    /// Activates the IOHIDQueue object.
1337    ///
1338    ///
1339    /// An IOHIDQueue object associated with a dispatch queue is created
1340    /// in an inactive state. The object must be activated in order to
1341    /// receive asynchronous events from the kernel.
1342    ///
1343    /// A dispatch queue must be set via IOHIDQueueSetDispatchQueue before
1344    /// activation.
1345    ///
1346    /// An activated queue must be cancelled via IOHIDQueueCancel. All calls
1347    /// to "Register" functions should be done before activation
1348    /// and not after cancellation.
1349    ///
1350    /// Calling IOHIDQueueActivate on an active IOHIDQueue has no effect.
1351    ///
1352    ///
1353    /// Parameter `queue`: Reference to an IOHIDQueue
1354    #[doc(alias = "IOHIDQueueActivate")]
1355    #[inline]
1356    pub unsafe fn activate(self: &IOHIDQueue) {
1357        extern "C-unwind" {
1358            fn IOHIDQueueActivate(queue: &IOHIDQueue);
1359        }
1360        unsafe { IOHIDQueueActivate(self) }
1361    }
1362
1363    /// Cancels the IOHIDQueue preventing any further invocation
1364    /// of its event handler block.
1365    ///
1366    ///
1367    /// Cancelling prevents any further invocation of the event handler block for
1368    /// the specified dispatch queue, but does not interrupt an event handler
1369    /// block that is already in progress.
1370    ///
1371    /// Explicit cancellation of the IOHIDQueue is required, no implicit
1372    /// cancellation takes place.
1373    ///
1374    /// Calling IOHIDQueueCancel on an already cancelled queue has no effect.
1375    ///
1376    /// The IOHIDQueueRef should only be released after the queue has been
1377    /// cancelled, and the cancel handler has been called. This is to ensure all
1378    /// asynchronous objects are released. For example:
1379    ///
1380    /// dispatch_block_t cancelHandler = dispatch_block_create(0, ^{
1381    /// CFRelease(queue);
1382    /// });
1383    /// IOHIDQueueSetCancelHandler(queue, cancelHandler);
1384    /// IOHIDQueueActivate(queue);
1385    /// IOHIDQueueCancel(queue);
1386    ///
1387    ///
1388    /// Parameter `queue`: Reference to an IOHIDQueue
1389    #[doc(alias = "IOHIDQueueCancel")]
1390    #[inline]
1391    pub unsafe fn cancel(self: &IOHIDQueue) {
1392        extern "C-unwind" {
1393            fn IOHIDQueueCancel(queue: &IOHIDQueue);
1394        }
1395        unsafe { IOHIDQueueCancel(self) }
1396    }
1397
1398    /// Sets callback to be used when the queue transitions to non-empty.
1399    ///
1400    /// In order to make use of asynchronous behavior, the queue needs
1401    /// to be scheduled with the run loop or dispatch queue.
1402    /// If a dispatch queue is set, this call must occur before activation.
1403    ///
1404    /// Parameter `queue`: IOHIDQueue object to be modified.
1405    ///
1406    /// Parameter `callback`: Callback of type IOHIDCallback to be used when data is
1407    /// placed on the queue.
1408    ///
1409    /// Parameter `context`: Pointer to data to be passed to the callback.
1410    #[doc(alias = "IOHIDQueueRegisterValueAvailableCallback")]
1411    #[inline]
1412    pub unsafe fn register_value_available_callback(
1413        self: &IOHIDQueue,
1414        callback: IOHIDCallback,
1415        context: *mut c_void,
1416    ) {
1417        extern "C-unwind" {
1418            fn IOHIDQueueRegisterValueAvailableCallback(
1419                queue: &IOHIDQueue,
1420                callback: IOHIDCallback,
1421                context: *mut c_void,
1422            );
1423        }
1424        unsafe { IOHIDQueueRegisterValueAvailableCallback(self, callback, context) }
1425    }
1426
1427    /// Dequeues a retained copy of an element value from the head of an
1428    /// IOHIDQueue.
1429    ///
1430    /// Because the value is a retained copy, it is up to the caller to
1431    /// release the value using CFRelease. Use with setValueCallback to
1432    /// avoid polling the queue for data.
1433    ///
1434    /// Parameter `queue`: IOHIDQueue object to be queried.
1435    ///
1436    /// Returns: Returns valid IOHIDValueRef if data is available.
1437    #[doc(alias = "IOHIDQueueCopyNextValue")]
1438    #[inline]
1439    pub unsafe fn next_value(self: &IOHIDQueue) -> Option<CFRetained<IOHIDValue>> {
1440        extern "C-unwind" {
1441            fn IOHIDQueueCopyNextValue(queue: &IOHIDQueue) -> Option<NonNull<IOHIDValue>>;
1442        }
1443        let ret = unsafe { IOHIDQueueCopyNextValue(self) };
1444        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1445    }
1446
1447    /// Dequeues a retained copy of an element value from the head of an
1448    /// IOHIDQueue.  This method will block until either a value is
1449    /// available or it times out.
1450    ///
1451    /// Because the value is a retained copy, it is up to the caller to
1452    /// release the value using CFRelease. Use with setValueCallback to
1453    /// avoid polling the queue for data.
1454    ///
1455    /// Parameter `queue`: IOHIDQueue object to be queried.
1456    ///
1457    /// Parameter `timeout`: Timeout before aborting an attempt to dequeue a value
1458    /// from the head of a queue.
1459    ///
1460    /// Returns: Returns valid IOHIDValueRef if data is available.
1461    #[doc(alias = "IOHIDQueueCopyNextValueWithTimeout")]
1462    #[inline]
1463    pub unsafe fn next_value_with_timeout(
1464        self: &IOHIDQueue,
1465        timeout: CFTimeInterval,
1466    ) -> Option<CFRetained<IOHIDValue>> {
1467        extern "C-unwind" {
1468            fn IOHIDQueueCopyNextValueWithTimeout(
1469                queue: &IOHIDQueue,
1470                timeout: CFTimeInterval,
1471            ) -> Option<NonNull<IOHIDValue>>;
1472        }
1473        let ret = unsafe { IOHIDQueueCopyNextValueWithTimeout(self, timeout) };
1474        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1475    }
1476}
1477
1478unsafe impl ConcreteType for IOHIDDevice {
1479    /// Returns the type identifier of all IOHIDDevice instances.
1480    #[doc(alias = "IOHIDDeviceGetTypeID")]
1481    #[inline]
1482    fn type_id() -> CFTypeID {
1483        extern "C-unwind" {
1484            fn IOHIDDeviceGetTypeID() -> CFTypeID;
1485        }
1486        unsafe { IOHIDDeviceGetTypeID() }
1487    }
1488}
1489
1490impl IOHIDDevice {
1491    /// Creates an element from an io_service_t.
1492    ///
1493    /// The io_service_t passed in this method must reference an object
1494    /// in the kernel of type IOHIDDevice.
1495    ///
1496    /// Parameter `allocator`: Allocator to be used during creation.
1497    ///
1498    /// Parameter `service`: Reference to service object in the kernel.
1499    ///
1500    /// Returns: Returns a new IOHIDDeviceRef.
1501    #[doc(alias = "IOHIDDeviceCreate")]
1502    #[cfg(feature = "libc")]
1503    #[inline]
1504    pub unsafe fn new(
1505        allocator: Option<&CFAllocator>,
1506        service: io_service_t,
1507    ) -> Option<CFRetained<IOHIDDevice>> {
1508        extern "C-unwind" {
1509            fn IOHIDDeviceCreate(
1510                allocator: Option<&CFAllocator>,
1511                service: io_service_t,
1512            ) -> Option<NonNull<IOHIDDevice>>;
1513        }
1514        let ret = unsafe { IOHIDDeviceCreate(allocator, service) };
1515        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1516    }
1517
1518    /// Returns the io_service_t for an IOHIDDevice, if it has one.
1519    ///
1520    /// If the IOHIDDevice references an object in the kernel, this is
1521    /// used to get the io_service_t for that object.
1522    ///
1523    /// Parameter `device`: Reference to an IOHIDDevice.
1524    ///
1525    /// Returns: Returns the io_service_t if the IOHIDDevice has one, or
1526    /// MACH_PORT_NULL if it does not.
1527    #[doc(alias = "IOHIDDeviceGetService")]
1528    #[cfg(feature = "libc")]
1529    #[inline]
1530    pub unsafe fn service(self: &IOHIDDevice) -> io_service_t {
1531        extern "C-unwind" {
1532            fn IOHIDDeviceGetService(device: &IOHIDDevice) -> io_service_t;
1533        }
1534        unsafe { IOHIDDeviceGetService(self) }
1535    }
1536
1537    /// Opens a HID device for communication.
1538    ///
1539    /// Before the client can issue commands that change the state of
1540    /// the device, it must have succeeded in opening the device. This
1541    /// establishes a link between the client's task and the actual
1542    /// device.  To establish an exclusive link use the
1543    /// kIOHIDOptionsTypeSeizeDevice option.
1544    ///
1545    /// Parameter `device`: Reference to an IOHIDDevice.
1546    ///
1547    /// Parameter `options`: Option bits to be sent down to the device.
1548    ///
1549    /// Returns: Returns kIOReturnSuccess if successful.
1550    #[doc(alias = "IOHIDDeviceOpen")]
1551    #[inline]
1552    pub unsafe fn open(self: &IOHIDDevice, options: IOOptionBits) -> IOReturn {
1553        extern "C-unwind" {
1554            fn IOHIDDeviceOpen(device: &IOHIDDevice, options: IOOptionBits) -> IOReturn;
1555        }
1556        unsafe { IOHIDDeviceOpen(self, options) }
1557    }
1558
1559    /// Closes communication with a HID device.
1560    ///
1561    /// This closes a link between the client's task and the actual
1562    /// device.
1563    ///
1564    /// Parameter `device`: Reference to an IOHIDDevice.
1565    ///
1566    /// Parameter `options`: Option bits to be sent down to the device.
1567    ///
1568    /// Returns: Returns kIOReturnSuccess if successful.
1569    #[doc(alias = "IOHIDDeviceClose")]
1570    #[inline]
1571    pub unsafe fn close(self: &IOHIDDevice, options: IOOptionBits) -> IOReturn {
1572        extern "C-unwind" {
1573            fn IOHIDDeviceClose(device: &IOHIDDevice, options: IOOptionBits) -> IOReturn;
1574        }
1575        unsafe { IOHIDDeviceClose(self, options) }
1576    }
1577
1578    /// Convenience function that scans the Application Collection
1579    /// elements to see if it conforms to the provided usagePage
1580    /// and usage.
1581    ///
1582    /// Examples of Application Collection usages pairs are:
1583    /// <br>
1584    /// usagePage = kHIDPage_GenericDesktop
1585    /// <br>
1586    /// usage = kHIDUsage_GD_Mouse
1587    /// <br>
1588    /// <b>
1589    /// or
1590    /// </b>
1591    /// <br>
1592    /// usagePage = kHIDPage_GenericDesktop
1593    /// <br>
1594    /// usage = kHIDUsage_GD_Keyboard
1595    ///
1596    /// Parameter `device`: Reference to an IOHIDDevice.
1597    ///
1598    /// Parameter `usagePage`: Device usage page
1599    ///
1600    /// Parameter `usage`: Device usage
1601    ///
1602    /// Returns: Returns TRUE if device conforms to provided usage.
1603    #[doc(alias = "IOHIDDeviceConformsTo")]
1604    #[inline]
1605    pub unsafe fn conforms_to(self: &IOHIDDevice, usage_page: u32, usage: u32) -> bool {
1606        extern "C-unwind" {
1607            fn IOHIDDeviceConformsTo(device: &IOHIDDevice, usage_page: u32, usage: u32) -> Boolean;
1608        }
1609        let ret = unsafe { IOHIDDeviceConformsTo(self, usage_page, usage) };
1610        ret != 0
1611    }
1612
1613    /// Obtains a property from an IOHIDDevice.
1614    ///
1615    /// Property keys are prefixed by kIOHIDDevice and declared in
1616    /// <IOKit
1617    /// /hid/IOHIDKeys.h>.
1618    ///
1619    /// Parameter `device`: Reference to an IOHIDDevice.
1620    ///
1621    /// Parameter `key`: CFStringRef containing key to be used when querying the
1622    /// device.
1623    ///
1624    /// Returns: Returns CFTypeRef containing the property.
1625    #[doc(alias = "IOHIDDeviceGetProperty")]
1626    #[inline]
1627    pub unsafe fn property(self: &IOHIDDevice, key: &CFString) -> Option<CFRetained<CFType>> {
1628        extern "C-unwind" {
1629            fn IOHIDDeviceGetProperty(
1630                device: &IOHIDDevice,
1631                key: &CFString,
1632            ) -> Option<NonNull<CFType>>;
1633        }
1634        let ret = unsafe { IOHIDDeviceGetProperty(self, key) };
1635        ret.map(|ret| unsafe { CFRetained::retain(ret) })
1636    }
1637
1638    /// Sets a property for an IOHIDDevice.
1639    ///
1640    /// Property keys are prefixed by kIOHIDDevice and declared in
1641    /// <IOKit
1642    /// /hid/IOHIDKeys.h>.
1643    ///
1644    /// Parameter `device`: Reference to an IOHIDDevice.
1645    ///
1646    /// Parameter `key`: CFStringRef containing key to be used when modifiying the
1647    /// device property.
1648    ///
1649    /// Parameter `property`: CFTypeRef containg the property to be set.
1650    ///
1651    /// Returns: Returns TRUE if successful.
1652    #[doc(alias = "IOHIDDeviceSetProperty")]
1653    #[inline]
1654    pub unsafe fn set_property(self: &IOHIDDevice, key: &CFString, property: &CFType) -> bool {
1655        extern "C-unwind" {
1656            fn IOHIDDeviceSetProperty(
1657                device: &IOHIDDevice,
1658                key: &CFString,
1659                property: &CFType,
1660            ) -> Boolean;
1661        }
1662        let ret = unsafe { IOHIDDeviceSetProperty(self, key, property) };
1663        ret != 0
1664    }
1665
1666    /// Obtains HID elements that match the criteria contained in the
1667    /// matching dictionary.
1668    ///
1669    /// Matching keys are prefixed by kIOHIDElement and declared in
1670    /// <IOKit
1671    /// /hid/IOHIDKeys.h>. Passing a NULL dictionary will result
1672    /// in all device elements being returned.
1673    ///
1674    /// Parameter `device`: Reference to an IOHIDDevice.
1675    ///
1676    /// Parameter `matching`: CFDictionaryRef containg element matching criteria.
1677    ///
1678    /// Parameter `options`: Reserved for future use.
1679    ///
1680    /// Returns: Returns CFArrayRef containing multiple IOHIDElement object.
1681    #[doc(alias = "IOHIDDeviceCopyMatchingElements")]
1682    #[inline]
1683    pub unsafe fn matching_elements(
1684        self: &IOHIDDevice,
1685        matching: Option<&CFDictionary>,
1686        options: IOOptionBits,
1687    ) -> Option<CFRetained<CFArray>> {
1688        extern "C-unwind" {
1689            fn IOHIDDeviceCopyMatchingElements(
1690                device: &IOHIDDevice,
1691                matching: Option<&CFDictionary>,
1692                options: IOOptionBits,
1693            ) -> Option<NonNull<CFArray>>;
1694        }
1695        let ret = unsafe { IOHIDDeviceCopyMatchingElements(self, matching, options) };
1696        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
1697    }
1698
1699    /// Schedules HID device with run loop.
1700    ///
1701    /// Formally associates device with client's run loop. Scheduling
1702    /// this device with the run loop is necessary before making use of
1703    /// any asynchronous APIs.
1704    ///
1705    /// Parameter `device`: Reference to an IOHIDDevice.
1706    ///
1707    /// Parameter `runLoop`: RunLoop to be used when scheduling any asynchronous
1708    /// activity.
1709    ///
1710    /// Parameter `runLoopMode`: Run loop mode to be used when scheduling any
1711    /// asynchronous activity.
1712    #[doc(alias = "IOHIDDeviceScheduleWithRunLoop")]
1713    #[inline]
1714    pub unsafe fn schedule_with_run_loop(
1715        self: &IOHIDDevice,
1716        run_loop: &CFRunLoop,
1717        run_loop_mode: &CFString,
1718    ) {
1719        extern "C-unwind" {
1720            fn IOHIDDeviceScheduleWithRunLoop(
1721                device: &IOHIDDevice,
1722                run_loop: &CFRunLoop,
1723                run_loop_mode: &CFString,
1724            );
1725        }
1726        unsafe { IOHIDDeviceScheduleWithRunLoop(self, run_loop, run_loop_mode) }
1727    }
1728
1729    /// Unschedules HID device with run loop.
1730    ///
1731    /// Formally disassociates device with client's run loop.
1732    ///
1733    /// Parameter `device`: Reference to an IOHIDDevice.
1734    ///
1735    /// Parameter `runLoop`: RunLoop to be used when unscheduling any asynchronous
1736    /// activity.
1737    ///
1738    /// Parameter `runLoopMode`: Run loop mode to be used when unscheduling any
1739    /// asynchronous activity.
1740    #[doc(alias = "IOHIDDeviceUnscheduleFromRunLoop")]
1741    #[inline]
1742    pub unsafe fn unschedule_from_run_loop(
1743        self: &IOHIDDevice,
1744        run_loop: &CFRunLoop,
1745        run_loop_mode: &CFString,
1746    ) {
1747        extern "C-unwind" {
1748            fn IOHIDDeviceUnscheduleFromRunLoop(
1749                device: &IOHIDDevice,
1750                run_loop: &CFRunLoop,
1751                run_loop_mode: &CFString,
1752            );
1753        }
1754        unsafe { IOHIDDeviceUnscheduleFromRunLoop(self, run_loop, run_loop_mode) }
1755    }
1756
1757    /// Sets the dispatch queue to be associated with the IOHIDDevice.
1758    /// This is necessary in order to receive asynchronous events from the kernel.
1759    ///
1760    /// An IOHIDDevice should not be associated with both a runloop and
1761    /// dispatch queue. A call to IOHIDDeviceSetDispatchQueue should only be made once.
1762    /// After a dispatch queue is set, the IOHIDDevice must make a call to activate
1763    /// via IOHIDDeviceActivate and cancel via IOHIDDeviceCancel. All calls to "Register"
1764    /// functions should be done before activation and not after cancellation.
1765    ///
1766    /// Parameter `device`: Reference to an IOHIDDevice
1767    ///
1768    /// Parameter `queue`: The dispatch queue to which the event handler block will be submitted.
1769    #[doc(alias = "IOHIDDeviceSetDispatchQueue")]
1770    #[cfg(feature = "dispatch2")]
1771    #[inline]
1772    pub unsafe fn set_dispatch_queue(self: &IOHIDDevice, queue: &DispatchQueue) {
1773        extern "C-unwind" {
1774            fn IOHIDDeviceSetDispatchQueue(device: &IOHIDDevice, queue: &DispatchQueue);
1775        }
1776        unsafe { IOHIDDeviceSetDispatchQueue(self, queue) }
1777    }
1778
1779    /// Sets a cancellation handler for the dispatch queue associated with
1780    /// IOHIDDeviceSetDispatchQueue.
1781    ///
1782    /// The cancellation handler (if specified) will be will be submitted to the
1783    /// device's dispatch queue in response to a call to IOHIDDeviceCancel after
1784    /// all the events have been handled.
1785    /// IOHIDDeviceSetCancelHandler should not be used when scheduling with
1786    /// a run loop.
1787    /// The IOHIDDeviceRef should only be released after the device has been
1788    /// cancelled, and the cancel handler has been called. This is to ensure all
1789    /// asynchronous objects are released. For example:
1790    /// dispatch_block_t cancelHandler = dispatch_block_create(0, ^{
1791    /// CFRelease(device);
1792    /// });
1793    /// IOHIDDeviceSetCancelHandler(device, cancelHandler);
1794    /// IOHIDDeviceActivate(device);
1795    /// IOHIDDeviceCancel(device);
1796    ///
1797    /// Parameter `device`: Reference to an IOHIDDevice.
1798    ///
1799    /// Parameter `handler`: The cancellation handler block to be associated with the dispatch queue.
1800    #[doc(alias = "IOHIDDeviceSetCancelHandler")]
1801    #[cfg(feature = "dispatch2")]
1802    #[inline]
1803    pub unsafe fn set_cancel_handler(self: &IOHIDDevice, handler: dispatch_block_t) {
1804        extern "C-unwind" {
1805            fn IOHIDDeviceSetCancelHandler(device: &IOHIDDevice, handler: dispatch_block_t);
1806        }
1807        unsafe { IOHIDDeviceSetCancelHandler(self, handler) }
1808    }
1809
1810    /// Activates the IOHIDDevice object.
1811    ///
1812    /// An IOHIDDevice object associated with a dispatch queue is created
1813    /// in an inactive state. The object must be activated in order to
1814    /// receive asynchronous events from the kernel.
1815    /// A dispatch queue must be set via IOHIDDeviceSetDispatchQueue before
1816    /// activation.
1817    /// An activated device must be cancelled via IOHIDDeviceCancel. All calls
1818    /// to "Register" functions should be done before activation
1819    /// and not after cancellation.
1820    /// Calling IOHIDDeviceActivate on an active IOHIDDevice has no effect.
1821    ///
1822    /// Parameter `device`: Reference to an IOHIDDevice
1823    #[doc(alias = "IOHIDDeviceActivate")]
1824    #[inline]
1825    pub unsafe fn activate(self: &IOHIDDevice) {
1826        extern "C-unwind" {
1827            fn IOHIDDeviceActivate(device: &IOHIDDevice);
1828        }
1829        unsafe { IOHIDDeviceActivate(self) }
1830    }
1831
1832    /// Cancels the IOHIDDevice preventing any further invocation
1833    /// of its event handler block.
1834    ///
1835    /// Cancelling prevents any further invocation of the event handler block for
1836    /// the specified dispatch queue, but does not interrupt an event handler
1837    /// block that is already in progress.
1838    /// Explicit cancellation of the IOHIDDevice is required, no implicit
1839    /// cancellation takes place.
1840    /// Calling IOHIDDeviceCancel on an already cancelled queue has no effect.
1841    /// The IOHIDDeviceRef should only be released after the device has been
1842    /// cancelled, and the cancel handler has been called. This is to ensure all
1843    /// asynchronous objects are released. For example:
1844    /// dispatch_block_t cancelHandler = dispatch_block_create(0, ^{
1845    /// CFRelease(device);
1846    /// });
1847    /// IOHIDDeviceSetCancelHandler(device, cancelHandler);
1848    /// IOHIDDeviceActivate(device);
1849    /// IOHIDDeviceCancel(device);
1850    ///
1851    /// Parameter `device`: Reference to an IOHIDDevice
1852    #[doc(alias = "IOHIDDeviceCancel")]
1853    #[inline]
1854    pub unsafe fn cancel(self: &IOHIDDevice) {
1855        extern "C-unwind" {
1856            fn IOHIDDeviceCancel(device: &IOHIDDevice);
1857        }
1858        unsafe { IOHIDDeviceCancel(self) }
1859    }
1860
1861    /// Registers a callback to be used when a IOHIDDevice is removed.
1862    ///
1863    /// In most cases this occurs when a device is unplugged.
1864    /// If a dispatch queue is set, this call must occur before activation.
1865    ///
1866    /// Parameter `device`: Reference to an IOHIDDevice.
1867    ///
1868    /// Parameter `callback`: Pointer to a callback method of type IOHIDCallback.
1869    ///
1870    /// Parameter `context`: Pointer to data to be passed to the callback.
1871    #[doc(alias = "IOHIDDeviceRegisterRemovalCallback")]
1872    #[inline]
1873    pub unsafe fn register_removal_callback(
1874        self: &IOHIDDevice,
1875        callback: IOHIDCallback,
1876        context: *mut c_void,
1877    ) {
1878        extern "C-unwind" {
1879            fn IOHIDDeviceRegisterRemovalCallback(
1880                device: &IOHIDDevice,
1881                callback: IOHIDCallback,
1882                context: *mut c_void,
1883            );
1884        }
1885        unsafe { IOHIDDeviceRegisterRemovalCallback(self, callback, context) }
1886    }
1887
1888    /// Registers a callback to be used when an input value is issued by
1889    /// the device.
1890    ///
1891    /// An input element refers to any element of type
1892    /// kIOHIDElementTypeInput and is usually issued by interrupt driven
1893    /// reports. If more specific element values are desired, you can
1894    /// specify matching criteria via IOHIDDeviceSetInputValueMatching
1895    /// and IOHIDDeviceSetInputValueMatchingMultiple.
1896    /// If a dispatch queue is set, this call must occur before activation.
1897    ///
1898    /// Parameter `device`: Reference to an IOHIDDevice.
1899    ///
1900    /// Parameter `callback`: Pointer to a callback method of type IOHIDValueCallback.
1901    ///
1902    /// Parameter `context`: Pointer to data to be passed to the callback.
1903    #[doc(alias = "IOHIDDeviceRegisterInputValueCallback")]
1904    #[inline]
1905    pub unsafe fn register_input_value_callback(
1906        self: &IOHIDDevice,
1907        callback: IOHIDValueCallback,
1908        context: *mut c_void,
1909    ) {
1910        extern "C-unwind" {
1911            fn IOHIDDeviceRegisterInputValueCallback(
1912                device: &IOHIDDevice,
1913                callback: IOHIDValueCallback,
1914                context: *mut c_void,
1915            );
1916        }
1917        unsafe { IOHIDDeviceRegisterInputValueCallback(self, callback, context) }
1918    }
1919
1920    /// Registers a callback to be used when an input report is issued
1921    /// by the device.
1922    ///
1923    /// An input report is an interrupt driver report issued by the
1924    /// device.
1925    /// If a dispatch queue is set, this call must occur before activation.
1926    ///
1927    /// Parameter `device`: Reference to an IOHIDDevice.
1928    ///
1929    /// Parameter `report`: Pointer to preallocated buffer in which to copy inbound
1930    /// report data.
1931    ///
1932    /// Parameter `reportLength`: Length of preallocated buffer.
1933    ///
1934    /// Parameter `callback`: Pointer to a callback method of type
1935    /// IOHIDReportCallback.
1936    ///
1937    /// Parameter `context`: Pointer to data to be passed to the callback.
1938    #[doc(alias = "IOHIDDeviceRegisterInputReportCallback")]
1939    #[inline]
1940    pub unsafe fn register_input_report_callback(
1941        self: &IOHIDDevice,
1942        report: NonNull<u8>,
1943        report_length: CFIndex,
1944        callback: IOHIDReportCallback,
1945        context: *mut c_void,
1946    ) {
1947        extern "C-unwind" {
1948            fn IOHIDDeviceRegisterInputReportCallback(
1949                device: &IOHIDDevice,
1950                report: NonNull<u8>,
1951                report_length: CFIndex,
1952                callback: IOHIDReportCallback,
1953                context: *mut c_void,
1954            );
1955        }
1956        unsafe {
1957            IOHIDDeviceRegisterInputReportCallback(self, report, report_length, callback, context)
1958        }
1959    }
1960
1961    /// Registers a timestamped callback to be used when an input report is issued
1962    /// by the device.
1963    ///
1964    /// An input report is an interrupt driver report issued by the
1965    /// device.
1966    /// If a dispatch queue is set, this call must occur before activation.
1967    ///
1968    /// Parameter `device`: Reference to an IOHIDDevice.
1969    ///
1970    /// Parameter `report`: Pointer to preallocated buffer in which to copy inbound
1971    /// report data.
1972    ///
1973    /// Parameter `reportLength`: Length of preallocated buffer.
1974    ///
1975    /// Parameter `callback`: Pointer to a callback method of type
1976    /// IOHIDReportWithTimeStampCallback.
1977    ///
1978    /// Parameter `context`: Pointer to data to be passed to the callback.
1979    #[doc(alias = "IOHIDDeviceRegisterInputReportWithTimeStampCallback")]
1980    #[inline]
1981    pub unsafe fn register_input_report_with_time_stamp_callback(
1982        self: &IOHIDDevice,
1983        report: NonNull<u8>,
1984        report_length: CFIndex,
1985        callback: IOHIDReportWithTimeStampCallback,
1986        context: *mut c_void,
1987    ) {
1988        extern "C-unwind" {
1989            fn IOHIDDeviceRegisterInputReportWithTimeStampCallback(
1990                device: &IOHIDDevice,
1991                report: NonNull<u8>,
1992                report_length: CFIndex,
1993                callback: IOHIDReportWithTimeStampCallback,
1994                context: *mut c_void,
1995            );
1996        }
1997        unsafe {
1998            IOHIDDeviceRegisterInputReportWithTimeStampCallback(
1999                self,
2000                report,
2001                report_length,
2002                callback,
2003                context,
2004            )
2005        }
2006    }
2007
2008    /// Sets matching criteria for input values received via
2009    /// IOHIDDeviceRegisterInputValueCallback.
2010    ///
2011    /// Matching keys are prefixed by kIOHIDElement and declared in
2012    /// <IOKit
2013    /// /hid/IOHIDKeys.h>. Passing a NULL dictionary will result
2014    /// in all devices being enumerated. Any subsequent calls will cause
2015    /// the hid manager to release previously matched input elements and
2016    /// restart the matching process using the revised criteria. If
2017    /// interested in multiple, specific device elements, please defer to
2018    /// using IOHIDDeviceSetInputValueMatchingMultiple.
2019    /// If a dispatch queue is set, this call must occur before activation.
2020    ///
2021    /// Parameter `device`: Reference to an IOHIDDevice.
2022    ///
2023    /// Parameter `matching`: CFDictionaryRef containg device matching criteria.
2024    #[doc(alias = "IOHIDDeviceSetInputValueMatching")]
2025    #[inline]
2026    pub unsafe fn set_input_value_matching(self: &IOHIDDevice, matching: Option<&CFDictionary>) {
2027        extern "C-unwind" {
2028            fn IOHIDDeviceSetInputValueMatching(
2029                device: &IOHIDDevice,
2030                matching: Option<&CFDictionary>,
2031            );
2032        }
2033        unsafe { IOHIDDeviceSetInputValueMatching(self, matching) }
2034    }
2035
2036    /// Sets multiple matching criteria for input values received via
2037    /// IOHIDDeviceRegisterInputValueCallback.
2038    ///
2039    /// Matching keys are prefixed by kIOHIDElement and declared in
2040    /// <IOKit
2041    /// /hid/IOHIDKeys.h>. This method is useful if interested
2042    /// in multiple, specific elements.
2043    /// If a dispatch queue is set, this call must occur before activation.
2044    ///
2045    /// Parameter `device`: Reference to an IOHIDDevice.
2046    ///
2047    /// Parameter `multiple`: CFArrayRef containing multiple CFDictionaryRef objects
2048    /// containg input element matching criteria.
2049    #[doc(alias = "IOHIDDeviceSetInputValueMatchingMultiple")]
2050    #[inline]
2051    pub unsafe fn set_input_value_matching_multiple(
2052        self: &IOHIDDevice,
2053        multiple: Option<&CFArray>,
2054    ) {
2055        extern "C-unwind" {
2056            fn IOHIDDeviceSetInputValueMatchingMultiple(
2057                device: &IOHIDDevice,
2058                multiple: Option<&CFArray>,
2059            );
2060        }
2061        unsafe { IOHIDDeviceSetInputValueMatchingMultiple(self, multiple) }
2062    }
2063
2064    /// Sets a value for an element.
2065    ///
2066    /// This method behaves synchronously and will block until the
2067    /// report has been issued to the device. It is only relevent for
2068    /// either output or feature type elements. If setting values for
2069    /// multiple elements you may want to consider using
2070    /// IOHIDDeviceSetValueMultiple or IOHIDTransaction.
2071    ///
2072    /// Parameter `device`: Reference to an IOHIDDevice.
2073    ///
2074    /// Parameter `element`: IOHIDElementRef whose value is to be modified.
2075    ///
2076    /// Parameter `value`: IOHIDValueRef containing value to be set.
2077    ///
2078    /// Returns: Returns kIOReturnSuccess if successful.
2079    #[doc(alias = "IOHIDDeviceSetValue")]
2080    #[inline]
2081    pub unsafe fn set_value(
2082        self: &IOHIDDevice,
2083        element: &IOHIDElement,
2084        value: &IOHIDValue,
2085    ) -> IOReturn {
2086        extern "C-unwind" {
2087            fn IOHIDDeviceSetValue(
2088                device: &IOHIDDevice,
2089                element: &IOHIDElement,
2090                value: &IOHIDValue,
2091            ) -> IOReturn;
2092        }
2093        unsafe { IOHIDDeviceSetValue(self, element, value) }
2094    }
2095
2096    /// Sets multiple values for multiple elements.
2097    ///
2098    /// This method behaves synchronously and will block until the
2099    /// report has been issued to the device. It is only relevent for
2100    /// either output or feature type elements.
2101    ///
2102    /// Parameter `device`: Reference to an IOHIDDevice.
2103    ///
2104    /// Parameter `multiple`: CFDictionaryRef where key is IOHIDElementRef and
2105    /// value is IOHIDValueRef.
2106    ///
2107    /// Returns: Returns kIOReturnSuccess if successful.
2108    #[doc(alias = "IOHIDDeviceSetValueMultiple")]
2109    #[inline]
2110    pub unsafe fn set_value_multiple(self: &IOHIDDevice, multiple: &CFDictionary) -> IOReturn {
2111        extern "C-unwind" {
2112            fn IOHIDDeviceSetValueMultiple(
2113                device: &IOHIDDevice,
2114                multiple: &CFDictionary,
2115            ) -> IOReturn;
2116        }
2117        unsafe { IOHIDDeviceSetValueMultiple(self, multiple) }
2118    }
2119
2120    /// Sets a value for an element.
2121    ///
2122    /// This method currently only behaves synchronously and will not
2123    /// invoke the callback. It is only relevent for either output or
2124    /// feature type elements. If setting values for multiple elements
2125    /// you may want to consider using
2126    /// IOHIDDeviceSetValueMultipleWithCallback or IOHIDTransaction.
2127    ///
2128    /// Parameter `device`: Reference to an IOHIDDevice.
2129    ///
2130    /// Parameter `element`: IOHIDElementRef whose value is to be modified.
2131    ///
2132    /// Parameter `value`: IOHIDValueRef containing value to be set.
2133    ///
2134    /// Parameter `timeout`: Currently unused.
2135    ///
2136    /// Parameter `callback`: Currently unused.
2137    ///
2138    /// Parameter `context`: Pointer to data to be passed to the callback.
2139    ///
2140    /// Returns: Returns kIOReturnSuccess if successful.
2141    #[doc(alias = "IOHIDDeviceSetValueWithCallback")]
2142    #[inline]
2143    pub unsafe fn set_value_with_callback(
2144        self: &IOHIDDevice,
2145        element: &IOHIDElement,
2146        value: &IOHIDValue,
2147        timeout: CFTimeInterval,
2148        callback: IOHIDValueCallback,
2149        context: *mut c_void,
2150    ) -> IOReturn {
2151        extern "C-unwind" {
2152            fn IOHIDDeviceSetValueWithCallback(
2153                device: &IOHIDDevice,
2154                element: &IOHIDElement,
2155                value: &IOHIDValue,
2156                timeout: CFTimeInterval,
2157                callback: IOHIDValueCallback,
2158                context: *mut c_void,
2159            ) -> IOReturn;
2160        }
2161        unsafe { IOHIDDeviceSetValueWithCallback(self, element, value, timeout, callback, context) }
2162    }
2163
2164    /// Sets multiple values for multiple elements and returns status
2165    /// via a completion callback.
2166    ///
2167    /// This method behaves asynchronously and will invoke the callback
2168    /// once the report has been issued to the device. It is only
2169    /// relevent for either output or feature type elements.
2170    ///
2171    /// Parameter `device`: Reference to an IOHIDDevice.
2172    ///
2173    /// Parameter `multiple`: CFDictionaryRef where key is IOHIDElementRef and
2174    /// value is IOHIDValueRef.
2175    ///
2176    /// Parameter `timeout`: CFTimeInterval containing the timeout in milliseconds.
2177    ///
2178    /// Parameter `callback`: Pointer to a callback method of type
2179    /// IOHIDValueMultipleCallback.
2180    ///
2181    /// Parameter `context`: Pointer to data to be passed to the callback.
2182    ///
2183    /// Returns: Returns kIOReturnSuccess if successful.
2184    #[doc(alias = "IOHIDDeviceSetValueMultipleWithCallback")]
2185    #[inline]
2186    pub unsafe fn set_value_multiple_with_callback(
2187        self: &IOHIDDevice,
2188        multiple: &CFDictionary,
2189        timeout: CFTimeInterval,
2190        callback: IOHIDValueMultipleCallback,
2191        context: *mut c_void,
2192    ) -> IOReturn {
2193        extern "C-unwind" {
2194            fn IOHIDDeviceSetValueMultipleWithCallback(
2195                device: &IOHIDDevice,
2196                multiple: &CFDictionary,
2197                timeout: CFTimeInterval,
2198                callback: IOHIDValueMultipleCallback,
2199                context: *mut c_void,
2200            ) -> IOReturn;
2201        }
2202        unsafe {
2203            IOHIDDeviceSetValueMultipleWithCallback(self, multiple, timeout, callback, context)
2204        }
2205    }
2206
2207    /// Gets a value for an element.
2208    ///
2209    /// This method behaves synchronously and returns immediately
2210    /// for input type elements. If requesting a value for a feature
2211    /// element, this will block until the report has been issued to the
2212    /// device. If obtaining values for multiple elements you may want
2213    /// to consider using IOHIDDeviceCopyValueMultiple or IOHIDTransaction.
2214    ///
2215    /// Parameter `device`: Reference to an IOHIDDevice.
2216    ///
2217    /// Parameter `element`: IOHIDElementRef whose value is to be obtained.
2218    ///
2219    /// Parameter `pValue`: Pointer to IOHIDValueRef to be obtained.
2220    ///
2221    /// Returns: Returns kIOReturnSuccess if successful.
2222    #[doc(alias = "IOHIDDeviceGetValue")]
2223    #[inline]
2224    pub unsafe fn value(
2225        self: &IOHIDDevice,
2226        element: &IOHIDElement,
2227        p_value: NonNull<NonNull<IOHIDValue>>,
2228    ) -> IOReturn {
2229        extern "C-unwind" {
2230            fn IOHIDDeviceGetValue(
2231                device: &IOHIDDevice,
2232                element: &IOHIDElement,
2233                p_value: NonNull<NonNull<IOHIDValue>>,
2234            ) -> IOReturn;
2235        }
2236        unsafe { IOHIDDeviceGetValue(self, element, p_value) }
2237    }
2238}
2239
2240/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddevicegetvalueoptions?language=objc)
2241// NS_ENUM
2242#[repr(transparent)]
2243#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
2244pub struct IOHIDDeviceGetValueOptions(pub u32);
2245impl IOHIDDeviceGetValueOptions {
2246    #[doc(alias = "kIOHIDDeviceGetValueWithUpdate")]
2247    pub const WithUpdate: Self = Self(0x00020000);
2248    #[doc(alias = "kIOHIDDeviceGetValueWithoutUpdate")]
2249    pub const WithoutUpdate: Self = Self(0x00040000);
2250}
2251
2252#[cfg(feature = "objc2")]
2253unsafe impl Encode for IOHIDDeviceGetValueOptions {
2254    const ENCODING: Encoding = u32::ENCODING;
2255}
2256
2257#[cfg(feature = "objc2")]
2258unsafe impl RefEncode for IOHIDDeviceGetValueOptions {
2259    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
2260}
2261
2262impl IOHIDDevice {
2263    /// Gets a value for an element.
2264    ///
2265    /// This method behaves synchronously and returns immediately
2266    /// for input type elements. If requesting a value for a feature
2267    /// element, this will block until the report has been issued to the
2268    /// device. If obtaining values for multiple elements you may want
2269    /// to consider using IOHIDDeviceCopyValueMultiple or IOHIDTransaction.
2270    ///
2271    /// Parameter `device`: Reference to an IOHIDDevice.
2272    ///
2273    /// Parameter `element`: IOHIDElementRef whose value is to be obtained.
2274    ///
2275    /// Parameter `pValue`: Pointer to IOHIDValueRef to be obtained.
2276    ///
2277    /// Parameter `options`: (see IOHIDDeviceGetValueOptions).
2278    ///
2279    /// Returns: Returns kIOReturnSuccess if successful.
2280    #[doc(alias = "IOHIDDeviceGetValueWithOptions")]
2281    #[inline]
2282    pub unsafe fn value_with_options(
2283        self: &IOHIDDevice,
2284        element: &IOHIDElement,
2285        p_value: NonNull<NonNull<IOHIDValue>>,
2286        options: u32,
2287    ) -> IOReturn {
2288        extern "C-unwind" {
2289            fn IOHIDDeviceGetValueWithOptions(
2290                device: &IOHIDDevice,
2291                element: &IOHIDElement,
2292                p_value: NonNull<NonNull<IOHIDValue>>,
2293                options: u32,
2294            ) -> IOReturn;
2295        }
2296        unsafe { IOHIDDeviceGetValueWithOptions(self, element, p_value, options) }
2297    }
2298
2299    /// Copies a values for multiple elements.
2300    ///
2301    /// This method behaves synchronously and returns immediately
2302    /// for input type elements. If requesting a value for a feature
2303    /// element, this will block until the report has been issued to the
2304    /// device.
2305    ///
2306    /// Parameter `device`: Reference to an IOHIDDevice.
2307    ///
2308    /// Parameter `elements`: CFArrayRef containing multiple IOHIDElementRefs whose
2309    /// values are to be obtained.
2310    ///
2311    /// Parameter `pMultiple`: Pointer to CFDictionaryRef where the keys are the
2312    /// provided elements and the values are the requested values.
2313    ///
2314    /// Returns: Returns kIOReturnSuccess if successful.
2315    #[doc(alias = "IOHIDDeviceCopyValueMultiple")]
2316    #[inline]
2317    pub unsafe fn copy_value_multiple(
2318        self: &IOHIDDevice,
2319        elements: &CFArray,
2320        p_multiple: *mut *const CFDictionary,
2321    ) -> IOReturn {
2322        extern "C-unwind" {
2323            fn IOHIDDeviceCopyValueMultiple(
2324                device: &IOHIDDevice,
2325                elements: &CFArray,
2326                p_multiple: *mut *const CFDictionary,
2327            ) -> IOReturn;
2328        }
2329        unsafe { IOHIDDeviceCopyValueMultiple(self, elements, p_multiple) }
2330    }
2331
2332    /// Gets a value for an element.
2333    ///
2334    /// This method currently only behaves synchronously and will not
2335    /// invoke the callback. It is only relevent for either output or
2336    /// feature type elements. If setting values for multiple elements
2337    /// you may want to consider using
2338    /// IOHIDDeviceCopyValueMultipleWithCallback or IOHIDTransaction.
2339    ///
2340    /// Parameter `device`: Reference to an IOHIDDevice.
2341    ///
2342    /// Parameter `element`: IOHIDElementRef whose value is to be obtained.
2343    ///
2344    /// Parameter `pValue`: Pointer to IOHIDValueRef to be passedback.
2345    ///
2346    /// Parameter `timeout`: Currently unused.
2347    ///
2348    /// Parameter `callback`: Currently unused.
2349    ///
2350    /// Parameter `context`: Pointer to data to be passed to the callback.
2351    ///
2352    /// Returns: Returns kIOReturnSuccess if successful.
2353    #[doc(alias = "IOHIDDeviceGetValueWithCallback")]
2354    #[inline]
2355    pub unsafe fn value_with_callback(
2356        self: &IOHIDDevice,
2357        element: &IOHIDElement,
2358        p_value: NonNull<NonNull<IOHIDValue>>,
2359        timeout: CFTimeInterval,
2360        callback: IOHIDValueCallback,
2361        context: *mut c_void,
2362    ) -> IOReturn {
2363        extern "C-unwind" {
2364            fn IOHIDDeviceGetValueWithCallback(
2365                device: &IOHIDDevice,
2366                element: &IOHIDElement,
2367                p_value: NonNull<NonNull<IOHIDValue>>,
2368                timeout: CFTimeInterval,
2369                callback: IOHIDValueCallback,
2370                context: *mut c_void,
2371            ) -> IOReturn;
2372        }
2373        unsafe {
2374            IOHIDDeviceGetValueWithCallback(self, element, p_value, timeout, callback, context)
2375        }
2376    }
2377
2378    /// Copies a values for multiple elements and returns status via a
2379    /// completion callback.
2380    ///
2381    /// This method behaves asynchronusly and is only relevent for
2382    /// either output or feature type elements.
2383    ///
2384    /// Parameter `device`: Reference to an IOHIDDevice.
2385    ///
2386    /// Parameter `elements`: CFArrayRef containing multiple IOHIDElementRefs whose
2387    /// values are to be obtained.
2388    ///
2389    /// Parameter `pMultiple`: Pointer to CFDictionaryRef where the keys are the
2390    /// provided elements and the values are the requested values.
2391    ///
2392    /// Parameter `timeout`: CFTimeInterval containing the timeout in milliseconds.
2393    ///
2394    /// Parameter `callback`: Pointer to a callback method of type
2395    /// IOHIDValueMultipleCallback.
2396    ///
2397    /// Parameter `context`: Pointer to data to be passed to the callback.
2398    ///
2399    /// Returns: Returns kIOReturnSuccess if successful.
2400    #[doc(alias = "IOHIDDeviceCopyValueMultipleWithCallback")]
2401    #[inline]
2402    pub unsafe fn copy_value_multiple_with_callback(
2403        self: &IOHIDDevice,
2404        elements: &CFArray,
2405        p_multiple: *mut *const CFDictionary,
2406        timeout: CFTimeInterval,
2407        callback: IOHIDValueMultipleCallback,
2408        context: *mut c_void,
2409    ) -> IOReturn {
2410        extern "C-unwind" {
2411            fn IOHIDDeviceCopyValueMultipleWithCallback(
2412                device: &IOHIDDevice,
2413                elements: &CFArray,
2414                p_multiple: *mut *const CFDictionary,
2415                timeout: CFTimeInterval,
2416                callback: IOHIDValueMultipleCallback,
2417                context: *mut c_void,
2418            ) -> IOReturn;
2419        }
2420        unsafe {
2421            IOHIDDeviceCopyValueMultipleWithCallback(
2422                self, elements, p_multiple, timeout, callback, context,
2423            )
2424        }
2425    }
2426
2427    /// Sends a report to the device.
2428    ///
2429    /// This method behaves synchronously and will block until the
2430    /// report has been issued to the device. It is only relevent for
2431    /// either output or feature type reports.
2432    ///
2433    /// Parameter `device`: Reference to an IOHIDDevice.
2434    ///
2435    /// Parameter `reportType`: Type of report being sent.
2436    ///
2437    /// Parameter `reportID`: ID of the report being sent.  If the device supports
2438    /// multiple reports, this should also be set in the first byte of
2439    /// the report.
2440    ///
2441    /// Parameter `report`: The report bytes to be sent to the device.
2442    ///
2443    /// Parameter `reportLength`: The length of the report to be sent to the device.
2444    ///
2445    /// Returns: Returns kIOReturnSuccess if successful.
2446    #[doc(alias = "IOHIDDeviceSetReport")]
2447    #[inline]
2448    pub unsafe fn set_report(
2449        self: &IOHIDDevice,
2450        report_type: IOHIDReportType,
2451        report_id: CFIndex,
2452        report: NonNull<u8>,
2453        report_length: CFIndex,
2454    ) -> IOReturn {
2455        extern "C-unwind" {
2456            fn IOHIDDeviceSetReport(
2457                device: &IOHIDDevice,
2458                report_type: IOHIDReportType,
2459                report_id: CFIndex,
2460                report: NonNull<u8>,
2461                report_length: CFIndex,
2462            ) -> IOReturn;
2463        }
2464        unsafe { IOHIDDeviceSetReport(self, report_type, report_id, report, report_length) }
2465    }
2466
2467    /// Sends a report to the device.
2468    ///
2469    /// This method behaves asynchronously. It is only relevent for
2470    /// either output or feature type reports.
2471    ///
2472    /// Parameter `device`: Reference to an IOHIDDevice.
2473    ///
2474    /// Parameter `reportType`: Type of report being sent.
2475    ///
2476    /// Parameter `reportID`: ID of the report being sent. If the device supports
2477    /// multiple reports, this should also be set in the first byte of
2478    /// the report.
2479    ///
2480    /// Parameter `report`: The report bytes to be sent to the device.
2481    ///
2482    /// Parameter `reportLength`: The length of the report to be sent to the device.
2483    ///
2484    /// Parameter `timeout`: CFTimeInterval containing the timeout in milliseconds.
2485    ///
2486    /// Parameter `callback`: Pointer to a callback method of type
2487    /// IOHIDReportCallback.
2488    ///
2489    /// Parameter `context`: Pointer to data to be passed to the callback.
2490    ///
2491    /// Returns: Returns kIOReturnSuccess if successful.
2492    #[doc(alias = "IOHIDDeviceSetReportWithCallback")]
2493    #[inline]
2494    pub unsafe fn set_report_with_callback(
2495        self: &IOHIDDevice,
2496        report_type: IOHIDReportType,
2497        report_id: CFIndex,
2498        report: NonNull<u8>,
2499        report_length: CFIndex,
2500        timeout: CFTimeInterval,
2501        callback: IOHIDReportCallback,
2502        context: *mut c_void,
2503    ) -> IOReturn {
2504        extern "C-unwind" {
2505            fn IOHIDDeviceSetReportWithCallback(
2506                device: &IOHIDDevice,
2507                report_type: IOHIDReportType,
2508                report_id: CFIndex,
2509                report: NonNull<u8>,
2510                report_length: CFIndex,
2511                timeout: CFTimeInterval,
2512                callback: IOHIDReportCallback,
2513                context: *mut c_void,
2514            ) -> IOReturn;
2515        }
2516        unsafe {
2517            IOHIDDeviceSetReportWithCallback(
2518                self,
2519                report_type,
2520                report_id,
2521                report,
2522                report_length,
2523                timeout,
2524                callback,
2525                context,
2526            )
2527        }
2528    }
2529
2530    /// Obtains a report from the device.
2531    ///
2532    /// This method behaves synchronously and will block until the
2533    /// report has been received from the device. It is only relevent for
2534    /// either output or feature type reports. Please defer to using
2535    /// IOHIDDeviceRegisterInputReportCallback for obtaining input
2536    /// reports.
2537    ///
2538    /// Parameter `device`: Reference to an IOHIDDevice.
2539    ///
2540    /// Parameter `reportType`: Type of report being requested.
2541    ///
2542    /// Parameter `reportID`: ID of the report being requested.
2543    ///
2544    /// Parameter `report`: Pointer to preallocated buffer in which to copy inbound
2545    /// report data.
2546    ///
2547    /// Parameter `pReportLength`: Pointer to length of preallocated buffer.  This
2548    /// value will be modified to refect the length of the returned
2549    /// report.
2550    ///
2551    /// Returns: Returns kIOReturnSuccess if successful.
2552    #[doc(alias = "IOHIDDeviceGetReport")]
2553    #[inline]
2554    pub unsafe fn report(
2555        self: &IOHIDDevice,
2556        report_type: IOHIDReportType,
2557        report_id: CFIndex,
2558        report: NonNull<u8>,
2559        p_report_length: NonNull<CFIndex>,
2560    ) -> IOReturn {
2561        extern "C-unwind" {
2562            fn IOHIDDeviceGetReport(
2563                device: &IOHIDDevice,
2564                report_type: IOHIDReportType,
2565                report_id: CFIndex,
2566                report: NonNull<u8>,
2567                p_report_length: NonNull<CFIndex>,
2568            ) -> IOReturn;
2569        }
2570        unsafe { IOHIDDeviceGetReport(self, report_type, report_id, report, p_report_length) }
2571    }
2572
2573    /// Obtains a report from the device.
2574    ///
2575    /// This method behaves asynchronously. It is only relevent for
2576    /// either output or feature type reports. Please defer to using
2577    /// IOHIDDeviceRegisterInputReportCallback for obtaining input
2578    /// reports.
2579    ///
2580    /// Parameter `device`: Reference to an IOHIDDevice.
2581    ///
2582    /// Parameter `reportType`: Type of report being requested.
2583    ///
2584    /// Parameter `reportID`: ID of the report being requested.
2585    ///
2586    /// Parameter `report`: Pointer to preallocated buffer in which to copy inbound
2587    /// report data.
2588    ///
2589    /// Parameter `pReportLength`: Pointer to length of preallocated buffer. This
2590    /// value will be modified to refect the length of the returned
2591    /// report.
2592    ///
2593    /// Parameter `timeout`: CFTimeInterval containing the timeout in milliseconds.
2594    ///
2595    /// Parameter `callback`: Pointer to a callback method of type
2596    /// IOHIDReportCallback.
2597    ///
2598    /// Parameter `context`: Pointer to data to be passed to the callback.
2599    ///
2600    /// Returns: Returns kIOReturnSuccess if successful.
2601    #[doc(alias = "IOHIDDeviceGetReportWithCallback")]
2602    #[inline]
2603    pub unsafe fn report_with_callback(
2604        self: &IOHIDDevice,
2605        report_type: IOHIDReportType,
2606        report_id: CFIndex,
2607        report: NonNull<u8>,
2608        p_report_length: NonNull<CFIndex>,
2609        timeout: CFTimeInterval,
2610        callback: IOHIDReportCallback,
2611        context: NonNull<c_void>,
2612    ) -> IOReturn {
2613        extern "C-unwind" {
2614            fn IOHIDDeviceGetReportWithCallback(
2615                device: &IOHIDDevice,
2616                report_type: IOHIDReportType,
2617                report_id: CFIndex,
2618                report: NonNull<u8>,
2619                p_report_length: NonNull<CFIndex>,
2620                timeout: CFTimeInterval,
2621                callback: IOHIDReportCallback,
2622                context: NonNull<c_void>,
2623            ) -> IOReturn;
2624        }
2625        unsafe {
2626            IOHIDDeviceGetReportWithCallback(
2627                self,
2628                report_type,
2629                report_id,
2630                report,
2631                p_report_length,
2632                timeout,
2633                callback,
2634                context,
2635            )
2636        }
2637    }
2638}
2639
2640unsafe impl ConcreteType for IOHIDElement {
2641    /// Returns the type identifier of all IOHIDElement instances.
2642    #[doc(alias = "IOHIDElementGetTypeID")]
2643    #[inline]
2644    fn type_id() -> CFTypeID {
2645        extern "C-unwind" {
2646            fn IOHIDElementGetTypeID() -> CFTypeID;
2647        }
2648        unsafe { IOHIDElementGetTypeID() }
2649    }
2650}
2651
2652impl IOHIDElement {
2653    /// Creates an element from a dictionary.
2654    ///
2655    /// The dictionary should contain keys defined in IOHIDKeys.h and start with kIOHIDElement.  This call is meant be used by a IOHIDDeviceDeviceInterface object.
2656    ///
2657    /// Parameter `allocator`: Allocator to be used during creation.
2658    ///
2659    /// Parameter `dictionary`: dictionary containing values in which to create element.
2660    ///
2661    /// Returns: Returns a new IOHIDElementRef.
2662    #[doc(alias = "IOHIDElementCreateWithDictionary")]
2663    #[inline]
2664    pub unsafe fn with_dictionary(
2665        allocator: Option<&CFAllocator>,
2666        dictionary: &CFDictionary,
2667    ) -> CFRetained<IOHIDElement> {
2668        extern "C-unwind" {
2669            fn IOHIDElementCreateWithDictionary(
2670                allocator: Option<&CFAllocator>,
2671                dictionary: &CFDictionary,
2672            ) -> Option<NonNull<IOHIDElement>>;
2673        }
2674        let ret = unsafe { IOHIDElementCreateWithDictionary(allocator, dictionary) };
2675        let ret =
2676            ret.expect("function was marked as returning non-null, but actually returned NULL");
2677        unsafe { CFRetained::from_raw(ret) }
2678    }
2679
2680    /// Obtain the device associated with the element.
2681    ///
2682    /// Parameter `element`: IOHIDElement to be queried.
2683    ///
2684    /// Returns: Returns the a reference to the device.
2685    #[doc(alias = "IOHIDElementGetDevice")]
2686    #[inline]
2687    pub unsafe fn device(self: &IOHIDElement) -> CFRetained<IOHIDDevice> {
2688        extern "C-unwind" {
2689            fn IOHIDElementGetDevice(element: &IOHIDElement) -> Option<NonNull<IOHIDDevice>>;
2690        }
2691        let ret = unsafe { IOHIDElementGetDevice(self) };
2692        let ret =
2693            ret.expect("function was marked as returning non-null, but actually returned NULL");
2694        unsafe { CFRetained::retain(ret) }
2695    }
2696
2697    /// Returns the parent for the element.
2698    ///
2699    /// The parent element can be an element of type kIOHIDElementTypeCollection.
2700    ///
2701    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2702    ///
2703    /// Returns: Returns an IOHIDElementRef referencing the parent element.
2704    #[doc(alias = "IOHIDElementGetParent")]
2705    #[inline]
2706    pub unsafe fn parent(self: &IOHIDElement) -> Option<CFRetained<IOHIDElement>> {
2707        extern "C-unwind" {
2708            fn IOHIDElementGetParent(element: &IOHIDElement) -> Option<NonNull<IOHIDElement>>;
2709        }
2710        let ret = unsafe { IOHIDElementGetParent(self) };
2711        ret.map(|ret| unsafe { CFRetained::retain(ret) })
2712    }
2713
2714    /// Returns the children for the element.
2715    ///
2716    /// An element of type kIOHIDElementTypeCollection usually contains children.
2717    ///
2718    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2719    ///
2720    /// Returns: Returns an CFArrayRef containing element objects of type IOHIDElementRef.
2721    #[doc(alias = "IOHIDElementGetChildren")]
2722    #[inline]
2723    pub unsafe fn children(self: &IOHIDElement) -> Option<CFRetained<CFArray>> {
2724        extern "C-unwind" {
2725            fn IOHIDElementGetChildren(element: &IOHIDElement) -> Option<NonNull<CFArray>>;
2726        }
2727        let ret = unsafe { IOHIDElementGetChildren(self) };
2728        ret.map(|ret| unsafe { CFRetained::retain(ret) })
2729    }
2730
2731    /// Establish a relationship between one or more elements.
2732    ///
2733    /// This is useful for grouping HID elements with related functionality.
2734    ///
2735    /// Parameter `element`: The element to be modified. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2736    ///
2737    /// Parameter `toAttach`: The element to be attached. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2738    #[doc(alias = "IOHIDElementAttach")]
2739    #[inline]
2740    pub unsafe fn attach(self: &IOHIDElement, to_attach: &IOHIDElement) {
2741        extern "C-unwind" {
2742            fn IOHIDElementAttach(element: &IOHIDElement, to_attach: &IOHIDElement);
2743        }
2744        unsafe { IOHIDElementAttach(self, to_attach) }
2745    }
2746
2747    /// Remove a relationship between one or more elements.
2748    ///
2749    /// This is useful for grouping HID elements with related functionality.
2750    ///
2751    /// Parameter `element`: The element to be modified. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2752    ///
2753    /// Parameter `toDetach`: The element to be detached. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2754    #[doc(alias = "IOHIDElementDetach")]
2755    #[inline]
2756    pub unsafe fn detach(self: &IOHIDElement, to_detach: &IOHIDElement) {
2757        extern "C-unwind" {
2758            fn IOHIDElementDetach(element: &IOHIDElement, to_detach: &IOHIDElement);
2759        }
2760        unsafe { IOHIDElementDetach(self, to_detach) }
2761    }
2762
2763    /// Obtain attached elements.
2764    ///
2765    /// Attached elements are those that have been grouped via IOHIDElementAttach.
2766    ///
2767    /// Parameter `element`: The element to be modified. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2768    ///
2769    /// Returns: Returns a copy of the current attached elements.
2770    #[doc(alias = "IOHIDElementCopyAttached")]
2771    #[inline]
2772    pub unsafe fn attached(self: &IOHIDElement) -> Option<CFRetained<CFArray>> {
2773        extern "C-unwind" {
2774            fn IOHIDElementCopyAttached(element: &IOHIDElement) -> Option<NonNull<CFArray>>;
2775        }
2776        let ret = unsafe { IOHIDElementCopyAttached(self) };
2777        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
2778    }
2779
2780    /// Retrieves the cookie for the element.
2781    ///
2782    /// The IOHIDElementCookie represent a unique identifier for an element within a device.
2783    ///
2784    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2785    ///
2786    /// Returns: Returns the IOHIDElementCookie for the element.
2787    #[doc(alias = "IOHIDElementGetCookie")]
2788    #[inline]
2789    pub unsafe fn cookie(self: &IOHIDElement) -> IOHIDElementCookie {
2790        extern "C-unwind" {
2791            fn IOHIDElementGetCookie(element: &IOHIDElement) -> IOHIDElementCookie;
2792        }
2793        unsafe { IOHIDElementGetCookie(self) }
2794    }
2795
2796    /// Retrieves the type for the element.
2797    ///
2798    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2799    ///
2800    /// Returns: Returns the IOHIDElementType for the element.
2801    #[doc(alias = "IOHIDElementGetType")]
2802    #[inline]
2803    pub unsafe fn r#type(self: &IOHIDElement) -> IOHIDElementType {
2804        extern "C-unwind" {
2805            fn IOHIDElementGetType(element: &IOHIDElement) -> IOHIDElementType;
2806        }
2807        unsafe { IOHIDElementGetType(self) }
2808    }
2809
2810    /// Retrieves the collection type for the element.
2811    ///
2812    /// The value returned by this method only makes sense if the element type is kIOHIDElementTypeCollection.
2813    ///
2814    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2815    ///
2816    /// Returns: Returns the IOHIDElementCollectionType for the element.
2817    #[doc(alias = "IOHIDElementGetCollectionType")]
2818    #[inline]
2819    pub unsafe fn collection_type(self: &IOHIDElement) -> IOHIDElementCollectionType {
2820        extern "C-unwind" {
2821            fn IOHIDElementGetCollectionType(element: &IOHIDElement) -> IOHIDElementCollectionType;
2822        }
2823        unsafe { IOHIDElementGetCollectionType(self) }
2824    }
2825
2826    /// Retrieves the usage page for an element.
2827    ///
2828    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2829    ///
2830    /// Returns: Returns the usage page for the element.
2831    #[doc(alias = "IOHIDElementGetUsagePage")]
2832    #[inline]
2833    pub unsafe fn usage_page(self: &IOHIDElement) -> u32 {
2834        extern "C-unwind" {
2835            fn IOHIDElementGetUsagePage(element: &IOHIDElement) -> u32;
2836        }
2837        unsafe { IOHIDElementGetUsagePage(self) }
2838    }
2839
2840    /// Retrieves the usage for an element.
2841    ///
2842    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2843    ///
2844    /// Returns: Returns the usage for the element.
2845    #[doc(alias = "IOHIDElementGetUsage")]
2846    #[inline]
2847    pub unsafe fn usage(self: &IOHIDElement) -> u32 {
2848        extern "C-unwind" {
2849            fn IOHIDElementGetUsage(element: &IOHIDElement) -> u32;
2850        }
2851        unsafe { IOHIDElementGetUsage(self) }
2852    }
2853
2854    /// Returns the virtual property for the element.
2855    ///
2856    /// Indicates whether the element is a virtual element.
2857    ///
2858    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2859    ///
2860    /// Returns: Returns the TRUE if virtual or FALSE if not.
2861    #[doc(alias = "IOHIDElementIsVirtual")]
2862    #[inline]
2863    pub unsafe fn is_virtual(self: &IOHIDElement) -> bool {
2864        extern "C-unwind" {
2865            fn IOHIDElementIsVirtual(element: &IOHIDElement) -> Boolean;
2866        }
2867        let ret = unsafe { IOHIDElementIsVirtual(self) };
2868        ret != 0
2869    }
2870
2871    /// Returns the relative property for the element.
2872    ///
2873    /// Indicates whether the data is relative (indicating the change in value from the last report) or absolute
2874    /// (based on a fixed origin).
2875    ///
2876    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2877    ///
2878    /// Returns: Returns TRUE if relative or FALSE if absolute.
2879    #[doc(alias = "IOHIDElementIsRelative")]
2880    #[inline]
2881    pub unsafe fn is_relative(self: &IOHIDElement) -> bool {
2882        extern "C-unwind" {
2883            fn IOHIDElementIsRelative(element: &IOHIDElement) -> Boolean;
2884        }
2885        let ret = unsafe { IOHIDElementIsRelative(self) };
2886        ret != 0
2887    }
2888
2889    /// Returns the wrap property for the element.
2890    ///
2891    /// Wrap indicates whether the data "rolls over" when reaching either the extreme high or low value.
2892    ///
2893    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2894    ///
2895    /// Returns: Returns TRUE if wrapping or FALSE if non-wrapping.
2896    #[doc(alias = "IOHIDElementIsWrapping")]
2897    #[inline]
2898    pub unsafe fn is_wrapping(self: &IOHIDElement) -> bool {
2899        extern "C-unwind" {
2900            fn IOHIDElementIsWrapping(element: &IOHIDElement) -> Boolean;
2901        }
2902        let ret = unsafe { IOHIDElementIsWrapping(self) };
2903        ret != 0
2904    }
2905
2906    /// Returns the array property for the element.
2907    ///
2908    /// Indicates whether the element represents variable or array data values. Variable values represent data from a
2909    /// physical control.  An array returns an index in each field that corresponds to the pressed button
2910    /// (like keyboard scan codes).
2911    /// <br>
2912    /// <b>
2913    /// Note:
2914    /// </b>
2915    /// The HID Manager will represent most elements as "variable" including the possible usages of an array.
2916    /// Array indices will remain as "array" elements with a usage of 0xffffffff.
2917    ///
2918    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2919    ///
2920    /// Returns: Returns TRUE if array or FALSE if variable.
2921    #[doc(alias = "IOHIDElementIsArray")]
2922    #[inline]
2923    pub unsafe fn is_array(self: &IOHIDElement) -> bool {
2924        extern "C-unwind" {
2925            fn IOHIDElementIsArray(element: &IOHIDElement) -> Boolean;
2926        }
2927        let ret = unsafe { IOHIDElementIsArray(self) };
2928        ret != 0
2929    }
2930
2931    /// Returns the linear property for the element.
2932    ///
2933    /// Indicates whether the value for the element has been processed in some way, and no longer represents a linear
2934    /// relationship between what is measured and the value that is reported.
2935    ///
2936    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2937    ///
2938    /// Returns: Returns TRUE if non linear or FALSE if linear.
2939    #[doc(alias = "IOHIDElementIsNonLinear")]
2940    #[inline]
2941    pub unsafe fn is_non_linear(self: &IOHIDElement) -> bool {
2942        extern "C-unwind" {
2943            fn IOHIDElementIsNonLinear(element: &IOHIDElement) -> Boolean;
2944        }
2945        let ret = unsafe { IOHIDElementIsNonLinear(self) };
2946        ret != 0
2947    }
2948
2949    /// Returns the preferred state property for the element.
2950    ///
2951    /// Indicates whether the element has a preferred state to which it will return when the user is not physically
2952    /// interacting with the control.
2953    ///
2954    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2955    ///
2956    /// Returns: Returns TRUE if preferred state or FALSE if no preferred state.
2957    #[doc(alias = "IOHIDElementHasPreferredState")]
2958    #[inline]
2959    pub unsafe fn has_preferred_state(self: &IOHIDElement) -> bool {
2960        extern "C-unwind" {
2961            fn IOHIDElementHasPreferredState(element: &IOHIDElement) -> Boolean;
2962        }
2963        let ret = unsafe { IOHIDElementHasPreferredState(self) };
2964        ret != 0
2965    }
2966
2967    /// Returns the null state property for the element.
2968    ///
2969    /// Indicates whether the element has a state in which it is not sending meaningful data.
2970    ///
2971    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2972    ///
2973    /// Returns: Returns TRUE if null state or FALSE if no null state.
2974    #[doc(alias = "IOHIDElementHasNullState")]
2975    #[inline]
2976    pub unsafe fn has_null_state(self: &IOHIDElement) -> bool {
2977        extern "C-unwind" {
2978            fn IOHIDElementHasNullState(element: &IOHIDElement) -> Boolean;
2979        }
2980        let ret = unsafe { IOHIDElementHasNullState(self) };
2981        ret != 0
2982    }
2983
2984    /// Returns the name for the element.
2985    ///
2986    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
2987    ///
2988    /// Returns: Returns CFStringRef containing the element name.
2989    #[doc(alias = "IOHIDElementGetName")]
2990    #[inline]
2991    pub unsafe fn name(self: &IOHIDElement) -> CFRetained<CFString> {
2992        extern "C-unwind" {
2993            fn IOHIDElementGetName(element: &IOHIDElement) -> Option<NonNull<CFString>>;
2994        }
2995        let ret = unsafe { IOHIDElementGetName(self) };
2996        let ret =
2997            ret.expect("function was marked as returning non-null, but actually returned NULL");
2998        unsafe { CFRetained::retain(ret) }
2999    }
3000
3001    /// Returns the report ID for the element.
3002    ///
3003    /// The report ID represents what report this particular element belongs to.
3004    ///
3005    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3006    ///
3007    /// Returns: Returns the report ID.
3008    #[doc(alias = "IOHIDElementGetReportID")]
3009    #[inline]
3010    pub unsafe fn report_id(self: &IOHIDElement) -> u32 {
3011        extern "C-unwind" {
3012            fn IOHIDElementGetReportID(element: &IOHIDElement) -> u32;
3013        }
3014        unsafe { IOHIDElementGetReportID(self) }
3015    }
3016
3017    /// Returns the report size in bits for the element.
3018    ///
3019    /// If the element is an array type the total number of bit in the element is equal to
3020    /// IOHIDElementGetReportSize(element) * IOHIDElementGetReportCount(element). Otherwise this size is the
3021    /// total number of bits in the element.
3022    ///
3023    ///
3024    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3025    ///
3026    /// Returns: Returns the report size.
3027    #[doc(alias = "IOHIDElementGetReportSize")]
3028    #[inline]
3029    pub unsafe fn report_size(self: &IOHIDElement) -> u32 {
3030        extern "C-unwind" {
3031            fn IOHIDElementGetReportSize(element: &IOHIDElement) -> u32;
3032        }
3033        unsafe { IOHIDElementGetReportSize(self) }
3034    }
3035
3036    /// Returns the report count for the element.
3037    ///
3038    /// If the IOHIDElementGetReportCount(element) is greater than one and the element does not represent an
3039    /// array then the element represents a repeated set of usages, the size of each usage in the element is
3040    /// IOHIDElementGetReportSize(element) / IOHIDElementGetReportCount(element).
3041    ///
3042    ///
3043    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3044    ///
3045    /// Returns: Returns the report count.
3046    #[doc(alias = "IOHIDElementGetReportCount")]
3047    #[inline]
3048    pub unsafe fn report_count(self: &IOHIDElement) -> u32 {
3049        extern "C-unwind" {
3050            fn IOHIDElementGetReportCount(element: &IOHIDElement) -> u32;
3051        }
3052        unsafe { IOHIDElementGetReportCount(self) }
3053    }
3054
3055    /// Returns the unit property for the element.
3056    ///
3057    /// The unit property is described in more detail in Section 6.2.2.7 of the
3058    /// "Device Class Definition for Human Interface Devices(HID)" Specification, Version 1.11.
3059    ///
3060    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3061    ///
3062    /// Returns: Returns the unit.
3063    #[doc(alias = "IOHIDElementGetUnit")]
3064    #[inline]
3065    pub unsafe fn unit(self: &IOHIDElement) -> u32 {
3066        extern "C-unwind" {
3067            fn IOHIDElementGetUnit(element: &IOHIDElement) -> u32;
3068        }
3069        unsafe { IOHIDElementGetUnit(self) }
3070    }
3071
3072    /// Returns the code associated with the unit exponent as outlined in the HID spec
3073    ///
3074    /// The unit exponent property is described in more detail in Section 6.2.2.7 of the
3075    /// "Device Class Definition for Human Interface Devices(HID)" Specification, Version 1.11.
3076    ///
3077    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3078    ///
3079    /// Returns: Returns the unit exponent.
3080    #[doc(alias = "IOHIDElementGetUnitExponent")]
3081    #[inline]
3082    pub unsafe fn unit_exponent(self: &IOHIDElement) -> u32 {
3083        extern "C-unwind" {
3084            fn IOHIDElementGetUnitExponent(element: &IOHIDElement) -> u32;
3085        }
3086        unsafe { IOHIDElementGetUnitExponent(self) }
3087    }
3088
3089    /// Returns the minimum value possible for the element.
3090    ///
3091    /// This corresponds to the logical minimun, which indicates the lower bounds of a variable element.
3092    ///
3093    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3094    ///
3095    /// Returns: Returns the logical minimum.
3096    #[doc(alias = "IOHIDElementGetLogicalMin")]
3097    #[inline]
3098    pub unsafe fn logical_min(self: &IOHIDElement) -> CFIndex {
3099        extern "C-unwind" {
3100            fn IOHIDElementGetLogicalMin(element: &IOHIDElement) -> CFIndex;
3101        }
3102        unsafe { IOHIDElementGetLogicalMin(self) }
3103    }
3104
3105    /// Returns the maximum value possible for the element.
3106    ///
3107    /// This corresponds to the logical maximum, which indicates the upper bounds of a variable element.
3108    ///
3109    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3110    ///
3111    /// Returns: Returns the logical maximum.
3112    #[doc(alias = "IOHIDElementGetLogicalMax")]
3113    #[inline]
3114    pub unsafe fn logical_max(self: &IOHIDElement) -> CFIndex {
3115        extern "C-unwind" {
3116            fn IOHIDElementGetLogicalMax(element: &IOHIDElement) -> CFIndex;
3117        }
3118        unsafe { IOHIDElementGetLogicalMax(self) }
3119    }
3120
3121    /// Returns the scaled minimum value possible for the element.
3122    ///
3123    /// Minimum value for the physical extent of a variable element. This represents the value for the logical minimum with units applied to it.
3124    ///
3125    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3126    ///
3127    /// Returns: Returns the physical minimum.
3128    #[doc(alias = "IOHIDElementGetPhysicalMin")]
3129    #[inline]
3130    pub unsafe fn physical_min(self: &IOHIDElement) -> CFIndex {
3131        extern "C-unwind" {
3132            fn IOHIDElementGetPhysicalMin(element: &IOHIDElement) -> CFIndex;
3133        }
3134        unsafe { IOHIDElementGetPhysicalMin(self) }
3135    }
3136
3137    /// Returns the scaled maximum value possible for the element.
3138    ///
3139    /// Maximum value for the physical extent of a variable element.  This represents the value for the logical maximum with units applied to it.
3140    ///
3141    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3142    ///
3143    /// Returns: Returns the physical maximum.
3144    #[doc(alias = "IOHIDElementGetPhysicalMax")]
3145    #[inline]
3146    pub unsafe fn physical_max(self: &IOHIDElement) -> CFIndex {
3147        extern "C-unwind" {
3148            fn IOHIDElementGetPhysicalMax(element: &IOHIDElement) -> CFIndex;
3149        }
3150        unsafe { IOHIDElementGetPhysicalMax(self) }
3151    }
3152
3153    /// Returns the an element property.
3154    ///
3155    /// Property keys are prefixed by kIOHIDElement and declared in IOHIDKeys.h.
3156    ///
3157    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3158    ///
3159    /// Parameter `key`: The key to be used when querying the element.
3160    ///
3161    /// Returns: Returns the property.
3162    #[doc(alias = "IOHIDElementGetProperty")]
3163    #[inline]
3164    pub unsafe fn property(self: &IOHIDElement, key: &CFString) -> Option<CFRetained<CFType>> {
3165        extern "C-unwind" {
3166            fn IOHIDElementGetProperty(
3167                element: &IOHIDElement,
3168                key: &CFString,
3169            ) -> Option<NonNull<CFType>>;
3170        }
3171        let ret = unsafe { IOHIDElementGetProperty(self, key) };
3172        ret.map(|ret| unsafe { CFRetained::retain(ret) })
3173    }
3174
3175    /// Sets an element property.
3176    ///
3177    /// This method can be used to set arbitrary element properties, such as application specific references.
3178    ///
3179    /// Parameter `element`: The element to be queried. If this parameter is not a valid IOHIDElementRef, the behavior is undefined.
3180    ///
3181    /// Parameter `key`: The key to be used when querying the element.
3182    ///
3183    /// Returns: Returns TRUE if successful.
3184    #[doc(alias = "IOHIDElementSetProperty")]
3185    #[inline]
3186    pub unsafe fn set_property(self: &IOHIDElement, key: &CFString, property: &CFType) -> bool {
3187        extern "C-unwind" {
3188            fn IOHIDElementSetProperty(
3189                element: &IOHIDElement,
3190                key: &CFString,
3191                property: &CFType,
3192            ) -> Boolean;
3193        }
3194        let ret = unsafe { IOHIDElementSetProperty(self, key, property) };
3195        ret != 0
3196    }
3197}
3198
3199/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohideventstruct?language=objc)
3200#[repr(C)]
3201#[derive(Clone, Copy, Debug, PartialEq)]
3202pub struct IOHIDEventStruct {
3203    pub r#type: IOHIDElementType,
3204    pub elementCookie: IOHIDElementCookie,
3205    pub value: i32,
3206    pub timestamp: AbsoluteTime,
3207    pub longValueSize: u32,
3208    pub longValue: *mut c_void,
3209}
3210
3211#[cfg(feature = "objc2")]
3212unsafe impl Encode for IOHIDEventStruct {
3213    const ENCODING: Encoding = Encoding::Struct(
3214        "IOHIDEventStruct",
3215        &[
3216            <IOHIDElementType>::ENCODING,
3217            <IOHIDElementCookie>::ENCODING,
3218            <i32>::ENCODING,
3219            <AbsoluteTime>::ENCODING,
3220            <u32>::ENCODING,
3221            <*mut c_void>::ENCODING,
3222        ],
3223    );
3224}
3225
3226#[cfg(feature = "objc2")]
3227unsafe impl RefEncode for IOHIDEventStruct {
3228    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
3229}
3230
3231/// Type and arguments of callout C function that is used when a
3232/// completion routine is called, see
3233/// IOHIDLib.h:setRemovalCallback().
3234///
3235/// Parameter `target`: void * pointer to your data, often a pointer to an object.
3236///
3237/// Parameter `result`: Completion result of desired operation.
3238///
3239/// Parameter `refcon`: void * pointer to more data.
3240///
3241/// Parameter `sender`: Interface instance sending the completion routine.
3242///
3243/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidcallbackfunction?language=objc)
3244pub type IOHIDCallbackFunction =
3245    Option<unsafe extern "C-unwind" fn(*mut c_void, IOReturn, *mut c_void, *mut c_void)>;
3246
3247/// Type and arguments of callout C function that is used when a
3248/// completion routine is called, see IOHIDLib.h:setElementValue().
3249///
3250/// Parameter `target`: void * pointer to your data, often a pointer to an object.
3251///
3252/// Parameter `result`: Completion result of desired operation.
3253///
3254/// Parameter `refcon`: void * pointer to more data.
3255///
3256/// Parameter `sender`: Interface instance sending the completion routine.
3257///
3258/// Parameter `elementCookie`: Element within interface instance sending completion.
3259///
3260/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidelementcallbackfunction?language=objc)
3261pub type IOHIDElementCallbackFunction = Option<
3262    unsafe extern "C-unwind" fn(
3263        *mut c_void,
3264        IOReturn,
3265        *mut c_void,
3266        *mut c_void,
3267        IOHIDElementCookie,
3268    ),
3269>;
3270
3271/// Type and arguments of callout C function that is used when a
3272/// completion routine is called, see IOHIDLib.h:setReport().
3273///
3274/// Parameter `target`: void * pointer to your data, often a pointer to an object.
3275///
3276/// Parameter `result`: Completion result of desired operation.
3277///
3278/// Parameter `refcon`: void * pointer to more data.
3279///
3280/// Parameter `sender`: Interface instance sending the completion routine.
3281///
3282/// Parameter `bufferSize`: Size of the buffer received upon completion.
3283///
3284/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidreportcallbackfunction?language=objc)
3285pub type IOHIDReportCallbackFunction =
3286    Option<unsafe extern "C-unwind" fn(*mut c_void, IOReturn, *mut c_void, *mut c_void, u32)>;
3287
3288/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddeviceinterface?language=objc)
3289#[cfg(feature = "libc")]
3290#[repr(C)]
3291#[derive(Clone, Copy, Debug, PartialEq)]
3292pub struct IOHIDDeviceInterface {
3293    pub(crate) _reserved: *mut c_void,
3294    pub QueryInterface:
3295        Option<unsafe extern "C-unwind" fn(*mut c_void, REFIID, *mut LPVOID) -> HRESULT>,
3296    pub AddRef: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3297    pub Release: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3298    pub createAsyncEventSource:
3299        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut *mut CFRunLoopSource) -> IOReturn>,
3300    pub getAsyncEventSource:
3301        Option<unsafe extern "C-unwind" fn(*mut c_void) -> *mut CFRunLoopSource>,
3302    pub createAsyncPort:
3303        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut libc::mach_port_t) -> IOReturn>,
3304    pub getAsyncPort: Option<unsafe extern "C-unwind" fn(*mut c_void) -> libc::mach_port_t>,
3305    pub open: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
3306    pub close: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3307    pub setRemovalCallback: Option<
3308        unsafe extern "C-unwind" fn(
3309            *mut c_void,
3310            IOHIDCallbackFunction,
3311            *mut c_void,
3312            *mut c_void,
3313        ) -> IOReturn,
3314    >,
3315    pub getElementValue: Option<
3316        unsafe extern "C-unwind" fn(
3317            *mut c_void,
3318            IOHIDElementCookie,
3319            *mut IOHIDEventStruct,
3320        ) -> IOReturn,
3321    >,
3322    pub setElementValue: Option<
3323        unsafe extern "C-unwind" fn(
3324            *mut c_void,
3325            IOHIDElementCookie,
3326            *mut IOHIDEventStruct,
3327            u32,
3328            IOHIDElementCallbackFunction,
3329            *mut c_void,
3330            *mut c_void,
3331        ) -> IOReturn,
3332    >,
3333    pub queryElementValue: Option<
3334        unsafe extern "C-unwind" fn(
3335            *mut c_void,
3336            IOHIDElementCookie,
3337            *mut IOHIDEventStruct,
3338            u32,
3339            IOHIDElementCallbackFunction,
3340            *mut c_void,
3341            *mut c_void,
3342        ) -> IOReturn,
3343    >,
3344    pub startAllQueues: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3345    pub stopAllQueues: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3346    pub allocQueue:
3347        Option<unsafe extern "C-unwind" fn(*mut c_void) -> *mut *mut IOHIDQueueInterface>,
3348    pub allocOutputTransaction: Option<
3349        unsafe extern "C-unwind" fn(*mut c_void) -> *mut *mut IOHIDOutputTransactionInterface,
3350    >,
3351    pub setReport: Option<
3352        unsafe extern "C-unwind" fn(
3353            *mut c_void,
3354            IOHIDReportType,
3355            u32,
3356            *mut c_void,
3357            u32,
3358            u32,
3359            IOHIDReportCallbackFunction,
3360            *mut c_void,
3361            *mut c_void,
3362        ) -> IOReturn,
3363    >,
3364    pub getReport: Option<
3365        unsafe extern "C-unwind" fn(
3366            *mut c_void,
3367            IOHIDReportType,
3368            u32,
3369            *mut c_void,
3370            *mut u32,
3371            u32,
3372            IOHIDReportCallbackFunction,
3373            *mut c_void,
3374            *mut c_void,
3375        ) -> IOReturn,
3376    >,
3377}
3378
3379#[cfg(all(feature = "libc", feature = "objc2"))]
3380unsafe impl Encode for IOHIDDeviceInterface {
3381    const ENCODING: Encoding = Encoding::Struct("IOHIDDeviceInterface", &[
3382        <*mut c_void>::ENCODING,
3383        <Option<unsafe extern "C-unwind" fn(*mut c_void,REFIID,*mut LPVOID,) -> HRESULT>>::ENCODING,
3384        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3385        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3386        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *mut CFRunLoopSource,) -> IOReturn>>::ENCODING,
3387        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut CFRunLoopSource>>::ENCODING,
3388        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut libc::mach_port_t,) -> IOReturn>>::ENCODING,
3389        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> libc::mach_port_t>>::ENCODING,
3390        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
3391        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3392        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3393        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,) -> IOReturn>>::ENCODING,
3394        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,u32,IOHIDElementCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3395        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,u32,IOHIDElementCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3396        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3397        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3398        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut *mut IOHIDQueueInterface>>::ENCODING,
3399        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut *mut IOHIDOutputTransactionInterface>>::ENCODING,
3400        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*mut c_void,u32,u32,IOHIDReportCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3401        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*mut c_void,*mut u32,u32,IOHIDReportCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3402    ]);
3403}
3404
3405#[cfg(all(feature = "libc", feature = "objc2"))]
3406unsafe impl RefEncode for IOHIDDeviceInterface {
3407    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
3408}
3409
3410/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddeviceinterface121?language=objc)
3411#[cfg(feature = "libc")]
3412#[repr(C)]
3413#[derive(Clone, Copy, Debug, PartialEq)]
3414pub struct IOHIDDeviceInterface121 {
3415    pub(crate) _reserved: *mut c_void,
3416    pub QueryInterface:
3417        Option<unsafe extern "C-unwind" fn(*mut c_void, REFIID, *mut LPVOID) -> HRESULT>,
3418    pub AddRef: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3419    pub Release: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3420    pub createAsyncEventSource:
3421        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut *mut CFRunLoopSource) -> IOReturn>,
3422    pub getAsyncEventSource:
3423        Option<unsafe extern "C-unwind" fn(*mut c_void) -> *mut CFRunLoopSource>,
3424    pub createAsyncPort:
3425        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut libc::mach_port_t) -> IOReturn>,
3426    pub getAsyncPort: Option<unsafe extern "C-unwind" fn(*mut c_void) -> libc::mach_port_t>,
3427    pub open: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
3428    pub close: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3429    pub setRemovalCallback: Option<
3430        unsafe extern "C-unwind" fn(
3431            *mut c_void,
3432            IOHIDCallbackFunction,
3433            *mut c_void,
3434            *mut c_void,
3435        ) -> IOReturn,
3436    >,
3437    pub getElementValue: Option<
3438        unsafe extern "C-unwind" fn(
3439            *mut c_void,
3440            IOHIDElementCookie,
3441            *mut IOHIDEventStruct,
3442        ) -> IOReturn,
3443    >,
3444    pub setElementValue: Option<
3445        unsafe extern "C-unwind" fn(
3446            *mut c_void,
3447            IOHIDElementCookie,
3448            *mut IOHIDEventStruct,
3449            u32,
3450            IOHIDElementCallbackFunction,
3451            *mut c_void,
3452            *mut c_void,
3453        ) -> IOReturn,
3454    >,
3455    pub queryElementValue: Option<
3456        unsafe extern "C-unwind" fn(
3457            *mut c_void,
3458            IOHIDElementCookie,
3459            *mut IOHIDEventStruct,
3460            u32,
3461            IOHIDElementCallbackFunction,
3462            *mut c_void,
3463            *mut c_void,
3464        ) -> IOReturn,
3465    >,
3466    pub startAllQueues: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3467    pub stopAllQueues: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3468    pub allocQueue:
3469        Option<unsafe extern "C-unwind" fn(*mut c_void) -> *mut *mut IOHIDQueueInterface>,
3470    pub allocOutputTransaction: Option<
3471        unsafe extern "C-unwind" fn(*mut c_void) -> *mut *mut IOHIDOutputTransactionInterface,
3472    >,
3473    pub setReport: Option<
3474        unsafe extern "C-unwind" fn(
3475            *mut c_void,
3476            IOHIDReportType,
3477            u32,
3478            *mut c_void,
3479            u32,
3480            u32,
3481            IOHIDReportCallbackFunction,
3482            *mut c_void,
3483            *mut c_void,
3484        ) -> IOReturn,
3485    >,
3486    pub getReport: Option<
3487        unsafe extern "C-unwind" fn(
3488            *mut c_void,
3489            IOHIDReportType,
3490            u32,
3491            *mut c_void,
3492            *mut u32,
3493            u32,
3494            IOHIDReportCallbackFunction,
3495            *mut c_void,
3496            *mut c_void,
3497        ) -> IOReturn,
3498    >,
3499}
3500
3501#[cfg(all(feature = "libc", feature = "objc2"))]
3502unsafe impl Encode for IOHIDDeviceInterface121 {
3503    const ENCODING: Encoding = Encoding::Struct("IOHIDDeviceInterface121", &[
3504        <*mut c_void>::ENCODING,
3505        <Option<unsafe extern "C-unwind" fn(*mut c_void,REFIID,*mut LPVOID,) -> HRESULT>>::ENCODING,
3506        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3507        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3508        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *mut CFRunLoopSource,) -> IOReturn>>::ENCODING,
3509        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut CFRunLoopSource>>::ENCODING,
3510        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut libc::mach_port_t,) -> IOReturn>>::ENCODING,
3511        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> libc::mach_port_t>>::ENCODING,
3512        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
3513        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3514        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3515        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,) -> IOReturn>>::ENCODING,
3516        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,u32,IOHIDElementCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3517        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,u32,IOHIDElementCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3518        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3519        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3520        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut *mut IOHIDQueueInterface>>::ENCODING,
3521        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut *mut IOHIDOutputTransactionInterface>>::ENCODING,
3522        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*mut c_void,u32,u32,IOHIDReportCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3523        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*mut c_void,*mut u32,u32,IOHIDReportCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3524    ]);
3525}
3526
3527#[cfg(all(feature = "libc", feature = "objc2"))]
3528unsafe impl RefEncode for IOHIDDeviceInterface121 {
3529    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
3530}
3531
3532/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddeviceinterface122?language=objc)
3533#[cfg(feature = "libc")]
3534#[repr(C)]
3535#[derive(Clone, Copy, Debug, PartialEq)]
3536pub struct IOHIDDeviceInterface122 {
3537    pub(crate) _reserved: *mut c_void,
3538    pub QueryInterface:
3539        Option<unsafe extern "C-unwind" fn(*mut c_void, REFIID, *mut LPVOID) -> HRESULT>,
3540    pub AddRef: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3541    pub Release: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3542    pub createAsyncEventSource:
3543        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut *mut CFRunLoopSource) -> IOReturn>,
3544    pub getAsyncEventSource:
3545        Option<unsafe extern "C-unwind" fn(*mut c_void) -> *mut CFRunLoopSource>,
3546    pub createAsyncPort:
3547        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut libc::mach_port_t) -> IOReturn>,
3548    pub getAsyncPort: Option<unsafe extern "C-unwind" fn(*mut c_void) -> libc::mach_port_t>,
3549    pub open: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
3550    pub close: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3551    pub setRemovalCallback: Option<
3552        unsafe extern "C-unwind" fn(
3553            *mut c_void,
3554            IOHIDCallbackFunction,
3555            *mut c_void,
3556            *mut c_void,
3557        ) -> IOReturn,
3558    >,
3559    pub getElementValue: Option<
3560        unsafe extern "C-unwind" fn(
3561            *mut c_void,
3562            IOHIDElementCookie,
3563            *mut IOHIDEventStruct,
3564        ) -> IOReturn,
3565    >,
3566    pub setElementValue: Option<
3567        unsafe extern "C-unwind" fn(
3568            *mut c_void,
3569            IOHIDElementCookie,
3570            *mut IOHIDEventStruct,
3571            u32,
3572            IOHIDElementCallbackFunction,
3573            *mut c_void,
3574            *mut c_void,
3575        ) -> IOReturn,
3576    >,
3577    pub queryElementValue: Option<
3578        unsafe extern "C-unwind" fn(
3579            *mut c_void,
3580            IOHIDElementCookie,
3581            *mut IOHIDEventStruct,
3582            u32,
3583            IOHIDElementCallbackFunction,
3584            *mut c_void,
3585            *mut c_void,
3586        ) -> IOReturn,
3587    >,
3588    pub startAllQueues: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3589    pub stopAllQueues: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3590    pub allocQueue:
3591        Option<unsafe extern "C-unwind" fn(*mut c_void) -> *mut *mut IOHIDQueueInterface>,
3592    pub allocOutputTransaction: Option<
3593        unsafe extern "C-unwind" fn(*mut c_void) -> *mut *mut IOHIDOutputTransactionInterface,
3594    >,
3595    pub setReport: Option<
3596        unsafe extern "C-unwind" fn(
3597            *mut c_void,
3598            IOHIDReportType,
3599            u32,
3600            *mut c_void,
3601            u32,
3602            u32,
3603            IOHIDReportCallbackFunction,
3604            *mut c_void,
3605            *mut c_void,
3606        ) -> IOReturn,
3607    >,
3608    pub getReport: Option<
3609        unsafe extern "C-unwind" fn(
3610            *mut c_void,
3611            IOHIDReportType,
3612            u32,
3613            *mut c_void,
3614            *mut u32,
3615            u32,
3616            IOHIDReportCallbackFunction,
3617            *mut c_void,
3618            *mut c_void,
3619        ) -> IOReturn,
3620    >,
3621    pub copyMatchingElements: Option<
3622        unsafe extern "C-unwind" fn(
3623            *mut c_void,
3624            *const CFDictionary,
3625            *mut *const CFArray,
3626        ) -> IOReturn,
3627    >,
3628    pub setInterruptReportHandlerCallback: Option<
3629        unsafe extern "C-unwind" fn(
3630            *mut c_void,
3631            *mut c_void,
3632            u32,
3633            IOHIDReportCallbackFunction,
3634            *mut c_void,
3635            *mut c_void,
3636        ) -> IOReturn,
3637    >,
3638}
3639
3640#[cfg(all(feature = "libc", feature = "objc2"))]
3641unsafe impl Encode for IOHIDDeviceInterface122 {
3642    const ENCODING: Encoding = Encoding::Struct("IOHIDDeviceInterface122", &[
3643        <*mut c_void>::ENCODING,
3644        <Option<unsafe extern "C-unwind" fn(*mut c_void,REFIID,*mut LPVOID,) -> HRESULT>>::ENCODING,
3645        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3646        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3647        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *mut CFRunLoopSource,) -> IOReturn>>::ENCODING,
3648        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut CFRunLoopSource>>::ENCODING,
3649        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut libc::mach_port_t,) -> IOReturn>>::ENCODING,
3650        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> libc::mach_port_t>>::ENCODING,
3651        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
3652        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3653        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3654        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,) -> IOReturn>>::ENCODING,
3655        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,u32,IOHIDElementCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3656        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,u32,IOHIDElementCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3657        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3658        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3659        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut *mut IOHIDQueueInterface>>::ENCODING,
3660        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut *mut IOHIDOutputTransactionInterface>>::ENCODING,
3661        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*mut c_void,u32,u32,IOHIDReportCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3662        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*mut c_void,*mut u32,u32,IOHIDReportCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3663        <Option<unsafe extern "C-unwind" fn(*mut c_void,*const CFDictionary,*mut *const CFArray,) -> IOReturn>>::ENCODING,
3664        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut c_void,u32,IOHIDReportCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3665    ]);
3666}
3667
3668#[cfg(all(feature = "libc", feature = "objc2"))]
3669unsafe impl RefEncode for IOHIDDeviceInterface122 {
3670    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
3671}
3672
3673/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidqueueinterface?language=objc)
3674#[cfg(feature = "libc")]
3675#[repr(C)]
3676#[derive(Clone, Copy, Debug, PartialEq)]
3677pub struct IOHIDQueueInterface {
3678    pub(crate) _reserved: *mut c_void,
3679    pub QueryInterface:
3680        Option<unsafe extern "C-unwind" fn(*mut c_void, REFIID, *mut LPVOID) -> HRESULT>,
3681    pub AddRef: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3682    pub Release: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3683    pub createAsyncEventSource:
3684        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut *mut CFRunLoopSource) -> IOReturn>,
3685    pub getAsyncEventSource:
3686        Option<unsafe extern "C-unwind" fn(*mut c_void) -> *mut CFRunLoopSource>,
3687    pub createAsyncPort:
3688        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut libc::mach_port_t) -> IOReturn>,
3689    pub getAsyncPort: Option<unsafe extern "C-unwind" fn(*mut c_void) -> libc::mach_port_t>,
3690    pub create: Option<unsafe extern "C-unwind" fn(*mut c_void, u32, u32) -> IOReturn>,
3691    pub dispose: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3692    pub addElement:
3693        Option<unsafe extern "C-unwind" fn(*mut c_void, IOHIDElementCookie, u32) -> IOReturn>,
3694    pub removeElement:
3695        Option<unsafe extern "C-unwind" fn(*mut c_void, IOHIDElementCookie) -> IOReturn>,
3696    pub hasElement: Option<unsafe extern "C-unwind" fn(*mut c_void, IOHIDElementCookie) -> Boolean>,
3697    pub start: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3698    pub stop: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3699    pub getNextEvent: Option<
3700        unsafe extern "C-unwind" fn(
3701            *mut c_void,
3702            *mut IOHIDEventStruct,
3703            AbsoluteTime,
3704            u32,
3705        ) -> IOReturn,
3706    >,
3707    pub setEventCallout: Option<
3708        unsafe extern "C-unwind" fn(
3709            *mut c_void,
3710            IOHIDCallbackFunction,
3711            *mut c_void,
3712            *mut c_void,
3713        ) -> IOReturn,
3714    >,
3715    pub getEventCallout: Option<
3716        unsafe extern "C-unwind" fn(
3717            *mut c_void,
3718            *mut IOHIDCallbackFunction,
3719            *mut *mut c_void,
3720            *mut *mut c_void,
3721        ) -> IOReturn,
3722    >,
3723}
3724
3725#[cfg(all(feature = "libc", feature = "objc2"))]
3726unsafe impl Encode for IOHIDQueueInterface {
3727    const ENCODING: Encoding = Encoding::Struct("IOHIDQueueInterface", &[
3728        <*mut c_void>::ENCODING,
3729        <Option<unsafe extern "C-unwind" fn(*mut c_void,REFIID,*mut LPVOID,) -> HRESULT>>::ENCODING,
3730        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3731        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3732        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *mut CFRunLoopSource,) -> IOReturn>>::ENCODING,
3733        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut CFRunLoopSource>>::ENCODING,
3734        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut libc::mach_port_t,) -> IOReturn>>::ENCODING,
3735        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> libc::mach_port_t>>::ENCODING,
3736        <Option<unsafe extern "C-unwind" fn(*mut c_void,u32,u32,) -> IOReturn>>::ENCODING,
3737        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3738        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,u32,) -> IOReturn>>::ENCODING,
3739        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,) -> IOReturn>>::ENCODING,
3740        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,) -> Boolean>>::ENCODING,
3741        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3742        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3743        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDEventStruct,AbsoluteTime,u32,) -> IOReturn>>::ENCODING,
3744        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3745        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDCallbackFunction,*mut *mut c_void,*mut *mut c_void,) -> IOReturn>>::ENCODING,
3746    ]);
3747}
3748
3749#[cfg(all(feature = "libc", feature = "objc2"))]
3750unsafe impl RefEncode for IOHIDQueueInterface {
3751    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
3752}
3753
3754/// [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidoutputtransactioninterface?language=objc)
3755#[cfg(feature = "libc")]
3756#[repr(C)]
3757#[derive(Clone, Copy, Debug, PartialEq)]
3758pub struct IOHIDOutputTransactionInterface {
3759    pub(crate) _reserved: *mut c_void,
3760    pub QueryInterface:
3761        Option<unsafe extern "C-unwind" fn(*mut c_void, REFIID, *mut LPVOID) -> HRESULT>,
3762    pub AddRef: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3763    pub Release: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
3764    pub createAsyncEventSource:
3765        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut *mut CFRunLoopSource) -> IOReturn>,
3766    pub getAsyncEventSource:
3767        Option<unsafe extern "C-unwind" fn(*mut c_void) -> *mut CFRunLoopSource>,
3768    pub createAsyncPort:
3769        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut libc::mach_port_t) -> IOReturn>,
3770    pub getAsyncPort: Option<unsafe extern "C-unwind" fn(*mut c_void) -> libc::mach_port_t>,
3771    pub create: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3772    pub dispose: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3773    pub addElement:
3774        Option<unsafe extern "C-unwind" fn(*mut c_void, IOHIDElementCookie) -> IOReturn>,
3775    pub removeElement:
3776        Option<unsafe extern "C-unwind" fn(*mut c_void, IOHIDElementCookie) -> IOReturn>,
3777    pub hasElement: Option<unsafe extern "C-unwind" fn(*mut c_void, IOHIDElementCookie) -> Boolean>,
3778    pub setElementDefault: Option<
3779        unsafe extern "C-unwind" fn(
3780            *mut c_void,
3781            IOHIDElementCookie,
3782            *mut IOHIDEventStruct,
3783        ) -> IOReturn,
3784    >,
3785    pub getElementDefault: Option<
3786        unsafe extern "C-unwind" fn(
3787            *mut c_void,
3788            IOHIDElementCookie,
3789            *mut IOHIDEventStruct,
3790        ) -> IOReturn,
3791    >,
3792    pub setElementValue: Option<
3793        unsafe extern "C-unwind" fn(
3794            *mut c_void,
3795            IOHIDElementCookie,
3796            *mut IOHIDEventStruct,
3797        ) -> IOReturn,
3798    >,
3799    pub getElementValue: Option<
3800        unsafe extern "C-unwind" fn(
3801            *mut c_void,
3802            IOHIDElementCookie,
3803            *mut IOHIDEventStruct,
3804        ) -> IOReturn,
3805    >,
3806    pub commit: Option<
3807        unsafe extern "C-unwind" fn(
3808            *mut c_void,
3809            u32,
3810            IOHIDCallbackFunction,
3811            *mut c_void,
3812            *mut c_void,
3813        ) -> IOReturn,
3814    >,
3815    pub clear: Option<unsafe extern "C-unwind" fn(*mut c_void) -> IOReturn>,
3816}
3817
3818#[cfg(all(feature = "libc", feature = "objc2"))]
3819unsafe impl Encode for IOHIDOutputTransactionInterface {
3820    const ENCODING: Encoding = Encoding::Struct("IOHIDOutputTransactionInterface", &[
3821        <*mut c_void>::ENCODING,
3822        <Option<unsafe extern "C-unwind" fn(*mut c_void,REFIID,*mut LPVOID,) -> HRESULT>>::ENCODING,
3823        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3824        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
3825        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *mut CFRunLoopSource,) -> IOReturn>>::ENCODING,
3826        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> *mut CFRunLoopSource>>::ENCODING,
3827        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut libc::mach_port_t,) -> IOReturn>>::ENCODING,
3828        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> libc::mach_port_t>>::ENCODING,
3829        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3830        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3831        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,) -> IOReturn>>::ENCODING,
3832        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,) -> IOReturn>>::ENCODING,
3833        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,) -> Boolean>>::ENCODING,
3834        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,) -> IOReturn>>::ENCODING,
3835        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,) -> IOReturn>>::ENCODING,
3836        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,) -> IOReturn>>::ENCODING,
3837        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDElementCookie,*mut IOHIDEventStruct,) -> IOReturn>>::ENCODING,
3838        <Option<unsafe extern "C-unwind" fn(*mut c_void,u32,IOHIDCallbackFunction,*mut c_void,*mut c_void,) -> IOReturn>>::ENCODING,
3839        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> IOReturn>>::ENCODING,
3840    ]);
3841}
3842
3843#[cfg(all(feature = "libc", feature = "objc2"))]
3844unsafe impl RefEncode for IOHIDOutputTransactionInterface {
3845    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
3846}
3847
3848/// Various options that can be supplied to IOHIDManager functions.
3849///
3850/// explicit enough.
3851///
3852/// supplied to
3853///
3854/// ```text
3855///  IOHIDManagerCreate
3856/// ```
3857///
3858/// to create and/or use a
3859/// persistent properties store.
3860///
3861/// to
3862///
3863/// ```text
3864///  IOHIDManagerCreate when you wish to overwrite the
3865///             persistent properties store without loading it first.
3866///  @const     kIOHIDManagerOptionDoNotSaveProperties This constant can be supplied
3867///             to @link IOHIDManagerCreate
3868/// ```
3869///
3870/// when you want to use the
3871/// persistent property store but do not want to add to it.
3872///
3873/// manager will act independently from calls to the manager.
3874/// This allows for devices to be scheduled on separate queues, and
3875/// their lifetime can persist after the manager is gone.
3876///
3877/// The following calls will not be propagated to the devices:
3878/// IOHIDManagerOpen, IOHIDManagerClose, IOHIDManagerScheduleWithRunLoop,
3879/// IOHIDManagerUnscheduleFromRunLoop, IOHIDManagerSetDispatchQueue,
3880/// IOHIDManagerSetCancelHandler, IOHIDManagerActivate, IOHIDManagerCancel,
3881/// IOHIDManagerRegisterInputReportCallback,
3882/// IOHIDManagerRegisterInputReportWithTimeStampCallback,
3883/// IOHIDManagerRegisterInputValueCallback, IOHIDManagerSetInputValueMatching,
3884/// IOHIDManagerSetInputValueMatchingMultiple,
3885///
3886/// This also means that the manager will not be able to receive input
3887/// reports or input values, since the devices may or may not be scheduled.
3888///
3889/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidmanageroptions?language=objc)
3890// NS_OPTIONS
3891#[repr(transparent)]
3892#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
3893pub struct IOHIDManagerOptions(pub u32);
3894bitflags::bitflags! {
3895    impl IOHIDManagerOptions: u32 {
3896        #[doc(alias = "kIOHIDManagerOptionNone")]
3897        const None = 0x0;
3898        #[doc(alias = "kIOHIDManagerOptionUsePersistentProperties")]
3899        const UsePersistentProperties = 0x1;
3900        #[doc(alias = "kIOHIDManagerOptionDoNotLoadProperties")]
3901        const DoNotLoadProperties = 0x2;
3902        #[doc(alias = "kIOHIDManagerOptionDoNotSaveProperties")]
3903        const DoNotSaveProperties = 0x4;
3904        #[doc(alias = "kIOHIDManagerOptionIndependentDevices")]
3905        const IndependentDevices = 0x8;
3906    }
3907}
3908
3909#[cfg(feature = "objc2")]
3910unsafe impl Encode for IOHIDManagerOptions {
3911    const ENCODING: Encoding = u32::ENCODING;
3912}
3913
3914#[cfg(feature = "objc2")]
3915unsafe impl RefEncode for IOHIDManagerOptions {
3916    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
3917}
3918
3919/// This is the type of a reference to the IOHIDManager.
3920///
3921/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidmanager?language=objc)
3922#[repr(C)]
3923pub struct IOHIDManager {
3924    inner: [u8; 0],
3925    _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
3926}
3927
3928cf_type!(
3929    unsafe impl IOHIDManager {}
3930);
3931#[cfg(feature = "objc2")]
3932cf_objc2_type!(
3933    unsafe impl RefEncode<"__IOHIDManager"> for IOHIDManager {}
3934);
3935
3936unsafe impl ConcreteType for IOHIDManager {
3937    /// Returns the type identifier of all IOHIDManager instances.
3938    #[doc(alias = "IOHIDManagerGetTypeID")]
3939    #[inline]
3940    fn type_id() -> CFTypeID {
3941        extern "C-unwind" {
3942            fn IOHIDManagerGetTypeID() -> CFTypeID;
3943        }
3944        unsafe { IOHIDManagerGetTypeID() }
3945    }
3946}
3947
3948impl IOHIDManager {
3949    /// Creates an IOHIDManager object.
3950    ///
3951    /// The IOHIDManager object is meant as a global management system
3952    /// for communicating with HID devices.
3953    ///
3954    /// Parameter `allocator`: Allocator to be used during creation.
3955    ///
3956    /// Parameter `options`: Supply
3957    ///
3958    /// ```text
3959    ///  kIOHIDManagerOptionUsePersistentProperties
3960    /// ```
3961    ///
3962    /// to load
3963    /// properties from the default persistent property store. Otherwise supply
3964    ///
3965    /// ```text
3966    ///  kIOHIDManagerOptionNone
3967    /// ```
3968    ///
3969    /// (or 0).
3970    ///
3971    /// Returns: Returns a new IOHIDManagerRef.
3972    #[doc(alias = "IOHIDManagerCreate")]
3973    #[inline]
3974    pub unsafe fn new(
3975        allocator: Option<&CFAllocator>,
3976        options: IOOptionBits,
3977    ) -> CFRetained<IOHIDManager> {
3978        extern "C-unwind" {
3979            fn IOHIDManagerCreate(
3980                allocator: Option<&CFAllocator>,
3981                options: IOOptionBits,
3982            ) -> Option<NonNull<IOHIDManager>>;
3983        }
3984        let ret = unsafe { IOHIDManagerCreate(allocator, options) };
3985        let ret =
3986            ret.expect("function was marked as returning non-null, but actually returned NULL");
3987        unsafe { CFRetained::from_raw(ret) }
3988    }
3989
3990    /// Opens the IOHIDManager.
3991    ///
3992    /// This will open both current and future devices that are
3993    /// enumerated. To establish an exclusive link use the
3994    /// kIOHIDOptionsTypeSeizeDevice option.
3995    ///
3996    /// Parameter `manager`: Reference to an IOHIDManager.
3997    ///
3998    /// Parameter `options`: Option bits to be sent down to the manager and device.
3999    ///
4000    /// Returns: Returns kIOReturnSuccess if successful.
4001    #[doc(alias = "IOHIDManagerOpen")]
4002    #[inline]
4003    pub unsafe fn open(self: &IOHIDManager, options: IOOptionBits) -> IOReturn {
4004        extern "C-unwind" {
4005            fn IOHIDManagerOpen(manager: &IOHIDManager, options: IOOptionBits) -> IOReturn;
4006        }
4007        unsafe { IOHIDManagerOpen(self, options) }
4008    }
4009
4010    /// Closes the IOHIDManager.
4011    ///
4012    /// This will also close all devices that are currently enumerated.
4013    ///
4014    /// Parameter `manager`: Reference to an IOHIDManager.
4015    ///
4016    /// Parameter `options`: Option bits to be sent down to the manager and device.
4017    ///
4018    /// Returns: Returns kIOReturnSuccess if successful.
4019    #[doc(alias = "IOHIDManagerClose")]
4020    #[inline]
4021    pub unsafe fn close(self: &IOHIDManager, options: IOOptionBits) -> IOReturn {
4022        extern "C-unwind" {
4023            fn IOHIDManagerClose(manager: &IOHIDManager, options: IOOptionBits) -> IOReturn;
4024        }
4025        unsafe { IOHIDManagerClose(self, options) }
4026    }
4027
4028    /// Obtains a property of an IOHIDManager.
4029    ///
4030    /// Property keys are prefixed by kIOHIDDevice and declared in
4031    /// <IOKit
4032    /// /hid/IOHIDKeys.h>.
4033    ///
4034    /// Parameter `manager`: Reference to an IOHIDManager.
4035    ///
4036    /// Parameter `key`: CFStringRef containing key to be used when querying the
4037    /// manager.
4038    ///
4039    /// Returns: Returns CFTypeRef containing the property.
4040    #[doc(alias = "IOHIDManagerGetProperty")]
4041    #[inline]
4042    pub unsafe fn property(self: &IOHIDManager, key: &CFString) -> Option<CFRetained<CFType>> {
4043        extern "C-unwind" {
4044            fn IOHIDManagerGetProperty(
4045                manager: &IOHIDManager,
4046                key: &CFString,
4047            ) -> Option<NonNull<CFType>>;
4048        }
4049        let ret = unsafe { IOHIDManagerGetProperty(self, key) };
4050        ret.map(|ret| unsafe { CFRetained::retain(ret) })
4051    }
4052
4053    /// Sets a property for an IOHIDManager.
4054    ///
4055    /// Property keys are prefixed by kIOHIDDevice and kIOHIDManager and
4056    /// declared in
4057    /// <IOKit
4058    /// /hid/IOHIDKeys.h>. This method will propagate
4059    /// any relevent properties to current and future devices that are
4060    /// enumerated.
4061    ///
4062    /// Parameter `manager`: Reference to an IOHIDManager.
4063    ///
4064    /// Parameter `key`: CFStringRef containing key to be used when modifiying the
4065    /// device property.
4066    ///
4067    /// Parameter `value`: CFTypeRef containing the property value to be set.
4068    ///
4069    /// Returns: Returns TRUE if successful.
4070    #[doc(alias = "IOHIDManagerSetProperty")]
4071    #[inline]
4072    pub unsafe fn set_property(self: &IOHIDManager, key: &CFString, value: &CFType) -> bool {
4073        extern "C-unwind" {
4074            fn IOHIDManagerSetProperty(
4075                manager: &IOHIDManager,
4076                key: &CFString,
4077                value: &CFType,
4078            ) -> Boolean;
4079        }
4080        let ret = unsafe { IOHIDManagerSetProperty(self, key, value) };
4081        ret != 0
4082    }
4083
4084    /// Schedules HID manager with run loop.
4085    ///
4086    /// Formally associates manager with client's run loop. Scheduling
4087    /// this device with the run loop is necessary before making use of
4088    /// any asynchronous APIs.  This will propagate to current and
4089    /// future devices that are enumerated.
4090    ///
4091    /// Parameter `manager`: Reference to an IOHIDManager.
4092    ///
4093    /// Parameter `runLoop`: RunLoop to be used when scheduling any asynchronous
4094    /// activity.
4095    ///
4096    /// Parameter `runLoopMode`: Run loop mode to be used when scheduling any
4097    /// asynchronous activity.
4098    #[doc(alias = "IOHIDManagerScheduleWithRunLoop")]
4099    #[inline]
4100    pub unsafe fn schedule_with_run_loop(
4101        self: &IOHIDManager,
4102        run_loop: &CFRunLoop,
4103        run_loop_mode: &CFString,
4104    ) {
4105        extern "C-unwind" {
4106            fn IOHIDManagerScheduleWithRunLoop(
4107                manager: &IOHIDManager,
4108                run_loop: &CFRunLoop,
4109                run_loop_mode: &CFString,
4110            );
4111        }
4112        unsafe { IOHIDManagerScheduleWithRunLoop(self, run_loop, run_loop_mode) }
4113    }
4114
4115    /// Unschedules HID manager with run loop.
4116    ///
4117    /// Formally disassociates device with client's run loop. This will
4118    /// propagate to current devices that are enumerated.
4119    ///
4120    /// Parameter `manager`: Reference to an IOHIDManager.
4121    ///
4122    /// Parameter `runLoop`: RunLoop to be used when unscheduling any asynchronous
4123    /// activity.
4124    ///
4125    /// Parameter `runLoopMode`: Run loop mode to be used when unscheduling any
4126    /// asynchronous activity.
4127    #[doc(alias = "IOHIDManagerUnscheduleFromRunLoop")]
4128    #[inline]
4129    pub unsafe fn unschedule_from_run_loop(
4130        self: &IOHIDManager,
4131        run_loop: &CFRunLoop,
4132        run_loop_mode: &CFString,
4133    ) {
4134        extern "C-unwind" {
4135            fn IOHIDManagerUnscheduleFromRunLoop(
4136                manager: &IOHIDManager,
4137                run_loop: &CFRunLoop,
4138                run_loop_mode: &CFString,
4139            );
4140        }
4141        unsafe { IOHIDManagerUnscheduleFromRunLoop(self, run_loop, run_loop_mode) }
4142    }
4143
4144    /// Sets the dispatch queue to be associated with the IOHIDManager.
4145    /// This is necessary in order to receive asynchronous events from the kernel.
4146    ///
4147    ///
4148    /// An IOHIDManager should not be associated with both a runloop and
4149    /// dispatch queue. A call to IOHIDManagerSetDispatchQueue should only be made once.
4150    ///
4151    /// After a dispatch queue is set, the IOHIDManager must make a call to activate
4152    /// via IOHIDManagerActivate and cancel via IOHIDManagerCancel. All calls to "Register"
4153    /// functions should be done before activation and not after cancellation.
4154    ///
4155    ///
4156    /// Parameter `manager`: Reference to an IOHIDManager
4157    ///
4158    ///
4159    /// Parameter `queue`: The dispatch queue to which the event handler block will be submitted.
4160    #[doc(alias = "IOHIDManagerSetDispatchQueue")]
4161    #[cfg(feature = "dispatch2")]
4162    #[inline]
4163    pub unsafe fn set_dispatch_queue(self: &IOHIDManager, queue: &DispatchQueue) {
4164        extern "C-unwind" {
4165            fn IOHIDManagerSetDispatchQueue(manager: &IOHIDManager, queue: &DispatchQueue);
4166        }
4167        unsafe { IOHIDManagerSetDispatchQueue(self, queue) }
4168    }
4169
4170    /// Sets a cancellation handler for the dispatch queue associated with
4171    /// IOHIDManagerSetDispatchQueue.
4172    ///
4173    ///
4174    /// The cancellation handler (if specified) will be will be submitted to the
4175    /// manager's dispatch queue in response to a call to IOHIDManagerCancel after
4176    /// all the events have been handled.
4177    ///
4178    /// IOHIDManagerSetCancelHandler should not be used when scheduling with
4179    /// a run loop.
4180    ///
4181    /// The IOHIDManagerRef should only be released after the manager has been
4182    /// cancelled, and the cancel handler has been called. This is to ensure all
4183    /// asynchronous objects are released. For example:
4184    ///
4185    /// dispatch_block_t cancelHandler = dispatch_block_create(0, ^{
4186    /// CFRelease(manager);
4187    /// });
4188    /// IOHIDManagerSetCancelHandler(manager, cancelHandler);
4189    /// IOHIDManagerActivate(manager);
4190    /// IOHIDManageCancel(manager);
4191    ///
4192    ///
4193    /// Parameter `manager`: Reference to an IOHIDManager.
4194    ///
4195    ///
4196    /// Parameter `handler`: The cancellation handler block to be associated with the dispatch queue.
4197    #[doc(alias = "IOHIDManagerSetCancelHandler")]
4198    #[cfg(feature = "dispatch2")]
4199    #[inline]
4200    pub unsafe fn set_cancel_handler(self: &IOHIDManager, handler: dispatch_block_t) {
4201        extern "C-unwind" {
4202            fn IOHIDManagerSetCancelHandler(manager: &IOHIDManager, handler: dispatch_block_t);
4203        }
4204        unsafe { IOHIDManagerSetCancelHandler(self, handler) }
4205    }
4206
4207    /// Activates the IOHIDManager object.
4208    ///
4209    ///
4210    /// An IOHIDManager object associated with a dispatch queue is created
4211    /// in an inactive state. The object must be activated in order to
4212    /// receive asynchronous events from the kernel.
4213    ///
4214    /// A dispatch queue must be set via IOHIDManagerSetDispatchQueue before
4215    /// activation.
4216    ///
4217    /// An activated manager must be cancelled via IOHIDManagerCancel. All calls
4218    /// to "Register" functions should be done before activation
4219    /// and not after cancellation.
4220    ///
4221    /// Calling IOHIDManagerActivate on an active IOHIDManager has no effect.
4222    ///
4223    ///
4224    /// Parameter `manager`: Reference to an IOHIDManager
4225    #[doc(alias = "IOHIDManagerActivate")]
4226    #[inline]
4227    pub unsafe fn activate(self: &IOHIDManager) {
4228        extern "C-unwind" {
4229            fn IOHIDManagerActivate(manager: &IOHIDManager);
4230        }
4231        unsafe { IOHIDManagerActivate(self) }
4232    }
4233
4234    /// Cancels the IOHIDManager preventing any further invocation
4235    /// of its event handler block.
4236    ///
4237    ///
4238    /// Cancelling prevents any further invocation of the event handler block for
4239    /// the specified dispatch queue, but does not interrupt an event handler
4240    /// block that is already in progress.
4241    ///
4242    /// Explicit cancellation of the IOHIDManager is required, no implicit
4243    /// cancellation takes place.
4244    ///
4245    /// Calling IOHIDManagerCancel on an already cancelled queue has no effect.
4246    ///
4247    /// The IOHIDManagerRef should only be released after the manager has been
4248    /// cancelled, and the cancel handler has been called. This is to ensure all
4249    /// asynchronous objects are released. For example:
4250    ///
4251    /// dispatch_block_t cancelHandler = dispatch_block_create(0, ^{
4252    /// CFRelease(manager);
4253    /// });
4254    /// IOHIDManagerSetCancelHandler(manager, cancelHandler);
4255    /// IOHIDManagerActivate(manager);
4256    /// IOHIDManageCancel(manager);
4257    ///
4258    ///
4259    /// Parameter `manager`: Reference to an IOHIDManager
4260    #[doc(alias = "IOHIDManagerCancel")]
4261    #[inline]
4262    pub unsafe fn cancel(self: &IOHIDManager) {
4263        extern "C-unwind" {
4264            fn IOHIDManagerCancel(manager: &IOHIDManager);
4265        }
4266        unsafe { IOHIDManagerCancel(self) }
4267    }
4268
4269    /// Sets matching criteria for device enumeration.
4270    ///
4271    /// Matching keys are prefixed by kIOHIDDevice and declared in
4272    /// <IOKit
4273    /// /hid/IOHIDKeys.h>.  Passing a NULL dictionary will result
4274    /// in all devices being enumerated. Any subsequent calls will cause
4275    /// the hid manager to release previously enumerated devices and
4276    /// restart the enuerate process using the revised criteria.  If
4277    /// interested in multiple, specific device classes, please defer to
4278    /// using IOHIDManagerSetDeviceMatchingMultiple.
4279    /// If a dispatch queue is set, this call must occur before activation.
4280    ///
4281    /// Parameter `manager`: Reference to an IOHIDManager.
4282    ///
4283    /// Parameter `matching`: CFDictionaryRef containg device matching criteria.
4284    #[doc(alias = "IOHIDManagerSetDeviceMatching")]
4285    #[inline]
4286    pub unsafe fn set_device_matching(self: &IOHIDManager, matching: Option<&CFDictionary>) {
4287        extern "C-unwind" {
4288            fn IOHIDManagerSetDeviceMatching(
4289                manager: &IOHIDManager,
4290                matching: Option<&CFDictionary>,
4291            );
4292        }
4293        unsafe { IOHIDManagerSetDeviceMatching(self, matching) }
4294    }
4295
4296    /// Sets multiple matching criteria for device enumeration.
4297    ///
4298    /// Matching keys are prefixed by kIOHIDDevice and declared in
4299    /// <IOKit
4300    /// /hid/IOHIDKeys.h>.  This method is useful if interested
4301    /// in multiple, specific device classes.
4302    /// If a dispatch queue is set, this call must occur before activation.
4303    ///
4304    /// Parameter `manager`: Reference to an IOHIDManager.
4305    ///
4306    /// Parameter `multiple`: CFArrayRef containing multiple CFDictionaryRef objects
4307    /// containg device matching criteria.
4308    #[doc(alias = "IOHIDManagerSetDeviceMatchingMultiple")]
4309    #[inline]
4310    pub unsafe fn set_device_matching_multiple(self: &IOHIDManager, multiple: Option<&CFArray>) {
4311        extern "C-unwind" {
4312            fn IOHIDManagerSetDeviceMatchingMultiple(
4313                manager: &IOHIDManager,
4314                multiple: Option<&CFArray>,
4315            );
4316        }
4317        unsafe { IOHIDManagerSetDeviceMatchingMultiple(self, multiple) }
4318    }
4319
4320    /// Obtains currently enumerated devices.
4321    ///
4322    /// Parameter `manager`: Reference to an IOHIDManager.
4323    ///
4324    /// Returns: CFSetRef containing IOHIDDeviceRefs.
4325    #[doc(alias = "IOHIDManagerCopyDevices")]
4326    #[inline]
4327    pub unsafe fn devices(self: &IOHIDManager) -> Option<CFRetained<CFSet>> {
4328        extern "C-unwind" {
4329            fn IOHIDManagerCopyDevices(manager: &IOHIDManager) -> Option<NonNull<CFSet>>;
4330        }
4331        let ret = unsafe { IOHIDManagerCopyDevices(self) };
4332        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
4333    }
4334
4335    /// Registers a callback to be used a device is enumerated.
4336    ///
4337    /// Only device matching the set criteria will be enumerated.
4338    /// If a dispatch queue is set, this call must occur before activation.
4339    /// Devices provided in the callback will be scheduled with the same
4340    /// runloop/dispatch queue as the IOHIDManagerRef, and should not be
4341    /// rescheduled.
4342    ///
4343    /// Parameter `manager`: Reference to an IOHIDManagerRef.
4344    ///
4345    /// Parameter `callback`: Pointer to a callback method of type
4346    /// IOHIDDeviceCallback.
4347    ///
4348    /// Parameter `context`: Pointer to data to be passed to the callback.
4349    #[doc(alias = "IOHIDManagerRegisterDeviceMatchingCallback")]
4350    #[inline]
4351    pub unsafe fn register_device_matching_callback(
4352        self: &IOHIDManager,
4353        callback: IOHIDDeviceCallback,
4354        context: *mut c_void,
4355    ) {
4356        extern "C-unwind" {
4357            fn IOHIDManagerRegisterDeviceMatchingCallback(
4358                manager: &IOHIDManager,
4359                callback: IOHIDDeviceCallback,
4360                context: *mut c_void,
4361            );
4362        }
4363        unsafe { IOHIDManagerRegisterDeviceMatchingCallback(self, callback, context) }
4364    }
4365
4366    /// Registers a callback to be used when any enumerated device is
4367    /// removed.
4368    ///
4369    /// In most cases this occurs when a device is unplugged.
4370    /// If a dispatch queue is set, this call must occur before activation.
4371    ///
4372    /// Parameter `manager`: Reference to an IOHIDManagerRef.
4373    ///
4374    /// Parameter `callback`: Pointer to a callback method of type
4375    /// IOHIDDeviceCallback.
4376    ///
4377    /// Parameter `context`: Pointer to data to be passed to the callback.
4378    #[doc(alias = "IOHIDManagerRegisterDeviceRemovalCallback")]
4379    #[inline]
4380    pub unsafe fn register_device_removal_callback(
4381        self: &IOHIDManager,
4382        callback: IOHIDDeviceCallback,
4383        context: *mut c_void,
4384    ) {
4385        extern "C-unwind" {
4386            fn IOHIDManagerRegisterDeviceRemovalCallback(
4387                manager: &IOHIDManager,
4388                callback: IOHIDDeviceCallback,
4389                context: *mut c_void,
4390            );
4391        }
4392        unsafe { IOHIDManagerRegisterDeviceRemovalCallback(self, callback, context) }
4393    }
4394
4395    /// Registers a callback to be used when an input report is issued by
4396    /// any enumerated device.
4397    ///
4398    /// An input report is an interrupt driver report issued by a device.
4399    /// If a dispatch queue is set, this call must occur before activation.
4400    ///
4401    /// Parameter `manager`: Reference to an IOHIDManagerRef.
4402    ///
4403    /// Parameter `callback`: Pointer to a callback method of type IOHIDReportCallback.
4404    ///
4405    /// Parameter `context`: Pointer to data to be passed to the callback.
4406    #[doc(alias = "IOHIDManagerRegisterInputReportCallback")]
4407    #[inline]
4408    pub unsafe fn register_input_report_callback(
4409        self: &IOHIDManager,
4410        callback: IOHIDReportCallback,
4411        context: *mut c_void,
4412    ) {
4413        extern "C-unwind" {
4414            fn IOHIDManagerRegisterInputReportCallback(
4415                manager: &IOHIDManager,
4416                callback: IOHIDReportCallback,
4417                context: *mut c_void,
4418            );
4419        }
4420        unsafe { IOHIDManagerRegisterInputReportCallback(self, callback, context) }
4421    }
4422
4423    /// Registers a callback to be used when an input report is issued by
4424    /// any enumerated device.
4425    ///
4426    /// An input report is an interrupt driver report issued by a device.
4427    /// If a dispatch queue is set, this call must occur before activation.
4428    ///
4429    /// Parameter `manager`: Reference to an IOHIDManagerRef.
4430    ///
4431    /// Parameter `callback`: Pointer to a callback method of type
4432    /// IOHIDReportWithTimeStampCallback.
4433    ///
4434    /// Parameter `context`: Pointer to data to be passed to the callback.
4435    #[doc(alias = "IOHIDManagerRegisterInputReportWithTimeStampCallback")]
4436    #[inline]
4437    pub unsafe fn register_input_report_with_time_stamp_callback(
4438        self: &IOHIDManager,
4439        callback: IOHIDReportWithTimeStampCallback,
4440        context: *mut c_void,
4441    ) {
4442        extern "C-unwind" {
4443            fn IOHIDManagerRegisterInputReportWithTimeStampCallback(
4444                manager: &IOHIDManager,
4445                callback: IOHIDReportWithTimeStampCallback,
4446                context: *mut c_void,
4447            );
4448        }
4449        unsafe { IOHIDManagerRegisterInputReportWithTimeStampCallback(self, callback, context) }
4450    }
4451
4452    /// Registers a callback to be used when an input value is issued by
4453    /// any enumerated device.
4454    ///
4455    /// An input element refers to any element of type
4456    /// kIOHIDElementTypeInput and is usually issued by interrupt driven
4457    /// reports.
4458    /// If a dispatch queue is set, this call must occur before activation.
4459    ///
4460    /// Parameter `manager`: Reference to an IOHIDManagerRef.
4461    ///
4462    /// Parameter `callback`: Pointer to a callback method of type IOHIDValueCallback.
4463    ///
4464    /// Parameter `context`: Pointer to data to be passed to the callback.
4465    #[doc(alias = "IOHIDManagerRegisterInputValueCallback")]
4466    #[inline]
4467    pub unsafe fn register_input_value_callback(
4468        self: &IOHIDManager,
4469        callback: IOHIDValueCallback,
4470        context: *mut c_void,
4471    ) {
4472        extern "C-unwind" {
4473            fn IOHIDManagerRegisterInputValueCallback(
4474                manager: &IOHIDManager,
4475                callback: IOHIDValueCallback,
4476                context: *mut c_void,
4477            );
4478        }
4479        unsafe { IOHIDManagerRegisterInputValueCallback(self, callback, context) }
4480    }
4481
4482    /// Sets matching criteria for input values received via
4483    /// IOHIDManagerRegisterInputValueCallback.
4484    ///
4485    /// Matching keys are prefixed by kIOHIDElement and declared in
4486    /// <IOKit
4487    /// /hid/IOHIDKeys.h>.  Passing a NULL dictionary will result
4488    /// in all devices being enumerated. Any subsequent calls will cause
4489    /// the hid manager to release previously matched input elements and
4490    /// restart the matching process using the revised criteria.  If
4491    /// interested in multiple, specific device elements, please defer to
4492    /// using IOHIDManagerSetInputValueMatchingMultiple.
4493    /// If a dispatch queue is set, this call must occur before activation.
4494    ///
4495    /// Parameter `manager`: Reference to an IOHIDManager.
4496    ///
4497    /// Parameter `matching`: CFDictionaryRef containg device matching criteria.
4498    #[doc(alias = "IOHIDManagerSetInputValueMatching")]
4499    #[inline]
4500    pub unsafe fn set_input_value_matching(self: &IOHIDManager, matching: Option<&CFDictionary>) {
4501        extern "C-unwind" {
4502            fn IOHIDManagerSetInputValueMatching(
4503                manager: &IOHIDManager,
4504                matching: Option<&CFDictionary>,
4505            );
4506        }
4507        unsafe { IOHIDManagerSetInputValueMatching(self, matching) }
4508    }
4509
4510    /// Sets multiple matching criteria for input values received via
4511    /// IOHIDManagerRegisterInputValueCallback.
4512    ///
4513    /// Matching keys are prefixed by kIOHIDElement and declared in
4514    /// <IOKit
4515    /// /hid/IOHIDKeys.h>.  This method is useful if interested
4516    /// in multiple, specific elements.
4517    /// If a dispatch queue is set, this call must occur before activation.
4518    ///
4519    /// Parameter `manager`: Reference to an IOHIDManager.
4520    ///
4521    /// Parameter `multiple`: CFArrayRef containing multiple CFDictionaryRef objects
4522    /// containing input element matching criteria.
4523    #[doc(alias = "IOHIDManagerSetInputValueMatchingMultiple")]
4524    #[inline]
4525    pub unsafe fn set_input_value_matching_multiple(
4526        self: &IOHIDManager,
4527        multiple: Option<&CFArray>,
4528    ) {
4529        extern "C-unwind" {
4530            fn IOHIDManagerSetInputValueMatchingMultiple(
4531                manager: &IOHIDManager,
4532                multiple: Option<&CFArray>,
4533            );
4534        }
4535        unsafe { IOHIDManagerSetInputValueMatchingMultiple(self, multiple) }
4536    }
4537
4538    /// Used to write out the current properties to a specific domain.
4539    ///
4540    /// Using this function will cause the persistent properties to be saved out
4541    /// replacing any properties that already existed in the specified domain. All arguments
4542    /// must be non-NULL except options.
4543    ///
4544    /// Parameter `manager`: Reference to an IOHIDManager.
4545    ///
4546    /// Parameter `applicationID`: Reference to a CFPreferences applicationID.
4547    ///
4548    /// Parameter `userName`: Reference to a CFPreferences userName.
4549    ///
4550    /// Parameter `hostName`: Reference to a CFPreferences hostName.
4551    ///
4552    /// Parameter `options`: Reserved for future use.
4553    #[doc(alias = "IOHIDManagerSaveToPropertyDomain")]
4554    #[inline]
4555    pub unsafe fn save_to_property_domain(
4556        self: &IOHIDManager,
4557        application_id: &CFString,
4558        user_name: &CFString,
4559        host_name: &CFString,
4560        options: IOOptionBits,
4561    ) {
4562        extern "C-unwind" {
4563            fn IOHIDManagerSaveToPropertyDomain(
4564                manager: &IOHIDManager,
4565                application_id: &CFString,
4566                user_name: &CFString,
4567                host_name: &CFString,
4568                options: IOOptionBits,
4569            );
4570        }
4571        unsafe {
4572            IOHIDManagerSaveToPropertyDomain(self, application_id, user_name, host_name, options)
4573        }
4574    }
4575}
4576
4577/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_undefined?language=objc)
4578pub const kHIDPage_Undefined: c_uint = 0x00;
4579/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_genericdesktop?language=objc)
4580pub const kHIDPage_GenericDesktop: c_uint = 0x01;
4581/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_simulation?language=objc)
4582pub const kHIDPage_Simulation: c_uint = 0x02;
4583/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_vr?language=objc)
4584pub const kHIDPage_VR: c_uint = 0x03;
4585/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_sport?language=objc)
4586pub const kHIDPage_Sport: c_uint = 0x04;
4587/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_game?language=objc)
4588pub const kHIDPage_Game: c_uint = 0x05;
4589/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_genericdevicecontrols?language=objc)
4590pub const kHIDPage_GenericDeviceControls: c_uint = 0x06;
4591/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_keyboardorkeypad?language=objc)
4592pub const kHIDPage_KeyboardOrKeypad: c_uint = 0x07;
4593/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_leds?language=objc)
4594pub const kHIDPage_LEDs: c_uint = 0x08;
4595/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_button?language=objc)
4596pub const kHIDPage_Button: c_uint = 0x09;
4597/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_ordinal?language=objc)
4598pub const kHIDPage_Ordinal: c_uint = 0x0A;
4599/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_telephony?language=objc)
4600pub const kHIDPage_Telephony: c_uint = 0x0B;
4601/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_consumer?language=objc)
4602pub const kHIDPage_Consumer: c_uint = 0x0C;
4603/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_digitizer?language=objc)
4604pub const kHIDPage_Digitizer: c_uint = 0x0D;
4605/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_haptics?language=objc)
4606pub const kHIDPage_Haptics: c_uint = 0x0E;
4607/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_pid?language=objc)
4608pub const kHIDPage_PID: c_uint = 0x0F;
4609/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_unicode?language=objc)
4610pub const kHIDPage_Unicode: c_uint = 0x10;
4611/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_alphanumericdisplay?language=objc)
4612pub const kHIDPage_AlphanumericDisplay: c_uint = 0x14;
4613/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_sensor?language=objc)
4614pub const kHIDPage_Sensor: c_uint = 0x20;
4615/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_brailledisplay?language=objc)
4616pub const kHIDPage_BrailleDisplay: c_uint = 0x41;
4617/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_monitor?language=objc)
4618pub const kHIDPage_Monitor: c_uint = 0x80;
4619/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_monitorenumerated?language=objc)
4620pub const kHIDPage_MonitorEnumerated: c_uint = 0x81;
4621/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_monitorvirtual?language=objc)
4622pub const kHIDPage_MonitorVirtual: c_uint = 0x82;
4623/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_monitorreserved?language=objc)
4624pub const kHIDPage_MonitorReserved: c_uint = 0x83;
4625/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_powerdevice?language=objc)
4626pub const kHIDPage_PowerDevice: c_uint = 0x84;
4627/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_batterysystem?language=objc)
4628pub const kHIDPage_BatterySystem: c_uint = 0x85;
4629/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_powerreserved?language=objc)
4630pub const kHIDPage_PowerReserved: c_uint = 0x86;
4631/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_powerreserved2?language=objc)
4632pub const kHIDPage_PowerReserved2: c_uint = 0x87;
4633/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_barcodescanner?language=objc)
4634pub const kHIDPage_BarCodeScanner: c_uint = 0x8C;
4635/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_weighingdevice?language=objc)
4636pub const kHIDPage_WeighingDevice: c_uint = 0x8D;
4637/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_scale?language=objc)
4638pub const kHIDPage_Scale: c_uint = 0x8D;
4639/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_magneticstripereader?language=objc)
4640pub const kHIDPage_MagneticStripeReader: c_uint = 0x8E;
4641/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_cameracontrol?language=objc)
4642pub const kHIDPage_CameraControl: c_uint = 0x90;
4643/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_arcade?language=objc)
4644pub const kHIDPage_Arcade: c_uint = 0x91;
4645/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_fido?language=objc)
4646pub const kHIDPage_FIDO: c_uint = 0xF1D0;
4647/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidpage_vendordefinedstart?language=objc)
4648pub const kHIDPage_VendorDefinedStart: c_uint = 0xFF00;
4649
4650/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_undefined?language=objc)
4651pub const kHIDUsage_Undefined: c_uint = 0x00;
4652
4653/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_pointer?language=objc)
4654pub const kHIDUsage_GD_Pointer: c_uint = 0x01;
4655/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_mouse?language=objc)
4656pub const kHIDUsage_GD_Mouse: c_uint = 0x02;
4657/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_joystick?language=objc)
4658pub const kHIDUsage_GD_Joystick: c_uint = 0x04;
4659/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_gamepad?language=objc)
4660pub const kHIDUsage_GD_GamePad: c_uint = 0x05;
4661/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_keyboard?language=objc)
4662pub const kHIDUsage_GD_Keyboard: c_uint = 0x06;
4663/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_keypad?language=objc)
4664pub const kHIDUsage_GD_Keypad: c_uint = 0x07;
4665/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_multiaxiscontroller?language=objc)
4666pub const kHIDUsage_GD_MultiAxisController: c_uint = 0x08;
4667/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_tabletpcsystemcontrols?language=objc)
4668pub const kHIDUsage_GD_TabletPCSystemControls: c_uint = 0x09;
4669/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_assistivecontrol?language=objc)
4670pub const kHIDUsage_GD_AssistiveControl: c_uint = 0x0A;
4671/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmultiaxiscontroller?language=objc)
4672pub const kHIDUsage_GD_SystemMultiAxisController: c_uint = 0x0E;
4673/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_spatialcontroller?language=objc)
4674pub const kHIDUsage_GD_SpatialController: c_uint = 0x0F;
4675/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_assistivecontrolcompatible?language=objc)
4676pub const kHIDUsage_GD_AssistiveControlCompatible: c_uint = 0x10;
4677/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_x?language=objc)
4678pub const kHIDUsage_GD_X: c_uint = 0x30;
4679/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_y?language=objc)
4680pub const kHIDUsage_GD_Y: c_uint = 0x31;
4681/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_z?language=objc)
4682pub const kHIDUsage_GD_Z: c_uint = 0x32;
4683/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_rx?language=objc)
4684pub const kHIDUsage_GD_Rx: c_uint = 0x33;
4685/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_ry?language=objc)
4686pub const kHIDUsage_GD_Ry: c_uint = 0x34;
4687/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_rz?language=objc)
4688pub const kHIDUsage_GD_Rz: c_uint = 0x35;
4689/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_slider?language=objc)
4690pub const kHIDUsage_GD_Slider: c_uint = 0x36;
4691/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dial?language=objc)
4692pub const kHIDUsage_GD_Dial: c_uint = 0x37;
4693/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_wheel?language=objc)
4694pub const kHIDUsage_GD_Wheel: c_uint = 0x38;
4695/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_hatswitch?language=objc)
4696pub const kHIDUsage_GD_Hatswitch: c_uint = 0x39;
4697/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_countedbuffer?language=objc)
4698pub const kHIDUsage_GD_CountedBuffer: c_uint = 0x3A;
4699/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_bytecount?language=objc)
4700pub const kHIDUsage_GD_ByteCount: c_uint = 0x3B;
4701/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_motionwakeup?language=objc)
4702pub const kHIDUsage_GD_MotionWakeup: c_uint = 0x3C;
4703/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_start?language=objc)
4704pub const kHIDUsage_GD_Start: c_uint = 0x3D;
4705/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_select?language=objc)
4706pub const kHIDUsage_GD_Select: c_uint = 0x3E;
4707/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_vx?language=objc)
4708pub const kHIDUsage_GD_Vx: c_uint = 0x40;
4709/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_vy?language=objc)
4710pub const kHIDUsage_GD_Vy: c_uint = 0x41;
4711/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_vz?language=objc)
4712pub const kHIDUsage_GD_Vz: c_uint = 0x42;
4713/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_vbrx?language=objc)
4714pub const kHIDUsage_GD_Vbrx: c_uint = 0x43;
4715/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_vbry?language=objc)
4716pub const kHIDUsage_GD_Vbry: c_uint = 0x44;
4717/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_vbrz?language=objc)
4718pub const kHIDUsage_GD_Vbrz: c_uint = 0x45;
4719/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_vno?language=objc)
4720pub const kHIDUsage_GD_Vno: c_uint = 0x46;
4721/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_featurenotification?language=objc)
4722pub const kHIDUsage_GD_FeatureNotification: c_uint = 0x47;
4723/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_resolutionmultiplier?language=objc)
4724pub const kHIDUsage_GD_ResolutionMultiplier: c_uint = 0x48;
4725/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_qx?language=objc)
4726pub const kHIDUsage_GD_Qx: c_uint = 0x49;
4727/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_qy?language=objc)
4728pub const kHIDUsage_GD_Qy: c_uint = 0x4A;
4729/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_qz?language=objc)
4730pub const kHIDUsage_GD_Qz: c_uint = 0x4B;
4731/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_qw?language=objc)
4732pub const kHIDUsage_GD_Qw: c_uint = 0x4C;
4733/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemcontrol?language=objc)
4734pub const kHIDUsage_GD_SystemControl: c_uint = 0x80;
4735/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systempowerdown?language=objc)
4736pub const kHIDUsage_GD_SystemPowerDown: c_uint = 0x81;
4737/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemsleep?language=objc)
4738pub const kHIDUsage_GD_SystemSleep: c_uint = 0x82;
4739/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemwakeup?language=objc)
4740pub const kHIDUsage_GD_SystemWakeUp: c_uint = 0x83;
4741/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemcontextmenu?language=objc)
4742pub const kHIDUsage_GD_SystemContextMenu: c_uint = 0x84;
4743/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmainmenu?language=objc)
4744pub const kHIDUsage_GD_SystemMainMenu: c_uint = 0x85;
4745/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemappmenu?language=objc)
4746pub const kHIDUsage_GD_SystemAppMenu: c_uint = 0x86;
4747/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmenuhelp?language=objc)
4748pub const kHIDUsage_GD_SystemMenuHelp: c_uint = 0x87;
4749/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmenuexit?language=objc)
4750pub const kHIDUsage_GD_SystemMenuExit: c_uint = 0x88;
4751/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmenuselect?language=objc)
4752pub const kHIDUsage_GD_SystemMenuSelect: c_uint = 0x89;
4753/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmenu?language=objc)
4754pub const kHIDUsage_GD_SystemMenu: c_uint = kHIDUsage_GD_SystemMenuSelect;
4755/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmenuright?language=objc)
4756pub const kHIDUsage_GD_SystemMenuRight: c_uint = 0x8A;
4757/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmenuleft?language=objc)
4758pub const kHIDUsage_GD_SystemMenuLeft: c_uint = 0x8B;
4759/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmenuup?language=objc)
4760pub const kHIDUsage_GD_SystemMenuUp: c_uint = 0x8C;
4761/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmenudown?language=objc)
4762pub const kHIDUsage_GD_SystemMenuDown: c_uint = 0x8D;
4763/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemcoldrestart?language=objc)
4764pub const kHIDUsage_GD_SystemColdRestart: c_uint = 0x8E;
4765/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemwarmrestart?language=objc)
4766pub const kHIDUsage_GD_SystemWarmRestart: c_uint = 0x8F;
4767/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dpadup?language=objc)
4768pub const kHIDUsage_GD_DPadUp: c_uint = 0x90;
4769/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dpaddown?language=objc)
4770pub const kHIDUsage_GD_DPadDown: c_uint = 0x91;
4771/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dpadright?language=objc)
4772pub const kHIDUsage_GD_DPadRight: c_uint = 0x92;
4773/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dpadleft?language=objc)
4774pub const kHIDUsage_GD_DPadLeft: c_uint = 0x93;
4775/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_indextrigger?language=objc)
4776pub const kHIDUsage_GD_IndexTrigger: c_uint = 0x94;
4777/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_palmtrigger?language=objc)
4778pub const kHIDUsage_GD_PalmTrigger: c_uint = 0x95;
4779/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_thumbstick?language=objc)
4780pub const kHIDUsage_GD_Thumbstick: c_uint = 0x96;
4781/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_sfshift?language=objc)
4782pub const kHIDUsage_GD_SFShift: c_uint = 0x97;
4783/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_sfshiftlock?language=objc)
4784pub const kHIDUsage_GD_SFShiftLock: c_uint = 0x98;
4785/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_sfshiftlockindicator?language=objc)
4786pub const kHIDUsage_GD_SFShiftLockIndicator: c_uint = 0x99;
4787/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdismissnotification?language=objc)
4788pub const kHIDUsage_GD_SystemDismissNotification: c_uint = 0x9A;
4789/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_donotdisturb?language=objc)
4790pub const kHIDUsage_GD_DoNotDisturb: c_uint = 0x9B;
4791/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdock?language=objc)
4792pub const kHIDUsage_GD_SystemDock: c_uint = 0xA0;
4793/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemundock?language=objc)
4794pub const kHIDUsage_GD_SystemUndock: c_uint = 0xA1;
4795/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemsetup?language=objc)
4796pub const kHIDUsage_GD_SystemSetup: c_uint = 0xA2;
4797/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systembreak?language=objc)
4798pub const kHIDUsage_GD_SystemBreak: c_uint = 0xA3;
4799/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdebuggerbreak?language=objc)
4800pub const kHIDUsage_GD_SystemDebuggerBreak: c_uint = 0xA4;
4801/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_applicationbreak?language=objc)
4802pub const kHIDUsage_GD_ApplicationBreak: c_uint = 0xA5;
4803/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_applicationdebuggerbreak?language=objc)
4804pub const kHIDUsage_GD_ApplicationDebuggerBreak: c_uint = 0xA6;
4805/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemspeakermute?language=objc)
4806pub const kHIDUsage_GD_SystemSpeakerMute: c_uint = 0xA7;
4807/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemhibernate?language=objc)
4808pub const kHIDUsage_GD_SystemHibernate: c_uint = 0xA8;
4809/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemmicrophonemute?language=objc)
4810pub const kHIDUsage_GD_SystemMicrophoneMute: c_uint = 0xA9;
4811/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplayinvert?language=objc)
4812pub const kHIDUsage_GD_SystemDisplayInvert: c_uint = 0xB0;
4813/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplayinternal?language=objc)
4814pub const kHIDUsage_GD_SystemDisplayInternal: c_uint = 0xB1;
4815/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplayexternal?language=objc)
4816pub const kHIDUsage_GD_SystemDisplayExternal: c_uint = 0xB2;
4817/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplayboth?language=objc)
4818pub const kHIDUsage_GD_SystemDisplayBoth: c_uint = 0xB3;
4819/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplaydual?language=objc)
4820pub const kHIDUsage_GD_SystemDisplayDual: c_uint = 0xB4;
4821/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplaytogglemode?language=objc)
4822pub const kHIDUsage_GD_SystemDisplayToggleMode: c_uint = 0xB5;
4823/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplayswap?language=objc)
4824pub const kHIDUsage_GD_SystemDisplaySwap: c_uint = 0xB6;
4825/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplaytogglelcdautoscale?language=objc)
4826pub const kHIDUsage_GD_SystemDisplayToggleLCDAutoscale: c_uint = 0xB7;
4827/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_sensorzone?language=objc)
4828pub const kHIDUsage_GD_SensorZone: c_uint = 0xC0;
4829/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_rpm?language=objc)
4830pub const kHIDUsage_GD_RPM: c_uint = 0xC1;
4831/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_coolantlevel?language=objc)
4832pub const kHIDUsage_GD_CoolantLevel: c_uint = 0xC2;
4833/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_coolantcriticallevel?language=objc)
4834pub const kHIDUsage_GD_CoolantCriticalLevel: c_uint = 0xC3;
4835/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_coolantpump?language=objc)
4836pub const kHIDUsage_GD_CoolantPump: c_uint = 0xC4;
4837/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_chassisenclosure?language=objc)
4838pub const kHIDUsage_GD_ChassisEnclosure: c_uint = 0xC5;
4839/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_wirelessradiobutton?language=objc)
4840pub const kHIDUsage_GD_WirelessRadioButton: c_uint = 0xC6;
4841/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_wirelessradioled?language=objc)
4842pub const kHIDUsage_GD_WirelessRadioLED: c_uint = 0xC7;
4843/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_wirelessradiosliderswitch?language=objc)
4844pub const kHIDUsage_GD_WirelessRadioSliderSwitch: c_uint = 0xC8;
4845/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplayrotationlockbutton?language=objc)
4846pub const kHIDUsage_GD_SystemDisplayRotationLockButton: c_uint = 0xC9;
4847/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_systemdisplayrotationlocksliderswitch?language=objc)
4848pub const kHIDUsage_GD_SystemDisplayRotationLockSliderSwitch: c_uint = 0xCA;
4849/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_controlenable?language=objc)
4850pub const kHIDUsage_GD_ControlEnable: c_uint = 0xCB;
4851/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dockabledeviceuniqueid?language=objc)
4852pub const kHIDUsage_GD_DockableDeviceUniqueID: c_uint = 0xD0;
4853/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dockabledevicevendorid?language=objc)
4854pub const kHIDUsage_GD_DockableDeviceVendorID: c_uint = 0xD1;
4855/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dockabledeviceprimaryusagepage?language=objc)
4856pub const kHIDUsage_GD_DockableDevicePrimaryUsagePage: c_uint = 0xD2;
4857/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dockabledeviceprimaryusageid?language=objc)
4858pub const kHIDUsage_GD_DockableDevicePrimaryUsageID: c_uint = 0xD3;
4859/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dockabledevicedockingstate?language=objc)
4860pub const kHIDUsage_GD_DockableDeviceDockingState: c_uint = 0xD4;
4861/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dockabledevicedisplayocclusion?language=objc)
4862pub const kHIDUsage_GD_DockableDeviceDisplayOcclusion: c_uint = 0xD5;
4863/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_dockabledeviceobjecttype?language=objc)
4864pub const kHIDUsage_GD_DockableDeviceObjectType: c_uint = 0xD6;
4865/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_callactiveled?language=objc)
4866pub const kHIDUsage_GD_CallActiveLED: c_uint = 0xE0;
4867/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_callmutetoggle?language=objc)
4868pub const kHIDUsage_GD_CallMuteToggle: c_uint = 0xE1;
4869/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_callmuteled?language=objc)
4870pub const kHIDUsage_GD_CallMuteLED: c_uint = 0xE2;
4871/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gd_reserved?language=objc)
4872pub const kHIDUsage_GD_Reserved: c_uint = 0xFFFF;
4873
4874/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_flightsimulationdevice?language=objc)
4875pub const kHIDUsage_Sim_FlightSimulationDevice: c_uint = 0x01;
4876/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_automobilesimulationdevice?language=objc)
4877pub const kHIDUsage_Sim_AutomobileSimulationDevice: c_uint = 0x02;
4878/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_tanksimulationdevice?language=objc)
4879pub const kHIDUsage_Sim_TankSimulationDevice: c_uint = 0x03;
4880/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_spaceshipsimulationdevice?language=objc)
4881pub const kHIDUsage_Sim_SpaceshipSimulationDevice: c_uint = 0x04;
4882/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_submarinesimulationdevice?language=objc)
4883pub const kHIDUsage_Sim_SubmarineSimulationDevice: c_uint = 0x05;
4884/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_sailingsimulationdevice?language=objc)
4885pub const kHIDUsage_Sim_SailingSimulationDevice: c_uint = 0x06;
4886/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_motorcyclesimulationdevice?language=objc)
4887pub const kHIDUsage_Sim_MotorcycleSimulationDevice: c_uint = 0x07;
4888/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_sportssimulationdevice?language=objc)
4889pub const kHIDUsage_Sim_SportsSimulationDevice: c_uint = 0x08;
4890/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_airplanesimulationdevice?language=objc)
4891pub const kHIDUsage_Sim_AirplaneSimulationDevice: c_uint = 0x09;
4892/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_helicoptersimulationdevice?language=objc)
4893pub const kHIDUsage_Sim_HelicopterSimulationDevice: c_uint = 0x0A;
4894/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_magiccarpetsimulationdevice?language=objc)
4895pub const kHIDUsage_Sim_MagicCarpetSimulationDevice: c_uint = 0x0B;
4896/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_bicyclesimulationdevice?language=objc)
4897pub const kHIDUsage_Sim_BicycleSimulationDevice: c_uint = 0x0C;
4898/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_flightcontrolstick?language=objc)
4899pub const kHIDUsage_Sim_FlightControlStick: c_uint = 0x20;
4900/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_flightstick?language=objc)
4901pub const kHIDUsage_Sim_FlightStick: c_uint = 0x21;
4902/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_cycliccontrol?language=objc)
4903pub const kHIDUsage_Sim_CyclicControl: c_uint = 0x22;
4904/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_cyclictrim?language=objc)
4905pub const kHIDUsage_Sim_CyclicTrim: c_uint = 0x23;
4906/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_flightyoke?language=objc)
4907pub const kHIDUsage_Sim_FlightYoke: c_uint = 0x24;
4908/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_trackcontrol?language=objc)
4909pub const kHIDUsage_Sim_TrackControl: c_uint = 0x25;
4910/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_aileron?language=objc)
4911pub const kHIDUsage_Sim_Aileron: c_uint = 0xB0;
4912/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_ailerontrim?language=objc)
4913pub const kHIDUsage_Sim_AileronTrim: c_uint = 0xB1;
4914/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_antitorquecontrol?language=objc)
4915pub const kHIDUsage_Sim_AntiTorqueControl: c_uint = 0xB2;
4916/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_autopilotenable?language=objc)
4917pub const kHIDUsage_Sim_AutopilotEnable: c_uint = 0xB3;
4918/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_chaffrelease?language=objc)
4919pub const kHIDUsage_Sim_ChaffRelease: c_uint = 0xB4;
4920/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_collectivecontrol?language=objc)
4921pub const kHIDUsage_Sim_CollectiveControl: c_uint = 0xB5;
4922/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_divebrake?language=objc)
4923pub const kHIDUsage_Sim_DiveBrake: c_uint = 0xB6;
4924/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_electroniccountermeasures?language=objc)
4925pub const kHIDUsage_Sim_ElectronicCountermeasures: c_uint = 0xB7;
4926/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_elevator?language=objc)
4927pub const kHIDUsage_Sim_Elevator: c_uint = 0xB8;
4928/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_elevatortrim?language=objc)
4929pub const kHIDUsage_Sim_ElevatorTrim: c_uint = 0xB9;
4930/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_rudder?language=objc)
4931pub const kHIDUsage_Sim_Rudder: c_uint = 0xBA;
4932/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_throttle?language=objc)
4933pub const kHIDUsage_Sim_Throttle: c_uint = 0xBB;
4934/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_flightcommunications?language=objc)
4935pub const kHIDUsage_Sim_FlightCommunications: c_uint = 0xBC;
4936/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_flarerelease?language=objc)
4937pub const kHIDUsage_Sim_FlareRelease: c_uint = 0xBD;
4938/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_landinggear?language=objc)
4939pub const kHIDUsage_Sim_LandingGear: c_uint = 0xBE;
4940/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_toebrake?language=objc)
4941pub const kHIDUsage_Sim_ToeBrake: c_uint = 0xBF;
4942/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_trigger?language=objc)
4943pub const kHIDUsage_Sim_Trigger: c_uint = 0xC0;
4944/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_weaponsarm?language=objc)
4945pub const kHIDUsage_Sim_WeaponsArm: c_uint = 0xC1;
4946/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_weapons?language=objc)
4947pub const kHIDUsage_Sim_Weapons: c_uint = 0xC2;
4948/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_wingflaps?language=objc)
4949pub const kHIDUsage_Sim_WingFlaps: c_uint = 0xC3;
4950/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_accelerator?language=objc)
4951pub const kHIDUsage_Sim_Accelerator: c_uint = 0xC4;
4952/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_brake?language=objc)
4953pub const kHIDUsage_Sim_Brake: c_uint = 0xC5;
4954/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_clutch?language=objc)
4955pub const kHIDUsage_Sim_Clutch: c_uint = 0xC6;
4956/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_shifter?language=objc)
4957pub const kHIDUsage_Sim_Shifter: c_uint = 0xC7;
4958/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_steering?language=objc)
4959pub const kHIDUsage_Sim_Steering: c_uint = 0xC8;
4960/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_turretdirection?language=objc)
4961pub const kHIDUsage_Sim_TurretDirection: c_uint = 0xC9;
4962/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_barrelelevation?language=objc)
4963pub const kHIDUsage_Sim_BarrelElevation: c_uint = 0xCA;
4964/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_diveplane?language=objc)
4965pub const kHIDUsage_Sim_DivePlane: c_uint = 0xCB;
4966/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_ballast?language=objc)
4967pub const kHIDUsage_Sim_Ballast: c_uint = 0xCC;
4968/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_bicyclecrank?language=objc)
4969pub const kHIDUsage_Sim_BicycleCrank: c_uint = 0xCD;
4970/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_handlebars?language=objc)
4971pub const kHIDUsage_Sim_HandleBars: c_uint = 0xCE;
4972/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_frontbrake?language=objc)
4973pub const kHIDUsage_Sim_FrontBrake: c_uint = 0xCF;
4974/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_rearbrake?language=objc)
4975pub const kHIDUsage_Sim_RearBrake: c_uint = 0xD0;
4976/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sim_reserved?language=objc)
4977pub const kHIDUsage_Sim_Reserved: c_uint = 0xFFFF;
4978
4979/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_belt?language=objc)
4980pub const kHIDUsage_VR_Belt: c_uint = 0x01;
4981/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_bodysuit?language=objc)
4982pub const kHIDUsage_VR_BodySuit: c_uint = 0x02;
4983/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_flexor?language=objc)
4984pub const kHIDUsage_VR_Flexor: c_uint = 0x03;
4985/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_glove?language=objc)
4986pub const kHIDUsage_VR_Glove: c_uint = 0x04;
4987/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_headtracker?language=objc)
4988pub const kHIDUsage_VR_HeadTracker: c_uint = 0x05;
4989/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_headmounteddisplay?language=objc)
4990pub const kHIDUsage_VR_HeadMountedDisplay: c_uint = 0x06;
4991/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_handtracker?language=objc)
4992pub const kHIDUsage_VR_HandTracker: c_uint = 0x07;
4993/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_oculometer?language=objc)
4994pub const kHIDUsage_VR_Oculometer: c_uint = 0x08;
4995/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_vest?language=objc)
4996pub const kHIDUsage_VR_Vest: c_uint = 0x09;
4997/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_animatronicdevice?language=objc)
4998pub const kHIDUsage_VR_AnimatronicDevice: c_uint = 0x0A;
4999/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_stereoenable?language=objc)
5000pub const kHIDUsage_VR_StereoEnable: c_uint = 0x20;
5001/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_displayenable?language=objc)
5002pub const kHIDUsage_VR_DisplayEnable: c_uint = 0x21;
5003/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_vr_reserved?language=objc)
5004pub const kHIDUsage_VR_Reserved: c_uint = 0xFFFF;
5005
5006/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_baseballbat?language=objc)
5007pub const kHIDUsage_Sprt_BaseballBat: c_uint = 0x01;
5008/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_golfclub?language=objc)
5009pub const kHIDUsage_Sprt_GolfClub: c_uint = 0x02;
5010/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_rowingmachine?language=objc)
5011pub const kHIDUsage_Sprt_RowingMachine: c_uint = 0x03;
5012/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_treadmill?language=objc)
5013pub const kHIDUsage_Sprt_Treadmill: c_uint = 0x04;
5014/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_oar?language=objc)
5015pub const kHIDUsage_Sprt_Oar: c_uint = 0x30;
5016/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_slope?language=objc)
5017pub const kHIDUsage_Sprt_Slope: c_uint = 0x31;
5018/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_rate?language=objc)
5019pub const kHIDUsage_Sprt_Rate: c_uint = 0x32;
5020/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_stickspeed?language=objc)
5021pub const kHIDUsage_Sprt_StickSpeed: c_uint = 0x33;
5022/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_stickfaceangle?language=objc)
5023pub const kHIDUsage_Sprt_StickFaceAngle: c_uint = 0x34;
5024/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_stickheelortoe?language=objc)
5025pub const kHIDUsage_Sprt_StickHeelOrToe: c_uint = 0x35;
5026/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_stickfollowthrough?language=objc)
5027pub const kHIDUsage_Sprt_StickFollowThrough: c_uint = 0x36;
5028/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_sticktempo?language=objc)
5029pub const kHIDUsage_Sprt_StickTempo: c_uint = 0x37;
5030/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_sticktype?language=objc)
5031pub const kHIDUsage_Sprt_StickType: c_uint = 0x38;
5032/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_stickheight?language=objc)
5033pub const kHIDUsage_Sprt_StickHeight: c_uint = 0x39;
5034/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_putter?language=objc)
5035pub const kHIDUsage_Sprt_Putter: c_uint = 0x50;
5036/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_1iron?language=objc)
5037pub const kHIDUsage_Sprt_1Iron: c_uint = 0x51;
5038/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_2iron?language=objc)
5039pub const kHIDUsage_Sprt_2Iron: c_uint = 0x52;
5040/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_3iron?language=objc)
5041pub const kHIDUsage_Sprt_3Iron: c_uint = 0x53;
5042/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_4iron?language=objc)
5043pub const kHIDUsage_Sprt_4Iron: c_uint = 0x54;
5044/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_5iron?language=objc)
5045pub const kHIDUsage_Sprt_5Iron: c_uint = 0x55;
5046/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_6iron?language=objc)
5047pub const kHIDUsage_Sprt_6Iron: c_uint = 0x56;
5048/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_7iron?language=objc)
5049pub const kHIDUsage_Sprt_7Iron: c_uint = 0x57;
5050/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_8iron?language=objc)
5051pub const kHIDUsage_Sprt_8Iron: c_uint = 0x58;
5052/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_9iron?language=objc)
5053pub const kHIDUsage_Sprt_9Iron: c_uint = 0x59;
5054/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_10iron?language=objc)
5055pub const kHIDUsage_Sprt_10Iron: c_uint = 0x5A;
5056/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_11iron?language=objc)
5057pub const kHIDUsage_Sprt_11Iron: c_uint = 0x5B;
5058/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_sandwedge?language=objc)
5059pub const kHIDUsage_Sprt_SandWedge: c_uint = 0x5C;
5060/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_loftwedge?language=objc)
5061pub const kHIDUsage_Sprt_LoftWedge: c_uint = 0x5D;
5062/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_powerwedge?language=objc)
5063pub const kHIDUsage_Sprt_PowerWedge: c_uint = 0x5E;
5064/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_1wood?language=objc)
5065pub const kHIDUsage_Sprt_1Wood: c_uint = 0x5F;
5066/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_3wood?language=objc)
5067pub const kHIDUsage_Sprt_3Wood: c_uint = 0x60;
5068/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_5wood?language=objc)
5069pub const kHIDUsage_Sprt_5Wood: c_uint = 0x61;
5070/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_7wood?language=objc)
5071pub const kHIDUsage_Sprt_7Wood: c_uint = 0x62;
5072/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_9wood?language=objc)
5073pub const kHIDUsage_Sprt_9Wood: c_uint = 0x63;
5074/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_sprt_reserved?language=objc)
5075pub const kHIDUsage_Sprt_Reserved: c_uint = 0xFFFF;
5076
5077/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_3dgamecontroller?language=objc)
5078pub const kHIDUsage_Game_3DGameController: c_uint = 0x01;
5079/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_pinballdevice?language=objc)
5080pub const kHIDUsage_Game_PinballDevice: c_uint = 0x02;
5081/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gundevice?language=objc)
5082pub const kHIDUsage_Game_GunDevice: c_uint = 0x03;
5083/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_pointofview?language=objc)
5084pub const kHIDUsage_Game_PointofView: c_uint = 0x20;
5085/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_turnrightorleft?language=objc)
5086pub const kHIDUsage_Game_TurnRightOrLeft: c_uint = 0x21;
5087/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_pitchupordown?language=objc)
5088pub const kHIDUsage_Game_PitchUpOrDown: c_uint = 0x22;
5089/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_rollrightorleft?language=objc)
5090pub const kHIDUsage_Game_RollRightOrLeft: c_uint = 0x23;
5091/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_moverightorleft?language=objc)
5092pub const kHIDUsage_Game_MoveRightOrLeft: c_uint = 0x24;
5093/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_moveforwardorbackward?language=objc)
5094pub const kHIDUsage_Game_MoveForwardOrBackward: c_uint = 0x25;
5095/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_moveupordown?language=objc)
5096pub const kHIDUsage_Game_MoveUpOrDown: c_uint = 0x26;
5097/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_leanrightorleft?language=objc)
5098pub const kHIDUsage_Game_LeanRightOrLeft: c_uint = 0x27;
5099/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_leanforwardorbackward?language=objc)
5100pub const kHIDUsage_Game_LeanForwardOrBackward: c_uint = 0x28;
5101/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_heightofpov?language=objc)
5102pub const kHIDUsage_Game_HeightOfPOV: c_uint = 0x29;
5103/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_flipper?language=objc)
5104pub const kHIDUsage_Game_Flipper: c_uint = 0x2A;
5105/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_secondaryflipper?language=objc)
5106pub const kHIDUsage_Game_SecondaryFlipper: c_uint = 0x2B;
5107/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_bump?language=objc)
5108pub const kHIDUsage_Game_Bump: c_uint = 0x2C;
5109/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_newgame?language=objc)
5110pub const kHIDUsage_Game_NewGame: c_uint = 0x2D;
5111/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_shootball?language=objc)
5112pub const kHIDUsage_Game_ShootBall: c_uint = 0x2E;
5113/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_player?language=objc)
5114pub const kHIDUsage_Game_Player: c_uint = 0x2F;
5115/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gunbolt?language=objc)
5116pub const kHIDUsage_Game_GunBolt: c_uint = 0x30;
5117/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gunclip?language=objc)
5118pub const kHIDUsage_Game_GunClip: c_uint = 0x31;
5119/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gun?language=objc)
5120pub const kHIDUsage_Game_Gun: c_uint = 0x32;
5121/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gunsingleshot?language=objc)
5122pub const kHIDUsage_Game_GunSingleShot: c_uint = 0x33;
5123/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gunburst?language=objc)
5124pub const kHIDUsage_Game_GunBurst: c_uint = 0x34;
5125/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gunautomatic?language=objc)
5126pub const kHIDUsage_Game_GunAutomatic: c_uint = 0x35;
5127/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gunsafety?language=objc)
5128pub const kHIDUsage_Game_GunSafety: c_uint = 0x36;
5129/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gamepadfireorjump?language=objc)
5130pub const kHIDUsage_Game_GamepadFireOrJump: c_uint = 0x37;
5131/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gamepadtrigger?language=objc)
5132pub const kHIDUsage_Game_GamepadTrigger: c_uint = 0x39;
5133/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gamepadformfitting_compatibility?language=objc)
5134pub const kHIDUsage_Game_GamepadFormFitting_Compatibility: c_uint = 0x39;
5135/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_gamepadformfitting?language=objc)
5136pub const kHIDUsage_Game_GamepadFormFitting: c_uint = 0x3A;
5137/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_game_reserved?language=objc)
5138pub const kHIDUsage_Game_Reserved: c_uint = 0xFFFF;
5139
5140/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_gendevcontrols_backgroundcontrols?language=objc)
5141pub const kHIDUsage_GenDevControls_BackgroundControls: c_uint = 0x01;
5142
5143/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboarderrorrollover?language=objc)
5144pub const kHIDUsage_KeyboardErrorRollOver: c_uint = 0x01;
5145/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardpostfail?language=objc)
5146pub const kHIDUsage_KeyboardPOSTFail: c_uint = 0x02;
5147/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboarderrorundefined?language=objc)
5148pub const kHIDUsage_KeyboardErrorUndefined: c_uint = 0x03;
5149/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboarda?language=objc)
5150pub const kHIDUsage_KeyboardA: c_uint = 0x04;
5151/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardb?language=objc)
5152pub const kHIDUsage_KeyboardB: c_uint = 0x05;
5153/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardc?language=objc)
5154pub const kHIDUsage_KeyboardC: c_uint = 0x06;
5155/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardd?language=objc)
5156pub const kHIDUsage_KeyboardD: c_uint = 0x07;
5157/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboarde?language=objc)
5158pub const kHIDUsage_KeyboardE: c_uint = 0x08;
5159/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf?language=objc)
5160pub const kHIDUsage_KeyboardF: c_uint = 0x09;
5161/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardg?language=objc)
5162pub const kHIDUsage_KeyboardG: c_uint = 0x0A;
5163/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardh?language=objc)
5164pub const kHIDUsage_KeyboardH: c_uint = 0x0B;
5165/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardi?language=objc)
5166pub const kHIDUsage_KeyboardI: c_uint = 0x0C;
5167/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardj?language=objc)
5168pub const kHIDUsage_KeyboardJ: c_uint = 0x0D;
5169/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardk?language=objc)
5170pub const kHIDUsage_KeyboardK: c_uint = 0x0E;
5171/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardl?language=objc)
5172pub const kHIDUsage_KeyboardL: c_uint = 0x0F;
5173/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardm?language=objc)
5174pub const kHIDUsage_KeyboardM: c_uint = 0x10;
5175/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardn?language=objc)
5176pub const kHIDUsage_KeyboardN: c_uint = 0x11;
5177/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardo?language=objc)
5178pub const kHIDUsage_KeyboardO: c_uint = 0x12;
5179/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardp?language=objc)
5180pub const kHIDUsage_KeyboardP: c_uint = 0x13;
5181/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardq?language=objc)
5182pub const kHIDUsage_KeyboardQ: c_uint = 0x14;
5183/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardr?language=objc)
5184pub const kHIDUsage_KeyboardR: c_uint = 0x15;
5185/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboards?language=objc)
5186pub const kHIDUsage_KeyboardS: c_uint = 0x16;
5187/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardt?language=objc)
5188pub const kHIDUsage_KeyboardT: c_uint = 0x17;
5189/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardu?language=objc)
5190pub const kHIDUsage_KeyboardU: c_uint = 0x18;
5191/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardv?language=objc)
5192pub const kHIDUsage_KeyboardV: c_uint = 0x19;
5193/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardw?language=objc)
5194pub const kHIDUsage_KeyboardW: c_uint = 0x1A;
5195/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardx?language=objc)
5196pub const kHIDUsage_KeyboardX: c_uint = 0x1B;
5197/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardy?language=objc)
5198pub const kHIDUsage_KeyboardY: c_uint = 0x1C;
5199/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardz?language=objc)
5200pub const kHIDUsage_KeyboardZ: c_uint = 0x1D;
5201/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard1?language=objc)
5202pub const kHIDUsage_Keyboard1: c_uint = 0x1E;
5203/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard2?language=objc)
5204pub const kHIDUsage_Keyboard2: c_uint = 0x1F;
5205/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard3?language=objc)
5206pub const kHIDUsage_Keyboard3: c_uint = 0x20;
5207/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard4?language=objc)
5208pub const kHIDUsage_Keyboard4: c_uint = 0x21;
5209/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard5?language=objc)
5210pub const kHIDUsage_Keyboard5: c_uint = 0x22;
5211/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard6?language=objc)
5212pub const kHIDUsage_Keyboard6: c_uint = 0x23;
5213/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard7?language=objc)
5214pub const kHIDUsage_Keyboard7: c_uint = 0x24;
5215/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard8?language=objc)
5216pub const kHIDUsage_Keyboard8: c_uint = 0x25;
5217/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard9?language=objc)
5218pub const kHIDUsage_Keyboard9: c_uint = 0x26;
5219/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard0?language=objc)
5220pub const kHIDUsage_Keyboard0: c_uint = 0x27;
5221/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardreturnorenter?language=objc)
5222pub const kHIDUsage_KeyboardReturnOrEnter: c_uint = 0x28;
5223/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardescape?language=objc)
5224pub const kHIDUsage_KeyboardEscape: c_uint = 0x29;
5225/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboarddeleteorbackspace?language=objc)
5226pub const kHIDUsage_KeyboardDeleteOrBackspace: c_uint = 0x2A;
5227/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardtab?language=objc)
5228pub const kHIDUsage_KeyboardTab: c_uint = 0x2B;
5229/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardspacebar?language=objc)
5230pub const kHIDUsage_KeyboardSpacebar: c_uint = 0x2C;
5231/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardhyphen?language=objc)
5232pub const kHIDUsage_KeyboardHyphen: c_uint = 0x2D;
5233/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardequalsign?language=objc)
5234pub const kHIDUsage_KeyboardEqualSign: c_uint = 0x2E;
5235/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardopenbracket?language=objc)
5236pub const kHIDUsage_KeyboardOpenBracket: c_uint = 0x2F;
5237/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardclosebracket?language=objc)
5238pub const kHIDUsage_KeyboardCloseBracket: c_uint = 0x30;
5239/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardbackslash?language=objc)
5240pub const kHIDUsage_KeyboardBackslash: c_uint = 0x31;
5241/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardnonuspound?language=objc)
5242pub const kHIDUsage_KeyboardNonUSPound: c_uint = 0x32;
5243/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardsemicolon?language=objc)
5244pub const kHIDUsage_KeyboardSemicolon: c_uint = 0x33;
5245/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardquote?language=objc)
5246pub const kHIDUsage_KeyboardQuote: c_uint = 0x34;
5247/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardgraveaccentandtilde?language=objc)
5248pub const kHIDUsage_KeyboardGraveAccentAndTilde: c_uint = 0x35;
5249/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardcomma?language=objc)
5250pub const kHIDUsage_KeyboardComma: c_uint = 0x36;
5251/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardperiod?language=objc)
5252pub const kHIDUsage_KeyboardPeriod: c_uint = 0x37;
5253/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardslash?language=objc)
5254pub const kHIDUsage_KeyboardSlash: c_uint = 0x38;
5255/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardcapslock?language=objc)
5256pub const kHIDUsage_KeyboardCapsLock: c_uint = 0x39;
5257/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf1?language=objc)
5258pub const kHIDUsage_KeyboardF1: c_uint = 0x3A;
5259/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf2?language=objc)
5260pub const kHIDUsage_KeyboardF2: c_uint = 0x3B;
5261/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf3?language=objc)
5262pub const kHIDUsage_KeyboardF3: c_uint = 0x3C;
5263/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf4?language=objc)
5264pub const kHIDUsage_KeyboardF4: c_uint = 0x3D;
5265/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf5?language=objc)
5266pub const kHIDUsage_KeyboardF5: c_uint = 0x3E;
5267/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf6?language=objc)
5268pub const kHIDUsage_KeyboardF6: c_uint = 0x3F;
5269/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf7?language=objc)
5270pub const kHIDUsage_KeyboardF7: c_uint = 0x40;
5271/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf8?language=objc)
5272pub const kHIDUsage_KeyboardF8: c_uint = 0x41;
5273/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf9?language=objc)
5274pub const kHIDUsage_KeyboardF9: c_uint = 0x42;
5275/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf10?language=objc)
5276pub const kHIDUsage_KeyboardF10: c_uint = 0x43;
5277/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf11?language=objc)
5278pub const kHIDUsage_KeyboardF11: c_uint = 0x44;
5279/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf12?language=objc)
5280pub const kHIDUsage_KeyboardF12: c_uint = 0x45;
5281/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardprintscreen?language=objc)
5282pub const kHIDUsage_KeyboardPrintScreen: c_uint = 0x46;
5283/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardscrolllock?language=objc)
5284pub const kHIDUsage_KeyboardScrollLock: c_uint = 0x47;
5285/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardpause?language=objc)
5286pub const kHIDUsage_KeyboardPause: c_uint = 0x48;
5287/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinsert?language=objc)
5288pub const kHIDUsage_KeyboardInsert: c_uint = 0x49;
5289/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardhome?language=objc)
5290pub const kHIDUsage_KeyboardHome: c_uint = 0x4A;
5291/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardpageup?language=objc)
5292pub const kHIDUsage_KeyboardPageUp: c_uint = 0x4B;
5293/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboarddeleteforward?language=objc)
5294pub const kHIDUsage_KeyboardDeleteForward: c_uint = 0x4C;
5295/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardend?language=objc)
5296pub const kHIDUsage_KeyboardEnd: c_uint = 0x4D;
5297/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardpagedown?language=objc)
5298pub const kHIDUsage_KeyboardPageDown: c_uint = 0x4E;
5299/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardrightarrow?language=objc)
5300pub const kHIDUsage_KeyboardRightArrow: c_uint = 0x4F;
5301/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardleftarrow?language=objc)
5302pub const kHIDUsage_KeyboardLeftArrow: c_uint = 0x50;
5303/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboarddownarrow?language=objc)
5304pub const kHIDUsage_KeyboardDownArrow: c_uint = 0x51;
5305/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboarduparrow?language=objc)
5306pub const kHIDUsage_KeyboardUpArrow: c_uint = 0x52;
5307/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadnumlock?language=objc)
5308pub const kHIDUsage_KeypadNumLock: c_uint = 0x53;
5309/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadslash?language=objc)
5310pub const kHIDUsage_KeypadSlash: c_uint = 0x54;
5311/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadasterisk?language=objc)
5312pub const kHIDUsage_KeypadAsterisk: c_uint = 0x55;
5313/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadhyphen?language=objc)
5314pub const kHIDUsage_KeypadHyphen: c_uint = 0x56;
5315/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadplus?language=objc)
5316pub const kHIDUsage_KeypadPlus: c_uint = 0x57;
5317/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadenter?language=objc)
5318pub const kHIDUsage_KeypadEnter: c_uint = 0x58;
5319/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad1?language=objc)
5320pub const kHIDUsage_Keypad1: c_uint = 0x59;
5321/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad2?language=objc)
5322pub const kHIDUsage_Keypad2: c_uint = 0x5A;
5323/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad3?language=objc)
5324pub const kHIDUsage_Keypad3: c_uint = 0x5B;
5325/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad4?language=objc)
5326pub const kHIDUsage_Keypad4: c_uint = 0x5C;
5327/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad5?language=objc)
5328pub const kHIDUsage_Keypad5: c_uint = 0x5D;
5329/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad6?language=objc)
5330pub const kHIDUsage_Keypad6: c_uint = 0x5E;
5331/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad7?language=objc)
5332pub const kHIDUsage_Keypad7: c_uint = 0x5F;
5333/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad8?language=objc)
5334pub const kHIDUsage_Keypad8: c_uint = 0x60;
5335/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad9?language=objc)
5336pub const kHIDUsage_Keypad9: c_uint = 0x61;
5337/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypad0?language=objc)
5338pub const kHIDUsage_Keypad0: c_uint = 0x62;
5339/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadperiod?language=objc)
5340pub const kHIDUsage_KeypadPeriod: c_uint = 0x63;
5341/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardnonusbackslash?language=objc)
5342pub const kHIDUsage_KeyboardNonUSBackslash: c_uint = 0x64;
5343/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardapplication?language=objc)
5344pub const kHIDUsage_KeyboardApplication: c_uint = 0x65;
5345/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardpower?language=objc)
5346pub const kHIDUsage_KeyboardPower: c_uint = 0x66;
5347/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadequalsign?language=objc)
5348pub const kHIDUsage_KeypadEqualSign: c_uint = 0x67;
5349/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf13?language=objc)
5350pub const kHIDUsage_KeyboardF13: c_uint = 0x68;
5351/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf14?language=objc)
5352pub const kHIDUsage_KeyboardF14: c_uint = 0x69;
5353/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf15?language=objc)
5354pub const kHIDUsage_KeyboardF15: c_uint = 0x6A;
5355/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf16?language=objc)
5356pub const kHIDUsage_KeyboardF16: c_uint = 0x6B;
5357/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf17?language=objc)
5358pub const kHIDUsage_KeyboardF17: c_uint = 0x6C;
5359/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf18?language=objc)
5360pub const kHIDUsage_KeyboardF18: c_uint = 0x6D;
5361/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf19?language=objc)
5362pub const kHIDUsage_KeyboardF19: c_uint = 0x6E;
5363/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf20?language=objc)
5364pub const kHIDUsage_KeyboardF20: c_uint = 0x6F;
5365/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf21?language=objc)
5366pub const kHIDUsage_KeyboardF21: c_uint = 0x70;
5367/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf22?language=objc)
5368pub const kHIDUsage_KeyboardF22: c_uint = 0x71;
5369/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf23?language=objc)
5370pub const kHIDUsage_KeyboardF23: c_uint = 0x72;
5371/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardf24?language=objc)
5372pub const kHIDUsage_KeyboardF24: c_uint = 0x73;
5373/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardexecute?language=objc)
5374pub const kHIDUsage_KeyboardExecute: c_uint = 0x74;
5375/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardhelp?language=objc)
5376pub const kHIDUsage_KeyboardHelp: c_uint = 0x75;
5377/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardmenu?language=objc)
5378pub const kHIDUsage_KeyboardMenu: c_uint = 0x76;
5379/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardselect?language=objc)
5380pub const kHIDUsage_KeyboardSelect: c_uint = 0x77;
5381/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardstop?language=objc)
5382pub const kHIDUsage_KeyboardStop: c_uint = 0x78;
5383/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardagain?language=objc)
5384pub const kHIDUsage_KeyboardAgain: c_uint = 0x79;
5385/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardundo?language=objc)
5386pub const kHIDUsage_KeyboardUndo: c_uint = 0x7A;
5387/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardcut?language=objc)
5388pub const kHIDUsage_KeyboardCut: c_uint = 0x7B;
5389/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardcopy?language=objc)
5390pub const kHIDUsage_KeyboardCopy: c_uint = 0x7C;
5391/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardpaste?language=objc)
5392pub const kHIDUsage_KeyboardPaste: c_uint = 0x7D;
5393/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardfind?language=objc)
5394pub const kHIDUsage_KeyboardFind: c_uint = 0x7E;
5395/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardmute?language=objc)
5396pub const kHIDUsage_KeyboardMute: c_uint = 0x7F;
5397/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardvolumeup?language=objc)
5398pub const kHIDUsage_KeyboardVolumeUp: c_uint = 0x80;
5399/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardvolumedown?language=objc)
5400pub const kHIDUsage_KeyboardVolumeDown: c_uint = 0x81;
5401/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlockingcapslock?language=objc)
5402pub const kHIDUsage_KeyboardLockingCapsLock: c_uint = 0x82;
5403/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlockingnumlock?language=objc)
5404pub const kHIDUsage_KeyboardLockingNumLock: c_uint = 0x83;
5405/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlockingscrolllock?language=objc)
5406pub const kHIDUsage_KeyboardLockingScrollLock: c_uint = 0x84;
5407/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadcomma?language=objc)
5408pub const kHIDUsage_KeypadComma: c_uint = 0x85;
5409/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keypadequalsignas400?language=objc)
5410pub const kHIDUsage_KeypadEqualSignAS400: c_uint = 0x86;
5411/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinternational1?language=objc)
5412pub const kHIDUsage_KeyboardInternational1: c_uint = 0x87;
5413/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinternational2?language=objc)
5414pub const kHIDUsage_KeyboardInternational2: c_uint = 0x88;
5415/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinternational3?language=objc)
5416pub const kHIDUsage_KeyboardInternational3: c_uint = 0x89;
5417/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinternational4?language=objc)
5418pub const kHIDUsage_KeyboardInternational4: c_uint = 0x8A;
5419/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinternational5?language=objc)
5420pub const kHIDUsage_KeyboardInternational5: c_uint = 0x8B;
5421/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinternational6?language=objc)
5422pub const kHIDUsage_KeyboardInternational6: c_uint = 0x8C;
5423/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinternational7?language=objc)
5424pub const kHIDUsage_KeyboardInternational7: c_uint = 0x8D;
5425/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinternational8?language=objc)
5426pub const kHIDUsage_KeyboardInternational8: c_uint = 0x8E;
5427/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardinternational9?language=objc)
5428pub const kHIDUsage_KeyboardInternational9: c_uint = 0x8F;
5429/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlang1?language=objc)
5430pub const kHIDUsage_KeyboardLANG1: c_uint = 0x90;
5431/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlang2?language=objc)
5432pub const kHIDUsage_KeyboardLANG2: c_uint = 0x91;
5433/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlang3?language=objc)
5434pub const kHIDUsage_KeyboardLANG3: c_uint = 0x92;
5435/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlang4?language=objc)
5436pub const kHIDUsage_KeyboardLANG4: c_uint = 0x93;
5437/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlang5?language=objc)
5438pub const kHIDUsage_KeyboardLANG5: c_uint = 0x94;
5439/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlang6?language=objc)
5440pub const kHIDUsage_KeyboardLANG6: c_uint = 0x95;
5441/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlang7?language=objc)
5442pub const kHIDUsage_KeyboardLANG7: c_uint = 0x96;
5443/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlang8?language=objc)
5444pub const kHIDUsage_KeyboardLANG8: c_uint = 0x97;
5445/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardlang9?language=objc)
5446pub const kHIDUsage_KeyboardLANG9: c_uint = 0x98;
5447/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardalternateerase?language=objc)
5448pub const kHIDUsage_KeyboardAlternateErase: c_uint = 0x99;
5449/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardsysreqorattention?language=objc)
5450pub const kHIDUsage_KeyboardSysReqOrAttention: c_uint = 0x9A;
5451/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardcancel?language=objc)
5452pub const kHIDUsage_KeyboardCancel: c_uint = 0x9B;
5453/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardclear?language=objc)
5454pub const kHIDUsage_KeyboardClear: c_uint = 0x9C;
5455/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardprior?language=objc)
5456pub const kHIDUsage_KeyboardPrior: c_uint = 0x9D;
5457/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardreturn?language=objc)
5458pub const kHIDUsage_KeyboardReturn: c_uint = 0x9E;
5459/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardseparator?language=objc)
5460pub const kHIDUsage_KeyboardSeparator: c_uint = 0x9F;
5461/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardout?language=objc)
5462pub const kHIDUsage_KeyboardOut: c_uint = 0xA0;
5463/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardoper?language=objc)
5464pub const kHIDUsage_KeyboardOper: c_uint = 0xA1;
5465/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardclearoragain?language=objc)
5466pub const kHIDUsage_KeyboardClearOrAgain: c_uint = 0xA2;
5467/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardcrselorprops?language=objc)
5468pub const kHIDUsage_KeyboardCrSelOrProps: c_uint = 0xA3;
5469/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardexsel?language=objc)
5470pub const kHIDUsage_KeyboardExSel: c_uint = 0xA4;
5471/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardleftcontrol?language=objc)
5472pub const kHIDUsage_KeyboardLeftControl: c_uint = 0xE0;
5473/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardleftshift?language=objc)
5474pub const kHIDUsage_KeyboardLeftShift: c_uint = 0xE1;
5475/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardleftalt?language=objc)
5476pub const kHIDUsage_KeyboardLeftAlt: c_uint = 0xE2;
5477/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardleftgui?language=objc)
5478pub const kHIDUsage_KeyboardLeftGUI: c_uint = 0xE3;
5479/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardrightcontrol?language=objc)
5480pub const kHIDUsage_KeyboardRightControl: c_uint = 0xE4;
5481/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardrightshift?language=objc)
5482pub const kHIDUsage_KeyboardRightShift: c_uint = 0xE5;
5483/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardrightalt?language=objc)
5484pub const kHIDUsage_KeyboardRightAlt: c_uint = 0xE6;
5485/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboardrightgui?language=objc)
5486pub const kHIDUsage_KeyboardRightGUI: c_uint = 0xE7;
5487/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_keyboard_reserved?language=objc)
5488pub const kHIDUsage_Keyboard_Reserved: c_uint = 0xFFFF;
5489
5490/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_numlock?language=objc)
5491pub const kHIDUsage_LED_NumLock: c_uint = 0x01;
5492/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_capslock?language=objc)
5493pub const kHIDUsage_LED_CapsLock: c_uint = 0x02;
5494/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_scrolllock?language=objc)
5495pub const kHIDUsage_LED_ScrollLock: c_uint = 0x03;
5496/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_compose?language=objc)
5497pub const kHIDUsage_LED_Compose: c_uint = 0x04;
5498/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_kana?language=objc)
5499pub const kHIDUsage_LED_Kana: c_uint = 0x05;
5500/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_power?language=objc)
5501pub const kHIDUsage_LED_Power: c_uint = 0x06;
5502/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_shift?language=objc)
5503pub const kHIDUsage_LED_Shift: c_uint = 0x07;
5504/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_donotdisturb?language=objc)
5505pub const kHIDUsage_LED_DoNotDisturb: c_uint = 0x08;
5506/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_mute?language=objc)
5507pub const kHIDUsage_LED_Mute: c_uint = 0x09;
5508/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_toneenable?language=objc)
5509pub const kHIDUsage_LED_ToneEnable: c_uint = 0x0A;
5510/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_highcutfilter?language=objc)
5511pub const kHIDUsage_LED_HighCutFilter: c_uint = 0x0B;
5512/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_lowcutfilter?language=objc)
5513pub const kHIDUsage_LED_LowCutFilter: c_uint = 0x0C;
5514/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_equalizerenable?language=objc)
5515pub const kHIDUsage_LED_EqualizerEnable: c_uint = 0x0D;
5516/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_soundfieldon?language=objc)
5517pub const kHIDUsage_LED_SoundFieldOn: c_uint = 0x0E;
5518/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_surroundon?language=objc)
5519pub const kHIDUsage_LED_SurroundOn: c_uint = 0x0F;
5520/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_repeat?language=objc)
5521pub const kHIDUsage_LED_Repeat: c_uint = 0x10;
5522/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_stereo?language=objc)
5523pub const kHIDUsage_LED_Stereo: c_uint = 0x11;
5524/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_samplingratedetect?language=objc)
5525pub const kHIDUsage_LED_SamplingRateDetect: c_uint = 0x12;
5526/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_spinning?language=objc)
5527pub const kHIDUsage_LED_Spinning: c_uint = 0x13;
5528/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_cav?language=objc)
5529pub const kHIDUsage_LED_CAV: c_uint = 0x14;
5530/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_clv?language=objc)
5531pub const kHIDUsage_LED_CLV: c_uint = 0x15;
5532/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_recordingformatdetect?language=objc)
5533pub const kHIDUsage_LED_RecordingFormatDetect: c_uint = 0x16;
5534/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_offhook?language=objc)
5535pub const kHIDUsage_LED_OffHook: c_uint = 0x17;
5536/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_ring?language=objc)
5537pub const kHIDUsage_LED_Ring: c_uint = 0x18;
5538/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_messagewaiting?language=objc)
5539pub const kHIDUsage_LED_MessageWaiting: c_uint = 0x19;
5540/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_datamode?language=objc)
5541pub const kHIDUsage_LED_DataMode: c_uint = 0x1A;
5542/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_batteryoperation?language=objc)
5543pub const kHIDUsage_LED_BatteryOperation: c_uint = 0x1B;
5544/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_batteryok?language=objc)
5545pub const kHIDUsage_LED_BatteryOK: c_uint = 0x1C;
5546/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_batterylow?language=objc)
5547pub const kHIDUsage_LED_BatteryLow: c_uint = 0x1D;
5548/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_speaker?language=objc)
5549pub const kHIDUsage_LED_Speaker: c_uint = 0x1E;
5550/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_headset?language=objc)
5551pub const kHIDUsage_LED_HeadSet: c_uint = 0x1F;
5552/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_hold?language=objc)
5553pub const kHIDUsage_LED_Hold: c_uint = 0x20;
5554/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_microphone?language=objc)
5555pub const kHIDUsage_LED_Microphone: c_uint = 0x21;
5556/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_coverage?language=objc)
5557pub const kHIDUsage_LED_Coverage: c_uint = 0x22;
5558/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_nightmode?language=objc)
5559pub const kHIDUsage_LED_NightMode: c_uint = 0x23;
5560/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_sendcalls?language=objc)
5561pub const kHIDUsage_LED_SendCalls: c_uint = 0x24;
5562/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_callpickup?language=objc)
5563pub const kHIDUsage_LED_CallPickup: c_uint = 0x25;
5564/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_conference?language=objc)
5565pub const kHIDUsage_LED_Conference: c_uint = 0x26;
5566/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_standby?language=objc)
5567pub const kHIDUsage_LED_StandBy: c_uint = 0x27;
5568/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_cameraon?language=objc)
5569pub const kHIDUsage_LED_CameraOn: c_uint = 0x28;
5570/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_cameraoff?language=objc)
5571pub const kHIDUsage_LED_CameraOff: c_uint = 0x29;
5572/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_online?language=objc)
5573pub const kHIDUsage_LED_OnLine: c_uint = 0x2A;
5574/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_offline?language=objc)
5575pub const kHIDUsage_LED_OffLine: c_uint = 0x2B;
5576/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_busy?language=objc)
5577pub const kHIDUsage_LED_Busy: c_uint = 0x2C;
5578/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_ready?language=objc)
5579pub const kHIDUsage_LED_Ready: c_uint = 0x2D;
5580/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_paperout?language=objc)
5581pub const kHIDUsage_LED_PaperOut: c_uint = 0x2E;
5582/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_paperjam?language=objc)
5583pub const kHIDUsage_LED_PaperJam: c_uint = 0x2F;
5584/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_remote?language=objc)
5585pub const kHIDUsage_LED_Remote: c_uint = 0x30;
5586/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_forward?language=objc)
5587pub const kHIDUsage_LED_Forward: c_uint = 0x31;
5588/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_reverse?language=objc)
5589pub const kHIDUsage_LED_Reverse: c_uint = 0x32;
5590/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_stop?language=objc)
5591pub const kHIDUsage_LED_Stop: c_uint = 0x33;
5592/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_rewind?language=objc)
5593pub const kHIDUsage_LED_Rewind: c_uint = 0x34;
5594/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_fastforward?language=objc)
5595pub const kHIDUsage_LED_FastForward: c_uint = 0x35;
5596/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_play?language=objc)
5597pub const kHIDUsage_LED_Play: c_uint = 0x36;
5598/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_pause?language=objc)
5599pub const kHIDUsage_LED_Pause: c_uint = 0x37;
5600/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_record?language=objc)
5601pub const kHIDUsage_LED_Record: c_uint = 0x38;
5602/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_error?language=objc)
5603pub const kHIDUsage_LED_Error: c_uint = 0x39;
5604/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_usage?language=objc)
5605pub const kHIDUsage_LED_Usage: c_uint = 0x3A;
5606/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_usageinuseindicator?language=objc)
5607pub const kHIDUsage_LED_UsageInUseIndicator: c_uint = 0x3B;
5608/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_usagemultimodeindicator?language=objc)
5609pub const kHIDUsage_LED_UsageMultiModeIndicator: c_uint = 0x3C;
5610/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_indicatoron?language=objc)
5611pub const kHIDUsage_LED_IndicatorOn: c_uint = 0x3D;
5612/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_indicatorflash?language=objc)
5613pub const kHIDUsage_LED_IndicatorFlash: c_uint = 0x3E;
5614/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_indicatorslowblink?language=objc)
5615pub const kHIDUsage_LED_IndicatorSlowBlink: c_uint = 0x3F;
5616/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_indicatorfastblink?language=objc)
5617pub const kHIDUsage_LED_IndicatorFastBlink: c_uint = 0x40;
5618/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_indicatoroff?language=objc)
5619pub const kHIDUsage_LED_IndicatorOff: c_uint = 0x41;
5620/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_flashontime?language=objc)
5621pub const kHIDUsage_LED_FlashOnTime: c_uint = 0x42;
5622/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_slowblinkontime?language=objc)
5623pub const kHIDUsage_LED_SlowBlinkOnTime: c_uint = 0x43;
5624/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_slowblinkofftime?language=objc)
5625pub const kHIDUsage_LED_SlowBlinkOffTime: c_uint = 0x44;
5626/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_fastblinkontime?language=objc)
5627pub const kHIDUsage_LED_FastBlinkOnTime: c_uint = 0x45;
5628/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_fastblinkofftime?language=objc)
5629pub const kHIDUsage_LED_FastBlinkOffTime: c_uint = 0x46;
5630/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_usageindicatorcolor?language=objc)
5631pub const kHIDUsage_LED_UsageIndicatorColor: c_uint = 0x47;
5632/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_indicatorred?language=objc)
5633pub const kHIDUsage_LED_IndicatorRed: c_uint = 0x48;
5634/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_indicatorgreen?language=objc)
5635pub const kHIDUsage_LED_IndicatorGreen: c_uint = 0x49;
5636/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_indicatoramber?language=objc)
5637pub const kHIDUsage_LED_IndicatorAmber: c_uint = 0x4A;
5638/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_genericindicator?language=objc)
5639pub const kHIDUsage_LED_GenericIndicator: c_uint = 0x4B;
5640/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_systemsuspend?language=objc)
5641pub const kHIDUsage_LED_SystemSuspend: c_uint = 0x4C;
5642/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_externalpowerconnected?language=objc)
5643pub const kHIDUsage_LED_ExternalPowerConnected: c_uint = 0x4D;
5644/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_playerindicator?language=objc)
5645pub const kHIDUsage_LED_PlayerIndicator: c_uint = 0x4E;
5646/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_player1?language=objc)
5647pub const kHIDUsage_LED_Player1: c_uint = 0x4F;
5648/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_player2?language=objc)
5649pub const kHIDUsage_LED_Player2: c_uint = 0x50;
5650/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_player3?language=objc)
5651pub const kHIDUsage_LED_Player3: c_uint = 0x51;
5652/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_player4?language=objc)
5653pub const kHIDUsage_LED_Player4: c_uint = 0x52;
5654/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_player5?language=objc)
5655pub const kHIDUsage_LED_Player5: c_uint = 0x53;
5656/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_player6?language=objc)
5657pub const kHIDUsage_LED_Player6: c_uint = 0x54;
5658/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_player7?language=objc)
5659pub const kHIDUsage_LED_Player7: c_uint = 0x55;
5660/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_player8?language=objc)
5661pub const kHIDUsage_LED_Player8: c_uint = 0x56;
5662/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_led_reserved?language=objc)
5663pub const kHIDUsage_LED_Reserved: c_uint = 0xFFFF;
5664
5665/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_1?language=objc)
5666pub const kHIDUsage_Button_1: c_uint = 0x01;
5667/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_2?language=objc)
5668pub const kHIDUsage_Button_2: c_uint = 0x02;
5669/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_3?language=objc)
5670pub const kHIDUsage_Button_3: c_uint = 0x03;
5671/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_4?language=objc)
5672pub const kHIDUsage_Button_4: c_uint = 0x04;
5673/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_5?language=objc)
5674pub const kHIDUsage_Button_5: c_uint = 0x05;
5675/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_6?language=objc)
5676pub const kHIDUsage_Button_6: c_uint = 0x06;
5677/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_7?language=objc)
5678pub const kHIDUsage_Button_7: c_uint = 0x07;
5679/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_8?language=objc)
5680pub const kHIDUsage_Button_8: c_uint = 0x08;
5681/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_9?language=objc)
5682pub const kHIDUsage_Button_9: c_uint = 0x09;
5683/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_10?language=objc)
5684pub const kHIDUsage_Button_10: c_uint = 0x0a;
5685/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_11?language=objc)
5686pub const kHIDUsage_Button_11: c_uint = 0x0b;
5687/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_12?language=objc)
5688pub const kHIDUsage_Button_12: c_uint = 0x0c;
5689/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_13?language=objc)
5690pub const kHIDUsage_Button_13: c_uint = 0x0d;
5691/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_14?language=objc)
5692pub const kHIDUsage_Button_14: c_uint = 0x0e;
5693/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_15?language=objc)
5694pub const kHIDUsage_Button_15: c_uint = 0x0f;
5695/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_16?language=objc)
5696pub const kHIDUsage_Button_16: c_uint = 0x10;
5697/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_17?language=objc)
5698pub const kHIDUsage_Button_17: c_uint = 0x11;
5699/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_18?language=objc)
5700pub const kHIDUsage_Button_18: c_uint = 0x12;
5701/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_19?language=objc)
5702pub const kHIDUsage_Button_19: c_uint = 0x13;
5703/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_20?language=objc)
5704pub const kHIDUsage_Button_20: c_uint = 0x14;
5705/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_21?language=objc)
5706pub const kHIDUsage_Button_21: c_uint = 0x15;
5707/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_22?language=objc)
5708pub const kHIDUsage_Button_22: c_uint = 0x16;
5709/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_23?language=objc)
5710pub const kHIDUsage_Button_23: c_uint = 0x17;
5711/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_24?language=objc)
5712pub const kHIDUsage_Button_24: c_uint = 0x18;
5713/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_25?language=objc)
5714pub const kHIDUsage_Button_25: c_uint = 0x19;
5715/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_26?language=objc)
5716pub const kHIDUsage_Button_26: c_uint = 0x1a;
5717/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_27?language=objc)
5718pub const kHIDUsage_Button_27: c_uint = 0x1b;
5719/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_28?language=objc)
5720pub const kHIDUsage_Button_28: c_uint = 0x1c;
5721/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_29?language=objc)
5722pub const kHIDUsage_Button_29: c_uint = 0x1d;
5723/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_30?language=objc)
5724pub const kHIDUsage_Button_30: c_uint = 0x1e;
5725/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_31?language=objc)
5726pub const kHIDUsage_Button_31: c_uint = 0x1f;
5727/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_32?language=objc)
5728pub const kHIDUsage_Button_32: c_uint = 0x20;
5729/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_33?language=objc)
5730pub const kHIDUsage_Button_33: c_uint = 0x21;
5731/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_34?language=objc)
5732pub const kHIDUsage_Button_34: c_uint = 0x22;
5733/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_35?language=objc)
5734pub const kHIDUsage_Button_35: c_uint = 0x23;
5735/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_36?language=objc)
5736pub const kHIDUsage_Button_36: c_uint = 0x24;
5737/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_37?language=objc)
5738pub const kHIDUsage_Button_37: c_uint = 0x25;
5739/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_38?language=objc)
5740pub const kHIDUsage_Button_38: c_uint = 0x26;
5741/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_39?language=objc)
5742pub const kHIDUsage_Button_39: c_uint = 0x27;
5743/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_40?language=objc)
5744pub const kHIDUsage_Button_40: c_uint = 0x28;
5745/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_41?language=objc)
5746pub const kHIDUsage_Button_41: c_uint = 0x29;
5747/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_42?language=objc)
5748pub const kHIDUsage_Button_42: c_uint = 0x2a;
5749/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_43?language=objc)
5750pub const kHIDUsage_Button_43: c_uint = 0x2b;
5751/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_44?language=objc)
5752pub const kHIDUsage_Button_44: c_uint = 0x2c;
5753/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_45?language=objc)
5754pub const kHIDUsage_Button_45: c_uint = 0x2d;
5755/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_46?language=objc)
5756pub const kHIDUsage_Button_46: c_uint = 0x2e;
5757/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_47?language=objc)
5758pub const kHIDUsage_Button_47: c_uint = 0x2f;
5759/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_48?language=objc)
5760pub const kHIDUsage_Button_48: c_uint = 0x30;
5761/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_49?language=objc)
5762pub const kHIDUsage_Button_49: c_uint = 0x31;
5763/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_50?language=objc)
5764pub const kHIDUsage_Button_50: c_uint = 0x32;
5765/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_51?language=objc)
5766pub const kHIDUsage_Button_51: c_uint = 0x33;
5767/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_52?language=objc)
5768pub const kHIDUsage_Button_52: c_uint = 0x34;
5769/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_53?language=objc)
5770pub const kHIDUsage_Button_53: c_uint = 0x35;
5771/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_54?language=objc)
5772pub const kHIDUsage_Button_54: c_uint = 0x36;
5773/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_55?language=objc)
5774pub const kHIDUsage_Button_55: c_uint = 0x37;
5775/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_56?language=objc)
5776pub const kHIDUsage_Button_56: c_uint = 0x38;
5777/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_57?language=objc)
5778pub const kHIDUsage_Button_57: c_uint = 0x39;
5779/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_58?language=objc)
5780pub const kHIDUsage_Button_58: c_uint = 0x3a;
5781/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_59?language=objc)
5782pub const kHIDUsage_Button_59: c_uint = 0x3b;
5783/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_60?language=objc)
5784pub const kHIDUsage_Button_60: c_uint = 0x3c;
5785/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_61?language=objc)
5786pub const kHIDUsage_Button_61: c_uint = 0x3d;
5787/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_62?language=objc)
5788pub const kHIDUsage_Button_62: c_uint = 0x3e;
5789/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_63?language=objc)
5790pub const kHIDUsage_Button_63: c_uint = 0x3f;
5791/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_64?language=objc)
5792pub const kHIDUsage_Button_64: c_uint = 0x40;
5793/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_65?language=objc)
5794pub const kHIDUsage_Button_65: c_uint = 0x41;
5795/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_66?language=objc)
5796pub const kHIDUsage_Button_66: c_uint = 0x42;
5797/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_67?language=objc)
5798pub const kHIDUsage_Button_67: c_uint = 0x43;
5799/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_68?language=objc)
5800pub const kHIDUsage_Button_68: c_uint = 0x44;
5801/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_69?language=objc)
5802pub const kHIDUsage_Button_69: c_uint = 0x45;
5803/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_70?language=objc)
5804pub const kHIDUsage_Button_70: c_uint = 0x46;
5805/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_71?language=objc)
5806pub const kHIDUsage_Button_71: c_uint = 0x47;
5807/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_72?language=objc)
5808pub const kHIDUsage_Button_72: c_uint = 0x48;
5809/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_73?language=objc)
5810pub const kHIDUsage_Button_73: c_uint = 0x49;
5811/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_74?language=objc)
5812pub const kHIDUsage_Button_74: c_uint = 0x4a;
5813/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_75?language=objc)
5814pub const kHIDUsage_Button_75: c_uint = 0x4b;
5815/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_76?language=objc)
5816pub const kHIDUsage_Button_76: c_uint = 0x4c;
5817/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_77?language=objc)
5818pub const kHIDUsage_Button_77: c_uint = 0x4d;
5819/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_78?language=objc)
5820pub const kHIDUsage_Button_78: c_uint = 0x4e;
5821/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_79?language=objc)
5822pub const kHIDUsage_Button_79: c_uint = 0x4f;
5823/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_80?language=objc)
5824pub const kHIDUsage_Button_80: c_uint = 0x50;
5825/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_81?language=objc)
5826pub const kHIDUsage_Button_81: c_uint = 0x51;
5827/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_82?language=objc)
5828pub const kHIDUsage_Button_82: c_uint = 0x52;
5829/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_83?language=objc)
5830pub const kHIDUsage_Button_83: c_uint = 0x53;
5831/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_84?language=objc)
5832pub const kHIDUsage_Button_84: c_uint = 0x54;
5833/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_85?language=objc)
5834pub const kHIDUsage_Button_85: c_uint = 0x55;
5835/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_86?language=objc)
5836pub const kHIDUsage_Button_86: c_uint = 0x56;
5837/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_87?language=objc)
5838pub const kHIDUsage_Button_87: c_uint = 0x57;
5839/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_88?language=objc)
5840pub const kHIDUsage_Button_88: c_uint = 0x58;
5841/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_89?language=objc)
5842pub const kHIDUsage_Button_89: c_uint = 0x59;
5843/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_90?language=objc)
5844pub const kHIDUsage_Button_90: c_uint = 0x5a;
5845/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_91?language=objc)
5846pub const kHIDUsage_Button_91: c_uint = 0x5b;
5847/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_92?language=objc)
5848pub const kHIDUsage_Button_92: c_uint = 0x5c;
5849/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_93?language=objc)
5850pub const kHIDUsage_Button_93: c_uint = 0x5d;
5851/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_94?language=objc)
5852pub const kHIDUsage_Button_94: c_uint = 0x5e;
5853/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_95?language=objc)
5854pub const kHIDUsage_Button_95: c_uint = 0x5f;
5855/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_96?language=objc)
5856pub const kHIDUsage_Button_96: c_uint = 0x60;
5857/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_97?language=objc)
5858pub const kHIDUsage_Button_97: c_uint = 0x61;
5859/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_98?language=objc)
5860pub const kHIDUsage_Button_98: c_uint = 0x62;
5861/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_99?language=objc)
5862pub const kHIDUsage_Button_99: c_uint = 0x63;
5863/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_100?language=objc)
5864pub const kHIDUsage_Button_100: c_uint = 0x64;
5865/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_101?language=objc)
5866pub const kHIDUsage_Button_101: c_uint = 0x65;
5867/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_102?language=objc)
5868pub const kHIDUsage_Button_102: c_uint = 0x66;
5869/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_103?language=objc)
5870pub const kHIDUsage_Button_103: c_uint = 0x67;
5871/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_104?language=objc)
5872pub const kHIDUsage_Button_104: c_uint = 0x68;
5873/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_105?language=objc)
5874pub const kHIDUsage_Button_105: c_uint = 0x69;
5875/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_106?language=objc)
5876pub const kHIDUsage_Button_106: c_uint = 0x6a;
5877/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_107?language=objc)
5878pub const kHIDUsage_Button_107: c_uint = 0x6b;
5879/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_108?language=objc)
5880pub const kHIDUsage_Button_108: c_uint = 0x6c;
5881/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_109?language=objc)
5882pub const kHIDUsage_Button_109: c_uint = 0x6d;
5883/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_110?language=objc)
5884pub const kHIDUsage_Button_110: c_uint = 0x6e;
5885/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_111?language=objc)
5886pub const kHIDUsage_Button_111: c_uint = 0x6f;
5887/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_112?language=objc)
5888pub const kHIDUsage_Button_112: c_uint = 0x70;
5889/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_113?language=objc)
5890pub const kHIDUsage_Button_113: c_uint = 0x71;
5891/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_114?language=objc)
5892pub const kHIDUsage_Button_114: c_uint = 0x72;
5893/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_115?language=objc)
5894pub const kHIDUsage_Button_115: c_uint = 0x73;
5895/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_116?language=objc)
5896pub const kHIDUsage_Button_116: c_uint = 0x74;
5897/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_117?language=objc)
5898pub const kHIDUsage_Button_117: c_uint = 0x75;
5899/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_118?language=objc)
5900pub const kHIDUsage_Button_118: c_uint = 0x76;
5901/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_119?language=objc)
5902pub const kHIDUsage_Button_119: c_uint = 0x77;
5903/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_120?language=objc)
5904pub const kHIDUsage_Button_120: c_uint = 0x78;
5905/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_121?language=objc)
5906pub const kHIDUsage_Button_121: c_uint = 0x79;
5907/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_122?language=objc)
5908pub const kHIDUsage_Button_122: c_uint = 0x7a;
5909/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_123?language=objc)
5910pub const kHIDUsage_Button_123: c_uint = 0x7b;
5911/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_124?language=objc)
5912pub const kHIDUsage_Button_124: c_uint = 0x7c;
5913/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_125?language=objc)
5914pub const kHIDUsage_Button_125: c_uint = 0x7d;
5915/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_126?language=objc)
5916pub const kHIDUsage_Button_126: c_uint = 0x7e;
5917/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_127?language=objc)
5918pub const kHIDUsage_Button_127: c_uint = 0x7f;
5919/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_128?language=objc)
5920pub const kHIDUsage_Button_128: c_uint = 0x80;
5921/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_129?language=objc)
5922pub const kHIDUsage_Button_129: c_uint = 0x81;
5923/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_130?language=objc)
5924pub const kHIDUsage_Button_130: c_uint = 0x82;
5925/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_131?language=objc)
5926pub const kHIDUsage_Button_131: c_uint = 0x83;
5927/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_132?language=objc)
5928pub const kHIDUsage_Button_132: c_uint = 0x84;
5929/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_133?language=objc)
5930pub const kHIDUsage_Button_133: c_uint = 0x85;
5931/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_134?language=objc)
5932pub const kHIDUsage_Button_134: c_uint = 0x86;
5933/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_135?language=objc)
5934pub const kHIDUsage_Button_135: c_uint = 0x87;
5935/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_136?language=objc)
5936pub const kHIDUsage_Button_136: c_uint = 0x88;
5937/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_137?language=objc)
5938pub const kHIDUsage_Button_137: c_uint = 0x89;
5939/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_138?language=objc)
5940pub const kHIDUsage_Button_138: c_uint = 0x8a;
5941/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_139?language=objc)
5942pub const kHIDUsage_Button_139: c_uint = 0x8b;
5943/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_140?language=objc)
5944pub const kHIDUsage_Button_140: c_uint = 0x8c;
5945/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_141?language=objc)
5946pub const kHIDUsage_Button_141: c_uint = 0x8d;
5947/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_142?language=objc)
5948pub const kHIDUsage_Button_142: c_uint = 0x8e;
5949/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_143?language=objc)
5950pub const kHIDUsage_Button_143: c_uint = 0x8f;
5951/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_144?language=objc)
5952pub const kHIDUsage_Button_144: c_uint = 0x90;
5953/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_145?language=objc)
5954pub const kHIDUsage_Button_145: c_uint = 0x91;
5955/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_146?language=objc)
5956pub const kHIDUsage_Button_146: c_uint = 0x92;
5957/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_147?language=objc)
5958pub const kHIDUsage_Button_147: c_uint = 0x93;
5959/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_148?language=objc)
5960pub const kHIDUsage_Button_148: c_uint = 0x94;
5961/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_149?language=objc)
5962pub const kHIDUsage_Button_149: c_uint = 0x95;
5963/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_150?language=objc)
5964pub const kHIDUsage_Button_150: c_uint = 0x96;
5965/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_151?language=objc)
5966pub const kHIDUsage_Button_151: c_uint = 0x97;
5967/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_152?language=objc)
5968pub const kHIDUsage_Button_152: c_uint = 0x98;
5969/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_153?language=objc)
5970pub const kHIDUsage_Button_153: c_uint = 0x99;
5971/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_154?language=objc)
5972pub const kHIDUsage_Button_154: c_uint = 0x9a;
5973/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_155?language=objc)
5974pub const kHIDUsage_Button_155: c_uint = 0x9b;
5975/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_156?language=objc)
5976pub const kHIDUsage_Button_156: c_uint = 0x9c;
5977/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_157?language=objc)
5978pub const kHIDUsage_Button_157: c_uint = 0x9d;
5979/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_158?language=objc)
5980pub const kHIDUsage_Button_158: c_uint = 0x9e;
5981/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_159?language=objc)
5982pub const kHIDUsage_Button_159: c_uint = 0x9f;
5983/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_160?language=objc)
5984pub const kHIDUsage_Button_160: c_uint = 0xa0;
5985/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_161?language=objc)
5986pub const kHIDUsage_Button_161: c_uint = 0xa1;
5987/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_162?language=objc)
5988pub const kHIDUsage_Button_162: c_uint = 0xa2;
5989/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_163?language=objc)
5990pub const kHIDUsage_Button_163: c_uint = 0xa3;
5991/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_164?language=objc)
5992pub const kHIDUsage_Button_164: c_uint = 0xa4;
5993/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_165?language=objc)
5994pub const kHIDUsage_Button_165: c_uint = 0xa5;
5995/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_166?language=objc)
5996pub const kHIDUsage_Button_166: c_uint = 0xa6;
5997/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_167?language=objc)
5998pub const kHIDUsage_Button_167: c_uint = 0xa7;
5999/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_168?language=objc)
6000pub const kHIDUsage_Button_168: c_uint = 0xa8;
6001/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_169?language=objc)
6002pub const kHIDUsage_Button_169: c_uint = 0xa9;
6003/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_170?language=objc)
6004pub const kHIDUsage_Button_170: c_uint = 0xaa;
6005/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_171?language=objc)
6006pub const kHIDUsage_Button_171: c_uint = 0xab;
6007/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_172?language=objc)
6008pub const kHIDUsage_Button_172: c_uint = 0xac;
6009/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_173?language=objc)
6010pub const kHIDUsage_Button_173: c_uint = 0xad;
6011/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_174?language=objc)
6012pub const kHIDUsage_Button_174: c_uint = 0xae;
6013/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_175?language=objc)
6014pub const kHIDUsage_Button_175: c_uint = 0xaf;
6015/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_176?language=objc)
6016pub const kHIDUsage_Button_176: c_uint = 0xb0;
6017/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_177?language=objc)
6018pub const kHIDUsage_Button_177: c_uint = 0xb1;
6019/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_178?language=objc)
6020pub const kHIDUsage_Button_178: c_uint = 0xb2;
6021/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_179?language=objc)
6022pub const kHIDUsage_Button_179: c_uint = 0xb3;
6023/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_180?language=objc)
6024pub const kHIDUsage_Button_180: c_uint = 0xb4;
6025/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_181?language=objc)
6026pub const kHIDUsage_Button_181: c_uint = 0xb5;
6027/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_182?language=objc)
6028pub const kHIDUsage_Button_182: c_uint = 0xb6;
6029/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_183?language=objc)
6030pub const kHIDUsage_Button_183: c_uint = 0xb7;
6031/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_184?language=objc)
6032pub const kHIDUsage_Button_184: c_uint = 0xb8;
6033/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_185?language=objc)
6034pub const kHIDUsage_Button_185: c_uint = 0xb9;
6035/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_186?language=objc)
6036pub const kHIDUsage_Button_186: c_uint = 0xba;
6037/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_187?language=objc)
6038pub const kHIDUsage_Button_187: c_uint = 0xbb;
6039/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_188?language=objc)
6040pub const kHIDUsage_Button_188: c_uint = 0xbc;
6041/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_189?language=objc)
6042pub const kHIDUsage_Button_189: c_uint = 0xbd;
6043/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_190?language=objc)
6044pub const kHIDUsage_Button_190: c_uint = 0xbe;
6045/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_191?language=objc)
6046pub const kHIDUsage_Button_191: c_uint = 0xbf;
6047/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_192?language=objc)
6048pub const kHIDUsage_Button_192: c_uint = 0xc0;
6049/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_193?language=objc)
6050pub const kHIDUsage_Button_193: c_uint = 0xc1;
6051/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_194?language=objc)
6052pub const kHIDUsage_Button_194: c_uint = 0xc2;
6053/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_195?language=objc)
6054pub const kHIDUsage_Button_195: c_uint = 0xc3;
6055/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_196?language=objc)
6056pub const kHIDUsage_Button_196: c_uint = 0xc4;
6057/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_197?language=objc)
6058pub const kHIDUsage_Button_197: c_uint = 0xc5;
6059/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_198?language=objc)
6060pub const kHIDUsage_Button_198: c_uint = 0xc6;
6061/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_199?language=objc)
6062pub const kHIDUsage_Button_199: c_uint = 0xc7;
6063/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_200?language=objc)
6064pub const kHIDUsage_Button_200: c_uint = 0xc8;
6065/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_201?language=objc)
6066pub const kHIDUsage_Button_201: c_uint = 0xc9;
6067/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_202?language=objc)
6068pub const kHIDUsage_Button_202: c_uint = 0xca;
6069/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_203?language=objc)
6070pub const kHIDUsage_Button_203: c_uint = 0xcb;
6071/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_204?language=objc)
6072pub const kHIDUsage_Button_204: c_uint = 0xcc;
6073/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_205?language=objc)
6074pub const kHIDUsage_Button_205: c_uint = 0xcd;
6075/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_206?language=objc)
6076pub const kHIDUsage_Button_206: c_uint = 0xce;
6077/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_207?language=objc)
6078pub const kHIDUsage_Button_207: c_uint = 0xcf;
6079/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_208?language=objc)
6080pub const kHIDUsage_Button_208: c_uint = 0xd0;
6081/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_209?language=objc)
6082pub const kHIDUsage_Button_209: c_uint = 0xd1;
6083/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_210?language=objc)
6084pub const kHIDUsage_Button_210: c_uint = 0xd2;
6085/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_211?language=objc)
6086pub const kHIDUsage_Button_211: c_uint = 0xd3;
6087/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_212?language=objc)
6088pub const kHIDUsage_Button_212: c_uint = 0xd4;
6089/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_213?language=objc)
6090pub const kHIDUsage_Button_213: c_uint = 0xd5;
6091/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_214?language=objc)
6092pub const kHIDUsage_Button_214: c_uint = 0xd6;
6093/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_215?language=objc)
6094pub const kHIDUsage_Button_215: c_uint = 0xd7;
6095/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_216?language=objc)
6096pub const kHIDUsage_Button_216: c_uint = 0xd8;
6097/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_217?language=objc)
6098pub const kHIDUsage_Button_217: c_uint = 0xd9;
6099/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_218?language=objc)
6100pub const kHIDUsage_Button_218: c_uint = 0xda;
6101/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_219?language=objc)
6102pub const kHIDUsage_Button_219: c_uint = 0xdb;
6103/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_220?language=objc)
6104pub const kHIDUsage_Button_220: c_uint = 0xdc;
6105/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_221?language=objc)
6106pub const kHIDUsage_Button_221: c_uint = 0xdd;
6107/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_222?language=objc)
6108pub const kHIDUsage_Button_222: c_uint = 0xde;
6109/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_223?language=objc)
6110pub const kHIDUsage_Button_223: c_uint = 0xdf;
6111/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_224?language=objc)
6112pub const kHIDUsage_Button_224: c_uint = 0xe0;
6113/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_225?language=objc)
6114pub const kHIDUsage_Button_225: c_uint = 0xe1;
6115/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_226?language=objc)
6116pub const kHIDUsage_Button_226: c_uint = 0xe2;
6117/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_227?language=objc)
6118pub const kHIDUsage_Button_227: c_uint = 0xe3;
6119/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_228?language=objc)
6120pub const kHIDUsage_Button_228: c_uint = 0xe4;
6121/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_229?language=objc)
6122pub const kHIDUsage_Button_229: c_uint = 0xe5;
6123/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_230?language=objc)
6124pub const kHIDUsage_Button_230: c_uint = 0xe6;
6125/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_231?language=objc)
6126pub const kHIDUsage_Button_231: c_uint = 0xe7;
6127/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_232?language=objc)
6128pub const kHIDUsage_Button_232: c_uint = 0xe8;
6129/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_233?language=objc)
6130pub const kHIDUsage_Button_233: c_uint = 0xe9;
6131/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_234?language=objc)
6132pub const kHIDUsage_Button_234: c_uint = 0xea;
6133/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_235?language=objc)
6134pub const kHIDUsage_Button_235: c_uint = 0xeb;
6135/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_236?language=objc)
6136pub const kHIDUsage_Button_236: c_uint = 0xec;
6137/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_237?language=objc)
6138pub const kHIDUsage_Button_237: c_uint = 0xed;
6139/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_238?language=objc)
6140pub const kHIDUsage_Button_238: c_uint = 0xee;
6141/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_239?language=objc)
6142pub const kHIDUsage_Button_239: c_uint = 0xef;
6143/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_240?language=objc)
6144pub const kHIDUsage_Button_240: c_uint = 0xf0;
6145/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_241?language=objc)
6146pub const kHIDUsage_Button_241: c_uint = 0xf1;
6147/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_242?language=objc)
6148pub const kHIDUsage_Button_242: c_uint = 0xf2;
6149/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_243?language=objc)
6150pub const kHIDUsage_Button_243: c_uint = 0xf3;
6151/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_244?language=objc)
6152pub const kHIDUsage_Button_244: c_uint = 0xf4;
6153/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_245?language=objc)
6154pub const kHIDUsage_Button_245: c_uint = 0xf5;
6155/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_246?language=objc)
6156pub const kHIDUsage_Button_246: c_uint = 0xf6;
6157/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_247?language=objc)
6158pub const kHIDUsage_Button_247: c_uint = 0xf7;
6159/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_248?language=objc)
6160pub const kHIDUsage_Button_248: c_uint = 0xf8;
6161/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_249?language=objc)
6162pub const kHIDUsage_Button_249: c_uint = 0xf9;
6163/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_250?language=objc)
6164pub const kHIDUsage_Button_250: c_uint = 0xfa;
6165/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_251?language=objc)
6166pub const kHIDUsage_Button_251: c_uint = 0xfb;
6167/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_252?language=objc)
6168pub const kHIDUsage_Button_252: c_uint = 0xfc;
6169/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_253?language=objc)
6170pub const kHIDUsage_Button_253: c_uint = 0xfd;
6171/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_254?language=objc)
6172pub const kHIDUsage_Button_254: c_uint = 0xfe;
6173/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_255?language=objc)
6174pub const kHIDUsage_Button_255: c_uint = 0xff;
6175/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_button_65535?language=objc)
6176pub const kHIDUsage_Button_65535: c_uint = 0xFFFF;
6177
6178/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ord_instance1?language=objc)
6179pub const kHIDUsage_Ord_Instance1: c_uint = 0x01;
6180/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ord_instance2?language=objc)
6181pub const kHIDUsage_Ord_Instance2: c_uint = 0x02;
6182/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ord_instance3?language=objc)
6183pub const kHIDUsage_Ord_Instance3: c_uint = 0x03;
6184/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ord_instance4?language=objc)
6185pub const kHIDUsage_Ord_Instance4: c_uint = 0x04;
6186/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ord_instance65535?language=objc)
6187pub const kHIDUsage_Ord_Instance65535: c_uint = 0xFFFF;
6188
6189/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phone?language=objc)
6190pub const kHIDUsage_Tfon_Phone: c_uint = 0x01;
6191/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_answeringmachine?language=objc)
6192pub const kHIDUsage_Tfon_AnsweringMachine: c_uint = 0x02;
6193/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_messagecontrols?language=objc)
6194pub const kHIDUsage_Tfon_MessageControls: c_uint = 0x03;
6195/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_handset?language=objc)
6196pub const kHIDUsage_Tfon_Handset: c_uint = 0x04;
6197/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_headset?language=objc)
6198pub const kHIDUsage_Tfon_Headset: c_uint = 0x05;
6199/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_telephonykeypad?language=objc)
6200pub const kHIDUsage_Tfon_TelephonyKeyPad: c_uint = 0x06;
6201/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_programmablebutton?language=objc)
6202pub const kHIDUsage_Tfon_ProgrammableButton: c_uint = 0x07;
6203/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_hookswitch?language=objc)
6204pub const kHIDUsage_Tfon_HookSwitch: c_uint = 0x20;
6205/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_flash?language=objc)
6206pub const kHIDUsage_Tfon_Flash: c_uint = 0x21;
6207/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_feature?language=objc)
6208pub const kHIDUsage_Tfon_Feature: c_uint = 0x22;
6209/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_hold?language=objc)
6210pub const kHIDUsage_Tfon_Hold: c_uint = 0x23;
6211/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_redial?language=objc)
6212pub const kHIDUsage_Tfon_Redial: c_uint = 0x24;
6213/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_transfer?language=objc)
6214pub const kHIDUsage_Tfon_Transfer: c_uint = 0x25;
6215/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_drop?language=objc)
6216pub const kHIDUsage_Tfon_Drop: c_uint = 0x26;
6217/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_park?language=objc)
6218pub const kHIDUsage_Tfon_Park: c_uint = 0x27;
6219/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_forwardcalls?language=objc)
6220pub const kHIDUsage_Tfon_ForwardCalls: c_uint = 0x28;
6221/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_alternatefunction?language=objc)
6222pub const kHIDUsage_Tfon_AlternateFunction: c_uint = 0x29;
6223/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_line?language=objc)
6224pub const kHIDUsage_Tfon_Line: c_uint = 0x2A;
6225/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_speakerphone?language=objc)
6226pub const kHIDUsage_Tfon_SpeakerPhone: c_uint = 0x2B;
6227/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_conference?language=objc)
6228pub const kHIDUsage_Tfon_Conference: c_uint = 0x2C;
6229/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_ringenable?language=objc)
6230pub const kHIDUsage_Tfon_RingEnable: c_uint = 0x2D;
6231/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_ring?language=objc)
6232pub const kHIDUsage_Tfon_Ring: c_uint = 0x2E;
6233/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonemute?language=objc)
6234pub const kHIDUsage_Tfon_PhoneMute: c_uint = 0x2F;
6235/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_callerid?language=objc)
6236pub const kHIDUsage_Tfon_CallerID: c_uint = 0x30;
6237/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_speeddial?language=objc)
6238pub const kHIDUsage_Tfon_SpeedDial: c_uint = 0x50;
6239/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_storenumber?language=objc)
6240pub const kHIDUsage_Tfon_StoreNumber: c_uint = 0x51;
6241/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_recallnumber?language=objc)
6242pub const kHIDUsage_Tfon_RecallNumber: c_uint = 0x52;
6243/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonedirectory?language=objc)
6244pub const kHIDUsage_Tfon_PhoneDirectory: c_uint = 0x53;
6245/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_voicemail?language=objc)
6246pub const kHIDUsage_Tfon_VoiceMail: c_uint = 0x70;
6247/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_screencalls?language=objc)
6248pub const kHIDUsage_Tfon_ScreenCalls: c_uint = 0x71;
6249/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_donotdisturb?language=objc)
6250pub const kHIDUsage_Tfon_DoNotDisturb: c_uint = 0x72;
6251/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_message?language=objc)
6252pub const kHIDUsage_Tfon_Message: c_uint = 0x73;
6253/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_answeronoroff?language=objc)
6254pub const kHIDUsage_Tfon_AnswerOnOrOff: c_uint = 0x74;
6255/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_insidedialtone?language=objc)
6256pub const kHIDUsage_Tfon_InsideDialTone: c_uint = 0x90;
6257/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_outsidedialtone?language=objc)
6258pub const kHIDUsage_Tfon_OutsideDialTone: c_uint = 0x91;
6259/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_insideringtone?language=objc)
6260pub const kHIDUsage_Tfon_InsideRingTone: c_uint = 0x92;
6261/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_outsideringtone?language=objc)
6262pub const kHIDUsage_Tfon_OutsideRingTone: c_uint = 0x93;
6263/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_priorityringtone?language=objc)
6264pub const kHIDUsage_Tfon_PriorityRingTone: c_uint = 0x94;
6265/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_insideringback?language=objc)
6266pub const kHIDUsage_Tfon_InsideRingback: c_uint = 0x95;
6267/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_priorityringback?language=objc)
6268pub const kHIDUsage_Tfon_PriorityRingback: c_uint = 0x96;
6269/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_linebusytone?language=objc)
6270pub const kHIDUsage_Tfon_LineBusyTone: c_uint = 0x97;
6271/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_reordertone?language=objc)
6272pub const kHIDUsage_Tfon_ReorderTone: c_uint = 0x98;
6273/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_callwaitingtone?language=objc)
6274pub const kHIDUsage_Tfon_CallWaitingTone: c_uint = 0x99;
6275/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_confirmationtone1?language=objc)
6276pub const kHIDUsage_Tfon_ConfirmationTone1: c_uint = 0x9A;
6277/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_confirmationtone2?language=objc)
6278pub const kHIDUsage_Tfon_ConfirmationTone2: c_uint = 0x9B;
6279/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_tonesoff?language=objc)
6280pub const kHIDUsage_Tfon_TonesOff: c_uint = 0x9C;
6281/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_outsideringback?language=objc)
6282pub const kHIDUsage_Tfon_OutsideRingback: c_uint = 0x9D;
6283/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey0?language=objc)
6284pub const kHIDUsage_Tfon_PhoneKey0: c_uint = 0xB0;
6285/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey1?language=objc)
6286pub const kHIDUsage_Tfon_PhoneKey1: c_uint = 0xB1;
6287/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey2?language=objc)
6288pub const kHIDUsage_Tfon_PhoneKey2: c_uint = 0xB2;
6289/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey3?language=objc)
6290pub const kHIDUsage_Tfon_PhoneKey3: c_uint = 0xB3;
6291/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey4?language=objc)
6292pub const kHIDUsage_Tfon_PhoneKey4: c_uint = 0xB4;
6293/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey5?language=objc)
6294pub const kHIDUsage_Tfon_PhoneKey5: c_uint = 0xB5;
6295/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey6?language=objc)
6296pub const kHIDUsage_Tfon_PhoneKey6: c_uint = 0xB6;
6297/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey7?language=objc)
6298pub const kHIDUsage_Tfon_PhoneKey7: c_uint = 0xB7;
6299/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey8?language=objc)
6300pub const kHIDUsage_Tfon_PhoneKey8: c_uint = 0xB8;
6301/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekey9?language=objc)
6302pub const kHIDUsage_Tfon_PhoneKey9: c_uint = 0xB9;
6303/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekeystar?language=objc)
6304pub const kHIDUsage_Tfon_PhoneKeyStar: c_uint = 0xBA;
6305/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekeypound?language=objc)
6306pub const kHIDUsage_Tfon_PhoneKeyPound: c_uint = 0xBB;
6307/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekeya?language=objc)
6308pub const kHIDUsage_Tfon_PhoneKeyA: c_uint = 0xBC;
6309/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekeyb?language=objc)
6310pub const kHIDUsage_Tfon_PhoneKeyB: c_uint = 0xBD;
6311/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekeyc?language=objc)
6312pub const kHIDUsage_Tfon_PhoneKeyC: c_uint = 0xBE;
6313/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_phonekeyd?language=objc)
6314pub const kHIDUsage_Tfon_PhoneKeyD: c_uint = 0xBF;
6315/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_tfon_reserved?language=objc)
6316pub const kHIDUsage_TFon_Reserved: c_uint = 0xFFFF;
6317
6318/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_consumercontrol?language=objc)
6319pub const kHIDUsage_Csmr_ConsumerControl: c_uint = 0x01;
6320/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_numerickeypad?language=objc)
6321pub const kHIDUsage_Csmr_NumericKeyPad: c_uint = 0x02;
6322/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_programmablebuttons?language=objc)
6323pub const kHIDUsage_Csmr_ProgrammableButtons: c_uint = 0x03;
6324/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_microphone?language=objc)
6325pub const kHIDUsage_Csmr_Microphone: c_uint = 0x04;
6326/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_headphone?language=objc)
6327pub const kHIDUsage_Csmr_Headphone: c_uint = 0x05;
6328/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_graphicequalizer?language=objc)
6329pub const kHIDUsage_Csmr_GraphicEqualizer: c_uint = 0x06;
6330/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_plus10?language=objc)
6331pub const kHIDUsage_Csmr_Plus10: c_uint = 0x20;
6332/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_plus100?language=objc)
6333pub const kHIDUsage_Csmr_Plus100: c_uint = 0x21;
6334/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_amorpm?language=objc)
6335pub const kHIDUsage_Csmr_AMOrPM: c_uint = 0x22;
6336/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_power?language=objc)
6337pub const kHIDUsage_Csmr_Power: c_uint = 0x30;
6338/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_reset?language=objc)
6339pub const kHIDUsage_Csmr_Reset: c_uint = 0x31;
6340/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_sleep?language=objc)
6341pub const kHIDUsage_Csmr_Sleep: c_uint = 0x32;
6342/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_sleepafter?language=objc)
6343pub const kHIDUsage_Csmr_SleepAfter: c_uint = 0x33;
6344/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_sleepmode?language=objc)
6345pub const kHIDUsage_Csmr_SleepMode: c_uint = 0x34;
6346/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_illumination?language=objc)
6347pub const kHIDUsage_Csmr_Illumination: c_uint = 0x35;
6348/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_functionbuttons?language=objc)
6349pub const kHIDUsage_Csmr_FunctionButtons: c_uint = 0x36;
6350/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_menu?language=objc)
6351pub const kHIDUsage_Csmr_Menu: c_uint = 0x40;
6352/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_menupick?language=objc)
6353pub const kHIDUsage_Csmr_MenuPick: c_uint = 0x41;
6354/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_menuup?language=objc)
6355pub const kHIDUsage_Csmr_MenuUp: c_uint = 0x42;
6356/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_menudown?language=objc)
6357pub const kHIDUsage_Csmr_MenuDown: c_uint = 0x43;
6358/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_menuleft?language=objc)
6359pub const kHIDUsage_Csmr_MenuLeft: c_uint = 0x44;
6360/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_menuright?language=objc)
6361pub const kHIDUsage_Csmr_MenuRight: c_uint = 0x45;
6362/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_menuescape?language=objc)
6363pub const kHIDUsage_Csmr_MenuEscape: c_uint = 0x46;
6364/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_menuvalueincrease?language=objc)
6365pub const kHIDUsage_Csmr_MenuValueIncrease: c_uint = 0x47;
6366/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_menuvaluedecrease?language=objc)
6367pub const kHIDUsage_Csmr_MenuValueDecrease: c_uint = 0x48;
6368/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_dataonscreen?language=objc)
6369pub const kHIDUsage_Csmr_DataOnScreen: c_uint = 0x60;
6370/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_closedcaption?language=objc)
6371pub const kHIDUsage_Csmr_ClosedCaption: c_uint = 0x61;
6372/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_closedcaptionselect?language=objc)
6373pub const kHIDUsage_Csmr_ClosedCaptionSelect: c_uint = 0x62;
6374/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_vcrortv?language=objc)
6375pub const kHIDUsage_Csmr_VCROrTV: c_uint = 0x63;
6376/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_broadcastmode?language=objc)
6377pub const kHIDUsage_Csmr_BroadcastMode: c_uint = 0x64;
6378/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_snapshot?language=objc)
6379pub const kHIDUsage_Csmr_Snapshot: c_uint = 0x65;
6380/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_still?language=objc)
6381pub const kHIDUsage_Csmr_Still: c_uint = 0x66;
6382/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_pictureinpicturetoggle?language=objc)
6383pub const kHIDUsage_Csmr_PictureInPictureToggle: c_uint = 0x67;
6384/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_pictureinpictureswap?language=objc)
6385pub const kHIDUsage_Csmr_PictureInPictureSwap: c_uint = 0x68;
6386/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_redmenubutton?language=objc)
6387pub const kHIDUsage_Csmr_RedMenuButton: c_uint = 0x69;
6388/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_greenmenubutton?language=objc)
6389pub const kHIDUsage_Csmr_GreenMenuButton: c_uint = 0x6A;
6390/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_bluemenubutton?language=objc)
6391pub const kHIDUsage_Csmr_BlueMenuButton: c_uint = 0x6B;
6392/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_yellowmenubutton?language=objc)
6393pub const kHIDUsage_Csmr_YellowMenuButton: c_uint = 0x6C;
6394/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aspect?language=objc)
6395pub const kHIDUsage_Csmr_Aspect: c_uint = 0x6D;
6396/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_3dmodeselect?language=objc)
6397pub const kHIDUsage_Csmr_3DModeSelect: c_uint = 0x6E;
6398/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_displaybrightnessincrement?language=objc)
6399pub const kHIDUsage_Csmr_DisplayBrightnessIncrement: c_uint = 0x6F;
6400/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_displaybrightnessdecrement?language=objc)
6401pub const kHIDUsage_Csmr_DisplayBrightnessDecrement: c_uint = 0x70;
6402/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_displaybrightness?language=objc)
6403pub const kHIDUsage_Csmr_DisplayBrightness: c_uint = 0x71;
6404/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_displaybacklighttoggle?language=objc)
6405pub const kHIDUsage_Csmr_DisplayBacklightToggle: c_uint = 0x72;
6406/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_displaybrightnessminimum?language=objc)
6407pub const kHIDUsage_Csmr_DisplayBrightnessMinimum: c_uint = 0x73;
6408/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_displaybrightnessmaximum?language=objc)
6409pub const kHIDUsage_Csmr_DisplayBrightnessMaximum: c_uint = 0x74;
6410/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_displaybrightnesssetautobrightness?language=objc)
6411pub const kHIDUsage_Csmr_DisplayBrightnessSetAutoBrightness: c_uint = 0x75;
6412/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardbrightnessincrement?language=objc)
6413pub const kHIDUsage_Csmr_KeyboardBrightnessIncrement: c_uint = 0x79;
6414/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardbrightnessdecrement?language=objc)
6415pub const kHIDUsage_Csmr_KeyboardBrightnessDecrement: c_uint = 0x7A;
6416/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_selection?language=objc)
6417pub const kHIDUsage_Csmr_Selection: c_uint = 0x80;
6418/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_assign?language=objc)
6419pub const kHIDUsage_Csmr_Assign: c_uint = 0x81;
6420/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_modestep?language=objc)
6421pub const kHIDUsage_Csmr_ModeStep: c_uint = 0x82;
6422/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_recalllast?language=objc)
6423pub const kHIDUsage_Csmr_RecallLast: c_uint = 0x83;
6424/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_enterchannel?language=objc)
6425pub const kHIDUsage_Csmr_EnterChannel: c_uint = 0x84;
6426/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_ordermovie?language=objc)
6427pub const kHIDUsage_Csmr_OrderMovie: c_uint = 0x85;
6428/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channel?language=objc)
6429pub const kHIDUsage_Csmr_Channel: c_uint = 0x86;
6430/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselection?language=objc)
6431pub const kHIDUsage_Csmr_MediaSelection: c_uint = 0x87;
6432/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectcomputer?language=objc)
6433pub const kHIDUsage_Csmr_MediaSelectComputer: c_uint = 0x88;
6434/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselecttv?language=objc)
6435pub const kHIDUsage_Csmr_MediaSelectTV: c_uint = 0x89;
6436/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectwww?language=objc)
6437pub const kHIDUsage_Csmr_MediaSelectWWW: c_uint = 0x8A;
6438/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectdvd?language=objc)
6439pub const kHIDUsage_Csmr_MediaSelectDVD: c_uint = 0x8B;
6440/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselecttelephone?language=objc)
6441pub const kHIDUsage_Csmr_MediaSelectTelephone: c_uint = 0x8C;
6442/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectprogramguide?language=objc)
6443pub const kHIDUsage_Csmr_MediaSelectProgramGuide: c_uint = 0x8D;
6444/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectvideophone?language=objc)
6445pub const kHIDUsage_Csmr_MediaSelectVideoPhone: c_uint = 0x8E;
6446/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectgames?language=objc)
6447pub const kHIDUsage_Csmr_MediaSelectGames: c_uint = 0x8F;
6448/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectmessages?language=objc)
6449pub const kHIDUsage_Csmr_MediaSelectMessages: c_uint = 0x90;
6450/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectcd?language=objc)
6451pub const kHIDUsage_Csmr_MediaSelectCD: c_uint = 0x91;
6452/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectvcr?language=objc)
6453pub const kHIDUsage_Csmr_MediaSelectVCR: c_uint = 0x92;
6454/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselecttuner?language=objc)
6455pub const kHIDUsage_Csmr_MediaSelectTuner: c_uint = 0x93;
6456/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_quit?language=objc)
6457pub const kHIDUsage_Csmr_Quit: c_uint = 0x94;
6458/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_help?language=objc)
6459pub const kHIDUsage_Csmr_Help: c_uint = 0x95;
6460/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselecttape?language=objc)
6461pub const kHIDUsage_Csmr_MediaSelectTape: c_uint = 0x96;
6462/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectcable?language=objc)
6463pub const kHIDUsage_Csmr_MediaSelectCable: c_uint = 0x97;
6464/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectsatellite?language=objc)
6465pub const kHIDUsage_Csmr_MediaSelectSatellite: c_uint = 0x98;
6466/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectsecurity?language=objc)
6467pub const kHIDUsage_Csmr_MediaSelectSecurity: c_uint = 0x99;
6468/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselecthome?language=objc)
6469pub const kHIDUsage_Csmr_MediaSelectHome: c_uint = 0x9A;
6470/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mediaselectcall?language=objc)
6471pub const kHIDUsage_Csmr_MediaSelectCall: c_uint = 0x9B;
6472/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channelincrement?language=objc)
6473pub const kHIDUsage_Csmr_ChannelIncrement: c_uint = 0x9C;
6474/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channeldecrement?language=objc)
6475pub const kHIDUsage_Csmr_ChannelDecrement: c_uint = 0x9D;
6476/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_media?language=objc)
6477pub const kHIDUsage_Csmr_Media: c_uint = 0x9E;
6478/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_vcrplus?language=objc)
6479pub const kHIDUsage_Csmr_VCRPlus: c_uint = 0xA0;
6480/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_once?language=objc)
6481pub const kHIDUsage_Csmr_Once: c_uint = 0xA1;
6482/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_daily?language=objc)
6483pub const kHIDUsage_Csmr_Daily: c_uint = 0xA2;
6484/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_weekly?language=objc)
6485pub const kHIDUsage_Csmr_Weekly: c_uint = 0xA3;
6486/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_monthly?language=objc)
6487pub const kHIDUsage_Csmr_Monthly: c_uint = 0xA4;
6488/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_play?language=objc)
6489pub const kHIDUsage_Csmr_Play: c_uint = 0xB0;
6490/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_pause?language=objc)
6491pub const kHIDUsage_Csmr_Pause: c_uint = 0xB1;
6492/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_record?language=objc)
6493pub const kHIDUsage_Csmr_Record: c_uint = 0xB2;
6494/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_fastforward?language=objc)
6495pub const kHIDUsage_Csmr_FastForward: c_uint = 0xB3;
6496/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_rewind?language=objc)
6497pub const kHIDUsage_Csmr_Rewind: c_uint = 0xB4;
6498/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_scannexttrack?language=objc)
6499pub const kHIDUsage_Csmr_ScanNextTrack: c_uint = 0xB5;
6500/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_scanprevioustrack?language=objc)
6501pub const kHIDUsage_Csmr_ScanPreviousTrack: c_uint = 0xB6;
6502/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_stop?language=objc)
6503pub const kHIDUsage_Csmr_Stop: c_uint = 0xB7;
6504/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_eject?language=objc)
6505pub const kHIDUsage_Csmr_Eject: c_uint = 0xB8;
6506/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_randomplay?language=objc)
6507pub const kHIDUsage_Csmr_RandomPlay: c_uint = 0xB9;
6508/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_selectdisc?language=objc)
6509pub const kHIDUsage_Csmr_SelectDisc: c_uint = 0xBA;
6510/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_enterdisc?language=objc)
6511pub const kHIDUsage_Csmr_EnterDisc: c_uint = 0xBB;
6512/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_repeat?language=objc)
6513pub const kHIDUsage_Csmr_Repeat: c_uint = 0xBC;
6514/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_tracking?language=objc)
6515pub const kHIDUsage_Csmr_Tracking: c_uint = 0xBD;
6516/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_tracknormal?language=objc)
6517pub const kHIDUsage_Csmr_TrackNormal: c_uint = 0xBE;
6518/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_slowtracking?language=objc)
6519pub const kHIDUsage_Csmr_SlowTracking: c_uint = 0xBF;
6520/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_frameforward?language=objc)
6521pub const kHIDUsage_Csmr_FrameForward: c_uint = 0xC0;
6522/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_frameback?language=objc)
6523pub const kHIDUsage_Csmr_FrameBack: c_uint = 0xC1;
6524/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mark?language=objc)
6525pub const kHIDUsage_Csmr_Mark: c_uint = 0xC2;
6526/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_clearmark?language=objc)
6527pub const kHIDUsage_Csmr_ClearMark: c_uint = 0xC3;
6528/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_repeatfrommark?language=objc)
6529pub const kHIDUsage_Csmr_RepeatFromMark: c_uint = 0xC4;
6530/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_returntomark?language=objc)
6531pub const kHIDUsage_Csmr_ReturnToMark: c_uint = 0xC5;
6532/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_searchmarkforward?language=objc)
6533pub const kHIDUsage_Csmr_SearchMarkForward: c_uint = 0xC6;
6534/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_searchmarkbackwards?language=objc)
6535pub const kHIDUsage_Csmr_SearchMarkBackwards: c_uint = 0xC7;
6536/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_counterreset?language=objc)
6537pub const kHIDUsage_Csmr_CounterReset: c_uint = 0xC8;
6538/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_showcounter?language=objc)
6539pub const kHIDUsage_Csmr_ShowCounter: c_uint = 0xC9;
6540/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_trackingincrement?language=objc)
6541pub const kHIDUsage_Csmr_TrackingIncrement: c_uint = 0xCA;
6542/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_trackingdecrement?language=objc)
6543pub const kHIDUsage_Csmr_TrackingDecrement: c_uint = 0xCB;
6544/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_stoporeject?language=objc)
6545pub const kHIDUsage_Csmr_StopOrEject: c_uint = 0xCC;
6546/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_playorpause?language=objc)
6547pub const kHIDUsage_Csmr_PlayOrPause: c_uint = 0xCD;
6548/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_playorskip?language=objc)
6549pub const kHIDUsage_Csmr_PlayOrSkip: c_uint = 0xCE;
6550/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_voicecommand?language=objc)
6551pub const kHIDUsage_Csmr_VoiceCommand: c_uint = 0xCF;
6552/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_volume?language=objc)
6553pub const kHIDUsage_Csmr_Volume: c_uint = 0xE0;
6554/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_balance?language=objc)
6555pub const kHIDUsage_Csmr_Balance: c_uint = 0xE1;
6556/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mute?language=objc)
6557pub const kHIDUsage_Csmr_Mute: c_uint = 0xE2;
6558/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_bass?language=objc)
6559pub const kHIDUsage_Csmr_Bass: c_uint = 0xE3;
6560/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_treble?language=objc)
6561pub const kHIDUsage_Csmr_Treble: c_uint = 0xE4;
6562/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_bassboost?language=objc)
6563pub const kHIDUsage_Csmr_BassBoost: c_uint = 0xE5;
6564/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_surroundmode?language=objc)
6565pub const kHIDUsage_Csmr_SurroundMode: c_uint = 0xE6;
6566/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_loudness?language=objc)
6567pub const kHIDUsage_Csmr_Loudness: c_uint = 0xE7;
6568/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_mpx?language=objc)
6569pub const kHIDUsage_Csmr_MPX: c_uint = 0xE8;
6570/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_volumeincrement?language=objc)
6571pub const kHIDUsage_Csmr_VolumeIncrement: c_uint = 0xE9;
6572/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_volumedecrement?language=objc)
6573pub const kHIDUsage_Csmr_VolumeDecrement: c_uint = 0xEA;
6574/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_speed?language=objc)
6575pub const kHIDUsage_Csmr_Speed: c_uint = 0xF0;
6576/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_playbackspeed?language=objc)
6577pub const kHIDUsage_Csmr_PlaybackSpeed: c_uint = 0xF1;
6578/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_standardplay?language=objc)
6579pub const kHIDUsage_Csmr_StandardPlay: c_uint = 0xF2;
6580/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_longplay?language=objc)
6581pub const kHIDUsage_Csmr_LongPlay: c_uint = 0xF3;
6582/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_extendedplay?language=objc)
6583pub const kHIDUsage_Csmr_ExtendedPlay: c_uint = 0xF4;
6584/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_slow?language=objc)
6585pub const kHIDUsage_Csmr_Slow: c_uint = 0xF5;
6586/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_fanenable?language=objc)
6587pub const kHIDUsage_Csmr_FanEnable: c_uint = 0x100;
6588/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_fanspeed?language=objc)
6589pub const kHIDUsage_Csmr_FanSpeed: c_uint = 0x101;
6590/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_lightenable?language=objc)
6591pub const kHIDUsage_Csmr_LightEnable: c_uint = 0x102;
6592/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_lightilluminationlevel?language=objc)
6593pub const kHIDUsage_Csmr_LightIlluminationLevel: c_uint = 0x103;
6594/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_climatecontrolenable?language=objc)
6595pub const kHIDUsage_Csmr_ClimateControlEnable: c_uint = 0x104;
6596/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_roomtemperature?language=objc)
6597pub const kHIDUsage_Csmr_RoomTemperature: c_uint = 0x105;
6598/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_securityenable?language=objc)
6599pub const kHIDUsage_Csmr_SecurityEnable: c_uint = 0x106;
6600/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_firealarm?language=objc)
6601pub const kHIDUsage_Csmr_FireAlarm: c_uint = 0x107;
6602/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_policealarm?language=objc)
6603pub const kHIDUsage_Csmr_PoliceAlarm: c_uint = 0x108;
6604/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_proximity?language=objc)
6605pub const kHIDUsage_Csmr_Proximity: c_uint = 0x109;
6606/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_motion?language=objc)
6607pub const kHIDUsage_Csmr_Motion: c_uint = 0x10A;
6608/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_duressalarm?language=objc)
6609pub const kHIDUsage_Csmr_DuressAlarm: c_uint = 0x10B;
6610/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_holdupalarm?language=objc)
6611pub const kHIDUsage_Csmr_HoldupAlarm: c_uint = 0x10C;
6612/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_medicalalarm?language=objc)
6613pub const kHIDUsage_Csmr_MedicalAlarm: c_uint = 0x10D;
6614/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_balanceright?language=objc)
6615pub const kHIDUsage_Csmr_BalanceRight: c_uint = 0x150;
6616/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_balanceleft?language=objc)
6617pub const kHIDUsage_Csmr_BalanceLeft: c_uint = 0x151;
6618/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_bassincrement?language=objc)
6619pub const kHIDUsage_Csmr_BassIncrement: c_uint = 0x152;
6620/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_bassdecrement?language=objc)
6621pub const kHIDUsage_Csmr_BassDecrement: c_uint = 0x153;
6622/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_trebleincrement?language=objc)
6623pub const kHIDUsage_Csmr_TrebleIncrement: c_uint = 0x154;
6624/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_trebledecrement?language=objc)
6625pub const kHIDUsage_Csmr_TrebleDecrement: c_uint = 0x155;
6626/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_speakersystem?language=objc)
6627pub const kHIDUsage_Csmr_SpeakerSystem: c_uint = 0x160;
6628/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channelleft?language=objc)
6629pub const kHIDUsage_Csmr_ChannelLeft: c_uint = 0x161;
6630/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channelright?language=objc)
6631pub const kHIDUsage_Csmr_ChannelRight: c_uint = 0x162;
6632/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channelcenter?language=objc)
6633pub const kHIDUsage_Csmr_ChannelCenter: c_uint = 0x163;
6634/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channelfront?language=objc)
6635pub const kHIDUsage_Csmr_ChannelFront: c_uint = 0x164;
6636/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channelcenterfront?language=objc)
6637pub const kHIDUsage_Csmr_ChannelCenterFront: c_uint = 0x165;
6638/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channelside?language=objc)
6639pub const kHIDUsage_Csmr_ChannelSide: c_uint = 0x166;
6640/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channelsurround?language=objc)
6641pub const kHIDUsage_Csmr_ChannelSurround: c_uint = 0x167;
6642/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channellowfrequencyenhancement?language=objc)
6643pub const kHIDUsage_Csmr_ChannelLowFrequencyEnhancement: c_uint = 0x168;
6644/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channeltop?language=objc)
6645pub const kHIDUsage_Csmr_ChannelTop: c_uint = 0x169;
6646/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_channelunknown?language=objc)
6647pub const kHIDUsage_Csmr_ChannelUnknown: c_uint = 0x16A;
6648/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_subchannel?language=objc)
6649pub const kHIDUsage_Csmr_SubChannel: c_uint = 0x170;
6650/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_subchannelincrement?language=objc)
6651pub const kHIDUsage_Csmr_SubChannelIncrement: c_uint = 0x171;
6652/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_subchanneldecrement?language=objc)
6653pub const kHIDUsage_Csmr_SubChannelDecrement: c_uint = 0x172;
6654/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alternateaudioincrement?language=objc)
6655pub const kHIDUsage_Csmr_AlternateAudioIncrement: c_uint = 0x173;
6656/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alternateaudiodecrement?language=objc)
6657pub const kHIDUsage_Csmr_AlternateAudioDecrement: c_uint = 0x174;
6658/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_applicationlaunchbuttons?language=objc)
6659pub const kHIDUsage_Csmr_ApplicationLaunchButtons: c_uint = 0x180;
6660/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_allaunchbuttonconfigurationtool?language=objc)
6661pub const kHIDUsage_Csmr_ALLaunchButtonConfigurationTool: c_uint = 0x181;
6662/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alprogrammablebuttonconfiguration?language=objc)
6663pub const kHIDUsage_Csmr_ALProgrammableButtonConfiguration: c_uint = 0x182;
6664/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alconsumercontrolconfiguration?language=objc)
6665pub const kHIDUsage_Csmr_ALConsumerControlConfiguration: c_uint = 0x183;
6666/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alwordprocessor?language=objc)
6667pub const kHIDUsage_Csmr_ALWordProcessor: c_uint = 0x184;
6668/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_altexteditor?language=objc)
6669pub const kHIDUsage_Csmr_ALTextEditor: c_uint = 0x185;
6670/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alspreadsheet?language=objc)
6671pub const kHIDUsage_Csmr_ALSpreadsheet: c_uint = 0x186;
6672/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_algraphicseditor?language=objc)
6673pub const kHIDUsage_Csmr_ALGraphicsEditor: c_uint = 0x187;
6674/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alpresentationapp?language=objc)
6675pub const kHIDUsage_Csmr_ALPresentationApp: c_uint = 0x188;
6676/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aldatabaseapp?language=objc)
6677pub const kHIDUsage_Csmr_ALDatabaseApp: c_uint = 0x189;
6678/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alemailreader?language=objc)
6679pub const kHIDUsage_Csmr_ALEmailReader: c_uint = 0x18A;
6680/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alnewsreader?language=objc)
6681pub const kHIDUsage_Csmr_ALNewsreader: c_uint = 0x18B;
6682/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alvoicemail?language=objc)
6683pub const kHIDUsage_Csmr_ALVoicemail: c_uint = 0x18C;
6684/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alcontactsoraddressbook?language=objc)
6685pub const kHIDUsage_Csmr_ALContactsOrAddressBook: c_uint = 0x18D;
6686/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alcalendarorschedule?language=objc)
6687pub const kHIDUsage_Csmr_ALCalendarOrSchedule: c_uint = 0x18E;
6688/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_altaskorprojectmanager?language=objc)
6689pub const kHIDUsage_Csmr_ALTaskOrProjectManager: c_uint = 0x18F;
6690/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_allogorjournalortimecard?language=objc)
6691pub const kHIDUsage_Csmr_ALLogOrJournalOrTimecard: c_uint = 0x190;
6692/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alcheckbookorfinance?language=objc)
6693pub const kHIDUsage_Csmr_ALCheckbookOrFinance: c_uint = 0x191;
6694/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alcalculator?language=objc)
6695pub const kHIDUsage_Csmr_ALCalculator: c_uint = 0x192;
6696/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alaorvcaptureorplayback?language=objc)
6697pub const kHIDUsage_Csmr_ALAOrVCaptureOrPlayback: c_uint = 0x193;
6698/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_allocalmachinebrowser?language=objc)
6699pub const kHIDUsage_Csmr_ALLocalMachineBrowser: c_uint = 0x194;
6700/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_allanorwanbrowser?language=objc)
6701pub const kHIDUsage_Csmr_ALLANOrWANBrowser: c_uint = 0x195;
6702/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alinternetbrowser?language=objc)
6703pub const kHIDUsage_Csmr_ALInternetBrowser: c_uint = 0x196;
6704/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alremotenetworkingorispconnect?language=objc)
6705pub const kHIDUsage_Csmr_ALRemoteNetworkingOrISPConnect: c_uint = 0x197;
6706/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alnetworkconference?language=objc)
6707pub const kHIDUsage_Csmr_ALNetworkConference: c_uint = 0x198;
6708/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alnetworkchat?language=objc)
6709pub const kHIDUsage_Csmr_ALNetworkChat: c_uint = 0x199;
6710/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_altelephonyordialer?language=objc)
6711pub const kHIDUsage_Csmr_ALTelephonyOrDialer: c_uint = 0x19A;
6712/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_allogon?language=objc)
6713pub const kHIDUsage_Csmr_ALLogon: c_uint = 0x19B;
6714/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_allogoff?language=objc)
6715pub const kHIDUsage_Csmr_ALLogoff: c_uint = 0x19C;
6716/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_allogonorlogoff?language=objc)
6717pub const kHIDUsage_Csmr_ALLogonOrLogoff: c_uint = 0x19D;
6718/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alterminallockorscreensaver?language=objc)
6719pub const kHIDUsage_Csmr_ALTerminalLockOrScreensaver: c_uint = 0x19E;
6720/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alcontrolpanel?language=objc)
6721pub const kHIDUsage_Csmr_ALControlPanel: c_uint = 0x19F;
6722/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alcommandlineprocessororrun?language=objc)
6723pub const kHIDUsage_Csmr_ALCommandLineProcessorOrRun: c_uint = 0x1A0;
6724/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alprocessortaskmanager?language=objc)
6725pub const kHIDUsage_Csmr_ALProcessOrTaskManager: c_uint = 0x1A1;
6726/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_al?language=objc)
6727pub const kHIDUsage_Csmr_AL: c_uint = 0x1A2;
6728/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alnexttaskorapplication?language=objc)
6729pub const kHIDUsage_Csmr_ALNextTaskOrApplication: c_uint = 0x1A3;
6730/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alprevioustaskorapplication?language=objc)
6731pub const kHIDUsage_Csmr_ALPreviousTaskOrApplication: c_uint = 0x1A4;
6732/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alpreemptivehalttaskorapplication?language=objc)
6733pub const kHIDUsage_Csmr_ALPreemptiveHaltTaskOrApplication: c_uint = 0x1A5;
6734/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alintegratedhelpcenter?language=objc)
6735pub const kHIDUsage_Csmr_ALIntegratedHelpCenter: c_uint = 0x1A6;
6736/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aldocuments?language=objc)
6737pub const kHIDUsage_Csmr_ALDocuments: c_uint = 0x1A7;
6738/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_althesaurus?language=objc)
6739pub const kHIDUsage_Csmr_ALThesaurus: c_uint = 0x1A8;
6740/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aldictionary?language=objc)
6741pub const kHIDUsage_Csmr_ALDictionary: c_uint = 0x1A9;
6742/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aldesktop?language=objc)
6743pub const kHIDUsage_Csmr_ALDesktop: c_uint = 0x1AA;
6744/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alspellcheck?language=objc)
6745pub const kHIDUsage_Csmr_ALSpellCheck: c_uint = 0x1AB;
6746/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_algrammercheck?language=objc)
6747pub const kHIDUsage_Csmr_ALGrammerCheck: c_uint = 0x1AC;
6748/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alwirelessstatus?language=objc)
6749pub const kHIDUsage_Csmr_ALWirelessStatus: c_uint = 0x1AD;
6750/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alkeyboardlayout?language=objc)
6751pub const kHIDUsage_Csmr_ALKeyboardLayout: c_uint = 0x1AE;
6752/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alvirusprotection?language=objc)
6753pub const kHIDUsage_Csmr_ALVirusProtection: c_uint = 0x1AF;
6754/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alencryption?language=objc)
6755pub const kHIDUsage_Csmr_ALEncryption: c_uint = 0x1B0;
6756/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alscreensaver?language=objc)
6757pub const kHIDUsage_Csmr_ALScreenSaver: c_uint = 0x1B1;
6758/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alalarms?language=objc)
6759pub const kHIDUsage_Csmr_ALAlarms: c_uint = 0x1B2;
6760/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alclock?language=objc)
6761pub const kHIDUsage_Csmr_ALClock: c_uint = 0x1B3;
6762/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alfilebrowser?language=objc)
6763pub const kHIDUsage_Csmr_ALFileBrowser: c_uint = 0x1B4;
6764/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alpowerstatus?language=objc)
6765pub const kHIDUsage_Csmr_ALPowerStatus: c_uint = 0x1B5;
6766/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alimagebrowser?language=objc)
6767pub const kHIDUsage_Csmr_ALImageBrowser: c_uint = 0x1B6;
6768/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alaudiobrowser?language=objc)
6769pub const kHIDUsage_Csmr_ALAudioBrowser: c_uint = 0x1B7;
6770/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_almoviebrowser?language=objc)
6771pub const kHIDUsage_Csmr_ALMovieBrowser: c_uint = 0x1B8;
6772/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aldigitalrightsmanager?language=objc)
6773pub const kHIDUsage_Csmr_ALDigitalRightsManager: c_uint = 0x1B9;
6774/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aldigitalwallet?language=objc)
6775pub const kHIDUsage_Csmr_ALDigitalWallet: c_uint = 0x1BA;
6776/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alinstantmessaging?language=objc)
6777pub const kHIDUsage_Csmr_ALInstantMessaging: c_uint = 0x1BC;
6778/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aloemfeaturebrowser?language=objc)
6779pub const kHIDUsage_Csmr_ALOEMFeatureBrowser: c_uint = 0x1BD;
6780/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aloemhelp?language=objc)
6781pub const kHIDUsage_Csmr_ALOEMHelp: c_uint = 0x1BE;
6782/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alonlinecommunity?language=objc)
6783pub const kHIDUsage_Csmr_ALOnlineCommunity: c_uint = 0x1BF;
6784/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alentertainmentcontentbrowser?language=objc)
6785pub const kHIDUsage_Csmr_ALEntertainmentContentBrowser: c_uint = 0x1C0;
6786/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alonlineshoppingbrowswer?language=objc)
6787pub const kHIDUsage_Csmr_ALOnlineShoppingBrowswer: c_uint = 0x1C1;
6788/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alsmartcardinformationorhelp?language=objc)
6789pub const kHIDUsage_Csmr_ALSmartCardInformationOrHelp: c_uint = 0x1C2;
6790/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_almarketmonitororfinancebrowser?language=objc)
6791pub const kHIDUsage_Csmr_ALMarketMonitorOrFinanceBrowser: c_uint = 0x1C3;
6792/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alcustomizedcorporatenewsbrowser?language=objc)
6793pub const kHIDUsage_Csmr_ALCustomizedCorporateNewsBrowser: c_uint = 0x1C4;
6794/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alonlineactivitybrowswer?language=objc)
6795pub const kHIDUsage_Csmr_ALOnlineActivityBrowswer: c_uint = 0x1C5;
6796/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alresearchorsearchbrowswer?language=objc)
6797pub const kHIDUsage_Csmr_ALResearchOrSearchBrowswer: c_uint = 0x1C6;
6798/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alaudioplayer?language=objc)
6799pub const kHIDUsage_Csmr_ALAudioPlayer: c_uint = 0x1C7;
6800/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_almessagestatus?language=objc)
6801pub const kHIDUsage_Csmr_ALMessageStatus: c_uint = 0x1C8;
6802/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alcontactsync?language=objc)
6803pub const kHIDUsage_Csmr_ALContactSync: c_uint = 0x1C9;
6804/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alnavigation?language=objc)
6805pub const kHIDUsage_Csmr_ALNavigation: c_uint = 0x1CA;
6806/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_alcontextawaredesktopassistant?language=objc)
6807pub const kHIDUsage_Csmr_ALContextawareDesktopAssistant: c_uint = 0x1CB;
6808/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_genericguiapplicationcontrols?language=objc)
6809pub const kHIDUsage_Csmr_GenericGUIApplicationControls: c_uint = 0x200;
6810/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acnew?language=objc)
6811pub const kHIDUsage_Csmr_ACNew: c_uint = 0x201;
6812/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acopen?language=objc)
6813pub const kHIDUsage_Csmr_ACOpen: c_uint = 0x202;
6814/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acclose?language=objc)
6815pub const kHIDUsage_Csmr_ACClose: c_uint = 0x203;
6816/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acexit?language=objc)
6817pub const kHIDUsage_Csmr_ACExit: c_uint = 0x204;
6818/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acmaximize?language=objc)
6819pub const kHIDUsage_Csmr_ACMaximize: c_uint = 0x205;
6820/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acminimize?language=objc)
6821pub const kHIDUsage_Csmr_ACMinimize: c_uint = 0x206;
6822/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsave?language=objc)
6823pub const kHIDUsage_Csmr_ACSave: c_uint = 0x207;
6824/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acprint?language=objc)
6825pub const kHIDUsage_Csmr_ACPrint: c_uint = 0x208;
6826/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acproperties?language=objc)
6827pub const kHIDUsage_Csmr_ACProperties: c_uint = 0x209;
6828/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acundo?language=objc)
6829pub const kHIDUsage_Csmr_ACUndo: c_uint = 0x21A;
6830/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_accopy?language=objc)
6831pub const kHIDUsage_Csmr_ACCopy: c_uint = 0x21B;
6832/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_accut?language=objc)
6833pub const kHIDUsage_Csmr_ACCut: c_uint = 0x21C;
6834/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acpaste?language=objc)
6835pub const kHIDUsage_Csmr_ACPaste: c_uint = 0x21D;
6836/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_ac?language=objc)
6837pub const kHIDUsage_Csmr_AC: c_uint = 0x21E;
6838/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acfind?language=objc)
6839pub const kHIDUsage_Csmr_ACFind: c_uint = 0x21F;
6840/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acfindandreplace?language=objc)
6841pub const kHIDUsage_Csmr_ACFindandReplace: c_uint = 0x220;
6842/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsearch?language=objc)
6843pub const kHIDUsage_Csmr_ACSearch: c_uint = 0x221;
6844/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acgoto?language=objc)
6845pub const kHIDUsage_Csmr_ACGoTo: c_uint = 0x222;
6846/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_achome?language=objc)
6847pub const kHIDUsage_Csmr_ACHome: c_uint = 0x223;
6848/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acback?language=objc)
6849pub const kHIDUsage_Csmr_ACBack: c_uint = 0x224;
6850/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acforward?language=objc)
6851pub const kHIDUsage_Csmr_ACForward: c_uint = 0x225;
6852/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acstop?language=objc)
6853pub const kHIDUsage_Csmr_ACStop: c_uint = 0x226;
6854/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acrefresh?language=objc)
6855pub const kHIDUsage_Csmr_ACRefresh: c_uint = 0x227;
6856/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acpreviouslink?language=objc)
6857pub const kHIDUsage_Csmr_ACPreviousLink: c_uint = 0x228;
6858/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acnextlink?language=objc)
6859pub const kHIDUsage_Csmr_ACNextLink: c_uint = 0x229;
6860/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acbookmarks?language=objc)
6861pub const kHIDUsage_Csmr_ACBookmarks: c_uint = 0x22A;
6862/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_achistory?language=objc)
6863pub const kHIDUsage_Csmr_ACHistory: c_uint = 0x22B;
6864/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsubscriptions?language=objc)
6865pub const kHIDUsage_Csmr_ACSubscriptions: c_uint = 0x22C;
6866/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aczoomin?language=objc)
6867pub const kHIDUsage_Csmr_ACZoomIn: c_uint = 0x22D;
6868/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aczoomout?language=objc)
6869pub const kHIDUsage_Csmr_ACZoomOut: c_uint = 0x22E;
6870/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aczoom?language=objc)
6871pub const kHIDUsage_Csmr_ACZoom: c_uint = 0x22F;
6872/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acfullscreenview?language=objc)
6873pub const kHIDUsage_Csmr_ACFullScreenView: c_uint = 0x230;
6874/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acnormalview?language=objc)
6875pub const kHIDUsage_Csmr_ACNormalView: c_uint = 0x231;
6876/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acviewtoggle?language=objc)
6877pub const kHIDUsage_Csmr_ACViewToggle: c_uint = 0x232;
6878/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acscrollup?language=objc)
6879pub const kHIDUsage_Csmr_ACScrollUp: c_uint = 0x233;
6880/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acscrolldown?language=objc)
6881pub const kHIDUsage_Csmr_ACScrollDown: c_uint = 0x234;
6882/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acscroll?language=objc)
6883pub const kHIDUsage_Csmr_ACScroll: c_uint = 0x235;
6884/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acpanleft?language=objc)
6885pub const kHIDUsage_Csmr_ACPanLeft: c_uint = 0x236;
6886/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acpanright?language=objc)
6887pub const kHIDUsage_Csmr_ACPanRight: c_uint = 0x237;
6888/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acpan?language=objc)
6889pub const kHIDUsage_Csmr_ACPan: c_uint = 0x238;
6890/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acnewwindow?language=objc)
6891pub const kHIDUsage_Csmr_ACNewWindow: c_uint = 0x239;
6892/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_actilehorizontally?language=objc)
6893pub const kHIDUsage_Csmr_ACTileHorizontally: c_uint = 0x23A;
6894/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_actilevertically?language=objc)
6895pub const kHIDUsage_Csmr_ACTileVertically: c_uint = 0x23B;
6896/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acformat?language=objc)
6897pub const kHIDUsage_Csmr_ACFormat: c_uint = 0x23C;
6898/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acedit?language=objc)
6899pub const kHIDUsage_Csmr_ACEdit: c_uint = 0x23D;
6900/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acbold?language=objc)
6901pub const kHIDUsage_Csmr_ACBold: c_uint = 0x23E;
6902/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acitalics?language=objc)
6903pub const kHIDUsage_Csmr_ACItalics: c_uint = 0x23F;
6904/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acunderline?language=objc)
6905pub const kHIDUsage_Csmr_ACUnderline: c_uint = 0x240;
6906/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acstrikethrough?language=objc)
6907pub const kHIDUsage_Csmr_ACStrikethrough: c_uint = 0x241;
6908/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsubscript?language=objc)
6909pub const kHIDUsage_Csmr_ACSubscript: c_uint = 0x242;
6910/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsuperscript?language=objc)
6911pub const kHIDUsage_Csmr_ACSuperscript: c_uint = 0x243;
6912/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acallcaps?language=objc)
6913pub const kHIDUsage_Csmr_ACAllCaps: c_uint = 0x244;
6914/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acrotate?language=objc)
6915pub const kHIDUsage_Csmr_ACRotate: c_uint = 0x245;
6916/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acresize?language=objc)
6917pub const kHIDUsage_Csmr_ACResize: c_uint = 0x246;
6918/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acfliphorizontal?language=objc)
6919pub const kHIDUsage_Csmr_ACFlipHorizontal: c_uint = 0x247;
6920/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acflipvertical?language=objc)
6921pub const kHIDUsage_Csmr_ACFlipVertical: c_uint = 0x248;
6922/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acmirrorhorizontal?language=objc)
6923pub const kHIDUsage_Csmr_ACMirrorHorizontal: c_uint = 0x249;
6924/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acmirrorvertical?language=objc)
6925pub const kHIDUsage_Csmr_ACMirrorVertical: c_uint = 0x24A;
6926/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acfontselect?language=objc)
6927pub const kHIDUsage_Csmr_ACFontSelect: c_uint = 0x24B;
6928/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acfontcolor?language=objc)
6929pub const kHIDUsage_Csmr_ACFontColor: c_uint = 0x24C;
6930/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acfontsize?language=objc)
6931pub const kHIDUsage_Csmr_ACFontSize: c_uint = 0x24D;
6932/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acjustifyleft?language=objc)
6933pub const kHIDUsage_Csmr_ACJustifyLeft: c_uint = 0x24E;
6934/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acjustifycenterh?language=objc)
6935pub const kHIDUsage_Csmr_ACJustifyCenterH: c_uint = 0x24F;
6936/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acjustifyright?language=objc)
6937pub const kHIDUsage_Csmr_ACJustifyRight: c_uint = 0x250;
6938/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acjustifyblockh?language=objc)
6939pub const kHIDUsage_Csmr_ACJustifyBlockH: c_uint = 0x251;
6940/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acjustifytop?language=objc)
6941pub const kHIDUsage_Csmr_ACJustifyTop: c_uint = 0x252;
6942/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acjustifycenterv?language=objc)
6943pub const kHIDUsage_Csmr_ACJustifyCenterV: c_uint = 0x253;
6944/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acjustifybottom?language=objc)
6945pub const kHIDUsage_Csmr_ACJustifyBottom: c_uint = 0x254;
6946/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acjustifyblockv?language=objc)
6947pub const kHIDUsage_Csmr_ACJustifyBlockV: c_uint = 0x255;
6948/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acindentydecrease?language=objc)
6949pub const kHIDUsage_Csmr_ACIndentyDecrease: c_uint = 0x256;
6950/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acindentyincrease?language=objc)
6951pub const kHIDUsage_Csmr_ACIndentyIncrease: c_uint = 0x257;
6952/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acnumberedlist?language=objc)
6953pub const kHIDUsage_Csmr_ACNumberedList: c_uint = 0x258;
6954/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acrestartnumbering?language=objc)
6955pub const kHIDUsage_Csmr_ACRestartNumbering: c_uint = 0x259;
6956/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acbulletedlist?language=objc)
6957pub const kHIDUsage_Csmr_ACBulletedList: c_uint = 0x25A;
6958/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acpromote?language=objc)
6959pub const kHIDUsage_Csmr_ACPromote: c_uint = 0x25B;
6960/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acdemote?language=objc)
6961pub const kHIDUsage_Csmr_ACDemote: c_uint = 0x25C;
6962/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acyes?language=objc)
6963pub const kHIDUsage_Csmr_ACYes: c_uint = 0x25D;
6964/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acno?language=objc)
6965pub const kHIDUsage_Csmr_ACNo: c_uint = 0x25E;
6966/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_accancel?language=objc)
6967pub const kHIDUsage_Csmr_ACCancel: c_uint = 0x25F;
6968/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_accatalog?language=objc)
6969pub const kHIDUsage_Csmr_ACCatalog: c_uint = 0x260;
6970/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acbuyorcheckout?language=objc)
6971pub const kHIDUsage_Csmr_ACBuyOrCheckout: c_uint = 0x261;
6972/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acaddtocart?language=objc)
6973pub const kHIDUsage_Csmr_ACAddToCart: c_uint = 0x262;
6974/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acexpand?language=objc)
6975pub const kHIDUsage_Csmr_ACExpand: c_uint = 0x263;
6976/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acexpandall?language=objc)
6977pub const kHIDUsage_Csmr_ACExpandAll: c_uint = 0x264;
6978/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_accollapse?language=objc)
6979pub const kHIDUsage_Csmr_ACCollapse: c_uint = 0x265;
6980/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_accollapseall?language=objc)
6981pub const kHIDUsage_Csmr_ACCollapseAll: c_uint = 0x266;
6982/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acprintpreview?language=objc)
6983pub const kHIDUsage_Csmr_ACPrintPreview: c_uint = 0x267;
6984/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acpastespecial?language=objc)
6985pub const kHIDUsage_Csmr_ACPasteSpecial: c_uint = 0x268;
6986/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acinsertmode?language=objc)
6987pub const kHIDUsage_Csmr_ACInsertMode: c_uint = 0x269;
6988/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acdelete?language=objc)
6989pub const kHIDUsage_Csmr_ACDelete: c_uint = 0x26A;
6990/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_aclock?language=objc)
6991pub const kHIDUsage_Csmr_ACLock: c_uint = 0x26B;
6992/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acunlock?language=objc)
6993pub const kHIDUsage_Csmr_ACUnlock: c_uint = 0x26C;
6994/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acprotect?language=objc)
6995pub const kHIDUsage_Csmr_ACProtect: c_uint = 0x26D;
6996/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acunprotect?language=objc)
6997pub const kHIDUsage_Csmr_ACUnprotect: c_uint = 0x26E;
6998/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acattachcomment?language=objc)
6999pub const kHIDUsage_Csmr_ACAttachComment: c_uint = 0x26F;
7000/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acdetachcomment?language=objc)
7001pub const kHIDUsage_Csmr_ACDetachComment: c_uint = 0x270;
7002/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acviewcomment?language=objc)
7003pub const kHIDUsage_Csmr_ACViewComment: c_uint = 0x271;
7004/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acselectword?language=objc)
7005pub const kHIDUsage_Csmr_ACSelectWord: c_uint = 0x272;
7006/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acselectsentence?language=objc)
7007pub const kHIDUsage_Csmr_ACSelectSentence: c_uint = 0x273;
7008/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acselectparagraph?language=objc)
7009pub const kHIDUsage_Csmr_ACSelectParagraph: c_uint = 0x274;
7010/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acselectcolumn?language=objc)
7011pub const kHIDUsage_Csmr_ACSelectColumn: c_uint = 0x275;
7012/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acselectrow?language=objc)
7013pub const kHIDUsage_Csmr_ACSelectRow: c_uint = 0x276;
7014/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acselecttable?language=objc)
7015pub const kHIDUsage_Csmr_ACSelectTable: c_uint = 0x277;
7016/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acselectobject?language=objc)
7017pub const kHIDUsage_Csmr_ACSelectObject: c_uint = 0x278;
7018/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acredoorrepeat?language=objc)
7019pub const kHIDUsage_Csmr_ACRedoOrRepeat: c_uint = 0x279;
7020/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsort?language=objc)
7021pub const kHIDUsage_Csmr_ACSort: c_uint = 0x27A;
7022/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsortascending?language=objc)
7023pub const kHIDUsage_Csmr_ACSortAscending: c_uint = 0x27B;
7024/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsortdescending?language=objc)
7025pub const kHIDUsage_Csmr_ACSortDescending: c_uint = 0x27C;
7026/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acfilter?language=objc)
7027pub const kHIDUsage_Csmr_ACFilter: c_uint = 0x27D;
7028/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsetclock?language=objc)
7029pub const kHIDUsage_Csmr_ACSetClock: c_uint = 0x27E;
7030/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acviewclock?language=objc)
7031pub const kHIDUsage_Csmr_ACViewClock: c_uint = 0x27F;
7032/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acselecttimezone?language=objc)
7033pub const kHIDUsage_Csmr_ACSelectTimeZone: c_uint = 0x280;
7034/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acedittimezones?language=objc)
7035pub const kHIDUsage_Csmr_ACEditTimeZones: c_uint = 0x281;
7036/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsetalarm?language=objc)
7037pub const kHIDUsage_Csmr_ACSetAlarm: c_uint = 0x282;
7038/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acclearalarm?language=objc)
7039pub const kHIDUsage_Csmr_ACClearAlarm: c_uint = 0x283;
7040/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsnoozealarm?language=objc)
7041pub const kHIDUsage_Csmr_ACSnoozeAlarm: c_uint = 0x284;
7042/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acresetalarm?language=objc)
7043pub const kHIDUsage_Csmr_ACResetAlarm: c_uint = 0x285;
7044/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsynchronize?language=objc)
7045pub const kHIDUsage_Csmr_ACSynchronize: c_uint = 0x286;
7046/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsendorreceive?language=objc)
7047pub const kHIDUsage_Csmr_ACSendOrReceive: c_uint = 0x287;
7048/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsendto?language=objc)
7049pub const kHIDUsage_Csmr_ACSendTo: c_uint = 0x288;
7050/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acreply?language=objc)
7051pub const kHIDUsage_Csmr_ACReply: c_uint = 0x289;
7052/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acreplyall?language=objc)
7053pub const kHIDUsage_Csmr_ACReplyAll: c_uint = 0x28A;
7054/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acforwardmessage?language=objc)
7055pub const kHIDUsage_Csmr_ACForwardMessage: c_uint = 0x28B;
7056/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsend?language=objc)
7057pub const kHIDUsage_Csmr_ACSend: c_uint = 0x28C;
7058/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acattachfile?language=objc)
7059pub const kHIDUsage_Csmr_ACAttachFile: c_uint = 0x28D;
7060/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acupload?language=objc)
7061pub const kHIDUsage_Csmr_ACUpload: c_uint = 0x28E;
7062/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acdownload?language=objc)
7063pub const kHIDUsage_Csmr_ACDownload: c_uint = 0x28F;
7064/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsetborders?language=objc)
7065pub const kHIDUsage_Csmr_ACSetBorders: c_uint = 0x290;
7066/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acinsertrow?language=objc)
7067pub const kHIDUsage_Csmr_ACInsertRow: c_uint = 0x291;
7068/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acinsertcolumn?language=objc)
7069pub const kHIDUsage_Csmr_ACInsertColumn: c_uint = 0x292;
7070/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acinsertfile?language=objc)
7071pub const kHIDUsage_Csmr_ACInsertFile: c_uint = 0x293;
7072/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acinsertpicture?language=objc)
7073pub const kHIDUsage_Csmr_ACInsertPicture: c_uint = 0x294;
7074/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acinsertobject?language=objc)
7075pub const kHIDUsage_Csmr_ACInsertObject: c_uint = 0x295;
7076/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acinsertsymbol?language=objc)
7077pub const kHIDUsage_Csmr_ACInsertSymbol: c_uint = 0x296;
7078/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsaveandclose?language=objc)
7079pub const kHIDUsage_Csmr_ACSaveAndClose: c_uint = 0x297;
7080/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acrename?language=objc)
7081pub const kHIDUsage_Csmr_ACRename: c_uint = 0x298;
7082/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acmerge?language=objc)
7083pub const kHIDUsage_Csmr_ACMerge: c_uint = 0x299;
7084/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsplit?language=objc)
7085pub const kHIDUsage_Csmr_ACSplit: c_uint = 0x29A;
7086/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acdistributeh?language=objc)
7087pub const kHIDUsage_Csmr_ACDistributeH: c_uint = 0x29B;
7088/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acdistributev?language=objc)
7089pub const kHIDUsage_Csmr_ACDistributeV: c_uint = 0x29C;
7090/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_ackeyboardlayoutselect?language=objc)
7091pub const kHIDUsage_Csmr_ACKeyboardLayoutSelect: c_uint = 0x29D;
7092/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acnavigationguidance?language=objc)
7093pub const kHIDUsage_Csmr_ACNavigationGuidance: c_uint = 0x29E;
7094/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acdesktopshowallwindows?language=objc)
7095pub const kHIDUsage_Csmr_ACDesktopShowAllWindows: c_uint = 0x29F;
7096/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsoftkeyleft?language=objc)
7097pub const kHIDUsage_Csmr_ACSoftKeyLeft: c_uint = 0x2A0;
7098/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acsoftkeyright?language=objc)
7099pub const kHIDUsage_Csmr_ACSoftKeyRight: c_uint = 0x2A1;
7100/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acdesktopshowallapplications?language=objc)
7101pub const kHIDUsage_Csmr_ACDesktopShowAllApplications: c_uint = 0x2A2;
7102/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_acidlekeepalive?language=objc)
7103pub const kHIDUsage_Csmr_ACIdleKeepAlive: c_uint = 0x2B0;
7104/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_extendedkeyboardattributescollection?language=objc)
7105pub const kHIDUsage_Csmr_ExtendedKeyboardAttributesCollection: c_uint = 0x2C0;
7106/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardformfactor?language=objc)
7107pub const kHIDUsage_Csmr_KeyboardFormFactor: c_uint = 0x2C1;
7108/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardkeytype?language=objc)
7109pub const kHIDUsage_Csmr_KeyboardKeyType: c_uint = 0x2C2;
7110/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardphysicallayout?language=objc)
7111pub const kHIDUsage_Csmr_KeyboardPhysicalLayout: c_uint = 0x2C3;
7112/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_vendorspecifickeyboardphysicallayout?language=objc)
7113pub const kHIDUsage_Csmr_VendorSpecificKeyboardPhysicalLayout: c_uint = 0x2C4;
7114/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardietflanguagetagindex?language=objc)
7115pub const kHIDUsage_Csmr_KeyboardIETFLanguageTagIndex: c_uint = 0x2C5;
7116/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_implementedkeyboardinputassistcontrols?language=objc)
7117pub const kHIDUsage_Csmr_ImplementedKeyboardInputAssistControls: c_uint = 0x2C6;
7118/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardinputassistprevious?language=objc)
7119pub const kHIDUsage_Csmr_KeyboardInputAssistPrevious: c_uint = 0x2C7;
7120/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardinputassistnext?language=objc)
7121pub const kHIDUsage_Csmr_KeyboardInputAssistNext: c_uint = 0x2C8;
7122/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardinputassistpreviousgroup?language=objc)
7123pub const kHIDUsage_Csmr_KeyboardInputAssistPreviousGroup: c_uint = 0x2C9;
7124/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardinputassistnextgroup?language=objc)
7125pub const kHIDUsage_Csmr_KeyboardInputAssistNextGroup: c_uint = 0x2CA;
7126/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardinputassistaccept?language=objc)
7127pub const kHIDUsage_Csmr_KeyboardInputAssistAccept: c_uint = 0x2CB;
7128/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_keyboardinputassistcancel?language=objc)
7129pub const kHIDUsage_Csmr_KeyboardInputAssistCancel: c_uint = 0x2CC;
7130/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactedited?language=objc)
7131pub const kHIDUsage_Csmr_ContactEdited: c_uint = 0x500;
7132/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactadded?language=objc)
7133pub const kHIDUsage_Csmr_ContactAdded: c_uint = 0x501;
7134/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactrecordactive?language=objc)
7135pub const kHIDUsage_Csmr_ContactRecordActive: c_uint = 0x502;
7136/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactindex?language=objc)
7137pub const kHIDUsage_Csmr_ContactIndex: c_uint = 0x503;
7138/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactnickname?language=objc)
7139pub const kHIDUsage_Csmr_ContactNickname: c_uint = 0x504;
7140/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactfirstname?language=objc)
7141pub const kHIDUsage_Csmr_ContactFirstName: c_uint = 0x505;
7142/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactlastname?language=objc)
7143pub const kHIDUsage_Csmr_ContactLastName: c_uint = 0x506;
7144/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactfullname?language=objc)
7145pub const kHIDUsage_Csmr_ContactFullName: c_uint = 0x507;
7146/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactphonenumberpersonal?language=objc)
7147pub const kHIDUsage_Csmr_ContactPhoneNumberPersonal: c_uint = 0x508;
7148/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactphonenumberbusiness?language=objc)
7149pub const kHIDUsage_Csmr_ContactPhoneNumberBusiness: c_uint = 0x509;
7150/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactphonenumbermobile?language=objc)
7151pub const kHIDUsage_Csmr_ContactPhoneNumberMobile: c_uint = 0x50A;
7152/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactphonenumberpager?language=objc)
7153pub const kHIDUsage_Csmr_ContactPhoneNumberPager: c_uint = 0x50B;
7154/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactphonenumberfax?language=objc)
7155pub const kHIDUsage_Csmr_ContactPhoneNumberFax: c_uint = 0x50C;
7156/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactphonenumberother?language=objc)
7157pub const kHIDUsage_Csmr_ContactPhoneNumberOther: c_uint = 0x50D;
7158/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactemailpersonal?language=objc)
7159pub const kHIDUsage_Csmr_ContactEmailPersonal: c_uint = 0x50E;
7160/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactemailbusiness?language=objc)
7161pub const kHIDUsage_Csmr_ContactEmailBusiness: c_uint = 0x50F;
7162/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactemailother?language=objc)
7163pub const kHIDUsage_Csmr_ContactEmailOther: c_uint = 0x510;
7164/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactemailmain?language=objc)
7165pub const kHIDUsage_Csmr_ContactEmailMain: c_uint = 0x511;
7166/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactspeeddialnumber?language=objc)
7167pub const kHIDUsage_Csmr_ContactSpeedDialNumber: c_uint = 0x512;
7168/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactstatusflag?language=objc)
7169pub const kHIDUsage_Csmr_ContactStatusFlag: c_uint = 0x513;
7170/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_contactmisc?language=objc)
7171pub const kHIDUsage_Csmr_ContactMisc: c_uint = 0x514;
7172/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_csmr_reserved?language=objc)
7173pub const kHIDUsage_Csmr_Reserved: c_uint = 0xFFFF;
7174
7175/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_digitizer?language=objc)
7176pub const kHIDUsage_Dig_Digitizer: c_uint = 0x01;
7177/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_pen?language=objc)
7178pub const kHIDUsage_Dig_Pen: c_uint = 0x02;
7179/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_lightpen?language=objc)
7180pub const kHIDUsage_Dig_LightPen: c_uint = 0x03;
7181/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_touchscreen?language=objc)
7182pub const kHIDUsage_Dig_TouchScreen: c_uint = 0x04;
7183/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_touchpad?language=objc)
7184pub const kHIDUsage_Dig_TouchPad: c_uint = 0x05;
7185/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_whiteboard?language=objc)
7186pub const kHIDUsage_Dig_WhiteBoard: c_uint = 0x06;
7187/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_coordinatemeasuringmachine?language=objc)
7188pub const kHIDUsage_Dig_CoordinateMeasuringMachine: c_uint = 0x07;
7189/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_3ddigitizer?language=objc)
7190pub const kHIDUsage_Dig_3DDigitizer: c_uint = 0x08;
7191/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_stereoplotter?language=objc)
7192pub const kHIDUsage_Dig_StereoPlotter: c_uint = 0x09;
7193/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_articulatedarm?language=objc)
7194pub const kHIDUsage_Dig_ArticulatedArm: c_uint = 0x0A;
7195/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_armature?language=objc)
7196pub const kHIDUsage_Dig_Armature: c_uint = 0x0B;
7197/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_multiplepointdigitizer?language=objc)
7198pub const kHIDUsage_Dig_MultiplePointDigitizer: c_uint = 0x0C;
7199/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_freespacewand?language=objc)
7200pub const kHIDUsage_Dig_FreeSpaceWand: c_uint = 0x0D;
7201/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_deviceconfiguration?language=objc)
7202pub const kHIDUsage_Dig_DeviceConfiguration: c_uint = 0x0E;
7203/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_capacitiveheatmapdigitizer?language=objc)
7204pub const kHIDUsage_Dig_CapacitiveHeatMapDigitizer: c_uint = 0x0F;
7205/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_stylus?language=objc)
7206pub const kHIDUsage_Dig_Stylus: c_uint = 0x20;
7207/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_puck?language=objc)
7208pub const kHIDUsage_Dig_Puck: c_uint = 0x21;
7209/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_finger?language=objc)
7210pub const kHIDUsage_Dig_Finger: c_uint = 0x22;
7211/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_devicesettings?language=objc)
7212pub const kHIDUsage_Dig_DeviceSettings: c_uint = 0x23;
7213/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacter?language=objc)
7214pub const kHIDUsage_Dig_GestureCharacter: c_uint = 0x24;
7215/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_tippressure?language=objc)
7216pub const kHIDUsage_Dig_TipPressure: c_uint = 0x30;
7217/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_barrelpressure?language=objc)
7218pub const kHIDUsage_Dig_BarrelPressure: c_uint = 0x31;
7219/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_inrange?language=objc)
7220pub const kHIDUsage_Dig_InRange: c_uint = 0x32;
7221/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_touch?language=objc)
7222pub const kHIDUsage_Dig_Touch: c_uint = 0x33;
7223/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_untouch?language=objc)
7224pub const kHIDUsage_Dig_Untouch: c_uint = 0x34;
7225/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_tap?language=objc)
7226pub const kHIDUsage_Dig_Tap: c_uint = 0x35;
7227/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_quality?language=objc)
7228pub const kHIDUsage_Dig_Quality: c_uint = 0x36;
7229/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_datavalid?language=objc)
7230pub const kHIDUsage_Dig_DataValid: c_uint = 0x37;
7231/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_transducerindex?language=objc)
7232pub const kHIDUsage_Dig_TransducerIndex: c_uint = 0x38;
7233/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_tabletfunctionkeys?language=objc)
7234pub const kHIDUsage_Dig_TabletFunctionKeys: c_uint = 0x39;
7235/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_programchangekeys?language=objc)
7236pub const kHIDUsage_Dig_ProgramChangeKeys: c_uint = 0x3A;
7237/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_batterystrength?language=objc)
7238pub const kHIDUsage_Dig_BatteryStrength: c_uint = 0x3B;
7239/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_invert?language=objc)
7240pub const kHIDUsage_Dig_Invert: c_uint = 0x3C;
7241/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_xtilt?language=objc)
7242pub const kHIDUsage_Dig_XTilt: c_uint = 0x3D;
7243/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_ytilt?language=objc)
7244pub const kHIDUsage_Dig_YTilt: c_uint = 0x3E;
7245/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_azimuth?language=objc)
7246pub const kHIDUsage_Dig_Azimuth: c_uint = 0x3F;
7247/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_altitude?language=objc)
7248pub const kHIDUsage_Dig_Altitude: c_uint = 0x40;
7249/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_twist?language=objc)
7250pub const kHIDUsage_Dig_Twist: c_uint = 0x41;
7251/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_tipswitch?language=objc)
7252pub const kHIDUsage_Dig_TipSwitch: c_uint = 0x42;
7253/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_secondarytipswitch?language=objc)
7254pub const kHIDUsage_Dig_SecondaryTipSwitch: c_uint = 0x43;
7255/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_barrelswitch?language=objc)
7256pub const kHIDUsage_Dig_BarrelSwitch: c_uint = 0x44;
7257/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_eraser?language=objc)
7258pub const kHIDUsage_Dig_Eraser: c_uint = 0x45;
7259/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_tabletpick?language=objc)
7260pub const kHIDUsage_Dig_TabletPick: c_uint = 0x46;
7261/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_touchvalid?language=objc)
7262pub const kHIDUsage_Dig_TouchValid: c_uint = 0x47;
7263/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_width?language=objc)
7264pub const kHIDUsage_Dig_Width: c_uint = 0x48;
7265/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_height?language=objc)
7266pub const kHIDUsage_Dig_Height: c_uint = 0x49;
7267/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_contactidentifier?language=objc)
7268pub const kHIDUsage_Dig_ContactIdentifier: c_uint = 0x51;
7269/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_devicemode?language=objc)
7270pub const kHIDUsage_Dig_DeviceMode: c_uint = 0x52;
7271/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_deviceidentifier?language=objc)
7272pub const kHIDUsage_Dig_DeviceIdentifier: c_uint = 0x53;
7273/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_contactcount?language=objc)
7274pub const kHIDUsage_Dig_ContactCount: c_uint = 0x54;
7275/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_contactcountmaximum?language=objc)
7276pub const kHIDUsage_Dig_ContactCountMaximum: c_uint = 0x55;
7277/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_relativescantime?language=objc)
7278pub const kHIDUsage_Dig_RelativeScanTime: c_uint = 0x56;
7279/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_surfaceswitch?language=objc)
7280pub const kHIDUsage_Dig_SurfaceSwitch: c_uint = 0x57;
7281/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterenable?language=objc)
7282pub const kHIDUsage_Dig_GestureCharacterEnable: c_uint = 0x60;
7283/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterquality?language=objc)
7284pub const kHIDUsage_Dig_GestureCharacterQuality: c_uint = 0x61;
7285/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterdatalength?language=objc)
7286pub const kHIDUsage_Dig_GestureCharacterDataLength: c_uint = 0x62;
7287/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterdata?language=objc)
7288pub const kHIDUsage_Dig_GestureCharacterData: c_uint = 0x63;
7289/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterencoding?language=objc)
7290pub const kHIDUsage_Dig_GestureCharacterEncoding: c_uint = 0x64;
7291/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterencodingutf8?language=objc)
7292pub const kHIDUsage_Dig_GestureCharacterEncodingUTF8: c_uint = 0x65;
7293/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterencodingutf16le?language=objc)
7294pub const kHIDUsage_Dig_GestureCharacterEncodingUTF16LE: c_uint = 0x66;
7295/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterencodingutf16be?language=objc)
7296pub const kHIDUsage_Dig_GestureCharacterEncodingUTF16BE: c_uint = 0x67;
7297/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterencodingutf32le?language=objc)
7298pub const kHIDUsage_Dig_GestureCharacterEncodingUTF32LE: c_uint = 0x68;
7299/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_gesturecharacterencodingutf32be?language=objc)
7300pub const kHIDUsage_Dig_GestureCharacterEncodingUTF32BE: c_uint = 0x69;
7301/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_capacitiveheatmapprotocolvendorid?language=objc)
7302pub const kHIDUsage_Dig_CapacitiveHeatMapProtocolVendorID: c_uint = 0x6A;
7303/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_capacitiveheatmapprotocolversion?language=objc)
7304pub const kHIDUsage_Dig_CapacitiveHeatMapProtocolVersion: c_uint = 0x6B;
7305/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_capacitiveheatmapframedata?language=objc)
7306pub const kHIDUsage_Dig_CapacitiveHeatMapFrameData: c_uint = 0x6C;
7307/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_reportrate?language=objc)
7308pub const kHIDUsage_Dig_ReportRate: c_uint = 0xA1;
7309/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_dig_reserved?language=objc)
7310pub const kHIDUsage_Dig_Reserved: c_uint = 0xFFFF;
7311
7312/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_simplehapticcontroller?language=objc)
7313pub const kHIDUsage_Haptics_SimpleHapticController: c_uint = 0x0001;
7314/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformlist?language=objc)
7315pub const kHIDUsage_Haptics_WaveformList: c_uint = 0x0010;
7316/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_durationlist?language=objc)
7317pub const kHIDUsage_Haptics_DurationList: c_uint = 0x0011;
7318/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_autotrigger?language=objc)
7319pub const kHIDUsage_Haptics_AutoTrigger: c_uint = 0x0020;
7320/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_manualtrigger?language=objc)
7321pub const kHIDUsage_Haptics_ManualTrigger: c_uint = 0x0021;
7322/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_autotriggerassociatedcontrol?language=objc)
7323pub const kHIDUsage_Haptics_AutoTriggerAssociatedControl: c_uint = 0x0022;
7324/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_intensity?language=objc)
7325pub const kHIDUsage_Haptics_Intensity: c_uint = 0x0023;
7326/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_repeatcount?language=objc)
7327pub const kHIDUsage_Haptics_RepeatCount: c_uint = 0x0024;
7328/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_retriggerperiod?language=objc)
7329pub const kHIDUsage_Haptics_RetriggerPeriod: c_uint = 0x0025;
7330/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformvendorpage?language=objc)
7331pub const kHIDUsage_Haptics_WaveformVendorPage: c_uint = 0x0026;
7332/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformvendorid?language=objc)
7333pub const kHIDUsage_Haptics_WaveformVendorID: c_uint = 0x0027;
7334/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformcutofftime?language=objc)
7335pub const kHIDUsage_Haptics_WaveformCutoffTime: c_uint = 0x0028;
7336/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformnone?language=objc)
7337pub const kHIDUsage_Haptics_WaveformNone: c_uint = 0x1001;
7338/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformstop?language=objc)
7339pub const kHIDUsage_Haptics_WaveformStop: c_uint = 0x1002;
7340/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformclick?language=objc)
7341pub const kHIDUsage_Haptics_WaveformClick: c_uint = 0x1003;
7342/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformbuzzcontinuous?language=objc)
7343pub const kHIDUsage_Haptics_WaveformBuzzContinuous: c_uint = 0x1004;
7344/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformrumblecontinuous?language=objc)
7345pub const kHIDUsage_Haptics_WaveformRumbleContinuous: c_uint = 0x1005;
7346/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformpress?language=objc)
7347pub const kHIDUsage_Haptics_WaveformPress: c_uint = 0x1006;
7348/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_waveformrelease?language=objc)
7349pub const kHIDUsage_Haptics_WaveformRelease: c_uint = 0x1007;
7350/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_vendorwaveformfirst?language=objc)
7351pub const kHIDUsage_Haptics_VendorWaveformFirst: c_uint = 0x2001;
7352/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_haptics_vendorwaveformlast?language=objc)
7353pub const kHIDUsage_Haptics_VendorWaveformLast: c_uint = 0x2FFF;
7354
7355/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_physicalinterfacedevice?language=objc)
7356pub const kHIDUsage_PID_PhysicalInterfaceDevice: c_uint = 0x01;
7357/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_normal?language=objc)
7358pub const kHIDUsage_PID_Normal: c_uint = 0x20;
7359/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_seteffectreport?language=objc)
7360pub const kHIDUsage_PID_SetEffectReport: c_uint = 0x21;
7361/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_effectblockindex?language=objc)
7362pub const kHIDUsage_PID_EffectBlockIndex: c_uint = 0x22;
7363/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_paramblockoffset?language=objc)
7364pub const kHIDUsage_PID_ParamBlockOffset: c_uint = 0x23;
7365/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_rom_flag?language=objc)
7366pub const kHIDUsage_PID_ROM_Flag: c_uint = 0x24;
7367/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_effecttype?language=objc)
7368pub const kHIDUsage_PID_EffectType: c_uint = 0x25;
7369/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_constantforce?language=objc)
7370pub const kHIDUsage_PID_ET_ConstantForce: c_uint = 0x26;
7371/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_ramp?language=objc)
7372pub const kHIDUsage_PID_ET_Ramp: c_uint = 0x27;
7373/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_customforcedata?language=objc)
7374pub const kHIDUsage_PID_ET_CustomForceData: c_uint = 0x28;
7375/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_square?language=objc)
7376pub const kHIDUsage_PID_ET_Square: c_uint = 0x30;
7377/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_sine?language=objc)
7378pub const kHIDUsage_PID_ET_Sine: c_uint = 0x31;
7379/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_triangle?language=objc)
7380pub const kHIDUsage_PID_ET_Triangle: c_uint = 0x32;
7381/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_sawtoothup?language=objc)
7382pub const kHIDUsage_PID_ET_SawtoothUp: c_uint = 0x33;
7383/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_sawtoothdown?language=objc)
7384pub const kHIDUsage_PID_ET_SawtoothDown: c_uint = 0x34;
7385/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_spring?language=objc)
7386pub const kHIDUsage_PID_ET_Spring: c_uint = 0x40;
7387/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_damper?language=objc)
7388pub const kHIDUsage_PID_ET_Damper: c_uint = 0x41;
7389/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_inertia?language=objc)
7390pub const kHIDUsage_PID_ET_Inertia: c_uint = 0x42;
7391/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_et_friction?language=objc)
7392pub const kHIDUsage_PID_ET_Friction: c_uint = 0x43;
7393/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_duration?language=objc)
7394pub const kHIDUsage_PID_Duration: c_uint = 0x50;
7395/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_sampleperiod?language=objc)
7396pub const kHIDUsage_PID_SamplePeriod: c_uint = 0x51;
7397/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_gain?language=objc)
7398pub const kHIDUsage_PID_Gain: c_uint = 0x52;
7399/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_triggerbutton?language=objc)
7400pub const kHIDUsage_PID_TriggerButton: c_uint = 0x53;
7401/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_triggerrepeatinterval?language=objc)
7402pub const kHIDUsage_PID_TriggerRepeatInterval: c_uint = 0x54;
7403/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_axesenable?language=objc)
7404pub const kHIDUsage_PID_AxesEnable: c_uint = 0x55;
7405/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_directionenable?language=objc)
7406pub const kHIDUsage_PID_DirectionEnable: c_uint = 0x56;
7407/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_direction?language=objc)
7408pub const kHIDUsage_PID_Direction: c_uint = 0x57;
7409/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_typespecificblockoffset?language=objc)
7410pub const kHIDUsage_PID_TypeSpecificBlockOffset: c_uint = 0x58;
7411/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_blocktype?language=objc)
7412pub const kHIDUsage_PID_BlockType: c_uint = 0x59;
7413/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_setenvelopereport?language=objc)
7414pub const kHIDUsage_PID_SetEnvelopeReport: c_uint = 0x5A;
7415/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_attacklevel?language=objc)
7416pub const kHIDUsage_PID_AttackLevel: c_uint = 0x5B;
7417/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_attacktime?language=objc)
7418pub const kHIDUsage_PID_AttackTime: c_uint = 0x5C;
7419/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_fadelevel?language=objc)
7420pub const kHIDUsage_PID_FadeLevel: c_uint = 0x5D;
7421/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_fadetime?language=objc)
7422pub const kHIDUsage_PID_FadeTime: c_uint = 0x5E;
7423/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_setconditionreport?language=objc)
7424pub const kHIDUsage_PID_SetConditionReport: c_uint = 0x5F;
7425/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_cp_offset?language=objc)
7426pub const kHIDUsage_PID_CP_Offset: c_uint = 0x60;
7427/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_positivecoefficient?language=objc)
7428pub const kHIDUsage_PID_PositiveCoefficient: c_uint = 0x61;
7429/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_negativecoefficient?language=objc)
7430pub const kHIDUsage_PID_NegativeCoefficient: c_uint = 0x62;
7431/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_positivesaturation?language=objc)
7432pub const kHIDUsage_PID_PositiveSaturation: c_uint = 0x63;
7433/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_negativesaturation?language=objc)
7434pub const kHIDUsage_PID_NegativeSaturation: c_uint = 0x64;
7435/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_deadband?language=objc)
7436pub const kHIDUsage_PID_DeadBand: c_uint = 0x65;
7437/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_downloadforcesample?language=objc)
7438pub const kHIDUsage_PID_DownloadForceSample: c_uint = 0x66;
7439/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_isochcustomforceenable?language=objc)
7440pub const kHIDUsage_PID_IsochCustomForceEnable: c_uint = 0x67;
7441/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_customforcedatareport?language=objc)
7442pub const kHIDUsage_PID_CustomForceDataReport: c_uint = 0x68;
7443/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_customforcedata?language=objc)
7444pub const kHIDUsage_PID_CustomForceData: c_uint = 0x69;
7445/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_customforcevendordefineddata?language=objc)
7446pub const kHIDUsage_PID_CustomForceVendorDefinedData: c_uint = 0x6A;
7447/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_setcustomforcereport?language=objc)
7448pub const kHIDUsage_PID_SetCustomForceReport: c_uint = 0x6B;
7449/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_customforcedataoffset?language=objc)
7450pub const kHIDUsage_PID_CustomForceDataOffset: c_uint = 0x6C;
7451/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_samplecount?language=objc)
7452pub const kHIDUsage_PID_SampleCount: c_uint = 0x6D;
7453/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_setperiodicreport?language=objc)
7454pub const kHIDUsage_PID_SetPeriodicReport: c_uint = 0x6E;
7455/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_offset?language=objc)
7456pub const kHIDUsage_PID_Offset: c_uint = 0x6F;
7457/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_magnitude?language=objc)
7458pub const kHIDUsage_PID_Magnitude: c_uint = 0x70;
7459/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_phase?language=objc)
7460pub const kHIDUsage_PID_Phase: c_uint = 0x71;
7461/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_period?language=objc)
7462pub const kHIDUsage_PID_Period: c_uint = 0x72;
7463/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_setconstantforcereport?language=objc)
7464pub const kHIDUsage_PID_SetConstantForceReport: c_uint = 0x73;
7465/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_setrampforcereport?language=objc)
7466pub const kHIDUsage_PID_SetRampForceReport: c_uint = 0x74;
7467/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_rampstart?language=objc)
7468pub const kHIDUsage_PID_RampStart: c_uint = 0x75;
7469/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_rampend?language=objc)
7470pub const kHIDUsage_PID_RampEnd: c_uint = 0x76;
7471/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_effectoperationreport?language=objc)
7472pub const kHIDUsage_PID_EffectOperationReport: c_uint = 0x77;
7473/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_effectoperation?language=objc)
7474pub const kHIDUsage_PID_EffectOperation: c_uint = 0x78;
7475/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_opeffectstart?language=objc)
7476pub const kHIDUsage_PID_OpEffectStart: c_uint = 0x79;
7477/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_opeffectstartsolo?language=objc)
7478pub const kHIDUsage_PID_OpEffectStartSolo: c_uint = 0x7A;
7479/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_opeffectstop?language=objc)
7480pub const kHIDUsage_PID_OpEffectStop: c_uint = 0x7B;
7481/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_loopcount?language=objc)
7482pub const kHIDUsage_PID_LoopCount: c_uint = 0x7C;
7483/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_devicegainreport?language=objc)
7484pub const kHIDUsage_PID_DeviceGainReport: c_uint = 0x7D;
7485/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_devicegain?language=objc)
7486pub const kHIDUsage_PID_DeviceGain: c_uint = 0x7E;
7487/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_poolreport?language=objc)
7488pub const kHIDUsage_PID_PoolReport: c_uint = 0x7F;
7489/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_ram_poolsize?language=objc)
7490pub const kHIDUsage_PID_RAM_PoolSize: c_uint = 0x80;
7491/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_rom_poolsize?language=objc)
7492pub const kHIDUsage_PID_ROM_PoolSize: c_uint = 0x81;
7493/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_rom_effectblockcount?language=objc)
7494pub const kHIDUsage_PID_ROM_EffectBlockCount: c_uint = 0x82;
7495/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_simultaneouseffectsmax?language=objc)
7496pub const kHIDUsage_PID_SimultaneousEffectsMax: c_uint = 0x83;
7497/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_poolalignment?language=objc)
7498pub const kHIDUsage_PID_PoolAlignment: c_uint = 0x84;
7499/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_poolmovereport?language=objc)
7500pub const kHIDUsage_PID_PoolMoveReport: c_uint = 0x85;
7501/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_movesource?language=objc)
7502pub const kHIDUsage_PID_MoveSource: c_uint = 0x86;
7503/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_movedestination?language=objc)
7504pub const kHIDUsage_PID_MoveDestination: c_uint = 0x87;
7505/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_movelength?language=objc)
7506pub const kHIDUsage_PID_MoveLength: c_uint = 0x88;
7507/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_blockloadreport?language=objc)
7508pub const kHIDUsage_PID_BlockLoadReport: c_uint = 0x89;
7509/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_blockloadstatus?language=objc)
7510pub const kHIDUsage_PID_BlockLoadStatus: c_uint = 0x8B;
7511/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_blockloadsuccess?language=objc)
7512pub const kHIDUsage_PID_BlockLoadSuccess: c_uint = 0x8C;
7513/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_blockloadfull?language=objc)
7514pub const kHIDUsage_PID_BlockLoadFull: c_uint = 0x8D;
7515/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_blockloaderror?language=objc)
7516pub const kHIDUsage_PID_BlockLoadError: c_uint = 0x8E;
7517/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_blockhandle?language=objc)
7518pub const kHIDUsage_PID_BlockHandle: c_uint = 0x8F;
7519/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_blockfreereport?language=objc)
7520pub const kHIDUsage_PID_BlockFreeReport: c_uint = 0x90;
7521/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_typespecificblockhandle?language=objc)
7522pub const kHIDUsage_PID_TypeSpecificBlockHandle: c_uint = 0x91;
7523/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_statereport?language=objc)
7524pub const kHIDUsage_PID_StateReport: c_uint = 0x92;
7525/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_effectplaying?language=objc)
7526pub const kHIDUsage_PID_EffectPlaying: c_uint = 0x94;
7527/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_devicecontrolreport?language=objc)
7528pub const kHIDUsage_PID_DeviceControlReport: c_uint = 0x95;
7529/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_devicecontrol?language=objc)
7530pub const kHIDUsage_PID_DeviceControl: c_uint = 0x96;
7531/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_dc_enableactuators?language=objc)
7532pub const kHIDUsage_PID_DC_EnableActuators: c_uint = 0x97;
7533/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_dc_disableactuators?language=objc)
7534pub const kHIDUsage_PID_DC_DisableActuators: c_uint = 0x98;
7535/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_dc_stopalleffects?language=objc)
7536pub const kHIDUsage_PID_DC_StopAllEffects: c_uint = 0x99;
7537/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_dc_devicereset?language=objc)
7538pub const kHIDUsage_PID_DC_DeviceReset: c_uint = 0x9A;
7539/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_dc_devicepause?language=objc)
7540pub const kHIDUsage_PID_DC_DevicePause: c_uint = 0x9B;
7541/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_dc_devicecontinue?language=objc)
7542pub const kHIDUsage_PID_DC_DeviceContinue: c_uint = 0x9C;
7543/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_devicepaused?language=objc)
7544pub const kHIDUsage_PID_DevicePaused: c_uint = 0x9F;
7545/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_actuatorsenabled?language=objc)
7546pub const kHIDUsage_PID_ActuatorsEnabled: c_uint = 0xA0;
7547/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_safetyswitch?language=objc)
7548pub const kHIDUsage_PID_SafetySwitch: c_uint = 0xA4;
7549/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_actuatoroverrideswitch?language=objc)
7550pub const kHIDUsage_PID_ActuatorOverrideSwitch: c_uint = 0xA5;
7551/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_actuatorpower?language=objc)
7552pub const kHIDUsage_PID_ActuatorPower: c_uint = 0xA6;
7553/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_startdelay?language=objc)
7554pub const kHIDUsage_PID_StartDelay: c_uint = 0xA7;
7555/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_parameterblocksize?language=objc)
7556pub const kHIDUsage_PID_ParameterBlockSize: c_uint = 0xA8;
7557/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_devicemanagedpool?language=objc)
7558pub const kHIDUsage_PID_DeviceManagedPool: c_uint = 0xA9;
7559/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_sharedparameterblocks?language=objc)
7560pub const kHIDUsage_PID_SharedParameterBlocks: c_uint = 0xAA;
7561/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_createneweffectreport?language=objc)
7562pub const kHIDUsage_PID_CreateNewEffectReport: c_uint = 0xAB;
7563/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_ram_poolavailable?language=objc)
7564pub const kHIDUsage_PID_RAM_PoolAvailable: c_uint = 0xAC;
7565/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pid_reserved?language=objc)
7566pub const kHIDUsage_PID_Reserved: c_uint = 0xFFFF;
7567
7568/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_alphanumericdisplay?language=objc)
7569pub const kHIDUsage_AD_AlphanumericDisplay: c_uint = 0x01;
7570/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_displayattributesreport?language=objc)
7571pub const kHIDUsage_AD_DisplayAttributesReport: c_uint = 0x20;
7572/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_asciicharacterset?language=objc)
7573pub const kHIDUsage_AD_ASCIICharacterSet: c_uint = 0x21;
7574/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_datareadback?language=objc)
7575pub const kHIDUsage_AD_DataReadBack: c_uint = 0x22;
7576/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_fontreadback?language=objc)
7577pub const kHIDUsage_AD_FontReadBack: c_uint = 0x23;
7578/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_displaycontrolreport?language=objc)
7579pub const kHIDUsage_AD_DisplayControlReport: c_uint = 0x24;
7580/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_cleardisplay?language=objc)
7581pub const kHIDUsage_AD_ClearDisplay: c_uint = 0x25;
7582/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_displayenable?language=objc)
7583pub const kHIDUsage_AD_DisplayEnable: c_uint = 0x26;
7584/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_screensaverdelay?language=objc)
7585pub const kHIDUsage_AD_ScreenSaverDelay: c_uint = 0x27;
7586/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_screensaverenable?language=objc)
7587pub const kHIDUsage_AD_ScreenSaverEnable: c_uint = 0x28;
7588/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_verticalscroll?language=objc)
7589pub const kHIDUsage_AD_VerticalScroll: c_uint = 0x29;
7590/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_horizontalscroll?language=objc)
7591pub const kHIDUsage_AD_HorizontalScroll: c_uint = 0x2A;
7592/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_characterreport?language=objc)
7593pub const kHIDUsage_AD_CharacterReport: c_uint = 0x2B;
7594/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_displaydata?language=objc)
7595pub const kHIDUsage_AD_DisplayData: c_uint = 0x2C;
7596/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_displaystatus?language=objc)
7597pub const kHIDUsage_AD_DisplayStatus: c_uint = 0x2D;
7598/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_statnotready?language=objc)
7599pub const kHIDUsage_AD_StatNotReady: c_uint = 0x2E;
7600/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_statready?language=objc)
7601pub const kHIDUsage_AD_StatReady: c_uint = 0x2F;
7602/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_errnotaloadablecharacter?language=objc)
7603pub const kHIDUsage_AD_ErrNotaloadablecharacter: c_uint = 0x30;
7604/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_errfontdatacannotberead?language=objc)
7605pub const kHIDUsage_AD_ErrFontdatacannotberead: c_uint = 0x31;
7606/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_cursorpositionreport?language=objc)
7607pub const kHIDUsage_AD_CursorPositionReport: c_uint = 0x32;
7608/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_row?language=objc)
7609pub const kHIDUsage_AD_Row: c_uint = 0x33;
7610/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_column?language=objc)
7611pub const kHIDUsage_AD_Column: c_uint = 0x34;
7612/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_rows?language=objc)
7613pub const kHIDUsage_AD_Rows: c_uint = 0x35;
7614/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_columns?language=objc)
7615pub const kHIDUsage_AD_Columns: c_uint = 0x36;
7616/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_cursorpixelpositioning?language=objc)
7617pub const kHIDUsage_AD_CursorPixelPositioning: c_uint = 0x37;
7618/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_cursormode?language=objc)
7619pub const kHIDUsage_AD_CursorMode: c_uint = 0x38;
7620/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_cursorenable?language=objc)
7621pub const kHIDUsage_AD_CursorEnable: c_uint = 0x39;
7622/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_cursorblink?language=objc)
7623pub const kHIDUsage_AD_CursorBlink: c_uint = 0x3A;
7624/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_fontreport?language=objc)
7625pub const kHIDUsage_AD_FontReport: c_uint = 0x3B;
7626/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_fontdata?language=objc)
7627pub const kHIDUsage_AD_FontData: c_uint = 0x3C;
7628/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_characterwidth?language=objc)
7629pub const kHIDUsage_AD_CharacterWidth: c_uint = 0x3D;
7630/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_characterheight?language=objc)
7631pub const kHIDUsage_AD_CharacterHeight: c_uint = 0x3E;
7632/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_characterspacinghorizontal?language=objc)
7633pub const kHIDUsage_AD_CharacterSpacingHorizontal: c_uint = 0x3F;
7634/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_characterspacingvertical?language=objc)
7635pub const kHIDUsage_AD_CharacterSpacingVertical: c_uint = 0x40;
7636/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_unicodecharacterset?language=objc)
7637pub const kHIDUsage_AD_UnicodeCharacterSet: c_uint = 0x41;
7638/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_ad_reserved?language=objc)
7639pub const kHIDUsage_AD_Reserved: c_uint = 0xFFFF;
7640
7641/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_undefined?language=objc)
7642pub const kHIDUsage_Snsr_Undefined: c_uint = 0x00;
7643/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_sensor?language=objc)
7644pub const kHIDUsage_Snsr_Sensor: c_uint = 0x01;
7645/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_biometric?language=objc)
7646pub const kHIDUsage_Snsr_Biometric: c_uint = 0x10;
7647/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_biometric_humanpresence?language=objc)
7648pub const kHIDUsage_Snsr_Biometric_HumanPresence: c_uint = 0x11;
7649/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_biometric_humanproximity?language=objc)
7650pub const kHIDUsage_Snsr_Biometric_HumanProximity: c_uint = 0x12;
7651/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_biometric_humantouch?language=objc)
7652pub const kHIDUsage_Snsr_Biometric_HumanTouch: c_uint = 0x13;
7653/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical?language=objc)
7654pub const kHIDUsage_Snsr_Electrical: c_uint = 0x20;
7655/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical_capacitance?language=objc)
7656pub const kHIDUsage_Snsr_Electrical_Capacitance: c_uint = 0x21;
7657/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical_current?language=objc)
7658pub const kHIDUsage_Snsr_Electrical_Current: c_uint = 0x22;
7659/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical_power?language=objc)
7660pub const kHIDUsage_Snsr_Electrical_Power: c_uint = 0x23;
7661/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical_inductance?language=objc)
7662pub const kHIDUsage_Snsr_Electrical_Inductance: c_uint = 0x24;
7663/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical_resistance?language=objc)
7664pub const kHIDUsage_Snsr_Electrical_Resistance: c_uint = 0x25;
7665/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical_voltage?language=objc)
7666pub const kHIDUsage_Snsr_Electrical_Voltage: c_uint = 0x26;
7667/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical_potentiometer?language=objc)
7668pub const kHIDUsage_Snsr_Electrical_Potentiometer: c_uint = 0x27;
7669/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical_frequency?language=objc)
7670pub const kHIDUsage_Snsr_Electrical_Frequency: c_uint = 0x28;
7671/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_electrical_period?language=objc)
7672pub const kHIDUsage_Snsr_Electrical_Period: c_uint = 0x29;
7673/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_environmental?language=objc)
7674pub const kHIDUsage_Snsr_Environmental: c_uint = 0x30;
7675/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_environmental_atmosphericpressure?language=objc)
7676pub const kHIDUsage_Snsr_Environmental_AtmosphericPressure: c_uint = 0x31;
7677/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_environmental_humidity?language=objc)
7678pub const kHIDUsage_Snsr_Environmental_Humidity: c_uint = 0x32;
7679/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_environmental_temperature?language=objc)
7680pub const kHIDUsage_Snsr_Environmental_Temperature: c_uint = 0x33;
7681/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_environmental_winddirection?language=objc)
7682pub const kHIDUsage_Snsr_Environmental_WindDirection: c_uint = 0x34;
7683/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_environmental_windspeed?language=objc)
7684pub const kHIDUsage_Snsr_Environmental_WindSpeed: c_uint = 0x35;
7685/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_light?language=objc)
7686pub const kHIDUsage_Snsr_Light: c_uint = 0x40;
7687/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_light_ambientlight?language=objc)
7688pub const kHIDUsage_Snsr_Light_AmbientLight: c_uint = 0x41;
7689/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_light_consumerinfrared?language=objc)
7690pub const kHIDUsage_Snsr_Light_ConsumerInfrared: c_uint = 0x42;
7691/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_location?language=objc)
7692pub const kHIDUsage_Snsr_Location: c_uint = 0x50;
7693/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_location_broadcast?language=objc)
7694pub const kHIDUsage_Snsr_Location_Broadcast: c_uint = 0x51;
7695/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_location_deadreckoning?language=objc)
7696pub const kHIDUsage_Snsr_Location_DeadReckoning: c_uint = 0x52;
7697/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_location_gps?language=objc)
7698pub const kHIDUsage_Snsr_Location_GPS: c_uint = 0x53;
7699/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_location_lookup?language=objc)
7700pub const kHIDUsage_Snsr_Location_Lookup: c_uint = 0x54;
7701/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_location_other?language=objc)
7702pub const kHIDUsage_Snsr_Location_Other: c_uint = 0x55;
7703/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_location_static?language=objc)
7704pub const kHIDUsage_Snsr_Location_Static: c_uint = 0x56;
7705/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_location_triangulation?language=objc)
7706pub const kHIDUsage_Snsr_Location_Triangulation: c_uint = 0x57;
7707/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical?language=objc)
7708pub const kHIDUsage_Snsr_Mechanical: c_uint = 0x60;
7709/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical_booleanswitch?language=objc)
7710pub const kHIDUsage_Snsr_Mechanical_BooleanSwitch: c_uint = 0x61;
7711/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical_booleanswitcharray?language=objc)
7712pub const kHIDUsage_Snsr_Mechanical_BooleanSwitchArray: c_uint = 0x62;
7713/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical_multivalueswitch?language=objc)
7714pub const kHIDUsage_Snsr_Mechanical_MultivalueSwitch: c_uint = 0x63;
7715/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical_force?language=objc)
7716pub const kHIDUsage_Snsr_Mechanical_Force: c_uint = 0x64;
7717/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical_pressure?language=objc)
7718pub const kHIDUsage_Snsr_Mechanical_Pressure: c_uint = 0x65;
7719/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical_strain?language=objc)
7720pub const kHIDUsage_Snsr_Mechanical_Strain: c_uint = 0x66;
7721/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical_weight?language=objc)
7722pub const kHIDUsage_Snsr_Mechanical_Weight: c_uint = 0x67;
7723/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical_hapticvibrator?language=objc)
7724pub const kHIDUsage_Snsr_Mechanical_HapticVibrator: c_uint = 0x68;
7725/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_mechanical_halleffectswitch?language=objc)
7726pub const kHIDUsage_Snsr_Mechanical_HallEffectSwitch: c_uint = 0x69;
7727/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion?language=objc)
7728pub const kHIDUsage_Snsr_Motion: c_uint = 0x70;
7729/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_accelerometer1d?language=objc)
7730pub const kHIDUsage_Snsr_Motion_Accelerometer1D: c_uint = 0x71;
7731/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_accelerometer2d?language=objc)
7732pub const kHIDUsage_Snsr_Motion_Accelerometer2D: c_uint = 0x72;
7733/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_accelerometer3d?language=objc)
7734pub const kHIDUsage_Snsr_Motion_Accelerometer3D: c_uint = 0x73;
7735/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_gyrometer1d?language=objc)
7736pub const kHIDUsage_Snsr_Motion_Gyrometer1D: c_uint = 0x74;
7737/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_gyrometer2d?language=objc)
7738pub const kHIDUsage_Snsr_Motion_Gyrometer2D: c_uint = 0x75;
7739/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_gyrometer3d?language=objc)
7740pub const kHIDUsage_Snsr_Motion_Gyrometer3D: c_uint = 0x76;
7741/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_motiondetector?language=objc)
7742pub const kHIDUsage_Snsr_Motion_MotionDetector: c_uint = 0x77;
7743/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_speedometer?language=objc)
7744pub const kHIDUsage_Snsr_Motion_Speedometer: c_uint = 0x78;
7745/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_accelerometer?language=objc)
7746pub const kHIDUsage_Snsr_Motion_Accelerometer: c_uint = 0x79;
7747/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_motion_gyrometer?language=objc)
7748pub const kHIDUsage_Snsr_Motion_Gyrometer: c_uint = 0x7A;
7749/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation?language=objc)
7750pub const kHIDUsage_Snsr_Orientation: c_uint = 0x80;
7751/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_compass1d?language=objc)
7752pub const kHIDUsage_Snsr_Orientation_Compass1D: c_uint = 0x81;
7753/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_compass2d?language=objc)
7754pub const kHIDUsage_Snsr_Orientation_Compass2D: c_uint = 0x82;
7755/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_compass3d?language=objc)
7756pub const kHIDUsage_Snsr_Orientation_Compass3D: c_uint = 0x83;
7757/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_inclinometer1d?language=objc)
7758pub const kHIDUsage_Snsr_Orientation_Inclinometer1D: c_uint = 0x84;
7759/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_inclinometer2d?language=objc)
7760pub const kHIDUsage_Snsr_Orientation_Inclinometer2D: c_uint = 0x85;
7761/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_inclinometer3d?language=objc)
7762pub const kHIDUsage_Snsr_Orientation_Inclinometer3D: c_uint = 0x86;
7763/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_distance1d?language=objc)
7764pub const kHIDUsage_Snsr_Orientation_Distance1D: c_uint = 0x87;
7765/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_distance2d?language=objc)
7766pub const kHIDUsage_Snsr_Orientation_Distance2D: c_uint = 0x88;
7767/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_distance3d?language=objc)
7768pub const kHIDUsage_Snsr_Orientation_Distance3D: c_uint = 0x89;
7769/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_deviceorientation?language=objc)
7770pub const kHIDUsage_Snsr_Orientation_DeviceOrientation: c_uint = 0x8A;
7771/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_compassd?language=objc)
7772pub const kHIDUsage_Snsr_Orientation_CompassD: c_uint = 0x8B;
7773/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_inclinometerd?language=objc)
7774pub const kHIDUsage_Snsr_Orientation_InclinometerD: c_uint = 0x8C;
7775/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_orientation_distanced?language=objc)
7776pub const kHIDUsage_Snsr_Orientation_DistanceD: c_uint = 0x8D;
7777/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_scanner?language=objc)
7778pub const kHIDUsage_Snsr_Scanner: c_uint = 0x90;
7779/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_scanner_barcode?language=objc)
7780pub const kHIDUsage_Snsr_Scanner_Barcode: c_uint = 0x91;
7781/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_scanner_rfid?language=objc)
7782pub const kHIDUsage_Snsr_Scanner_RFID: c_uint = 0x92;
7783/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_scanner_nfc?language=objc)
7784pub const kHIDUsage_Snsr_Scanner_NFC: c_uint = 0x93;
7785/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_time?language=objc)
7786pub const kHIDUsage_Snsr_Time: c_uint = 0xA0;
7787/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_time_alarmtimer?language=objc)
7788pub const kHIDUsage_Snsr_Time_AlarmTimer: c_uint = 0xA1;
7789/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_time_realtimeclock?language=objc)
7790pub const kHIDUsage_Snsr_Time_RealTimeClock: c_uint = 0xA2;
7791/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_other?language=objc)
7792pub const kHIDUsage_Snsr_Other: c_uint = 0xE0;
7793/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_other_custom?language=objc)
7794pub const kHIDUsage_Snsr_Other_Custom: c_uint = 0xE1;
7795/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_other_generic?language=objc)
7796pub const kHIDUsage_Snsr_Other_Generic: c_uint = 0xE2;
7797/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_other_genericenumerator?language=objc)
7798pub const kHIDUsage_Snsr_Other_GenericEnumerator: c_uint = 0xE3;
7799/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_none?language=objc)
7800pub const kHIDUsage_Snsr_Modifier_None: c_uint = 0x0;
7801/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_changesensitivityabsolute?language=objc)
7802pub const kHIDUsage_Snsr_Modifier_ChangeSensitivityAbsolute: c_uint = 0x1;
7803/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_max?language=objc)
7804pub const kHIDUsage_Snsr_Modifier_Max: c_uint = 0x2;
7805/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_min?language=objc)
7806pub const kHIDUsage_Snsr_Modifier_Min: c_uint = 0x3;
7807/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_accuracy?language=objc)
7808pub const kHIDUsage_Snsr_Modifier_Accuracy: c_uint = 0x4;
7809/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_resolution?language=objc)
7810pub const kHIDUsage_Snsr_Modifier_Resolution: c_uint = 0x5;
7811/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_thresholdhigh?language=objc)
7812pub const kHIDUsage_Snsr_Modifier_ThresholdHigh: c_uint = 0x6;
7813/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_thresholdlow?language=objc)
7814pub const kHIDUsage_Snsr_Modifier_ThresholdLow: c_uint = 0x7;
7815/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_calibrationoffset?language=objc)
7816pub const kHIDUsage_Snsr_Modifier_CalibrationOffset: c_uint = 0x8;
7817/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_calibrationmultiplier?language=objc)
7818pub const kHIDUsage_Snsr_Modifier_CalibrationMultiplier: c_uint = 0x9;
7819/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_reportinterval?language=objc)
7820pub const kHIDUsage_Snsr_Modifier_ReportInterval: c_uint = 0xA;
7821/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_frequencymax?language=objc)
7822pub const kHIDUsage_Snsr_Modifier_FrequencyMax: c_uint = 0xB;
7823/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_periodmax?language=objc)
7824pub const kHIDUsage_Snsr_Modifier_PeriodMax: c_uint = 0xC;
7825/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_changesensitivitypercentrange?language=objc)
7826pub const kHIDUsage_Snsr_Modifier_ChangeSensitivityPercentRange: c_uint = 0xD;
7827/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_changesensitivitypercentrelative?language=objc)
7828pub const kHIDUsage_Snsr_Modifier_ChangeSensitivityPercentRelative: c_uint = 0xE;
7829/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_modifier_vendordefined?language=objc)
7830pub const kHIDUsage_Snsr_Modifier_VendorDefined: c_uint = 0xF;
7831/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event?language=objc)
7832pub const kHIDUsage_Snsr_Event: c_uint = 0x0200;
7833/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorstate?language=objc)
7834pub const kHIDUsage_Snsr_Event_SensorState: c_uint = 0x0201;
7835/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent?language=objc)
7836pub const kHIDUsage_Snsr_Event_SensorEvent: c_uint = 0x0202;
7837/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorstate_undefined?language=objc)
7838pub const kHIDUsage_Snsr_Event_SensorState_Undefined: c_uint = 0x0800;
7839/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorstate_ready?language=objc)
7840pub const kHIDUsage_Snsr_Event_SensorState_Ready: c_uint = 0x0801;
7841/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorstate_notavailable?language=objc)
7842pub const kHIDUsage_Snsr_Event_SensorState_NotAvailable: c_uint = 0x0802;
7843/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorstate_nodata?language=objc)
7844pub const kHIDUsage_Snsr_Event_SensorState_NoData: c_uint = 0x0803;
7845/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorstate_initializing?language=objc)
7846pub const kHIDUsage_Snsr_Event_SensorState_Initializing: c_uint = 0x0804;
7847/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorstate_accessdenied?language=objc)
7848pub const kHIDUsage_Snsr_Event_SensorState_AccessDenied: c_uint = 0x0805;
7849/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorstate_error?language=objc)
7850pub const kHIDUsage_Snsr_Event_SensorState_Error: c_uint = 0x0806;
7851/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_unknown?language=objc)
7852pub const kHIDUsage_Snsr_Event_SensorEvent_Unknown: c_uint = 0x0810;
7853/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_statechanged?language=objc)
7854pub const kHIDUsage_Snsr_Event_SensorEvent_StateChanged: c_uint = 0x0811;
7855/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_propertychanged?language=objc)
7856pub const kHIDUsage_Snsr_Event_SensorEvent_PropertyChanged: c_uint = 0x0812;
7857/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_dataupdated?language=objc)
7858pub const kHIDUsage_Snsr_Event_SensorEvent_DataUpdated: c_uint = 0x0813;
7859/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_pollresponse?language=objc)
7860pub const kHIDUsage_Snsr_Event_SensorEvent_PollResponse: c_uint = 0x0814;
7861/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_changesensitivity?language=objc)
7862pub const kHIDUsage_Snsr_Event_SensorEvent_ChangeSensitivity: c_uint = 0x0815;
7863/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_rangemaxreached?language=objc)
7864pub const kHIDUsage_Snsr_Event_SensorEvent_RangeMaxReached: c_uint = 0x0816;
7865/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_rangeminreached?language=objc)
7866pub const kHIDUsage_Snsr_Event_SensorEvent_RangeMinReached: c_uint = 0x0817;
7867/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_highthresholdcrossup?language=objc)
7868pub const kHIDUsage_Snsr_Event_SensorEvent_HighThresholdCrossUp: c_uint = 0x0818;
7869/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_highthresholdcrossdown?language=objc)
7870pub const kHIDUsage_Snsr_Event_SensorEvent_HighThresholdCrossDown: c_uint = 0x0819;
7871/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_lowthresholdcrossup?language=objc)
7872pub const kHIDUsage_Snsr_Event_SensorEvent_LowThresholdCrossUp: c_uint = 0x081A;
7873/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_lowthresholdcrossdown?language=objc)
7874pub const kHIDUsage_Snsr_Event_SensorEvent_LowThresholdCrossDown: c_uint = 0x081B;
7875/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_zerothresholdcrossup?language=objc)
7876pub const kHIDUsage_Snsr_Event_SensorEvent_ZeroThresholdCrossUp: c_uint = 0x081C;
7877/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_zerothresholdcrossdown?language=objc)
7878pub const kHIDUsage_Snsr_Event_SensorEvent_ZeroThresholdCrossDown: c_uint = 0x081D;
7879/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_periodexceeded?language=objc)
7880pub const kHIDUsage_Snsr_Event_SensorEvent_PeriodExceeded: c_uint = 0x081E;
7881/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_frequencyexceeded?language=objc)
7882pub const kHIDUsage_Snsr_Event_SensorEvent_FrequencyExceeded: c_uint = 0x081F;
7883/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_event_sensorevent_complextrigger?language=objc)
7884pub const kHIDUsage_Snsr_Event_SensorEvent_ComplexTrigger: c_uint = 0x0820;
7885/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property?language=objc)
7886pub const kHIDUsage_Snsr_Property: c_uint = 0x0300;
7887/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_friendlyname?language=objc)
7888pub const kHIDUsage_Snsr_Property_FriendlyName: c_uint = 0x0301;
7889/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_persistentuniqueid?language=objc)
7890pub const kHIDUsage_Snsr_Property_PersistentUniqueID: c_uint = 0x0302;
7891/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_sensorstatus?language=objc)
7892pub const kHIDUsage_Snsr_Property_SensorStatus: c_uint = 0x0303;
7893/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_minimumreportinterval?language=objc)
7894pub const kHIDUsage_Snsr_Property_MinimumReportInterval: c_uint = 0x0304;
7895/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_manufacturer?language=objc)
7896pub const kHIDUsage_Snsr_Property_Manufacturer: c_uint = 0x0305;
7897/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_model?language=objc)
7898pub const kHIDUsage_Snsr_Property_Model: c_uint = 0x0306;
7899/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_serialnumber?language=objc)
7900pub const kHIDUsage_Snsr_Property_SerialNumber: c_uint = 0x0307;
7901/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_description?language=objc)
7902pub const kHIDUsage_Snsr_Property_Description: c_uint = 0x0308;
7903/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_connectiontype?language=objc)
7904pub const kHIDUsage_Snsr_Property_ConnectionType: c_uint = 0x0309;
7905/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_devicepath?language=objc)
7906pub const kHIDUsage_Snsr_Property_DevicePath: c_uint = 0x030A;
7907/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_hardwarerevision?language=objc)
7908pub const kHIDUsage_Snsr_Property_HardwareRevision: c_uint = 0x030B;
7909/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_firmwareversion?language=objc)
7910pub const kHIDUsage_Snsr_Property_FirmwareVersion: c_uint = 0x030C;
7911/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_releasedata?language=objc)
7912pub const kHIDUsage_Snsr_Property_ReleaseData: c_uint = 0x030D;
7913/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_reportinterval?language=objc)
7914pub const kHIDUsage_Snsr_Property_ReportInterval: c_uint = 0x030E;
7915/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_changesensitivityabsolute?language=objc)
7916pub const kHIDUsage_Snsr_Property_ChangeSensitivityAbsolute: c_uint = 0x030F;
7917/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_changesensitivitypercentrange?language=objc)
7918pub const kHIDUsage_Snsr_Property_ChangeSensitivityPercentRange: c_uint = 0x0310;
7919/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_changesensitivitypercentrelative?language=objc)
7920pub const kHIDUsage_Snsr_Property_ChangeSensitivityPercentRelative: c_uint = 0x0311;
7921/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_accuracy?language=objc)
7922pub const kHIDUsage_Snsr_Property_Accuracy: c_uint = 0x0312;
7923/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_resolution?language=objc)
7924pub const kHIDUsage_Snsr_Property_Resolution: c_uint = 0x0313;
7925/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_maximum?language=objc)
7926pub const kHIDUsage_Snsr_Property_Maximum: c_uint = 0x0314;
7927/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_minimum?language=objc)
7928pub const kHIDUsage_Snsr_Property_Minimum: c_uint = 0x0315;
7929/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_reportingstate?language=objc)
7930pub const kHIDUsage_Snsr_Property_ReportingState: c_uint = 0x0316;
7931/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_samplingrate?language=objc)
7932pub const kHIDUsage_Snsr_Property_SamplingRate: c_uint = 0x0317;
7933/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_responsecurve?language=objc)
7934pub const kHIDUsage_Snsr_Property_ResponseCurve: c_uint = 0x0318;
7935/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_powerstate?language=objc)
7936pub const kHIDUsage_Snsr_Property_PowerState: c_uint = 0x0319;
7937/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_maxfifoevents?language=objc)
7938pub const kHIDUsage_Snsr_Property_MaxFIFOEvents: c_uint = 0x031A;
7939/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_reportlatency?language=objc)
7940pub const kHIDUsage_Snsr_Property_ReportLatency: c_uint = 0x031B;
7941/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_connectiontype_integrated?language=objc)
7942pub const kHIDUsage_Snsr_Property_ConnectionType_Integrated: c_uint = 0x0830;
7943/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_connectiontype_attached?language=objc)
7944pub const kHIDUsage_Snsr_Property_ConnectionType_Attached: c_uint = 0x0831;
7945/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_connectiontype_external?language=objc)
7946pub const kHIDUsage_Snsr_Property_ConnectionType_External: c_uint = 0x0832;
7947/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_reportingstate_noevents?language=objc)
7948pub const kHIDUsage_Snsr_Property_ReportingState_NoEvents: c_uint = 0x0840;
7949/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_reportingstate_allevents?language=objc)
7950pub const kHIDUsage_Snsr_Property_ReportingState_AllEvents: c_uint = 0x0841;
7951/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_reportingstate_thresholdevents?language=objc)
7952pub const kHIDUsage_Snsr_Property_ReportingState_ThresholdEvents: c_uint = 0x0842;
7953/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_reportingstate_wakenoevents?language=objc)
7954pub const kHIDUsage_Snsr_Property_ReportingState_WakeNoEvents: c_uint = 0x0843;
7955/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_reportingstate_wakeallevents?language=objc)
7956pub const kHIDUsage_Snsr_Property_ReportingState_WakeAllEvents: c_uint = 0x0844;
7957/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_reportingstate_wakethresholdevents?language=objc)
7958pub const kHIDUsage_Snsr_Property_ReportingState_WakeThresholdEvents: c_uint = 0x0845;
7959/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_powerstate_undefined?language=objc)
7960pub const kHIDUsage_Snsr_Property_PowerState_Undefined: c_uint = 0x0850;
7961/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_powerstate_d0_fullpower?language=objc)
7962pub const kHIDUsage_Snsr_Property_PowerState_D0_FullPower: c_uint = 0x0851;
7963/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_powerstate_d1_lowpower?language=objc)
7964pub const kHIDUsage_Snsr_Property_PowerState_D1_LowPower: c_uint = 0x0852;
7965/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_powerstate_d2_standby?language=objc)
7966pub const kHIDUsage_Snsr_Property_PowerState_D2_Standby: c_uint = 0x0853;
7967/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_powerstate_d3_sleep?language=objc)
7968pub const kHIDUsage_Snsr_Property_PowerState_D3_Sleep: c_uint = 0x0854;
7969/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_powerstate_d4_poweroff?language=objc)
7970pub const kHIDUsage_Snsr_Property_PowerState_D4_PowerOff: c_uint = 0x0855;
7971/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_light_illuminance?language=objc)
7972pub const kHIDUsage_Snsr_Light_Illuminance: c_uint = 0x04D1;
7973/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location?language=objc)
7974pub const kHIDUsage_Snsr_Data_Location: c_uint = 0x0400;
7975/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_reserved?language=objc)
7976pub const kHIDUsage_Snsr_Data_Location_Reserved: c_uint = 0x0401;
7977/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_altitudeantennasealevel?language=objc)
7978pub const kHIDUsage_Snsr_Data_Location_AltitudeAntennaSeaLevel: c_uint = 0x0402;
7979/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_differentialreferencestationid?language=objc)
7980pub const kHIDUsage_Snsr_Data_Location_DifferentialReferenceStationID: c_uint = 0x0403;
7981/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_altitudeellipsoiderror?language=objc)
7982pub const kHIDUsage_Snsr_Data_Location_AltitudeEllipsoidError: c_uint = 0x0404;
7983/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_altitudeellipsoid?language=objc)
7984pub const kHIDUsage_Snsr_Data_Location_AltitudeEllipsoid: c_uint = 0x0405;
7985/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_altitudesealevelerror?language=objc)
7986pub const kHIDUsage_Snsr_Data_Location_AltitudeSeaLevelError: c_uint = 0x0406;
7987/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_altitudesealevel?language=objc)
7988pub const kHIDUsage_Snsr_Data_Location_AltitudeSeaLevel: c_uint = 0x0407;
7989/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_differentialgpsdataage?language=objc)
7990pub const kHIDUsage_Snsr_Data_Location_DifferentialGPSDataAge: c_uint = 0x0408;
7991/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_errorradius?language=objc)
7992pub const kHIDUsage_Snsr_Data_Location_ErrorRadius: c_uint = 0x0409;
7993/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixquality?language=objc)
7994pub const kHIDUsage_Snsr_Data_Location_FixQuality: c_uint = 0x040A;
7995/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixqualitynofix?language=objc)
7996pub const kHIDUsage_Snsr_Data_Location_FixQualityNoFix: c_uint = 0x0870;
7997/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixqualitygps?language=objc)
7998pub const kHIDUsage_Snsr_Data_Location_FixQualityGPS: c_uint = 0x0871;
7999/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixqualitydgps?language=objc)
8000pub const kHIDUsage_Snsr_Data_Location_FixQualityDGPS: c_uint = 0x0872;
8001/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtype?language=objc)
8002pub const kHIDUsage_Snsr_Data_Location_FixType: c_uint = 0x040B;
8003/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtypenofix?language=objc)
8004pub const kHIDUsage_Snsr_Data_Location_FixTypeNoFix: c_uint = 0x0880;
8005/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtypegpsspsmode?language=objc)
8006pub const kHIDUsage_Snsr_Data_Location_FixTypeGPSSPSMode: c_uint = 0x0881;
8007/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtypedgpsspsmode?language=objc)
8008pub const kHIDUsage_Snsr_Data_Location_FixTypeDGPSSPSMode: c_uint = 0x0882;
8009/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtypegpsppsmode?language=objc)
8010pub const kHIDUsage_Snsr_Data_Location_FixTypeGPSPPSMode: c_uint = 0x0883;
8011/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtyperealtimekinematic?language=objc)
8012pub const kHIDUsage_Snsr_Data_Location_FixTypeRealTimeKinematic: c_uint = 0x0884;
8013/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtypefloatrtk?language=objc)
8014pub const kHIDUsage_Snsr_Data_Location_FixTypeFloatRTK: c_uint = 0x0885;
8015/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtypeestimated?language=objc)
8016pub const kHIDUsage_Snsr_Data_Location_FixTypeEstimated: c_uint = 0x0886;
8017/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtypemanualinputmode?language=objc)
8018pub const kHIDUsage_Snsr_Data_Location_FixTypeManualInputMode: c_uint = 0x0887;
8019/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_fixtypesimulatormode?language=objc)
8020pub const kHIDUsage_Snsr_Data_Location_FixTypeSimulatorMode: c_uint = 0x0888;
8021/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_geoidalseparation?language=objc)
8022pub const kHIDUsage_Snsr_Data_Location_GeoidalSeparation: c_uint = 0x040C;
8023/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsoperationmode?language=objc)
8024pub const kHIDUsage_Snsr_Data_Location_GPSOperationMode: c_uint = 0x040D;
8025/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsoperationmodemanual?language=objc)
8026pub const kHIDUsage_Snsr_Data_Location_GPSOperationModeManual: c_uint = 0x0890;
8027/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsoperationmodeautomatic?language=objc)
8028pub const kHIDUsage_Snsr_Data_Location_GPSOperationModeAutomatic: c_uint = 0x0891;
8029/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsselectionmode?language=objc)
8030pub const kHIDUsage_Snsr_Data_Location_GPSSelectionMode: c_uint = 0x040E;
8031/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsselectionmodeautonomous?language=objc)
8032pub const kHIDUsage_Snsr_Data_Location_GPSSelectionModeAutonomous: c_uint = 0x08A0;
8033/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsselectionmodedgps?language=objc)
8034pub const kHIDUsage_Snsr_Data_Location_GPSSelectionModeDGPS: c_uint = 0x08A1;
8035/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsselectionmodeestimated?language=objc)
8036pub const kHIDUsage_Snsr_Data_Location_GPSSelectionModeEstimated: c_uint = 0x08A2;
8037/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsselectionmodemanualinput?language=objc)
8038pub const kHIDUsage_Snsr_Data_Location_GPSSelectionModeManualInput: c_uint = 0x08A3;
8039/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsselectionmodesimulator?language=objc)
8040pub const kHIDUsage_Snsr_Data_Location_GPSSelectionModeSimulator: c_uint = 0x08A4;
8041/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsselectionmodedatanotvalid?language=objc)
8042pub const kHIDUsage_Snsr_Data_Location_GPSSelectionModeDataNotValid: c_uint = 0x08A5;
8043/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsstatus?language=objc)
8044pub const kHIDUsage_Snsr_Data_Location_GPSStatus: c_uint = 0x040F;
8045/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsstatusdatavalid?language=objc)
8046pub const kHIDUsage_Snsr_Data_Location_GPSStatusDataValid: c_uint = 0x08B0;
8047/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_gpsstatusdatanotvalid?language=objc)
8048pub const kHIDUsage_Snsr_Data_Location_GPSStatusDataNotValid: c_uint = 0x08B1;
8049/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_positiondilutionofprecision?language=objc)
8050pub const kHIDUsage_Snsr_Data_Location_PositionDilutionOfPrecision: c_uint = 0x0410;
8051/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_horizontaldilutionofprecision?language=objc)
8052pub const kHIDUsage_Snsr_Data_Location_HorizontalDilutionOfPrecision: c_uint = 0x0411;
8053/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_verticaldilutionofprecision?language=objc)
8054pub const kHIDUsage_Snsr_Data_Location_VerticalDilutionOfPrecision: c_uint = 0x0412;
8055/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_latitude?language=objc)
8056pub const kHIDUsage_Snsr_Data_Location_Latitude: c_uint = 0x0413;
8057/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_longitude?language=objc)
8058pub const kHIDUsage_Snsr_Data_Location_Longitude: c_uint = 0x0414;
8059/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_trueheading?language=objc)
8060pub const kHIDUsage_Snsr_Data_Location_TrueHeading: c_uint = 0x0415;
8061/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_magneticheading?language=objc)
8062pub const kHIDUsage_Snsr_Data_Location_MagneticHeading: c_uint = 0x0416;
8063/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_magneticvariation?language=objc)
8064pub const kHIDUsage_Snsr_Data_Location_MagneticVariation: c_uint = 0x0417;
8065/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_speed?language=objc)
8066pub const kHIDUsage_Snsr_Data_Location_Speed: c_uint = 0x0418;
8067/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_satellitesinview?language=objc)
8068pub const kHIDUsage_Snsr_Data_Location_SatellitesInView: c_uint = 0x0419;
8069/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_satellitesinviewazimuth?language=objc)
8070pub const kHIDUsage_Snsr_Data_Location_SatellitesInViewAzimuth: c_uint = 0x041A;
8071/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_satellitesinviewelevation?language=objc)
8072pub const kHIDUsage_Snsr_Data_Location_SatellitesInViewElevation: c_uint = 0x041B;
8073/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_satellitesinviewids?language=objc)
8074pub const kHIDUsage_Snsr_Data_Location_SatellitesInViewIDs: c_uint = 0x041C;
8075/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_satellitesinviewprns?language=objc)
8076pub const kHIDUsage_Snsr_Data_Location_SatellitesInViewPRNs: c_uint = 0x041D;
8077/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_satellitesinviewsnratios?language=objc)
8078pub const kHIDUsage_Snsr_Data_Location_SatellitesInViewSNRatios: c_uint = 0x041E;
8079/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_satellitesusedcount?language=objc)
8080pub const kHIDUsage_Snsr_Data_Location_SatellitesUsedCount: c_uint = 0x041F;
8081/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_satellitesusedprns?language=objc)
8082pub const kHIDUsage_Snsr_Data_Location_SatellitesUsedPRNs: c_uint = 0x0420;
8083/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_nmeasentence?language=objc)
8084pub const kHIDUsage_Snsr_Data_Location_NMEASentence: c_uint = 0x0421;
8085/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_addressline1?language=objc)
8086pub const kHIDUsage_Snsr_Data_Location_AddressLine1: c_uint = 0x0422;
8087/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_addressline2?language=objc)
8088pub const kHIDUsage_Snsr_Data_Location_AddressLine2: c_uint = 0x0423;
8089/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_city?language=objc)
8090pub const kHIDUsage_Snsr_Data_Location_City: c_uint = 0x0424;
8091/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_stateorprovince?language=objc)
8092pub const kHIDUsage_Snsr_Data_Location_StateOrProvince: c_uint = 0x0425;
8093/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_countryorregion?language=objc)
8094pub const kHIDUsage_Snsr_Data_Location_CountryOrRegion: c_uint = 0x0426;
8095/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_location_postalcode?language=objc)
8096pub const kHIDUsage_Snsr_Data_Location_PostalCode: c_uint = 0x0427;
8097/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_location?language=objc)
8098pub const kHIDUsage_Snsr_Property_Location: c_uint = 0x042A;
8099/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_location_desiredaccuracy?language=objc)
8100pub const kHIDUsage_Snsr_Property_Location_DesiredAccuracy: c_uint = 0x042B;
8101/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_location_accuracydefault?language=objc)
8102pub const kHIDUsage_Snsr_Property_Location_AccuracyDefault: c_uint = 0x0860;
8103/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_location_accuracyhigh?language=objc)
8104pub const kHIDUsage_Snsr_Property_Location_AccuracyHigh: c_uint = 0x0861;
8105/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_location_accuracymedium?language=objc)
8106pub const kHIDUsage_Snsr_Property_Location_AccuracyMedium: c_uint = 0x0862;
8107/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_location_accuracylow?language=objc)
8108pub const kHIDUsage_Snsr_Property_Location_AccuracyLow: c_uint = 0x0863;
8109/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_environmental?language=objc)
8110pub const kHIDUsage_Snsr_Data_Environmental: c_uint = 0x0430;
8111/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_environmental_atmosphericpressure?language=objc)
8112pub const kHIDUsage_Snsr_Data_Environmental_AtmosphericPressure: c_uint = 0x0431;
8113/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_environmental_reserved?language=objc)
8114pub const kHIDUsage_Snsr_Data_Environmental_Reserved: c_uint = 0x0432;
8115/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_environmental_relativehumidity?language=objc)
8116pub const kHIDUsage_Snsr_Data_Environmental_RelativeHumidity: c_uint = 0x0433;
8117/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_environmental_temperature?language=objc)
8118pub const kHIDUsage_Snsr_Data_Environmental_Temperature: c_uint = 0x0434;
8119/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_environmental_winddirection?language=objc)
8120pub const kHIDUsage_Snsr_Data_Environmental_WindDirection: c_uint = 0x0435;
8121/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_environmental_windspeed?language=objc)
8122pub const kHIDUsage_Snsr_Data_Environmental_WindSpeed: c_uint = 0x0436;
8123/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_environmental?language=objc)
8124pub const kHIDUsage_Snsr_Property_Environmental: c_uint = 0x0440;
8125/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_environmental_referencepressure?language=objc)
8126pub const kHIDUsage_Snsr_Property_Environmental_ReferencePressure: c_uint = 0x0441;
8127/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion?language=objc)
8128pub const kHIDUsage_Snsr_Data_Motion: c_uint = 0x0450;
8129/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_state?language=objc)
8130pub const kHIDUsage_Snsr_Data_Motion_State: c_uint = 0x0451;
8131/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_acceleration?language=objc)
8132pub const kHIDUsage_Snsr_Data_Motion_Acceleration: c_uint = 0x0452;
8133/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_accelerationaxisx?language=objc)
8134pub const kHIDUsage_Snsr_Data_Motion_AccelerationAxisX: c_uint = 0x0453;
8135/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_accelerationaxisy?language=objc)
8136pub const kHIDUsage_Snsr_Data_Motion_AccelerationAxisY: c_uint = 0x0454;
8137/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_accelerationaxisz?language=objc)
8138pub const kHIDUsage_Snsr_Data_Motion_AccelerationAxisZ: c_uint = 0x0455;
8139/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_angularvelocity?language=objc)
8140pub const kHIDUsage_Snsr_Data_Motion_AngularVelocity: c_uint = 0x0456;
8141/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_angularvelocityxaxis?language=objc)
8142pub const kHIDUsage_Snsr_Data_Motion_AngularVelocityXAxis: c_uint = 0x0457;
8143/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_angularvelocityyaxis?language=objc)
8144pub const kHIDUsage_Snsr_Data_Motion_AngularVelocityYAxis: c_uint = 0x0458;
8145/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_angularvelocityzaxis?language=objc)
8146pub const kHIDUsage_Snsr_Data_Motion_AngularVelocityZAxis: c_uint = 0x0459;
8147/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_angularposition?language=objc)
8148pub const kHIDUsage_Snsr_Data_Motion_AngularPosition: c_uint = 0x045A;
8149/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_angularpositionxaxis?language=objc)
8150pub const kHIDUsage_Snsr_Data_Motion_AngularPositionXAxis: c_uint = 0x045B;
8151/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_angularpositionyaxis?language=objc)
8152pub const kHIDUsage_Snsr_Data_Motion_AngularPositionYAxis: c_uint = 0x045C;
8153/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_angularpositionzaxis?language=objc)
8154pub const kHIDUsage_Snsr_Data_Motion_AngularPositionZAxis: c_uint = 0x045D;
8155/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_speed?language=objc)
8156pub const kHIDUsage_Snsr_Data_Motion_Speed: c_uint = 0x045E;
8157/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_motion_intensity?language=objc)
8158pub const kHIDUsage_Snsr_Data_Motion_Intensity: c_uint = 0x045F;
8159/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation?language=objc)
8160pub const kHIDUsage_Snsr_Data_Orientation: c_uint = 0x0470;
8161/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_heading?language=objc)
8162pub const kHIDUsage_Snsr_Data_Orientation_Heading: c_uint = 0x0471;
8163/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_headingxaxis?language=objc)
8164pub const kHIDUsage_Snsr_Data_Orientation_HeadingXAxis: c_uint = 0x0472;
8165/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_headingyaxis?language=objc)
8166pub const kHIDUsage_Snsr_Data_Orientation_HeadingYAxis: c_uint = 0x0473;
8167/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_headingzaxis?language=objc)
8168pub const kHIDUsage_Snsr_Data_Orientation_HeadingZAxis: c_uint = 0x0474;
8169/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_headingcompensatedmagneticnorth?language=objc)
8170pub const kHIDUsage_Snsr_Data_Orientation_HeadingCompensatedMagneticNorth: c_uint = 0x0475;
8171/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_headingcompensatedtruenorth?language=objc)
8172pub const kHIDUsage_Snsr_Data_Orientation_HeadingCompensatedTrueNorth: c_uint = 0x0476;
8173/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_headingmagneticnorth?language=objc)
8174pub const kHIDUsage_Snsr_Data_Orientation_HeadingMagneticNorth: c_uint = 0x0477;
8175/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_headingtruenorth?language=objc)
8176pub const kHIDUsage_Snsr_Data_Orientation_HeadingTrueNorth: c_uint = 0x0478;
8177/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_distance?language=objc)
8178pub const kHIDUsage_Snsr_Data_Orientation_Distance: c_uint = 0x0479;
8179/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_distancexaxis?language=objc)
8180pub const kHIDUsage_Snsr_Data_Orientation_DistanceXAxis: c_uint = 0x047A;
8181/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_distanceyaxis?language=objc)
8182pub const kHIDUsage_Snsr_Data_Orientation_DistanceYAxis: c_uint = 0x047B;
8183/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_distancezaxis?language=objc)
8184pub const kHIDUsage_Snsr_Data_Orientation_DistanceZAxis: c_uint = 0x047C;
8185/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_distanceoutofrange?language=objc)
8186pub const kHIDUsage_Snsr_Data_Orientation_DistanceOutOfRange: c_uint = 0x047D;
8187/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_tilt?language=objc)
8188pub const kHIDUsage_Snsr_Data_Orientation_Tilt: c_uint = 0x047E;
8189/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_tiltxaxis?language=objc)
8190pub const kHIDUsage_Snsr_Data_Orientation_TiltXAxis: c_uint = 0x047F;
8191/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_tiltyaxis?language=objc)
8192pub const kHIDUsage_Snsr_Data_Orientation_TiltYAxis: c_uint = 0x0480;
8193/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_tiltzaxis?language=objc)
8194pub const kHIDUsage_Snsr_Data_Orientation_TiltZAxis: c_uint = 0x0481;
8195/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_rotationmatrix?language=objc)
8196pub const kHIDUsage_Snsr_Data_Orientation_RotationMatrix: c_uint = 0x0482;
8197/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_quaternion?language=objc)
8198pub const kHIDUsage_Snsr_Data_Orientation_Quaternion: c_uint = 0x0483;
8199/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_magneticflux?language=objc)
8200pub const kHIDUsage_Snsr_Data_Orientation_MagneticFlux: c_uint = 0x0484;
8201/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_magneticfluxxaxis?language=objc)
8202pub const kHIDUsage_Snsr_Data_Orientation_MagneticFluxXAxis: c_uint = 0x0485;
8203/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_magneticfluxyaxis?language=objc)
8204pub const kHIDUsage_Snsr_Data_Orientation_MagneticFluxYAxis: c_uint = 0x0486;
8205/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_orientation_magneticfluxzaxis?language=objc)
8206pub const kHIDUsage_Snsr_Data_Orientation_MagneticFluxZAxis: c_uint = 0x0487;
8207/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_mechanical?language=objc)
8208pub const kHIDUsage_Snsr_Data_Mechanical: c_uint = 0x0490;
8209/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_mechanical_booleanswitchstate?language=objc)
8210pub const kHIDUsage_Snsr_Data_Mechanical_BooleanSwitchState: c_uint = 0x0491;
8211/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_mechanical_booleanswitcharraystates?language=objc)
8212pub const kHIDUsage_Snsr_Data_Mechanical_BooleanSwitchArrayStates: c_uint = 0x0492;
8213/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_mechanical_multivalueswitchvalue?language=objc)
8214pub const kHIDUsage_Snsr_Data_Mechanical_MultivalueSwitchValue: c_uint = 0x0493;
8215/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_mechanical_force?language=objc)
8216pub const kHIDUsage_Snsr_Data_Mechanical_Force: c_uint = 0x0494;
8217/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_mechanical_absolutepressure?language=objc)
8218pub const kHIDUsage_Snsr_Data_Mechanical_AbsolutePressure: c_uint = 0x0495;
8219/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_mechanical_gaugepressure?language=objc)
8220pub const kHIDUsage_Snsr_Data_Mechanical_GaugePressure: c_uint = 0x0496;
8221/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_mechanical_strain?language=objc)
8222pub const kHIDUsage_Snsr_Data_Mechanical_Strain: c_uint = 0x0497;
8223/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_mechanical_weight?language=objc)
8224pub const kHIDUsage_Snsr_Data_Mechanical_Weight: c_uint = 0x0498;
8225/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_mechanical?language=objc)
8226pub const kHIDUsage_Snsr_Property_Mechanical: c_uint = 0x04A0;
8227/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_mechanical_vibrationstate?language=objc)
8228pub const kHIDUsage_Snsr_Property_Mechanical_VibrationState: c_uint = 0x04A1;
8229/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_mechanical_forwardvibrationspeed?language=objc)
8230pub const kHIDUsage_Snsr_Property_Mechanical_ForwardVibrationSpeed: c_uint = 0x04A2;
8231/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_mechanical_backwardvibrationspeed?language=objc)
8232pub const kHIDUsage_Snsr_Property_Mechanical_BackwardVibrationSpeed: c_uint = 0x04A3;
8233/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_biometric?language=objc)
8234pub const kHIDUsage_Snsr_Data_Biometric: c_uint = 0x04B0;
8235/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_biometric_humanpresence?language=objc)
8236pub const kHIDUsage_Snsr_Data_Biometric_HumanPresence: c_uint = 0x04B1;
8237/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_biometric_humanproximityrange?language=objc)
8238pub const kHIDUsage_Snsr_Data_Biometric_HumanProximityRange: c_uint = 0x04B2;
8239/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_biometric_humanproximityoutofrange?language=objc)
8240pub const kHIDUsage_Snsr_Data_Biometric_HumanProximityOutOfRange: c_uint = 0x04B3;
8241/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_biometric_humantouchstate?language=objc)
8242pub const kHIDUsage_Snsr_Data_Biometric_HumanTouchState: c_uint = 0x04B4;
8243/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_light?language=objc)
8244pub const kHIDUsage_Snsr_Data_Light: c_uint = 0x04D0;
8245/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_light_illuminance?language=objc)
8246pub const kHIDUsage_Snsr_Data_Light_Illuminance: c_uint = 0x04D1;
8247/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_light_colortemperature?language=objc)
8248pub const kHIDUsage_Snsr_Data_Light_ColorTemperature: c_uint = 0x04D2;
8249/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_light_chromaticity?language=objc)
8250pub const kHIDUsage_Snsr_Data_Light_Chromaticity: c_uint = 0x04D3;
8251/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_light_chromaticityx?language=objc)
8252pub const kHIDUsage_Snsr_Data_Light_ChromaticityX: c_uint = 0x04D4;
8253/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_light_chromaticityy?language=objc)
8254pub const kHIDUsage_Snsr_Data_Light_ChromaticityY: c_uint = 0x04D5;
8255/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_light_consumerirsentencereceive?language=objc)
8256pub const kHIDUsage_Snsr_Data_Light_ConsumerIRSentenceReceive: c_uint = 0x04D6;
8257/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_light?language=objc)
8258pub const kHIDUsage_Snsr_Property_Light: c_uint = 0x04E0;
8259/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_light_consumerirsentencesend?language=objc)
8260pub const kHIDUsage_Snsr_Property_Light_ConsumerIRSentenceSend: c_uint = 0x04E1;
8261/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_scanner?language=objc)
8262pub const kHIDUsage_Snsr_Data_Scanner: c_uint = 0x04F0;
8263/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_scanner_rfidtag40bit?language=objc)
8264pub const kHIDUsage_Snsr_Data_Scanner_RFIDTag40Bit: c_uint = 0x04F1;
8265/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_scanner_nfcsentencereceive?language=objc)
8266pub const kHIDUsage_Snsr_Data_Scanner_NFCSentenceReceive: c_uint = 0x04F2;
8267/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_scanner?language=objc)
8268pub const kHIDUsage_Snsr_Property_Scanner: c_uint = 0x04F8;
8269/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_scanner_nfcsentencesend?language=objc)
8270pub const kHIDUsage_Snsr_Property_Scanner_NFCSentenceSend: c_uint = 0x0F49;
8271/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical?language=objc)
8272pub const kHIDUsage_Snsr_Data_Electrical: c_uint = 0x0500;
8273/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical_capacitance?language=objc)
8274pub const kHIDUsage_Snsr_Data_Electrical_Capacitance: c_uint = 0x0501;
8275/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical_current?language=objc)
8276pub const kHIDUsage_Snsr_Data_Electrical_Current: c_uint = 0x0502;
8277/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical_electricalpower?language=objc)
8278pub const kHIDUsage_Snsr_Data_Electrical_ElectricalPower: c_uint = 0x0503;
8279/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical_inductance?language=objc)
8280pub const kHIDUsage_Snsr_Data_Electrical_Inductance: c_uint = 0x0504;
8281/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical_resistance?language=objc)
8282pub const kHIDUsage_Snsr_Data_Electrical_Resistance: c_uint = 0x0505;
8283/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical_voltage?language=objc)
8284pub const kHIDUsage_Snsr_Data_Electrical_Voltage: c_uint = 0x0506;
8285/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical_frequency?language=objc)
8286pub const kHIDUsage_Snsr_Data_Electrical_Frequency: c_uint = 0x0507;
8287/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical_period?language=objc)
8288pub const kHIDUsage_Snsr_Data_Electrical_Period: c_uint = 0x0508;
8289/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_electrical_percentofrange?language=objc)
8290pub const kHIDUsage_Snsr_Data_Electrical_PercentOfRange: c_uint = 0x0509;
8291/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time?language=objc)
8292pub const kHIDUsage_Snsr_Data_Time: c_uint = 0x0520;
8293/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_year?language=objc)
8294pub const kHIDUsage_Snsr_Data_Time_Year: c_uint = 0x0521;
8295/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_month?language=objc)
8296pub const kHIDUsage_Snsr_Data_Time_Month: c_uint = 0x0522;
8297/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_day?language=objc)
8298pub const kHIDUsage_Snsr_Data_Time_Day: c_uint = 0x0523;
8299/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_dayofweek?language=objc)
8300pub const kHIDUsage_Snsr_Data_Time_DayOfWeek: c_uint = 0x0524;
8301/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_dayofweeksunday?language=objc)
8302pub const kHIDUsage_Snsr_Data_Time_DayOfWeekSunday: c_uint = 0x08C0;
8303/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_dayofweekmonday?language=objc)
8304pub const kHIDUsage_Snsr_Data_Time_DayOfWeekMonday: c_uint = 0x08C1;
8305/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_dayofweektuesday?language=objc)
8306pub const kHIDUsage_Snsr_Data_Time_DayOfWeekTuesday: c_uint = 0x08C2;
8307/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_dayofweekwednesday?language=objc)
8308pub const kHIDUsage_Snsr_Data_Time_DayOfWeekWednesday: c_uint = 0x08C3;
8309/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_dayofweekthursday?language=objc)
8310pub const kHIDUsage_Snsr_Data_Time_DayOfWeekThursday: c_uint = 0x08C4;
8311/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_dayofweekfriday?language=objc)
8312pub const kHIDUsage_Snsr_Data_Time_DayOfWeekFriday: c_uint = 0x08C5;
8313/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_dayofweeksaturday?language=objc)
8314pub const kHIDUsage_Snsr_Data_Time_DayOfWeekSaturday: c_uint = 0x08C6;
8315/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_hour?language=objc)
8316pub const kHIDUsage_Snsr_Data_Time_Hour: c_uint = 0x0525;
8317/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_minute?language=objc)
8318pub const kHIDUsage_Snsr_Data_Time_Minute: c_uint = 0x0526;
8319/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_second?language=objc)
8320pub const kHIDUsage_Snsr_Data_Time_Second: c_uint = 0x0527;
8321/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_millisecond?language=objc)
8322pub const kHIDUsage_Snsr_Data_Time_Millisecond: c_uint = 0x0528;
8323/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_timestamp?language=objc)
8324pub const kHIDUsage_Snsr_Data_Time_Timestamp: c_uint = 0x0529;
8325/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_time_juliandayofyear?language=objc)
8326pub const kHIDUsage_Snsr_Data_Time_JulianDayOfYear: c_uint = 0x052A;
8327/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_time?language=objc)
8328pub const kHIDUsage_Snsr_Property_Time: c_uint = 0x0530;
8329/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_time_timezoneoffsetfromutc?language=objc)
8330pub const kHIDUsage_Snsr_Property_Time_TimeZoneOffsetFromUTC: c_uint = 0x0531;
8331/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_time_timezonename?language=objc)
8332pub const kHIDUsage_Snsr_Property_Time_TimeZoneName: c_uint = 0x0532;
8333/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_time_daylightsavingstimeobserved?language=objc)
8334pub const kHIDUsage_Snsr_Property_Time_DaylightSavingsTimeObserved: c_uint = 0x0533;
8335/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_time_timetrimadjustment?language=objc)
8336pub const kHIDUsage_Snsr_Property_Time_TimeTrimAdjustment: c_uint = 0x0534;
8337/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_property_time_armalarm?language=objc)
8338pub const kHIDUsage_Snsr_Property_Time_ArmAlarm: c_uint = 0x0535;
8339/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom?language=objc)
8340pub const kHIDUsage_Snsr_Data_Custom: c_uint = 0x0540;
8341/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom_usage?language=objc)
8342pub const kHIDUsage_Snsr_Data_Custom_Usage: c_uint = 0x0541;
8343/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom_booleanarray?language=objc)
8344pub const kHIDUsage_Snsr_Data_Custom_BooleanArray: c_uint = 0x0542;
8345/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom_value?language=objc)
8346pub const kHIDUsage_Snsr_Data_Custom_Value: c_uint = 0x0543;
8347/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom_value1?language=objc)
8348pub const kHIDUsage_Snsr_Data_Custom_Value1: c_uint = 0x0544;
8349/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom_value2?language=objc)
8350pub const kHIDUsage_Snsr_Data_Custom_Value2: c_uint = 0x0545;
8351/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom_value3?language=objc)
8352pub const kHIDUsage_Snsr_Data_Custom_Value3: c_uint = 0x0546;
8353/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom_value4?language=objc)
8354pub const kHIDUsage_Snsr_Data_Custom_Value4: c_uint = 0x0547;
8355/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom_value5?language=objc)
8356pub const kHIDUsage_Snsr_Data_Custom_Value5: c_uint = 0x0548;
8357/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_snsr_data_custom_value6?language=objc)
8358pub const kHIDUsage_Snsr_Data_Custom_Value6: c_uint = 0x0549;
8359
8360/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_undefined?language=objc)
8361pub const kHIDUsage_BD_Undefined: c_uint = 0x00;
8362/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_brailledisplay?language=objc)
8363pub const kHIDUsage_BD_BrailleDisplay: c_uint = 0x01;
8364/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillerow?language=objc)
8365pub const kHIDUsage_BD_BrailleRow: c_uint = 0x02;
8366/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_8dotbraillecell?language=objc)
8367pub const kHIDUsage_BD_8DotBrailleCell: c_uint = 0x03;
8368/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_6dotbraillecell?language=objc)
8369pub const kHIDUsage_BD_6DotBrailleCell: c_uint = 0x04;
8370/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_numberofbraillecells?language=objc)
8371pub const kHIDUsage_BD_NumberOfBrailleCells: c_uint = 0x05;
8372/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_screenreadercontrol?language=objc)
8373pub const kHIDUsage_BD_ScreenReaderControl: c_uint = 0x06;
8374/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_screenreaderidentifier?language=objc)
8375pub const kHIDUsage_BD_ScreenReaderIdentifier: c_uint = 0x07;
8376/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_routerset1?language=objc)
8377pub const kHIDUsage_BD_RouterSet1: c_uint = 0xFA;
8378/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_routerset2?language=objc)
8379pub const kHIDUsage_BD_RouterSet2: c_uint = 0xFB;
8380/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_routerset3?language=objc)
8381pub const kHIDUsage_BD_RouterSet3: c_uint = 0xFC;
8382/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_routerkey?language=objc)
8383pub const kHIDUsage_BD_RouterKey: c_uint = 0x100;
8384/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_rowrouterkey?language=objc)
8385pub const kHIDUsage_BD_RowRouterKey: c_uint = 0x101;
8386/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillebuttons?language=objc)
8387pub const kHIDUsage_BD_BrailleButtons: c_uint = 0x200;
8388/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboarddot1?language=objc)
8389pub const kHIDUsage_BD_BrailleKeyboardDot1: c_uint = 0x201;
8390/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboarddot2?language=objc)
8391pub const kHIDUsage_BD_BrailleKeyboardDot2: c_uint = 0x202;
8392/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboarddot3?language=objc)
8393pub const kHIDUsage_BD_BrailleKeyboardDot3: c_uint = 0x203;
8394/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboarddot4?language=objc)
8395pub const kHIDUsage_BD_BrailleKeyboardDot4: c_uint = 0x204;
8396/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboarddot5?language=objc)
8397pub const kHIDUsage_BD_BrailleKeyboardDot5: c_uint = 0x205;
8398/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboarddot6?language=objc)
8399pub const kHIDUsage_BD_BrailleKeyboardDot6: c_uint = 0x206;
8400/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboarddot7?language=objc)
8401pub const kHIDUsage_BD_BrailleKeyboardDot7: c_uint = 0x207;
8402/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboarddot8?language=objc)
8403pub const kHIDUsage_BD_BrailleKeyboardDot8: c_uint = 0x208;
8404/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboardspace?language=objc)
8405pub const kHIDUsage_BD_BrailleKeyboardSpace: c_uint = 0x209;
8406/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboardleftspace?language=objc)
8407pub const kHIDUsage_BD_BrailleKeyboardLeftSpace: c_uint = 0x20A;
8408/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillekeyboardrightspace?language=objc)
8409pub const kHIDUsage_BD_BrailleKeyboardRightSpace: c_uint = 0x20B;
8410/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillefacecontrols?language=objc)
8411pub const kHIDUsage_BD_BrailleFaceControls: c_uint = 0x20C;
8412/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_brailleleftcontrols?language=objc)
8413pub const kHIDUsage_BD_BrailleLeftControls: c_uint = 0x20D;
8414/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillerightcontrols?language=objc)
8415pub const kHIDUsage_BD_BrailleRightControls: c_uint = 0x20E;
8416/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_brailletopcontrols?language=objc)
8417pub const kHIDUsage_BD_BrailleTopControls: c_uint = 0x20F;
8418/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillejoystickcenter?language=objc)
8419pub const kHIDUsage_BD_BrailleJoystickCenter: c_uint = 0x210;
8420/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillejoystickup?language=objc)
8421pub const kHIDUsage_BD_BrailleJoystickUp: c_uint = 0x211;
8422/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillejoystickdown?language=objc)
8423pub const kHIDUsage_BD_BrailleJoystickDown: c_uint = 0x212;
8424/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillejoystickleft?language=objc)
8425pub const kHIDUsage_BD_BrailleJoystickLeft: c_uint = 0x213;
8426/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillejoystickright?language=objc)
8427pub const kHIDUsage_BD_BrailleJoystickRight: c_uint = 0x214;
8428/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_brailledpadcenter?language=objc)
8429pub const kHIDUsage_BD_BrailleDPadCenter: c_uint = 0x215;
8430/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_brailledpadup?language=objc)
8431pub const kHIDUsage_BD_BrailleDPadUp: c_uint = 0x216;
8432/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_brailledpaddown?language=objc)
8433pub const kHIDUsage_BD_BrailleDPadDown: c_uint = 0x217;
8434/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_brailledpadleft?language=objc)
8435pub const kHIDUsage_BD_BrailleDPadLeft: c_uint = 0x218;
8436/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_brailledpadright?language=objc)
8437pub const kHIDUsage_BD_BrailleDPadRight: c_uint = 0x219;
8438/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillepanleft?language=objc)
8439pub const kHIDUsage_BD_BraillePanLeft: c_uint = 0x21A;
8440/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillepanright?language=objc)
8441pub const kHIDUsage_BD_BraillePanRight: c_uint = 0x21B;
8442/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillerockerup?language=objc)
8443pub const kHIDUsage_BD_BrailleRockerUp: c_uint = 0x21C;
8444/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillerockerdown?language=objc)
8445pub const kHIDUsage_BD_BrailleRockerDown: c_uint = 0x21D;
8446/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bd_braillerockerpress?language=objc)
8447pub const kHIDUsage_BD_BrailleRockerPress: c_uint = 0x21E;
8448
8449/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_undefined?language=objc)
8450pub const kHIDUsage_PD_Undefined: c_uint = 0x00;
8451/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_iname?language=objc)
8452pub const kHIDUsage_PD_iName: c_uint = 0x01;
8453/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_presentstatus?language=objc)
8454pub const kHIDUsage_PD_PresentStatus: c_uint = 0x02;
8455/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_changedstatus?language=objc)
8456pub const kHIDUsage_PD_ChangedStatus: c_uint = 0x03;
8457/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_ups?language=objc)
8458pub const kHIDUsage_PD_UPS: c_uint = 0x04;
8459/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_powersupply?language=objc)
8460pub const kHIDUsage_PD_PowerSupply: c_uint = 0x05;
8461/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_peripheraldevice?language=objc)
8462pub const kHIDUsage_PD_PeripheralDevice: c_uint = 0x06;
8463/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_batterysystem?language=objc)
8464pub const kHIDUsage_PD_BatterySystem: c_uint = 0x10;
8465/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_batterysystemid?language=objc)
8466pub const kHIDUsage_PD_BatterySystemID: c_uint = 0x11;
8467/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_battery?language=objc)
8468pub const kHIDUsage_PD_Battery: c_uint = 0x12;
8469/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_batteryid?language=objc)
8470pub const kHIDUsage_PD_BatteryID: c_uint = 0x13;
8471/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_charger?language=objc)
8472pub const kHIDUsage_PD_Charger: c_uint = 0x14;
8473/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_chargerid?language=objc)
8474pub const kHIDUsage_PD_ChargerID: c_uint = 0x15;
8475/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_powerconverter?language=objc)
8476pub const kHIDUsage_PD_PowerConverter: c_uint = 0x16;
8477/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_powerconverterid?language=objc)
8478pub const kHIDUsage_PD_PowerConverterID: c_uint = 0x17;
8479/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_outletsystem?language=objc)
8480pub const kHIDUsage_PD_OutletSystem: c_uint = 0x18;
8481/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_outletsystemid?language=objc)
8482pub const kHIDUsage_PD_OutletSystemID: c_uint = 0x19;
8483/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_input?language=objc)
8484pub const kHIDUsage_PD_Input: c_uint = 0x1A;
8485/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_inputid?language=objc)
8486pub const kHIDUsage_PD_InputID: c_uint = 0x1B;
8487/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_output?language=objc)
8488pub const kHIDUsage_PD_Output: c_uint = 0x1C;
8489/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_outputid?language=objc)
8490pub const kHIDUsage_PD_OutputID: c_uint = 0x1D;
8491/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_flow?language=objc)
8492pub const kHIDUsage_PD_Flow: c_uint = 0x1E;
8493/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_flowid?language=objc)
8494pub const kHIDUsage_PD_FlowID: c_uint = 0x1F;
8495/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_outlet?language=objc)
8496pub const kHIDUsage_PD_Outlet: c_uint = 0x20;
8497/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_outletid?language=objc)
8498pub const kHIDUsage_PD_OutletID: c_uint = 0x21;
8499/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_gang?language=objc)
8500pub const kHIDUsage_PD_Gang: c_uint = 0x22;
8501/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_gangid?language=objc)
8502pub const kHIDUsage_PD_GangID: c_uint = 0x23;
8503/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_powersummary?language=objc)
8504pub const kHIDUsage_PD_PowerSummary: c_uint = 0x24;
8505/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_powersummaryid?language=objc)
8506pub const kHIDUsage_PD_PowerSummaryID: c_uint = 0x25;
8507/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_voltage?language=objc)
8508pub const kHIDUsage_PD_Voltage: c_uint = 0x30;
8509/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_current?language=objc)
8510pub const kHIDUsage_PD_Current: c_uint = 0x31;
8511/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_frequency?language=objc)
8512pub const kHIDUsage_PD_Frequency: c_uint = 0x32;
8513/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_apparentpower?language=objc)
8514pub const kHIDUsage_PD_ApparentPower: c_uint = 0x33;
8515/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_activepower?language=objc)
8516pub const kHIDUsage_PD_ActivePower: c_uint = 0x34;
8517/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_percentload?language=objc)
8518pub const kHIDUsage_PD_PercentLoad: c_uint = 0x35;
8519/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_temperature?language=objc)
8520pub const kHIDUsage_PD_Temperature: c_uint = 0x36;
8521/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_humidity?language=objc)
8522pub const kHIDUsage_PD_Humidity: c_uint = 0x37;
8523/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_badcount?language=objc)
8524pub const kHIDUsage_PD_BadCount: c_uint = 0x38;
8525/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_configvoltage?language=objc)
8526pub const kHIDUsage_PD_ConfigVoltage: c_uint = 0x40;
8527/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_configcurrent?language=objc)
8528pub const kHIDUsage_PD_ConfigCurrent: c_uint = 0x41;
8529/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_configfrequency?language=objc)
8530pub const kHIDUsage_PD_ConfigFrequency: c_uint = 0x42;
8531/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_configapparentpower?language=objc)
8532pub const kHIDUsage_PD_ConfigApparentPower: c_uint = 0x43;
8533/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_configactivepower?language=objc)
8534pub const kHIDUsage_PD_ConfigActivePower: c_uint = 0x44;
8535/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_configpercentload?language=objc)
8536pub const kHIDUsage_PD_ConfigPercentLoad: c_uint = 0x45;
8537/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_configtemperature?language=objc)
8538pub const kHIDUsage_PD_ConfigTemperature: c_uint = 0x46;
8539/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_confighumidity?language=objc)
8540pub const kHIDUsage_PD_ConfigHumidity: c_uint = 0x47;
8541/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_switchoncontrol?language=objc)
8542pub const kHIDUsage_PD_SwitchOnControl: c_uint = 0x50;
8543/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_switchoffcontrol?language=objc)
8544pub const kHIDUsage_PD_SwitchOffControl: c_uint = 0x51;
8545/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_togglecontrol?language=objc)
8546pub const kHIDUsage_PD_ToggleControl: c_uint = 0x52;
8547/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_lowvoltagetransfer?language=objc)
8548pub const kHIDUsage_PD_LowVoltageTransfer: c_uint = 0x53;
8549/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_highvoltagetransfer?language=objc)
8550pub const kHIDUsage_PD_HighVoltageTransfer: c_uint = 0x54;
8551/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_delaybeforereboot?language=objc)
8552pub const kHIDUsage_PD_DelayBeforeReboot: c_uint = 0x55;
8553/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_delaybeforestartup?language=objc)
8554pub const kHIDUsage_PD_DelayBeforeStartup: c_uint = 0x56;
8555/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_delaybeforeshutdown?language=objc)
8556pub const kHIDUsage_PD_DelayBeforeShutdown: c_uint = 0x57;
8557/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_test?language=objc)
8558pub const kHIDUsage_PD_Test: c_uint = 0x58;
8559/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_modulereset?language=objc)
8560pub const kHIDUsage_PD_ModuleReset: c_uint = 0x59;
8561/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_audiblealarmcontrol?language=objc)
8562pub const kHIDUsage_PD_AudibleAlarmControl: c_uint = 0x5A;
8563/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_present?language=objc)
8564pub const kHIDUsage_PD_Present: c_uint = 0x60;
8565/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_good?language=objc)
8566pub const kHIDUsage_PD_Good: c_uint = 0x61;
8567/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_internalfailure?language=objc)
8568pub const kHIDUsage_PD_InternalFailure: c_uint = 0x62;
8569/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_voltageoutofrange?language=objc)
8570pub const kHIDUsage_PD_VoltageOutOfRange: c_uint = 0x63;
8571/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_frequencyoutofrange?language=objc)
8572pub const kHIDUsage_PD_FrequencyOutOfRange: c_uint = 0x64;
8573/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_overload?language=objc)
8574pub const kHIDUsage_PD_Overload: c_uint = 0x65;
8575/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_overcharged?language=objc)
8576pub const kHIDUsage_PD_OverCharged: c_uint = 0x66;
8577/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_overtemperature?language=objc)
8578pub const kHIDUsage_PD_OverTemperature: c_uint = 0x67;
8579/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_shutdownrequested?language=objc)
8580pub const kHIDUsage_PD_ShutdownRequested: c_uint = 0x68;
8581/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_shutdownimminent?language=objc)
8582pub const kHIDUsage_PD_ShutdownImminent: c_uint = 0x69;
8583/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_switchonoff?language=objc)
8584pub const kHIDUsage_PD_SwitchOnOff: c_uint = 0x6B;
8585/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_switchable?language=objc)
8586pub const kHIDUsage_PD_Switchable: c_uint = 0x6C;
8587/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_used?language=objc)
8588pub const kHIDUsage_PD_Used: c_uint = 0x6D;
8589/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_boost?language=objc)
8590pub const kHIDUsage_PD_Boost: c_uint = 0x6E;
8591/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_buck?language=objc)
8592pub const kHIDUsage_PD_Buck: c_uint = 0x6F;
8593/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_initialized?language=objc)
8594pub const kHIDUsage_PD_Initialized: c_uint = 0x70;
8595/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_tested?language=objc)
8596pub const kHIDUsage_PD_Tested: c_uint = 0x71;
8597/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_awaitingpower?language=objc)
8598pub const kHIDUsage_PD_AwaitingPower: c_uint = 0x72;
8599/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_communicationlost?language=objc)
8600pub const kHIDUsage_PD_CommunicationLost: c_uint = 0x73;
8601/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_imanufacturer?language=objc)
8602pub const kHIDUsage_PD_iManufacturer: c_uint = 0xFD;
8603/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_iproduct?language=objc)
8604pub const kHIDUsage_PD_iProduct: c_uint = 0xFE;
8605/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_pd_iserialnumber?language=objc)
8606pub const kHIDUsage_PD_iserialNumber: c_uint = 0xFF;
8607
8608/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_undefined?language=objc)
8609pub const kHIDUsage_BS_Undefined: c_uint = 0x00;
8610/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smbbatterymode?language=objc)
8611pub const kHIDUsage_BS_SMBBatteryMode: c_uint = 0x01;
8612/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smbbatterystatus?language=objc)
8613pub const kHIDUsage_BS_SMBBatteryStatus: c_uint = 0x02;
8614/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smbalarmwarning?language=objc)
8615pub const kHIDUsage_BS_SMBAlarmWarning: c_uint = 0x03;
8616/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smbchargermode?language=objc)
8617pub const kHIDUsage_BS_SMBChargerMode: c_uint = 0x04;
8618/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smbchargerstatus?language=objc)
8619pub const kHIDUsage_BS_SMBChargerStatus: c_uint = 0x05;
8620/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smbchargerspecinfo?language=objc)
8621pub const kHIDUsage_BS_SMBChargerSpecInfo: c_uint = 0x06;
8622/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smbselectorstate?language=objc)
8623pub const kHIDUsage_BS_SMBSelectorState: c_uint = 0x07;
8624/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smbselectorpresets?language=objc)
8625pub const kHIDUsage_BS_SMBSelectorPresets: c_uint = 0x08;
8626/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smbselectorinfo?language=objc)
8627pub const kHIDUsage_BS_SMBSelectorInfo: c_uint = 0x09;
8628/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_optionalmfgfunction1?language=objc)
8629pub const kHIDUsage_BS_OptionalMfgFunction1: c_uint = 0x10;
8630/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_optionalmfgfunction2?language=objc)
8631pub const kHIDUsage_BS_OptionalMfgFunction2: c_uint = 0x11;
8632/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_optionalmfgfunction3?language=objc)
8633pub const kHIDUsage_BS_OptionalMfgFunction3: c_uint = 0x12;
8634/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_optionalmfgfunction4?language=objc)
8635pub const kHIDUsage_BS_OptionalMfgFunction4: c_uint = 0x13;
8636/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_optionalmfgfunction5?language=objc)
8637pub const kHIDUsage_BS_OptionalMfgFunction5: c_uint = 0x14;
8638/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_connectiontosmbus?language=objc)
8639pub const kHIDUsage_BS_ConnectionToSMBus: c_uint = 0x15;
8640/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_outputconnection?language=objc)
8641pub const kHIDUsage_BS_OutputConnection: c_uint = 0x16;
8642/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_chargerconnection?language=objc)
8643pub const kHIDUsage_BS_ChargerConnection: c_uint = 0x17;
8644/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_batteryinsertion?language=objc)
8645pub const kHIDUsage_BS_BatteryInsertion: c_uint = 0x18;
8646/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_usenext?language=objc)
8647pub const kHIDUsage_BS_Usenext: c_uint = 0x19;
8648/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_oktouse?language=objc)
8649pub const kHIDUsage_BS_OKToUse: c_uint = 0x1A;
8650/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_batterysupported?language=objc)
8651pub const kHIDUsage_BS_BatterySupported: c_uint = 0x1B;
8652/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_selectorrevision?language=objc)
8653pub const kHIDUsage_BS_SelectorRevision: c_uint = 0x1C;
8654/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_chargingindicator?language=objc)
8655pub const kHIDUsage_BS_ChargingIndicator: c_uint = 0x1D;
8656/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_manufactureraccess?language=objc)
8657pub const kHIDUsage_BS_ManufacturerAccess: c_uint = 0x28;
8658/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_remainingcapacitylimit?language=objc)
8659pub const kHIDUsage_BS_RemainingCapacityLimit: c_uint = 0x29;
8660/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_remainingtimelimit?language=objc)
8661pub const kHIDUsage_BS_RemainingTimeLimit: c_uint = 0x2A;
8662/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_atrate?language=objc)
8663pub const kHIDUsage_BS_AtRate: c_uint = 0x2B;
8664/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_capacitymode?language=objc)
8665pub const kHIDUsage_BS_CapacityMode: c_uint = 0x2C;
8666/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_broadcasttocharger?language=objc)
8667pub const kHIDUsage_BS_BroadcastToCharger: c_uint = 0x2D;
8668/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_primarybattery?language=objc)
8669pub const kHIDUsage_BS_PrimaryBattery: c_uint = 0x2E;
8670/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_chargecontroller?language=objc)
8671pub const kHIDUsage_BS_ChargeController: c_uint = 0x2F;
8672/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_terminatecharge?language=objc)
8673pub const kHIDUsage_BS_TerminateCharge: c_uint = 0x40;
8674/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_terminatedischarge?language=objc)
8675pub const kHIDUsage_BS_TerminateDischarge: c_uint = 0x41;
8676/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_belowremainingcapacitylimit?language=objc)
8677pub const kHIDUsage_BS_BelowRemainingCapacityLimit: c_uint = 0x42;
8678/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_remainingtimelimitexpired?language=objc)
8679pub const kHIDUsage_BS_RemainingTimeLimitExpired: c_uint = 0x43;
8680/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_charging?language=objc)
8681pub const kHIDUsage_BS_Charging: c_uint = 0x44;
8682/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_discharging?language=objc)
8683pub const kHIDUsage_BS_Discharging: c_uint = 0x45;
8684/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_fullycharged?language=objc)
8685pub const kHIDUsage_BS_FullyCharged: c_uint = 0x46;
8686/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_fullydischarged?language=objc)
8687pub const kHIDUsage_BS_FullyDischarged: c_uint = 0x47;
8688/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_conditioningflag?language=objc)
8689pub const kHIDUsage_BS_ConditioningFlag: c_uint = 0x48;
8690/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_atrateok?language=objc)
8691pub const kHIDUsage_BS_AtRateOK: c_uint = 0x49;
8692/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_smberrorcode?language=objc)
8693pub const kHIDUsage_BS_SMBErrorCode: c_uint = 0x4A;
8694/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_needreplacement?language=objc)
8695pub const kHIDUsage_BS_NeedReplacement: c_uint = 0x4B;
8696/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_atratetimetofull?language=objc)
8697pub const kHIDUsage_BS_AtRateTimeToFull: c_uint = 0x60;
8698/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_atratetimetoempty?language=objc)
8699pub const kHIDUsage_BS_AtRateTimeToEmpty: c_uint = 0x61;
8700/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_averagecurrent?language=objc)
8701pub const kHIDUsage_BS_AverageCurrent: c_uint = 0x62;
8702/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_maxerror?language=objc)
8703pub const kHIDUsage_BS_Maxerror: c_uint = 0x63;
8704/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_relativestateofcharge?language=objc)
8705pub const kHIDUsage_BS_RelativeStateOfCharge: c_uint = 0x64;
8706/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_absolutestateofcharge?language=objc)
8707pub const kHIDUsage_BS_AbsoluteStateOfCharge: c_uint = 0x65;
8708/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_remainingcapacity?language=objc)
8709pub const kHIDUsage_BS_RemainingCapacity: c_uint = 0x66;
8710/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_fullchargecapacity?language=objc)
8711pub const kHIDUsage_BS_FullChargeCapacity: c_uint = 0x67;
8712/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_runtimetoempty?language=objc)
8713pub const kHIDUsage_BS_RunTimeToEmpty: c_uint = 0x68;
8714/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_averagetimetoempty?language=objc)
8715pub const kHIDUsage_BS_AverageTimeToEmpty: c_uint = 0x69;
8716/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_averagetimetofull?language=objc)
8717pub const kHIDUsage_BS_AverageTimeToFull: c_uint = 0x6A;
8718/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_cyclecount?language=objc)
8719pub const kHIDUsage_BS_CycleCount: c_uint = 0x6B;
8720/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_battpackmodellevel?language=objc)
8721pub const kHIDUsage_BS_BattPackModelLevel: c_uint = 0x80;
8722/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_internalchargecontroller?language=objc)
8723pub const kHIDUsage_BS_InternalChargeController: c_uint = 0x81;
8724/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_primarybatterysupport?language=objc)
8725pub const kHIDUsage_BS_PrimaryBatterySupport: c_uint = 0x82;
8726/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_designcapacity?language=objc)
8727pub const kHIDUsage_BS_DesignCapacity: c_uint = 0x83;
8728/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_specificationinfo?language=objc)
8729pub const kHIDUsage_BS_SpecificationInfo: c_uint = 0x84;
8730/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_manufacturerdate?language=objc)
8731pub const kHIDUsage_BS_ManufacturerDate: c_uint = 0x85;
8732/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_serialnumber?language=objc)
8733pub const kHIDUsage_BS_SerialNumber: c_uint = 0x86;
8734/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_imanufacturername?language=objc)
8735pub const kHIDUsage_BS_iManufacturerName: c_uint = 0x87;
8736/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_idevicename?language=objc)
8737pub const kHIDUsage_BS_iDevicename: c_uint = 0x88;
8738/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_idevicechemistry?language=objc)
8739pub const kHIDUsage_BS_iDeviceChemistry: c_uint = 0x89;
8740/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_manufacturerdata?language=objc)
8741pub const kHIDUsage_BS_ManufacturerData: c_uint = 0x8A;
8742/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_rechargable?language=objc)
8743pub const kHIDUsage_BS_Rechargable: c_uint = 0x8B;
8744/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_warningcapacitylimit?language=objc)
8745pub const kHIDUsage_BS_WarningCapacityLimit: c_uint = 0x8C;
8746/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_capacitygranularity1?language=objc)
8747pub const kHIDUsage_BS_CapacityGranularity1: c_uint = 0x8D;
8748/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_capacitygranularity2?language=objc)
8749pub const kHIDUsage_BS_CapacityGranularity2: c_uint = 0x8E;
8750/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_ioeminformation?language=objc)
8751pub const kHIDUsage_BS_iOEMInformation: c_uint = 0x8F;
8752/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_inhibitcharge?language=objc)
8753pub const kHIDUsage_BS_InhibitCharge: c_uint = 0xC0;
8754/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_enablepolling?language=objc)
8755pub const kHIDUsage_BS_EnablePolling: c_uint = 0xC1;
8756/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_resettozero?language=objc)
8757pub const kHIDUsage_BS_ResetToZero: c_uint = 0xC2;
8758/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_acpresent?language=objc)
8759pub const kHIDUsage_BS_ACPresent: c_uint = 0xD0;
8760/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_batterypresent?language=objc)
8761pub const kHIDUsage_BS_BatteryPresent: c_uint = 0xD1;
8762/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_powerfail?language=objc)
8763pub const kHIDUsage_BS_PowerFail: c_uint = 0xD2;
8764/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_alarminhibited?language=objc)
8765pub const kHIDUsage_BS_AlarmInhibited: c_uint = 0xD3;
8766/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_thermistorunderrange?language=objc)
8767pub const kHIDUsage_BS_ThermistorUnderRange: c_uint = 0xD4;
8768/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_thermistorhot?language=objc)
8769pub const kHIDUsage_BS_ThermistorHot: c_uint = 0xD5;
8770/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_thermistorcold?language=objc)
8771pub const kHIDUsage_BS_ThermistorCold: c_uint = 0xD6;
8772/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_thermistoroverrange?language=objc)
8773pub const kHIDUsage_BS_ThermistorOverRange: c_uint = 0xD7;
8774/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_voltageoutofrange?language=objc)
8775pub const kHIDUsage_BS_VoltageOutOfRange: c_uint = 0xD8;
8776/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_currentoutofrange?language=objc)
8777pub const kHIDUsage_BS_CurrentOutOfRange: c_uint = 0xD9;
8778/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_currentnotregulated?language=objc)
8779pub const kHIDUsage_BS_CurrentNotRegulated: c_uint = 0xDA;
8780/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_voltagenotregulated?language=objc)
8781pub const kHIDUsage_BS_VoltageNotRegulated: c_uint = 0xDB;
8782/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_mastermode?language=objc)
8783pub const kHIDUsage_BS_MasterMode: c_uint = 0xDC;
8784/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_chargerselectorsupport?language=objc)
8785pub const kHIDUsage_BS_ChargerSelectorSupport: c_uint = 0xF0;
8786/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_chargerspec?language=objc)
8787pub const kHIDUsage_BS_ChargerSpec: c_uint = 0xF1;
8788/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_level2?language=objc)
8789pub const kHIDUsage_BS_Level2: c_uint = 0xF2;
8790/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bs_level3?language=objc)
8791pub const kHIDUsage_BS_Level3: c_uint = 0xF3;
8792
8793/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_undefined?language=objc)
8794pub const kHIDUsage_BCS_Undefined: c_uint = 0x00;
8795/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_badgereader?language=objc)
8796pub const kHIDUsage_BCS_BadgeReader: c_uint = 0x01;
8797/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_barcodescanner?language=objc)
8798pub const kHIDUsage_BCS_BarCodeScanner: c_uint = 0x02;
8799/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_dumbbarcodescanner?language=objc)
8800pub const kHIDUsage_BCS_DumbBarCodeScanner: c_uint = 0x03;
8801/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_cordlessscannerbase?language=objc)
8802pub const kHIDUsage_BCS_CordlessScannerBase: c_uint = 0x04;
8803/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_barcodescannercradle?language=objc)
8804pub const kHIDUsage_BCS_BarCodeScannerCradle: c_uint = 0x05;
8805/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_attributereport?language=objc)
8806pub const kHIDUsage_BCS_AttributeReport: c_uint = 0x10;
8807/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_settingsreport?language=objc)
8808pub const kHIDUsage_BCS_SettingsReport: c_uint = 0x11;
8809/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_scanneddatareport?language=objc)
8810pub const kHIDUsage_BCS_ScannedDataReport: c_uint = 0x12;
8811/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_rawscanneddatareport?language=objc)
8812pub const kHIDUsage_BCS_RawScannedDataReport: c_uint = 0x13;
8813/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_triggerreport?language=objc)
8814pub const kHIDUsage_BCS_TriggerReport: c_uint = 0x14;
8815/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_statusreport?language=objc)
8816pub const kHIDUsage_BCS_StatusReport: c_uint = 0x15;
8817/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_eancontrolreport?language=objc)
8818pub const kHIDUsage_BCS_UPC_EANControlReport: c_uint = 0x16;
8819/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean2_3labelcontrolreport?language=objc)
8820pub const kHIDUsage_BCS_EAN2_3LabelControlReport: c_uint = 0x17;
8821/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_code39controlreport?language=objc)
8822pub const kHIDUsage_BCS_Code39ControlReport: c_uint = 0x18;
8823/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_interleaved2of5controlreport?language=objc)
8824pub const kHIDUsage_BCS_Interleaved2of5ControlReport: c_uint = 0x19;
8825/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_standard2of5controlreport?language=objc)
8826pub const kHIDUsage_BCS_Standard2of5ControlReport: c_uint = 0x1A;
8827/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_msiplesseycontrolreport?language=objc)
8828pub const kHIDUsage_BCS_MSIPlesseyControlReport: c_uint = 0x1B;
8829/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_codabarcontrolreport?language=objc)
8830pub const kHIDUsage_BCS_CodabarControlReport: c_uint = 0x1C;
8831/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_code128controlreport?language=objc)
8832pub const kHIDUsage_BCS_Code128ControlReport: c_uint = 0x1D;
8833/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_misc1dcontrolreport?language=objc)
8834pub const kHIDUsage_BCS_Misc1DControlReport: c_uint = 0x1E;
8835/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_2dcontrolreport?language=objc)
8836pub const kHIDUsage_BCS_2DControlReport: c_uint = 0x1F;
8837/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_aiming_pointermide?language=objc)
8838pub const kHIDUsage_BCS_Aiming_PointerMide: c_uint = 0x30;
8839/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_barcodepresentsensor?language=objc)
8840pub const kHIDUsage_BCS_BarCodePresentSensor: c_uint = 0x31;
8841/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_class1alaser?language=objc)
8842pub const kHIDUsage_BCS_Class1ALaser: c_uint = 0x32;
8843/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_class2laser?language=objc)
8844pub const kHIDUsage_BCS_Class2Laser: c_uint = 0x33;
8845/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_heaterpresent?language=objc)
8846pub const kHIDUsage_BCS_HeaterPresent: c_uint = 0x34;
8847/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_contactscanner?language=objc)
8848pub const kHIDUsage_BCS_ContactScanner: c_uint = 0x35;
8849/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_electronicarticlesurveillancenotification?language=objc)
8850pub const kHIDUsage_BCS_ElectronicArticleSurveillanceNotification: c_uint = 0x36;
8851/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_constantelectronicarticlesurveillance?language=objc)
8852pub const kHIDUsage_BCS_ConstantElectronicArticleSurveillance: c_uint = 0x37;
8853/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_errorindication?language=objc)
8854pub const kHIDUsage_BCS_ErrorIndication: c_uint = 0x38;
8855/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_fixedbeeper?language=objc)
8856pub const kHIDUsage_BCS_FixedBeeper: c_uint = 0x39;
8857/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_gooddecodeindication?language=objc)
8858pub const kHIDUsage_BCS_GoodDecodeIndication: c_uint = 0x3A;
8859/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_handsfreescanning?language=objc)
8860pub const kHIDUsage_BCS_HandsFreeScanning: c_uint = 0x3B;
8861/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_intrinsicallysafe?language=objc)
8862pub const kHIDUsage_BCS_IntrinsicallySafe: c_uint = 0x3C;
8863/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_klasseeinslaser?language=objc)
8864pub const kHIDUsage_BCS_KlasseEinsLaser: c_uint = 0x3D;
8865/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_longrangescanner?language=objc)
8866pub const kHIDUsage_BCS_LongRangeScanner: c_uint = 0x3E;
8867/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_mirrorspeedcontrol?language=objc)
8868pub const kHIDUsage_BCS_MirrorSpeedControl: c_uint = 0x3F;
8869/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_notonfileindication?language=objc)
8870pub const kHIDUsage_BCS_NotOnFileIndication: c_uint = 0x40;
8871/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_programmablebeeper?language=objc)
8872pub const kHIDUsage_BCS_ProgrammableBeeper: c_uint = 0x41;
8873/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_triggerless?language=objc)
8874pub const kHIDUsage_BCS_Triggerless: c_uint = 0x42;
8875/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_wand?language=objc)
8876pub const kHIDUsage_BCS_Wand: c_uint = 0x43;
8877/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_waterresistant?language=objc)
8878pub const kHIDUsage_BCS_WaterResistant: c_uint = 0x44;
8879/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_multirangescanner?language=objc)
8880pub const kHIDUsage_BCS_MultiRangeScanner: c_uint = 0x45;
8881/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_proximitysensor?language=objc)
8882pub const kHIDUsage_BCS_ProximitySensor: c_uint = 0x46;
8883/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_fragmentdecoding?language=objc)
8884pub const kHIDUsage_BCS_FragmentDecoding: c_uint = 0x4D;
8885/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_scannerreadconfidence?language=objc)
8886pub const kHIDUsage_BCS_ScannerReadConfidence: c_uint = 0x4E;
8887/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_dataprefix?language=objc)
8888pub const kHIDUsage_BCS_DataPrefix: c_uint = 0x4F;
8889/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_prefixaimi?language=objc)
8890pub const kHIDUsage_BCS_PrefixAIMI: c_uint = 0x50;
8891/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_prefixnone?language=objc)
8892pub const kHIDUsage_BCS_PrefixNone: c_uint = 0x51;
8893/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_prefixproprietary?language=objc)
8894pub const kHIDUsage_BCS_PrefixProprietary: c_uint = 0x52;
8895/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_activetime?language=objc)
8896pub const kHIDUsage_BCS_ActiveTime: c_uint = 0x55;
8897/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_aiminglaserpattern?language=objc)
8898pub const kHIDUsage_BCS_AimingLaserPattern: c_uint = 0x56;
8899/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_barcodepresent?language=objc)
8900pub const kHIDUsage_BCS_BarCodePresent: c_uint = 0x57;
8901/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_beeperstate?language=objc)
8902pub const kHIDUsage_BCS_BeeperState: c_uint = 0x58;
8903/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_laserontime?language=objc)
8904pub const kHIDUsage_BCS_LaserOnTime: c_uint = 0x59;
8905/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_laserstate?language=objc)
8906pub const kHIDUsage_BCS_LaserState: c_uint = 0x5A;
8907/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_lockouttime?language=objc)
8908pub const kHIDUsage_BCS_LockoutTime: c_uint = 0x5B;
8909/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_motorstate?language=objc)
8910pub const kHIDUsage_BCS_MotorState: c_uint = 0x5C;
8911/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_motortimeout?language=objc)
8912pub const kHIDUsage_BCS_MotorTimeout: c_uint = 0x5D;
8913/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_poweronresetscanner?language=objc)
8914pub const kHIDUsage_BCS_PowerOnResetScanner: c_uint = 0x5E;
8915/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_preventreadofbarcodes?language=objc)
8916pub const kHIDUsage_BCS_PreventReadOfBarcodes: c_uint = 0x5F;
8917/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_initiatebarcoderead?language=objc)
8918pub const kHIDUsage_BCS_InitiateBarcodeRead: c_uint = 0x60;
8919/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_triggerstate?language=objc)
8920pub const kHIDUsage_BCS_TriggerState: c_uint = 0x61;
8921/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_triggermode?language=objc)
8922pub const kHIDUsage_BCS_TriggerMode: c_uint = 0x62;
8923/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_triggermodeblinkinglaseron?language=objc)
8924pub const kHIDUsage_BCS_TriggerModeBlinkingLaserOn: c_uint = 0x63;
8925/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_triggermodecontinuouslaseron?language=objc)
8926pub const kHIDUsage_BCS_TriggerModeContinuousLaserOn: c_uint = 0x64;
8927/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_triggermodelaseronwhilepulled?language=objc)
8928pub const kHIDUsage_BCS_TriggerModeLaserOnWhilePulled: c_uint = 0x65;
8929/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_triggermodelaserstaysonaftertriggerrelease?language=objc)
8930pub const kHIDUsage_BCS_TriggerModeLaserStaysOnAfterTriggerRelease: c_uint = 0x66;
8931/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_commitparameterstonvm?language=objc)
8932pub const kHIDUsage_BCS_CommitParametersToNVM: c_uint = 0x6D;
8933/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_parameterscanning?language=objc)
8934pub const kHIDUsage_BCS_ParameterScanning: c_uint = 0x6E;
8935/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_parameterschanged?language=objc)
8936pub const kHIDUsage_BCS_ParametersChanged: c_uint = 0x6F;
8937/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_setparameterdefaultvalues?language=objc)
8938pub const kHIDUsage_BCS_SetParameterDefaultValues: c_uint = 0x70;
8939/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_scannerincradle?language=objc)
8940pub const kHIDUsage_BCS_ScannerInCradle: c_uint = 0x75;
8941/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_scannerinrange?language=objc)
8942pub const kHIDUsage_BCS_ScannerInRange: c_uint = 0x76;
8943/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_aimduration?language=objc)
8944pub const kHIDUsage_BCS_AimDuration: c_uint = 0x7A;
8945/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_goodreadlampduration?language=objc)
8946pub const kHIDUsage_BCS_GoodReadLampDuration: c_uint = 0x7B;
8947/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_goodreadlampintensity?language=objc)
8948pub const kHIDUsage_BCS_GoodReadLampIntensity: c_uint = 0x7C;
8949/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_goodreadled?language=objc)
8950pub const kHIDUsage_BCS_GoodReadLED: c_uint = 0x7D;
8951/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_goodreadtonefrequency?language=objc)
8952pub const kHIDUsage_BCS_GoodReadToneFrequency: c_uint = 0x7E;
8953/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_goodreadtonelength?language=objc)
8954pub const kHIDUsage_BCS_GoodReadToneLength: c_uint = 0x7F;
8955/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_goodreadtonevolume?language=objc)
8956pub const kHIDUsage_BCS_GoodReadToneVolume: c_uint = 0x80;
8957/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_noreadmessage?language=objc)
8958pub const kHIDUsage_BCS_NoReadMessage: c_uint = 0x82;
8959/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_notonfilevolume?language=objc)
8960pub const kHIDUsage_BCS_NotOnFileVolume: c_uint = 0x83;
8961/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_powerupbeep?language=objc)
8962pub const kHIDUsage_BCS_PowerupBeep: c_uint = 0x84;
8963/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_sounderrorbeep?language=objc)
8964pub const kHIDUsage_BCS_SoundErrorBeep: c_uint = 0x85;
8965/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_soundgoodreadbeep?language=objc)
8966pub const kHIDUsage_BCS_SoundGoodReadBeep: c_uint = 0x86;
8967/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_soundnotonfilebeep?language=objc)
8968pub const kHIDUsage_BCS_SoundNotOnFileBeep: c_uint = 0x87;
8969/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_goodreadwhentowrite?language=objc)
8970pub const kHIDUsage_BCS_GoodReadWhenToWrite: c_uint = 0x88;
8971/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_grwtiafterdecode?language=objc)
8972pub const kHIDUsage_BCS_GRWTIAfterDecode: c_uint = 0x89;
8973/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_grwtibeep_lampaftertransmit?language=objc)
8974pub const kHIDUsage_BCS_GRWTIBeep_LampAfterTransmit: c_uint = 0x8A;
8975/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_grwtinobeep_lampuseatall?language=objc)
8976pub const kHIDUsage_BCS_GRWTINoBeep_LampUseAtAll: c_uint = 0x8B;
8977/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_booklandean?language=objc)
8978pub const kHIDUsage_BCS_BooklandEAN: c_uint = 0x91;
8979/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_convertean8to13type?language=objc)
8980pub const kHIDUsage_BCS_ConvertEAN8To13Type: c_uint = 0x92;
8981/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_convertupcatoean_13?language=objc)
8982pub const kHIDUsage_BCS_ConvertUPCAToEAN_13: c_uint = 0x93;
8983/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_convertupc_etoa?language=objc)
8984pub const kHIDUsage_BCS_ConvertUPC_EToA: c_uint = 0x94;
8985/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean_13?language=objc)
8986pub const kHIDUsage_BCS_EAN_13: c_uint = 0x95;
8987/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean_8?language=objc)
8988pub const kHIDUsage_BCS_EAN_8: c_uint = 0x96;
8989/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean_99_128_mandatory?language=objc)
8990pub const kHIDUsage_BCS_EAN_99_128_Mandatory: c_uint = 0x97;
8991/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean_99_p5_128_optional?language=objc)
8992pub const kHIDUsage_BCS_EAN_99_P5_128_Optional: c_uint = 0x98;
8993/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_ean?language=objc)
8994pub const kHIDUsage_BCS_UPC_EAN: c_uint = 0x9A;
8995/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_eancouponcode?language=objc)
8996pub const kHIDUsage_BCS_UPC_EANCouponCode: c_uint = 0x9B;
8997/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_eanperiodicals?language=objc)
8998pub const kHIDUsage_BCS_UPC_EANPeriodicals: c_uint = 0x9C;
8999/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_a?language=objc)
9000pub const kHIDUsage_BCS_UPC_A: c_uint = 0x9D;
9001/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_awith128mandatory?language=objc)
9002pub const kHIDUsage_BCS_UPC_AWith128Mandatory: c_uint = 0x9E;
9003/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_awith128optical?language=objc)
9004pub const kHIDUsage_BCS_UPC_AWith128Optical: c_uint = 0x9F;
9005/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_awithp5optional?language=objc)
9006pub const kHIDUsage_BCS_UPC_AWithP5Optional: c_uint = 0xA0;
9007/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_e?language=objc)
9008pub const kHIDUsage_BCS_UPC_E: c_uint = 0xA1;
9009/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_upc_e1?language=objc)
9010pub const kHIDUsage_BCS_UPC_E1: c_uint = 0xA2;
9011/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_periodical?language=objc)
9012pub const kHIDUsage_BCS_Periodical: c_uint = 0xA9;
9013/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_periodicalautodiscriminateplus2?language=objc)
9014pub const kHIDUsage_BCS_PeriodicalAutoDiscriminatePlus2: c_uint = 0xAA;
9015/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_periodicalonlydecodewithplus2?language=objc)
9016pub const kHIDUsage_BCS_PeriodicalOnlyDecodeWithPlus2: c_uint = 0xAB;
9017/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_periodicalignoreplus2?language=objc)
9018pub const kHIDUsage_BCS_PeriodicalIgnorePlus2: c_uint = 0xAC;
9019/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_periodicalautodiscriminateplus5?language=objc)
9020pub const kHIDUsage_BCS_PeriodicalAutoDiscriminatePlus5: c_uint = 0xAD;
9021/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_periodicalonlydecodewithplus5?language=objc)
9022pub const kHIDUsage_BCS_PeriodicalOnlyDecodeWithPlus5: c_uint = 0xAE;
9023/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_periodicalignoreplus5?language=objc)
9024pub const kHIDUsage_BCS_PeriodicalIgnorePlus5: c_uint = 0xAF;
9025/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_check?language=objc)
9026pub const kHIDUsage_BCS_Check: c_uint = 0xB0;
9027/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdisableprice?language=objc)
9028pub const kHIDUsage_BCS_CheckDisablePrice: c_uint = 0xB1;
9029/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkenable4digitprice?language=objc)
9030pub const kHIDUsage_BCS_CheckEnable4DigitPrice: c_uint = 0xB2;
9031/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkenable5digitprice?language=objc)
9032pub const kHIDUsage_BCS_CheckEnable5DigitPrice: c_uint = 0xB3;
9033/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkenableeuropean4digitprice?language=objc)
9034pub const kHIDUsage_BCS_CheckEnableEuropean4DigitPrice: c_uint = 0xB4;
9035/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkenableeuropean5digitprice?language=objc)
9036pub const kHIDUsage_BCS_CheckEnableEuropean5DigitPrice: c_uint = 0xB5;
9037/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_eantwolabel?language=objc)
9038pub const kHIDUsage_BCS_EANTwoLabel: c_uint = 0xB7;
9039/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_eanthreelabel?language=objc)
9040pub const kHIDUsage_BCS_EANThreeLabel: c_uint = 0xB8;
9041/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean8flagdigit1?language=objc)
9042pub const kHIDUsage_BCS_EAN8FlagDigit1: c_uint = 0xB9;
9043/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean8flagdigit2?language=objc)
9044pub const kHIDUsage_BCS_EAN8FlagDigit2: c_uint = 0xBA;
9045/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean8flagdigit3?language=objc)
9046pub const kHIDUsage_BCS_EAN8FlagDigit3: c_uint = 0xBB;
9047/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean13flagdigit1?language=objc)
9048pub const kHIDUsage_BCS_EAN13FlagDigit1: c_uint = 0xBC;
9049/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean13flagdigit2?language=objc)
9050pub const kHIDUsage_BCS_EAN13FlagDigit2: c_uint = 0xBD;
9051/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ean13flagdigit3?language=objc)
9052pub const kHIDUsage_BCS_EAN13FlagDigit3: c_uint = 0xBE;
9053/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_addean2_3labeldefinition?language=objc)
9054pub const kHIDUsage_BCS_AddEAN2_3LabelDefinition: c_uint = 0xBF;
9055/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_clearallean2_3labeldefinitions?language=objc)
9056pub const kHIDUsage_BCS_ClearAllEAN2_3LabelDefinitions: c_uint = 0xC0;
9057/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_codabar?language=objc)
9058pub const kHIDUsage_BCS_Codabar: c_uint = 0xC3;
9059/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_code128?language=objc)
9060pub const kHIDUsage_BCS_Code128: c_uint = 0xC4;
9061/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_code39?language=objc)
9062pub const kHIDUsage_BCS_Code39: c_uint = 0xC7;
9063/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_code93?language=objc)
9064pub const kHIDUsage_BCS_Code93: c_uint = 0xC8;
9065/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_fullasciiconversion?language=objc)
9066pub const kHIDUsage_BCS_FullASCIIConversion: c_uint = 0xC9;
9067/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_interleaved2of5?language=objc)
9068pub const kHIDUsage_BCS_Interleaved2of5: c_uint = 0xCA;
9069/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_italianpharmacycode?language=objc)
9070pub const kHIDUsage_BCS_ItalianPharmacyCode: c_uint = 0xCB;
9071/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_msi_plessey?language=objc)
9072pub const kHIDUsage_BCS_MSI_Plessey: c_uint = 0xCC;
9073/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_standard2of5iata?language=objc)
9074pub const kHIDUsage_BCS_Standard2of5IATA: c_uint = 0xCD;
9075/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_standard2of5?language=objc)
9076pub const kHIDUsage_BCS_Standard2of5: c_uint = 0xCE;
9077/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_transmitstart_stop?language=objc)
9078pub const kHIDUsage_BCS_TransmitStart_Stop: c_uint = 0xD3;
9079/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_trioptic?language=objc)
9080pub const kHIDUsage_BCS_TriOptic: c_uint = 0xD4;
9081/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ucc_ean_128?language=objc)
9082pub const kHIDUsage_BCS_UCC_EAN_128: c_uint = 0xD5;
9083/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigit?language=objc)
9084pub const kHIDUsage_BCS_CheckDigit: c_uint = 0xD6;
9085/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigitdisable?language=objc)
9086pub const kHIDUsage_BCS_CheckDigitDisable: c_uint = 0xD7;
9087/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigitenableinterleaved2of5opcc?language=objc)
9088pub const kHIDUsage_BCS_CheckDigitEnableInterleaved2of5OPCC: c_uint = 0xD8;
9089/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigitenableinterleaved2of5uss?language=objc)
9090pub const kHIDUsage_BCS_CheckDigitEnableInterleaved2of5USS: c_uint = 0xD9;
9091/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigitenablestandard2of5opcc?language=objc)
9092pub const kHIDUsage_BCS_CheckDigitEnableStandard2of5OPCC: c_uint = 0xDA;
9093/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigitenablestandard2of5uss?language=objc)
9094pub const kHIDUsage_BCS_CheckDigitEnableStandard2of5USS: c_uint = 0xDB;
9095/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigitenableonemsiplessey?language=objc)
9096pub const kHIDUsage_BCS_CheckDigitEnableOneMSIPlessey: c_uint = 0xDC;
9097/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigitenabletwomsiplessey?language=objc)
9098pub const kHIDUsage_BCS_CheckDigitEnableTwoMSIPlessey: c_uint = 0xDD;
9099/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigitcodabarenable?language=objc)
9100pub const kHIDUsage_BCS_CheckDigitCodabarEnable: c_uint = 0xDE;
9101/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_checkdigitcode99enable?language=objc)
9102pub const kHIDUsage_BCS_CheckDigitCode99Enable: c_uint = 0xDF;
9103/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_transmitcheckdigit?language=objc)
9104pub const kHIDUsage_BCS_TransmitCheckDigit: c_uint = 0xF0;
9105/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_disablecheckdigittransmit?language=objc)
9106pub const kHIDUsage_BCS_DisableCheckDigitTransmit: c_uint = 0xF1;
9107/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_enablecheckdigittransmit?language=objc)
9108pub const kHIDUsage_BCS_EnableCheckDigitTransmit: c_uint = 0xF2;
9109/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_symbologyidentifier1?language=objc)
9110pub const kHIDUsage_BCS_SymbologyIdentifier1: c_uint = 0xFB;
9111/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_symbologyidentifier2?language=objc)
9112pub const kHIDUsage_BCS_SymbologyIdentifier2: c_uint = 0xFC;
9113/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_symbologyidentifier3?language=objc)
9114pub const kHIDUsage_BCS_SymbologyIdentifier3: c_uint = 0xFD;
9115/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_decodeddata?language=objc)
9116pub const kHIDUsage_BCS_DecodedData: c_uint = 0xFE;
9117/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_decodedatacontinued?language=objc)
9118pub const kHIDUsage_BCS_DecodeDataContinued: c_uint = 0xFF;
9119/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_barspacedata?language=objc)
9120pub const kHIDUsage_BCS_BarSpaceData: c_uint = 0x100;
9121/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_scannerdataaccuracy?language=objc)
9122pub const kHIDUsage_BCS_ScannerDataAccuracy: c_uint = 0x101;
9123/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_rawdatapolarity?language=objc)
9124pub const kHIDUsage_BCS_RawDataPolarity: c_uint = 0x102;
9125/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_polarityinvertedbarcode?language=objc)
9126pub const kHIDUsage_BCS_PolarityInvertedBarCode: c_uint = 0x103;
9127/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_polaritynormalbarcode?language=objc)
9128pub const kHIDUsage_BCS_PolarityNormalBarCode: c_uint = 0x104;
9129/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_minimumlengthtodecode?language=objc)
9130pub const kHIDUsage_BCS_MinimumLengthToDecode: c_uint = 0x106;
9131/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_maximumlengthtodecode?language=objc)
9132pub const kHIDUsage_BCS_MaximumLengthToDecode: c_uint = 0x107;
9133/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_firstdiscretelengthtodecode?language=objc)
9134pub const kHIDUsage_BCS_FirstDiscreteLengthToDecode: c_uint = 0x108;
9135/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_seconddiscretelengthtodecode?language=objc)
9136pub const kHIDUsage_BCS_SecondDiscreteLengthToDecode: c_uint = 0x109;
9137/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_datalengthmethod?language=objc)
9138pub const kHIDUsage_BCS_DataLengthMethod: c_uint = 0x10A;
9139/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_dlmethodreadany?language=objc)
9140pub const kHIDUsage_BCS_DLMethodReadAny: c_uint = 0x10B;
9141/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_dlmethodcheckinrange?language=objc)
9142pub const kHIDUsage_BCS_DLMethodCheckInRange: c_uint = 0x10C;
9143/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_dlmethodcheckfordiscrete?language=objc)
9144pub const kHIDUsage_BCS_DLMethodCheckForDiscrete: c_uint = 0x10D;
9145/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_azteccode?language=objc)
9146pub const kHIDUsage_BCS_AztecCode: c_uint = 0x110;
9147/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_bc412?language=objc)
9148pub const kHIDUsage_BCS_BC412: c_uint = 0x111;
9149/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_channelcode?language=objc)
9150pub const kHIDUsage_BCS_ChannelCode: c_uint = 0x112;
9151/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_code16?language=objc)
9152pub const kHIDUsage_BCS_Code16: c_uint = 0x113;
9153/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_code32?language=objc)
9154pub const kHIDUsage_BCS_Code32: c_uint = 0x114;
9155/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_code49?language=objc)
9156pub const kHIDUsage_BCS_Code49: c_uint = 0x115;
9157/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_codeone?language=objc)
9158pub const kHIDUsage_BCS_CodeOne: c_uint = 0x116;
9159/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_colorcode?language=objc)
9160pub const kHIDUsage_BCS_Colorcode: c_uint = 0x117;
9161/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_datamatrix?language=objc)
9162pub const kHIDUsage_BCS_DataMatrix: c_uint = 0x118;
9163/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_maxicode?language=objc)
9164pub const kHIDUsage_BCS_MaxiCode: c_uint = 0x119;
9165/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_micropdf?language=objc)
9166pub const kHIDUsage_BCS_MicroPDF: c_uint = 0x11A;
9167/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_pdf_417?language=objc)
9168pub const kHIDUsage_BCS_PDF_417: c_uint = 0x11B;
9169/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_posicode?language=objc)
9170pub const kHIDUsage_BCS_PosiCode: c_uint = 0x11C;
9171/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_qrcode?language=objc)
9172pub const kHIDUsage_BCS_QRCode: c_uint = 0x11D;
9173/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_supercode?language=objc)
9174pub const kHIDUsage_BCS_SuperCode: c_uint = 0x11E;
9175/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_ultracode?language=objc)
9176pub const kHIDUsage_BCS_UltraCode: c_uint = 0x11F;
9177/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_usb_5_slugcode?language=objc)
9178pub const kHIDUsage_BCS_USB_5_SlugCode: c_uint = 0x120;
9179/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_bcs_vericode?language=objc)
9180pub const kHIDUsage_BCS_VeriCode: c_uint = 0x121;
9181
9182/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_undefined?language=objc)
9183pub const kHIDUsage_WD_Undefined: c_uint = 0x00;
9184/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weighingdevice?language=objc)
9185pub const kHIDUsage_WD_WeighingDevice: c_uint = 0x01;
9186/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaledevice?language=objc)
9187pub const kHIDUsage_WD_ScaleScaleDevice: c_uint = 0x20;
9188/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassimetriccl?language=objc)
9189pub const kHIDUsage_WD_ScaleScaleClassIMetricCL: c_uint = 0x21;
9190/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassimetric?language=objc)
9191pub const kHIDUsage_WD_ScaleScaleClassIMetric: c_uint = 0x22;
9192/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassiimetric?language=objc)
9193pub const kHIDUsage_WD_ScaleScaleClassIIMetric: c_uint = 0x23;
9194/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassiiimetric?language=objc)
9195pub const kHIDUsage_WD_ScaleScaleClassIIIMetric: c_uint = 0x24;
9196/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassiiilmetric?language=objc)
9197pub const kHIDUsage_WD_ScaleScaleClassIIILMetric: c_uint = 0x25;
9198/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassivmetric?language=objc)
9199pub const kHIDUsage_WD_ScaleScaleClassIVMetric: c_uint = 0x26;
9200/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassiiienglish?language=objc)
9201pub const kHIDUsage_WD_ScaleScaleClassIIIEnglish: c_uint = 0x27;
9202/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassiiilenglish?language=objc)
9203pub const kHIDUsage_WD_ScaleScaleClassIIILEnglish: c_uint = 0x28;
9204/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassivenglish?language=objc)
9205pub const kHIDUsage_WD_ScaleScaleClassIVEnglish: c_uint = 0x29;
9206/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalescaleclassgeneric?language=objc)
9207pub const kHIDUsage_WD_ScaleScaleClassGeneric: c_uint = 0x2A;
9208/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scaleatrributereport?language=objc)
9209pub const kHIDUsage_WD_ScaleAtrributeReport: c_uint = 0x30;
9210/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalecontrolreport?language=objc)
9211pub const kHIDUsage_WD_ScaleControlReport: c_uint = 0x31;
9212/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scaledatareport?language=objc)
9213pub const kHIDUsage_WD_ScaleDataReport: c_uint = 0x32;
9214/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatusreport?language=objc)
9215pub const kHIDUsage_WD_ScaleStatusReport: c_uint = 0x33;
9216/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scaleweightlimitreport?language=objc)
9217pub const kHIDUsage_WD_ScaleWeightLimitReport: c_uint = 0x34;
9218/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatisticsreport?language=objc)
9219pub const kHIDUsage_WD_ScaleStatisticsReport: c_uint = 0x35;
9220/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_dataweight?language=objc)
9221pub const kHIDUsage_WD_DataWeight: c_uint = 0x40;
9222/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_datascaling?language=objc)
9223pub const kHIDUsage_WD_DataScaling: c_uint = 0x41;
9224/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunit?language=objc)
9225pub const kHIDUsage_WD_WeightUnit: c_uint = 0x50;
9226/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitmilligram?language=objc)
9227pub const kHIDUsage_WD_WeightUnitMilligram: c_uint = 0x51;
9228/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitgram?language=objc)
9229pub const kHIDUsage_WD_WeightUnitGram: c_uint = 0x52;
9230/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitkilogram?language=objc)
9231pub const kHIDUsage_WD_WeightUnitKilogram: c_uint = 0x53;
9232/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitcarats?language=objc)
9233pub const kHIDUsage_WD_WeightUnitCarats: c_uint = 0x54;
9234/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunittaels?language=objc)
9235pub const kHIDUsage_WD_WeightUnitTaels: c_uint = 0x55;
9236/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitgrains?language=objc)
9237pub const kHIDUsage_WD_WeightUnitGrains: c_uint = 0x56;
9238/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitpennyweights?language=objc)
9239pub const kHIDUsage_WD_WeightUnitPennyweights: c_uint = 0x57;
9240/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitmetricton?language=objc)
9241pub const kHIDUsage_WD_WeightUnitMetricTon: c_uint = 0x58;
9242/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitavoirton?language=objc)
9243pub const kHIDUsage_WD_WeightUnitAvoirTon: c_uint = 0x59;
9244/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunittroyounce?language=objc)
9245pub const kHIDUsage_WD_WeightUnitTroyOunce: c_uint = 0x5A;
9246/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitounce?language=objc)
9247pub const kHIDUsage_WD_WeightUnitOunce: c_uint = 0x5B;
9248/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_weightunitpound?language=objc)
9249pub const kHIDUsage_WD_WeightUnitPound: c_uint = 0x5C;
9250/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_calibrationcount?language=objc)
9251pub const kHIDUsage_WD_CalibrationCount: c_uint = 0x60;
9252/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_rezerocount?language=objc)
9253pub const kHIDUsage_WD_RezeroCount: c_uint = 0x61;
9254/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatus?language=objc)
9255pub const kHIDUsage_WD_ScaleStatus: c_uint = 0x70;
9256/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatusfault?language=objc)
9257pub const kHIDUsage_WD_ScaleStatusFault: c_uint = 0x71;
9258/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatusstableatzero?language=objc)
9259pub const kHIDUsage_WD_ScaleStatusStableAtZero: c_uint = 0x72;
9260/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatusinmotion?language=objc)
9261pub const kHIDUsage_WD_ScaleStatusInMotion: c_uint = 0x73;
9262/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatusweightstable?language=objc)
9263pub const kHIDUsage_WD_ScaleStatusWeightStable: c_uint = 0x74;
9264/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatusunderzero?language=objc)
9265pub const kHIDUsage_WD_ScaleStatusUnderZero: c_uint = 0x75;
9266/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatusoverweightlimit?language=objc)
9267pub const kHIDUsage_WD_ScaleStatusOverWeightLimit: c_uint = 0x76;
9268/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatusrequirescalibration?language=objc)
9269pub const kHIDUsage_WD_ScaleStatusRequiresCalibration: c_uint = 0x77;
9270/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_scalestatusrequiresrezeroing?language=objc)
9271pub const kHIDUsage_WD_ScaleStatusRequiresRezeroing: c_uint = 0x78;
9272/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_zeroscale?language=objc)
9273pub const kHIDUsage_WD_ZeroScale: c_uint = 0x80;
9274/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_wd_enforcedzeroreturn?language=objc)
9275pub const kHIDUsage_WD_EnforcedZeroReturn: c_uint = 0x81;
9276
9277/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_undefined?language=objc)
9278pub const kHIDUsage_MSR_Undefined: c_uint = 0x00;
9279/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_devicereadonly?language=objc)
9280pub const kHIDUsage_MSR_DeviceReadOnly: c_uint = 0x01;
9281/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_track1length?language=objc)
9282pub const kHIDUsage_MSR_Track1Length: c_uint = 0x11;
9283/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_track2length?language=objc)
9284pub const kHIDUsage_MSR_Track2Length: c_uint = 0x12;
9285/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_track3length?language=objc)
9286pub const kHIDUsage_MSR_Track3Length: c_uint = 0x13;
9287/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_trackjislength?language=objc)
9288pub const kHIDUsage_MSR_TrackJISLength: c_uint = 0x14;
9289/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_trackdata?language=objc)
9290pub const kHIDUsage_MSR_TrackData: c_uint = 0x20;
9291/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_track1data?language=objc)
9292pub const kHIDUsage_MSR_Track1Data: c_uint = 0x21;
9293/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_track2data?language=objc)
9294pub const kHIDUsage_MSR_Track2Data: c_uint = 0x22;
9295/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_track3data?language=objc)
9296pub const kHIDUsage_MSR_Track3Data: c_uint = 0x23;
9297/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_msr_trackjisdata?language=objc)
9298pub const kHIDUsage_MSR_TrackJISData: c_uint = 0x24;
9299
9300/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_cc_undefined?language=objc)
9301pub const kHIDUsage_CC_Undefined: c_uint = 0x00;
9302/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_cc_autofocus?language=objc)
9303pub const kHIDUsage_CC_Autofocus: c_uint = 0x20;
9304/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_cc_shutter?language=objc)
9305pub const kHIDUsage_CC_Shutter: c_uint = 0x21;
9306
9307/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_fido_undefined?language=objc)
9308pub const kHIDUsage_FIDO_Undefined: c_uint = 0x00;
9309/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_fido_u2fdevice?language=objc)
9310pub const kHIDUsage_FIDO_U2FDevice: c_uint = 0x01;
9311/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_fido_inputdata?language=objc)
9312pub const kHIDUsage_FIDO_InputData: c_uint = 0x20;
9313/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidusage_fido_outputdata?language=objc)
9314pub const kHIDUsage_FIDO_OutputData: c_uint = 0x21;
9315
9316unsafe impl ConcreteType for IOHIDValue {
9317    /// Returns the type identifier of all IOHIDValue instances.
9318    #[doc(alias = "IOHIDValueGetTypeID")]
9319    #[inline]
9320    fn type_id() -> CFTypeID {
9321        extern "C-unwind" {
9322            fn IOHIDValueGetTypeID() -> CFTypeID;
9323        }
9324        unsafe { IOHIDValueGetTypeID() }
9325    }
9326}
9327
9328impl IOHIDValue {
9329    /// Creates a new element value using an integer value.
9330    ///
9331    /// IOHIDValueGetTimeStamp should represent OS AbsoluteTime, not CFAbsoluteTime.
9332    /// To obtain the OS AbsoluteTime, please reference the APIs declared in
9333    /// <mach
9334    /// /mach_time.h>
9335    ///
9336    /// Parameter `allocator`: The CFAllocator which should be used to allocate memory for the value.  This
9337    /// parameter may be NULL in which case the current default CFAllocator is used. If this
9338    /// reference is not a valid CFAllocator, the behavior is undefined.
9339    ///
9340    /// Parameter `element`: IOHIDElementRef associated with this value.
9341    ///
9342    /// Parameter `timeStamp`: OS absolute time timestamp for this value.
9343    ///
9344    /// Parameter `value`: Integer value to be copied to this object.
9345    ///
9346    /// Returns: Returns a reference to a new IOHIDValueRef.
9347    #[doc(alias = "IOHIDValueCreateWithIntegerValue")]
9348    #[inline]
9349    pub unsafe fn with_integer_value(
9350        allocator: Option<&CFAllocator>,
9351        element: &IOHIDElement,
9352        time_stamp: u64,
9353        value: CFIndex,
9354    ) -> CFRetained<IOHIDValue> {
9355        extern "C-unwind" {
9356            fn IOHIDValueCreateWithIntegerValue(
9357                allocator: Option<&CFAllocator>,
9358                element: &IOHIDElement,
9359                time_stamp: u64,
9360                value: CFIndex,
9361            ) -> Option<NonNull<IOHIDValue>>;
9362        }
9363        let ret =
9364            unsafe { IOHIDValueCreateWithIntegerValue(allocator, element, time_stamp, value) };
9365        let ret =
9366            ret.expect("function was marked as returning non-null, but actually returned NULL");
9367        unsafe { CFRetained::from_raw(ret) }
9368    }
9369
9370    /// Creates a new element value using byte data.
9371    ///
9372    /// IOHIDValueGetTimeStamp should represent OS AbsoluteTime, not CFAbsoluteTime.
9373    /// To obtain the OS AbsoluteTime, please reference the APIs declared in
9374    /// <mach
9375    /// /mach_time.h>
9376    ///
9377    /// Parameter `allocator`: The CFAllocator which should be used to allocate memory for the value.  This
9378    /// parameter may be NULL in which case the current default CFAllocator is used. If this
9379    /// reference is not a valid CFAllocator, the behavior is undefined.
9380    ///
9381    /// Parameter `element`: IOHIDElementRef associated with this value.
9382    ///
9383    /// Parameter `timeStamp`: OS absolute time timestamp for this value.
9384    ///
9385    /// Parameter `bytes`: Pointer to a buffer of uint8_t to be copied to this object.
9386    ///
9387    /// Parameter `length`: Number of bytes in the passed buffer.
9388    ///
9389    /// Returns: Returns a reference to a new IOHIDValueRef.
9390    #[doc(alias = "IOHIDValueCreateWithBytes")]
9391    #[inline]
9392    pub unsafe fn with_bytes(
9393        allocator: Option<&CFAllocator>,
9394        element: &IOHIDElement,
9395        time_stamp: u64,
9396        bytes: NonNull<u8>,
9397        length: CFIndex,
9398    ) -> Option<CFRetained<IOHIDValue>> {
9399        extern "C-unwind" {
9400            fn IOHIDValueCreateWithBytes(
9401                allocator: Option<&CFAllocator>,
9402                element: &IOHIDElement,
9403                time_stamp: u64,
9404                bytes: NonNull<u8>,
9405                length: CFIndex,
9406            ) -> Option<NonNull<IOHIDValue>>;
9407        }
9408        let ret =
9409            unsafe { IOHIDValueCreateWithBytes(allocator, element, time_stamp, bytes, length) };
9410        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
9411    }
9412
9413    /// Creates a new element value using byte data without performing a copy.
9414    ///
9415    /// The timestamp value passed should represent OS AbsoluteTime, not CFAbsoluteTime.
9416    /// To obtain the OS AbsoluteTime, please reference the APIs declared in
9417    /// <mach
9418    /// /mach_time.h>
9419    ///
9420    /// Parameter `allocator`: The CFAllocator which should be used to allocate memory for the value.  This
9421    /// parameter may be NULL in which case the current default CFAllocator is used. If this
9422    /// reference is not a valid CFAllocator, the behavior is undefined.
9423    ///
9424    /// Parameter `element`: IOHIDElementRef associated with this value.
9425    ///
9426    /// Parameter `timeStamp`: OS absolute time timestamp for this value.
9427    ///
9428    /// Parameter `bytes`: Pointer to a buffer of uint8_t to be referenced by this object.
9429    ///
9430    /// Parameter `length`: Number of bytes in the passed buffer.
9431    ///
9432    /// Returns: Returns a reference to a new IOHIDValueRef.
9433    #[doc(alias = "IOHIDValueCreateWithBytesNoCopy")]
9434    #[inline]
9435    pub unsafe fn with_bytes_no_copy(
9436        allocator: Option<&CFAllocator>,
9437        element: &IOHIDElement,
9438        time_stamp: u64,
9439        bytes: NonNull<u8>,
9440        length: CFIndex,
9441    ) -> Option<CFRetained<IOHIDValue>> {
9442        extern "C-unwind" {
9443            fn IOHIDValueCreateWithBytesNoCopy(
9444                allocator: Option<&CFAllocator>,
9445                element: &IOHIDElement,
9446                time_stamp: u64,
9447                bytes: NonNull<u8>,
9448                length: CFIndex,
9449            ) -> Option<NonNull<IOHIDValue>>;
9450        }
9451        let ret = unsafe {
9452            IOHIDValueCreateWithBytesNoCopy(allocator, element, time_stamp, bytes, length)
9453        };
9454        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
9455    }
9456
9457    /// Returns the element value associated with this IOHIDValueRef.
9458    ///
9459    /// Parameter `value`: The value to be queried. If this parameter is not a valid IOHIDValueRef, the behavior is undefined.
9460    ///
9461    /// Returns: Returns a IOHIDElementRef referenced by this value.
9462    #[doc(alias = "IOHIDValueGetElement")]
9463    #[inline]
9464    pub unsafe fn element(self: &IOHIDValue) -> CFRetained<IOHIDElement> {
9465        extern "C-unwind" {
9466            fn IOHIDValueGetElement(value: &IOHIDValue) -> Option<NonNull<IOHIDElement>>;
9467        }
9468        let ret = unsafe { IOHIDValueGetElement(self) };
9469        let ret =
9470            ret.expect("function was marked as returning non-null, but actually returned NULL");
9471        unsafe { CFRetained::retain(ret) }
9472    }
9473
9474    /// Returns the timestamp value contained in this IOHIDValueRef.
9475    ///
9476    /// The timestamp value returned represents OS AbsoluteTime, not CFAbsoluteTime.
9477    ///
9478    /// Parameter `value`: The value to be queried. If this parameter is not a valid IOHIDValueRef, the behavior is undefined.
9479    ///
9480    /// Returns: Returns a uint64_t representing the timestamp of this value.
9481    #[doc(alias = "IOHIDValueGetTimeStamp")]
9482    #[inline]
9483    pub unsafe fn time_stamp(self: &IOHIDValue) -> u64 {
9484        extern "C-unwind" {
9485            fn IOHIDValueGetTimeStamp(value: &IOHIDValue) -> u64;
9486        }
9487        unsafe { IOHIDValueGetTimeStamp(self) }
9488    }
9489
9490    /// Returns the size, in bytes, of the value contained in this IOHIDValueRef.
9491    ///
9492    /// Parameter `value`: The value to be queried. If this parameter is not a valid IOHIDValueRef, the behavior is undefined.
9493    ///
9494    /// Returns: Returns length of the value.
9495    #[doc(alias = "IOHIDValueGetLength")]
9496    #[inline]
9497    pub unsafe fn length(self: &IOHIDValue) -> CFIndex {
9498        extern "C-unwind" {
9499            fn IOHIDValueGetLength(value: &IOHIDValue) -> CFIndex;
9500        }
9501        unsafe { IOHIDValueGetLength(self) }
9502    }
9503
9504    /// Returns a byte pointer to the value contained in this IOHIDValueRef.
9505    ///
9506    /// Parameter `value`: The value to be queried. If this parameter is not a valid IOHIDValueRef, the behavior is undefined.
9507    ///
9508    /// Returns: Returns a pointer to the value.
9509    #[doc(alias = "IOHIDValueGetBytePtr")]
9510    #[inline]
9511    pub unsafe fn byte_ptr(self: &IOHIDValue) -> NonNull<u8> {
9512        extern "C-unwind" {
9513            fn IOHIDValueGetBytePtr(value: &IOHIDValue) -> Option<NonNull<u8>>;
9514        }
9515        let ret = unsafe { IOHIDValueGetBytePtr(self) };
9516        ret.expect("function was marked as returning non-null, but actually returned NULL")
9517    }
9518
9519    /// Returns an integer representaion of the value contained in this IOHIDValueRef.
9520    ///
9521    /// The value is based on the logical element value contained in the report returned by the device.
9522    ///
9523    /// Parameter `value`: The value to be queried. If this parameter is not a valid IOHIDValueRef, the behavior is undefined.
9524    ///
9525    /// Returns: Returns an integer representation of the value.
9526    #[doc(alias = "IOHIDValueGetIntegerValue")]
9527    #[inline]
9528    pub unsafe fn integer_value(self: &IOHIDValue) -> CFIndex {
9529        extern "C-unwind" {
9530            fn IOHIDValueGetIntegerValue(value: &IOHIDValue) -> CFIndex;
9531        }
9532        unsafe { IOHIDValueGetIntegerValue(self) }
9533    }
9534
9535    /// Returns an scaled representaion of the value contained in this IOHIDValueRef based on the scale type.
9536    ///
9537    /// The scaled value is based on the range described by the scale type's min and max, such that:
9538    /// <br>
9539    /// scaledValue = ((value - min) * (scaledMax - scaledMin) / (max - min)) + scaledMin
9540    /// <br>
9541    /// <b>
9542    /// Note:
9543    /// </b>
9544    /// <br>
9545    /// There are currently two types of scaling that can be applied:
9546    /// <ul>
9547    /// <li>
9548    /// <b>
9549    /// kIOHIDValueScaleTypePhysical
9550    /// </b>
9551    /// : Scales element value using the physical bounds of the device such that
9552    /// <b>
9553    /// scaledMin = physicalMin
9554    /// </b>
9555    /// and
9556    /// <b>
9557    /// scaledMax = physicalMax
9558    /// </b>
9559    /// .
9560    /// <li>
9561    /// <b>
9562    /// kIOHIDValueScaleTypeCalibrated
9563    /// </b>
9564    /// : Scales element value such that
9565    /// <b>
9566    /// scaledMin = -1
9567    /// </b>
9568    /// and
9569    /// <b>
9570    /// scaledMax = 1
9571    /// </b>
9572    /// .  This value will also take into account the calibration properties associated with this element.
9573    /// </ul>
9574    ///
9575    /// Parameter `value`: The value to be queried. If this parameter is not a valid IOHIDValueRef, the behavior is undefined.
9576    ///
9577    /// Parameter `type`: The type of scaling to be performed.
9578    ///
9579    /// Returns: Returns an scaled floating point representation of the value.
9580    #[doc(alias = "IOHIDValueGetScaledValue")]
9581    #[inline]
9582    pub unsafe fn scaled_value(self: &IOHIDValue, r#type: IOHIDValueScaleType) -> c_double {
9583        extern "C-unwind" {
9584            fn IOHIDValueGetScaledValue(
9585                value: &IOHIDValue,
9586                r#type: IOHIDValueScaleType,
9587            ) -> c_double;
9588        }
9589        unsafe { IOHIDValueGetScaledValue(self, r#type) }
9590    }
9591}
9592
9593/// Various options that can be supplied to IOHIDTransaction functions.
9594///
9595/// explicit enough.
9596///
9597/// IOHIDDeviceRef being passed in. The expectation is that transaction will only exist during
9598/// the lifetime of the IOHIDDeviceRef object.
9599///
9600/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidtransactionoptions?language=objc)
9601// NS_OPTIONS
9602#[repr(transparent)]
9603#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
9604pub struct IOHIDTransactionOptions(pub u32);
9605bitflags::bitflags! {
9606    impl IOHIDTransactionOptions: u32 {
9607        #[doc(alias = "kIOHIDTransactionOptionsNone")]
9608        const None = 0x0;
9609        #[doc(alias = "kIOHIDTransactionOptionsWeakDevice")]
9610        const WeakDevice = 0x1;
9611    }
9612}
9613
9614#[cfg(feature = "objc2")]
9615unsafe impl Encode for IOHIDTransactionOptions {
9616    const ENCODING: Encoding = u32::ENCODING;
9617}
9618
9619#[cfg(feature = "objc2")]
9620unsafe impl RefEncode for IOHIDTransactionOptions {
9621    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
9622}
9623
9624/// This is the type of a reference to the IOHIDTransaction.
9625///
9626/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidtransaction?language=objc)
9627#[repr(C)]
9628pub struct IOHIDTransaction {
9629    inner: [u8; 0],
9630    _p: UnsafeCell<PhantomData<(*const UnsafeCell<()>, PhantomPinned)>>,
9631}
9632
9633cf_type!(
9634    unsafe impl IOHIDTransaction {}
9635);
9636#[cfg(feature = "objc2")]
9637cf_objc2_type!(
9638    unsafe impl RefEncode<"__IOHIDTransaction"> for IOHIDTransaction {}
9639);
9640
9641unsafe impl ConcreteType for IOHIDTransaction {
9642    /// Returns the type identifier of all IOHIDTransaction instances.
9643    #[doc(alias = "IOHIDTransactionGetTypeID")]
9644    #[inline]
9645    fn type_id() -> CFTypeID {
9646        extern "C-unwind" {
9647            fn IOHIDTransactionGetTypeID() -> CFTypeID;
9648        }
9649        unsafe { IOHIDTransactionGetTypeID() }
9650    }
9651}
9652
9653impl IOHIDTransaction {
9654    /// Creates an IOHIDTransaction object for the specified device.
9655    ///
9656    /// IOHIDTransaction objects can be used to either send or receive
9657    /// multiple element values.  As such the direction used should
9658    /// represent they type of objects added to the transaction.
9659    ///
9660    /// Parameter `allocator`: Allocator to be used during creation.
9661    ///
9662    /// Parameter `device`: IOHIDDevice object
9663    ///
9664    /// Parameter `direction`: The direction, either in or out, for the transaction.
9665    ///
9666    /// Parameter `options`: Reserved for future use.
9667    ///
9668    /// Returns: Returns a new IOHIDTransactionRef.
9669    #[doc(alias = "IOHIDTransactionCreate")]
9670    #[inline]
9671    pub unsafe fn new(
9672        allocator: Option<&CFAllocator>,
9673        device: &IOHIDDevice,
9674        direction: IOHIDTransactionDirectionType,
9675        options: IOOptionBits,
9676    ) -> Option<CFRetained<IOHIDTransaction>> {
9677        extern "C-unwind" {
9678            fn IOHIDTransactionCreate(
9679                allocator: Option<&CFAllocator>,
9680                device: &IOHIDDevice,
9681                direction: IOHIDTransactionDirectionType,
9682                options: IOOptionBits,
9683            ) -> Option<NonNull<IOHIDTransaction>>;
9684        }
9685        let ret = unsafe { IOHIDTransactionCreate(allocator, device, direction, options) };
9686        ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
9687    }
9688
9689    /// Obtain the device associated with the transaction.
9690    ///
9691    /// Parameter `transaction`: IOHIDTransaction to be queried.
9692    ///
9693    /// Returns: Returns the a reference to the device.
9694    #[doc(alias = "IOHIDTransactionGetDevice")]
9695    #[inline]
9696    pub unsafe fn device(self: &IOHIDTransaction) -> CFRetained<IOHIDDevice> {
9697        extern "C-unwind" {
9698            fn IOHIDTransactionGetDevice(
9699                transaction: &IOHIDTransaction,
9700            ) -> Option<NonNull<IOHIDDevice>>;
9701        }
9702        let ret = unsafe { IOHIDTransactionGetDevice(self) };
9703        let ret =
9704            ret.expect("function was marked as returning non-null, but actually returned NULL");
9705        unsafe { CFRetained::retain(ret) }
9706    }
9707
9708    /// Obtain the direction of the transaction.
9709    ///
9710    /// Parameter `transaction`: IOHIDTransaction to be queried.
9711    ///
9712    /// Returns: Returns the transaction direction.
9713    #[doc(alias = "IOHIDTransactionGetDirection")]
9714    #[inline]
9715    pub unsafe fn direction(self: &IOHIDTransaction) -> IOHIDTransactionDirectionType {
9716        extern "C-unwind" {
9717            fn IOHIDTransactionGetDirection(
9718                transaction: &IOHIDTransaction,
9719            ) -> IOHIDTransactionDirectionType;
9720        }
9721        unsafe { IOHIDTransactionGetDirection(self) }
9722    }
9723
9724    /// Sets the direction of the transaction
9725    ///
9726    /// This method is useful for manipulating bi-direction (feature)
9727    /// elements such that you can set or get element values without
9728    /// creating an additional transaction object.
9729    ///
9730    /// Parameter `transaction`: IOHIDTransaction object to be modified.
9731    ///
9732    /// Parameter `direction`: The new transaction direction.
9733    #[doc(alias = "IOHIDTransactionSetDirection")]
9734    #[inline]
9735    pub unsafe fn set_direction(self: &IOHIDTransaction, direction: IOHIDTransactionDirectionType) {
9736        extern "C-unwind" {
9737            fn IOHIDTransactionSetDirection(
9738                transaction: &IOHIDTransaction,
9739                direction: IOHIDTransactionDirectionType,
9740            );
9741        }
9742        unsafe { IOHIDTransactionSetDirection(self, direction) }
9743    }
9744
9745    /// Adds an element to the transaction
9746    ///
9747    /// To minimize device traffic it is important to add elements that
9748    /// share a common report type and report id.
9749    ///
9750    /// Parameter `transaction`: IOHIDTransaction object to be modified.
9751    ///
9752    /// Parameter `element`: Element to be added to the transaction.
9753    #[doc(alias = "IOHIDTransactionAddElement")]
9754    #[inline]
9755    pub unsafe fn add_element(self: &IOHIDTransaction, element: &IOHIDElement) {
9756        extern "C-unwind" {
9757            fn IOHIDTransactionAddElement(transaction: &IOHIDTransaction, element: &IOHIDElement);
9758        }
9759        unsafe { IOHIDTransactionAddElement(self, element) }
9760    }
9761
9762    /// Removes an element to the transaction
9763    ///
9764    /// Parameter `transaction`: IOHIDTransaction object to be modified.
9765    ///
9766    /// Parameter `element`: Element to be removed to the transaction.
9767    #[doc(alias = "IOHIDTransactionRemoveElement")]
9768    #[inline]
9769    pub unsafe fn remove_element(self: &IOHIDTransaction, element: &IOHIDElement) {
9770        extern "C-unwind" {
9771            fn IOHIDTransactionRemoveElement(
9772                transaction: &IOHIDTransaction,
9773                element: &IOHIDElement,
9774            );
9775        }
9776        unsafe { IOHIDTransactionRemoveElement(self, element) }
9777    }
9778
9779    /// Queries the transaction to determine if elemement has been added.
9780    ///
9781    /// Parameter `transaction`: IOHIDTransaction object to be queried.
9782    ///
9783    /// Parameter `element`: Element to be queried.
9784    ///
9785    /// Returns: Returns true or false depending if element is present.
9786    #[doc(alias = "IOHIDTransactionContainsElement")]
9787    #[inline]
9788    pub unsafe fn contains_element(self: &IOHIDTransaction, element: &IOHIDElement) -> bool {
9789        extern "C-unwind" {
9790            fn IOHIDTransactionContainsElement(
9791                transaction: &IOHIDTransaction,
9792                element: &IOHIDElement,
9793            ) -> Boolean;
9794        }
9795        let ret = unsafe { IOHIDTransactionContainsElement(self, element) };
9796        ret != 0
9797    }
9798
9799    /// Schedules transaction with run loop.
9800    ///
9801    /// Formally associates transaction with client's run loop.
9802    /// Scheduling this transaction with the run loop is necessary
9803    /// before making use of any asynchronous APIs.
9804    ///
9805    /// Parameter `transaction`: IOHIDTransaction object to be modified.
9806    ///
9807    /// Parameter `runLoop`: RunLoop to be used when scheduling any asynchronous
9808    /// activity.
9809    ///
9810    /// Parameter `runLoopMode`: Run loop mode to be used when scheduling any
9811    /// asynchronous activity.
9812    #[doc(alias = "IOHIDTransactionScheduleWithRunLoop")]
9813    #[inline]
9814    pub unsafe fn schedule_with_run_loop(
9815        self: &IOHIDTransaction,
9816        run_loop: &CFRunLoop,
9817        run_loop_mode: &CFString,
9818    ) {
9819        extern "C-unwind" {
9820            fn IOHIDTransactionScheduleWithRunLoop(
9821                transaction: &IOHIDTransaction,
9822                run_loop: &CFRunLoop,
9823                run_loop_mode: &CFString,
9824            );
9825        }
9826        unsafe { IOHIDTransactionScheduleWithRunLoop(self, run_loop, run_loop_mode) }
9827    }
9828
9829    /// Unschedules transaction with run loop.
9830    ///
9831    /// Formally disassociates transaction with client's run loop.
9832    ///
9833    /// Parameter `transaction`: IOHIDTransaction object to be modified.
9834    ///
9835    /// Parameter `runLoop`: RunLoop to be used when scheduling any asynchronous
9836    /// activity.
9837    ///
9838    /// Parameter `runLoopMode`: Run loop mode to be used when scheduling any
9839    /// asynchronous activity.
9840    #[doc(alias = "IOHIDTransactionUnscheduleFromRunLoop")]
9841    #[inline]
9842    pub unsafe fn unschedule_from_run_loop(
9843        self: &IOHIDTransaction,
9844        run_loop: &CFRunLoop,
9845        run_loop_mode: &CFString,
9846    ) {
9847        extern "C-unwind" {
9848            fn IOHIDTransactionUnscheduleFromRunLoop(
9849                transaction: &IOHIDTransaction,
9850                run_loop: &CFRunLoop,
9851                run_loop_mode: &CFString,
9852            );
9853        }
9854        unsafe { IOHIDTransactionUnscheduleFromRunLoop(self, run_loop, run_loop_mode) }
9855    }
9856
9857    /// Sets the value for a transaction element.
9858    ///
9859    /// The value set is pended until the transaction is committed and
9860    /// is only used if the transaction direction is
9861    /// kIOHIDTransactionDirectionTypeOutput.  Use the
9862    /// kIOHIDTransactionOptionDefaultOutputValue option to set the
9863    /// default element value.
9864    ///
9865    /// Parameter `transaction`: IOHIDTransaction object to be modified.
9866    ///
9867    /// Parameter `element`: Element to be modified after a commit.
9868    ///
9869    /// Parameter `value`: Value to be set for the given element.
9870    ///
9871    /// Parameter `options`: See IOHIDTransactionOption.
9872    #[doc(alias = "IOHIDTransactionSetValue")]
9873    #[inline]
9874    pub unsafe fn set_value(
9875        self: &IOHIDTransaction,
9876        element: &IOHIDElement,
9877        value: &IOHIDValue,
9878        options: IOOptionBits,
9879    ) {
9880        extern "C-unwind" {
9881            fn IOHIDTransactionSetValue(
9882                transaction: &IOHIDTransaction,
9883                element: &IOHIDElement,
9884                value: &IOHIDValue,
9885                options: IOOptionBits,
9886            );
9887        }
9888        unsafe { IOHIDTransactionSetValue(self, element, value, options) }
9889    }
9890
9891    /// Obtains the value for a transaction element.
9892    ///
9893    /// If the transaction direction is
9894    /// kIOHIDTransactionDirectionTypeInput the value represents what
9895    /// was obtained from the device from the transaction.  Otherwise,
9896    /// if the transaction direction is
9897    /// kIOHIDTransactionDirectionTypeOutput the value represents the
9898    /// pending value to be sent to the device.  Use the
9899    /// kIOHIDTransactionOptionDefaultOutputValue option to get the
9900    /// default element value.
9901    ///
9902    /// Parameter `transaction`: IOHIDTransaction object to be queried.
9903    ///
9904    /// Parameter `element`: Element to be queried.
9905    ///
9906    /// Parameter `options`: See IOHIDTransactionOption.
9907    ///
9908    /// Returns: Returns IOHIDValueRef for the given element.
9909    #[doc(alias = "IOHIDTransactionGetValue")]
9910    #[inline]
9911    pub unsafe fn value(
9912        self: &IOHIDTransaction,
9913        element: &IOHIDElement,
9914        options: IOOptionBits,
9915    ) -> Option<CFRetained<IOHIDValue>> {
9916        extern "C-unwind" {
9917            fn IOHIDTransactionGetValue(
9918                transaction: &IOHIDTransaction,
9919                element: &IOHIDElement,
9920                options: IOOptionBits,
9921            ) -> Option<NonNull<IOHIDValue>>;
9922        }
9923        let ret = unsafe { IOHIDTransactionGetValue(self, element, options) };
9924        ret.map(|ret| unsafe { CFRetained::retain(ret) })
9925    }
9926
9927    /// Synchronously commits element transaction to the device.
9928    ///
9929    /// Parameter `transaction`: IOHIDTransaction object to be modified.
9930    ///
9931    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if
9932    /// unsuccessful.
9933    #[doc(alias = "IOHIDTransactionCommit")]
9934    #[inline]
9935    pub unsafe fn commit(self: &IOHIDTransaction) -> IOReturn {
9936        extern "C-unwind" {
9937            fn IOHIDTransactionCommit(transaction: &IOHIDTransaction) -> IOReturn;
9938        }
9939        unsafe { IOHIDTransactionCommit(self) }
9940    }
9941
9942    /// Asynchronously commits element transaction to the device.
9943    ///
9944    /// It is possible for elements from different reports
9945    /// to be present in a given transaction causing a commit to
9946    /// transcend multiple reports. Keep this in mind when setting a
9947    /// appropriate timeout.
9948    ///
9949    /// Parameter `transaction`: IOHIDTransaction object to be modified.
9950    ///
9951    /// Parameter `timeout`: Timeout in milliseconds for the transaction.
9952    ///
9953    /// Parameter `callback`: Callback of type IOHIDCallback to be used when
9954    /// transaction has been completed.  If null, this method will
9955    /// behave synchronously.
9956    ///
9957    /// Parameter `context`: Pointer to data to be passed to the callback.
9958    ///
9959    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if
9960    /// unsuccessful.
9961    #[doc(alias = "IOHIDTransactionCommitWithCallback")]
9962    #[inline]
9963    pub unsafe fn commit_with_callback(
9964        self: &IOHIDTransaction,
9965        timeout: CFTimeInterval,
9966        callback: IOHIDCallback,
9967        context: *mut c_void,
9968    ) -> IOReturn {
9969        extern "C-unwind" {
9970            fn IOHIDTransactionCommitWithCallback(
9971                transaction: &IOHIDTransaction,
9972                timeout: CFTimeInterval,
9973                callback: IOHIDCallback,
9974                context: *mut c_void,
9975            ) -> IOReturn;
9976        }
9977        unsafe { IOHIDTransactionCommitWithCallback(self, timeout, callback, context) }
9978    }
9979
9980    /// Clears element transaction values.
9981    ///
9982    /// In regards to kIOHIDTransactionDirectionTypeOutput direction,
9983    /// default element values will be preserved.
9984    ///
9985    /// Parameter `transaction`: IOHIDTransaction object to be modified.
9986    #[doc(alias = "IOHIDTransactionClear")]
9987    #[inline]
9988    pub unsafe fn clear(self: &IOHIDTransaction) {
9989        extern "C-unwind" {
9990            fn IOHIDTransactionClear(transaction: &IOHIDTransaction);
9991        }
9992        unsafe { IOHIDTransactionClear(self) }
9993    }
9994}
9995
9996/// The object you use to access HID devices from user space, returned by version 1.5 of the IOHIDFamily.
9997///
9998/// The functions listed here will work with any version of the IOHIDDeviceDeviceInterface.
9999///
10000/// <b>
10001/// Note:
10002/// </b>
10003/// Please note that methods declared in this interface follow the copy/get/set conventions.
10004///
10005/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddevicedeviceinterface?language=objc)
10006#[repr(C)]
10007#[derive(Clone, Copy, Debug, PartialEq)]
10008pub struct IOHIDDeviceDeviceInterface {
10009    pub(crate) _reserved: *mut c_void,
10010    pub QueryInterface:
10011        Option<unsafe extern "C-unwind" fn(*mut c_void, REFIID, *mut LPVOID) -> HRESULT>,
10012    pub AddRef: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
10013    pub Release: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
10014    pub open: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
10015    pub close: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
10016    pub getProperty: Option<
10017        unsafe extern "C-unwind" fn(*mut c_void, *const CFString, *mut *const CFType) -> IOReturn,
10018    >,
10019    pub setProperty: Option<
10020        unsafe extern "C-unwind" fn(*mut c_void, *const CFString, *const CFType) -> IOReturn,
10021    >,
10022    pub getAsyncEventSource:
10023        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut *const CFType) -> IOReturn>,
10024    pub copyMatchingElements: Option<
10025        unsafe extern "C-unwind" fn(
10026            *mut c_void,
10027            *const CFDictionary,
10028            *mut *const CFArray,
10029            IOOptionBits,
10030        ) -> IOReturn,
10031    >,
10032    pub setValue: Option<
10033        unsafe extern "C-unwind" fn(
10034            *mut c_void,
10035            *mut IOHIDElement,
10036            *mut IOHIDValue,
10037            u32,
10038            IOHIDValueCallback,
10039            *mut c_void,
10040            IOOptionBits,
10041        ) -> IOReturn,
10042    >,
10043    pub getValue: Option<
10044        unsafe extern "C-unwind" fn(
10045            *mut c_void,
10046            *mut IOHIDElement,
10047            *mut *mut IOHIDValue,
10048            u32,
10049            IOHIDValueCallback,
10050            *mut c_void,
10051            IOOptionBits,
10052        ) -> IOReturn,
10053    >,
10054    pub setInputReportCallback: Option<
10055        unsafe extern "C-unwind" fn(
10056            *mut c_void,
10057            *mut u8,
10058            CFIndex,
10059            IOHIDReportCallback,
10060            *mut c_void,
10061            IOOptionBits,
10062        ) -> IOReturn,
10063    >,
10064    pub setReport: Option<
10065        unsafe extern "C-unwind" fn(
10066            *mut c_void,
10067            IOHIDReportType,
10068            u32,
10069            *const u8,
10070            CFIndex,
10071            u32,
10072            IOHIDReportCallback,
10073            *mut c_void,
10074            IOOptionBits,
10075        ) -> IOReturn,
10076    >,
10077    pub getReport: Option<
10078        unsafe extern "C-unwind" fn(
10079            *mut c_void,
10080            IOHIDReportType,
10081            u32,
10082            *mut u8,
10083            *mut CFIndex,
10084            u32,
10085            IOHIDReportCallback,
10086            *mut c_void,
10087            IOOptionBits,
10088        ) -> IOReturn,
10089    >,
10090}
10091
10092#[cfg(feature = "objc2")]
10093unsafe impl Encode for IOHIDDeviceDeviceInterface {
10094    const ENCODING: Encoding = Encoding::Struct("IOHIDDeviceDeviceInterface", &[
10095        <*mut c_void>::ENCODING,
10096        <Option<unsafe extern "C-unwind" fn(*mut c_void,REFIID,*mut LPVOID,) -> HRESULT>>::ENCODING,
10097        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
10098        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
10099        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10100        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10101        <Option<unsafe extern "C-unwind" fn(*mut c_void,*const CFString,*mut *const CFType,) -> IOReturn>>::ENCODING,
10102        <Option<unsafe extern "C-unwind" fn(*mut c_void,*const CFString,*const CFType,) -> IOReturn>>::ENCODING,
10103        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *const CFType,) -> IOReturn>>::ENCODING,
10104        <Option<unsafe extern "C-unwind" fn(*mut c_void,*const CFDictionary,*mut *const CFArray,IOOptionBits,) -> IOReturn>>::ENCODING,
10105        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,*mut IOHIDValue,u32,IOHIDValueCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10106        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,*mut *mut IOHIDValue,u32,IOHIDValueCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10107        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut u8,CFIndex,IOHIDReportCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10108        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*const u8,CFIndex,u32,IOHIDReportCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10109        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*mut u8,*mut CFIndex,u32,IOHIDReportCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10110    ]);
10111}
10112
10113#[cfg(feature = "objc2")]
10114unsafe impl RefEncode for IOHIDDeviceDeviceInterface {
10115    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
10116}
10117
10118/// The object you use to access HID devices from user space, returned by version 2.1 of the IOHIDFamily.
10119///
10120/// The functions listed here include all of the functions from the IOHIDDeviceDeviceInterface.
10121///
10122/// <b>
10123/// Note:
10124/// </b>
10125/// Please note that methods declared in this interface follow the copy/get/set conventions.
10126///
10127/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddevicetimestampeddeviceinterface?language=objc)
10128#[repr(C)]
10129#[derive(Clone, Copy, Debug, PartialEq)]
10130pub struct IOHIDDeviceTimeStampedDeviceInterface {
10131    pub(crate) _reserved: *mut c_void,
10132    pub QueryInterface:
10133        Option<unsafe extern "C-unwind" fn(*mut c_void, REFIID, *mut LPVOID) -> HRESULT>,
10134    pub AddRef: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
10135    pub Release: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
10136    pub open: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
10137    pub close: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
10138    pub getProperty: Option<
10139        unsafe extern "C-unwind" fn(*mut c_void, *const CFString, *mut *const CFType) -> IOReturn,
10140    >,
10141    pub setProperty: Option<
10142        unsafe extern "C-unwind" fn(*mut c_void, *const CFString, *const CFType) -> IOReturn,
10143    >,
10144    pub getAsyncEventSource:
10145        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut *const CFType) -> IOReturn>,
10146    pub copyMatchingElements: Option<
10147        unsafe extern "C-unwind" fn(
10148            *mut c_void,
10149            *const CFDictionary,
10150            *mut *const CFArray,
10151            IOOptionBits,
10152        ) -> IOReturn,
10153    >,
10154    pub setValue: Option<
10155        unsafe extern "C-unwind" fn(
10156            *mut c_void,
10157            *mut IOHIDElement,
10158            *mut IOHIDValue,
10159            u32,
10160            IOHIDValueCallback,
10161            *mut c_void,
10162            IOOptionBits,
10163        ) -> IOReturn,
10164    >,
10165    pub getValue: Option<
10166        unsafe extern "C-unwind" fn(
10167            *mut c_void,
10168            *mut IOHIDElement,
10169            *mut *mut IOHIDValue,
10170            u32,
10171            IOHIDValueCallback,
10172            *mut c_void,
10173            IOOptionBits,
10174        ) -> IOReturn,
10175    >,
10176    pub setInputReportCallback: Option<
10177        unsafe extern "C-unwind" fn(
10178            *mut c_void,
10179            *mut u8,
10180            CFIndex,
10181            IOHIDReportCallback,
10182            *mut c_void,
10183            IOOptionBits,
10184        ) -> IOReturn,
10185    >,
10186    pub setReport: Option<
10187        unsafe extern "C-unwind" fn(
10188            *mut c_void,
10189            IOHIDReportType,
10190            u32,
10191            *const u8,
10192            CFIndex,
10193            u32,
10194            IOHIDReportCallback,
10195            *mut c_void,
10196            IOOptionBits,
10197        ) -> IOReturn,
10198    >,
10199    pub getReport: Option<
10200        unsafe extern "C-unwind" fn(
10201            *mut c_void,
10202            IOHIDReportType,
10203            u32,
10204            *mut u8,
10205            *mut CFIndex,
10206            u32,
10207            IOHIDReportCallback,
10208            *mut c_void,
10209            IOOptionBits,
10210        ) -> IOReturn,
10211    >,
10212    pub setInputReportWithTimeStampCallback: Option<
10213        unsafe extern "C-unwind" fn(
10214            *mut c_void,
10215            *mut u8,
10216            CFIndex,
10217            IOHIDReportWithTimeStampCallback,
10218            *mut c_void,
10219            IOOptionBits,
10220        ) -> IOReturn,
10221    >,
10222}
10223
10224#[cfg(feature = "objc2")]
10225unsafe impl Encode for IOHIDDeviceTimeStampedDeviceInterface {
10226    const ENCODING: Encoding = Encoding::Struct("IOHIDDeviceTimeStampedDeviceInterface", &[
10227        <*mut c_void>::ENCODING,
10228        <Option<unsafe extern "C-unwind" fn(*mut c_void,REFIID,*mut LPVOID,) -> HRESULT>>::ENCODING,
10229        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
10230        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
10231        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10232        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10233        <Option<unsafe extern "C-unwind" fn(*mut c_void,*const CFString,*mut *const CFType,) -> IOReturn>>::ENCODING,
10234        <Option<unsafe extern "C-unwind" fn(*mut c_void,*const CFString,*const CFType,) -> IOReturn>>::ENCODING,
10235        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *const CFType,) -> IOReturn>>::ENCODING,
10236        <Option<unsafe extern "C-unwind" fn(*mut c_void,*const CFDictionary,*mut *const CFArray,IOOptionBits,) -> IOReturn>>::ENCODING,
10237        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,*mut IOHIDValue,u32,IOHIDValueCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10238        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,*mut *mut IOHIDValue,u32,IOHIDValueCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10239        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut u8,CFIndex,IOHIDReportCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10240        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*const u8,CFIndex,u32,IOHIDReportCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10241        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDReportType,u32,*mut u8,*mut CFIndex,u32,IOHIDReportCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10242        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut u8,CFIndex,IOHIDReportWithTimeStampCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10243    ]);
10244}
10245
10246#[cfg(feature = "objc2")]
10247unsafe impl RefEncode for IOHIDDeviceTimeStampedDeviceInterface {
10248    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
10249}
10250
10251/// The object you use to access a HID queue from user space, returned by version 1.5 of the IOHIDFamily.
10252///
10253/// The functions listed here will work with any version of the IOHIDDeviceQueueInterface.  This behavior is useful when you
10254/// need to keep track of all values of an input element, rather than just the most recent one.
10255/// <br>
10256/// <b>
10257/// Note:
10258/// </b>
10259/// Absolute element values (based on a fixed origin) will only be placed on a queue if there is a change in value.
10260///
10261/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddevicequeueinterface?language=objc)
10262#[repr(C)]
10263#[derive(Clone, Copy, Debug, PartialEq)]
10264pub struct IOHIDDeviceQueueInterface {
10265    pub(crate) _reserved: *mut c_void,
10266    pub QueryInterface:
10267        Option<unsafe extern "C-unwind" fn(*mut c_void, REFIID, *mut LPVOID) -> HRESULT>,
10268    pub AddRef: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
10269    pub Release: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
10270    /// Obtains the event source for this IOHIDDeviceQueueInterface instance.
10271    ///
10272    /// The returned event source can be of type CFRunLoopSourceRef or CFRunLoopTimerRef.
10273    ///
10274    /// Parameter `self`: Pointer to the IOHIDDeviceQueueInterface.
10275    ///
10276    /// Parameter `pSource`: Pointer to a CFType to return the run loop event source.
10277    ///
10278    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10279    pub getAsyncEventSource:
10280        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut *const CFType) -> IOReturn>,
10281    /// Sets the depth for this IOHIDDeviceQueueInterface instance.
10282    ///
10283    /// Regardless of element value size, queue will guarantee n=depth elements will be serviced.
10284    ///
10285    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10286    ///
10287    /// Parameter `depth`: The maximum number of elements in the queue before the oldest elements in the queue begin to be lost.
10288    ///
10289    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10290    ///
10291    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10292    pub setDepth: Option<unsafe extern "C-unwind" fn(*mut c_void, u32, IOOptionBits) -> IOReturn>,
10293    /// Obtains the queue depth for this IOHIDDeviceQueueInterface instance.
10294    ///
10295    /// Parameter `self`: Pointer to the IOHIDDeviceQueueInterface.
10296    ///
10297    /// Parameter `pDepth`: Pointer to a uint32_t to obtain the number of elements that can be serviced by the queue.
10298    ///
10299    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10300    pub getDepth: Option<unsafe extern "C-unwind" fn(*mut c_void, *mut u32) -> IOReturn>,
10301    /// Adds an element to this IOHIDDeviceQueueInterface instance.
10302    ///
10303    /// Parameter `self`: Pointer to the IOHIDDeviceQueueInterface.
10304    ///
10305    /// Parameter `element`: IOHIDElementRef referencing the element to be added to the queue.
10306    ///
10307    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10308    ///
10309    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10310    pub addElement: Option<
10311        unsafe extern "C-unwind" fn(*mut c_void, *mut IOHIDElement, IOOptionBits) -> IOReturn,
10312    >,
10313    /// Removes an element from this IOHIDDeviceQueueInterface instance.
10314    ///
10315    /// Parameter `self`: Pointer to the IOHIDDeviceQueueInterface.
10316    ///
10317    /// Parameter `element`: IOHIDElementRef referencing the element to be removed from the queue.
10318    ///
10319    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10320    ///
10321    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10322    pub removeElement: Option<
10323        unsafe extern "C-unwind" fn(*mut c_void, *mut IOHIDElement, IOOptionBits) -> IOReturn,
10324    >,
10325    /// Determines whether an element has been added to this IOHIDDeviceQueueInterface instance.
10326    ///
10327    /// Parameter `self`: Pointer to the IOHIDDeviceQueueInterface.
10328    ///
10329    /// Parameter `element`: IOHIDElementRef referencing the element to be be found in the queue.
10330    ///
10331    /// Parameter `pValue`: Pointer to a Boolean to return whether or not the element was found in the queue.
10332    ///
10333    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10334    ///
10335    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10336    pub containsElement: Option<
10337        unsafe extern "C-unwind" fn(
10338            *mut c_void,
10339            *mut IOHIDElement,
10340            *mut Boolean,
10341            IOOptionBits,
10342        ) -> IOReturn,
10343    >,
10344    /// Starts element value delivery to the queue.
10345    ///
10346    /// Parameter `self`: Pointer to the IOHIDDeviceQueueInterface.
10347    ///
10348    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10349    ///
10350    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10351    pub start: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
10352    /// Stops element value delivery to the queue.
10353    ///
10354    /// Parameter `self`: Pointer to the IOHIDDeviceQueueInterface.
10355    ///
10356    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10357    ///
10358    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10359    pub stop: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
10360    /// Sets callback to be used when the queue transitions to non-empty.
10361    ///
10362    /// In order to make use of asynchronous behavior, the event source obtained using getAsyncEventSource
10363    /// must be added to a run loop.
10364    ///
10365    /// Parameter `self`: Pointer to the IOHIDDeviceQueueInterface.
10366    ///
10367    /// Parameter `callback`: Callback of type IOHIDCallback to be used when data is placed on the queue.
10368    ///
10369    /// Parameter `context`: Pointer to data to be passed to the callback.
10370    ///
10371    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10372    pub setValueAvailableCallback:
10373        Option<unsafe extern "C-unwind" fn(*mut c_void, IOHIDCallback, *mut c_void) -> IOReturn>,
10374    /// Dequeues a retained copy of an element value from the head of an IOHIDDeviceQueueInterface.
10375    ///
10376    /// Because the value is a retained copy, it is up to the caller to release the value using CFRelease.
10377    /// Use with setValueCallback to avoid polling the queue for data.
10378    ///
10379    /// Parameter `self`: Pointer to the IOHIDDeviceQueueInterface.
10380    ///
10381    /// Parameter `pValue`: Pointer to a IOHIDValueRef to return the value at the head of the queue.
10382    ///
10383    /// Parameter `timeout`: Timeout in milliseconds before aborting an attempt to dequeue a value from the head of a queue.
10384    ///
10385    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10386    ///
10387    /// Returns: Returns kIOReturnSuccess if successful, kIOReturnUnderrun if data is unavailble, or a kern_return_t if unsuccessful.
10388    pub copyNextValue: Option<
10389        unsafe extern "C-unwind" fn(
10390            *mut c_void,
10391            *mut *mut IOHIDValue,
10392            u32,
10393            IOOptionBits,
10394        ) -> IOReturn,
10395    >,
10396}
10397
10398#[cfg(feature = "objc2")]
10399unsafe impl Encode for IOHIDDeviceQueueInterface {
10400    const ENCODING: Encoding = Encoding::Struct("IOHIDDeviceQueueInterface", &[
10401        <*mut c_void>::ENCODING,
10402        <Option<unsafe extern "C-unwind" fn(*mut c_void,REFIID,*mut LPVOID,) -> HRESULT>>::ENCODING,
10403        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
10404        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
10405        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *const CFType,) -> IOReturn>>::ENCODING,
10406        <Option<unsafe extern "C-unwind" fn(*mut c_void,u32,IOOptionBits,) -> IOReturn>>::ENCODING,
10407        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut u32,) -> IOReturn>>::ENCODING,
10408        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,IOOptionBits,) -> IOReturn>>::ENCODING,
10409        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,IOOptionBits,) -> IOReturn>>::ENCODING,
10410        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,*mut Boolean,IOOptionBits,) -> IOReturn>>::ENCODING,
10411        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10412        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10413        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDCallback,*mut c_void,) -> IOReturn>>::ENCODING,
10414        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *mut IOHIDValue,u32,IOOptionBits,) -> IOReturn>>::ENCODING,
10415    ]);
10416}
10417
10418#[cfg(feature = "objc2")]
10419unsafe impl RefEncode for IOHIDDeviceQueueInterface {
10420    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
10421}
10422
10423/// The object you use to access a HID transaction from user space, returned by version 1.5 of the IOHIDFamily.
10424///
10425/// The functions listed here will work with any version of the IOHIDDeviceTransactionInterface. This functionality
10426/// is useful when either setting or getting the values for multiple parsed elements.
10427///
10428/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohiddevicetransactioninterface?language=objc)
10429#[repr(C)]
10430#[derive(Clone, Copy, Debug, PartialEq)]
10431pub struct IOHIDDeviceTransactionInterface {
10432    pub(crate) _reserved: *mut c_void,
10433    pub QueryInterface:
10434        Option<unsafe extern "C-unwind" fn(*mut c_void, REFIID, *mut LPVOID) -> HRESULT>,
10435    pub AddRef: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
10436    pub Release: Option<unsafe extern "C-unwind" fn(*mut c_void) -> ULONG>,
10437    /// Obtains the event source for this IOHIDDeviceTransactionInterface instance.
10438    ///
10439    /// The returned event source can be of type CFRunLoopSourceRef or CFRunLoopTimerRef.
10440    ///
10441    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10442    ///
10443    /// Parameter `pSource`: Pointer to a CFType to return the run loop event source.
10444    ///
10445    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10446    pub getAsyncEventSource:
10447        Option<unsafe extern "C-unwind" fn(*mut c_void, *mut *const CFType) -> IOReturn>,
10448    /// Sets the direction for this IOHIDDeviceTransactionInterface instance.
10449    ///
10450    /// Direction constants are declared in IOHIDTransactionDirectionType.  Changing directions
10451    /// is useful when dealing with elements of type kIOHIDElementTypeFeature as you use the
10452    /// transaction to both set and get element values.
10453    ///
10454    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10455    ///
10456    /// Parameter `direction`: Transaction direction of type IOHIDTransactionDirectionType.
10457    ///
10458    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10459    ///
10460    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10461    pub setDirection: Option<
10462        unsafe extern "C-unwind" fn(
10463            *mut c_void,
10464            IOHIDTransactionDirectionType,
10465            IOOptionBits,
10466        ) -> IOReturn,
10467    >,
10468    /// Obtains the direction for this IOHIDDeviceTransactionInterface instance.
10469    ///
10470    /// Direction constants are declared in IOHIDTransactionDirectionType.
10471    ///
10472    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10473    ///
10474    /// Parameter `pDirection`: Pointer to a IOHIDTransactionDirectionType to obtain transaction direction.
10475    ///
10476    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10477    pub getDirection: Option<
10478        unsafe extern "C-unwind" fn(*mut c_void, *mut IOHIDTransactionDirectionType) -> IOReturn,
10479    >,
10480    /// Adds an element to this IOHIDDeviceTransactionInterface instance.
10481    ///
10482    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10483    ///
10484    /// Parameter `element`: IOHIDElementRef referencing the element to be added to the transaction.
10485    ///
10486    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10487    ///
10488    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10489    pub addElement: Option<
10490        unsafe extern "C-unwind" fn(*mut c_void, *mut IOHIDElement, IOOptionBits) -> IOReturn,
10491    >,
10492    /// Removes an element from this IOHIDDeviceTransactionInterface instance.
10493    ///
10494    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10495    ///
10496    /// Parameter `element`: IOHIDElementRef referencing the element to be removed from the transaction.
10497    ///
10498    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10499    ///
10500    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10501    pub removeElement: Option<
10502        unsafe extern "C-unwind" fn(*mut c_void, *mut IOHIDElement, IOOptionBits) -> IOReturn,
10503    >,
10504    /// Checks whether an element has been added to this IOHIDDeviceTransactionInterface instance.
10505    ///
10506    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10507    ///
10508    /// Parameter `element`: IOHIDElementRef referencing the element to be be found in the transaction.
10509    ///
10510    /// Parameter `pValue`: Pointer to a Boolean to return whether or not the element was found in the transaction.
10511    ///
10512    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10513    ///
10514    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10515    pub containsElement: Option<
10516        unsafe extern "C-unwind" fn(
10517            *mut c_void,
10518            *mut IOHIDElement,
10519            *mut Boolean,
10520            IOOptionBits,
10521        ) -> IOReturn,
10522    >,
10523    /// Sets the transaction value for an element in this IOHIDDeviceTransactionInterface instance.
10524    ///
10525    /// This method is intended for use with transaction of direction kIOHIDTransactionDirectionTypeOutput.
10526    /// Use the kIOHIDTransactionOptionDefaultOutputValue option to set the default element value.
10527    ///
10528    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10529    ///
10530    /// Parameter `element`: IOHIDElementRef referencing the element of interest.
10531    ///
10532    /// Parameter `value`: IOHIDValueRef referencing element value to be used in the transaction.
10533    ///
10534    /// Parameter `options`: See IOHIDTransactionOption.
10535    ///
10536    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10537    pub setValue: Option<
10538        unsafe extern "C-unwind" fn(
10539            *mut c_void,
10540            *mut IOHIDElement,
10541            *mut IOHIDValue,
10542            IOOptionBits,
10543        ) -> IOReturn,
10544    >,
10545    /// Obtains the transaction value for an element in this IOHIDDeviceTransactionInterface instance.
10546    ///
10547    /// Use the kIOHIDTransactionOptionDefaultOutputValue option to get the default element value.
10548    ///
10549    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10550    ///
10551    /// Parameter `element`: IOHIDElementRef referencing the element of interest.
10552    ///
10553    /// Parameter `pValue`: Pointer to an IOHIDValueRef to return the element value of the transaction.
10554    ///
10555    /// Parameter `options`: See IOHIDTransactionOption.
10556    ///
10557    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10558    pub getValue: Option<
10559        unsafe extern "C-unwind" fn(
10560            *mut c_void,
10561            *mut IOHIDElement,
10562            *mut *mut IOHIDValue,
10563            IOOptionBits,
10564        ) -> IOReturn,
10565    >,
10566    /// Commits element transaction to an IOHIDDevice in this IOHIDDeviceTransactionInterface instance.
10567    ///
10568    /// In regards to kIOHIDTransactionDirectionTypeOutput direction, default element values will be used if
10569    /// element values are not set.  If neither are set, that element will be omitted from the commit. After
10570    /// a transaction is committed, transaction element values will be cleared and default values preserved.
10571    /// <br>
10572    /// <b>
10573    /// Note:
10574    /// </b>
10575    /// It is possible for elements from different reports to be present in a given transaction
10576    /// causing a commit to transcend multiple reports. Keep this in mind when setting a timeout.
10577    ///
10578    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10579    ///
10580    /// Parameter `timeout`: Timeout in milliseconds for issuing the transaction.
10581    ///
10582    /// Parameter `callback`: Callback of type IOHIDCallback to be used when transaction has been completed.  If null,
10583    /// this method will behave synchronously.
10584    ///
10585    /// Parameter `context`: Pointer to data to be passed to the callback.
10586    ///
10587    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10588    ///
10589    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10590    pub commit: Option<
10591        unsafe extern "C-unwind" fn(
10592            *mut c_void,
10593            u32,
10594            IOHIDCallback,
10595            *mut c_void,
10596            IOOptionBits,
10597        ) -> IOReturn,
10598    >,
10599    /// Clears element transaction values for an IOHIDDeviceTransactionInterface.
10600    ///
10601    /// In regards to kIOHIDTransactionDirectionTypeOutput direction, default element values will be preserved.
10602    ///
10603    /// Parameter `self`: Pointer to the IOHIDDeviceTransactionInterface.
10604    ///
10605    /// Parameter `options`: Reserved for future use. Ignored in current implementation. Set to zero.
10606    ///
10607    /// Returns: Returns kIOReturnSuccess if successful or a kern_return_t if unsuccessful.
10608    pub clear: Option<unsafe extern "C-unwind" fn(*mut c_void, IOOptionBits) -> IOReturn>,
10609}
10610
10611#[cfg(feature = "objc2")]
10612unsafe impl Encode for IOHIDDeviceTransactionInterface {
10613    const ENCODING: Encoding = Encoding::Struct("IOHIDDeviceTransactionInterface", &[
10614        <*mut c_void>::ENCODING,
10615        <Option<unsafe extern "C-unwind" fn(*mut c_void,REFIID,*mut LPVOID,) -> HRESULT>>::ENCODING,
10616        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
10617        <Option<unsafe extern "C-unwind" fn(*mut c_void,) -> ULONG>>::ENCODING,
10618        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut *const CFType,) -> IOReturn>>::ENCODING,
10619        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOHIDTransactionDirectionType,IOOptionBits,) -> IOReturn>>::ENCODING,
10620        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDTransactionDirectionType,) -> IOReturn>>::ENCODING,
10621        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,IOOptionBits,) -> IOReturn>>::ENCODING,
10622        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,IOOptionBits,) -> IOReturn>>::ENCODING,
10623        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,*mut Boolean,IOOptionBits,) -> IOReturn>>::ENCODING,
10624        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,*mut IOHIDValue,IOOptionBits,) -> IOReturn>>::ENCODING,
10625        <Option<unsafe extern "C-unwind" fn(*mut c_void,*mut IOHIDElement,*mut *mut IOHIDValue,IOOptionBits,) -> IOReturn>>::ENCODING,
10626        <Option<unsafe extern "C-unwind" fn(*mut c_void,u32,IOHIDCallback,*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10627        <Option<unsafe extern "C-unwind" fn(*mut c_void,IOOptionBits,) -> IOReturn>>::ENCODING,
10628    ]);
10629}
10630
10631#[cfg(feature = "objc2")]
10632unsafe impl RefEncode for IOHIDDeviceTransactionInterface {
10633    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
10634}
10635
10636/// Keyboard event options passed in to dispatchKeyboardEvent function in
10637/// IOHIDEventService.
10638///
10639/// Field: kIOHIDKeyboardEventOptionsNoKeyRepeat
10640/// Default behavior for keyboard events is to repeat keys if the key has been
10641/// held down for a certain amount of time defined in system preferences. Pass
10642/// in this option to not apply key repeat logic to this event.
10643///
10644/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidkeyboardeventoptions?language=objc)
10645#[repr(transparent)]
10646#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
10647pub struct IOHIDKeyboardEventOptions(pub c_uint);
10648impl IOHIDKeyboardEventOptions {
10649    #[doc(alias = "kIOHIDKeyboardEventOptionsNoKeyRepeat")]
10650    pub const NoKeyRepeat: Self = Self(1 << 8);
10651}
10652
10653#[cfg(feature = "objc2")]
10654unsafe impl Encode for IOHIDKeyboardEventOptions {
10655    const ENCODING: Encoding = c_uint::ENCODING;
10656}
10657
10658#[cfg(feature = "objc2")]
10659unsafe impl RefEncode for IOHIDKeyboardEventOptions {
10660    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
10661}
10662
10663/// Pointer event options passed in to dispatch(Relative/Absolute)PointerEvent
10664/// function in IOHIDEventService.
10665///
10666/// Field: kIOHIDPointerEventOptionsNoAcceleration
10667/// Pointer events are subject to an acceleration algorithm. Pass in this option
10668/// if you do not wish to have acceleration logic applied to the pointer event.
10669///
10670/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidpointereventoptions?language=objc)
10671#[repr(transparent)]
10672#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
10673pub struct IOHIDPointerEventOptions(pub c_uint);
10674impl IOHIDPointerEventOptions {
10675    #[doc(alias = "kIOHIDPointerEventOptionsNoAcceleration")]
10676    pub const NoAcceleration: Self = Self(1 << 8);
10677}
10678
10679#[cfg(feature = "objc2")]
10680unsafe impl Encode for IOHIDPointerEventOptions {
10681    const ENCODING: Encoding = c_uint::ENCODING;
10682}
10683
10684#[cfg(feature = "objc2")]
10685unsafe impl RefEncode for IOHIDPointerEventOptions {
10686    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
10687}
10688
10689/// Scroll event options passed in to dispatchScrollEvent function in
10690/// IOHIDEventService.
10691///
10692/// Field: kIOHIDScrollEventOptionsNoAcceleration
10693/// Scroll events are subject to an acceleration algorithm. Pass in this option
10694/// if you do not wish to have acceleration logic applied to the scroll event.
10695///
10696/// See also [Apple's documentation](https://developer.apple.com/documentation/iokit/iohidscrolleventoptions?language=objc)
10697#[repr(transparent)]
10698#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
10699pub struct IOHIDScrollEventOptions(pub c_uint);
10700impl IOHIDScrollEventOptions {
10701    #[doc(alias = "kIOHIDScrollEventOptionsNoAcceleration")]
10702    pub const NoAcceleration: Self = Self(1 << 8);
10703}
10704
10705#[cfg(feature = "objc2")]
10706unsafe impl Encode for IOHIDScrollEventOptions {
10707    const ENCODING: Encoding = c_uint::ENCODING;
10708}
10709
10710#[cfg(feature = "objc2")]
10711unsafe impl RefEncode for IOHIDScrollEventOptions {
10712    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
10713}
10714
10715#[deprecated = "renamed to `IOHIDQueue::new`"]
10716#[inline]
10717pub unsafe extern "C-unwind" fn IOHIDQueueCreate(
10718    allocator: Option<&CFAllocator>,
10719    device: &IOHIDDevice,
10720    depth: CFIndex,
10721    options: IOOptionBits,
10722) -> Option<CFRetained<IOHIDQueue>> {
10723    extern "C-unwind" {
10724        fn IOHIDQueueCreate(
10725            allocator: Option<&CFAllocator>,
10726            device: &IOHIDDevice,
10727            depth: CFIndex,
10728            options: IOOptionBits,
10729        ) -> Option<NonNull<IOHIDQueue>>;
10730    }
10731    let ret = unsafe { IOHIDQueueCreate(allocator, device, depth, options) };
10732    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
10733}
10734
10735#[deprecated = "renamed to `IOHIDQueue::device`"]
10736#[inline]
10737pub unsafe extern "C-unwind" fn IOHIDQueueGetDevice(queue: &IOHIDQueue) -> CFRetained<IOHIDDevice> {
10738    extern "C-unwind" {
10739        fn IOHIDQueueGetDevice(queue: &IOHIDQueue) -> Option<NonNull<IOHIDDevice>>;
10740    }
10741    let ret = unsafe { IOHIDQueueGetDevice(queue) };
10742    let ret = ret.expect("function was marked as returning non-null, but actually returned NULL");
10743    unsafe { CFRetained::retain(ret) }
10744}
10745
10746extern "C-unwind" {
10747    #[deprecated = "renamed to `IOHIDQueue::depth`"]
10748    pub fn IOHIDQueueGetDepth(queue: &IOHIDQueue) -> CFIndex;
10749}
10750
10751extern "C-unwind" {
10752    #[deprecated = "renamed to `IOHIDQueue::set_depth`"]
10753    pub fn IOHIDQueueSetDepth(queue: &IOHIDQueue, depth: CFIndex);
10754}
10755
10756extern "C-unwind" {
10757    #[deprecated = "renamed to `IOHIDQueue::add_element`"]
10758    pub fn IOHIDQueueAddElement(queue: &IOHIDQueue, element: &IOHIDElement);
10759}
10760
10761extern "C-unwind" {
10762    #[deprecated = "renamed to `IOHIDQueue::remove_element`"]
10763    pub fn IOHIDQueueRemoveElement(queue: &IOHIDQueue, element: &IOHIDElement);
10764}
10765
10766#[deprecated = "renamed to `IOHIDQueue::contains_element`"]
10767#[inline]
10768pub unsafe extern "C-unwind" fn IOHIDQueueContainsElement(
10769    queue: &IOHIDQueue,
10770    element: &IOHIDElement,
10771) -> bool {
10772    extern "C-unwind" {
10773        fn IOHIDQueueContainsElement(queue: &IOHIDQueue, element: &IOHIDElement) -> Boolean;
10774    }
10775    let ret = unsafe { IOHIDQueueContainsElement(queue, element) };
10776    ret != 0
10777}
10778
10779extern "C-unwind" {
10780    #[deprecated = "renamed to `IOHIDQueue::start`"]
10781    pub fn IOHIDQueueStart(queue: &IOHIDQueue);
10782}
10783
10784extern "C-unwind" {
10785    #[deprecated = "renamed to `IOHIDQueue::stop`"]
10786    pub fn IOHIDQueueStop(queue: &IOHIDQueue);
10787}
10788
10789extern "C-unwind" {
10790    #[deprecated = "renamed to `IOHIDQueue::schedule_with_run_loop`"]
10791    pub fn IOHIDQueueScheduleWithRunLoop(
10792        queue: &IOHIDQueue,
10793        run_loop: &CFRunLoop,
10794        run_loop_mode: &CFString,
10795    );
10796}
10797
10798extern "C-unwind" {
10799    #[deprecated = "renamed to `IOHIDQueue::unschedule_from_run_loop`"]
10800    pub fn IOHIDQueueUnscheduleFromRunLoop(
10801        queue: &IOHIDQueue,
10802        run_loop: &CFRunLoop,
10803        run_loop_mode: &CFString,
10804    );
10805}
10806
10807extern "C-unwind" {
10808    #[cfg(feature = "dispatch2")]
10809    #[deprecated = "renamed to `IOHIDQueue::set_dispatch_queue`"]
10810    pub fn IOHIDQueueSetDispatchQueue(queue: &IOHIDQueue, dispatch_queue: &DispatchQueue);
10811}
10812
10813extern "C-unwind" {
10814    #[cfg(feature = "dispatch2")]
10815    #[deprecated = "renamed to `IOHIDQueue::set_cancel_handler`"]
10816    pub fn IOHIDQueueSetCancelHandler(queue: &IOHIDQueue, handler: dispatch_block_t);
10817}
10818
10819extern "C-unwind" {
10820    #[deprecated = "renamed to `IOHIDQueue::activate`"]
10821    pub fn IOHIDQueueActivate(queue: &IOHIDQueue);
10822}
10823
10824extern "C-unwind" {
10825    #[deprecated = "renamed to `IOHIDQueue::cancel`"]
10826    pub fn IOHIDQueueCancel(queue: &IOHIDQueue);
10827}
10828
10829extern "C-unwind" {
10830    #[deprecated = "renamed to `IOHIDQueue::register_value_available_callback`"]
10831    pub fn IOHIDQueueRegisterValueAvailableCallback(
10832        queue: &IOHIDQueue,
10833        callback: IOHIDCallback,
10834        context: *mut c_void,
10835    );
10836}
10837
10838#[deprecated = "renamed to `IOHIDQueue::next_value`"]
10839#[inline]
10840pub unsafe extern "C-unwind" fn IOHIDQueueCopyNextValue(
10841    queue: &IOHIDQueue,
10842) -> Option<CFRetained<IOHIDValue>> {
10843    extern "C-unwind" {
10844        fn IOHIDQueueCopyNextValue(queue: &IOHIDQueue) -> Option<NonNull<IOHIDValue>>;
10845    }
10846    let ret = unsafe { IOHIDQueueCopyNextValue(queue) };
10847    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
10848}
10849
10850#[deprecated = "renamed to `IOHIDQueue::next_value_with_timeout`"]
10851#[inline]
10852pub unsafe extern "C-unwind" fn IOHIDQueueCopyNextValueWithTimeout(
10853    queue: &IOHIDQueue,
10854    timeout: CFTimeInterval,
10855) -> Option<CFRetained<IOHIDValue>> {
10856    extern "C-unwind" {
10857        fn IOHIDQueueCopyNextValueWithTimeout(
10858            queue: &IOHIDQueue,
10859            timeout: CFTimeInterval,
10860        ) -> Option<NonNull<IOHIDValue>>;
10861    }
10862    let ret = unsafe { IOHIDQueueCopyNextValueWithTimeout(queue, timeout) };
10863    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
10864}
10865
10866#[cfg(feature = "libc")]
10867#[deprecated = "renamed to `IOHIDDevice::new`"]
10868#[inline]
10869pub unsafe extern "C-unwind" fn IOHIDDeviceCreate(
10870    allocator: Option<&CFAllocator>,
10871    service: io_service_t,
10872) -> Option<CFRetained<IOHIDDevice>> {
10873    extern "C-unwind" {
10874        fn IOHIDDeviceCreate(
10875            allocator: Option<&CFAllocator>,
10876            service: io_service_t,
10877        ) -> Option<NonNull<IOHIDDevice>>;
10878    }
10879    let ret = unsafe { IOHIDDeviceCreate(allocator, service) };
10880    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
10881}
10882
10883extern "C-unwind" {
10884    #[cfg(feature = "libc")]
10885    #[deprecated = "renamed to `IOHIDDevice::service`"]
10886    pub fn IOHIDDeviceGetService(device: &IOHIDDevice) -> io_service_t;
10887}
10888
10889extern "C-unwind" {
10890    #[deprecated = "renamed to `IOHIDDevice::open`"]
10891    pub fn IOHIDDeviceOpen(device: &IOHIDDevice, options: IOOptionBits) -> IOReturn;
10892}
10893
10894extern "C-unwind" {
10895    #[deprecated = "renamed to `IOHIDDevice::close`"]
10896    pub fn IOHIDDeviceClose(device: &IOHIDDevice, options: IOOptionBits) -> IOReturn;
10897}
10898
10899#[deprecated = "renamed to `IOHIDDevice::conforms_to`"]
10900#[inline]
10901pub unsafe extern "C-unwind" fn IOHIDDeviceConformsTo(
10902    device: &IOHIDDevice,
10903    usage_page: u32,
10904    usage: u32,
10905) -> bool {
10906    extern "C-unwind" {
10907        fn IOHIDDeviceConformsTo(device: &IOHIDDevice, usage_page: u32, usage: u32) -> Boolean;
10908    }
10909    let ret = unsafe { IOHIDDeviceConformsTo(device, usage_page, usage) };
10910    ret != 0
10911}
10912
10913#[deprecated = "renamed to `IOHIDDevice::property`"]
10914#[inline]
10915pub unsafe extern "C-unwind" fn IOHIDDeviceGetProperty(
10916    device: &IOHIDDevice,
10917    key: &CFString,
10918) -> Option<CFRetained<CFType>> {
10919    extern "C-unwind" {
10920        fn IOHIDDeviceGetProperty(device: &IOHIDDevice, key: &CFString) -> Option<NonNull<CFType>>;
10921    }
10922    let ret = unsafe { IOHIDDeviceGetProperty(device, key) };
10923    ret.map(|ret| unsafe { CFRetained::retain(ret) })
10924}
10925
10926#[deprecated = "renamed to `IOHIDDevice::set_property`"]
10927#[inline]
10928pub unsafe extern "C-unwind" fn IOHIDDeviceSetProperty(
10929    device: &IOHIDDevice,
10930    key: &CFString,
10931    property: &CFType,
10932) -> bool {
10933    extern "C-unwind" {
10934        fn IOHIDDeviceSetProperty(
10935            device: &IOHIDDevice,
10936            key: &CFString,
10937            property: &CFType,
10938        ) -> Boolean;
10939    }
10940    let ret = unsafe { IOHIDDeviceSetProperty(device, key, property) };
10941    ret != 0
10942}
10943
10944#[deprecated = "renamed to `IOHIDDevice::matching_elements`"]
10945#[inline]
10946pub unsafe extern "C-unwind" fn IOHIDDeviceCopyMatchingElements(
10947    device: &IOHIDDevice,
10948    matching: Option<&CFDictionary>,
10949    options: IOOptionBits,
10950) -> Option<CFRetained<CFArray>> {
10951    extern "C-unwind" {
10952        fn IOHIDDeviceCopyMatchingElements(
10953            device: &IOHIDDevice,
10954            matching: Option<&CFDictionary>,
10955            options: IOOptionBits,
10956        ) -> Option<NonNull<CFArray>>;
10957    }
10958    let ret = unsafe { IOHIDDeviceCopyMatchingElements(device, matching, options) };
10959    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
10960}
10961
10962extern "C-unwind" {
10963    #[deprecated = "renamed to `IOHIDDevice::schedule_with_run_loop`"]
10964    pub fn IOHIDDeviceScheduleWithRunLoop(
10965        device: &IOHIDDevice,
10966        run_loop: &CFRunLoop,
10967        run_loop_mode: &CFString,
10968    );
10969}
10970
10971extern "C-unwind" {
10972    #[deprecated = "renamed to `IOHIDDevice::unschedule_from_run_loop`"]
10973    pub fn IOHIDDeviceUnscheduleFromRunLoop(
10974        device: &IOHIDDevice,
10975        run_loop: &CFRunLoop,
10976        run_loop_mode: &CFString,
10977    );
10978}
10979
10980extern "C-unwind" {
10981    #[cfg(feature = "dispatch2")]
10982    #[deprecated = "renamed to `IOHIDDevice::set_dispatch_queue`"]
10983    pub fn IOHIDDeviceSetDispatchQueue(device: &IOHIDDevice, queue: &DispatchQueue);
10984}
10985
10986extern "C-unwind" {
10987    #[cfg(feature = "dispatch2")]
10988    #[deprecated = "renamed to `IOHIDDevice::set_cancel_handler`"]
10989    pub fn IOHIDDeviceSetCancelHandler(device: &IOHIDDevice, handler: dispatch_block_t);
10990}
10991
10992extern "C-unwind" {
10993    #[deprecated = "renamed to `IOHIDDevice::activate`"]
10994    pub fn IOHIDDeviceActivate(device: &IOHIDDevice);
10995}
10996
10997extern "C-unwind" {
10998    #[deprecated = "renamed to `IOHIDDevice::cancel`"]
10999    pub fn IOHIDDeviceCancel(device: &IOHIDDevice);
11000}
11001
11002extern "C-unwind" {
11003    #[deprecated = "renamed to `IOHIDDevice::register_removal_callback`"]
11004    pub fn IOHIDDeviceRegisterRemovalCallback(
11005        device: &IOHIDDevice,
11006        callback: IOHIDCallback,
11007        context: *mut c_void,
11008    );
11009}
11010
11011extern "C-unwind" {
11012    #[deprecated = "renamed to `IOHIDDevice::register_input_value_callback`"]
11013    pub fn IOHIDDeviceRegisterInputValueCallback(
11014        device: &IOHIDDevice,
11015        callback: IOHIDValueCallback,
11016        context: *mut c_void,
11017    );
11018}
11019
11020extern "C-unwind" {
11021    #[deprecated = "renamed to `IOHIDDevice::register_input_report_callback`"]
11022    pub fn IOHIDDeviceRegisterInputReportCallback(
11023        device: &IOHIDDevice,
11024        report: NonNull<u8>,
11025        report_length: CFIndex,
11026        callback: IOHIDReportCallback,
11027        context: *mut c_void,
11028    );
11029}
11030
11031extern "C-unwind" {
11032    #[deprecated = "renamed to `IOHIDDevice::register_input_report_with_time_stamp_callback`"]
11033    pub fn IOHIDDeviceRegisterInputReportWithTimeStampCallback(
11034        device: &IOHIDDevice,
11035        report: NonNull<u8>,
11036        report_length: CFIndex,
11037        callback: IOHIDReportWithTimeStampCallback,
11038        context: *mut c_void,
11039    );
11040}
11041
11042extern "C-unwind" {
11043    #[deprecated = "renamed to `IOHIDDevice::set_input_value_matching`"]
11044    pub fn IOHIDDeviceSetInputValueMatching(device: &IOHIDDevice, matching: Option<&CFDictionary>);
11045}
11046
11047extern "C-unwind" {
11048    #[deprecated = "renamed to `IOHIDDevice::set_input_value_matching_multiple`"]
11049    pub fn IOHIDDeviceSetInputValueMatchingMultiple(
11050        device: &IOHIDDevice,
11051        multiple: Option<&CFArray>,
11052    );
11053}
11054
11055extern "C-unwind" {
11056    #[deprecated = "renamed to `IOHIDDevice::set_value`"]
11057    pub fn IOHIDDeviceSetValue(
11058        device: &IOHIDDevice,
11059        element: &IOHIDElement,
11060        value: &IOHIDValue,
11061    ) -> IOReturn;
11062}
11063
11064extern "C-unwind" {
11065    #[deprecated = "renamed to `IOHIDDevice::set_value_multiple`"]
11066    pub fn IOHIDDeviceSetValueMultiple(device: &IOHIDDevice, multiple: &CFDictionary) -> IOReturn;
11067}
11068
11069extern "C-unwind" {
11070    #[deprecated = "renamed to `IOHIDDevice::set_value_with_callback`"]
11071    pub fn IOHIDDeviceSetValueWithCallback(
11072        device: &IOHIDDevice,
11073        element: &IOHIDElement,
11074        value: &IOHIDValue,
11075        timeout: CFTimeInterval,
11076        callback: IOHIDValueCallback,
11077        context: *mut c_void,
11078    ) -> IOReturn;
11079}
11080
11081extern "C-unwind" {
11082    #[deprecated = "renamed to `IOHIDDevice::set_value_multiple_with_callback`"]
11083    pub fn IOHIDDeviceSetValueMultipleWithCallback(
11084        device: &IOHIDDevice,
11085        multiple: &CFDictionary,
11086        timeout: CFTimeInterval,
11087        callback: IOHIDValueMultipleCallback,
11088        context: *mut c_void,
11089    ) -> IOReturn;
11090}
11091
11092extern "C-unwind" {
11093    #[deprecated = "renamed to `IOHIDDevice::value`"]
11094    pub fn IOHIDDeviceGetValue(
11095        device: &IOHIDDevice,
11096        element: &IOHIDElement,
11097        p_value: NonNull<NonNull<IOHIDValue>>,
11098    ) -> IOReturn;
11099}
11100
11101extern "C-unwind" {
11102    #[deprecated = "renamed to `IOHIDDevice::value_with_options`"]
11103    pub fn IOHIDDeviceGetValueWithOptions(
11104        device: &IOHIDDevice,
11105        element: &IOHIDElement,
11106        p_value: NonNull<NonNull<IOHIDValue>>,
11107        options: u32,
11108    ) -> IOReturn;
11109}
11110
11111extern "C-unwind" {
11112    #[deprecated = "renamed to `IOHIDDevice::copy_value_multiple`"]
11113    pub fn IOHIDDeviceCopyValueMultiple(
11114        device: &IOHIDDevice,
11115        elements: &CFArray,
11116        p_multiple: *mut *const CFDictionary,
11117    ) -> IOReturn;
11118}
11119
11120extern "C-unwind" {
11121    #[deprecated = "renamed to `IOHIDDevice::value_with_callback`"]
11122    pub fn IOHIDDeviceGetValueWithCallback(
11123        device: &IOHIDDevice,
11124        element: &IOHIDElement,
11125        p_value: NonNull<NonNull<IOHIDValue>>,
11126        timeout: CFTimeInterval,
11127        callback: IOHIDValueCallback,
11128        context: *mut c_void,
11129    ) -> IOReturn;
11130}
11131
11132extern "C-unwind" {
11133    #[deprecated = "renamed to `IOHIDDevice::copy_value_multiple_with_callback`"]
11134    pub fn IOHIDDeviceCopyValueMultipleWithCallback(
11135        device: &IOHIDDevice,
11136        elements: &CFArray,
11137        p_multiple: *mut *const CFDictionary,
11138        timeout: CFTimeInterval,
11139        callback: IOHIDValueMultipleCallback,
11140        context: *mut c_void,
11141    ) -> IOReturn;
11142}
11143
11144extern "C-unwind" {
11145    #[deprecated = "renamed to `IOHIDDevice::set_report`"]
11146    pub fn IOHIDDeviceSetReport(
11147        device: &IOHIDDevice,
11148        report_type: IOHIDReportType,
11149        report_id: CFIndex,
11150        report: NonNull<u8>,
11151        report_length: CFIndex,
11152    ) -> IOReturn;
11153}
11154
11155extern "C-unwind" {
11156    #[deprecated = "renamed to `IOHIDDevice::set_report_with_callback`"]
11157    pub fn IOHIDDeviceSetReportWithCallback(
11158        device: &IOHIDDevice,
11159        report_type: IOHIDReportType,
11160        report_id: CFIndex,
11161        report: NonNull<u8>,
11162        report_length: CFIndex,
11163        timeout: CFTimeInterval,
11164        callback: IOHIDReportCallback,
11165        context: *mut c_void,
11166    ) -> IOReturn;
11167}
11168
11169extern "C-unwind" {
11170    #[deprecated = "renamed to `IOHIDDevice::report`"]
11171    pub fn IOHIDDeviceGetReport(
11172        device: &IOHIDDevice,
11173        report_type: IOHIDReportType,
11174        report_id: CFIndex,
11175        report: NonNull<u8>,
11176        p_report_length: NonNull<CFIndex>,
11177    ) -> IOReturn;
11178}
11179
11180extern "C-unwind" {
11181    #[deprecated = "renamed to `IOHIDDevice::report_with_callback`"]
11182    pub fn IOHIDDeviceGetReportWithCallback(
11183        device: &IOHIDDevice,
11184        report_type: IOHIDReportType,
11185        report_id: CFIndex,
11186        report: NonNull<u8>,
11187        p_report_length: NonNull<CFIndex>,
11188        timeout: CFTimeInterval,
11189        callback: IOHIDReportCallback,
11190        context: NonNull<c_void>,
11191    ) -> IOReturn;
11192}
11193
11194#[deprecated = "renamed to `IOHIDElement::with_dictionary`"]
11195#[inline]
11196pub unsafe extern "C-unwind" fn IOHIDElementCreateWithDictionary(
11197    allocator: Option<&CFAllocator>,
11198    dictionary: &CFDictionary,
11199) -> CFRetained<IOHIDElement> {
11200    extern "C-unwind" {
11201        fn IOHIDElementCreateWithDictionary(
11202            allocator: Option<&CFAllocator>,
11203            dictionary: &CFDictionary,
11204        ) -> Option<NonNull<IOHIDElement>>;
11205    }
11206    let ret = unsafe { IOHIDElementCreateWithDictionary(allocator, dictionary) };
11207    let ret = ret.expect("function was marked as returning non-null, but actually returned NULL");
11208    unsafe { CFRetained::from_raw(ret) }
11209}
11210
11211#[deprecated = "renamed to `IOHIDElement::device`"]
11212#[inline]
11213pub unsafe extern "C-unwind" fn IOHIDElementGetDevice(
11214    element: &IOHIDElement,
11215) -> CFRetained<IOHIDDevice> {
11216    extern "C-unwind" {
11217        fn IOHIDElementGetDevice(element: &IOHIDElement) -> Option<NonNull<IOHIDDevice>>;
11218    }
11219    let ret = unsafe { IOHIDElementGetDevice(element) };
11220    let ret = ret.expect("function was marked as returning non-null, but actually returned NULL");
11221    unsafe { CFRetained::retain(ret) }
11222}
11223
11224#[deprecated = "renamed to `IOHIDElement::parent`"]
11225#[inline]
11226pub unsafe extern "C-unwind" fn IOHIDElementGetParent(
11227    element: &IOHIDElement,
11228) -> Option<CFRetained<IOHIDElement>> {
11229    extern "C-unwind" {
11230        fn IOHIDElementGetParent(element: &IOHIDElement) -> Option<NonNull<IOHIDElement>>;
11231    }
11232    let ret = unsafe { IOHIDElementGetParent(element) };
11233    ret.map(|ret| unsafe { CFRetained::retain(ret) })
11234}
11235
11236#[deprecated = "renamed to `IOHIDElement::children`"]
11237#[inline]
11238pub unsafe extern "C-unwind" fn IOHIDElementGetChildren(
11239    element: &IOHIDElement,
11240) -> Option<CFRetained<CFArray>> {
11241    extern "C-unwind" {
11242        fn IOHIDElementGetChildren(element: &IOHIDElement) -> Option<NonNull<CFArray>>;
11243    }
11244    let ret = unsafe { IOHIDElementGetChildren(element) };
11245    ret.map(|ret| unsafe { CFRetained::retain(ret) })
11246}
11247
11248extern "C-unwind" {
11249    #[deprecated = "renamed to `IOHIDElement::attach`"]
11250    pub fn IOHIDElementAttach(element: &IOHIDElement, to_attach: &IOHIDElement);
11251}
11252
11253extern "C-unwind" {
11254    #[deprecated = "renamed to `IOHIDElement::detach`"]
11255    pub fn IOHIDElementDetach(element: &IOHIDElement, to_detach: &IOHIDElement);
11256}
11257
11258#[deprecated = "renamed to `IOHIDElement::attached`"]
11259#[inline]
11260pub unsafe extern "C-unwind" fn IOHIDElementCopyAttached(
11261    element: &IOHIDElement,
11262) -> Option<CFRetained<CFArray>> {
11263    extern "C-unwind" {
11264        fn IOHIDElementCopyAttached(element: &IOHIDElement) -> Option<NonNull<CFArray>>;
11265    }
11266    let ret = unsafe { IOHIDElementCopyAttached(element) };
11267    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
11268}
11269
11270extern "C-unwind" {
11271    #[deprecated = "renamed to `IOHIDElement::cookie`"]
11272    pub fn IOHIDElementGetCookie(element: &IOHIDElement) -> IOHIDElementCookie;
11273}
11274
11275extern "C-unwind" {
11276    #[deprecated = "renamed to `IOHIDElement::type`"]
11277    pub fn IOHIDElementGetType(element: &IOHIDElement) -> IOHIDElementType;
11278}
11279
11280extern "C-unwind" {
11281    #[deprecated = "renamed to `IOHIDElement::collection_type`"]
11282    pub fn IOHIDElementGetCollectionType(element: &IOHIDElement) -> IOHIDElementCollectionType;
11283}
11284
11285extern "C-unwind" {
11286    #[deprecated = "renamed to `IOHIDElement::usage_page`"]
11287    pub fn IOHIDElementGetUsagePage(element: &IOHIDElement) -> u32;
11288}
11289
11290extern "C-unwind" {
11291    #[deprecated = "renamed to `IOHIDElement::usage`"]
11292    pub fn IOHIDElementGetUsage(element: &IOHIDElement) -> u32;
11293}
11294
11295#[deprecated = "renamed to `IOHIDElement::is_virtual`"]
11296#[inline]
11297pub unsafe extern "C-unwind" fn IOHIDElementIsVirtual(element: &IOHIDElement) -> bool {
11298    extern "C-unwind" {
11299        fn IOHIDElementIsVirtual(element: &IOHIDElement) -> Boolean;
11300    }
11301    let ret = unsafe { IOHIDElementIsVirtual(element) };
11302    ret != 0
11303}
11304
11305#[deprecated = "renamed to `IOHIDElement::is_relative`"]
11306#[inline]
11307pub unsafe extern "C-unwind" fn IOHIDElementIsRelative(element: &IOHIDElement) -> bool {
11308    extern "C-unwind" {
11309        fn IOHIDElementIsRelative(element: &IOHIDElement) -> Boolean;
11310    }
11311    let ret = unsafe { IOHIDElementIsRelative(element) };
11312    ret != 0
11313}
11314
11315#[deprecated = "renamed to `IOHIDElement::is_wrapping`"]
11316#[inline]
11317pub unsafe extern "C-unwind" fn IOHIDElementIsWrapping(element: &IOHIDElement) -> bool {
11318    extern "C-unwind" {
11319        fn IOHIDElementIsWrapping(element: &IOHIDElement) -> Boolean;
11320    }
11321    let ret = unsafe { IOHIDElementIsWrapping(element) };
11322    ret != 0
11323}
11324
11325#[deprecated = "renamed to `IOHIDElement::is_array`"]
11326#[inline]
11327pub unsafe extern "C-unwind" fn IOHIDElementIsArray(element: &IOHIDElement) -> bool {
11328    extern "C-unwind" {
11329        fn IOHIDElementIsArray(element: &IOHIDElement) -> Boolean;
11330    }
11331    let ret = unsafe { IOHIDElementIsArray(element) };
11332    ret != 0
11333}
11334
11335#[deprecated = "renamed to `IOHIDElement::is_non_linear`"]
11336#[inline]
11337pub unsafe extern "C-unwind" fn IOHIDElementIsNonLinear(element: &IOHIDElement) -> bool {
11338    extern "C-unwind" {
11339        fn IOHIDElementIsNonLinear(element: &IOHIDElement) -> Boolean;
11340    }
11341    let ret = unsafe { IOHIDElementIsNonLinear(element) };
11342    ret != 0
11343}
11344
11345#[deprecated = "renamed to `IOHIDElement::has_preferred_state`"]
11346#[inline]
11347pub unsafe extern "C-unwind" fn IOHIDElementHasPreferredState(element: &IOHIDElement) -> bool {
11348    extern "C-unwind" {
11349        fn IOHIDElementHasPreferredState(element: &IOHIDElement) -> Boolean;
11350    }
11351    let ret = unsafe { IOHIDElementHasPreferredState(element) };
11352    ret != 0
11353}
11354
11355#[deprecated = "renamed to `IOHIDElement::has_null_state`"]
11356#[inline]
11357pub unsafe extern "C-unwind" fn IOHIDElementHasNullState(element: &IOHIDElement) -> bool {
11358    extern "C-unwind" {
11359        fn IOHIDElementHasNullState(element: &IOHIDElement) -> Boolean;
11360    }
11361    let ret = unsafe { IOHIDElementHasNullState(element) };
11362    ret != 0
11363}
11364
11365#[deprecated = "renamed to `IOHIDElement::name`"]
11366#[inline]
11367pub unsafe extern "C-unwind" fn IOHIDElementGetName(
11368    element: &IOHIDElement,
11369) -> CFRetained<CFString> {
11370    extern "C-unwind" {
11371        fn IOHIDElementGetName(element: &IOHIDElement) -> Option<NonNull<CFString>>;
11372    }
11373    let ret = unsafe { IOHIDElementGetName(element) };
11374    let ret = ret.expect("function was marked as returning non-null, but actually returned NULL");
11375    unsafe { CFRetained::retain(ret) }
11376}
11377
11378extern "C-unwind" {
11379    #[deprecated = "renamed to `IOHIDElement::report_id`"]
11380    pub fn IOHIDElementGetReportID(element: &IOHIDElement) -> u32;
11381}
11382
11383extern "C-unwind" {
11384    #[deprecated = "renamed to `IOHIDElement::report_size`"]
11385    pub fn IOHIDElementGetReportSize(element: &IOHIDElement) -> u32;
11386}
11387
11388extern "C-unwind" {
11389    #[deprecated = "renamed to `IOHIDElement::report_count`"]
11390    pub fn IOHIDElementGetReportCount(element: &IOHIDElement) -> u32;
11391}
11392
11393extern "C-unwind" {
11394    #[deprecated = "renamed to `IOHIDElement::unit`"]
11395    pub fn IOHIDElementGetUnit(element: &IOHIDElement) -> u32;
11396}
11397
11398extern "C-unwind" {
11399    #[deprecated = "renamed to `IOHIDElement::unit_exponent`"]
11400    pub fn IOHIDElementGetUnitExponent(element: &IOHIDElement) -> u32;
11401}
11402
11403extern "C-unwind" {
11404    #[deprecated = "renamed to `IOHIDElement::logical_min`"]
11405    pub fn IOHIDElementGetLogicalMin(element: &IOHIDElement) -> CFIndex;
11406}
11407
11408extern "C-unwind" {
11409    #[deprecated = "renamed to `IOHIDElement::logical_max`"]
11410    pub fn IOHIDElementGetLogicalMax(element: &IOHIDElement) -> CFIndex;
11411}
11412
11413extern "C-unwind" {
11414    #[deprecated = "renamed to `IOHIDElement::physical_min`"]
11415    pub fn IOHIDElementGetPhysicalMin(element: &IOHIDElement) -> CFIndex;
11416}
11417
11418extern "C-unwind" {
11419    #[deprecated = "renamed to `IOHIDElement::physical_max`"]
11420    pub fn IOHIDElementGetPhysicalMax(element: &IOHIDElement) -> CFIndex;
11421}
11422
11423#[deprecated = "renamed to `IOHIDElement::property`"]
11424#[inline]
11425pub unsafe extern "C-unwind" fn IOHIDElementGetProperty(
11426    element: &IOHIDElement,
11427    key: &CFString,
11428) -> Option<CFRetained<CFType>> {
11429    extern "C-unwind" {
11430        fn IOHIDElementGetProperty(
11431            element: &IOHIDElement,
11432            key: &CFString,
11433        ) -> Option<NonNull<CFType>>;
11434    }
11435    let ret = unsafe { IOHIDElementGetProperty(element, key) };
11436    ret.map(|ret| unsafe { CFRetained::retain(ret) })
11437}
11438
11439#[deprecated = "renamed to `IOHIDElement::set_property`"]
11440#[inline]
11441pub unsafe extern "C-unwind" fn IOHIDElementSetProperty(
11442    element: &IOHIDElement,
11443    key: &CFString,
11444    property: &CFType,
11445) -> bool {
11446    extern "C-unwind" {
11447        fn IOHIDElementSetProperty(
11448            element: &IOHIDElement,
11449            key: &CFString,
11450            property: &CFType,
11451        ) -> Boolean;
11452    }
11453    let ret = unsafe { IOHIDElementSetProperty(element, key, property) };
11454    ret != 0
11455}
11456
11457#[deprecated = "renamed to `IOHIDManager::new`"]
11458#[inline]
11459pub unsafe extern "C-unwind" fn IOHIDManagerCreate(
11460    allocator: Option<&CFAllocator>,
11461    options: IOOptionBits,
11462) -> CFRetained<IOHIDManager> {
11463    extern "C-unwind" {
11464        fn IOHIDManagerCreate(
11465            allocator: Option<&CFAllocator>,
11466            options: IOOptionBits,
11467        ) -> Option<NonNull<IOHIDManager>>;
11468    }
11469    let ret = unsafe { IOHIDManagerCreate(allocator, options) };
11470    let ret = ret.expect("function was marked as returning non-null, but actually returned NULL");
11471    unsafe { CFRetained::from_raw(ret) }
11472}
11473
11474extern "C-unwind" {
11475    #[deprecated = "renamed to `IOHIDManager::open`"]
11476    pub fn IOHIDManagerOpen(manager: &IOHIDManager, options: IOOptionBits) -> IOReturn;
11477}
11478
11479extern "C-unwind" {
11480    #[deprecated = "renamed to `IOHIDManager::close`"]
11481    pub fn IOHIDManagerClose(manager: &IOHIDManager, options: IOOptionBits) -> IOReturn;
11482}
11483
11484#[deprecated = "renamed to `IOHIDManager::property`"]
11485#[inline]
11486pub unsafe extern "C-unwind" fn IOHIDManagerGetProperty(
11487    manager: &IOHIDManager,
11488    key: &CFString,
11489) -> Option<CFRetained<CFType>> {
11490    extern "C-unwind" {
11491        fn IOHIDManagerGetProperty(
11492            manager: &IOHIDManager,
11493            key: &CFString,
11494        ) -> Option<NonNull<CFType>>;
11495    }
11496    let ret = unsafe { IOHIDManagerGetProperty(manager, key) };
11497    ret.map(|ret| unsafe { CFRetained::retain(ret) })
11498}
11499
11500#[deprecated = "renamed to `IOHIDManager::set_property`"]
11501#[inline]
11502pub unsafe extern "C-unwind" fn IOHIDManagerSetProperty(
11503    manager: &IOHIDManager,
11504    key: &CFString,
11505    value: &CFType,
11506) -> bool {
11507    extern "C-unwind" {
11508        fn IOHIDManagerSetProperty(
11509            manager: &IOHIDManager,
11510            key: &CFString,
11511            value: &CFType,
11512        ) -> Boolean;
11513    }
11514    let ret = unsafe { IOHIDManagerSetProperty(manager, key, value) };
11515    ret != 0
11516}
11517
11518extern "C-unwind" {
11519    #[deprecated = "renamed to `IOHIDManager::schedule_with_run_loop`"]
11520    pub fn IOHIDManagerScheduleWithRunLoop(
11521        manager: &IOHIDManager,
11522        run_loop: &CFRunLoop,
11523        run_loop_mode: &CFString,
11524    );
11525}
11526
11527extern "C-unwind" {
11528    #[deprecated = "renamed to `IOHIDManager::unschedule_from_run_loop`"]
11529    pub fn IOHIDManagerUnscheduleFromRunLoop(
11530        manager: &IOHIDManager,
11531        run_loop: &CFRunLoop,
11532        run_loop_mode: &CFString,
11533    );
11534}
11535
11536extern "C-unwind" {
11537    #[cfg(feature = "dispatch2")]
11538    #[deprecated = "renamed to `IOHIDManager::set_dispatch_queue`"]
11539    pub fn IOHIDManagerSetDispatchQueue(manager: &IOHIDManager, queue: &DispatchQueue);
11540}
11541
11542extern "C-unwind" {
11543    #[cfg(feature = "dispatch2")]
11544    #[deprecated = "renamed to `IOHIDManager::set_cancel_handler`"]
11545    pub fn IOHIDManagerSetCancelHandler(manager: &IOHIDManager, handler: dispatch_block_t);
11546}
11547
11548extern "C-unwind" {
11549    #[deprecated = "renamed to `IOHIDManager::activate`"]
11550    pub fn IOHIDManagerActivate(manager: &IOHIDManager);
11551}
11552
11553extern "C-unwind" {
11554    #[deprecated = "renamed to `IOHIDManager::cancel`"]
11555    pub fn IOHIDManagerCancel(manager: &IOHIDManager);
11556}
11557
11558extern "C-unwind" {
11559    #[deprecated = "renamed to `IOHIDManager::set_device_matching`"]
11560    pub fn IOHIDManagerSetDeviceMatching(manager: &IOHIDManager, matching: Option<&CFDictionary>);
11561}
11562
11563extern "C-unwind" {
11564    #[deprecated = "renamed to `IOHIDManager::set_device_matching_multiple`"]
11565    pub fn IOHIDManagerSetDeviceMatchingMultiple(
11566        manager: &IOHIDManager,
11567        multiple: Option<&CFArray>,
11568    );
11569}
11570
11571#[deprecated = "renamed to `IOHIDManager::devices`"]
11572#[inline]
11573pub unsafe extern "C-unwind" fn IOHIDManagerCopyDevices(
11574    manager: &IOHIDManager,
11575) -> Option<CFRetained<CFSet>> {
11576    extern "C-unwind" {
11577        fn IOHIDManagerCopyDevices(manager: &IOHIDManager) -> Option<NonNull<CFSet>>;
11578    }
11579    let ret = unsafe { IOHIDManagerCopyDevices(manager) };
11580    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
11581}
11582
11583extern "C-unwind" {
11584    #[deprecated = "renamed to `IOHIDManager::register_device_matching_callback`"]
11585    pub fn IOHIDManagerRegisterDeviceMatchingCallback(
11586        manager: &IOHIDManager,
11587        callback: IOHIDDeviceCallback,
11588        context: *mut c_void,
11589    );
11590}
11591
11592extern "C-unwind" {
11593    #[deprecated = "renamed to `IOHIDManager::register_device_removal_callback`"]
11594    pub fn IOHIDManagerRegisterDeviceRemovalCallback(
11595        manager: &IOHIDManager,
11596        callback: IOHIDDeviceCallback,
11597        context: *mut c_void,
11598    );
11599}
11600
11601extern "C-unwind" {
11602    #[deprecated = "renamed to `IOHIDManager::register_input_report_callback`"]
11603    pub fn IOHIDManagerRegisterInputReportCallback(
11604        manager: &IOHIDManager,
11605        callback: IOHIDReportCallback,
11606        context: *mut c_void,
11607    );
11608}
11609
11610extern "C-unwind" {
11611    #[deprecated = "renamed to `IOHIDManager::register_input_report_with_time_stamp_callback`"]
11612    pub fn IOHIDManagerRegisterInputReportWithTimeStampCallback(
11613        manager: &IOHIDManager,
11614        callback: IOHIDReportWithTimeStampCallback,
11615        context: *mut c_void,
11616    );
11617}
11618
11619extern "C-unwind" {
11620    #[deprecated = "renamed to `IOHIDManager::register_input_value_callback`"]
11621    pub fn IOHIDManagerRegisterInputValueCallback(
11622        manager: &IOHIDManager,
11623        callback: IOHIDValueCallback,
11624        context: *mut c_void,
11625    );
11626}
11627
11628extern "C-unwind" {
11629    #[deprecated = "renamed to `IOHIDManager::set_input_value_matching`"]
11630    pub fn IOHIDManagerSetInputValueMatching(
11631        manager: &IOHIDManager,
11632        matching: Option<&CFDictionary>,
11633    );
11634}
11635
11636extern "C-unwind" {
11637    #[deprecated = "renamed to `IOHIDManager::set_input_value_matching_multiple`"]
11638    pub fn IOHIDManagerSetInputValueMatchingMultiple(
11639        manager: &IOHIDManager,
11640        multiple: Option<&CFArray>,
11641    );
11642}
11643
11644extern "C-unwind" {
11645    #[deprecated = "renamed to `IOHIDManager::save_to_property_domain`"]
11646    pub fn IOHIDManagerSaveToPropertyDomain(
11647        manager: &IOHIDManager,
11648        application_id: &CFString,
11649        user_name: &CFString,
11650        host_name: &CFString,
11651        options: IOOptionBits,
11652    );
11653}
11654
11655#[deprecated = "renamed to `IOHIDValue::with_integer_value`"]
11656#[inline]
11657pub unsafe extern "C-unwind" fn IOHIDValueCreateWithIntegerValue(
11658    allocator: Option<&CFAllocator>,
11659    element: &IOHIDElement,
11660    time_stamp: u64,
11661    value: CFIndex,
11662) -> CFRetained<IOHIDValue> {
11663    extern "C-unwind" {
11664        fn IOHIDValueCreateWithIntegerValue(
11665            allocator: Option<&CFAllocator>,
11666            element: &IOHIDElement,
11667            time_stamp: u64,
11668            value: CFIndex,
11669        ) -> Option<NonNull<IOHIDValue>>;
11670    }
11671    let ret = unsafe { IOHIDValueCreateWithIntegerValue(allocator, element, time_stamp, value) };
11672    let ret = ret.expect("function was marked as returning non-null, but actually returned NULL");
11673    unsafe { CFRetained::from_raw(ret) }
11674}
11675
11676#[deprecated = "renamed to `IOHIDValue::with_bytes`"]
11677#[inline]
11678pub unsafe extern "C-unwind" fn IOHIDValueCreateWithBytes(
11679    allocator: Option<&CFAllocator>,
11680    element: &IOHIDElement,
11681    time_stamp: u64,
11682    bytes: NonNull<u8>,
11683    length: CFIndex,
11684) -> Option<CFRetained<IOHIDValue>> {
11685    extern "C-unwind" {
11686        fn IOHIDValueCreateWithBytes(
11687            allocator: Option<&CFAllocator>,
11688            element: &IOHIDElement,
11689            time_stamp: u64,
11690            bytes: NonNull<u8>,
11691            length: CFIndex,
11692        ) -> Option<NonNull<IOHIDValue>>;
11693    }
11694    let ret = unsafe { IOHIDValueCreateWithBytes(allocator, element, time_stamp, bytes, length) };
11695    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
11696}
11697
11698#[deprecated = "renamed to `IOHIDValue::with_bytes_no_copy`"]
11699#[inline]
11700pub unsafe extern "C-unwind" fn IOHIDValueCreateWithBytesNoCopy(
11701    allocator: Option<&CFAllocator>,
11702    element: &IOHIDElement,
11703    time_stamp: u64,
11704    bytes: NonNull<u8>,
11705    length: CFIndex,
11706) -> Option<CFRetained<IOHIDValue>> {
11707    extern "C-unwind" {
11708        fn IOHIDValueCreateWithBytesNoCopy(
11709            allocator: Option<&CFAllocator>,
11710            element: &IOHIDElement,
11711            time_stamp: u64,
11712            bytes: NonNull<u8>,
11713            length: CFIndex,
11714        ) -> Option<NonNull<IOHIDValue>>;
11715    }
11716    let ret =
11717        unsafe { IOHIDValueCreateWithBytesNoCopy(allocator, element, time_stamp, bytes, length) };
11718    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
11719}
11720
11721#[deprecated = "renamed to `IOHIDValue::element`"]
11722#[inline]
11723pub unsafe extern "C-unwind" fn IOHIDValueGetElement(
11724    value: &IOHIDValue,
11725) -> CFRetained<IOHIDElement> {
11726    extern "C-unwind" {
11727        fn IOHIDValueGetElement(value: &IOHIDValue) -> Option<NonNull<IOHIDElement>>;
11728    }
11729    let ret = unsafe { IOHIDValueGetElement(value) };
11730    let ret = ret.expect("function was marked as returning non-null, but actually returned NULL");
11731    unsafe { CFRetained::retain(ret) }
11732}
11733
11734extern "C-unwind" {
11735    #[deprecated = "renamed to `IOHIDValue::time_stamp`"]
11736    pub fn IOHIDValueGetTimeStamp(value: &IOHIDValue) -> u64;
11737}
11738
11739extern "C-unwind" {
11740    #[deprecated = "renamed to `IOHIDValue::length`"]
11741    pub fn IOHIDValueGetLength(value: &IOHIDValue) -> CFIndex;
11742}
11743
11744#[deprecated = "renamed to `IOHIDValue::byte_ptr`"]
11745#[inline]
11746pub unsafe extern "C-unwind" fn IOHIDValueGetBytePtr(value: &IOHIDValue) -> NonNull<u8> {
11747    extern "C-unwind" {
11748        fn IOHIDValueGetBytePtr(value: &IOHIDValue) -> Option<NonNull<u8>>;
11749    }
11750    let ret = unsafe { IOHIDValueGetBytePtr(value) };
11751    ret.expect("function was marked as returning non-null, but actually returned NULL")
11752}
11753
11754extern "C-unwind" {
11755    #[deprecated = "renamed to `IOHIDValue::integer_value`"]
11756    pub fn IOHIDValueGetIntegerValue(value: &IOHIDValue) -> CFIndex;
11757}
11758
11759extern "C-unwind" {
11760    #[deprecated = "renamed to `IOHIDValue::scaled_value`"]
11761    pub fn IOHIDValueGetScaledValue(value: &IOHIDValue, r#type: IOHIDValueScaleType) -> c_double;
11762}
11763
11764#[deprecated = "renamed to `IOHIDTransaction::new`"]
11765#[inline]
11766pub unsafe extern "C-unwind" fn IOHIDTransactionCreate(
11767    allocator: Option<&CFAllocator>,
11768    device: &IOHIDDevice,
11769    direction: IOHIDTransactionDirectionType,
11770    options: IOOptionBits,
11771) -> Option<CFRetained<IOHIDTransaction>> {
11772    extern "C-unwind" {
11773        fn IOHIDTransactionCreate(
11774            allocator: Option<&CFAllocator>,
11775            device: &IOHIDDevice,
11776            direction: IOHIDTransactionDirectionType,
11777            options: IOOptionBits,
11778        ) -> Option<NonNull<IOHIDTransaction>>;
11779    }
11780    let ret = unsafe { IOHIDTransactionCreate(allocator, device, direction, options) };
11781    ret.map(|ret| unsafe { CFRetained::from_raw(ret) })
11782}
11783
11784#[deprecated = "renamed to `IOHIDTransaction::device`"]
11785#[inline]
11786pub unsafe extern "C-unwind" fn IOHIDTransactionGetDevice(
11787    transaction: &IOHIDTransaction,
11788) -> CFRetained<IOHIDDevice> {
11789    extern "C-unwind" {
11790        fn IOHIDTransactionGetDevice(
11791            transaction: &IOHIDTransaction,
11792        ) -> Option<NonNull<IOHIDDevice>>;
11793    }
11794    let ret = unsafe { IOHIDTransactionGetDevice(transaction) };
11795    let ret = ret.expect("function was marked as returning non-null, but actually returned NULL");
11796    unsafe { CFRetained::retain(ret) }
11797}
11798
11799extern "C-unwind" {
11800    #[deprecated = "renamed to `IOHIDTransaction::direction`"]
11801    pub fn IOHIDTransactionGetDirection(
11802        transaction: &IOHIDTransaction,
11803    ) -> IOHIDTransactionDirectionType;
11804}
11805
11806extern "C-unwind" {
11807    #[deprecated = "renamed to `IOHIDTransaction::set_direction`"]
11808    pub fn IOHIDTransactionSetDirection(
11809        transaction: &IOHIDTransaction,
11810        direction: IOHIDTransactionDirectionType,
11811    );
11812}
11813
11814extern "C-unwind" {
11815    #[deprecated = "renamed to `IOHIDTransaction::add_element`"]
11816    pub fn IOHIDTransactionAddElement(transaction: &IOHIDTransaction, element: &IOHIDElement);
11817}
11818
11819extern "C-unwind" {
11820    #[deprecated = "renamed to `IOHIDTransaction::remove_element`"]
11821    pub fn IOHIDTransactionRemoveElement(transaction: &IOHIDTransaction, element: &IOHIDElement);
11822}
11823
11824#[deprecated = "renamed to `IOHIDTransaction::contains_element`"]
11825#[inline]
11826pub unsafe extern "C-unwind" fn IOHIDTransactionContainsElement(
11827    transaction: &IOHIDTransaction,
11828    element: &IOHIDElement,
11829) -> bool {
11830    extern "C-unwind" {
11831        fn IOHIDTransactionContainsElement(
11832            transaction: &IOHIDTransaction,
11833            element: &IOHIDElement,
11834        ) -> Boolean;
11835    }
11836    let ret = unsafe { IOHIDTransactionContainsElement(transaction, element) };
11837    ret != 0
11838}
11839
11840extern "C-unwind" {
11841    #[deprecated = "renamed to `IOHIDTransaction::schedule_with_run_loop`"]
11842    pub fn IOHIDTransactionScheduleWithRunLoop(
11843        transaction: &IOHIDTransaction,
11844        run_loop: &CFRunLoop,
11845        run_loop_mode: &CFString,
11846    );
11847}
11848
11849extern "C-unwind" {
11850    #[deprecated = "renamed to `IOHIDTransaction::unschedule_from_run_loop`"]
11851    pub fn IOHIDTransactionUnscheduleFromRunLoop(
11852        transaction: &IOHIDTransaction,
11853        run_loop: &CFRunLoop,
11854        run_loop_mode: &CFString,
11855    );
11856}
11857
11858extern "C-unwind" {
11859    #[deprecated = "renamed to `IOHIDTransaction::set_value`"]
11860    pub fn IOHIDTransactionSetValue(
11861        transaction: &IOHIDTransaction,
11862        element: &IOHIDElement,
11863        value: &IOHIDValue,
11864        options: IOOptionBits,
11865    );
11866}
11867
11868#[deprecated = "renamed to `IOHIDTransaction::value`"]
11869#[inline]
11870pub unsafe extern "C-unwind" fn IOHIDTransactionGetValue(
11871    transaction: &IOHIDTransaction,
11872    element: &IOHIDElement,
11873    options: IOOptionBits,
11874) -> Option<CFRetained<IOHIDValue>> {
11875    extern "C-unwind" {
11876        fn IOHIDTransactionGetValue(
11877            transaction: &IOHIDTransaction,
11878            element: &IOHIDElement,
11879            options: IOOptionBits,
11880        ) -> Option<NonNull<IOHIDValue>>;
11881    }
11882    let ret = unsafe { IOHIDTransactionGetValue(transaction, element, options) };
11883    ret.map(|ret| unsafe { CFRetained::retain(ret) })
11884}
11885
11886extern "C-unwind" {
11887    #[deprecated = "renamed to `IOHIDTransaction::commit`"]
11888    pub fn IOHIDTransactionCommit(transaction: &IOHIDTransaction) -> IOReturn;
11889}
11890
11891extern "C-unwind" {
11892    #[deprecated = "renamed to `IOHIDTransaction::commit_with_callback`"]
11893    pub fn IOHIDTransactionCommitWithCallback(
11894        transaction: &IOHIDTransaction,
11895        timeout: CFTimeInterval,
11896        callback: IOHIDCallback,
11897        context: *mut c_void,
11898    ) -> IOReturn;
11899}
11900
11901extern "C-unwind" {
11902    #[deprecated = "renamed to `IOHIDTransaction::clear`"]
11903    pub fn IOHIDTransactionClear(transaction: &IOHIDTransaction);
11904}