Mac Developer Library

Developer

IOFireWireSBP2Target Class Reference

Options
Deployment Target:

On This Page
Language:

IOFireWireSBP2Target

Serves as bridge between IOFireWireUnit and IOFireWireLUN.

Matches against IOFireWireUnits supporting the SBP2 protocol. Creates IOFireWireSBP2LUN nubs for matching. Most drivers will match against an IOFireWireSBP2LUN, but matching against an IOFireWireSBP2Target is also supported. This can be useful in cases where a single driver wishes to control all LUNs on a device. Support for this technique is minimal, however, and the driver will be required to discover it's LUNs through the registry.

Inheritance


Not Applicable

Conforms To


Not Applicable

Import Statement


Not Applicable

Objective-C

@import Kernel;

Availability


Available in OS X v10.0 and later.
  • Returns an IOFireWireUnit object.

    Declaration

    C++

    virtual IOFireWireUnit * getFireWireUnit( void );

    Return Value

    Returns a pointer to an IOFireWireUnit.

    Discussion

    An IOFireWireUnit is the provider of an IOFireWireSBP2Target. In order to use the base FireWire services you will need a reference to the unit. This method returns that reference.

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

    Declaration

    C++

    virtual void handleClose( IOService *forClient, IOOptionBitsoptions );

    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.

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

    Declaration

    C++

    virtual bool handleIsOpen( const IOService *forClient ) const;

    Parameters

    forClient

    If non-zero, isOpen returns the open state for that client. If zero is passed, isOpen returns the open state for all clients.

    Return Value

    Returns true if the specific, or any, client has the IOService open.

    Discussion

    See IOService for discussion.

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

    Declaration

    C++

    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.

  • Implements SBP2 specific matching.

    Declaration

    C++

    virtual bool matchPropertyTable( OSDictionary *table );

    Parameters

    table

    The dictionary of properties to be matched against.

    Return Value

    Returns false if the family considers the matching dictionary does not match in properties it understands, true otherwise.

    Discussion

    See IOService for discussion.

  • During an IOService instantiation, the start method is called when the IOService has been selected to run on the provider.

    Declaration

    C++

    virtual bool start( IOService *provider );

    Return Value

    Return true if the start was successful, false otherwise (which will cause the instance to be detached and usually freed).

    Discussion

    See IOService for discussion.

  • During an IOService termination, the stop method is called in its clients before they are detached & it is destroyed.

    Declaration

    C++

    virtual void stop( IOService *provider );

    Discussion

    See IOService for discussion.