IOFireWireDeviceInterface
IOFireWireDeviceInterface является Вашим основным шлюзом к функциональности, содержавшейся в IOFireWireLib.
Можно использовать IOFireWireDeviceInterface для:
выполните синхронное чтение, запишите и заблокируйте операции
выполните другие miscellanous автобусные перевозки, такой, как сброшено шина FireWire.
создайте объекты команды FireWire, и интерфейсы раньше выполняли синхронное/асинхронное чтение, писали и блокировали операции. Они включают:
создайте интерфейсы, обеспечивающие другой дополнительные услуги. Они включают:
создайте интерфейсы, предоставляющие изохронные услуги (см. IOFireWireLibIsoch.h). Они включают:
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Не применимый не применимый
-
Устанавливает надлежащий источник события цикла выполнения, чтобы позволить обратным вызовам функционировать. Этот метод нужно вызвать, прежде чем уведомления об обратном вызове для этого интерфейса или создаваемого использования любых интерфейсов этого интерфейса могут функционировать.
Объявление
C++
const IOReturn ( *AddCallbackDispatcherToRunLoop)(
IOFireWireLibDeviceRef self,
CFRunLoopRef inRunLoop);
Параметры
self
Интерфейс устройства для использования.
inRunLoop
Цикл выполнения, на котором можно установить источник события
-
Добавьте источник события цикла выполнения, чтобы позволить обратным вызовам IOFireWireLib функционировать.
Объявление
C++
IOReturn ( *AddCallbackDispatcherToRunLoopForMode)(
IOFireWireLibDeviceRef self,
CFRunLoopRef inRunLoop,
CFStringRef inRunLoopMode );
Параметры
self
Интерфейс устройства для использования.
inRunLoop
Цикл выполнения, на котором можно установить источник события
inRunLoopMode
Режим (ы) цикла выполнения, для которого можно установить источник события
Возвращаемое значение
Код ошибки IOReturn.
Обсуждение
Устанавливает надлежащий источник события цикла выполнения, чтобы позволить обратным вызовам функционировать. Этот метод нужно вызвать, прежде чем уведомления об обратном вызове для этого интерфейса или создаваемого использования любых интерфейсов этого интерфейса могут функционировать. С этой функцией можно дополнительно указать, для которых выполненных режимов цикла должен быть добавлен этот источник.
Доступность: IOFireWireDeviceInterface_v3, и более новый
-
AddIsochCallbackDispatcherToRunLoop (IOFireWireLibDeviceRef, CFRunLoopRef) - AddIsochCallbackDispatcherToRunLoop (IOFireWireLibDeviceRef, CFRunLoopRef)
Эта функция добавляет источник события для изохронного диспетчера обратного вызова к указанному CFRunLoop. Изохронные связанные обратные вызовы не будут функционировать, прежде чем эта функция вызвана. Это функционирует, подобно AddCallbackDispatcherToRunLoop. Переданный CFRunLoop может отличаться от этого, передал AddCallbackDispatcherToRunLoop.
Объявление
C++
IOReturn ( *AddIsochCallbackDispatcherToRunLoop)(
IOFireWireLibDeviceRef self,
CFRunLoopRef inRunLoop);
Параметры
self
Интерфейс устройства для использования.
inRunLoop
CFRunLoopRef для цикла выполнения, к которому должен быть добавлен источник цикла событий
Возвращаемое значение
Код ошибки IOReturn.
-
AddIsochCallbackDispatcherToRunLoop (IOFireWireLibDeviceRef, CFRunLoopRef, CFStringRef) - AddIsochCallbackDispatcherToRunLoop (IOFireWireLibDeviceRef, CFRunLoopRef, CFStringRef)
Добавьте источник события цикла выполнения, чтобы позволить обратным вызовам IOFireWireLib isoch функционировать.
Объявление
C++
IOReturn ( *AddIsochCallbackDispatcherToRunLoopForMode)(
IOFireWireLibDeviceRef self,
CFRunLoopRef inRunLoop,
CFStringRef inRunLoopMode );
Параметры
self
Интерфейс устройства для использования.
inRunLoop
CFRunLoopRef для цикла выполнения, к которому должен быть добавлен источник цикла событий
inRunLoopMode
Режим (ы) цикла выполнения, для которого можно установить источник события
Возвращаемое значение
Код ошибки IOReturn.
Обсуждение
Эта функция добавляет источник события для изохронного диспетчера обратного вызова к указанному CFRunLoop. Изохронные связанные обратные вызовы не вызовут, если не была вызвана эта функция. Эта функция подобна AddCallbackDispatcherToRunLoop. Переданный CFRunLoop может отличаться от этого, передал AddCallbackDispatcherToRunLoop.
Доступность: IOFireWireDeviceInterface_v3, и более новый
-
Добавьте источник события цикла выполнения, чтобы позволить обратным вызовам IOFireWireLib isoch функционировать.
Объявление
C++
IOReturn ( *AddIsochCallbackDispatcherToRunLoopForMode)(
IOFireWireLibDeviceRef self,
CFRunLoopRef inRunLoop,
CFStringRef inRunLoopMode );
Параметры
self
Интерфейс устройства для использования.
inRunLoop
CFRunLoopRef для цикла выполнения, к которому должен быть добавлен источник цикла событий
inRunLoopMode
Режим (ы) цикла выполнения, для которого можно установить источник события
Возвращаемое значение
Код ошибки IOReturn.
Обсуждение
Эта функция добавляет источник события для изохронного диспетчера обратного вызова к указанному CFRunLoop. Изохронные связанные обратные вызовы не вызовут, если не была вызвана эта функция. Эта функция подобна AddCallbackDispatcherToRunLoop. Переданный CFRunLoop может отличаться от этого, передал AddCallbackDispatcherToRunLoop.
Доступность: IOFireWireDeviceInterface_v3, и более новый
-
Попытка выделить некоторую изохронную пропускную способность от IRM
Объявление
C++
IOReturn ( *AllocateIRMBandwidthInGeneration)(
IOFireWireLibDeviceRef self,
UInt32 bandwidthUnits,
UInt32 generation);
Параметры
bandwidthUnits
Число модулей пропускной способности для выделения
generation
Генерация шины, в которой состоит в том, чтобы иметь место эта попытка выделения.
Возвращаемое значение
Возвраты kIOReturnSuccess, если выделение пропускной способности было успешно. Возвраты kIOFireWireBusReset, если 'генерация' не соответствует текущее число генерации шины. Возвраты kIOReturnError для любой другой ошибки (такие как отказавшее выделение)
Обсуждение
Если генерация соответствует текущую генерацию, попытки к выделяют некоторую изохронную пропускную способность от IRM. Доступность: IOFireWireDeviceInterface_v9 и более новый
-
Попытка выделить изохронный канал от IRM
Объявление
C++
IOReturn ( *AllocateIRMChannelInGeneration)(
IOFireWireLibDeviceRef self,
UInt8 isochChannel,
UInt32 generation);
Параметры
isochChannel
Изохронный канал для выделения
generation
Генерация шины, в которой состоит в том, чтобы иметь место эта попытка выделения.
Возвращаемое значение
Возвраты kIOReturnSuccess, если выделение каналов было успешно. Возвраты kIOFireWireBusReset, если 'генерация' не соответствует текущее число генерации шины. Возвраты kIOReturnError для любой другой ошибки (такие как отказавшее выделение)
Обсуждение
Если генерация соответствует текущую генерацию, попытки к выделяют изохронный канал от IRM. Доступность: IOFireWireDeviceInterface_v9 и более новый
-
Вызовите сброс шины
Объявление
C++
IOReturn ( *BusReset)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования.
-
Эта функция должна быть вызвана от подпрограмм обратного вызова, как только они завершили обработку обратного вызова. Эта функция только применяется к обратным вызовам, берущим IOFireWireLibDeviceRef (т.е. соедините шиной сброс), параметр.
Объявление
C++
void ( *ClientCommandIsComplete)(
IOFireWireLibDeviceRef self,
FWClientCommandID commandID,
IOReturn status);
Параметры
commandID
Команда ID передала функции обратного вызова, когда это вызвали
status
Значение IOReturn, указывающее состояние завершения функции обратного вызова
-
Объявление
C++
IOReturn ( *ClipMaxRec2K)(
IOFireWireLibDeviceRef self,
Boolean clipMaxRec );
Обсуждение
Предстоящее описание
-
Выпустите эксклюзивный доступ к устройству
Объявление
C++
void ( *Close)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования
-
Выполните синхронную работу блокировки
Объявление
C++
IOReturn ( *CompareSwap)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
UInt32 cmpVal,
UInt32 newVal,
Boolean failOnReset,
UInt32 generation);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются.
addr
Целевой адрес команды
cmpVal
Проверять/сравнивать значение
newVal
Оцените установленному
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Код ошибки IOReturn
-
Выполните синхронную работу блокировки
Объявление
C++
IOReturn ( *CompareSwap64)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
UInt32 *expectedVal,
UInt32 *newVal,
UInt32 *oldVal,
IOByteCount size,
Boolean failOnReset,
UInt32 generation);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются.
Если quadlets, сохраненные в 'oldVal', соответствуют переданных 'expectedVal', работа блокировки была успешна.
addr
Целевой адрес команды
expectedVal
Указатель на quadlets ожидается в цели.
newVal
Указатель на quadlets для атомной установки в цели, если выдерживают сравнение, успешен.
oldVal
Указатель на quadlets для содержания значения, найденного в целевом адресе после транзакции, если завершено.
size
Размер в байтах сравнивает транзакцию подкачки для выполнения. Значения значения равняются 4 и 8.
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration ()
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью.
Возвращаемое значение
Код ошибки IOReturn
-
Создайте объект команды для отправки Асинхронных Потоковых пакетов
Объявление
C++
IOFireWireLibCommandRef ( *CreateAsyncStreamCommand)(
IOFireWireLibDeviceRef self,
UInt32 channel,
UInt32 sync,
UInt32 tag,
void *buf,
UInt32 size,
IOFireWireLibCommandCallback callback,
Boolean failOnReset,
UInt32 generation,
void *inRefCon,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
channel
Номер канала для использования.
buf
Указатель на буфер, содержащий данные, которые будут записаны
size
Число байтов для записи
callback
Обратный вызов завершения команды.
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
inRefCon
Пользователь указал ссылочное значение. Это будет передано всем функциям обратного вызова.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого phy пакетного объекта прослушивателя.
Возвращаемое значение
Код ошибки IOReturn
-
Создает асинхронный потоковый объект прослушивателя и возвращает интерфейс ему.
Объявление
C++
IOFWAsyncStreamListenerInterfaceRef ( *CreateAsyncStreamListener)(
IOFireWireLibDeviceRef self,
UInt32 channel,
IOFWAsyncStreamListenerHandler callback,
void *inRefCon,
UInt32 inQueueBufferSize,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
channel
Канал для выделения.
inRefCon
Пользователь указал ссылочное значение. Это будет передано всем функциям обратного вызова.
inQueueBufferSize
Размер очереди, получающей пакеты от шины, прежде чем их вручат клиенту. Более многочисленная очередь может помочь устранить отброшенные пакеты при получении больших пакетов данных. То, когда пакет получен, который не может вписаться в очередь, пакет отбросил обратный вызов, вызовут.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого ayns потокового объекта прослушивателя.
Возвращаемое значение
IOFWAsyncStreamListenerInterfaceRef. Возвраты 0 на отказ
-
Создайте quadlet, сравнивают/подкачивают объект команды.
Объявление
C++
IOFireWireLibCommandRef ( *CreateCompareSwapCommand)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
UInt32 cmpVal,
UInt32 newVal,
IOFireWireLibCommandCallback callback,
Boolean failOnReset,
UInt32 generation,
void *inRefCon,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
addr
Целевой адрес команды
cmpVal
32-разрядное значение ожидается в целевом адресе
newVal
32-разрядное значение, которое будет установлено в целевом адресе
callback
Обратный вызов завершения команды. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Интерфейс IOFireWireLibCommandRef. Посмотрите IOFireWireLibCommandRef.
-
Создайте quadlet, сравнивают/подкачивают объект команды и инициализируют его с 64-разрядными значениями.
Объявление
C++
IOFireWireLibCommandRef ( *CreateCompareSwapCommand64)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
UInt64 cmpVal,
UInt64 newVal,
IOFireWireLibCommandCallback callback,
Boolean failOnReset,
UInt32 generation,
void *inRefCon,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
addr
Целевой адрес команды
cmpVal
64-разрядное значение ожидается в целевом адресе
newVal
64-разрядное значение, которое будет установлено в целевом адресе
callback
Обратный вызов завершения команды.
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration ()
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью.
Возвращаемое значение
Интерфейс IOFireWireLibCommandRef. Посмотрите IOFireWireLibCommandRef.
-
Эта функция может использоваться для создания объекта каталога конфигурации и соответствующего интерфейса из непрозрачной ссылки IOObject. Некоторые методы интерфейса каталога конфигурации могут возвратить io_object_t вместо IOFireWireLibConfigDirectoryRef. Используйте эту функцию для получения IOFireWireLibConfigDirectoryRef из io_object_t.
Объявление
C++
IOFireWireLibConfigDirectoryRef ( *CreateConfigDirectoryWithIOObject)(
IOFireWireLibDeviceRef self,
io_object_t inObject,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого объекта каталога конфигурации.
Возвращаемое значение
IOFireWireLibConfigDirectoryRef. Возвраты 0 на отказ
-
Создает объект пула команды и возвращает интерфейс ему. Пул команды может использоваться для создания программ DCL.
Объявление
C++
IOFireWireLibDCLCommandPoolRef ( *CreateDCLCommandPool)(
IOFireWireLibDeviceRef self,
IOByteCount size,
REFIID iid );
Параметры
self
Интерфейс устройства для использования.
size
Стартовый размер пула команды
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для созданного объекта.
Возвращаемое значение
IOFireWireLibDCLCommandPoolRef. Возвраты 0 на отказ
-
Создает псевдо адресное пространство в начальном пространстве модулей.
Объявление
C++
IOFireWireLibPseudoAddressSpaceRef ( *CreateInitialUnitsPseudoAddressSpace)(
IOFireWireLibDeviceRef self,
UInt32 inAddressLo,
UInt32 inSize,
void *inRefCon,
UInt32 inQueueBufferSize,
void *inBackingStore,
UInt32 inFlags,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
inAddressLo
Более низкие 32 бита базового адреса адресного пространства, которое будет создаваться. Адрес всегда находится в начальном пространстве модулей.
inSize
Размер в байтах этого адресного пространства.
inRefCon
Пользователь указал ссылочное значение. Это будет передано всем функциям обратного вызова.
inQueueBufferSize
Размер очереди, получающей пакеты от шины, прежде чем их вручат клиенту и/или вставят запоминающее устройство. Более многочисленная очередь может помочь устранить отброшенные пакеты при получении больших пакетов данных. То, когда пакет получен, который не может вписаться в очередь, пакет отбросил обратный вызов, вызовут.
inBackingStore
Дополнительный блок выделенной памяти, представляющей содержание адресного пространства. Этот блок памяти должен иметь размер inSize.
inFlags
UInt32 с набором битов, соответствующим флагам, которые должны быть установлены для этого адресного пространства.
kFWAddressSpaceNoFlags - Все флаги прочь
kFWAddressSpaceNoWriteAccess - Доступ для записи к этому адресному пространству будет запрещен. Установка этого флага также отключает, сравнивают/подкачивают транзакции на этом адресном пространстве.
kFWAddressSpaceNoReadAccess - Доступ доступа для чтения к этому адресному пространству будет запрещен. Установка этого флага также отключает, сравнивают/подкачивают транзакции на этом адресном пространстве.
kFWAddressSpaceAutoWriteReply - Записи будут сделаны автоматически, непосредственно изменяя содержание запоминающего устройства. Пользовательский процесс не будет уведомлен относительно записей.
kFWAddressSpaceAutoReadReply - Чтениям к этому адресному пространству ответят автоволшебно с помощью содержания запоминающего устройства. Пользовательский процесс не будет уведомлен относительно чтений.
kFWAddressSpaceAutoCopyOnWrite - Записи к этому адресному пространству будут сделаны непосредственно к запоминающему устройству одновременно, пользовательский процесс уведомляется относительно записи. Если kFWAddressSpaceAutoWriteReply не будет установлен, клиенты будут только уведомлены относительно записи.
kFWAddressSpaceShareIfExists - Даже если у другого клиента уже есть адресное пространство в требуемом адресе, позволяет создание этого адресного пространства. Все клиенты будут уведомлены относительно записей к покрытым адресам.
kFWAddressSpaceExclusive - Гарантирует, что выделение этого адресного пространства перестанет работать, если будет уже выделена какая-либо часть этого диапазона адресов. Если выделение успешно, этот флаг гарантирует, что любые будущие выделения, перекрывающие этот диапазон, перестанут работать даже если выделенный с kFWAddressSpaceShareIfExists.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого псевдо объекта адресного пространства.
Возвращаемое значение
IOFireWireLibPseudoAddressSpaceRef. Возвраты 0 на отказ
Обсуждение
Создает псевдо объект адресного пространства в начальном пространстве модулей и возвращает интерфейс ему. Это создаст псевдо адресное пространство (поддержанное программным обеспечением) на локальной машине.
Availablilty: IOFireWireDeviceInterface_v3, и более новый
-
Попытка создать выделение IRM, сохраняющееся через сброс шины.
Объявление
C++
IOFireWireLibIRMAllocationRef ( *CreateIRMAllocation)(
IOFireWireLibDeviceRef self,
Boolean releaseIRMResourcesOnFree,
IOFireWireLibIRMAllocationLostNotificationProc callback,
void *pLostNotificationProcRefCon,
REFIID iid);
Параметры
releaseIRMResourcesOnFree
Укажите, должны ли средства IRM быть высвобождены, когда будет уничтожен IOFireWireLibIRMAllocation. Может быть overrided позже.
callback
Обработчик для уведомления клиентов отказа предъявить претензии в отношении ресурсов IRM, после того, как сброшено шиной.
pLostNotificationProcRefCon
refCon передается с обратным вызовом.
Возвращаемое значение
Возвращает указатель на недавно создаваемый объект выделения IRM, в случае успеха, NULL иначе.
Обсуждение
Создайте объект IOFireWireIRMAllocation, который может использоваться для выделения ресурсов IRM и перераспределит автоматически после сброса шины (если возможный).
Доступность: IOFireWireDeviceInterface_v9 и более новый
-
Создает изохронный объект канала и возвращает интерфейс ему. Изохронный объект канала является абстрактным объектом, используемым для представления FireWire изохронный канал.
Объявление
C++
IOFireWireLibIsochChannelRef ( *CreateIsochChannel)(
IOFireWireLibDeviceRef self,
Boolean doIrm,
UInt32 packetSize,
IOFWSpeed prefSpeed,
REFIID iid );
Параметры
self
Интерфейс устройства для использования.
doIrm
Средства управления, выполняет ли канал автоматически операции IRM. Передайте истину, если канал должен выделить свой канал и пропускную способность с IRM. Передайте ложь для игнорирования IRM.
packetSize
Размер полезной нагрузки в байтах пакетов, отправляемых или полученных с этим каналом, исключая заголовки. Это автоматически переводится в выделение пропускной способности, подходящее для скорости, переданной в prefSpeed.
prefSpeed
Предпочтительная скорость шины этого канала.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для созданного объекта.
Возвращаемое значение
IOFireWireLibIsochChannelRef. Возвраты 0 на отказ
-
Создает локальный изохронный объект порта и возвращает интерфейс ему. Локальный изохронный объект порта является абстрактным объектом, используемым для представления конечной точки разговора или слушания в локальной машине.
Объявление
C++
IOFireWireLibLocalIsochPortRef ( *CreateLocalIsochPort)(
IOFireWireLibDeviceRef self,
Boolean inTalking,
DCLCommand *inDCLProgram,
UInt32 inStartEvent,
UInt32 inStartState,
UInt32 inStartMask,
IOVirtualRange inDCLProgramRanges[], // optional optimization parameters
UInt32 inDCLProgramRangeCount,
IOVirtualRange inBufferRanges[],
UInt32 inBufferRangeCount,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
inTalking
Передайте истину, если этот порт представляет изохронного говорящего. Передайте ложь, если этот порт представляет изохронного слушателя.
inDCLProgram
Указатель на первую структуру команды DCL программы DCL, которая будет компилироваться и использоваться, чтобы отправить или получить данные по этому порту.
inStartEvent
Событие Start: 0 или kFWDCLCycleEvent или kFWDCLSyBitsEvent
inStartState
Биты начального состояния. Поскольку kFWDCLCycleEvent указывает цикл для запуска DMA на. Поскольку kFWDCLSyBitsEvent указывает пакетное значение поля синхронизации для первого пакета для получения.
inStartMask
Запустите биты маски. Поскольку kFWDCLCycleEvent указывает маску для цикла запуска: DMA запустится когда currentCycle и inStartMask == inStartEvent и inStartMask. Поскольку kFWDCLSyBitsEvent указывает маску для синхронизирующего поля: когда пакет будет синхронизировать == inStartEvent и inStartMask, DMA запустится.
inDCLProgramRanges
Это - дополнительный параметр оптимизации, который может использоваться для уменьшения времени, локальный объект порта тратит определение, какой набор виртуальных диапазонов переданная программа DCL занимает. Передайте указатель на массив структур IOVirtualRange или ноля для игнорирования этого параметра.
inDCLProgramRangeCount
Число виртуальных диапазонов передало inDCLProgramRanges. Передайте 0 ни для одного.
inBufferRanges
Это - дополнительный параметр оптимизации, который может использоваться для уменьшения времени, локальный объект порта тратит определение, какой набор виртуальных диапазонов буферы данных, на которые ссылается переданная программа DCL, занимают. Передайте указатель на массив структур IOVirtualRange или ноля для игнорирования этого параметра.
inBufferRangeCount
Число виртуальных диапазонов передало inBufferRanges. Передайте 0 ни для одного.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для созданного объекта.
Возвращаемое значение
IOFireWireLibLocalIsochPortRef. Возвраты 0 на отказ
-
Создайте локальный isoch порт
Объявление
C++
IOFireWireLibLocalIsochPortRef ( *CreateLocalIsochPortWithOptions)(
IOFireWireLibDeviceRef self,
Boolean inTalking,
DCLCommand *dclProgram,
UInt32 startEvent,
UInt32 startState,
UInt32 startMask,
IOVirtualRange dclProgramRanges[], // optional optimization parameters
UInt32 dclProgramRangeCount,
IOVirtualRange bufferRanges[],
UInt32 bufferRangeCount,
IOFWIsochPortOptions options,
REFIID iid);
Параметры
options
В настоящее время поддерживаемые опции являются 'kFWIsochPortUseSeparateKernelThread'. Если эта опция будет использоваться, то отдельный поток ядра будет создаваться для обработки обработки прерывания для этого порта только. Передайте 'kFWIsochPortDefaultOptions' ни для каких опций.
Возвращаемое значение
Возвраты kIOReturnSuccess, если допустимая скорость была возвращена в, 'превышают по быстродействию'. Возвраты kIOFireWireBusReset, если 'checkGeneration' не соответствует текущее число генерации шины.
Обсуждение
То же как CreateLocalIsochPort (), выше, но позволяет дополнительным опциям быть переданными. Доступность: IOFireWireDeviceInterface_v8 и более новый
-
Создает локальный объект каталога модуля и возвращает интерфейс ему. Экземпляр объекта каталога модуля соответствует экземпляру каталога модуля в конфигурации локальной машины ROM.
Объявление
C++
IOFireWireLibLocalUnitDirectoryRef ( *CreateLocalUnitDirectory)(
IOFireWireLibDeviceRef self,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого объекта каталога модуля.
Возвращаемое значение
IOFireWireLibLocalUnitDirectoryRef. Возвраты 0 на отказ
-
Объявление
C++
IOFireWireLibNuDCLPoolRef ( *CreateNuDCLPool)(
IOFireWireLibDeviceRef self,
UInt32 capacity,
REFIID iid );
Обсуждение
Предстоящее описание
-
Создайте объект команды для отправки пакета PHY
Объявление
C++
IOFireWireLibCommandRef ( *CreatePHYCommand)(
IOFireWireLibDeviceRef self,
UInt32 data1,
UInt32 data2,
IOFireWireLibCommandCallback callback,
Boolean failOnReset,
UInt32 generation,
void *inRefCon,
REFIID iid );
Параметры
self
Интерфейс устройства для использования.
data1
пакет quadlet 1 phy
data2
пакет quadlet 1 phy
callback
обратный вызов завершения
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration ()
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого phy объекта команды.
Возвращаемое значение
Код ошибки IOReturn
-
Создайте объект прослушивателя для получения пакетов PHY
Объявление
C++
IOFireWireLibPHYPacketListenerRef ( *CreatePHYPacketListener)(
IOFireWireLibDeviceRef self,
UInt32 queueCount,
REFIID iid );
Параметры
self
Интерфейс устройства для использования.
queueCount
Максимальный размер очереди для использования для буферизации phy пакетов между ядром и пространством пользователя
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого phy пакетного объекта прослушивателя.
Возвращаемое значение
Код ошибки IOReturn
-
Создает объект физического адресного пространства и возвращает интерфейс ему. Это создаст физическое адресное пространство на локальной машине.
Объявление
C++
IOFireWireLibPhysicalAddressSpaceRef ( *CreatePhysicalAddressSpace)(
IOFireWireLibDeviceRef self,
UInt32 inSize,
void *inBackingStore,
UInt32 inFlags,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
inSize
Размер в байтах этого адресного пространства.
inBackingStore
Блок выделенной памяти, представляющей содержание адресного пространства.
inFlags
UInt32 с набором битов, соответствующим флагам, которые должны быть установлены для этого адресного пространства. Для будущего использования - всегда передают 0.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого объекта физического адресного пространства.
Возвращаемое значение
IOFireWireLibPhysicalAddressSpaceRef. Возвраты 0 на отказ
-
Создает псевдо объект адресного пространства и возвращает интерфейс ему. Это создаст псевдо адресное пространство (поддержанное программным обеспечением) на локальной машине.
Объявление
C++
IOFireWireLibPseudoAddressSpaceRef ( *CreatePseudoAddressSpace)(
IOFireWireLibDeviceRef self,
UInt32 inSize,
void *inRefCon,
UInt32 inQueueBufferSize,
void *inBackingStore,
UInt32 inFlags,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
inSize
Размер в байтах этого адресного пространства.
inRefCon
Пользователь указал ссылочное значение. Это будет передано всем функциям обратного вызова.
inQueueBufferSize
Размер очереди, получающей пакеты от шины, прежде чем их вручат клиенту и/или вставят запоминающее устройство. Более многочисленная очередь может помочь устранить отброшенные пакеты при получении больших пакетов данных. То, когда пакет получен, который не может вписаться в очередь, пакет отбросил обратный вызов, вызовут.
inBackingStore
Дополнительный блок выделенной памяти, представляющей содержание адресного пространства. Этот блок памяти должен иметь размер inSize.
inFlags
UInt32 с набором битов, соответствующим флагам, которые должны быть установлены для этого адресного пространства.
kFWAddressSpaceNoFlags - Все флаги прочь
kFWAddressSpaceNoWriteAccess - Доступ для записи к этому адресному пространству будет запрещен. Установка этого флага также отключает, сравнивают/подкачивают транзакции на этом адресном пространстве.
kFWAddressSpaceNoReadAccess - Доступ доступа для чтения к этому адресному пространству будет запрещен. Установка этого флага также отключает, сравнивают/подкачивают транзакции на этом адресном пространстве.
kFWAddressSpaceAutoWriteReply - Записи будут сделаны автоматически, непосредственно изменяя содержание запоминающего устройства. Пользовательский процесс не будет уведомлен относительно записей.
kFWAddressSpaceAutoReadReply - Чтениям к этому адресному пространству ответят автоволшебно с помощью содержания запоминающего устройства. Пользовательский процесс не будет уведомлен относительно чтений.
kFWAddressSpaceAutoCopyOnWrite - Записи к этому адресному пространству будут сделаны непосредственно к запоминающему устройству одновременно, пользовательский процесс уведомляется относительно записи.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого псевдо объекта адресного пространства.
Возвращаемое значение
IOFireWireLibPseudoAddressSpaceRef. Возвраты 0 на отказ
-
Создайте блочный объект команды чтения.
Объявление
C++
IOFireWireLibCommandRef ( *CreateReadCommand)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
void *buf,
UInt32 size,
IOFireWireLibCommandCallback callback,
Boolean failOnReset,
UInt32 generation,
void *inRefCon,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
addr
Целевой адрес команды
buf
Указатель на буфер, где будут сохранены результаты
size
Число байтов для чтения
callback
Обратный вызов завершения команды. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Интерфейс IOFireWireLibCommandRef. Посмотрите IOFireWireLibCommandRef.
-
Создайте объект команды чтения quadlet.
Объявление
C++
IOFireWireLibCommandRef ( *CreateReadQuadletCommand)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
UInt32 quads[],
UInt32 numQuads,
IOFireWireLibCommandCallback callback,
Boolean failOnReset,
UInt32 generation,
void *inRefCon,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
addr
Целевой адрес команды
quads
Массив quadlets, где должны быть сохранены результаты
numQuads
Число quadlets для чтения
callback
Обратный вызов завершения команды. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Интерфейс IOFireWireLibCommandRef. Посмотрите IOFireWireLibCommandRef.
-
Создает удаленный изохронный объект порта и возвращает интерфейс ему. Удаленный изохронный объект порта является абстрактным объектом, используемым для представления удаленного устройства говорящего или слушателя на изохронном канале.
Объявление
C++
IOFireWireLibRemoteIsochPortRef ( *CreateRemoteIsochPort)(
IOFireWireLibDeviceRef self,
Boolean inTalking,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
inTalking
Передайте истину, если этот порт представляет изохронного говорящего. Передайте ложь, если этот порт представляет изохронного слушателя.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого удаленного изохронного объекта порта.
Возвращаемое значение
IOFireWireLibRemoteIsochPortRef. Возвраты 0 на отказ
-
Создайте векторный объект команды.
Объявление
C++
IOFireWireLibVectorCommandRef ( *CreateVectorCommand)(
IOFireWireLibDeviceRef self,
IOFireWireLibCommandCallback callback,
void *inRefCon,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
callback
Обратный вызов завершения команды. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
inRefCon
Ссылочная константа для стороннего использования.
Возвращаемое значение
Интерфейс IOFireWireLibVectorCommandRef
-
Создайте блок, пишут объект команды.
Объявление
C++
IOFireWireLibCommandRef ( *CreateWriteCommand)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
void *buf,
UInt32 size,
IOFireWireLibCommandCallback callback,
Boolean failOnReset,
UInt32 generation,
void *inRefCon,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
addr
Целевой адрес команды
buf
Указатель на буфер, содержащий данные, которые будут записаны
size
Число байтов для записи
callback
Обратный вызов завершения команды. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Интерфейс IOFireWireLibCommandRef. Посмотрите IOFireWireLibCommandRef.
-
Создайте quadlet, пишут объект команды.
Объявление
C++
IOFireWireLibCommandRef ( *CreateWriteQuadletCommand)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
UInt32 quads[],
UInt32 numQuads,
IOFireWireLibCommandCallback callback,
Boolean failOnReset,
UInt32 generation,
void *inRefCon,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
addr
Целевой адрес команды
quads
Массив quadlets, содержащего quadlets, чтобы быть записанным
numQuads
Число quadlets для записи
callback
Обратный вызов завершения команды. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Интерфейс IOFireWireLibCommandRef. Посмотрите IOFireWireLibCommandRef.
-
Объявление
C++
IOReturn ( *FireBugMsg)(
IOFireWireLibDeviceRef self,
const char *msg);
Обсуждение
Предстоящее описание
-
Журналы представляют в виде строки к буферу отладки в ядре
Объявление
C++
IOReturn ( *FireLog)(
IOFireWireLibDeviceRef self,
const char *format,
... );
Параметры
self
Интерфейс устройства для использования.
-
Получите шину и время цикла.
Объявление
C++
IOReturn ( *GetBusCycleTime)(
IOFireWireLibDeviceRef self,
UInt32 *outBusTime,
UInt32 *outCycleTime);
Параметры
self
Интерфейс устройства для использования.
outBusTime
Указатель на UInt32 для содержания времени шины
outCycleTime
Указатель на UInt32 для содержания времени цикла
Возвращаемое значение
Код ошибки IOReturn.
-
Получите число генерации шины.
Объявление
C++
IOReturn ( *GetBusGeneration)(
IOFireWireLibDeviceRef self,
UInt32 *outGeneration );
Параметры
self
Интерфейс устройства для использования.
outGeneration
Указатель на UInt32 для содержания числа генерации шины
Возвращаемое значение
Возвраты kIOReturnSuccess, если допустимая генерация шины была возвращена в 'outGeneration'.
Обсуждение
Число генерации шины остается постоянным между сбросом шины и может использоваться в сочетании с узлом FireWire ID для однозначного определения узлов на шине. Передайте число генерации функциям, берущим или возвращающим узел FireWire IDs.
Доступность: IOFireWireDeviceInterface_v4 и более новый
-
Создает объект каталога конфигурации и возвращает интерфейс ему. Создаваемый объект каталога конфигурации представляет каталог конфигурации в удаленном устройстве или модуле, к которому присоединяется интерфейс устройства создания.
Объявление
C++
IOFireWireLibConfigDirectoryRef ( *GetConfigDirectory)(
IOFireWireLibDeviceRef self,
REFIID iid);
Параметры
self
Интерфейс устройства для использования.
iid
Идентификационный номер, типа CFUUIDBytes (см. CFUUID.h), идентифицируя тип интерфейса, который будет возвращен для создаваемого объекта каталога конфигурации.
Возвращаемое значение
IOFireWireLibConfigDirectoryRef, который должен быть выпущен с помощью Выпуска (). Возвраты 0 на отказ.
-
Получите время цикла шины.
Объявление
C++
IOReturn ( *GetCycleTime)(
IOFireWireLibDeviceRef self,
UInt32 *outCycleTime);
Параметры
self
Интерфейс устройства для использования.
outCycleTime
Указатель на UInt32 для содержания результата
Возвращаемое значение
Код ошибки IOReturn.
-
Получите время цикла шины и время работы CPU.
Объявление
C++
IOReturn ( *GetCycleTimeAndUpTime)(
IOFireWireLibDeviceRef self,
UInt32 *outCycleTime,
UInt64 *outUpTime);
Параметры
self
Интерфейс устройства для использования.
outCycleTime
Указатель на UInt32 для содержания результата
outUpTime
Указатель на UInt64 для содержания результата
Возвращаемое значение
Код ошибки IOReturn.
-
Объявление
C++
CFTypeRef ( *GetDebugProperty)(
IOFireWireLibDeviceRef self,
void *interface,
CFStringRef inPropertyName,
CFTypeID *outPropertyType);
Обсуждение
Не используйте эту функцию.
-
Получите службу IOKit, с которой подключен этот интерфейс.
Объявление
C++
io_object_t ( *GetDevice)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования.
Возвращаемое значение
Возвращает io_object_t, соответствующий устройству, которое использует интерфейс
-
(Устаревший) Получают генерацию шины и узел удаленного устройства ID.
Объявление
C++
IOReturn ( *GetGenerationAndNodeID)(
IOFireWireLibDeviceRef self,
UInt32 *outGeneration,
UInt16 *outNodeID);
Параметры
self
Интерфейс устройства для использования.
outGeneration
Указатель на UInt32 для содержания результата генерации
outNodeID
Указатель на UInt16 для содержания узла удаленного устройства ID
Возвращаемое значение
Код ошибки IOReturn.
Обсуждение
Устаревший - используйте GetBusGeneration () и/или GetRemoteNodeID () в интерфейсе v4.
-
Объявление
C++
IOReturn ( *GetIRMNodeID)(
IOFireWireLibDeviceRef self,
UInt32 checkGeneration,
UInt16 *outIRMNodeID );
Обсуждение
Предстоящее описание
-
Возвращает порт уведомлений, используемый для асинхронных и isoch обратных вызовов
Объявление
C++
mach_port_t ( *GetIsochAsyncPort)(
IOFireWireLibDeviceRef self );
Параметры
self
Интерфейс устройства для использования.
Возвращаемое значение
Возвращает mach_port, используемый для уведомлений
Обсуждение
Если необходимый GetIsochAsyncPort выделит порт.
Доступность: IOFireWireDeviceInterface_v9 и более новый
-
(Устаревший) Получают локальный узел ID.
Объявление
C++
IOReturn ( *GetLocalNodeID)(
IOFireWireLibDeviceRef self,
UInt16 *outLocalNodeID);
Параметры
self
Интерфейс устройства для использования.
outLocalNodeID
Указатель на UInt16 для содержания узла локального устройства ID
Возвращаемое значение
Код ошибки IOReturn.
Обсуждение
Устаревший - используйте GetBusGeneration () и GetLocalNodeIDWithGeneration () в интерфейсе v4.
-
Получите узел ID локальной машины.
Объявление
C++
IOReturn ( *GetLocalNodeIDWithGeneration)(
IOFireWireLibDeviceRef self,
UInt32 checkGeneration,
UInt16 *outLocalNodeID );
Параметры
self
Интерфейс устройства для использования.
checkGeneration
Число генерации шины, полученное из GetBusGeneration ()
outLocalNodeID
Указатель на UInt16 для содержания узла ID локальной машины.
Возвращаемое значение
Возвраты kIOReturnSuccess, если допустимый nodeID был возвращен в 'outLocalNodeID'. Возвраты kIOFireWireBusReset, если 'checkGeneration' не соответствует текущее число генерации шины.
Обсуждение
Используйте эту функцию вместо GetLocalNodeID ().
Доступность: IOFireWireDeviceInterface_v4 и более новый
-
Получите набор значений справочника пользователя в этом интерфейсе
Объявление
C++
void* ( *GetRefCon)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования.
Возвращаемое значение
Возвращает набор значений справочника пользователя в этом интерфейсе.
-
Получите узел ID устройства, к которому присоединяется этот интерфейс.
Объявление
C++
IOReturn ( *GetRemoteNodeID)(
IOFireWireLibDeviceRef self,
UInt32 checkGeneration,
UInt16 *outRemoteNodeID );
Параметры
self
Интерфейс устройства для использования.
checkGeneration
Число генерации шины, полученное из GetBusGeneration ()
outRemoteNodeID
Указатель на UInt16 для содержания узла ID удаленного устройства.
Возвращаемое значение
Возвраты kIOReturnSuccess, если допустимый nodeID был возвращен в 'outRemoteNodeID'. Возвраты kIOFireWireBusReset, если 'checkGeneration' не соответствует текущее число генерации шины.
Обсуждение
Доступность: IOFireWireDeviceInterface_v4 и более новый
-
Получите время, так как последняя шина сбросила.
Объявление
C++
IOReturn ( *GetResetTime)(
IOFireWireLibDeviceRef self,
AbsoluteTime *outResetTime);
Параметры
self
Интерфейс устройства для использования.
outResetTime
Указатель на AbsolutTime для содержания результата.
Возвращаемое значение
Код ошибки IOReturn.
-
Объявление
C++
IOFireWireSessionRef ( *GetSessionRef)(
IOFireWireLibDeviceRef self );
Обсуждение
Предстоящее описание
-
Получите максимальную скорость передачи между узлами 'srcNodeID' и 'destNodeID'.
Объявление
C++
IOReturn ( *GetSpeedBetweenNodes)(
IOFireWireLibDeviceRef self,
UInt32 checkGeneration,
UInt16 srcNodeID,
UInt16 destNodeID,
IOFWSpeed *outSpeed);
Параметры
self
Интерфейс устройства для использования.
checkGeneration
Число генерации шины, полученное из GetBusGeneration ()
srcNodeID
Узел FireWire ID.
destNodeID
Узел FireWire ID.
outSpeed
Указатель на IOFWSpeed для содержания максимальной скорости передачи между узлом 'srcNodeID' и 'destNodeID'.
Возвращаемое значение
Возвраты kIOReturnSuccess, если допустимая скорость была возвращена в, 'превышают по быстродействию'. Возвраты kIOFireWireBusReset, если 'checkGeneration' не соответствует текущее число генерации шины.
Обсуждение
Доступность: IOFireWireDeviceInterface_v4 и более новый
-
Получите максимальную скорость передачи до устройства, к которому присоединяется этот интерфейс.
Объявление
C++
IOReturn ( *GetSpeedToNode)(
IOFireWireLibDeviceRef self,
UInt32 checkGeneration,
IOFWSpeed *outSpeed);
Параметры
self
Интерфейс устройства для использования.
checkGeneration
Число генерации шины, полученное из GetBusGeneration ()
outSpeed
Указатель на IOFWSpeed для содержания максимальной скорости до удаленного устройства.
Возвращаемое значение
Возвраты kIOReturnSuccess, если допустимая скорость была возвращена в, 'превышают по быстродействию'. Возвраты kIOFireWireBusReset, если 'checkGeneration' не соответствует текущее число генерации шины.
Обсуждение
Доступность: IOFireWireDeviceInterface_v4 и более новый
-
Определите, был ли интерфейс должным образом inited.
Объявление
C++
Boolean ( *InterfaceIsInited)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования.
Возвращаемое значение
Возвращает true, если интерфейс является inited и ложью, если он нет.
-
Определите, в настоящее время активны ли уведомления об обратном вызове для этого интерфейса
Объявление
C++
const Boolean ( *NotificationIsOn)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования
Возвращаемое значение
Булево значение, где истина указывает уведомления, активно
-
Откройте подключенное устройство для эксклюзивного доступа. Когда у Вас будет устройство открытое использование этого метода, весь доступ другими клиентами этого устройства будет запрещен, до Близко () вызывается.
Объявление
C++
IOReturn ( *Open)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования.
Возвращаемое значение
Код ошибки IOReturn
-
Открытая функция, позволяющая этому интерфейсу иметь доступ к устройству, когда уже открыто. Служба, уже открывшая устройство, должна быть в состоянии предоставить IOFireWireSessionRef.
Объявление
C++
IOReturn ( *OpenWithSessionRef)(
IOFireWireLibDeviceRef self,
IOFireWireSessionRef sessionRef);
Параметры
self
Интерфейс устройства для использования
sessionRef
sessionRef возвратился от клиента, у которого есть открытое устройство
Возвращаемое значение
Код ошибки IOReturn
-
Обойдите связанный список программы DCL и распечатайте его содержание
Объявление
C++
void ( *PrintDCLProgram)(
IOFireWireLibDeviceRef self,
const DCLCommand *inProgram,
UInt32 inLength);
Параметры
self
Интерфейс устройства для использования.
inProgram
Указатель на первый DCL программы, который распечатает
inLength
Число DCLs ожидается в программе. Если это число не будет соответствовать число DCLs, найденного в программе, PrintDCLProgram () сообщит об ошибке.
-
Выполните синхронное блочное чтение
Объявление
C++
IOReturn ( *Read)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
void *buf,
UInt32 *size,
Boolean failOnReset,
UInt32 generation);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire) для чтения. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются.
addr
Целевой адрес команды
buf
Указатель на буфер, где будут сохранены результаты
size
Число байтов для чтения
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в генерации. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Код ошибки IOReturn
-
Выполните синхронное чтение quadlet
Объявление
C++
IOReturn ( *ReadQuadlet)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
UInt32 *val,
Boolean failOnReset,
UInt32 generation);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire) для чтения. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются.
addr
Целевой адрес команды
val
Указатель туда, где к данным должен быть сохранен
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в генерации. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration ()
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Код ошибки IOReturn
-
Попытайтесь выпустить некоторую изохронную пропускную способность от IRM
Объявление
C++
IOReturn ( *ReleaseIRMBandwidthInGeneration)(
IOFireWireLibDeviceRef self,
UInt32 bandwidthUnits,
UInt32 generation);
Параметры
bandwidthUnits
Число модулей пропускной способности для выпуска
generation
Генерация шины, в которой состоит в том, чтобы иметь место эта попытка выпуска.
Возвращаемое значение
Возвраты kIOReturnSuccess, если выпуск пропускной способности был успешен. Возвраты kIOFireWireBusReset, если 'генерация' не соответствует текущее число генерации шины. Возвраты kIOReturnError для любой другой ошибки (такие как отказавшее выделение)
Обсуждение
Попытки выпустить некоторую изохронную пропускную способность от IRM, если генерация соответствует текущую генерацию. Доступность: IOFireWireDeviceInterface_v9 и более новый
-
Попытайтесь выпустить изохронный канал от IRM
Объявление
C++
IOReturn ( *ReleaseIRMChannelInGeneration)(
IOFireWireLibDeviceRef self,
UInt8 isochChannel,
UInt32 generation);
Параметры
isochChannel
Изохронный канал для выпуска
generation
Генерация шины, в которой состоит в том, чтобы иметь место эта попытка выпуска.
Возвращаемое значение
Возвраты kIOReturnSuccess, если канал повторно генерирует, были успешны. Возвраты kIOFireWireBusReset, если 'генерация' не соответствует текущее число генерации шины. Возвраты kIOReturnError для любой другой ошибки (такие как отказавшее выделение)
Обсуждение
Попытки выпустить изохронный канал от IRM, если генерация соответствует текущую генерацию. Доступность: IOFireWireDeviceInterface_v9 и более новый
-
Инвертирует эффекты AddCallbackDispatcherToRunLoop (). Этот метод удаляет источник события цикла выполнения, добавленный к указанному циклу выполнения, препятствующему тому, чтобы были вызваны любые будущие обратные вызовы
Объявление
C++
const void ( *RemoveCallbackDispatcherFromRunLoop)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования.
-
Удаляет IOFireWireLib-добавленный источник события цикла выполнения.
Объявление
C++
void ( *RemoveIsochCallbackDispatcherFromRunLoop)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования.
Обсуждение
Инвертирует эффекты AddIsochCallbackDispatcherToRunLoop (). Этот метод удаляет источник события цикла выполнения, добавленный к указанному циклу выполнения, препятствующему тому, чтобы были вызваны любые будущие обратные вызовы.
Доступность: IOFireWireDeviceInterface_v3, и более новый
-
Захватите контроль устройства/модуля
Объявление
C++
IOReturn ( *Seize)(
IOFireWireLibDeviceRef self,
IOOptionBits inFlags,
... );
Параметры
self
Интерфейс устройства для использования.
inFlags
Зарезервированный для будущего использования. Установить в NULL. Предстоящее описание?
Обсуждение
Даже если та служба была Открыта () другим клиентом или в драйвере ядра, позволяет клиенту пространства пользователя захватывать контроль службы в ядре. Эта функция должна использоваться с осторожностью. Права администратора требуются, чтобы использовать эту функцию.
Вызов этого метода заставляет его появиться ко всем другим драйверам, что было отключено устройство. Открытый () должен быть вызван после того, как этот метод был вызван.
Когда доступ завершен, Близко (), и затем IOServiceRequestProbe () нужно вызвать для восстановления нормального функционирования. Вызов IOServiceRequestProbe () заставляет его появиться, что было «повторно включено» устройство.
-
Устанавливает обратный вызов, который нужно вызвать после того, как сброс шины произошел, и реконфигурирование шины было завершено. Эта функция будет только вызвана один раз на сброс шины.
Объявление
C++
const IOFireWireBusResetDoneHandler ( *SetBusResetDoneHandler)(
IOFireWireLibDeviceRef self,
IOFireWireBusResetDoneHandler handler);
Параметры
self
Интерфейс устройства для использования.
handler
Указатель функции к обработчику для установки
Возвращаемое значение
Возвраты на указателе функции IOFireWireBusResetDoneHandler к ранее установленной шине сбрасывают обработчик. Возвраты 0, если ни один не был установлен.
-
Устанавливает обратный вызов, который нужно вызвать, когда происходит сброс шины. Обратите внимание на то, что этот обратный вызов можно вызвать многократно, прежде чем сделанный обработчик сброса шины вызывают. (f.ex., многократный сброс шины мог бы произойти, прежде чем реконфигурирование шины завершилось.)
Объявление
C++
const IOFireWireBusResetHandler ( *SetBusResetHandler)(
IOFireWireLibDeviceRef self,
IOFireWireBusResetHandler handler);
Параметры
self
Интерфейс устройства для использования.
handler
Указатель функции к обработчику для установки
Возвращаемое значение
Возвращает указатель функции IOFireWireBusResetHandler ранее установленному обработчику сброса шины. Возвраты 0, если ни один не был установлен.
-
Ссылочное значение пользователя аппарата в этом интерфейсе
Объявление
C++
void ( *SetRefCon)(
IOFireWireLibDeviceRef self,
const void *refCon);
Параметры
self
Интерфейс устройства для использования.
refCon
Ссылочное значение для установки.
-
Деактивируется и обратные вызовы, указанные для этого интерфейса устройства. Инвертирует эффекты TurnOnNotification ()
Объявление
C++
void ( *TurnOffNotification)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования.
-
Активирует любые обратные вызовы, указанные для этого интерфейса устройства. Только работы после AddCallbackDispatcherToRunLoop вызвали. См. также AddIsochCallbackDispatcherToRunLoop ().
Объявление
C++
const Boolean ( *TurnOnNotification)(
IOFireWireLibDeviceRef self);
Параметры
self
Интерфейс устройства для использования.
Возвращаемое значение
Булево значение. Возвращает true на успехе.
-
Выполните синхронную блочную запись
Объявление
C++
IOReturn ( *Write)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
const void *buf,
UInt32 *size,
Boolean failOnReset,
UInt32 generation);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются.
addr
Целевой адрес команды
buf
Указатель на буфер, где будут сохранены результаты
size
Число байтов для чтения
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Код ошибки IOReturn
-
Выполните синхронную запись quadlet
Объявление
C++
IOReturn ( *WriteQuadlet)(
IOFireWireLibDeviceRef self,
io_object_t device,
const FWAddress *addr,
const UInt32 val,
Boolean failOnReset,
UInt32 generation);
Параметры
self
Интерфейс устройства для использования.
device
Служба (представляющий присоединенное устройство FireWire), в который можно записать. Для 48-разрядного, относительной адресации устройства, передают службу, используемую для создания интерфейса устройства. Это может быть получено путем вызова GetDevice (). Для 64-разрядного абсолютного обращения передайте 0. Другие значения не поддерживаются.
addr
Целевой адрес команды
val
Значение для записи
failOnReset
Передайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generation
FireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Код ошибки IOReturn