objc2_io_kit/generated/usb/
USBSpec.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5#[cfg(feature = "objc2")]
6use objc2::__framework_prelude::*;
7
8use crate::*;
9
10/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardvconnnopowerreq?language=objc)
11pub const kUSBBillboardVConnNoPowerReq: c_uint = 15;
12/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdeviceclass?language=objc)
13#[cfg(feature = "IOUSBHostFamilyDefinitions")]
14pub const kUSBDeviceClass: &CStr = kUSBHostMatchingPropertyDeviceClass;
15/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicesubclass?language=objc)
16#[cfg(feature = "IOUSBHostFamilyDefinitions")]
17pub const kUSBDeviceSubClass: &CStr = kUSBHostMatchingPropertyDeviceSubClass;
18/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdeviceprotocol?language=objc)
19#[cfg(feature = "IOUSBHostFamilyDefinitions")]
20pub const kUSBDeviceProtocol: &CStr = kUSBHostMatchingPropertyDeviceProtocol;
21/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicemaxpacketsize?language=objc)
22#[cfg(feature = "IOUSBHostFamilyDefinitions")]
23pub const kUSBDeviceMaxPacketSize: &CStr = kUSBHostDevicePropertyMaxPacketSize;
24/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvendorid?language=objc)
25#[cfg(feature = "IOUSBHostFamilyDefinitions")]
26pub const kUSBVendorID: &CStr = kUSBHostMatchingPropertyVendorID;
27/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvendorname?language=objc)
28pub const kUSBVendorName: &CStr = kUSBVendorID;
29/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbproductid?language=objc)
30#[cfg(feature = "IOUSBHostFamilyDefinitions")]
31pub const kUSBProductID: &CStr = kUSBHostMatchingPropertyProductID;
32/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbproductname?language=objc)
33pub const kUSBProductName: &CStr = kUSBProductID;
34/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicereleasenumber?language=objc)
35#[cfg(feature = "IOUSBHostFamilyDefinitions")]
36pub const kUSBDeviceReleaseNumber: &CStr = kUSBHostMatchingPropertyDeviceReleaseNumber;
37/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmanufacturerstringindex?language=objc)
38#[cfg(feature = "IOUSBHostFamilyDefinitions")]
39pub const kUSBManufacturerStringIndex: &CStr = kUSBHostDevicePropertyManufacturerStringIndex;
40/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbproductstringindex?language=objc)
41#[cfg(feature = "IOUSBHostFamilyDefinitions")]
42pub const kUSBProductStringIndex: &CStr = kUSBHostDevicePropertyProductStringIndex;
43/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbserialnumberstringindex?language=objc)
44#[cfg(feature = "IOUSBHostFamilyDefinitions")]
45pub const kUSBSerialNumberStringIndex: &CStr = kUSBHostDevicePropertySerialNumberStringIndex;
46/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicenumconfigs?language=objc)
47#[cfg(feature = "IOUSBHostFamilyDefinitions")]
48pub const kUSBDeviceNumConfigs: &CStr = kUSBHostDevicePropertyNumConfigs;
49/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfacenumber?language=objc)
50#[cfg(feature = "IOUSBHostFamilyDefinitions")]
51pub const kUSBInterfaceNumber: &CStr = kUSBHostMatchingPropertyInterfaceNumber;
52/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbalternatesetting?language=objc)
53#[cfg(feature = "IOUSBHostFamilyDefinitions")]
54pub const kUSBAlternateSetting: &CStr = kUSBHostInterfacePropertyAlternateSetting;
55/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbnumendpoints?language=objc)
56#[cfg(feature = "IOUSBHostFamilyDefinitions")]
57pub const kUSBNumEndpoints: &CStr = kUSBHostInterfacePropertyNumEndpoints;
58/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfaceclass?language=objc)
59#[cfg(feature = "IOUSBHostFamilyDefinitions")]
60pub const kUSBInterfaceClass: &CStr = kUSBHostMatchingPropertyInterfaceClass;
61/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfacesubclass?language=objc)
62#[cfg(feature = "IOUSBHostFamilyDefinitions")]
63pub const kUSBInterfaceSubClass: &CStr = kUSBHostMatchingPropertyInterfaceSubClass;
64/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfaceprotocol?language=objc)
65#[cfg(feature = "IOUSBHostFamilyDefinitions")]
66pub const kUSBInterfaceProtocol: &CStr = kUSBHostMatchingPropertyInterfaceProtocol;
67/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfacestringindex?language=objc)
68#[cfg(feature = "IOUSBHostFamilyDefinitions")]
69pub const kUSBInterfaceStringIndex: &CStr = kUSBHostInterfacePropertyStringIndex;
70/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbconfigurationvalue?language=objc)
71#[cfg(feature = "IOUSBHostFamilyDefinitions")]
72pub const kUSBConfigurationValue: &CStr = kUSBHostMatchingPropertyConfigurationValue;
73/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfacestring?language=objc)
74#[cfg(feature = "IOUSBHostFamilyDefinitions")]
75pub const kUSBInterfaceString: &CStr = kUSBHostInterfacePropertyString;
76/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb1284deviceid?language=objc)
77pub const kUSB1284DeviceID: &CStr =
78    unsafe { CStr::from_bytes_with_nul_unchecked(b"1284 Device ID\0") };
79/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcompatibilitymatch?language=objc)
80pub const kUSBCompatibilityMatch: &CStr =
81    unsafe { CStr::from_bytes_with_nul_unchecked(b"USBCompatibilityMatch\0") };
82/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbstandardversion?language=objc)
83#[cfg(feature = "IOUSBHostFamilyDefinitions")]
84pub const kUSBStandardVersion: &CStr = kUSBHostDevicePropertyStandardVersion;
85/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbspecreleasenumber?language=objc)
86pub const kUSBSpecReleaseNumber: &CStr = kUSBStandardVersion;
87/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcontainerid?language=objc)
88#[cfg(feature = "IOUSBHostFamilyDefinitions")]
89pub const kUSBContainerID: &CStr = kUSBHostDevicePropertyContainerID;
90/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbproductstring?language=objc)
91pub const kUSBProductString: &CStr =
92    unsafe { CStr::from_bytes_with_nul_unchecked(b"USB Product Name\0") };
93/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvendorstring?language=objc)
94pub const kUSBVendorString: &CStr =
95    unsafe { CStr::from_bytes_with_nul_unchecked(b"USB Vendor Name\0") };
96/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbserialnumberstring?language=objc)
97pub const kUSBSerialNumberString: &CStr =
98    unsafe { CStr::from_bytes_with_nul_unchecked(b"USB Serial Number\0") };
99/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcontrol?language=objc)
100#[cfg(feature = "AppleUSBDefinitions")]
101pub const kUSBControl: c_uint = tIOUSBEndpointType::IOUSBEndpointTypeControl.0;
102/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbisoc?language=objc)
103#[cfg(feature = "AppleUSBDefinitions")]
104pub const kUSBIsoc: c_uint = tIOUSBEndpointType::IOUSBEndpointTypeIsochronous.0;
105/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbulk?language=objc)
106#[cfg(feature = "AppleUSBDefinitions")]
107pub const kUSBBulk: c_uint = tIOUSBEndpointType::IOUSBEndpointTypeBulk.0;
108/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterrupt?language=objc)
109#[cfg(feature = "AppleUSBDefinitions")]
110pub const kUSBInterrupt: c_uint = tIOUSBEndpointType::IOUSBEndpointTypeInterrupt.0;
111/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbanytype?language=objc)
112pub const kUSBAnyType: c_uint = 0xFF;
113
114/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbout?language=objc)
115#[cfg(feature = "AppleUSBDefinitions")]
116pub const kUSBOut: c_uint = tIOUSBEndpointDirection::IOUSBEndpointDirectionOut.0;
117/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbin?language=objc)
118#[cfg(feature = "AppleUSBDefinitions")]
119pub const kUSBIn: c_uint = tIOUSBEndpointDirection::IOUSBEndpointDirectionIn.0;
120/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbnone?language=objc)
121#[cfg(feature = "AppleUSBDefinitions")]
122pub const kUSBNone: c_uint = tIOUSBEndpointDirection::IOUSBEndpointDirectionUnknown.0;
123/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbanydirn?language=objc)
124pub const kUSBAnyDirn: c_uint = 3;
125
126/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbstandard?language=objc)
127#[cfg(feature = "AppleUSBDefinitions")]
128pub const kUSBStandard: c_uint =
129    tIOUSBDeviceRequestTypeValue::IOUSBDeviceRequestTypeValueStandard.0;
130/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbclass?language=objc)
131#[cfg(feature = "AppleUSBDefinitions")]
132pub const kUSBClass: c_uint = tIOUSBDeviceRequestTypeValue::IOUSBDeviceRequestTypeValueClass.0;
133/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvendor?language=objc)
134#[cfg(feature = "AppleUSBDefinitions")]
135pub const kUSBVendor: c_uint = tIOUSBDeviceRequestTypeValue::IOUSBDeviceRequestTypeValueVendor.0;
136
137/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevice?language=objc)
138#[cfg(feature = "AppleUSBDefinitions")]
139pub const kUSBDevice: c_uint =
140    tIOUSBDeviceRequestRecipientValue::IOUSBDeviceRequestRecipientValueDevice.0;
141/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterface?language=objc)
142#[cfg(feature = "AppleUSBDefinitions")]
143pub const kUSBInterface: c_uint =
144    tIOUSBDeviceRequestRecipientValue::IOUSBDeviceRequestRecipientValueInterface.0;
145/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbendpoint?language=objc)
146#[cfg(feature = "AppleUSBDefinitions")]
147pub const kUSBEndpoint: c_uint =
148    tIOUSBDeviceRequestRecipientValue::IOUSBDeviceRequestRecipientValueEndpoint.0;
149/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbother?language=objc)
150#[cfg(feature = "AppleUSBDefinitions")]
151pub const kUSBOther: c_uint =
152    tIOUSBDeviceRequestRecipientValue::IOUSBDeviceRequestRecipientValueOther.0;
153
154/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqgetstatus?language=objc)
155#[cfg(feature = "AppleUSBDefinitions")]
156pub const kUSBRqGetStatus: c_uint = kIOUSBDeviceRequestGetStatus;
157/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqclearfeature?language=objc)
158#[cfg(feature = "AppleUSBDefinitions")]
159pub const kUSBRqClearFeature: c_uint = kIOUSBDeviceRequestClearFeature;
160/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqgetstate?language=objc)
161#[cfg(feature = "AppleUSBDefinitions")]
162pub const kUSBRqGetState: c_uint = kIOUSBDeviceRequestGetState;
163/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqsetfeature?language=objc)
164#[cfg(feature = "AppleUSBDefinitions")]
165pub const kUSBRqSetFeature: c_uint = kIOUSBDeviceRequestSetFeature;
166/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqreserved2?language=objc)
167pub const kUSBRqReserved2: c_uint = 4;
168/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqsetaddress?language=objc)
169#[cfg(feature = "AppleUSBDefinitions")]
170pub const kUSBRqSetAddress: c_uint = kIOUSBDeviceRequestSetAddress;
171/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqgetdescriptor?language=objc)
172#[cfg(feature = "AppleUSBDefinitions")]
173pub const kUSBRqGetDescriptor: c_uint = kIOUSBDeviceRequestGetDescriptor;
174/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqsetdescriptor?language=objc)
175#[cfg(feature = "AppleUSBDefinitions")]
176pub const kUSBRqSetDescriptor: c_uint = kIOUSBDeviceRequestSetDescriptor;
177/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqgetconfig?language=objc)
178#[cfg(feature = "AppleUSBDefinitions")]
179pub const kUSBRqGetConfig: c_uint = kIOUSBDeviceRequestGetConfiguration;
180/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqsetconfig?language=objc)
181#[cfg(feature = "AppleUSBDefinitions")]
182pub const kUSBRqSetConfig: c_uint = kIOUSBDeviceRequestSetConfiguration;
183/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqgetinterface?language=objc)
184#[cfg(feature = "AppleUSBDefinitions")]
185pub const kUSBRqGetInterface: c_uint = kIOUSBDeviceRequestGetInterface;
186/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqsetinterface?language=objc)
187#[cfg(feature = "AppleUSBDefinitions")]
188pub const kUSBRqSetInterface: c_uint = kIOUSBDeviceRequestSetInterface;
189/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrqsyncframe?language=objc)
190#[cfg(feature = "AppleUSBDefinitions")]
191pub const kUSBRqSyncFrame: c_uint = kIOUSBDeviceRequestSynchFrame;
192/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbsetsel?language=objc)
193#[cfg(feature = "AppleUSBDefinitions")]
194pub const kUSBSetSel: c_uint = kIOUSBDeviceRequestSetSel;
195/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbsetisochdelay?language=objc)
196#[cfg(feature = "AppleUSBDefinitions")]
197pub const kUSBSetIsochDelay: c_uint = kIOUSBDeviceRequestSetIsochronousDelay;
198
199/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbanydesc?language=objc)
200pub const kUSBAnyDesc: c_uint = 0;
201/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicedesc?language=objc)
202#[cfg(feature = "AppleUSBDefinitions")]
203pub const kUSBDeviceDesc: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeDevice.0;
204/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbconfdesc?language=objc)
205#[cfg(feature = "AppleUSBDefinitions")]
206pub const kUSBConfDesc: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeConfiguration.0;
207/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbstringdesc?language=objc)
208#[cfg(feature = "AppleUSBDefinitions")]
209pub const kUSBStringDesc: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeString.0;
210/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfacedesc?language=objc)
211#[cfg(feature = "AppleUSBDefinitions")]
212pub const kUSBInterfaceDesc: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeInterface.0;
213/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbendpointdesc?language=objc)
214#[cfg(feature = "AppleUSBDefinitions")]
215pub const kUSBEndpointDesc: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeEndpoint.0;
216/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicequalifierdesc?language=objc)
217#[cfg(feature = "AppleUSBDefinitions")]
218pub const kUSBDeviceQualifierDesc: c_uint =
219    tIOUSBDescriptorType::IOUSBDescriptorTypeDeviceQualifier.0;
220/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbotherspeedconfdesc?language=objc)
221#[cfg(feature = "AppleUSBDefinitions")]
222pub const kUSBOtherSpeedConfDesc: c_uint =
223    tIOUSBDescriptorType::IOUSBDescriptorTypeOtherSpeedConfiguration.0;
224/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfacepowerdesc?language=objc)
225#[cfg(feature = "AppleUSBDefinitions")]
226pub const kUSBInterfacePowerDesc: c_uint =
227    tIOUSBDescriptorType::IOUSBDescriptorTypeInterfacePower.0;
228/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbonthegodesc?language=objc)
229#[cfg(feature = "AppleUSBDefinitions")]
230pub const kUSBOnTheGoDesc: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeOTG.0;
231/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusdebugdesc?language=objc)
232#[cfg(feature = "AppleUSBDefinitions")]
233pub const kUSDebugDesc: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeDebug.0;
234/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfaceassociationdesc?language=objc)
235#[cfg(feature = "AppleUSBDefinitions")]
236pub const kUSBInterfaceAssociationDesc: c_uint =
237    tIOUSBDescriptorType::IOUSBDescriptorTypeInterfaceAssociation.0;
238/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbosdescriptor?language=objc)
239#[cfg(feature = "AppleUSBDefinitions")]
240pub const kUSBBOSDescriptor: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeBOS.0;
241/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicecapability?language=objc)
242#[cfg(feature = "AppleUSBDefinitions")]
243pub const kUSBDeviceCapability: c_uint =
244    tIOUSBDescriptorType::IOUSBDescriptorTypeDeviceCapability.0;
245/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbsuperspeedendpointcompanion?language=objc)
246#[cfg(feature = "AppleUSBDefinitions")]
247pub const kUSBSuperSpeedEndpointCompanion: c_uint =
248    tIOUSBDescriptorType::IOUSBDescriptorTypeSuperSpeedUSBEndpointCompanion.0;
249/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb3hubdesc?language=objc)
250#[cfg(feature = "AppleUSBDefinitions")]
251pub const kUSB3HUBDesc: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeSuperSpeedHub.0;
252/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbhiddesc?language=objc)
253#[cfg(feature = "AppleUSBDefinitions")]
254pub const kUSBHIDDesc: c_uint = tIOUSBDescriptorType::IOUSBDecriptorTypeHID.0;
255/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbreportdesc?language=objc)
256#[cfg(feature = "AppleUSBDefinitions")]
257pub const kUSBReportDesc: c_uint = tIOUSBDescriptorType::IOUSBDecriptorTypeReport.0;
258/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbphysicaldesc?language=objc)
259pub const kUSBPhysicalDesc: c_uint = 0x23;
260/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbhubdesc?language=objc)
261#[cfg(feature = "AppleUSBDefinitions")]
262pub const kUSBHUBDesc: c_uint = tIOUSBDescriptorType::IOUSBDescriptorTypeHub.0;
263
264/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicecapabilitywirelessusb?language=objc)
265#[cfg(feature = "AppleUSBDefinitions")]
266pub const kUSBDeviceCapabilityWirelessUSB: c_uint =
267    tIOUSBDeviceCapabilityType::IOUSBDeviceCapabilityTypeWireless.0;
268/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicecapabilityusb20extension?language=objc)
269#[cfg(feature = "AppleUSBDefinitions")]
270pub const kUSBDeviceCapabilityUSB20Extension: c_uint =
271    tIOUSBDeviceCapabilityType::IOUSBDeviceCapabilityTypeUSB20Extension.0;
272/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicecapabilitysuperspeedusb?language=objc)
273#[cfg(feature = "AppleUSBDefinitions")]
274pub const kUSBDeviceCapabilitySuperSpeedUSB: c_uint =
275    tIOUSBDeviceCapabilityType::IOUSBDeviceCapabilityTypeSuperSpeed.0;
276/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicecapabilitycontainerid?language=objc)
277#[cfg(feature = "AppleUSBDefinitions")]
278pub const kUSBDeviceCapabilityContainerID: c_uint =
279    tIOUSBDeviceCapabilityType::IOUSBDeviceCapabilityTypeContainerID.0;
280/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicecapabilitybillboard?language=objc)
281#[cfg(feature = "AppleUSBDefinitions")]
282pub const kUSBDeviceCapabilityBillboard: c_uint =
283    tIOUSBDeviceCapabilityType::IOUSBDeviceCapabilityTypeBillboard.0;
284/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdevicecapabilitybillboardaltmode?language=objc)
285#[cfg(feature = "AppleUSBDefinitions")]
286pub const kUSBDeviceCapabilityBillboardAltMode: c_uint =
287    tIOUSBDeviceCapabilityType::IOUSBDeviceCapabilityTypeBillboardAltMode.0;
288
289/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfeatureendpointstall?language=objc)
290#[cfg(feature = "AppleUSBDefinitions")]
291pub const kUSBFeatureEndpointStall: c_uint = IOUSBEndpointFeatureSelectorStall;
292/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfeaturedeviceremotewakeup?language=objc)
293#[cfg(feature = "AppleUSBDefinitions")]
294pub const kUSBFeatureDeviceRemoteWakeup: c_uint = kIOUSBDeviceFeatureSelectorRemoteWakeup;
295/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfeaturetestmode?language=objc)
296#[cfg(feature = "AppleUSBDefinitions")]
297pub const kUSBFeatureTestMode: c_uint = kIOUSBDeviceFeatureSelectorTestMode;
298/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfeaturefunctionsuspend?language=objc)
299#[cfg(feature = "AppleUSBDefinitions")]
300pub const kUSBFeatureFunctionSuspend: c_uint = kIOUSBInterfaceFeatureSelectorSuspend;
301/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfeatureu1enable?language=objc)
302#[cfg(feature = "AppleUSBDefinitions")]
303pub const kUSBFeatureU1Enable: c_uint = kIOUSBDeviceFeatureSelectorU1Enable;
304/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfeatureu2enable?language=objc)
305#[cfg(feature = "AppleUSBDefinitions")]
306pub const kUSBFeatureU2Enable: c_uint = kIOUSBDeviceFeatureSelectorU2Enable;
307/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfeatureltmenable?language=objc)
308#[cfg(feature = "AppleUSBDefinitions")]
309pub const kUSBFeatureLTMEnable: c_uint = kIOUSBDeviceFeatureSelectorLTMEnable;
310
311/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfunctionremotewakecapablebit?language=objc)
312#[cfg(feature = "AppleUSBDefinitions")]
313pub const kUSBFunctionRemoteWakeCapableBit: c_uint = IOUSBBit!(0);
314/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfunctionremotewakeupbit?language=objc)
315#[cfg(feature = "AppleUSBDefinitions")]
316pub const kUSBFunctionRemoteWakeupBit: c_uint = IOUSBBit!(1);
317/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusblowpowersuspendstatebit?language=objc)
318#[cfg(feature = "AppleUSBDefinitions")]
319pub const kUSBLowPowerSuspendStateBit: c_uint = IOUSBBit!(0);
320/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfunctionremotewakeenablebit?language=objc)
321#[cfg(feature = "AppleUSBDefinitions")]
322pub const kUSBFunctionRemoteWakeEnableBit: c_uint = IOUSBBit!(1);
323
324/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb100maavailable?language=objc)
325pub const kUSB100mAAvailable: c_uint = 50;
326/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb500maavailable?language=objc)
327pub const kUSB500mAAvailable: c_uint = 250;
328/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb100ma?language=objc)
329pub const kUSB100mA: c_uint = 50;
330/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbatrbuspowered?language=objc)
331pub const kUSBAtrBusPowered: c_uint = 0x80;
332/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbatrselfpowered?language=objc)
333pub const kUSBAtrSelfPowered: c_uint = 0x40;
334/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbatrremotewakeup?language=objc)
335pub const kUSBAtrRemoteWakeup: c_uint = 0x20;
336/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb2maxpowerperport?language=objc)
337#[cfg(feature = "AppleUSBDefinitions")]
338pub const kUSB2MaxPowerPerPort: c_uint = tIOUSB20BusCurrent::IOUSB20BusCurrentDefault.0;
339/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb150maavailable?language=objc)
340pub const kUSB150mAAvailable: c_uint = 75;
341/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb900maavailable?language=objc)
342pub const kUSB900mAAvailable: c_uint = 450;
343/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb150ma?language=objc)
344pub const kUSB150mA: c_uint = 75;
345/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb3maxpowerperport?language=objc)
346#[cfg(feature = "AppleUSBDefinitions")]
347pub const kUSB3MaxPowerPerPort: c_uint = tIOUSB30BusCurrent::IOUSB30BusCurrentDefault.0;
348
349/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrel10?language=objc)
350pub const kUSBRel10: c_uint = 0x0100;
351/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrel11?language=objc)
352pub const kUSBRel11: c_uint = 0x0110;
353/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrel20?language=objc)
354pub const kUSBRel20: c_uint = 0x0200;
355/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrel30?language=objc)
356pub const kUSBRel30: c_uint = 0x0300;
357
358/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidrqgetreport?language=objc)
359pub const kHIDRqGetReport: c_uint = 1;
360/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidrqgetidle?language=objc)
361pub const kHIDRqGetIdle: c_uint = 2;
362/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidrqgetprotocol?language=objc)
363pub const kHIDRqGetProtocol: c_uint = 3;
364/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidrqsetreport?language=objc)
365pub const kHIDRqSetReport: c_uint = 9;
366/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidrqsetidle?language=objc)
367pub const kHIDRqSetIdle: c_uint = 10;
368/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidrqsetprotocol?language=objc)
369pub const kHIDRqSetProtocol: c_uint = 11;
370
371/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidrtinputreport?language=objc)
372pub const kHIDRtInputReport: c_uint = 1;
373/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidrtoutputreport?language=objc)
374pub const kHIDRtOutputReport: c_uint = 2;
375/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidrtfeaturereport?language=objc)
376pub const kHIDRtFeatureReport: c_uint = 3;
377
378/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidbootprotocolvalue?language=objc)
379pub const kHIDBootProtocolValue: c_uint = 0;
380/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidreportprotocolvalue?language=objc)
381pub const kHIDReportProtocolValue: c_uint = 1;
382
383/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcapslockkey?language=objc)
384pub const kUSBCapsLockKey: c_uint = 0x39;
385/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbnumlockkey?language=objc)
386pub const kUSBNumLockKey: c_uint = 0x53;
387/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbscrolllockkey?language=objc)
388pub const kUSBScrollLockKey: c_uint = 0x47;
389
390/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcompositeclass?language=objc)
391pub const kUSBCompositeClass: c_uint = 0;
392/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommclass?language=objc)
393pub const kUSBCommClass: c_uint = 2;
394/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommunicationclass?language=objc)
395pub const kUSBCommunicationClass: c_uint = 2;
396/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbhubclass?language=objc)
397pub const kUSBHubClass: c_uint = 9;
398/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdataclass?language=objc)
399pub const kUSBDataClass: c_uint = 10;
400/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbpersonalhealthcareclass?language=objc)
401pub const kUSBPersonalHealthcareClass: c_uint = 15;
402/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardclass?language=objc)
403pub const kUSBBillBoardClass: c_uint = 17;
404/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdiagnosticclass?language=objc)
405pub const kUSBDiagnosticClass: c_uint = 220;
406/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbwirelesscontrollerclass?language=objc)
407pub const kUSBWirelessControllerClass: c_uint = 224;
408/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmiscellaneousclass?language=objc)
409pub const kUSBMiscellaneousClass: c_uint = 239;
410/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbapplicationspecificclass?language=objc)
411pub const kUSBApplicationSpecificClass: c_uint = 254;
412/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvendorspecificclass?language=objc)
413pub const kUSBVendorSpecificClass: c_uint = 255;
414
415/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbaudioclass?language=objc)
416pub const kUSBAudioClass: c_uint = 1;
417/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbaudiointerfaceclass?language=objc)
418pub const kUSBAudioInterfaceClass: c_uint = 1;
419/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommunicationcontrolinterfaceclass?language=objc)
420pub const kUSBCommunicationControlInterfaceClass: c_uint = 2;
421/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommunicationdatainterfaceclass?language=objc)
422pub const kUSBCommunicationDataInterfaceClass: c_uint = 10;
423/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbhidclass?language=objc)
424pub const kUSBHIDClass: c_uint = 3;
425/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbhidinterfaceclass?language=objc)
426pub const kUSBHIDInterfaceClass: c_uint = 3;
427/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbphysicalinterfaceclass?language=objc)
428pub const kUSBPhysicalInterfaceClass: c_uint = 5;
429/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbimageinterfaceclass?language=objc)
430pub const kUSBImageInterfaceClass: c_uint = 6;
431/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbprintingclass?language=objc)
432pub const kUSBPrintingClass: c_uint = 7;
433/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbprintinginterfaceclass?language=objc)
434pub const kUSBPrintingInterfaceClass: c_uint = 7;
435/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmassstorageclass?language=objc)
436pub const kUSBMassStorageClass: c_uint = 8;
437/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmassstorageinterfaceclass?language=objc)
438pub const kUSBMassStorageInterfaceClass: c_uint = 8;
439/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbchipsmartcardinterfaceclass?language=objc)
440pub const kUSBChipSmartCardInterfaceClass: c_uint = 11;
441/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcontentsecurityinterfaceclass?language=objc)
442pub const kUSBContentSecurityInterfaceClass: c_uint = 13;
443/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvideointerfaceclass?language=objc)
444pub const kUSBVideoInterfaceClass: c_uint = 14;
445/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbpersonalhealthcareinterfaceclass?language=objc)
446pub const kUSBPersonalHealthcareInterfaceClass: c_uint = 15;
447/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdiagnosticdeviceinterfaceclass?language=objc)
448pub const kUSBDiagnosticDeviceInterfaceClass: c_uint = 220;
449/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbwirelesscontrollerinterfaceclass?language=objc)
450pub const kUSBWirelessControllerInterfaceClass: c_uint = 224;
451/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbapplicationspecificinterfaceclass?language=objc)
452pub const kUSBApplicationSpecificInterfaceClass: c_uint = 254;
453/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvendorspecificinterfaceclass?language=objc)
454pub const kUSBVendorSpecificInterfaceClass: c_uint = 255;
455
456/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdisplayclass?language=objc)
457pub const kUSBDisplayClass: c_uint = 4;
458
459/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcompositesubclass?language=objc)
460pub const kUSBCompositeSubClass: c_uint = 0;
461/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbhubsubclass?language=objc)
462pub const kUSBHubSubClass: c_uint = 0;
463/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbaudiocontrolsubclass?language=objc)
464pub const kUSBAudioControlSubClass: c_uint = 0x01;
465/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbaudiostreamingsubclass?language=objc)
466pub const kUSBAudioStreamingSubClass: c_uint = 0x02;
467/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmidistreamingsubclass?language=objc)
468pub const kUSBMIDIStreamingSubClass: c_uint = 0x03;
469/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdfusubclass?language=objc)
470pub const kUSBDFUSubClass: c_uint = 0x01;
471/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbirdabridgesubclass?language=objc)
472pub const kUSBIrDABridgeSubClass: c_uint = 0x02;
473/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbtestmeasurementsubclass?language=objc)
474pub const kUSBTestMeasurementSubClass: c_uint = 0x03;
475/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmassstoragerbcsubclass?language=objc)
476pub const kUSBMassStorageRBCSubClass: c_uint = 0x01;
477/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmassstorageatapisubclass?language=objc)
478pub const kUSBMassStorageATAPISubClass: c_uint = 0x02;
479/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmassstorageqic157subclass?language=objc)
480pub const kUSBMassStorageQIC157SubClass: c_uint = 0x03;
481/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmassstorageufisubclass?language=objc)
482pub const kUSBMassStorageUFISubClass: c_uint = 0x04;
483/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmassstoragesff8070isubclass?language=objc)
484pub const kUSBMassStorageSFF8070iSubClass: c_uint = 0x05;
485/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbmassstoragescsisubclass?language=objc)
486pub const kUSBMassStorageSCSISubClass: c_uint = 0x06;
487/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbhidbootinterfacesubclass?language=objc)
488pub const kUSBHIDBootInterfaceSubClass: c_uint = 0x01;
489/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommdirectlinesubclass?language=objc)
490pub const kUSBCommDirectLineSubClass: c_uint = 0x01;
491/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommabstractsubclass?language=objc)
492pub const kUSBCommAbstractSubClass: c_uint = 0x02;
493/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommtelephonesubclass?language=objc)
494pub const kUSBCommTelephoneSubClass: c_uint = 0x03;
495/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommmultichannelsubclass?language=objc)
496pub const kUSBCommMultiChannelSubClass: c_uint = 0x04;
497/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommcapisubclass?language=objc)
498pub const kUSBCommCAPISubClass: c_uint = 0x05;
499/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommethernetnetworkingsubclass?language=objc)
500pub const kUSBCommEthernetNetworkingSubClass: c_uint = 0x06;
501/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbatmnetworkingsubclass?language=objc)
502pub const kUSBATMNetworkingSubClass: c_uint = 0x07;
503/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbreprogrammablediagnosticsubclass?language=objc)
504pub const kUSBReprogrammableDiagnosticSubClass: c_uint = 0x01;
505/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbrfcontrollersubclass?language=objc)
506pub const kUSBRFControllerSubClass: c_uint = 0x01;
507/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbcommonclasssubclass?language=objc)
508pub const kUSBCommonClassSubClass: c_uint = 0x02;
509/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvideocontrolsubclass?language=objc)
510pub const kUSBVideoControlSubClass: c_uint = 0x01;
511/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvideostreamingsubclass?language=objc)
512pub const kUSBVideoStreamingSubClass: c_uint = 0x02;
513/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvideointerfacecollectionsubclass?language=objc)
514pub const kUSBVideoInterfaceCollectionSubClass: c_uint = 0x03;
515
516/// [Apple's documentation](https://developer.apple.com/documentation/iokit/usbclassspecificdesc?language=objc)
517#[repr(transparent)]
518#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
519pub struct USBClassSpecificDesc(pub c_uint);
520impl USBClassSpecificDesc {
521    #[doc(alias = "kUSBClassSpecificDescriptor")]
522    pub const Descriptor: Self = Self(0x24);
523}
524
525#[cfg(feature = "objc2")]
526unsafe impl Encode for USBClassSpecificDesc {
527    const ENCODING: Encoding = c_uint::ENCODING;
528}
529
530#[cfg(feature = "objc2")]
531unsafe impl RefEncode for USBClassSpecificDesc {
532    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
533}
534
535/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khubsuperspeedprotocol?language=objc)
536pub const kHubSuperSpeedProtocol: c_uint = 3;
537/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidnointerfaceprotocol?language=objc)
538pub const kHIDNoInterfaceProtocol: c_uint = 0;
539/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidkeyboardinterfaceprotocol?language=objc)
540pub const kHIDKeyboardInterfaceProtocol: c_uint = 1;
541/// [Apple's documentation](https://developer.apple.com/documentation/iokit/khidmouseinterfaceprotocol?language=objc)
542pub const kHIDMouseInterfaceProtocol: c_uint = 2;
543/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbvendorspecificprotocol?language=objc)
544pub const kUSBVendorSpecificProtocol: c_uint = 0xff;
545/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb2compliancedeviceprotocol?language=objc)
546pub const kUSB2ComplianceDeviceProtocol: c_uint = 0x01;
547/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbluetoothprogramminginterfaceprotocol?language=objc)
548pub const kUSBBluetoothProgrammingInterfaceProtocol: c_uint = 0x01;
549/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbinterfaceassociationdescriptorprotocol?language=objc)
550pub const KUSBInterfaceAssociationDescriptorProtocol: c_uint = 0x01;
551/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kmscprotocolcontrolbulkinterrupt?language=objc)
552pub const kMSCProtocolControlBulkInterrupt: c_uint = 0x00;
553/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kmscprotocolcontrolbulk?language=objc)
554pub const kMSCProtocolControlBulk: c_uint = 0x01;
555/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kmscprotocolbulkonly?language=objc)
556pub const kMSCProtocolBulkOnly: c_uint = 0x50;
557/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kmscprotocolusbattachedscsi?language=objc)
558pub const kMSCProtocolUSBAttachedSCSI: c_uint = 0x62;
559
560/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdfuattributesmask?language=objc)
561pub const kUSBDFUAttributesMask: c_uint = 0x07;
562/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdfucandownloadbit?language=objc)
563pub const kUSBDFUCanDownloadBit: c_uint = 0;
564/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdfucanuploadbit?language=objc)
565pub const kUSBDFUCanUploadBit: c_uint = 1;
566/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdfumanifestationtolerantbit?language=objc)
567pub const kUSBDFUManifestationTolerantBit: c_uint = 2;
568
569/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusprintingclassgetdeviceid?language=objc)
570pub const kUSPrintingClassGetDeviceID: c_uint = 0;
571/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusprintingclassgeportstatus?language=objc)
572pub const kUSPrintingClassGePortStatus: c_uint = 1;
573/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusprintingclasssoftreset?language=objc)
574pub const kUSPrintingClassSoftReset: c_uint = 2;
575
576/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbendpointaddressmask?language=objc)
577pub const kUSBbEndpointAddressMask: c_uint = 0x0f;
578/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbendpointdirectionbit?language=objc)
579#[cfg(feature = "AppleUSBDefinitions")]
580pub const kUSBbEndpointDirectionBit: c_uint = kIOUSBEndpointDescriptorDirectionPhase;
581/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbendpointdirectionmask?language=objc)
582#[cfg(feature = "AppleUSBDefinitions")]
583pub const kUSBbEndpointDirectionMask: c_uint = kIOUSBEndpointDescriptorDirection;
584/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbendpointdirectionout?language=objc)
585#[cfg(feature = "AppleUSBDefinitions")]
586pub const kUSBEndpointDirectionOut: c_uint = kIOUSBEndpointDescriptorDirectionOut;
587/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbendpointdirectionin?language=objc)
588#[cfg(feature = "AppleUSBDefinitions")]
589pub const kUSBEndpointDirectionIn: c_uint = kIOUSBEndpointDescriptorDirectionIn;
590/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbendpointbmattributestransfertypemask?language=objc)
591#[cfg(feature = "AppleUSBDefinitions")]
592pub const kUSBEndpointbmAttributesTransferTypeMask: c_uint = kIOUSBEndpointDescriptorTransferType;
593/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbendpointbmattributessynchronizationtypemask?language=objc)
594#[cfg(feature = "AppleUSBDefinitions")]
595pub const kUSBEndpointbmAttributesSynchronizationTypeMask: c_uint =
596    kIOUSBEndpointDescriptorSynchronizationType;
597/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbendpointbmattributessynchronizationtypeshift?language=objc)
598pub const kUSBEndpointbmAttributesSynchronizationTypeShift: c_uint = 2;
599/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbendpointbmattributesusagetypemask?language=objc)
600#[cfg(feature = "AppleUSBDefinitions")]
601pub const kUSBEndpointbmAttributesUsageTypeMask: c_uint = kIOUSBEndpointDescriptorUsageType;
602/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbendpointbmattributesusagetypeshift?language=objc)
603pub const kUSBEndpointbmAttributesUsageTypeShift: c_uint = 4;
604/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbperiodicinterruptusagetype?language=objc)
605pub const kUSBPeriodicInterruptUsageType: c_uint = 0;
606/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbnotificationinterruptusagetype?language=objc)
607pub const kUSBNotificationInterruptUsageType: c_uint = 1;
608/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbnosynchronizationisocsynctype?language=objc)
609pub const kUSBNoSynchronizationIsocSyncType: c_uint = 0;
610/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbasynchronousisocsynctype?language=objc)
611pub const kUSBAsynchronousIsocSyncType: c_uint = 1;
612/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbadaptiveisocsynctype?language=objc)
613pub const kUSBAdaptiveIsocSyncType: c_uint = 2;
614/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbsynchronousisocsynctype?language=objc)
615pub const kUSBSynchronousIsocSyncType: c_uint = 3;
616/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbdataisocusagetype?language=objc)
617pub const kUSBDataIsocUsageType: c_uint = 0;
618/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbfeedbackisocusagetype?language=objc)
619pub const kUSBFeedbackIsocUsageType: c_uint = 1;
620/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbimplicitfeedbackdataisocusagetype?language=objc)
621pub const kUSBImplicitFeedbackDataIsocUsageType: c_uint = 2;
622
623/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusb20extensionlpmsupported?language=objc)
624pub const kUSB20ExtensionLPMSupported: c_uint = 1;
625/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbsuperspeedltmcapable?language=objc)
626pub const kUSBSuperSpeedLTMCapable: c_uint = 1;
627/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbsuperspeedsupportsls?language=objc)
628pub const kUSBSuperSpeedSupportsLS: c_uint = 0;
629/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbsuperspeedsupportsfs?language=objc)
630pub const kUSBSuperSpeedSupportsFS: c_uint = 1;
631/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbsuperspeedsupportshs?language=objc)
632pub const kUSBSuperSpeedSupportsHS: c_uint = 2;
633/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbsuperspeedsupportsss?language=objc)
634pub const kUSBSuperSpeedSupportsSS: c_uint = 3;
635
636/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardvconn1watt?language=objc)
637pub const kUSBBillboardVConn1Watt: c_uint = 0;
638/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardvconn1p5watt?language=objc)
639pub const kUSBBillboardVConn1P5Watt: c_uint = 1;
640/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardvconn2watt?language=objc)
641pub const kUSBBillboardVConn2Watt: c_uint = 2;
642/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardvconn3watt?language=objc)
643pub const kUSBBillboardVConn3Watt: c_uint = 3;
644/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardvconn4watt?language=objc)
645pub const kUSBBillboardVConn4Watt: c_uint = 4;
646/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardvconn5watt?language=objc)
647pub const kUSBBillboardVConn5Watt: c_uint = 5;
648/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardvconn6watt?language=objc)
649pub const kUSBBillboardVConn6Watt: c_uint = 6;
650/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardvconnreserved?language=objc)
651pub const kUSBBillboardVConnReserved: c_uint = 7;
652
653/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardunspecifiederror?language=objc)
654pub const kUSBBillboardUnspecifiedError: c_uint = 0;
655/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardconfignotattempted?language=objc)
656pub const kUSBBillboardConfigNotAttempted: c_uint = 1;
657/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardconfigunsuccessful?language=objc)
658pub const kUSBBillboardConfigUnsuccessful: c_uint = 2;
659/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardaltmodeconfigsuccess?language=objc)
660pub const kUSBBillboardAltModeConfigSuccess: c_uint = 3;
661
662/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardadditinalinfonopower?language=objc)
663pub const kUSBBillboardAdditinalInfoNoPower: c_uint = 1;
664/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kusbbillboardadditinalinfonousbpd?language=objc)
665pub const kUSBBillboardAdditinalInfoNoUSBPD: c_uint = 2;
666
667/// [Apple's documentation](https://developer.apple.com/documentation/iokit/kapplevendorid?language=objc)
668#[cfg(feature = "AppleUSBDefinitions")]
669pub const kAppleVendorID: c_uint = kIOUSBAppleVendorID;