Mac OS X Reference Library Apple Developer
Search

IOHIDDevice.h

Overview

Use the links in the table of contents to the left to access the documentation.



Classes

IOHIDDevice

IOHIDDevice defines a Human Interface Device (HID) object, which will interact with the HID Manager by publishing static properties in the registry, and also by reporting HID events through shared memory. IOHIDDevice is an abstract class that must be subclassed to support a specific type of HID devices, such as USB HID class devices.
Since most HID devices are expected to be USB devices, IOHIDDevice uses the USB HID specification to define the format of the report descriptor, and also reports that are used to communicate with the hardware via some intervening transport layer. However, there is no mandate that the transport layer must be restricted to USB. A subclass may be created to support legacy ADB joysticks, and issue packets on the ADB bus and translate those packets to USB reports, and vice versa. IOHIDDevice does not care how those reports are generated or consumed by the physical device, as long as the reports abide to the USB specification.



Typedefs

IOHIDCompletion

Struct spefifying action to perform when set/get report completes.

IOHIDCompletionAction

Function called when set/get report completes


IOHIDCompletion


Struct spefifying action to perform when set/get report completes.


typedef struct IOHIDCompletion { 
    void *target; 
    IOHIDCompletionAction action; 
    void *parameter; 
} IOHIDCompletion;  
Fields
target

The target to pass to the action function.

action

The function to call.

parameter

The parameter to pass to the action function.


IOHIDCompletionAction


Function called when set/get report completes


typedef void ( *IOHIDCompletionAction)( 
    void *target, 
    void *parameter, 
    IOReturn status, 
    UInt32 bufferSizeRemaining);  
Fields
target

The target specified in the IOHIDCompletion struct.

parameter

The parameter specified in the IOHIDCompletion struct.

status

Completion status

Enumerated Types

IOHIDReportOption

Option bits for IOHIDDevice::handleReport, IOHIDDevice::getReport, and IOHIDDevice::setReport


IOHIDReportOption


Option bits for IOHIDDevice::handleReport, IOHIDDevice::getReport, and IOHIDDevice::setReport


enum { 
    kIOHIDReportOptionNotInterrupt = 0x100 
};  
Constants
kIOHIDReportOptionNotInterrupt

Tells method that the report passed was not interrupt driven.

 

Did this document help you? Yes It's good, but... Not helpful...

Last Updated: 2010-07-29