objc2_io_usb_host/generated/
IOUSBHostControllerInterfaceDefinitions.rs1use core::ffi::*;
4use objc2::__framework_prelude::*;
5#[cfg(feature = "objc2-io-kit")]
6use objc2_io_kit::*;
7
8use crate::*;
9
10#[repr(transparent)]
12#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
13pub struct IOUSBHostCIUserClientVersion(pub c_uint);
14impl IOUSBHostCIUserClientVersion {
15 #[doc(alias = "IOUSBHostCIUserClientVersion100")]
16 pub const Version100: Self = Self(0);
17}
18
19unsafe impl Encode for IOUSBHostCIUserClientVersion {
20 const ENCODING: Encoding = c_uint::ENCODING;
21}
22
23unsafe impl RefEncode for IOUSBHostCIUserClientVersion {
24 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
25}
26
27#[repr(transparent)]
49#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
50pub struct IOUSBHostCIExceptionType(pub c_uint);
51impl IOUSBHostCIExceptionType {
52 #[doc(alias = "IOUSBHostCIExceptionTypeUnknown")]
53 pub const Unknown: Self = Self(0);
54 #[doc(alias = "IOUSBHostCIExceptionTypeCapabilitiesInvalid")]
55 pub const CapabilitiesInvalid: Self = Self(1);
56 #[doc(alias = "IOUSBHostCIExceptionTypeTerminated")]
57 pub const Terminated: Self = Self(2);
58 #[doc(alias = "IOUSBHostCIExceptionTypeCommandReadCollision")]
59 pub const CommandReadCollision: Self = Self(3);
60 #[doc(alias = "IOUSBHostCIExceptionTypeCommandWriteFailed")]
61 pub const CommandWriteFailed: Self = Self(4);
62 #[doc(alias = "IOUSBHostCIExceptionTypeCommandTimeout")]
63 pub const CommandTimeout: Self = Self(5);
64 #[doc(alias = "IOUSBHostCIExceptionTypeCommandFailure")]
65 pub const CommandFailure: Self = Self(6);
66 #[doc(alias = "IOUSBHostCIExceptionTypeInterruptInvalid")]
67 pub const InterruptInvalid: Self = Self(7);
68 #[doc(alias = "IOUSBHostCIExceptionTypeInterruptOverflow")]
69 pub const InterruptOverflow: Self = Self(8);
70 #[doc(alias = "IOUSBHostCIExceptionTypeDoorbellReadCollision")]
71 pub const DoorbellReadCollision: Self = Self(9);
72 #[doc(alias = "IOUSBHostCIExceptionTypeDoorbellOverflow")]
73 pub const DoorbellOverflow: Self = Self(10);
74 #[doc(alias = "IOUSBHostCIExceptionTypeProtocolError")]
75 pub const ProtocolError: Self = Self(11);
76 #[doc(alias = "IOUSBHostCIExceptionTypeFrameUpdateError")]
77 pub const FrameUpdateError: Self = Self(12);
78}
79
80unsafe impl Encode for IOUSBHostCIExceptionType {
81 const ENCODING: Encoding = c_uint::ENCODING;
82}
83
84unsafe impl RefEncode for IOUSBHostCIExceptionType {
85 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
86}
87
88#[repr(transparent)]
92#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
93pub struct IOUSBHostCIMessageType(pub c_uint);
94impl IOUSBHostCIMessageType {
95 #[doc(alias = "IOUSBHostCIMessageTypeControllerCapabilities")]
96 pub const ControllerCapabilities: Self = Self(0x0);
97 #[doc(alias = "IOUSBHostCIMessageTypePortCapabilities")]
98 pub const PortCapabilities: Self = Self(1);
99 #[doc(alias = "IOUSBHostCIMessageTypePortEvent")]
100 pub const PortEvent: Self = Self(0x8);
101 #[doc(alias = "IOUSBHostCIMessageTypeFrameNumberUpdate")]
102 pub const FrameNumberUpdate: Self = Self(9);
103 #[doc(alias = "IOUSBHostCIMessageTypeFrameTimestampUpdate")]
104 pub const FrameTimestampUpdate: Self = Self(10);
105 #[doc(alias = "IOUSBHostCIMessageTypeCommandMin")]
106 pub const CommandMin: Self = Self(0x10);
107 #[doc(alias = "IOUSBHostCIMessageTypeControllerPowerOn")]
108 pub const ControllerPowerOn: Self = Self(0x10);
109 #[doc(alias = "IOUSBHostCIMessageTypeControllerPowerOff")]
110 pub const ControllerPowerOff: Self = Self(17);
111 #[doc(alias = "IOUSBHostCIMessageTypeControllerStart")]
112 pub const ControllerStart: Self = Self(18);
113 #[doc(alias = "IOUSBHostCIMessageTypeControllerPause")]
114 pub const ControllerPause: Self = Self(19);
115 #[doc(alias = "IOUSBHostCIMessageTypeControllerFrameNumber")]
116 pub const ControllerFrameNumber: Self = Self(20);
117 #[doc(alias = "IOUSBHostCIMessageTypePortPowerOn")]
118 pub const PortPowerOn: Self = Self(0x18);
119 #[doc(alias = "IOUSBHostCIMessageTypePortPowerOff")]
120 pub const PortPowerOff: Self = Self(25);
121 #[doc(alias = "IOUSBHostCIMessageTypePortResume")]
122 pub const PortResume: Self = Self(26);
123 #[doc(alias = "IOUSBHostCIMessageTypePortSuspend")]
124 pub const PortSuspend: Self = Self(27);
125 #[doc(alias = "IOUSBHostCIMessageTypePortReset")]
126 pub const PortReset: Self = Self(28);
127 #[doc(alias = "IOUSBHostCIMessageTypePortDisable")]
128 pub const PortDisable: Self = Self(29);
129 #[doc(alias = "IOUSBHostCIMessageTypePortStatus")]
130 pub const PortStatus: Self = Self(30);
131 #[doc(alias = "IOUSBHostCIMessageTypeDeviceCreate")]
132 pub const DeviceCreate: Self = Self(0x20);
133 #[doc(alias = "IOUSBHostCIMessageTypeDeviceDestroy")]
134 pub const DeviceDestroy: Self = Self(33);
135 #[doc(alias = "IOUSBHostCIMessageTypeDeviceStart")]
136 pub const DeviceStart: Self = Self(34);
137 #[doc(alias = "IOUSBHostCIMessageTypeDevicePause")]
138 pub const DevicePause: Self = Self(35);
139 #[doc(alias = "IOUSBHostCIMessageTypeDeviceUpdate")]
140 pub const DeviceUpdate: Self = Self(36);
141 #[doc(alias = "IOUSBHostCIMessageTypeEndpointCreate")]
142 pub const EndpointCreate: Self = Self(0x28);
143 #[doc(alias = "IOUSBHostCIMessageTypeEndpointDestroy")]
144 pub const EndpointDestroy: Self = Self(41);
145 #[doc(alias = "IOUSBHostCIMessageTypeEndpoint_reserved_")]
146 pub const Endpoint_reserved_: Self = Self(42);
147 #[doc(alias = "IOUSBHostCIMessageTypeEndpointPause")]
148 pub const EndpointPause: Self = Self(43);
149 #[doc(alias = "IOUSBHostCIMessageTypeEndpointUpdate")]
150 pub const EndpointUpdate: Self = Self(44);
151 #[doc(alias = "IOUSBHostCIMessageTypeEndpointReset")]
152 pub const EndpointReset: Self = Self(45);
153 #[doc(alias = "IOUSBHostCIMessageTypeEndpointSetNextTransfer")]
154 pub const EndpointSetNextTransfer: Self = Self(46);
155 #[doc(alias = "IOUSBHostCIMessageTypeCommandMax")]
156 pub const CommandMax: Self = Self(0x37);
157 #[doc(alias = "IOUSBHostCIMessageTypeSetupTransfer")]
158 pub const SetupTransfer: Self = Self(0x38);
159 #[doc(alias = "IOUSBHostCIMessageTypeNormalTransfer")]
160 pub const NormalTransfer: Self = Self(57);
161 #[doc(alias = "IOUSBHostCIMessageTypeStatusTransfer")]
162 pub const StatusTransfer: Self = Self(58);
163 #[doc(alias = "IOUSBHostCIMessageTypeIsochronousTransfer")]
164 pub const IsochronousTransfer: Self = Self(59);
165 #[doc(alias = "IOUSBHostCIMessageTypeLink")]
166 pub const Link: Self = Self(60);
167 #[doc(alias = "IOUSBHostCIMessageTypeTransferComplete")]
168 pub const TransferComplete: Self = Self(61);
169}
170
171unsafe impl Encode for IOUSBHostCIMessageType {
172 const ENCODING: Encoding = c_uint::ENCODING;
173}
174
175unsafe impl RefEncode for IOUSBHostCIMessageType {
176 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
177}
178
179#[repr(transparent)]
183#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
184pub struct IOUSBHostCIMessageStatus(pub c_uint);
185impl IOUSBHostCIMessageStatus {
186 #[doc(alias = "IOUSBHostCIMessageStatusReserved")]
187 pub const Reserved: Self = Self(0);
188 #[doc(alias = "IOUSBHostCIMessageStatusSuccess")]
189 pub const Success: Self = Self(1);
190 #[doc(alias = "IOUSBHostCIMessageStatusOffline")]
191 pub const Offline: Self = Self(2);
192 #[doc(alias = "IOUSBHostCIMessageStatusNotPermitted")]
193 pub const NotPermitted: Self = Self(3);
194 #[doc(alias = "IOUSBHostCIMessageStatusBadArgument")]
195 pub const BadArgument: Self = Self(4);
196 #[doc(alias = "IOUSBHostCIMessageStatusTimeout")]
197 pub const Timeout: Self = Self(5);
198 #[doc(alias = "IOUSBHostCIMessageStatusNoResources")]
199 pub const NoResources: Self = Self(6);
200 #[doc(alias = "IOUSBHostCIMessageStatusEndpointStopped")]
201 pub const EndpointStopped: Self = Self(7);
202 #[doc(alias = "IOUSBHostCIMessageStatusProtocolError")]
203 pub const ProtocolError: Self = Self(8);
204 #[doc(alias = "IOUSBHostCIMessageStatusTransactionError")]
205 pub const TransactionError: Self = Self(9);
206 #[doc(alias = "IOUSBHostCIMessageStatusOverrunError")]
207 pub const OverrunError: Self = Self(10);
208 #[doc(alias = "IOUSBHostCIMessageStatusStallError")]
209 pub const StallError: Self = Self(11);
210 #[doc(alias = "IOUSBHostCIMessageStatusMissedServiceError")]
211 pub const MissedServiceError: Self = Self(12);
212 #[doc(alias = "IOUSBHostCIMessageStatusError")]
213 pub const Error: Self = Self(13);
214}
215
216unsafe impl Encode for IOUSBHostCIMessageStatus {
217 const ENCODING: Encoding = c_uint::ENCODING;
218}
219
220unsafe impl RefEncode for IOUSBHostCIMessageStatus {
221 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
222}
223
224#[repr(transparent)]
228#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
229pub struct IOUSBHostCIDeviceSpeed(pub c_uint);
230impl IOUSBHostCIDeviceSpeed {
231 #[doc(alias = "IOUSBHostCIDeviceSpeedNone")]
232 #[cfg(feature = "objc2-io-kit")]
233 pub const None: Self = Self(tIOUSBHostConnectionSpeed::IOUSBHostConnectionSpeedNone.0);
234 #[doc(alias = "IOUSBHostCIDeviceSpeedFull")]
235 #[cfg(feature = "objc2-io-kit")]
236 pub const Full: Self = Self(tIOUSBHostConnectionSpeed::IOUSBHostConnectionSpeedFull.0);
237 #[doc(alias = "IOUSBHostCIDeviceSpeedLow")]
238 #[cfg(feature = "objc2-io-kit")]
239 pub const Low: Self = Self(tIOUSBHostConnectionSpeed::IOUSBHostConnectionSpeedLow.0);
240 #[doc(alias = "IOUSBHostCIDeviceSpeedHigh")]
241 #[cfg(feature = "objc2-io-kit")]
242 pub const High: Self = Self(tIOUSBHostConnectionSpeed::IOUSBHostConnectionSpeedHigh.0);
243 #[doc(alias = "IOUSBHostCIDeviceSpeedSuper")]
244 #[cfg(feature = "objc2-io-kit")]
245 pub const Super: Self = Self(tIOUSBHostConnectionSpeed::IOUSBHostConnectionSpeedSuper.0);
246 #[doc(alias = "IOUSBHostCIDeviceSpeedSuperPlus")]
247 #[cfg(feature = "objc2-io-kit")]
248 pub const SuperPlus: Self =
249 Self(tIOUSBHostConnectionSpeed::IOUSBHostConnectionSpeedSuperPlus.0);
250 #[doc(alias = "IOUSBHostCIDeviceSpeedSuperPlusBy2")]
251 #[cfg(feature = "objc2-io-kit")]
252 pub const SuperPlusBy2: Self =
253 Self(tIOUSBHostConnectionSpeed::IOUSBHostConnectionSpeedSuperPlusBy2.0);
254}
255
256unsafe impl Encode for IOUSBHostCIDeviceSpeed {
257 const ENCODING: Encoding = c_uint::ENCODING;
258}
259
260unsafe impl RefEncode for IOUSBHostCIDeviceSpeed {
261 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
262}
263
264#[repr(transparent)]
268#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
269pub struct IOUSBHostCILinkState(pub c_uint);
270impl IOUSBHostCILinkState {
271 #[doc(alias = "IOUSBHostCILinkStateU0")]
272 pub const U0: Self = Self(0);
273 #[doc(alias = "IOUSBHostCILinkStateU1")]
274 pub const U1: Self = Self(1);
275 #[doc(alias = "IOUSBHostCILinkStateU2")]
276 pub const U2: Self = Self(2);
277 #[doc(alias = "IOUSBHostCILinkStateU3")]
278 pub const U3: Self = Self(3);
279 #[doc(alias = "IOUSBHostCILinkStateDisabled")]
280 pub const Disabled: Self = Self(4);
281 #[doc(alias = "IOUSBHostCILinkStateRxDetect")]
282 pub const RxDetect: Self = Self(5);
283 #[doc(alias = "IOUSBHostCILinkStateInactive")]
284 pub const Inactive: Self = Self(6);
285 #[doc(alias = "IOUSBHostCILinkStatePolling")]
286 pub const Polling: Self = Self(7);
287 #[doc(alias = "IOUSBHostCILinkStateRecovery")]
288 pub const Recovery: Self = Self(8);
289 #[doc(alias = "IOUSBHostCILinkStateReset")]
290 pub const Reset: Self = Self(9);
291 #[doc(alias = "IOUSBHostCILinkStateCompliance")]
292 pub const Compliance: Self = Self(10);
293 #[doc(alias = "IOUSBHostCILinkStateTest")]
294 pub const Test: Self = Self(11);
295 #[doc(alias = "IOUSBHostCILinkStateResume")]
296 pub const Resume: Self = Self(15);
297}
298
299unsafe impl Encode for IOUSBHostCILinkState {
300 const ENCODING: Encoding = c_uint::ENCODING;
301}
302
303unsafe impl RefEncode for IOUSBHostCILinkState {
304 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
305}
306
307pub type IOUSBHostCIPortStatus = u32;
309
310#[cfg(feature = "objc2-io-kit")]
312pub const IOUSBHostCIPortStatusPowered: c_uint = IOUSBBit!(0);
313#[cfg(feature = "objc2-io-kit")]
315pub const IOUSBHostCIPortStatusOvercurrent: c_uint = IOUSBBit!(1);
316#[cfg(feature = "objc2-io-kit")]
318pub const IOUSBHostCIPortStatusConnected: c_uint = IOUSBBit!(2);
319#[cfg(feature = "objc2-io-kit")]
321pub const IOUSBHostCIPortStatusLinkState: c_uint = IOUSBBitRange64!(4, 7);
322#[cfg(feature = "objc2-io-kit")]
324pub const IOUSBHostCIPortStatusLinkStatePhase: c_uint = IOUSBBitRangePhase!(4, 7);
325#[cfg(feature = "objc2-io-kit")]
327pub const IOUSBHostCIPortStatusSpeed: c_uint = IOUSBBitRange64!(8, 10);
328#[cfg(feature = "objc2-io-kit")]
330pub const IOUSBHostCIPortStatusSpeedPhase: c_uint = IOUSBBitRangePhase!(8, 10);
331#[cfg(feature = "objc2-io-kit")]
333pub const IOUSBHostCIPortStatusOvercurrentChange: c_uint = IOUSBBit!(17);
334#[cfg(feature = "objc2-io-kit")]
336pub const IOUSBHostCIPortStatusConnectChange: c_uint = IOUSBBit!(18);
337#[cfg(feature = "objc2-io-kit")]
339pub const IOUSBHostCIPortStatusLinkStateChange: c_uint = IOUSBBit!(20);
340pub const IOUSBHostCIPortStatusChangeMask: c_uint = IOUSBHostCIPortStatusLinkStateChange
342 | IOUSBHostCIPortStatusConnectChange
343 | IOUSBHostCIPortStatusOvercurrentChange;
344
345pub type IOUSBHostCIDoorbell = u32;
355
356#[cfg(feature = "objc2-io-kit")]
358pub const IOUSBHostCIDoorbellDeviceAddress: c_uint = IOUSBBitRange!(0, 7);
359#[cfg(feature = "objc2-io-kit")]
361pub const IOUSBHostCIDoorbellDeviceAddressPhase: c_uint = IOUSBBitRangePhase!(0, 7);
362#[cfg(feature = "objc2-io-kit")]
364pub const IOUSBHostCIDoorbellEndpointAddress: c_uint = IOUSBBitRange!(8, 15);
365#[cfg(feature = "objc2-io-kit")]
367pub const IOUSBHostCIDoorbellEndpointAddressPhase: c_uint = IOUSBBitRangePhase!(8, 15);
368#[cfg(feature = "objc2-io-kit")]
370pub const IOUSBHostCIDoorbellStreamID: c_uint = IOUSBBitRange!(16, 31);
371#[cfg(feature = "objc2-io-kit")]
373pub const IOUSBHostCIDoorbellStreamIDPhase: c_uint = IOUSBBitRangePhase!(16, 31);
374
375#[repr(C, packed)]
381#[derive(Clone, Copy, Debug, PartialEq)]
382pub struct IOUSBHostCIMessage {
383 pub control: u32,
384 pub data0: u32,
385 pub data1: u64,
386}
387
388unsafe impl Encode for IOUSBHostCIMessage {
389 const ENCODING: Encoding = Encoding::Struct(
390 "IOUSBHostCIMessage",
391 &[<u32>::ENCODING, <u32>::ENCODING, <u64>::ENCODING],
392 );
393}
394
395unsafe impl RefEncode for IOUSBHostCIMessage {
396 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
397}
398
399#[cfg(feature = "objc2-io-kit")]
401pub const IOUSBHostCIMessageControlType: c_uint = IOUSBBitRange!(0, 5);
402#[cfg(feature = "objc2-io-kit")]
404pub const IOUSBHostCIMessageControlTypePhase: c_uint = IOUSBBitRangePhase!(0, 5);
405#[cfg(feature = "objc2-io-kit")]
407pub const IOUSBHostCIMessageControlStatus: c_uint = IOUSBBitRange!(8, 11);
408#[cfg(feature = "objc2-io-kit")]
410pub const IOUSBHostCIMessageControlStatusPhase: c_uint = IOUSBBitRangePhase!(8, 11);
411#[cfg(feature = "objc2-io-kit")]
413pub const IOUSBHostCIMessageControlNoResponse: c_uint = IOUSBBit!(14);
414#[cfg(feature = "objc2-io-kit")]
416pub const IOUSBHostCIMessageControlValid: c_uint = IOUSBBit!(15);
417
418#[cfg(feature = "objc2-io-kit")]
420pub const IOUSBHostCICapabilitiesMessageControlPortCount: c_uint = IOUSBBitRange!(16, 19);
421#[cfg(feature = "objc2-io-kit")]
423pub const IOUSBHostCICapabilitiesMessageControlPortCountPhase: c_uint = IOUSBBitRangePhase!(16, 19);
424#[cfg(feature = "objc2-io-kit")]
426pub const IOUSBHostCICapabilitiesMessageData0CommandTimeoutThreshold: c_uint = IOUSBBitRange!(0, 1);
427#[cfg(feature = "objc2-io-kit")]
429pub const IOUSBHostCICapabilitiesMessageData0CommandTimeoutThresholdPhase: c_uint =
430 IOUSBBitRangePhase!(0, 1);
431#[cfg(feature = "objc2-io-kit")]
433pub const IOUSBHostCICapabilitiesMessageData0ConnectionLatency: c_uint = IOUSBBitRange!(4, 7);
434#[cfg(feature = "objc2-io-kit")]
436pub const IOUSBHostCICapabilitiesMessageData0ConnectionLatencyPhase: c_uint =
437 IOUSBBitRangePhase!(4, 7);
438
439#[cfg(feature = "objc2-io-kit")]
441pub const IOUSBHostCIPortCapabilitiesMessageControlPortNumber: c_uint = IOUSBBitRange!(16, 19);
442#[cfg(feature = "objc2-io-kit")]
444pub const IOUSBHostCIPortCapabilitiesMessageControlPortNumberPhase: c_uint =
445 IOUSBBitRangePhase!(16, 19);
446#[cfg(feature = "objc2-io-kit")]
448pub const IOUSBHostCIPortCapabilitiesMessageControlInternalConnector: c_uint = IOUSBBit!(23);
449#[cfg(feature = "objc2-io-kit")]
451pub const IOUSBHostCIPortCapabilitiesMessageControlConnectorType: c_uint = IOUSBBitRange!(24, 31);
452#[cfg(feature = "objc2-io-kit")]
454pub const IOUSBHostCIPortCapabilitiesMessageControlConnectorTypePhase: c_uint =
455 IOUSBBitRangePhase!(24, 31);
456#[cfg(feature = "objc2-io-kit")]
458pub const IOUSBHostCIPortCapabilitiesMessageData0MaxPower: c_uint = IOUSBBitRange!(0, 7);
459#[cfg(feature = "objc2-io-kit")]
461pub const IOUSBHostCIPortCapabilitiesMessageData0MaxPowerPhase: c_uint = IOUSBBitRangePhase!(0, 7);
462
463pub const IOUSBHostCICommandMessageControlStatus: c_uint = IOUSBHostCIMessageControlStatus;
465pub const IOUSBHostCICommandMessageControlStatusPhase: c_uint =
467 IOUSBHostCIMessageControlStatusPhase;
468#[cfg(feature = "objc2-io-kit")]
470pub const IOUSBHostCICommandMessageData0RootPort: c_uint = IOUSBBitRange!(0, 3);
471#[cfg(feature = "objc2-io-kit")]
473pub const IOUSBHostCICommandMessageData0RootPortPhase: c_uint = IOUSBBitRangePhase!(0, 3);
474#[cfg(feature = "objc2-io-kit")]
476pub const IOUSBHostCICommandMessageData0DeviceAddress: c_uint = IOUSBBitRange!(0, 7);
477#[cfg(feature = "objc2-io-kit")]
479pub const IOUSBHostCICommandMessageData0DeviceAddressPhase: c_uint = IOUSBBitRangePhase!(0, 7);
480#[cfg(feature = "objc2-io-kit")]
482pub const IOUSBHostCICommandMessageData0EndpointAddress: c_uint = IOUSBBitRange!(8, 15);
483#[cfg(feature = "objc2-io-kit")]
485pub const IOUSBHostCICommandMessageData0EndpointAddressPhase: c_uint = IOUSBBitRangePhase!(8, 15);
486#[cfg(feature = "objc2-io-kit")]
488pub const IOUSBHostCICommandMessageData0StreamID: c_uint = IOUSBBitRange!(16, 31);
489#[cfg(feature = "objc2-io-kit")]
491pub const IOUSBHostCICommandMessageData0StreamIDPhase: c_uint = IOUSBBitRangePhase!(16, 31);
492
493#[repr(transparent)]
501#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
502pub struct IOUSBHostCIControllerState(pub c_uint);
503impl IOUSBHostCIControllerState {
504 #[doc(alias = "IOUSBHostCIControllerStateOff")]
505 pub const Off: Self = Self(0);
506 #[doc(alias = "IOUSBHostCIControllerStatePaused")]
507 pub const Paused: Self = Self(1);
508 #[doc(alias = "IOUSBHostCIControllerStateActive")]
509 pub const Active: Self = Self(2);
510}
511
512unsafe impl Encode for IOUSBHostCIControllerState {
513 const ENCODING: Encoding = c_uint::ENCODING;
514}
515
516unsafe impl RefEncode for IOUSBHostCIControllerState {
517 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
518}
519
520#[repr(transparent)]
529#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
530pub struct IOUSBHostCIPortState(pub c_uint);
531impl IOUSBHostCIPortState {
532 #[doc(alias = "IOUSBHostCIPortStateOff")]
533 pub const Off: Self = Self(0);
534 #[doc(alias = "IOUSBHostCIPortStatePowered")]
535 pub const Powered: Self = Self(1);
536 #[doc(alias = "IOUSBHostCIPortStateSuspended")]
537 pub const Suspended: Self = Self(2);
538 #[doc(alias = "IOUSBHostCIPortStateActive")]
539 pub const Active: Self = Self(3);
540}
541
542unsafe impl Encode for IOUSBHostCIPortState {
543 const ENCODING: Encoding = c_uint::ENCODING;
544}
545
546unsafe impl RefEncode for IOUSBHostCIPortState {
547 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
548}
549
550#[cfg(feature = "objc2-io-kit")]
552pub const IOUSBHostCIPortEventMessageData0PortNumber: c_uint = IOUSBBitRange!(0, 3);
553#[cfg(feature = "objc2-io-kit")]
555pub const IOUSBHostCIPortEventMessageData0PortNumberPhase: c_uint = IOUSBBitRangePhase!(0, 3);
556
557pub const IOUSBHostCIPortStatusCommandData1Powered: c_uint = IOUSBHostCIPortStatusPowered;
559pub const IOUSBHostCIPortStatusCommandData1Overcurrent: c_uint = IOUSBHostCIPortStatusOvercurrent;
561pub const IOUSBHostCIPortStatusCommandData1Connected: c_uint = IOUSBHostCIPortStatusConnected;
563pub const IOUSBHostCIPortStatusCommandData1LinkState: c_uint = IOUSBHostCIPortStatusLinkState;
565pub const IOUSBHostCIPortStatusCommandData1LinkStatePhase: c_uint =
567 IOUSBHostCIPortStatusLinkStatePhase;
568pub const IOUSBHostCIPortStatusCommandData1Speed: c_uint = IOUSBHostCIPortStatusSpeed;
570pub const IOUSBHostCIPortStatusCommandData1SpeedPhase: c_uint = IOUSBHostCIPortStatusSpeedPhase;
572pub const IOUSBHostCIPortStatusCommandData1OvercurrentChange: c_uint =
574 IOUSBHostCIPortStatusOvercurrentChange;
575pub const IOUSBHostCIPortStatusCommandData1ConnectChange: c_uint =
577 IOUSBHostCIPortStatusConnectChange;
578pub const IOUSBHostCIPortStatusCommandData1LinkStateChange: c_uint =
580 IOUSBHostCIPortStatusLinkStateChange;
581pub const IOUSBHostCIPortStatusCommandData1ChangeMask: c_uint = IOUSBHostCIPortStatusChangeMask;
583
584#[repr(transparent)]
592#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
593pub struct IOUSBHostCIDeviceState(pub c_uint);
594impl IOUSBHostCIDeviceState {
595 #[doc(alias = "IOUSBHostCIDeviceStateDestroyed")]
596 pub const Destroyed: Self = Self(0);
597 #[doc(alias = "IOUSBHostCIDeviceStatePaused")]
598 pub const Paused: Self = Self(1);
599 #[doc(alias = "IOUSBHostCIDeviceStateActive")]
600 pub const Active: Self = Self(2);
601}
602
603unsafe impl Encode for IOUSBHostCIDeviceState {
604 const ENCODING: Encoding = c_uint::ENCODING;
605}
606
607unsafe impl RefEncode for IOUSBHostCIDeviceState {
608 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
609}
610
611#[cfg(feature = "objc2-io-kit")]
613pub const IOUSBHostCIDeviceCreateCommandData0RootPort: c_uint = IOUSBBitRange!(0, 3);
614#[cfg(feature = "objc2-io-kit")]
616pub const IOUSBHostCIDeviceCreateCommandData0RootPortPhase: c_uint = IOUSBBitRangePhase!(0, 3);
617#[cfg(feature = "objc2-io-kit")]
619pub const IOUSBHostCIDeviceCreateCommandData0Route: c_uint = IOUSBBitRange!(4, 23);
620#[cfg(feature = "objc2-io-kit")]
622pub const IOUSBHostCIDeviceCreateCommandData0RoutePhase: c_uint = IOUSBBitRangePhase!(4, 23);
623
624#[cfg(feature = "objc2-io-kit")]
626pub const IOUSBHostCIDeviceCreateCommandData1DeviceAddress: c_uint = IOUSBBitRange64!(0, 7);
627#[cfg(feature = "objc2-io-kit")]
629pub const IOUSBHostCIDeviceCreateCommandData1DeviceAddressPhase: c_uint = IOUSBBitRangePhase!(0, 7);
630
631#[cfg(feature = "objc2-io-kit")]
633pub const IOUSBHostCIDeviceUpdateCommandData1DescriptorAddress: c_ulong = IOUSBBitRange64!(0, 63);
634#[cfg(feature = "objc2-io-kit")]
636pub const IOUSBHostCIDeviceUpdateCommandData1DescriptorAddressPhase: c_ulong =
637 IOUSBBitRangePhase!(0, 63);
638
639#[repr(transparent)]
648#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
649pub struct IOUSBHostCIEndpointState(pub c_uint);
650impl IOUSBHostCIEndpointState {
651 #[doc(alias = "IOUSBHostCIEndpointStateDestroyed")]
652 pub const Destroyed: Self = Self(0);
653 #[doc(alias = "IOUSBHostCIEndpointStateHalted")]
654 pub const Halted: Self = Self(1);
655 #[doc(alias = "IOUSBHostCIEndpointStatePaused")]
656 pub const Paused: Self = Self(2);
657 #[doc(alias = "IOUSBHostCIEndpointStateActive")]
658 pub const Active: Self = Self(3);
659}
660
661unsafe impl Encode for IOUSBHostCIEndpointState {
662 const ENCODING: Encoding = c_uint::ENCODING;
663}
664
665unsafe impl RefEncode for IOUSBHostCIEndpointState {
666 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
667}
668
669#[cfg(feature = "objc2-io-kit")]
671pub const IOUSBHostCIEndpointCreateCommandData1DescriptorPhase: c_ulong =
672 IOUSBBitRangePhase!(0, 63);
673
674#[cfg(feature = "objc2-io-kit")]
676pub const IOUSBHostCIEndpointUpdateCommandData1DescriptorPhase: c_ulong =
677 IOUSBBitRangePhase!(0, 63);
678
679#[cfg(feature = "objc2-io-kit")]
681pub const IOUSBHostCIEndpointResetCommandData1ClearState: c_uint = IOUSBBit!(0);
682
683#[cfg(feature = "objc2-io-kit")]
685pub const IOUSBHostCIEndpointSetNextTransferCommandData1AddressPhase: c_ulong =
686 IOUSBBitRangePhase!(0, 63);
687
688#[cfg(feature = "objc2-io-kit")]
690pub const IOUSBHostCISetupTransferData1bmRequestType: c_ulong = IOUSBBitRange64!(0, 7);
691#[cfg(feature = "objc2-io-kit")]
693pub const IOUSBHostCISetupTransferData1bmRequestTypePhase: c_ulong = IOUSBBitRangePhase!(0, 7);
694#[cfg(feature = "objc2-io-kit")]
696pub const IOUSBHostCISetupTransferData1bRequest: c_ulong = IOUSBBitRange64!(8, 15);
697#[cfg(feature = "objc2-io-kit")]
699pub const IOUSBHostCISetupTransferData1bRequestPhase: c_ulong = IOUSBBitRangePhase!(8, 15);
700#[cfg(feature = "objc2-io-kit")]
702pub const IOUSBHostCISetupTransferData1wValue: c_ulong = IOUSBBitRange64!(16, 31);
703#[cfg(feature = "objc2-io-kit")]
705pub const IOUSBHostCISetupTransferData1wValuePhase: c_ulong = IOUSBBitRangePhase!(16, 31);
706#[cfg(feature = "objc2-io-kit")]
708pub const IOUSBHostCISetupTransferData1wIndexPhase: c_ulong = IOUSBBitRangePhase!(32, 47);
709#[cfg(feature = "objc2-io-kit")]
711pub const IOUSBHostCISetupTransferData1wLengthPhase: c_ulong = IOUSBBitRangePhase!(48, 63);
712
713#[cfg(feature = "objc2-io-kit")]
715pub const IOUSBHostCINormalTransferData0Length: c_uint = IOUSBBitRange!(0, 27);
716#[cfg(feature = "objc2-io-kit")]
718pub const IOUSBHostCINormalTransferData0LengthPhase: c_uint = IOUSBBitRangePhase!(0, 27);
719
720#[cfg(feature = "objc2-io-kit")]
722pub const IOUSBHostCINormalTransferData1Buffer: c_ulong = IOUSBBitRange64!(0, 63);
723#[cfg(feature = "objc2-io-kit")]
725pub const IOUSBHostCINormalTransferData1BufferPhase: c_ulong = IOUSBBitRangePhase!(0, 63);
726
727#[cfg(feature = "objc2-io-kit")]
729pub const IOUSBHostCIIsochronousTransferControlFrameNumber: c_uint = IOUSBBitRange!(16, 23);
730#[cfg(feature = "objc2-io-kit")]
732pub const IOUSBHostCIIsochronousTransferControlFrameNumberPhase: c_uint =
733 IOUSBBitRangePhase!(16, 23);
734#[cfg(feature = "objc2-io-kit")]
736pub const IOUSBHostCIIsochronousTransferControlASAP: c_uint = IOUSBBit!(24);
737
738pub const IOUSBHostCIIsochronousTransferData0Length: c_uint = IOUSBHostCINormalTransferData0Length;
740pub const IOUSBHostCIIsochronousTransferData0LengthPhase: c_uint =
742 IOUSBHostCINormalTransferData0LengthPhase;
743
744pub const IOUSBHostCIIsochronousTransferData1Buffer: c_ulong = IOUSBHostCINormalTransferData1Buffer;
746pub const IOUSBHostCIIsochronousTransferData1BufferPhase: c_ulong =
748 IOUSBHostCINormalTransferData1BufferPhase;
749
750#[cfg(feature = "objc2-io-kit")]
752pub const IOUSBHostCILinkData1TransferStructureAddress: c_ulong = IOUSBBitRange64!(0, 63);
753#[cfg(feature = "objc2-io-kit")]
755pub const IOUSBHostCILinkData1TransferStructureAddressPhase: c_ulong = IOUSBBitRangePhase!(0, 63);
756
757pub const IOUSBHostCITransferCompletionMessageControlStatus: c_uint = 3840;
759pub const IOUSBHostCITransferCompletionMessageControlStatusPhase: c_uint = 8;
761#[cfg(feature = "objc2-io-kit")]
763pub const IOUSBHostCITransferCompletionMessageControlDeviceAddress: c_uint = IOUSBBitRange!(16, 23);
764#[cfg(feature = "objc2-io-kit")]
766pub const IOUSBHostCITransferCompletionMessageControlDeviceAddressPhase: c_uint =
767 IOUSBBitRangePhase!(16, 23);
768#[cfg(feature = "objc2-io-kit")]
770pub const IOUSBHostCITransferCompletionMessageControlEndpointAddress: c_uint =
771 IOUSBBitRange!(24, 31);
772#[cfg(feature = "objc2-io-kit")]
774pub const IOUSBHostCITransferCompletionMessageControlEndpointAddressPhase: c_uint =
775 IOUSBBitRangePhase!(24, 31);
776
777#[cfg(feature = "objc2-io-kit")]
779pub const IOUSBHostCITransferCompletionMessageData0TransferLength: c_uint = IOUSBBitRange!(0, 27);
780#[cfg(feature = "objc2-io-kit")]
782pub const IOUSBHostCITransferCompletionMessageData0TransferLengthPhase: c_uint =
783 IOUSBBitRangePhase!(0, 27);
784
785#[cfg(feature = "objc2-io-kit")]
787pub const IOUSBHostCITransferCompletionMessageData1TransferStructurePhase: c_ulong =
788 IOUSBBitRangePhase!(0, 63);