IOFireWireAVCLibProtocolInterface
Начальный интерфейс обнаружен для всех драйверов протокола AVC.
IOFireWireAVCLibProtocolInterface используется, чтобы установить локальные регистры управления разъема и получить запросы AVC.
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Не применимый не применимый
-
Добавляет диспетчер для обратных вызовов ядра к указанному циклу выполнения.
Объявление
C++
IOReturn ( *addCallbackDispatcherToRunLoop)(
void *self,
CFRunLoopRef cfRunLoopRef );
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
cfRunLoopRef
Ссылка на цикл выполнения.
Возвращаемое значение
Возвраты kIOReturnSuccess на успехе.
Обсуждение
Части пространства пользователя AVC API связываются со службами в ядре путем обмена сообщениями ядра. Точно так же ядро передает службы пространства пользователя в ответ. Эти ответы должны быть взяты частью кода. Этот вызов добавляет что код к указанному циклу выполнения. Большинство драйверов вызовет этот метод на цикле выполнения, создававшемся, когда создавалась Ваша задача. Для предотвращения мертвой блокировки, необходимо избежать спать (или ожидание вращения) цикл выполнения для ожидания ответа AVC. Если Вы сделаете это, то диспетчер никогда не будет добираться для выполнения, и Вы будете ожидать навсегда.
-
Устанавливает виртуальный подблок AVC.
Объявление
C++
IOReturn ( *addSubunit)(
void *self,
UInt32 subunitType,
UInt32 numSourcePlugs,
UInt32 numDestPlugs,
void *refCon,
IOFWAVCSubunitPlugHandlerCallback callback,
UInt32 *pSubunitTypeAndID);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
subunitType
Тип подблока для создания.
numSourcePlugs
Число источника включается для этого подблока.
numDestPlugs
Число целевых разъемов для этого подблока.
refCon
Произвольное значение, пасуемое назад как первый параметр обратного вызова.
callback
Указатель на обратный вызов для получения сообщений управления разъемом.
pSubunitTypeAndID
Указатель на байт для содержания возвращенного адреса подблока для нового подблока.
-
Выделяет входной разъем.
Объявление
C++
IOReturn ( *allocateInputPlug)(
void *self,
void *refcon,
IOFWAVCPCRCallback func,
UInt32 *plug);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
refcon
Произвольное значение, пасуемое назад как первый параметр обратного вызова.
func
Функция обратного вызова, когда была выполнена успешная транзакция блокировки к разъему.
plug
Набор к числу разъема, если успешно выделяется разъем.
-
Выделяет выходной разъем.
Объявление
C++
IOReturn ( *allocateOutputPlug)(
void *self,
void *refcon,
IOFWAVCPCRCallback func,
UInt32 *plug);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
refcon
Произвольное значение, пасуемое назад как первый параметр обратного вызова.
func
Функция обратного вызова, когда была выполнена успешная транзакция блокировки к разъему.
plug
Набор к числу разъема, если успешно выделяется разъем.
-
Устанавливает внутреннее штепсельное соединение AVC между разъемами подблока/модуля.
Объявление
C++
IOReturn ( *connectTargetPlugs)(
void *self,
UInt32 sourceSubunitTypeAndID,
IOFWAVCPlugTypes sourcePlugType,
UInt32 *pSourcePlugNum,
UInt32 destSubunitTypeAndID,
IOFWAVCPlugTypes destPlugType,
UInt32 *pDestPlugNum,
bool lockConnection,
bool permConnection);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
sourceSubunitTypeAndID
Тип подблока и ID для исходного разъема
sourcePlugType
Исходный тип разъемов.
pSourcePlugNum
Указатель на источник включает цифру. Возвратится фактический источник включают цифру здесь.
destSubunitTypeAndID
Тип подблока и ID для целевого разъема.
destPlugType
dest тип разъемов.
pDestPlugNum
Указатель на dest включает цифру. Возвратится фактические dest включают цифру здесь.
lockConnection
Флаг, чтобы указать, должно ли быть заблокировано это соединение.
permConnection
Флаг, чтобы указать, является ли это соединение постоянным.
-
Повреждает внутреннее штепсельное соединение AVC между разъемами подблока/модуля.
Объявление
C++
IOReturn ( *disconnectTargetPlugs)(
void *self,
UInt32 sourceSubunitTypeAndID,
IOFWAVCPlugTypes sourcePlugType,
UInt32 sourcePlugNum,
UInt32 destSubunitTypeAndID,
IOFWAVCPlugTypes destPlugType,
UInt32 destPlugNum);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
sourceSubunitTypeAndID
Тип подблока и ID для исходного разъема.
sourcePlugType
Исходный тип разъемов.
sourcePlugNum
Исходная цифра разъема.
destSubunitTypeAndID
Тип подблока и ID для целевого разъема.
destPlugType
dest тип разъемов.
destPlugNum
dest включают цифру.
-
Освобождает входной разъем.
Объявление
C++
void ( *freeInputPlug)(
void *self,
UInt32 plug);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
plug
Значение, возвращенное allocateInputPlug.
-
Освобождает выходной разъем.
Объявление
C++
void ( *freeOutputPlug)(
void *self,
UInt32 plug);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
plug
Значение, возвращенное allocateOutputPlug.
-
Получает формат сигнала разъема specifed.
Объявление
C++
IOReturn ( *getSubunitPlugSignalFormat)(
void *self,
UInt32 subunitTypeAndID,
IOFWAVCPlugTypes plugType,
UInt32 plugNum,
UInt32 *pSignalFormat);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
subunitTypeAndID
Тип подблока и ID разъема.
plugType
Тип разъемов.
plugNum
Число разъема.
pSignalFormat
Указатель на расположение для возврата значения формата сигнала.
-
Получает подробные данные соединения для определенного разъема.
Объявление
C++
IOReturn ( *getTargetPlugConnection)(
void *self,
UInt32 subunitTypeAndID,
IOFWAVCPlugTypes plugType,
UInt32 plugNum,
UInt32 *pConnectedSubunitTypeAndID,
IOFWAVCPlugTypes *pConnectedPlugType,
UInt32 *pConnectedPlugNum,
bool *pLockConnection,
bool *pPermConnection);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
subunitTypeAndID
Тип подблока и ID разъема.
plugType
Тип разъемов.
plugNum
Число разъема.
pConnectedSubunitTypeAndID
Тип подблока и ID подключенного разъема.
pConnectedPlugType
Тип подключенного разъема.
pConnectedPlugNum
Число подключенного разъема.
pLockConnection
Указатель для возврата состояния блокировки соединения.
pPermConnection
Указатель для возврата состояния перманента соединения.
-
Устанавливает обработчик команды для обработки определенных входящих команд AVC.
Объявление
C++
IOReturn ( *installAVCCommandHandler)(
void *self,
UInt32 subUnitTypeAndID,
UInt32 opCode,
void *refCon,
IOFWAVCCommandHandlerCallback callback);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
subUnitTypeAndID
Тип подблока и ID для этого обработчика команды.
opCode
Код операции для этого обработчика команды.
refCon
Произвольное значение, пасуемое назад как первый параметр обратного вызова.
callback
Указатель на функцию обратного вызова
-
Публикует каталог модуля AVC в конфигурации ROM.
Объявление
C++
IOReturn ( *publishAVCUnitDirectory)(
void *self);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
-
Возвращает текущую стоимость входного ведущего разъема.
Объявление
C++
UInt32 ( *readInputMasterPlug)(
void *self);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
-
Возвращает текущую стоимость входного разъема.
Объявление
C++
UInt32 ( *readInputPlug)(
void *self,
UInt32 plug);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
plug
Значение, возвращенное allocateInputPlug.
-
Возвращает текущую стоимость выходного ведущего разъема.
Объявление
C++
UInt32 ( *readOutputMasterPlug)(
void *self);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
-
Возвращает текущую стоимость выходного разъема.
Объявление
C++
UInt32 ( *readOutputPlug)(
void *self,
UInt32 plug);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
plug
Значение, возвращенное allocateOutputPlug.
-
Удаляет диспетчера для обратных вызовов ядра к указанному циклу выполнения.
Объявление
C++
void ( *removeCallbackDispatcherFromRunLoop)(
void *self );
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
Обсуждение
Отменяет работу addCallbackDispatcherToRunLoop.
-
Отправляет ответный пакет AVC.
Объявление
C++
IOReturn ( *sendAVCResponse)(
void *self,
UInt32 generation,
UInt16 nodeID,
const char *response,
UInt32 responseLen);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
generation
Firewire соединяют шиной генерацию, что должен быть представлен этот ответ.
nodeID
Узел ID устройства мы отправляем этот ответ на.
response
Указатель на байты ответа.
responseLen
Число байтов ответа.
-
Эта функция была осуждена. Используйте installAVCCommandHandler вместо этого.
Объявление
C++
IOReturn ( *setAVCRequestCallback)(
void *self,
UInt32 subUnitType,
UInt32 subUnitID,
void *refCon,
IOFWAVCRequestCallback callback);
-
Обратный вызов наборов для пространства пользователя передает подпрограмму.
Объявление
C++
void ( *setMessageCallback)(
void *self,
void *refCon,
IOFWAVCMessageCallback callback);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
refCon
RefCon, который будет возвращен как первый параметр подпрограммы завершения.
callback
Адрес подпрограммы завершения.
Обсуждение
В FireWire и AVC, сообщения о состоянии шины поставлены через подпрограмму сообщения IOKIT. Эта подпрограмма эмулирована в пространстве пользователя для AVC и сообщений FireWire через этот обратный вызов. Необходимо зарегистрироваться здесь для сброса шины и сообщений переподключения.
-
Устанавливает формат сигнала разъема specifed.
Объявление
C++
IOReturn ( *setSubunitPlugSignalFormat)(
void *self,
UInt32 subunitTypeAndID,
IOFWAVCPlugTypes plugType,
UInt32 plugNum,
UInt32 signalFormat);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
subunitTypeAndID
Тип подблока и ID разъема.
plugType
Тип разъемов.
plugNum
Число разъема.
signalFormat
32-разрядное значение формата сигнала.
-
Обновляет значение основного входного разъема (моделирующий транзакцию блокировки).
Объявление
C++
IOReturn ( *updateInputMasterPlug)(
void *self,
UInt32 oldVal,
UInt32 newVal);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
oldVal
Значение, возвращенное readInputMasterPlug.
newVal
Новое значение для хранения в разъеме, если его текущая стоимость является oldVal.
-
Обновляет значение входного разъема (моделирующий транзакцию блокировки).
Объявление
C++
IOReturn ( *updateInputPlug)(
void *self,
UInt32 plug,
UInt32 oldVal,
UInt32 newVal);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
plug
Значение, возвращенное allocateInputPlug.
oldVal
Значение, возвращенное readInputPlug.
newVal
Новое значение для хранения в разъеме, если его текущая стоимость является oldVal.
-
Обновляет значение основного выходного разъема (моделирующий транзакцию блокировки).
Объявление
C++
IOReturn ( *updateOutputMasterPlug)(
void *self,
UInt32 oldVal,
UInt32 newVal);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
oldVal
Значение, возвращенное readOutputMasterPlug.
newVal
Новое значение для хранения в разъеме, если его текущая стоимость является oldVal.
-
Обновляет значение выходного разъема (моделирующий транзакцию блокировки).
Объявление
C++
IOReturn ( *updateOutputPlug)(
void *self,
UInt32 plug,
UInt32 oldVal,
UInt32 newVal);
Параметры
self
Указатель на IOFireWireAVCLibProtocolInterface.
plug
Значение, возвращенное allocateOutputPlug.
oldVal
Значение, возвращенное readOutputPlug.
newVal
Новое значение для хранения в разъеме, если его текущая стоимость является oldVal.