ADC Home > Reference Library > Reference > Darwin > Kernel Framework Reference

 


IOFireWireAVCUnit

Inherits from:
Declared In:

Overview

nub for AVC devices



Functions

AVCCommand

Sends an AVC command to the device and stores the response.

AVCCommandInGeneration

Sends an AVC command to the device and stores the response. The command must complete in the specified FireWire bus generation otherwise kIOFireWireBusReset is returned.

handleClose

Overrideable method to control the open / close behaviour of an IOService.

handleOpen

Overrideable method to control the open / close behaviour of an IOService.

matchPropertyTable

Matching language support Match on the following properties of the unit: Vendor_ID GUID Unit_Type and available sub-units, match if the device has at least the requested number of a sub-unit type: AVCSubUnit_0 -> AVCSubUnit_1f

updateAVCCommandTimeout

By default, AVCCommands timeout 10 seconds after receiving an Interim response. This function resets the timeout of the current command to 10 seconds from the current time. Call this repeatedly for AVC commands that take a very long time to execute to prevent premature timeout.


AVCCommand


Sends an AVC command to the device and stores the response.

public

virtual IOReturn AVCCommand( const UInt8 * command, UInt32 cmdLen, UInt8 * response, UInt32 *responseLen);
Parameters
command

Pointer to command to send.

cmdLen

Length of the command.

response

Pointer to place to store the response.

responseLen

Pointer to response length - initialize to the size of the buffer pointed to by response, updated to the number of bytes returned by the device.


AVCCommandInGeneration


Sends an AVC command to the device and stores the response. The command must complete in the specified FireWire bus generation otherwise kIOFireWireBusReset is returned.

public

virtual IOReturn AVCCommandInGeneration( UInt32 generation, const UInt8 * command, UInt32 cmdLen, UInt8 * response, UInt32 *responseLen);
Parameters
generation

The bus generation that the command must execute in.

command

Pointer to command to send.

cmdLen

Length of the command.

response

Pointer to place to store the response.

responseLen

Pointer to response length - initialize to the size of the buffer pointed to by response, updated to the number of bytes returned by the device.


handleClose


Overrideable method to control the open / close behaviour of an IOService.

public

virtual void handleClose( IOService *forClient, IOOptionBits options );
Parameters
forClient

Designates the client of the provider requesting the close.

options

Options for the close, may be interpreted by the implementor of handleOpen.

Discussion

See IOService for discussion.


handleOpen


Overrideable method to control the open / close behaviour of an IOService.

public

virtual bool handleOpen( IOService *forClient, IOOptionBits options, void *arg );
Parameters
forClient

Designates the client of the provider requesting the open.

options

Options for the open, may be interpreted by the implementor of handleOpen.

Return Value

Return true if the open was successful, false otherwise.

Discussion

See IOService for discussion.


matchPropertyTable


Matching language support Match on the following properties of the unit: Vendor_ID GUID Unit_Type and available sub-units, match if the device has at least the requested number of a sub-unit type: AVCSubUnit_0 -> AVCSubUnit_1f

public

virtual bool matchPropertyTable( OSDictionary *table);


updateAVCCommandTimeout


By default, AVCCommands timeout 10 seconds after receiving an Interim response. This function resets the timeout of the current command to 10 seconds from the current time. Call this repeatedly for AVC commands that take a very long time to execute to prevent premature timeout.

public

virtual IOReturn updateAVCCommandTimeout();

Structs and Unions


ExpansionData


protected

struct ExpansionData { OSArray *fAVCAsyncCommands; IOFireWireController *fControl; bool enableRobustAVCCommandResponseMatching; };
Discussion

This structure is used to expand the capablilties of the class in a binary compatible way

Member Data


fIOFireWireAVCUnitExpansion


protected

ExpansionData *fIOFireWireAVCUnitExpansion;


Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.

 

Last Updated: 2008-12-19