|
Mac Dev Center
Mac OS X Reference Library Drivers, Kernel, & Hardware: Kernel Device Drivers Kernel Framework Reference
|
IOHIDDevice.h |
| Includes: |
Use the links in the table of contents to the left to access the documentation.
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.
Struct spefifying action to perform when set/get report completes.
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;
targetThe target to pass to the action function.
actionThe function to call.
parameterThe 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);
targetThe target specified in the IOHIDCompletion struct.
parameterThe parameter specified in the IOHIDCompletion struct.
statusCompletion status
Option bits for IOHIDDevice::handleReport, IOHIDDevice::getReport, and IOHIDDevice::setReport
IOHIDReportOption |
Option bits for IOHIDDevice::handleReport, IOHIDDevice::getReport, and IOHIDDevice::setReport
enum { kIOHIDReportOptionNotInterrupt = 0x100 };
kIOHIDReportOptionNotInterruptTells method that the report passed was not interrupt driven.
Last Updated: 2009-10-14