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Интерфейс устройства для использования.
inRunLoopCFRunLoopRef для цикла выполнения, к которому должен быть добавлен источник цикла событий
Возвращаемое значение
Код ошибки IOReturn.
-
AddIsochCallbackDispatcherToRunLoop (IOFireWireLibDeviceRef, CFRunLoopRef, CFStringRef) - AddIsochCallbackDispatcherToRunLoop (IOFireWireLibDeviceRef, CFRunLoopRef, CFStringRef)Добавьте источник события цикла выполнения, чтобы позволить обратным вызовам IOFireWireLib isoch функционировать.
Объявление
C++
IOReturn ( *AddIsochCallbackDispatcherToRunLoopForMode)(IOFireWireLibDeviceRef self,CFRunLoopRef inRunLoop,CFStringRef inRunLoopMode );Параметры
selfИнтерфейс устройства для использования.
inRunLoopCFRunLoopRef для цикла выполнения, к которому должен быть добавлен источник цикла событий
inRunLoopModeРежим (ы) цикла выполнения, для которого можно установить источник события
Возвращаемое значение
Код ошибки IOReturn.
Обсуждение
Эта функция добавляет источник события для изохронного диспетчера обратного вызова к указанному CFRunLoop. Изохронные связанные обратные вызовы не вызовут, если не была вызвана эта функция. Эта функция подобна AddCallbackDispatcherToRunLoop. Переданный CFRunLoop может отличаться от этого, передал AddCallbackDispatcherToRunLoop.
Доступность: IOFireWireDeviceInterface_v3, и более новый
-
Добавьте источник события цикла выполнения, чтобы позволить обратным вызовам IOFireWireLib isoch функционировать.
Объявление
C++
IOReturn ( *AddIsochCallbackDispatcherToRunLoopForMode)(IOFireWireLibDeviceRef self,CFRunLoopRef inRunLoop,CFStringRef inRunLoopMode );Параметры
selfИнтерфейс устройства для использования.
inRunLoopCFRunLoopRef для цикла выполнения, к которому должен быть добавлен источник цикла событий
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-разрядного обращения.
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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 ()
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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Целевой адрес команды
cmpVal32-разрядное значение ожидается в целевом адресе
newVal32-разрядное значение, которое будет установлено в целевом адресе
callbackОбратный вызов завершения команды. Установка обратного вызова оценивает нулевым значениям по умолчанию к синхронному выполнению.
failOnResetПередайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration (). Должна быть 'истина' при использовании 64-разрядного обращения.
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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Целевой адрес команды
cmpVal64-разрядное значение ожидается в целевом адресе
newVal64-разрядное значение, которое будет установлено в целевом адресе
callbackОбратный вызов завершения команды.
failOnResetПередайте истину, если команда должна только быть выполнена во время генерации шины FireWire, указанной в 'генерации'. Передайте ложь для игнорирования параметра генерации. Генерация может быть получена путем вызова GetBusGeneration ()
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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.
inFlagsUInt32 с набором битов, соответствующим флагам, которые должны быть установлены для этого адресного пространства.
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, после того, как сброшено шиной.
pLostNotificationProcRefConrefCon передается с обратным вызовом.
Возвращаемое значение
Возвращает указатель на недавно создаваемый объект выделения 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 parametersUInt32 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 parametersUInt32 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 ()
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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Блок выделенной памяти, представляющей содержание адресного пространства.
inFlagsUInt32 с набором битов, соответствующим флагам, которые должны быть установлены для этого адресного пространства. Для будущего использования - всегда передают 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.
inFlagsUInt32 с набором битов, соответствующим флагам, которые должны быть установлены для этого адресного пространства.
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-разрядного обращения.
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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-разрядного обращения.
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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-разрядного обращения.
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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-разрядного обращения.
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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Интерфейс устройства для использования
sessionRefsessionRef возвратился от клиента, у которого есть открытое устройство
Возвращаемое значение
Код ошибки 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-разрядного обращения.
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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 ()
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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-разрядного обращения.
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если 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-разрядного обращения.
generationFireWire соединяют шиной генерацию, во время которой должна быть выполнена команда. Проигнорированный, если failOnReset является ложью. Должно быть допустимое число генерации при использовании 64-разрядного абсолютного обращения.
Возвращаемое значение
Код ошибки IOReturn
