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

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

Разработчик

Ссылка класса IOFireWireLocalIsochPortInterface

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

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

IOFireWireLocalIsochPortInterface

Пользовательский клиент FireWire локальный изохронный объект порта.

Представляет FireWire изохронный говорящий или слушатель в локальной машине. Изохронной передачей управляет связанный DCL (Язык управления Потока данных) программа, которая подобна аппаратным средствам программа DMA, но является аппаратным агностиком. Программы DCL могут быть записаны с помощью объекта IOFireWireDCLCommandPoolInterface.

Этот интерфейс содержит все методы IOFireWireIsochPortInterface и IOFireWireLocalIsochPortInterface. Этот интерфейс будет содержать все v2 методы IOFireWireLocalIsochPortInterface, когда инстанцировано как v2 или более новый.

Буферы передачи для локального isoch порта должны все прибыть из единственного выделения, сделанного с vm_allocate () или mmap (..., MAP_ANON).

Вызов vm_deallocate () на буферах прежде, чем освободить локальный isoch объект порта может привести к мертвой блокировке.

Примечание: Вызов Выпуска () на локальном isoch порту может не сразу выпустить isoch порт; таким образом, может не быть безопасно вызвать vm_deallocate () на Ваших буферах передачи. Гарантировать порт было выпуском, выполнило изохронный runloop, пока порт не завершен (это обработало любые незаконченные обратные вызовы). Когда порт будет завершен, завершить обратный вызов вызовут. Установите завершить использование обратного вызова SetFinalizeCallback ().

Наследование


Не применимый

Соответствует


Не применимый

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


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

    Объявление

    C++

    IOReturn ( *AllocatePort) ( IOFireWireLibIsochPortRef self, IOFWSpeed speed, UInt32 chan );

    Параметры

    self

    isoch порт взаимодействует через интерфейс для использования.

    speed

    Скорость канала

    chan

    Номер канала (-63)

    Возвращаемое значение

    Возвратите kIOReturnSuccess на успехе, другой возврат любой другой код ошибки IOReturn.

    Обсуждение

    Этот метод вызывает объект канала, к которому был добавлен порт. Подклассы IOFireWireIsochPortInterface переопределяют этот метод для поддержки определенных аппаратных средств. Не вызывайте этот метод непосредственно.

  • Получите ссылочное значение, связанное с этим портом.

    Объявление

    C++

    void* ( *GetRefCon) ( IOFireWireLibIsochPortRef self);

    Параметры

    self

    isoch порт взаимодействует через интерфейс для использования.

    Возвращаемое значение

    Порт refcon значение.

    Обсуждение

    Установите ссылочное значение с SetRefCon ()

  • Метод вызывают для определения, который FireWire изохронные каналы и ускоряют этот порт поддержки.

    Объявление

    C++

    IOReturn ( *GetSupported) ( IOFireWireLibIsochPortRef self, IOFWSpeed *maxSpeed, UInt64 *chanSupported );

    Параметры

    self

    isoch порт взаимодействует через интерфейс для использования.

    maxSpeed

    Указатель на IOFWSpeed, который должен быть заполнен максимальной скоростью этот порт, может говорить или послушать.

    chanSupported

    Указатель на UInt64, который должен быть заполнен битовой маской, представляющей FireWire, соединяет шиной каналы isochonous, на которых порт может говорить или послушать. Установите '1' для поддерживаемого, '' для неподдерживаемого.

    Возвращаемое значение

    Возвратите kIOReturnSuccess на успехе, другой возврат любой другой код ошибки IOReturn.

    Обсуждение

    Этот метод вызывает объект канала, к которому был добавлен порт. Подклассы IOFireWireIsochPortInterface переопределяют этот метод для поддержки определенных аппаратных средств. Не вызывайте этот метод непосредственно.

  • Измените целевую метку перехода перехода DCL.

    Объявление

    C++

    IOReturn ( *ModifyJumpDCL)( IOFireWireLibLocalIsochPortRef self, DCLJump *inJump, DCLLabel *inLabel);

    Параметры

    self

    Локальный isoch порт взаимодействует через интерфейс для использования.

    inJump

    Переход DCL для изменения.

    inLabel

    Метка для перехода к.

    Возвращаемое значение

    kIOReturnSuccess на успехе. Возвратит ошибку, если 'inJump' не укажет на допустимый переход, DCL или 'inLabel' не указывают на допустимую метку на DCL.

    Обсуждение

    Используйте эту функцию для изменения потока программы DCL. Работы, работает ли программа DCL в настоящее время или нет.

  • Измените размер передачи пакета передачи DCL (отправьте или получите),

    Объявление

    C++

    IOReturn ( *ModifyTransferPacketDCL)( IOFireWireLibLocalIsochPortRef self, DCLTransferPacket *inDCL, void *buffer, IOByteCount size );

    Параметры

    self

    Локальный isoch порт взаимодействует через интерфейс для использования.

    inDCL

    Указатель на DCL для изменения.

    buffer

    Новый буфер к или от данных будет передан.

    size

    Новый размер данных, которые будут переданы.

    Возвращаемое значение

    Возвраты kIOReturnSuccess на успехе. Возвратит ошибку, если 'размер' будет слишком большим, или 'inDCL' не указывает на допустимый пакет передачи на DCL или диапазон, указанный [буфер, buffer+size] не находится в диапазоне памяти, заблокированной вниз для этой программы.

    Обсуждение

    Позволяет Вам изменять пакет передачи DCLs после того, как они были скомпилированы и в то время как все еще работает программа DCL. Когда программа DCL была скомпилирована (включая 0), размер передачи может быть установлен в любой размер, меньше чем или равный набору размера.

    Доступность: IOFireWireLocalIsochPortInterface_v3 и более новый.

  • НЕ РЕАЛИЗОВАННЫЙ. Измените размер передачи пакета передачи DCL (отправьте или получите),

    Объявление

    C++

    IOReturn ( *ModifyTransferPacketDCLBuffer)( IOFireWireLibLocalIsochPortRef self, DCLTransferPacket *inDCL, void *buffer );

    Параметры

    self

    Локальный isoch порт взаимодействует через интерфейс для использования.

    inDCL

    Указатель на DCL для изменения.

    buffer

    Новый буфер к или от данных будет передан.

    Возвращаемое значение

    Возвраты kIOReturnSuccess на успехе. Если диапазон, указанный [буфер, buffer+size], не будет в диапазоне памяти, заблокированной вниз для этой программы, возвратит ошибку.

    Обсуждение

    НЕ РЕАЛИЗОВАННЫЙ. Позволяет Вам изменять пакет передачи DCLs после того, как они были скомпилированы и в то время как все еще работает программа DCL. Когда программа DCL была скомпилирована (включая 0), буфер может быть установлен быть любым расположением в диапазоне буферов, указанных. Доступность: IOFireWireLocalIsochPortInterface_v3 и более новый.

  • Измените размер передачи пакета передачи DCL (отправьте или получите),

    Объявление

    C++

    IOReturn ( *ModifyTransferPacketDCLSize)( IOFireWireLibLocalIsochPortRef self, DCLTransferPacket *inDCL, IOByteCount size );

    Параметры

    self

    Локальный isoch порт взаимодействует через интерфейс для использования.

    inDCL

    Указатель на DCL для изменения.

    size

    Новый размер данных, которые будут переданы.

    Возвращаемое значение

    Возвраты kIOReturnSuccess на успехе. Если 'размер' будет слишком большим для этой программы, возвратит ошибку.

    Обсуждение

    Позволяет Вам изменять пакет передачи DCLs после того, как они были скомпилированы и в то время как все еще работает программа DCL. Когда программа DCL была скомпилирована (включая 0), размер передачи может быть установлен в любой размер, меньше чем или равный набору размера.

    Доступность: IOFireWireLocalIsochPortInterface_v2 и более новый.

  • Выведите на экран содержание программы DCL.

    Объявление

    C++

    void ( *PrintDCLProgram)( IOFireWireLibLocalIsochPortRef self, const DCLCommand *inProgram, UInt32 inLength);

    Параметры

    self

    Локальный isoch порт взаимодействует через интерфейс для использования.

    inProgram

    Указатель на первый DCL программы, который выведет на экран.

    inLength

    Длина (в DCLs) программы.

  • Метод вызывают для выпуска аппаратных средств после того, как был остановлен канал.

    Объявление

    C++

    IOReturn ( *ReleasePort) ( IOFireWireLibIsochPortRef self );

    Параметры

    self

    isoch порт взаимодействует через интерфейс для использования.

    Возвращаемое значение

    Возвратите kIOReturnSuccess на успехе, другой возврат любой другой код ошибки IOReturn.

    Обсуждение

    Этот метод вызывает объект канала, к которому был добавлен порт. Подклассы IOFireWireIsochPortInterface переопределяют этот метод для поддержки определенных аппаратных средств. Не вызывайте этот метод непосредственно.

  • Установите завершить обратный вызов для локального isoch порта

    Объявление

    C++

    IOReturn ( *SetFinalizeCallback)( IOFireWireLibLocalIsochPortRef self, IOFireWireLibIsochPortFinalizeCallback finalizeCallback );

    Параметры

    self

    Локальный isoch порт взаимодействует через интерфейс для использования.

    finalizeCallback

    Завершить обратный вызов.

    Возвращаемое значение

    Если этот isoch порт не имеет более незаконченных обратных вызовов и больше не требуется runloop время, возвращает true.

    Обсуждение

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

    Вы не должны получать доступ к isoch порту после того, как был сделан завершить обратный вызов; это может быть сразу выпущено после того, как этот обратный вызов отправляется.

    Доступность: IOFireWireLocalIsochPortInterface_v4 и более новый.

  • Ссылочное значение набора связалось с этим портом.

    Объявление

    C++

    void ( *SetRefCon) ( IOFireWireLibIsochPortRef self, void *inRefCon);

    Параметры

    self

    isoch порт взаимодействует через интерфейс для использования.

    inRefCon

    Новое ссылочное значение.

    Обсуждение

    Получите ссылочное значение с GetRefCon ()

  • Когда порт должен начать говорить или слушать, метод вызывают.

    Объявление

    C++

    IOReturn ( *Start) ( IOFireWireLibIsochPortRef self );

    Параметры

    self

    isoch порт взаимодействует через интерфейс для использования.

    Возвращаемое значение

    Возвратите kIOReturnSuccess на успехе, другой возврат любой другой код ошибки IOReturn.

    Обсуждение

    Этот метод вызывает объект канала, к которому был добавлен порт. Подклассы IOFireWireIsochPortInterface переопределяют этот метод для поддержки определенных аппаратных средств. Не вызывайте этот метод непосредственно.

  • Когда порт должен прекратить говорить или слушать, метод вызывают.

    Объявление

    C++

    IOReturn ( *Stop) ( IOFireWireLibIsochPortRef self );

    Параметры

    self

    isoch порт взаимодействует через интерфейс для использования.

    Возвращаемое значение

    Возвратите kIOReturnSuccess на успехе, другой возврат любой другой код ошибки IOReturn.

    Обсуждение

    Этот метод вызывает объект канала, к которому был добавлен порт. Подклассы IOFireWireIsochPortInterface переопределяют этот метод для поддержки определенных аппаратных средств. Не вызывайте этот метод непосредственно.

Переменные экземпляра

  • Интерфейсная версия

    Объявление

    C++

    UInt32 version;

  • Интерфейсная версия

    Объявление

    C++

    UInt32 revision;