#include <IOKit/hidsystem/IOHIDShared.h>
IOKit/hidsystem/IOHIDShared.h
!KERNEL
macroMAXPRESSURE
#define MAXPRESSURE EV_MAXPRESSURE
struct_NXEQElStruct
| int | next | Slot of lleq for next event |
| OSSpinLock | sema | Is high-level code reading this event now? |
| NXEvent | event | The event itself |
typedefNXEQElement
typedef struct _NXEQElStruct NXEQElement;
struct_evOffsets
| int | evGlobalsOffset | Offset to EvGlobals structure |
| int | evShmemOffset | Offset to private shmem regions |
typedefEvOffsets
typedef volatile struct _evOffsets EvOffsets;
struct_evGlobals
| OSSpinLock | cursorSema | set to disable periodic code |
| int | eNum | Unique id for mouse events |
| int | buttons | State of the mouse buttons 1==down, 0==up |
| int | eventFlags | The current value of event.flags |
| int | VertRetraceClock | The current value of event.time |
| IOGPoint | cursorLoc | The current location of the cursor, in desktop coordinates |
| int | frame | current cursor frame |
| IOGBounds | workBounds | bounding box of all screens |
| IOGBounds | mouseRect | Rect for mouse-exited events |
| int | version | for run time checks |
| int | structSize | for run time checks |
| int | lastFrame | |
| IOFixedPoint32 | screenCursorFixed | The current location of the cursor, 24.8 bit fixed point format in Screen coordinates |
| IOFixedPoint32 | desktopCursorFixed | in Desktop coordinates |
| unsigned int[27] | reservedA | |
| unsigned int:25 | reserved | |
| unsigned int:1 | updateCursorPositionFromFixed | if this is set, IOHIDSystem will take any cursor position updates from desktopCursorFixed instead of cursorLoc |
| unsigned int:1 | logCursorUpdates | log cursor updates |
| unsigned int:1 | wantPressure | pressure in current mouseRect? |
| unsigned int:1 | wantPrecision | precise coordinates in current mouseRect? |
| unsigned int:1 | dontWantCoalesce | coalesce within the current mouseRect? |
| unsigned int:1 | dontCoalesce | actual flag which determines coalescing |
| unsigned int:1 | mouseRectValid | If nonzero, post a mouse-exited whenever mouse outside mouseRect. |
| int | movedMask | This contains an event mask for the three events MOUSEMOVED, LMOUSEDRAGGED, and RMOUSEDRAGGED. It says whether driver should generate those events. |
| OSSpinLock | waitCursorSema | protects wait cursor fields |
| int | AALastEventSent | timestamp for wait cursor |
| int | AALastEventConsumed | timestamp for wait cursor |
| int | waitCursorUp | Is wait cursor up? |
| char | ctxtTimedOut | Has wait cursor timer expired? |
| char | waitCursorEnabled | Play wait cursor game (per ctxt)? |
| char | globalWaitCursorEnabled | Play wait cursor game (global)? |
| int | waitThreshold | time before wait cursor appears |
| int | LLEHead | The next event to be read |
| int | LLETail | Where the next event will go |
| int | LLELast | The last event entered |
| NXEQElement[240] | lleq | The event queue itself |
typedefEvGlobals
typedef volatile struct _evGlobals EvGlobals;
structevioLLEvent
| int | setCursor | |
| int | type | |
| IOGPoint | location | |
| NXEventData | data | |
| int | setFlags | |
| int | flags |
typedef_NXLLEvent
typedef struct evioLLEvent _NXLLEvent
structevioSpecialKeyMsg
| mach_msg_header_t | Head | |
| int | key | special key number, from bsd/dev/ev_keymap.h |
| int | direction | NX_KEYDOWN, NX_KEYUP from event.h |
| int | flags | device independant flags from event.h |
| int | level | EV_AUDIO_MIN_VOLUME to EV_AUDIO_MAX_VOLUME |
macroEV_SPECIAL_KEY_MSG_ID
#define EV_SPECIAL_KEY_MSG_ID (('S'<<24) | ('k'<<16) | ('e'<<8) | ('y'))typedefevioSpecialKeyMsg_t
typedef struct evioSpecialKeyMsg *evioSpecialKeyMsg_t
macroEV_AUDIO_MAX_VOLUME
#define EV_AUDIO_MAX_VOLUME 64
macrokIOHIDSystemClass
#define kIOHIDSystemClass "IOHIDSystem"
macrokIOHIKeyboardClass
#define kIOHIKeyboardClass "IOHIKeyboard"
macrokIOHIPointingClass
#define kIOHIPointingClass "IOHIPointing"
macroIOHIDSYSTEM_CONFORMSTO
#define IOHIDSYSTEM_CONFORMSTO kIOHIDSystemClass
enum(anonymous)
| kIOHIDEventNotification | 0 |
macrokIOHIDCurrentShmemVersion
#define kIOHIDCurrentShmemVersion 4
macrokIOHIDLastCompatibleShmemVersion
#define kIOHIDLastCompatibleShmemVersion 3
enum(anonymous)
| kIOHIDServerConnectType | 0 | |
| kIOHIDParamConnectType | 1 | |
| kIOHIDEventSystemConnectType | 3 |
enum(anonymous)
| kIOHIDGlobalMemory | 0 |
enum(anonymous)
| kIOHIDEventQueueTypeKernel | 0 | |
| kIOHIDEventQueueTypeUser | 1 |
typedefMasterVolumeUpdate
typedef UInt16 (*MasterVolumeUpdate)(void)
typedefMasterMuteUpdate
typedef bool (*MasterMuteUpdate)(void)
structMasterAudioFunctions
| MasterVolumeUpdate | incrementMasterVolume | |
| MasterVolumeUpdate | decrementMasterVolume | |
| MasterMuteUpdate | toggleMasterMute |
typedefMasterAudioFunctions
typedef struct MasterAudioFunctions MasterAudioFunctions;
variablemasterAudioFunctions
extern MasterAudioFunctions *masterAudioFunctions
enum(anonymous)
| kIOHIDOpenedByEventSystem | 65536 | @defined kIOHIDOpenedByEventSystem @abstract option passed to open for IOHIDInterface if opened by IOHIDEventDriver |
| kIOHIDOpenedByFastPathClient | 131072 | @defined kIOHIDOpenedByFastPathClient @abstract option passed to open for IOHIDEventService if opened by fast path client |
macrokIOHIDMessageRelayServiceInterfaceActive
#define kIOHIDMessageRelayServiceInterfaceActive iokit_vendor_specific_msg(2)