IOFireWireDevice

Inherits from
IOFireWireNub
Availability
Available in OS X v10.0 and later.
Declared in
IOFireWireDevice.h

Overview

Represents a FireWire device.

The FireWire family tries to read the configuration ROM of each device on the FireWire bus. For each device that responds with its bus information block, the FireWire family publishes an IOFireWireDevice object in the I/O Registry. An IOFireWireDevice object keeps track of the device's node ID, copies config ROM properties into the object's property list, and scans the config ROM for unit directories, publishing an IOFireWireUnit object for each unit directory it finds.

Tasks

Miscellaneous

Instance Methods

clearNodeFlags

Resets the node's characteristics.

virtual void clearNodeFlags( UInt32 flags );
Parameters
flags

Refer to "node flags" in IOFireWireFamilyCommon.h.

createPhysicalAddressSpace

Creates local physical FireWire address spaces for the device to access.

virtual IOFWPhysicalAddressSpace *createPhysicalAddressSpace( IOMemoryDescriptor *mem);
Parameters
mem

Memory area allocated to back the physical access by Link hardware.

Return Value

A valid IOFWPhysicalAddressSpace object on success; NULL on failure.

createPseudoAddressSpace

Creates local pseudo FireWire address spaces for the device to access.

virtual IOFWPseudoAddressSpace *createPseudoAddressSpace( FWAddress *addr, UInt32 len, FWReadCallback reader, FWWriteCallback writer, void *refcon);
Parameters
addr

The FireWire address that is mapped to the pseudo address access.

len

Size of the address space to allocate.

reader

Read callback, when the device reads from this address space.

writer

Write callback, when the device writes to this address space.

refcon

Client's callback object returned during reader/writer callbacks.

Return Value

A valid IOFWPseudoAddressSpace object on success; NULL on failure.

getNodeFlags

Retrieves the node's characteristics.

virtual UInt32 getNodeFlags( void );
Parameters
flags

Refer to "node flags" in IOFireWireFamilyCommon.h.

Return Value

UInt32 The flags set for a particular node.

getUnitCount

Returns number of units attached to this device.

inline UInt32 getUnitCount( void )
Return Value

UInt32 The number of units attached to this device.

init

Initializes the nub.

virtual bool init( OSDictionary *propTable, const IOFWNodeScan *scan);
Parameters
propTable

Property table passed to the standard nub initialization.

scan

Pointer to the node scan structure.

Return Value

Returns true if initialization was successful; false otherwise.

setMaxSpeed

Sets the maximum speed for this node.

inline void setMaxSpeed( IOFWSpeed speed )
Parameters
speed

Maximum speed. Refer to "bus speed numbers" in IOFireWireFamilyCommon.h.

setNodeFlags

Sets the node's characteristics.

virtual void setNodeFlags( UInt32 flags );
Parameters
flags

Refer to "node flags" in IOFireWireFamilyCommon.h.

ExpansionData

struct ExpansionData {
};
Discussion

This structure will be used to expand the capablilties of the class in the future.

Instance Variables

reserved

ExpansionData *reserved;

Reserved for future use. (Internal use only)