Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка USB.h

Опции
Развертывание Target:

На этой странице

Ссылка USB.h

Включенные заголовки

  • <libkern/OSByteOrder.h>

  • <IOKit/IOMemoryDescriptor.h>

  • <libkern/OSByteOrder.h>

  • <IOKit/IOTypes.h>

Функции

  • Объявление

    Objective C

    #define iokit_usb_err(return) (sys_iokit|sub_iokit_usb|return)

    Обсуждение

    Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    IOUSBFamilyerrorcodes

  • Объявление

    Objective C

    #define iokit_usb_msg(message) (UInt32)(sys_iokit|sub_iokit_usb|message)

    Обсуждение

    Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.1 и позже.

    См. также

    IOUSBFamilymessagecodes

  • Объявление

    Objective C

    #define EncodeRequest(request, direction, type, recipient) \ (((UInt16)request << 8) + \ ((UInt16)recipient + \ ((UInt16)type << kUSBRqTypeShift) + \ ((UInt16)direction << kUSBRqDirnShift)))

    Обсуждение

    Макрос, кодирующий bRequest и bRequestType поля IOUSBDevRequest в единственное значение. Полезно, когда нужно знать, какой запрос IOUSBDevRequest кодирует и упрощает сравнения.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    #define USBmakebmRequestType(direction, type, recipient) \ (((direction & kUSBRqDirnMask) << kUSBRqDirnShift) | \ ((type & kUSBRqTypeMask) << kUSBRqTypeShift) | \ (recipient & kUSBRqRecipientMask))

    Обсуждение

    Макрос для кодирования bRequest поля Запроса Устройства. Это используется при построении IOUSBDevRequest.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

Обратные вызовы

  • Объявление

    Objective C

    typedef void ( *IOUSBCompletionAction)( void *target, void *parameter, IOReturn status, UInt32 bufferSizeRemaining);

    Параметры

    target

    Цель указана в структуре IOUSBCompletion.

    parameter

    Параметр указан в структуре IOUSBCompletion.

    status

    Состояние Completion.

    bufferSizeRemaining

    Байты уехали, чтобы быть переданными.

    Обсуждение

    Когда USB I/O завершается, функция вызвала.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef void ( *IOUSBCompletionActionWithTimeStamp)( void *target, void *parameter, IOReturn status, UInt32 bufferSizeRemaining, AbsoluteTime timeStamp);

    Параметры

    target

    Цель указана в структуре IOUSBCompletion.

    parameter

    Параметр указан в структуре IOUSBCompletion.

    status

    Состояние Completion.

    bufferSizeRemaining

    Байты уехали, чтобы быть переданными.

    timeStamp

    Время, в которое была обработана транзакция.

    Обсуждение

    Когда USB I/O завершается, функция вызвала.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.3 и позже.

  • Объявление

    Objective C

    typedef void ( *IOUSBIsocCompletionAction)( void *target, void *parameter, IOReturn status, IOUSBIsocFrame *pFrames);

    Параметры

    target

    Цель указана в структуре IOUSBIsocCompletionn.

    parameter

    Параметр указан в структуре IOUSBIsocCompletion.

    status

    Состояние Completion.

    pFrames

    Указатель на список кадра, содержащий состояние для каждого кадра, передается.

    Обсуждение

    Когда Изохронный USB I/O завершается, функция вызвала.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef void ( *IOUSBLowLatencyIsocCompletionAction)( void *target, void *parameter, IOReturn status, IOUSBLowLatencyIsocFrame *pFrames);

    Параметры

    target

    Цель указана в структуре IOUSBLowLatencyIsocCompletion.

    parameter

    Параметр указан в структуре IOUSBLowLatencyIsocCompletion.

    status

    Состояние Completion.

    pFrames

    Указатель на низкую задержку структурирует список, содержащий состояние для каждого переданного кадра.

    Обсуждение

    Когда Низкая Задержка Изохронный USB I/O завершается, функция вызвала.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.2 и позже.

Типы данных

Посмотрите раздел Overview выше для документации уровня заголовка.

  • Объявление

    Objective C

    typedef struct IOUSBBOSDescriptor IOUSBBOSDescriptor;

    Обсуждение

    Дескриптор BOS для USB-устройства..

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBCompletion { void *target; IOUSBCompletionAction action; void *parameter; } IOUSBCompletion;

    Обсуждение

    Действие указания структуры для выполнения, когда USB завершается I/O.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBCompletionWithTimeStamp { void *target; IOUSBCompletionActionWithTimeStamp action; void *parameter; } IOUSBCompletionWithTimeStamp;

    Обсуждение

    Действие указания структуры для выполнения, когда USB завершается I/O.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.3 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBConfigurationDescHeader IOUSBConfigurationDescHeader;

    Обсуждение

    Заголовок IOUSBConfigurationDescriptor. Используемый для получения общей длины дескриптора.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.1 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBConfigurationDescriptor IOUSBConfigurationDescriptor;

    Обсуждение

    Стандартный Дескриптор Конфигурации USB. Это - переменная длина, таким образом, это только указывает известные поля. Мы используем wTotalLength поле для чтения целого дескриптора. Посмотрите Спецификацию USB в http://www .usb.org.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBDescriptorHeader IOUSBDescriptorHeader;

    Обсуждение

    Стандартный заголовок используется для всех дескрипторов USB. Используемый для чтения длины дескриптора так, чтобы мы могли выделить хранение для целого дескриптора позже.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBDeviceCapabilityContainerID IOUSBDeviceCapabilityContainerID;

    Обсуждение

    Контейнер функции устройств ID

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBDeviceCapabilityDescriptorHeader IOUSBDeviceCapabilityDescriptorHeader;

    Обсуждение

    Заголовок для дескриптора функции устройств для USB-устройства..

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBDeviceCapabilitySuperSpeedUSB IOUSBDeviceCapabilitySuperSpeedUSB;

    Обсуждение

    Функция устройств SuperSpeed USB

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBDeviceCapabilityUSB2Extension IOUSBDeviceCapabilityUSB2Extension;

    Обсуждение

    Расширение функции устройств USB 2.0

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBDeviceDescriptor IOUSBDeviceDescriptor;

    Обсуждение

    Дескриптор для USB-устройства. Посмотрите спецификацию USB в http://www .usb.org.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBDeviceQualifierDescriptor IOUSBDeviceQualifierDescriptor;

    Обсуждение

    Дескриптор спецификатора USB-устройства. Посмотрите спецификацию USB в http://www .usb.org.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.2 и позже.

  • Объявление

    Objective C

    typedef struct { UInt8 bmRequestType; UInt8 bRequest; UInt16 wValue; UInt16 wIndex; UInt16 wLength; void *pData; UInt32 wLenDone; } IOUSBDevRequest;

    Обсуждение

    Блок Parameter для запросов управления, с помощью простого указателя для данных, которые будут переданы.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct { UInt8 bmRequestType; UInt8 bRequest; UInt16 wValue; UInt16 wIndex; UInt16 wLength; IOMemoryDescriptor *pData; UInt32 wLenDone; } IOUSBDevRequestDesc;

    Обсуждение

    Блок Parameter для запросов управления, с помощью дескриптора памяти для данных, которые будут переданы. Только доступный в ядре.

    Оператор импорта

    Objective C

    #include <USB.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    typedef struct { UInt8 bmRequestType; UInt8 bRequest; UInt16 wValue; UInt16 wIndex; UInt16 wLength; void *pData; UInt32 wLenDone; UInt32 noDataTimeout; UInt32 completionTimeout; } IOUSBDevRequestTO;

    Обсуждение

    Блок Parameter для управления запрашивает с тайм-аутами, с помощью простого указателя для данных, которые будут переданы. То же как IOUSBDevRequest за исключением двух дополнительных полей тайм-аута.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.1 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBDFUDescriptor IOUSBDFUDescriptor;

    Обсуждение

    Встроенное микропрограммное обеспечение USB-устройства обновляет дескриптор. Посмотрите, что встроенное микропрограммное обеспечение USB-устройства обновляет спецификацию в http://www .usb.org.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.2 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBEndpointDescriptor IOUSBEndpointDescriptor;

    Обсуждение

    Дескриптор для конечной точки USB. Посмотрите спецификацию USB в http://www .usb.org.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBEndpointProperties IOUSBEndpointProperties;

    Обсуждение

    Структура, используемая с IOUSBLib GetEndpointPropertiesV3 и GetPipePropertiesV3 API. Большинство полей взято непосредственно от соответствующего Стандартного Сопутствующего Дескриптора Конечной точки Дескриптора и SuperSpeed Конечной точки. wBytesPerInterval будет синтезироваться для Высокоскоростной Высокой Пропускной способности Изохронные конечные точки.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.8 и позже.

  • Объявление

    Objective C

    typedef struct { UInt8 type; UInt8 direction; UInt16 maxPacketSize; UInt8 interval; } IOUSBFindEndpointRequest;

    Обсуждение

    Структура раньше находила, что конечные точки интерфейсного типа и направления используются для соответствия конечных точек, тип, направление, maxPacketSize и интервал обновляются со свойствами найденной конечной точки.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct { UInt16 bInterfaceClass; // requested class UInt16 bInterfaceSubClass; // requested subclass UInt16 bInterfaceProtocol; // requested protocol UInt16 bAlternateSetting; // requested alt setting } IOUSBFindInterfaceRequest;

    Обсуждение

    Структура используется с FindNextInterface.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct { UInt64 frame; AbsoluteTime timeStamp; } IOUSBGetFrameStruct;

    Обсуждение

    Структура использовала от пространства пользователя возвращать число кадра и метку времени на том, когда был считан регистр кадра.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBHIDDescriptor IOUSBHIDDescriptor;

    Обсуждение

    USB Дескриптор HID. Посмотрите USB Спецификация HID в http://www .usb.org. (Эта структура должна была использовать пакет #pragma (1) директива компилятора для получения выравнивания байта.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBHIDReportDesc IOUSBHIDReportDesc;

    Обсуждение

    USB заголовок Дескриптора Отчета HID. Посмотрите USB Спецификация HID в http://www .usb.org. (Эта структура должна была использовать пакет #pragma (1) директива компилятора для получения выравнивания байта.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBInterfaceAssociationDescriptor IOUSBInterfaceAssociationDescriptor;

    Обсуждение

    USB дескриптор ассоциации Inerface. ECN к спецификации USB 2.0. Посмотрите спецификацию USB в http://www .usb.org.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.3 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBInterfaceDescriptor IOUSBInterfaceDescriptor;

    Обсуждение

    Дескриптор для интерфейса USB. Посмотрите спецификацию USB в http://www .usb.org.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBIsocCompletion { void *target; IOUSBIsocCompletionAction action; void *parameter; } IOUSBIsocCompletion;

    Обсуждение

    Действие указания структуры для выполнения, когда Изохронный USB завершается I/O.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBIsocFrame { IOReturn frStatus; UInt16 frReqCount; UInt16 frActCount; } IOUSBIsocFrame;

    Обсуждение

    Структура раньше кодировала информацию о каждом кадре isoc.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBLowLatencyIsocCompletion { void *target; IOUSBLowLatencyIsocCompletionAction action; void *parameter; } IOUSBLowLatencyIsocCompletion;

    Обсуждение

    Действие указания структуры для выполнения, когда Низкая Задержка Изохронный USB завершается I/O.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.2 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBLowLatencyIsocFrame IOUSBLowLatencyIsocFrame;

    Обсуждение

    Структура раньше кодировала информацию о каждом кадре isoc, обрабатывающемся во время аппаратного прерывания (низкая задержка).

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.2 и позже.

  • Объявление

    Objective C

    typedef struct IOUSBSuperSpeedEndpointCompanionDescriptor IOUSBSuperSpeedEndpointCompanionDescriptor;

    Обсуждение

    Дескриптор для компаньона SuperSpeed USB конечной точки. Посмотрите спецификацию USB в http://www .usb.org.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Объявление

    Objective C

    typedef struct UASPipeDescriptor UASPipeDescriptor;

    Обсуждение

    Структура раньше указывала Массовое хранение Определенный дескриптор использования канала UAS

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.8 и позже.

  • Объявление

    Objective C

    typedef enum { kUSBInformationDeviceIsCaptiveBit = 0, kUSBInformationDeviceIsAttachedToRootHubBit = 1, kUSBInformationDeviceIsInternalBit = 2, kUSBInformationDeviceIsConnectedBit = 3, kUSBInformationDeviceIsEnabledBit = 4, kUSBInformationDeviceIsSuspendedBit = 5, kUSBInformationDeviceIsInResetBit = 6, kUSBInformationDeviceOvercurrentBit = 7, kUSBInformationDevicePortIsInTestModeBit = 8, kUSBInformationDeviceIsRootHub = 9, kUSBInformationRootHubisBuiltIn = 10, kUSBInformationRootHubIsBuiltInBit = 10, kUSBInformationDeviceIsRemote = 11, kUSBInformationDeviceIsAttachedToEnclosure = 12, kUSBInformationDeviceIsOnThunderboltBit = 13, kUSBInformationDeviceIsCaptiveMask = ( 1 << kUSBInformationDeviceIsCaptiveBit), kUSBInformationDeviceIsAttachedToRootHubMask = ( 1 << kUSBInformationDeviceIsAttachedToRootHubBit), kUSBInformationDeviceIsInternalMask = ( 1 << kUSBInformationDeviceIsInternalBit), kUSBInformationDeviceIsConnectedMask = ( 1 << kUSBInformationDeviceIsConnectedBit), kUSBInformationDeviceIsEnabledMask = ( 1 << kUSBInformationDeviceIsEnabledBit), kUSBInformationDeviceIsSuspendedMask = ( 1 << kUSBInformationDeviceIsSuspendedBit), kUSBInformationDeviceIsInResetMask = ( 1 << kUSBInformationDeviceIsInResetBit), kUSBInformationDeviceOvercurrentMask = ( 1 << kUSBInformationDeviceOvercurrentBit), kUSBInformationDevicePortIsInTestModeMask = ( 1 << kUSBInformationDevicePortIsInTestModeBit), kUSBInformationDeviceIsRootHubMask = ( 1 << kUSBInformationDeviceIsRootHub), kUSBInformationRootHubisBuiltInMask = ( 1 << kUSBInformationRootHubisBuiltIn), kUSBInformationRootHubIsBuiltInMask = ( 1 << kUSBInformationRootHubIsBuiltInBit), kUSBInformationDeviceIsRemoteMask = ( 1 << kUSBInformationDeviceIsRemote), kUSBInformationDeviceIsAttachedToEnclosureMask = ( 1 << kUSBInformationDeviceIsAttachedToEnclosure), kUSBInformationDeviceIsOnThunderboltMask = ( 1 << kUSBInformationDeviceIsOnThunderboltBit) } USBDeviceInformationBits;

    Константы

    • kUSBInformationDeviceIsCaptiveBit

      kUSBInformationDeviceIsCaptiveBit

      USB-устройство непосредственно присоединено к своему концентратору и не может быть демонтировано.

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDeviceIsAttachedToRootHubBit

      kUSBInformationDeviceIsAttachedToRootHubBit

      USB-устройство непосредственно присоединено к корневому концентратору

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDeviceIsInternalBit

      kUSBInformationDeviceIsInternalBit

      USB-устройство является внутренним к корпусу (все концентраторы, к которым это присоединяет, присоединены),

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDeviceIsConnectedBit

      kUSBInformationDeviceIsConnectedBit

      USB-устройство подключено к его концентратору

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDeviceIsEnabledBit

      kUSBInformationDeviceIsEnabledBit

      Порт концентратора, к которому присоединяется USB-устройство, включен

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDeviceIsSuspendedBit

      kUSBInformationDeviceIsSuspendedBit

      Порт концентратора, к которому присоединяется USB-устройство, приостановлен

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDeviceIsInResetBit

      kUSBInformationDeviceIsInResetBit

      Порт концентратора, к которому присоединяется USB-устройство, сбрасывается

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDeviceOvercurrentBit

      kUSBInformationDeviceOvercurrentBit

      USB-устройство генерировало сверхток

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDevicePortIsInTestModeBit

      kUSBInformationDevicePortIsInTestModeBit

      Порт концентратора, к которому присоединяется USB-устройство, находится в тестовом режиме

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDeviceIsRootHub

      kUSBInformationDeviceIsRootHub

      Устройство является корневым моделированием концентратора

      Доступный в OS X v10.6 и позже.

    • kUSBInformationRootHubisBuiltIn

      kUSBInformationRootHubisBuiltIn

      Если это - корневое моделирование концентратора, и оно встроено в корпус, этот бит установлен. Если это будет на плате расширения, то это будет очищено

      Доступный в OS X v10.6 и позже.

    • kUSBInformationDeviceIsRemote

      kUSBInformationDeviceIsRemote

      Это устройство «присоединяется» к контроллеру через удаленное соединение

      Доступный в OS X v10.7 и позже.

    • kUSBInformationDeviceIsAttachedToEnclosure

      kUSBInformationDeviceIsAttachedToEnclosure

      Порт концентратора, с которым подключено USB-устройство, имеет разъем USB на корпусе

      Доступный в OS X v10.7 и позже.

    • kUSBInformationDeviceIsOnThunderbolt

      kUSBInformationDeviceIsOnThunderbolt

      USB-устройство является нисходящим из контроллера, присоединяющегося через Удар молнии

    Обсуждение

    GetUSBDeviceInformation возвратит значение unit32_t с набором битов, указывающим, что определенное состояние присутствует в USB-устройстве. Эти биты описаны здесь

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    typedef enum { kUSBLowLatencyWriteBuffer = 0, kUSBLowLatencyReadBuffer = 1, kUSBLowLatencyFrameListBuffer = 2 } USBLowLatencyBufferType;

    Константы

    • kUSBLowLatencyWriteBuffer

      kUSBLowLatencyWriteBuffer

      Буфер будет использоваться для выписывания данных к устройству.

      Доступный в OS X v10.2 и позже.

    • kUSBLowLatencyReadBuffer

      kUSBLowLatencyReadBuffer

      Буфер будет использоваться для чтения данных из устройства.

      Доступный в OS X v10.2 и позже.

    • kUSBLowLatencyFrameListBuffer

      kUSBLowLatencyFrameListBuffer

      Буфер будет использоваться для низкой задержки isoch список кадра.

      Доступный в OS X v10.2 и позже.

    Обсуждение

    Используемый для указания, какой буфер для создания при вызове LowLatencyCreateBuffer ().

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.2 и позже.

  • Объявление

    Objective C

    typedef enum { kUSBNotificationPreForcedSuspend = ( 1 << kUSBNotificationPreForcedSuspendBit), kUSBNotificationPostForcedSuspend = ( 1 << kUSBNotificationPostForcedSuspendBit), kUSBNotificationPreForcedResume = ( 1 << kUSBNotificationPreForcedResumeBit), kUSBNotificationPostForcedResume = ( 1 << kUSBNotificationPostForcedResumeBit), } USBNotificationTypes;

    Константы

    • kUSBNotificationPreForcedSuspend

      kUSBNotificationPreForcedSuspend

      Уведомление отправляется до принудительного, приостанавливают (например, системный сон).

      Доступный в OS X v10.9 и позже.

    • kUSBNotificationPostForcedSuspend

      kUSBNotificationPostForcedSuspend

      Уведомление отправляется после принудительного приостанавливают, был завершен (например, системный сон).

      Доступный в OS X v10.9 и позже.

    • kUSBNotificationPreForcedResume

      kUSBNotificationPreForcedResume

      Уведомление отправляется перед резюме, происходящим после того, как принудительное приостанавливает (например, системный след).

      Доступный в OS X v10.9 и позже.

    • kUSBNotificationPostForcedResume

      kUSBNotificationPostForcedResume

      Уведомление отправляется после резюме, происходящего после того, как принудительное приостанавливает (например, системный след).

      Доступный в OS X v10.9 и позже.

    Обсуждение

    Используемый для регистрации для уведомлений USB. Если больше чем одно уведомление желаемо, эти типы могут быть OR'd вместе. Они уведомление, как ожидают, будет подтверждено перед процессом (например, системный сон или системный след) могут продолжаться. Посмотрите RegisterForNotification и AcknowledgeNotification в IOUSBDeviceInterface и IOUSBInterfaceInterface.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.9 и позже.

  • Объявление

    Objective C

    typedef enum { kUSBPowerDuringSleep = 0, kUSBPowerDuringWake = 1, kUSBPowerRequestWakeRelease = 2, kUSBPowerRequestSleepRelease = 3, kUSBPowerRequestWakeReallocate = 4, kUSBPowerRequestSleepReallocate = 5, kUSBPowerDuringWakeRevocable = 6, kUSBPowerDuringWakeUSB3 = 7 } USBPowerRequestTypes;

    Константы

    • kUSBPowerDuringSleep

      kUSBPowerDuringSleep

      Питание состоит в том, чтобы использоваться во время сна.

      Доступный в OS X v10.6 и позже.

    • kUSBPowerDuringWake

      kUSBPowerDuringWake

      В то время как система бодрствует (т.е. не спящий), питание состоит в том, чтобы использоваться

      Доступный в OS X v10.6 и позже.

    • kUSBPowerRequestWakeRelease

      kUSBPowerRequestWakeRelease

      Когда используется с ReturnExtraPower (), это отправит сообщение во все устройства для возврата любого дополнительного питания следа, если это возможно.

      Доступный в OS X v10.7 и позже.

    • kUSBPowerRequestSleepRelease

      kUSBPowerRequestSleepRelease

      Когда используется с ReturnExtraPower (), это отправит сообщение во все устройства для возврата любого питания сна, если это возможно.

      Доступный в OS X v10.7 и позже.

    • kUSBPowerRequestWakeReallocate

      kUSBPowerRequestWakeReallocate

      Когда используется с ReturnExtraPower (), это отправит сообщение во все устройства, указывающие, что они могут попросить больше питания следа, поскольку некоторое устройство выпустило его.

      Доступный в OS X v10.7 и позже.

    • kUSBPowerRequestSleepReallocate

      kUSBPowerRequestSleepReallocate

      Когда используется с ReturnExtraPower (), это отправит сообщение во все устройства, указывающие, что они могут попросить больше питания сна, поскольку некоторое устройство выпустило его.

      Доступный в OS X v10.7 и позже.

    • kUSBPowerDuringWakeRevocable

      kUSBPowerDuringWakeRevocable

      В то время как система бодрствует (т.е. не спящий), но может быть устранена (через сообщение kUSBPowerRequestWakeRelease), питание состоит в том, чтобы использоваться. Система может тогда выделить то дополнительное питание другому устройству.

      Доступный в OS X v10.8 и позже.

    • kUSBPowerDuringWakeUSB3

      kUSBPowerDuringWakeUSB3

      Это используется штабелем USB для выделения 400mA дополнительный для USB3, выше 500ma выделенный USB2

      Доступный в OS X v10.8 и позже.

    Обсуждение

    Используемый для указания, какое питание будет зарезервировано с помощью IOUSBDevice RequestExtraPower и ReturnExtraPower APIs.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    typedef enum { kUSBAddExtraResetTimeBit = 31, kUSBAddExtraResetTimeMask = ( 1 << kUSBAddExtraResetTimeBit) } USBReEnumerateOptions;

    Константы

    • kUSBAddExtraResetTimeBit

      kUSBAddExtraResetTimeBit

      Установка этого бита заставит драйвер Концентратора ожидать 100 мс прежде, чем адресовать устройство после сброса после переперечисления.

      Доступный в OS X v10.3 и позже.

    Обсуждение

    Опции, используемые при вызове ReEnumerateDevice.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.3 и позже.

  • Объявление

    Objective C

    typedef UInt16 USBStatus;

    Обсуждение

    Введите используемый для получения DeviceStatus как единственного количества.

    Оператор импорта

    Objective C

    @import IOKit;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    struct IOUSBBOSDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt16 wTotalLength; UInt8 bNumDeviceCaps; };

    Обсуждение

    Дескриптор BOS для USB-устройства..

  • Объявление

    Objective C

    struct IOUSBConfigurationDescHeader { UInt8 bLength; UInt8 bDescriptorType; UInt16 wTotalLength; };

    Обсуждение

    Заголовок IOUSBConfigurationDescriptor. Используемый для получения общей длины дескриптора.

  • Объявление

    Objective C

    struct IOUSBConfigurationDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt16 wTotalLength; UInt8 bNumInterfaces; UInt8 bConfigurationValue; UInt8 iConfiguration; UInt8 bmAttributes; UInt8 MaxPower; };

    Обсуждение

    Стандартный Дескриптор Конфигурации USB. Это - переменная длина, таким образом, это только указывает известные поля. Мы используем wTotalLength поле для чтения целого дескриптора. Посмотрите Спецификацию USB в http://www .usb.org.

  • Объявление

    Objective C

    struct IOUSBDescriptorHeader { UInt8 bLength; UInt8 bDescriptorType; };

    Обсуждение

    Стандартный заголовок используется для всех дескрипторов USB. Используемый для чтения длины дескриптора так, чтобы мы могли выделить хранение для целого дескриптора позже.

  • Объявление

    Objective C

    struct IOUSBDeviceCapabilityContainerID { UInt8 bLength; UInt8 bDescriptorType; UInt8 bDevCapabilityType; UInt8 bReservedID; UInt8 containerID[16]; };

    Обсуждение

    Контейнер функции устройств ID

  • Объявление

    Objective C

    struct IOUSBDeviceCapabilityDescriptorHeader { UInt8 bLength; UInt8 bDescriptorType; UInt8 bDevCapabilityType; UInt8 bNumDeviceCaps; };

    Обсуждение

    Заголовок для дескриптора функции устройств для USB-устройства..

  • Объявление

    Objective C

    struct IOUSBDeviceCapabilitySuperSpeedUSB { UInt8 bLength; UInt8 bDescriptorType; UInt8 bDevCapabilityType; UInt8 bmAttributes; UInt16 wSpeedsSupported; UInt8 bFunctionalitySupport; UInt8 bU1DevExitLat; UInt16 wU2DevExitLat; };

    Обсуждение

    Функция устройств SuperSpeed USB

  • Объявление

    Objective C

    struct IOUSBDeviceCapabilityUSB2Extension { UInt8 bLength; UInt8 bDescriptorType; UInt8 bDevCapabilityType; UInt32 bmAttributes; };

    Обсуждение

    Расширение функции устройств USB 2.0

  • Объявление

    Objective C

    struct IOUSBDeviceDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt16 bcdUSB; UInt8 bDeviceClass; UInt8 bDeviceSubClass; UInt8 bDeviceProtocol; UInt8 bMaxPacketSize0; UInt16 idVendor; UInt16 idProduct; UInt16 bcdDevice; UInt8 iManufacturer; UInt8 iProduct; UInt8 iSerialNumber; UInt8 bNumConfigurations; };

    Обсуждение

    Дескриптор для USB-устройства. Посмотрите спецификацию USB в http://www .usb.org.

  • Объявление

    Objective C

    struct IOUSBDeviceQualifierDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt16 bcdUSB; UInt8 bDeviceClass; UInt8 bDeviceSubClass; UInt8 bDeviceProtocol; UInt8 bMaxPacketSize0; UInt8 bNumConfigurations; UInt8 bReserved; };

    Обсуждение

    Дескриптор спецификатора USB-устройства. Посмотрите спецификацию USB в http://www .usb.org.

  • Объявление

    Objective C

    struct IOUSBDFUDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt8 bmAttributes; UInt16 wDetachTimeout; UInt16 wTransferSize; };

    Обсуждение

    Встроенное микропрограммное обеспечение USB-устройства обновляет дескриптор. Посмотрите, что встроенное микропрограммное обеспечение USB-устройства обновляет спецификацию в http://www .usb.org.

  • Объявление

    Objective C

    struct IOUSBEndpointDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt8 bEndpointAddress; UInt8 bmAttributes; UInt16 wMaxPacketSize; UInt8 bInterval; };

    Обсуждение

    Дескриптор для конечной точки USB. Посмотрите спецификацию USB в http://www .usb.org.

  • Объявление

    Objective C

    struct IOUSBEndpointProperties { UInt8 bVersion; UInt8 bAlternateSetting; UInt8 bDirection; UInt8 bEndpointNumber; UInt8 bTransferType; UInt8 bUsageType; UInt8 bSyncType; UInt8 bInterval; UInt16 wMaxPacketSize; UInt8 bMaxBurst; UInt8 bMaxStreams; UInt8 bMult; UInt16 wBytesPerInterval; };

    Поля

    bVersion

    Версия структуры. В настоящее время kUSBEndpointPropertiesVersion3. Должен установить это при использовании этой структуры

    bAlternateSetting

    Используемый в качестве ввода для GetEndpointPropertiesV3. Используемый в качестве вывода для GetPipePropertiesV3

    bDirection

    Используемый в качестве ввода для GetEndpointPropertiesV3. Используемый в качестве вывода для GetPipePropertiesV3. Один из kUSBIn или kUSBOut.

    bEndpointNumber

    Используемый в качестве ввода для GetEndpointPropertiesV3. Используемый в качестве вывода для GetPipePropertiesV3

    bTransferType

    Один из kUSBControl, kUSBBulk, kUSBIsoc, или kUSBInterrupt

    bUsageType

    Для прерывания и isoc конечных точек, типа использования. Для Объемных конечных точек Протокола Массового хранения UAS, канал ID.

    bSyncType

    Для isoc конечных точек только

    bInterval

    bInterval поле от Стандартного дескриптора Конечной точки.

    wMaxPacketSize

    Значение этого значения зависит от того, вызывают ли это с GetPipePropertiesV3 или GetEndpointPropertiesV3. См. документацию тех требований большего количества информации.

    bMaxBurst

    Для конечных точек SuperSpeed максимального количества пакетов конечная точка может отправить или получить как часть пакета

    bMaxStreams

    Поскольку SuperSpeed увеличивают объем конечных точек, максимального количества потоков эта конечная точка поддержки.

    bMult

    Для конечных точек SuperSpeed isoc это - значение mult от Сопутствующего Дескриптора Конечной точки SuperSpeed. Для Высокой скорости isoc и конечных точек прерывания, это - биты 11 и 12 из Стандартного Дескриптора Конечной точки, представляющего подобное значение.

    wBytesPerInterval

    Для прерывания SuperSpeed и isoc конечных точек, это - wBytesPerInterval от Сопутствующего Дескриптора Конечной точки SuperSpeed. Для Высокоскоростной Высокой Пропускной способности isoc конечные точки, это будет равно wMaxPacketSize * (bMult+1).

    Обсуждение

    Структура, используемая с IOUSBLib GetEndpointPropertiesV3 и GetPipePropertiesV3 API. Большинство полей взято непосредственно от соответствующего Стандартного Сопутствующего Дескриптора Конечной точки Дескриптора и SuperSpeed Конечной точки. wBytesPerInterval будет синтезироваться для Высокоскоростной Высокой Пропускной способности Изохронные конечные точки.

  • Объявление

    Objective C

    struct IOUSBHIDDescriptor { UInt8 descLen; UInt8 descType; UInt16 descVersNum; UInt8 hidCountryCode; UInt8 hidNumDescriptors; UInt8 hidDescriptorType; UInt8 hidDescriptorLengthLo; UInt8 hidDescriptorLengthHi; };

    Обсуждение

    USB Дескриптор HID. Посмотрите USB Спецификация HID в http://www .usb.org. (Эта структура должна была использовать пакет #pragma (1) директива компилятора для получения выравнивания байта.

  • Объявление

    Objective C

    struct IOUSBHIDReportDesc { UInt8 hidDescriptorType; UInt8 hidDescriptorLengthLo; UInt8 hidDescriptorLengthHi; };

    Обсуждение

    USB заголовок Дескриптора Отчета HID. Посмотрите USB Спецификация HID в http://www .usb.org. (Эта структура должна была использовать пакет #pragma (1) директива компилятора для получения выравнивания байта.

  • Объявление

    Objective C

    struct IOUSBInterfaceAssociationDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt8 bFirstInterface; UInt8 bInterfaceCount; UInt8 bFunctionClass; UInt8 bFunctionSubClass; UInt8 bFunctionProtocol; UInt8 iFunction; };

    Обсуждение

    USB дескриптор ассоциации Inerface. ECN к спецификации USB 2.0. Посмотрите спецификацию USB в http://www .usb.org.

  • Объявление

    Objective C

    struct IOUSBInterfaceDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt8 bInterfaceNumber; UInt8 bAlternateSetting; UInt8 bNumEndpoints; UInt8 bInterfaceClass; UInt8 bInterfaceSubClass; UInt8 bInterfaceProtocol; UInt8 iInterface; };

    Обсуждение

    Дескриптор для интерфейса USB. Посмотрите спецификацию USB в http://www .usb.org.

  • Объявление

    Objective C

    struct IOUSBLowLatencyIsocFrame { IOReturn frStatus; UInt16 frReqCount; UInt16 frActCount; AbsoluteTime frTimeStamp; };

    Поля

    frStatus

    Состояние возвратов связалось с кадром.

    frReqCount

    Ввод specifiying, сколько байтов, чтобы читать или записать.

    frActCount

    Фактический # байтов передается.

    frTimeStamp

    Метка времени, указывающая время, когда был обработан кадр.

    Обсуждение

    Структура раньше кодировала информацию о каждом кадре isoc, обрабатывающемся во время аппаратного прерывания (низкая задержка).

  • Объявление

    Objective C

    struct IOUSBSuperSpeedEndpointCompanionDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt8 bMaxBurst; UInt8 bmAttributes; UInt16 wBytesPerInterval; };

    Обсуждение

    Дескриптор для компаньона SuperSpeed USB конечной точки. Посмотрите спецификацию USB в http://www .usb.org.

  • Объявление

    Objective C

    struct UASPipeDescriptor { UInt8 bLength; UInt8 bDescriptorType; UInt8 bPipeID; UInt8 bReserved; };

    Обсуждение

    Структура раньше указывала Массовое хранение Определенный дескриптор использования канала UAS

Константы

Посмотрите раздел Overview выше для документации уровня заголовка.

  • Открытые интерфейсы к реализации USB в Mac OS X.

    Объявление

    Objective C

    #define HostToUSBLong OSSwapHostToLittleInt32 #define HostToUSBWord OSSwapHostToLittleInt16 #define USBToHostLong OSSwapLittleToHostInt32 #define USBToHostWord OSSwapLittleToHostInt16

    Константы

    • HostToUSBLong

      HostToUSBLong

      USB API's использует соглашение указания параметров в порядке узла. Спецификация USB указывает, что многобайтовые элементы должны быть отформатированы в порядке с прямым порядком байтов. Следующие макросы позволяют, для перевода многобайтовых значений из Узла упорядочивает к порядку USB и наоборот. Существуют отдельные макросы для использования в ядре и для использования пространства пользователя.

      Доступный в OS X v10.0 и позже.

    • HostToUSBWord

      HostToUSBWord

      USB API's использует соглашение указания параметров в порядке узла. Спецификация USB указывает, что многобайтовые элементы должны быть отформатированы в порядке с прямым порядком байтов. Следующие макросы позволяют, для перевода многобайтовых значений из Узла упорядочивает к порядку USB и наоборот. Существуют отдельные макросы для использования в ядре и для использования пространства пользователя.

      Доступный в OS X v10.0 и позже.

    • USBToHostLong

      USBToHostLong

      USB API's использует соглашение указания параметров в порядке узла. Спецификация USB указывает, что многобайтовые элементы должны быть отформатированы в порядке с прямым порядком байтов. Следующие макросы позволяют, для перевода многобайтовых значений из Узла упорядочивает к порядку USB и наоборот. Существуют отдельные макросы для использования в ядре и для использования пространства пользователя.

      Доступный в OS X v10.0 и позже.

    • USBToHostWord

      USBToHostWord

      USB API's использует соглашение указания параметров в порядке узла. Спецификация USB указывает, что многобайтовые элементы должны быть отформатированы в порядке с прямым порядком байтов. Следующие макросы позволяют, для перевода многобайтовых значений из Узла упорядочивает к порядку USB и наоборот. Существуют отдельные макросы для использования в ядре и для использования пространства пользователя.

      Доступный в OS X v10.0 и позже.

    Обсуждение

    Этот заголовочный файл содержит определения и структуры, использующиеся в различном USB API's в Mac OS X, и в ядре и в пространстве пользователя.

  • Объявление

    Objective C

    #define kIOUSBBitstufErr // 0xe0004002 Pipe stall, bitstuffing #define kIOUSBBufferOverrunErr // 0xe000400c Buffer Overrun (Host hardware failure on data out, PCI busy?) #define kIOUSBBufferUnderrunErr // 0xe000400d Buffer Underrun (Host hardware failure on data out, PCI busy?) #define kIOUSBClearPipeStallNotRecursive // 0xe0004048 IOUSBPipe::ClearPipeStall should not be called recursively #define kIOUSBConfigNotFound // 0xe0004056 Configuration Not found #define kIOUSBCRCErr // 0xe0004001 Pipe stall, bad CRC #define kIOUSBDataToggleErr // 0xe0004003 Pipe stall, Bad data toggle #define kIOUSBDeviceCountExceeded // 0xe0004045 The device cannot be enumerated because the controller cannot support more devices #define kIOUSBDeviceNotHighSpeed // 0xe0004049 Name is deprecated, see below #define kIOUSBDevicePortWasNotSuspended // 0xe0004047 Port was not suspended #define kIOUSBDeviceTransferredToCompanion // 0xe0004049 The device has been tranferred to another controller for enumeration #define kIOUSBEndpointCountExceeded // 0xe0004046 The endpoint was not created because the controller cannot support more endpoints #define kIOUSBEndpointNotFound // 0xe0004057 Endpoint Not found #define kIOUSBHighSpeedSplitError // 0xe000404b Error to hub on high speed bus trying to do split transaction #define kIOUSBInterfaceNotFound // 0xe000404e Interface ref not recognized #define kIOUSBInvalidSSEndpoint // 0xe0004043 An endpoint found in a SuperSpeed device is invalid (usually because there is no Endpoint Companion Descriptor) /*! */ #define kIOUSBLinkErr // 0xe0004010 #define kIOUSBLowLatencyBufferNotPreviouslyAllocated // 0xe000404d Attempted to use user land low latency isoc calls w/out calling PrepareBuffer (on the data buffer) first #define kIOUSBLowLatencyFrameListNotPreviouslyAllocated // 0xe000404c Attempted to use user land low latency isoc calls w/out calling PrepareBuffer (on the frame list) first #define kIOUSBNoAsyncPortErr // 0xe000405f no async port #define kIOUSBNotEnoughPipesErr // 0xe000405e not enough pipes in interface #define kIOUSBNotEnoughPowerErr // 0xe000405d not enough power for selected configuration #define kIOUSBNotSent1Err // 0xe000400e Transaction not sent #define kIOUSBNotSent2Err // 0xe000400f Transaction not sent #define kIOUSBPIDCheckErr // 0xe0004006 Pipe stall, PID CRC error #define kIOUSBPipeStalled // 0xe000404f Pipe has stalled, error needs to be cleared #define kIOUSBReserved1Err // 0xe000400a Reserved #define kIOUSBReserved2Err // 0xe000400b Reserved #define kIOUSBStreamsNotSupported // 0xe0004044 The request cannot be completed because the XHCI controller does not support streams #define kIOUSBSyncRequestOnWLThread // 0xe000404a A synchronous USB request was made on the workloop thread (from a callback?). Only async requests are permitted in that case #define kIOUSBTooManyPipesErr // 0xe0004060 Too many pipes #define kIOUSBTooManyTransactionsPending // 0xe0004042 The transaction cannot be submitted because it would exceed the allowed number of pending transactions #define kIOUSBTransactionReturned // 0xe0004050 The transaction has been returned to the caller #define kIOUSBTransactionTimeout // 0xe0004051 Transaction timed out #define kIOUSBUnknownPipeErr // 0xe0004061 Pipe ref not recognized #define kIOUSBWrongPIDErr // 0xe0004007 Pipe stall, Bad or wrong PID

    Константы

    • kIOUSBBitstufErr

      kIOUSBBitstufErr

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBBufferOverrunErr

      kIOUSBBufferOverrunErr

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBBufferUnderrunErr

      kIOUSBBufferUnderrunErr

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBClearPipeStallNotRecursive

      kIOUSBClearPipeStallNotRecursive

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBConfigNotFound

      kIOUSBConfigNotFound

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.0 и позже.

    • kIOUSBCRCErr

      kIOUSBCRCErr

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBDataToggleErr

      kIOUSBDataToggleErr

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBDeviceCountExceeded

      kIOUSBDeviceCountExceeded

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBDeviceNotHighSpeed

      kIOUSBDeviceNotHighSpeed

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.4 и позже.

    • kIOUSBDevicePortWasNotSuspended

      kIOUSBDevicePortWasNotSuspended

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.6 и позже.

    • kIOUSBDeviceTransferredToCompanion

      kIOUSBDeviceTransferredToCompanion

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBEndpointCountExceeded

      kIOUSBEndpointCountExceeded

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBEndpointNotFound

      kIOUSBEndpointNotFound

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.0 и позже.

    • kIOUSBHighSpeedSplitError

      kIOUSBHighSpeedSplitError

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.3 и позже.

    • kIOUSBInterfaceNotFound

      kIOUSBInterfaceNotFound

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.0 и позже.

    • kIOUSBInvalidSSEndpoint

      kIOUSBInvalidSSEndpoint

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.8 и позже.

    • kIOUSBLinkErr

      kIOUSBLinkErr

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBLowLatencyBufferNotPreviouslyAllocated

      kIOUSBLowLatencyBufferNotPreviouslyAllocated

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.2 и позже.

    • kIOUSBLowLatencyFrameListNotPreviouslyAllocated

      kIOUSBLowLatencyFrameListNotPreviouslyAllocated

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.2 и позже.

    • kIOUSBNoAsyncPortErr

      kIOUSBNoAsyncPortErr

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.0 и позже.

    • kIOUSBNotEnoughPipesErr

      kIOUSBNotEnoughPipesErr

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.0 и позже.

    • kIOUSBNotEnoughPowerErr

      kIOUSBNotEnoughPowerErr

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.0 и позже.

    • kIOUSBNotSent1Err

      kIOUSBNotSent1Err

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBNotSent2Err

      kIOUSBNotSent2Err

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBPIDCheckErr

      kIOUSBPIDCheckErr

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBPipeStalled

      kIOUSBPipeStalled

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.0 и позже.

    • kIOUSBReserved1Err

      kIOUSBReserved1Err

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBReserved2Err

      kIOUSBReserved2Err

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

    • kIOUSBStreamsNotSupported

      kIOUSBStreamsNotSupported

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBSyncRequestOnWLThread

      kIOUSBSyncRequestOnWLThread

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.3 и позже.

    • kIOUSBTooManyPipesErr

      kIOUSBTooManyPipesErr

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.0 и позже.

    • kIOUSBTooManyTransactionsPending

      kIOUSBTooManyTransactionsPending

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.9 и позже.

    • kIOUSBTransactionReturned

      kIOUSBTransactionReturned

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBTransactionTimeout

      kIOUSBTransactionTimeout

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBUnknownPipeErr

      kIOUSBUnknownPipeErr

      Ошибки, определенные для IOUSBFamily. Обратите внимание на то, что iokit_usb_err (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.0 и позже.

    • kIOUSBWrongPIDErr

      kIOUSBWrongPIDErr

      Эти ошибки возвращаются контроллером OHCI. # в круглой скобке (xx) соответствует Коду Завершения OHCI. Для следующих кодов Завершения мы возвращаем универсальную ошибку IOKit вместо USB определенная ошибка.

      • Completion Code Error Returned Description
      • 9 kIOReturnUnderrun (Data Underrun) EP returned less data than max packet size
      • 8 kIOReturnOverrun (Data Overrun) Packet too large or more data than buffer
      • 5 kIOReturnNotResponding Device Not responding
      • 4 kIOUSBPipeStalled Endpoint returned a STALL PID

      Доступный в OS X v10.1 и позже.

  • Объявление

    Objective C

    #define kIOUSBMessageCompositeDriverReconfigured // 0xe0004011 Message from the composite driver indicating that it has finished re-configuring the device after a reset #define kIOUSBMessageController // 0xe0004015 Generic message sent from controller user client to controllers #define kIOUSBMessageDeviceCountExceeded // 0xe000401a Message sent by a hub when a device cannot be enumerated because the USB controller ran out of resources #define kIOUSBMessageEndpointCountExceeded // 0xe0004019 Message sent to a device when endpoints cannot be created because the USB controller ran out of resources #define kIOUSBMessageExpressCardCantWake // 0xe0004010 Message from a driver to a bus that an express card will disconnect on sleep and thus shouldn't wake #define kIOUSBMessageFromThirdParty // 0xe000400e Message sent from a third party. Uses IOUSBThirdPartyParam to encode the sender's ID #define kIOUSBMessageHubIsDeviceConnected // 0xe0004004 Message sent to a hub to inquire whether a particular port has a device connected or not #define kIOUSBMessageHubIsPortEnabled // 0xe0004005 Message sent to a hub to inquire whether a particular port is enabled or not #define kIOUSBMessageHubPortClearTT // 0xe000400c Message sent to a hub to clear the transaction translator #define kIOUSBMessageHubPortDeviceDisconnected // 0xe000401b Message sent by a built-in hub when a device was disconnected #define kIOUSBMessageHubReEnumeratePort // 0xe0004006 Message sent to a hub to reenumerate the device attached to a particular port #define kIOUSBMessageHubResetPort // 0xe0004001 Message sent to a hub to reset a particular port #define kIOUSBMessageHubResumePort // 0xe0004003 Message sent to a hub to resume a particular port #define kIOUSBMessageHubSetPortRecoveryTime // 0xe0004012 Message sent to a hub to set the # of ms required when resuming a particular port #define kIOUSBMessageHubSuspendPort // 0xe0004002 Message sent to a hub to suspend a particular port #define kIOUSBMessageNotEnoughPower // 0xe0004014 Message sent to the clients of the device's hub parent, when a device causes an low power notice to be displayed. The message argument contains the locationID of the device #define kIOUSBMessageOvercurrentCondition // 0xe0004013 Message sent to the clients of the device's hub parent, when a device causes an overcurrent condition. The message argument contains the locationID of the device #define kIOUSBMessagePortHasBeenReset // 0xe000400a Message sent to a device indicating that the port it is attached to has been reset #define kIOUSBMessagePortHasBeenResumed // 0xe000400b Message sent to a device indicating that the port it is attached to has been resumed #define kIOUSBMessagePortHasBeenSuspended // 0xe000400d Message sent to a device indicating that the port it is attached to has been suspended #define kIOUSBMessagePortWasNotSuspended // 0xe000400f Message indicating that the hub driver received a resume request for a port that was not suspended #define kIOUSBMessageReallocateExtraCurrent // 0xe0004018 Message to ask any clients using extra current to attempt to allocate it some more #define kIOUSBMessageReleaseExtraCurrent // 0xe0004017 Message to ask any clients using extra current to release it if possible #define kIOUSBMessageRootHubWakeEvent // 0xe0004016 Message from the HC Wakeup code indicating that a Root Hub port has a wake event #define kIOUSBMessageUnsupportedConfiguration // 0xe000401c Message sent to the clients of the device when a device is not supported in the current configuration. The message argument contains the locationID of the device

    Константы

    • kIOUSBMessageCompositeDriverReconfigured

      kIOUSBMessageCompositeDriverReconfigured

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.4 и позже.

    • kIOUSBMessageController

      kIOUSBMessageController

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBMessageDeviceCountExceeded

      kIOUSBMessageDeviceCountExceeded

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBMessageEndpointCountExceeded

      kIOUSBMessageEndpointCountExceeded

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBMessageExpressCardCantWake

      kIOUSBMessageExpressCardCantWake

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.4 и позже.

    • kIOUSBMessageFromThirdParty

      kIOUSBMessageFromThirdParty

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.3 и позже.

    • kIOUSBMessageHubIsDeviceConnected

      kIOUSBMessageHubIsDeviceConnected

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBMessageHubIsPortEnabled

      kIOUSBMessageHubIsPortEnabled

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBMessageHubPortClearTT

      kIOUSBMessageHubPortClearTT

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.3 и позже.

    • kIOUSBMessageHubPortDeviceDisconnected

      kIOUSBMessageHubPortDeviceDisconnected

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBMessageHubReEnumeratePort

      kIOUSBMessageHubReEnumeratePort

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBMessageHubResetPort

      kIOUSBMessageHubResetPort

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBMessageHubResumePort

      kIOUSBMessageHubResumePort

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBMessageHubSetPortRecoveryTime

      kIOUSBMessageHubSetPortRecoveryTime

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.5 и позже.

    • kIOUSBMessageHubSuspendPort

      kIOUSBMessageHubSuspendPort

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBMessageNotEnoughPower

      kIOUSBMessageNotEnoughPower

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.6 и позже.

    • kIOUSBMessageOvercurrentCondition

      kIOUSBMessageOvercurrentCondition

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.6 и позже.

    • kIOUSBMessagePortHasBeenReset

      kIOUSBMessagePortHasBeenReset

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBMessagePortHasBeenResumed

      kIOUSBMessagePortHasBeenResumed

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.1 и позже.

    • kIOUSBMessagePortHasBeenSuspended

      kIOUSBMessagePortHasBeenSuspended

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.3 и позже.

    • kIOUSBMessagePortWasNotSuspended

      kIOUSBMessagePortWasNotSuspended

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.4 и позже.

    • kIOUSBMessageReallocateExtraCurrent

      kIOUSBMessageReallocateExtraCurrent

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBMessageReleaseExtraCurrent

      kIOUSBMessageReleaseExtraCurrent

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBMessageRootHubWakeEvent

      kIOUSBMessageRootHubWakeEvent

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.7 и позже.

    • kIOUSBMessageUnsupportedConfiguration

      kIOUSBMessageUnsupportedConfiguration

      Обменивается сообщениями определенный для IOUSBFamily. Обратите внимание на то, что iokit_usb_msg (x) переводит в 0xe0004xxx, где xxx является значением в круглой скобке как шестнадцатеричное число.

      Доступный в OS X v10.9 и позже.

  • Объявление

    Objective C

    #define kConfigurationDescriptorOverride "ConfigurationDescriptorOverride" #define kOverrideIfAtLocationID "OverrideIfAtLocationID" #define kUSBControllerNeedsContiguousMemoryForIsoch "Need contiguous memory for isoch" #define kUSBDevicePropertyAddress "USB Address" #define kUSBDevicePropertyBusPowerAvailable "Bus Power Available" #define kUSBDevicePropertyLocationID "locationID" #define kUSBDevicePropertySpeed "Device Speed" #define kUSBDeviceResumeRecoveryTime "kUSBDeviceResumeRecoveryTime" #define kUSBExpressCardCantWake "ExpressCardCantWake" #define kUSBHubDontAllowLowPower "kUSBHubDontAllowLowPower" #define kUSBOutOfSpecMPSOK "Out of spec MPS OK" #define kUSBPreferredConfiguration "Preferred Configuration" #define kUSBProductIDMask "idProductMask" #define kUSBProductIdsArrayName "idProductArray" #define kUSBSuspendPort "kSuspendPort"

    Константы

    • kConfigurationDescriptorOverride

      kConfigurationDescriptorOverride

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.7 и позже.

    • kOverrideIfAtLocationID

      kOverrideIfAtLocationID

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.7 и позже.

    • kUSBControllerNeedsContiguousMemoryForIsoch

      kUSBControllerNeedsContiguousMemoryForIsoch

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.4 и позже.

    • kUSBDevicePropertyAddress

      kUSBDevicePropertyAddress

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.0 и позже.

    • kUSBDevicePropertyBusPowerAvailable

      kUSBDevicePropertyBusPowerAvailable

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.0 и позже.

    • kUSBDevicePropertyLocationID

      kUSBDevicePropertyLocationID

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.0 и позже.

    • kUSBDevicePropertySpeed

      kUSBDevicePropertySpeed

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.0 и позже.

    • kUSBDeviceResumeRecoveryTime

      kUSBDeviceResumeRecoveryTime

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.5 и позже.

    • kUSBExpressCardCantWake

      kUSBExpressCardCantWake

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.4 и позже.

    • kUSBHubDontAllowLowPower

      kUSBHubDontAllowLowPower

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.5 и позже.

    • kUSBOutOfSpecMPSOK

      kUSBOutOfSpecMPSOK

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.6 и позже.

    • kUSBPreferredConfiguration

      kUSBPreferredConfiguration

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.4 и позже.

    • kUSBProductIDMask

      kUSBProductIDMask

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.4 и позже.

    • kUSBProductIdsArrayName

      kUSBProductIdsArrayName

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.7 и позже.

    • kUSBSuspendPort

      kUSBSuspendPort

      Полезное свойство называет на земле USB.

      Доступный в OS X v10.4 и позже.

  • Объявление

    Objective C

    #define kCallInterfaceOpenWithGate "kCallInterfaceOpenWithGate"

    Константы

    • kCallInterfaceOpenWithGate

      kCallInterfaceOpenWithGate

      Если USB-устройство будет иметь это свойство, то драйверам для любого из его интерфейсов вызовут их handleOpen метод при содержании логического элемента workloop.

      Доступный в OS X v10.3 и позже.

  • Объявление

    Objective C

    enum { kUSBRqDirnShift = 7, kUSBRqDirnMask = 1, kUSBRqTypeShift = 5, kUSBRqTypeMask = 3, kUSBRqRecipientMask = 0X1F };

    Обсуждение

    Они используются для создания макроса для кодирования bRequest, зарегистрированного Запроса Устройства

  • Объявление

    Objective C

    enum { kUSBDefaultControlNoDataTimeoutMS = 5000, kUSBDefaultControlCompletionTimeoutMS = 0 };

    Обсуждение

    значения по умолчанию, используемые для данных и тайм-аутов завершения.

  • Объявление

    Objective C

    enum { kIOUSBInterfaceOpenAlt = 0x00010000, kIOUSBInterfaceOpenAlternateInterfaceBit = 16, kUSBOptionBitOpenExclusivelyBit = 17, kIOUSBInterfaceOpenAlternateInterfaceMask = ( 1 << kIOUSBInterfaceOpenAlternateInterfaceBit ), kUSBOptionBitOpenExclusivelyMask = ( 1 << kUSBOptionBitOpenExclusivelyBit ) };

    Константы

    • kIOUSBInterfaceOpenAlt

      kIOUSBInterfaceOpenAlt

      Откройтесь альтернативный интерфейс указал при создании интерфейса.

      Доступный в OS X v10.6 и позже.

    • kUSBOptionBitOpenExclusivelyBit

      kUSBOptionBitOpenExclusivelyBit

      Используемый в открытом () 'луг IOUSBDevice или IOUSBInterface соответствующим пользовательским клиентом. Только у 1 пользовательского клиента может быть эксклюзивный доступ к тем объектам

      Доступный в OS X v10.8 и позже.

    Обсуждение

    Опции, используемые исключительно семьей USB при вызове вызывающий IOService APIs, такой как открытый () и близко ().

  • Объявление

    Objective C

    enum { kIOUSBFindInterfaceDontCare = 0xFFFF };

    Обсуждение

    Постоянный, который может использоваться для полей IOUSBFindInterfaceRequest, чтобы указать, что они не должны быть соответствующими.

  • Объявление

    Objective C

    enum { kIOUSBVendorIDAppleComputer = 0x05AC, kIOUSBVendorIDApple = 0x05AC };

    Обсуждение

    Идентификатор поставщика USB для Apple, Inc.

  • Объявление

    Objective C

    enum { kUSBMaxFSIsocEndpointReqCount = 1023, // max size (bytes ) of any one Isoc frame for 1 FS endpoint kUSBMaxHSIsocEndpointReqCount = 3072, // max size (bytes ) of any one Isoc frame for 1 HS endpoint kUSBMaxHSIsocFrameCount = 7168 // max size (bytes ) of all Isoc transfers in a HS frame };

    Обсуждение

    Максимальный размер в байтах допускал один Изохронный кадр

  • Объявление

    Objective C

    enum { kUSBFullSpeedMicrosecondsInFrame = 1000, kUSBHighSpeedMicrosecondsInFrame = 125 };

    Константы

    • kUSBFullSpeedMicrosecondsInFrame

      kUSBFullSpeedMicrosecondsInFrame

      Устройство присоединено к шине, работающей в полной скорости (1 мс / кадр).

      Доступный в OS X v10.2 и позже.

    • kUSBHighSpeedMicrosecondsInFrame

      kUSBHighSpeedMicrosecondsInFrame

      Устройство присоединено к шине, работающей в высокой скорости (125 микросекунд / кадр).

      Доступный в OS X v10.2 и позже.

    Обсуждение

    Возвращает число микросекунд в кадре USB.

  • Объявление

    Objective C

    enum { kUSBDeviceIDShift = 7, kUSBMaxDevices = 128, kUSBMaxDevice = kUSBMaxDevices-1, kUSBDeviceIDMask = 0x7f, kUSBPipeIDMask = 0xf, kUSBMaxPipes = 32, // In and Out pipes can have same pipe number. kUSBInterfaceIDShift = 8, kUSBMaxInterfaces = 1 << kUSBInterfaceIDShift, kUSBInterfaceIDMask = kUSBMaxInterfaces-1, kUSBEndPtShift = 7, kUSBDeviceMask = ( ( 1 << kUSBEndPtShift ) -1), kUSBNoPipeIdx = -1, // Constants for streams kUSBStream0 = 0, kUSBMaxStream = 65533, kUSBPRimeStream = 0xfffe, kUSBNoStream = 0xffff, kUSBAllStreams = 0xffffffff };

  • Объявление

    Objective C

    enum { kClearDeviceFeature = ( ( ( UInt16)kUSBRqClearFeature << 8) + ( ( UInt16) kUSBDevice + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kClearInterfaceFeature = ( ( ( UInt16)kUSBRqClearFeature << 8) + ( ( UInt16) kUSBInterface + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kClearEndpointFeature = ( ( ( UInt16)kUSBRqClearFeature << 8) + ( ( UInt16) kUSBEndpoint + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kGetConfiguration = ( ( ( UInt16)kUSBRqGetConfig << 8) + ( ( UInt16) kUSBDevice + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBIn << kUSBRqDirnShift ))), kGetDescriptor = ( ( ( UInt16)kUSBRqGetDescriptor << 8) + ( ( UInt16) kUSBDevice + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBIn << kUSBRqDirnShift ))), kGetInterface = ( ( ( UInt16)kUSBRqGetInterface << 8) + ( ( UInt16) kUSBInterface + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBIn << kUSBRqDirnShift ))), kGetDeviceStatus = ( ( ( UInt16)kUSBRqGetStatus << 8) + ( ( UInt16) kUSBDevice + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBIn << kUSBRqDirnShift ))), kGetInterfaceStatus = ( ( ( UInt16)kUSBRqGetStatus << 8) + ( ( UInt16) kUSBInterface + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBIn << kUSBRqDirnShift ))), kGetEndpointStatus = ( ( ( UInt16)kUSBRqGetStatus << 8) + ( ( UInt16) kUSBEndpoint + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBIn << kUSBRqDirnShift ))), kSetAddress = ( ( ( UInt16)kUSBRqSetAddress << 8) + ( ( UInt16) kUSBDevice + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kSetConfiguration = ( ( ( UInt16)kUSBRqSetConfig << 8) + ( ( UInt16) kUSBDevice + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kSetDescriptor = ( ( ( UInt16)kUSBRqSetDescriptor << 8) + ( ( UInt16) kUSBDevice + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kSetDeviceFeature = ( ( ( UInt16)kUSBRqSetFeature << 8) + ( ( UInt16) kUSBDevice + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kSetInterfaceFeature = ( ( ( UInt16)kUSBRqSetFeature << 8) + ( ( UInt16) kUSBInterface + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kSetEndpointFeature = ( ( ( UInt16)kUSBRqSetFeature << 8) + ( ( UInt16) kUSBEndpoint + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kSetInterface = ( ( ( UInt16)kUSBRqSetInterface << 8) + ( ( UInt16) kUSBInterface + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBOut << kUSBRqDirnShift ))), kSyncFrame = ( ( ( UInt16)kUSBRqSyncFrame << 8) + ( ( UInt16) kUSBEndpoint + ( ( UInt16) kUSBStandard << kUSBRqTypeShift ) + ( ( UInt16) kUSBIn << kUSBRqDirnShift ))), };

    Обсуждение

    Кодирование запросов стандартного устройства.

    • bmRequestType bRequest wValue wIndex wLength Data
    • 00000000B CLEAR_FEATURE Feature Zero Zero None (device)
    • 00000001B Feature Interface Zero None (Interface)
    • 00000010B Feature Endpoint Zero None (Endpoint)
    • 10000000B GET_CONFIGURATION Zero Zero One Configuration
    • 10000000B GET_DESCRIPTOR Type LangID Length Descriptor
    • 10000001B GET_INTERFACE Zero Interface One Alternate
    • 10000000B GET_STATUS Zero Zero Two status (device)
    • 10000001B Zero Interface Two status (Interface)
    • 10000010B Zero Endpoint Two status (Endpoint)
    • 00000000B SET_ADDRESS Address Zero Zero None
    • 00000000B SET_CONFIGURATION Configuration Zero Zero None
    • 00000000B SET_DESCRIPTOR Type LangID Length Descriptor
    • 00000000B SET_FEATURE Feature Zero Zero None (device)
    • 00000001B Feature Interface Zero None (Interface)
    • 00000010B Feature Endpoint Zero None (Endpoint)
    • 00000001B SET_INTERFACE Alternate Interface Zero None
    • 10000010B SYNCH_FRAME Zero Endpoint Two Frame Number

  • Объявление

    Objective C

    enum { kUSBDeviceSpeedLow = 0, kUSBDeviceSpeedFull = 1, kUSBDeviceSpeedHigh = 2, kUSBDeviceSpeedSuper = 3 };

    Константы

    • kUSBDeviceSpeedLow

      kUSBDeviceSpeedLow

      Устройство является низкоскоростным устройством.

      Доступный в OS X v10.0 и позже.

    • kUSBDeviceSpeedFull

      kUSBDeviceSpeedFull

      Устройство является устройством полной скорости.

      Доступный в OS X v10.0 и позже.

    • kUSBDeviceSpeedHigh

      kUSBDeviceSpeedHigh

      Устройство является высокоскоростным устройством.

      Доступный в OS X v10.2 и позже.

    • kUSBDeviceSpeedSuper

      kUSBDeviceSpeedSuper

      Устройство является устройством SuperSpeed

      Доступный в OS X v10.7 и позже.

    Обсуждение

    Возвращает скорость определенного USB-устройства.

  • Объявление

    Objective C

    enum { kUSBEndpointPropertiesVersion3 = 0x03 };

    Константы

    • kUSBEndpointPropertiesVersion3

      kUSBEndpointPropertiesVersion3

      Версия, имеющая поддержку полей USB3 SuperSpeed Endpoint Companion.

      Доступный в OS X v10.8 и позже.

    Обсуждение

    Версия структуры IOUSBEndpointProperties.