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}