Structure

IOUSBInterfaceInterface

The object you use to access a USB device interface from user space, returned by all versions of the IOUSBFamily currently shipping.

Declaration

typedef struct IOUSBInterfaceStruct {
    ...
} IOUSBInterfaceInterface;

Overview

The functions listed here will work with any version of the IOUSBInterfaceInterface, including the one shipped with OS X version 10.0.

Topics

Instance Properties

AbortPipe

Aborts any outstanding transactions on the pipe with status kIOReturnAborted.

ClearPipeStall

Clears the halted bit and the data toggle bit on the pipe's endpoint in the controller.

ControlRequest

Sends a USB request on a control pipe.

ControlRequestAsync

Sends an asynchronous USB request on a control pipe.

CreateInterfaceAsyncEventSource

Creates a run loop source for delivery of all asynchronous notifications on this device.

CreateInterfaceAsyncPort

Creates and registers a mach_port_t for asynchronous communications.

GetAlternateSetting

Returns the alternate setting currently selected in this interface.

GetBusFrameNumber

Gets the current frame number of the bus to which the interface and its device are attached.

GetConfigurationValue

Returns the current configuration value set in the device (the interface will be part of that configuration.)

GetDevice

Returns the device of which this interface is part.

GetDeviceProduct

Returns the USB Product ID (idProduct) of the device of which this interface is a part.

GetDeviceReleaseNumber

Returns the Device Release Number (bcdDevice) of the device of which this interface is a part.

GetDeviceVendor

Returns the USB Vendor ID (idVendor) of the device of which this interface is a part.

GetInterfaceAsyncEventSource

Returns the CFRunLoopSourceRef for this IOService instance.

GetInterfaceAsyncPort

Returns the mach_port_t port for this IOService instance.

GetInterfaceClass

Returns the USB Class of the interface (bInterfaceClass).

GetInterfaceNumber

Returns the interface number (zero-based index) of this interface within the current configuration of the device.

GetInterfaceProtocol

Returns the USB Protocol of the interface (bInterfaceProtocol).

GetInterfaceSubClass

Returns the USB Subclass of the interface (bInterfaceSubClass).

GetLocationID

Returns the location ID.

GetNumEndpoints

Returns the number of endpoints in this interface.

GetPipeProperties

Gets the properties for a pipe.

GetPipeStatus

Gets the current status of a pipe.

ReadIsochPipeAsync

Performs a read on an ISOCHRONOUS pipe.

ReadPipe

Reads data on a BULK IN or an INTERRUPT pipe.

ReadPipeAsync

Performs an asynchronous read on a BULK IN or an INTERRUPT pipe.

ResetPipe

Equivalent to ClearPipeStall.

SetAlternateInterface

Changes the AltInterface setting.

USBInterfaceClose

Closes the task's connection to the IOUSBInterface.

USBInterfaceOpen

Opensthe IOUSBInterface for exclusive access.

WriteIsochPipeAsync

Performs an asynchronous write on an ISOCHRONOUS pipe.

WritePipe

Writes data on a BULK OUT or INTERRUPT OUT pipe.

WritePipeAsync

Performs an asynchronous write on a BULK OUT or INTERRUPT OUT pipe.

See Also

COM Interfaces

IOATASMARTInterface

Self-Monitoring, Analysis, and Reporting Technology Interface.

IOFireWireAVCLibConsumerInterface

Interface for an asynchronous connection consumer.

IOFireWireAVCLibProtocolInterface

Initial interface discovered for all AVC protocol drivers.

IOFireWireAVCLibUnitInterface

Initial interface discovered for all AVC Unit drivers.

IOFireWireCommandInterface

IOFireWireLib command object.

IOFireWireConfigDirectoryInterface

IOFireWireLib device config ROM browsing interface

IOFireWireDeviceInterface

IOFireWireDeviceInterface is your primary gateway to the functionality contained in IOFireWireLib.

IOFireWireIsochChannelInterface

FireWire user client isochronous channel object.

IOFireWireIsochPortInterface

FireWire user client isochronous port interface

IOFireWireLibPHYPacketListenerInterface

Represents and provides management functions for a phy packet listener object.

IOFireWireLibVectorCommandInterface

IOFireWireLib command object for grouping commands execution.

IOFireWireLocalIsochPortInterface

FireWire user client local isochronous port object.

IOFireWireNubInterface

IOFireWireDeviceInterface is your primary gateway to the functionality contained in IOFireWireLib.

IOFireWireNuDCLPoolInterface

Use this interface to build NuDCL-based DCL programs.

IOFireWirePhysicalAddressSpaceInterface

IOFireWireLib physical address space object. ( interface name: IOFireWirePhysicalAddressSpaceInterface )

IOFireWireReadCommandInterface

IOFireWireLib block read command object.

IOFireWireReadQuadletCommandInterface

IOFireWireReadQuadletCommandInterface -- IOFireWireLib quadlet read command object.

IOFireWireSBP2LibLoginInterface

Supplies the login maintenance and Normal Command ORB execution portions of the API.

IOFireWireSBP2LibLUNInterface

Initial interface disovered for all drivers.

IOFireWireSBP2LibMgmtORBInterface

Supplies non login related management ORBs. Management ORBs can be executed independent of a login, if necessary. Management ORBs are created using the IOFireWireSBP2LibLUNInterface.

IOFireWireSBP2LibORBInterface

Represents an SBP2 normal command ORB. Supplies the APIs for configuring normal command ORBs. This includes setting the command block and writing the page tables for I/O. The ORBs are executed using the submitORB method in IOFireWireSBP2LibLoginInterface.

IOFireWireUnitInterface

IOFireWireDeviceInterface is your primary gateway to the functionality contained in IOFireWireLib.

IOFireWireWriteCommandInterface

IOFireWireLib block read command object.

IOFireWireWriteQuadletCommandInterface

IOFireWireLib quadlet read command object.

IOFWAsyncStreamListenerInterface

Represents and provides management functions for a asyn stream listener object.

IOHIDDeviceDeviceInterface

The object you use to access HID devices from user space, returned by version 1.5 of the IOHIDFamily.

IOHIDDeviceInterface

CFPlugin object subclass which provides the primary interface to HID devices.

IOHIDDeviceInterface121

CFPlugin object subclass which provides the primary interface to HID devices. This class is a subclass of IOHIDDeviceInterface.

IOHIDDeviceInterface122

CFPlugin object subclass which provides the primary interface to HID devices. This class is a subclass of IOHIDDeviceInterface121.

IOHIDDeviceQueueInterface

The object you use to access a HID queue from user space, returned by version 1.5 of the IOHIDFamily.

IOHIDDeviceTransactionInterface

The object you use to access a HID transaction from user space, returned by version 1.5 of the IOHIDFamily.

IOHIDOutputTransactionInterface

CFPlugin object subclass which privides interface for output transactions to HID devices. Created by a IOHIDDeviceInterface object.

IOHIDQueueInterface

CFPlugin object subclass which provides an interface for input queues from HID devices. Created by an IOHIDDeviceInterface object.

IOUPSPlugInInterface

Represents and provides management functions for a UPS device.

IOUSBDeviceInterface

The object you use to access USB devices from user space, returned by all versions of the IOUSBFamily currently shipping.

IOUSBDeviceInterface182

The object you use to access USB devices from user space, returned by the IOUSBFamily version 1.8.2 and above.

IOUSBDeviceInterface187

The object you use to access USB devices from user space, returned by the IOUSBFamily version 10.8.7 and above.

IOUSBDeviceInterface197

The object you use to access USB devices from user space, returned by the IOUSBFamily version 1.9.7 and above.

IOUSBDeviceInterface245

The object you use to access USB devices from user space, returned by the IOUSBFamily version 2.4.5 and above.

IOUSBDeviceInterface300

The object you use to access USB devices from user space, returned by the IOUSBFamily version 3.0.0 and above.

IOUSBDeviceInterface320

The object you use to access USB devices from user space, returned by the IOUSBFamily version 3.2.0 and above.

IOUSBDeviceInterface500

The object you use to access USB devices from user space, returned by the IOUSBFamily version 3.2.0 and above.

IOUSBInterfaceInterface182

The object you use to access a USB device interface from user space, returned by the IOUSBFamily version 1.8.2 and above.

IOUSBInterfaceInterface183

The object you use to access a USB device interface from user space, returned by the IOUSBFamily version 1.8.3 and above.

IOUSBInterfaceInterface190

The object you use to access a USB device interface from user space, returned by the IOUSBFamily version 1.9 and above.

IOUSBInterfaceInterface192

The object you use to access a USB device interface from user space, returned by the IOUSBFamily version 1.9.2 and above.

IOUSBInterfaceInterface197

The object you use to access a USB device interface from user space, returned by the IOUSBFamily version 1.9.7 and above.

MMCDeviceInterface

Basic interface for an MMC-2 Compliant Device.

SCSITaskDeviceInterface

Basic interface for a SCSITask Device.

SCSITaskInterface

Basic interface for a SCSITask.