HID manager callback convenience words. CFRunLoop function bindings
parent
136a7a66c3
commit
a0ea307432
|
@ -80,6 +80,9 @@ FUNCTION: void CFRelease ( CFTypeRef cf ) ;
|
||||||
|
|
||||||
FUNCTION: CFTypeID CFGetTypeID ( CFTypeRef cf ) ;
|
FUNCTION: CFTypeID CFGetTypeID ( CFTypeRef cf ) ;
|
||||||
|
|
||||||
|
FUNCTION: CFRunLoopRef CFRunLoopGetCurrent ( ) ;
|
||||||
|
FUNCTION: CFRunLoopRef CFRunLoopGetMain ( ) ;
|
||||||
|
|
||||||
: CF>array ( alien -- array )
|
: CF>array ( alien -- array )
|
||||||
dup CFArrayGetCount [ CFArrayGetValueAtIndex ] with map ;
|
dup CFArrayGetCount [ CFArrayGetValueAtIndex ] with map ;
|
||||||
|
|
||||||
|
@ -135,3 +138,5 @@ M: f <CFNumber>
|
||||||
] [
|
] [
|
||||||
"Cannot load bundled named " prepend throw
|
"Cannot load bundled named " prepend throw
|
||||||
] ?if ;
|
] ?if ;
|
||||||
|
|
||||||
|
: kCFRunLoopDefaultMode "kCFRunLoopDefaultMode" <CFString> ; inline
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
USING: iokit alien.syntax alien.c-types kernel system core-foundation ;
|
USING: iokit alien alien.syntax alien.c-types kernel
|
||||||
|
system core-foundation ;
|
||||||
IN: iokit.hid
|
IN: iokit.hid
|
||||||
|
|
||||||
: kIOHIDDeviceKey "IOHIDDevice" ; inline
|
: kIOHIDDeviceKey "IOHIDDevice" ; inline
|
||||||
|
@ -128,16 +129,30 @@ TYPEDEF: void* IOHIDTransactionRef
|
||||||
TYPEDEF: UInt32 IOHIDValueScaleType
|
TYPEDEF: UInt32 IOHIDValueScaleType
|
||||||
TYPEDEF: UInt32 IOHIDTransactionDirectionType
|
TYPEDEF: UInt32 IOHIDTransactionDirectionType
|
||||||
|
|
||||||
! Callback signature: void IOHIDCallback(void* context, IOReturn result, void* sender);
|
|
||||||
TYPEDEF: void* IOHIDCallback
|
TYPEDEF: void* IOHIDCallback
|
||||||
! Callback signature: void IOHIDReportCallback(void* context, IOReturn result, void* sender, IOHIDReportType type, UInt32 reportID, uchar * report, CFIndex reportLength);
|
: IOHIDCallback ( quot -- alien )
|
||||||
|
[ "void" { "void*" "IOReturn" "void*" } "cdecl" ]
|
||||||
|
dip alien-callback ; inline
|
||||||
|
|
||||||
TYPEDEF: void* IOHIDReportCallback
|
TYPEDEF: void* IOHIDReportCallback
|
||||||
! Callback signature: void IOHIDValueCallback(void* context, IOReturn result, void* sender, IOHIDValueRef value);
|
: IOHIDReportCallback ( quot -- alien )
|
||||||
|
[ "void" { "void*" "IOReturn" "void*" "IOHIDReportType" "UInt32" "uchar*" "CFIndex" } "cdecl" ]
|
||||||
|
dip alien-callback ; inline
|
||||||
|
|
||||||
TYPEDEF: void* IOHIDValueCallback
|
TYPEDEF: void* IOHIDValueCallback
|
||||||
! Callback signature: void IOHIDValueMultipleCallback(void* context, IOReturn result, void* sender, CFDictionaryRef multiple);
|
: IOHIDValueCallback ( quot -- alien )
|
||||||
|
[ "void" { "void*" "IOReturn" "void*" "IOHIDValueRef" } "cdecl" ]
|
||||||
|
dip alien-callback ; inline
|
||||||
|
|
||||||
TYPEDEF: void* IOHIDValueMultipleCallback
|
TYPEDEF: void* IOHIDValueMultipleCallback
|
||||||
! Callback signature: void IOHIDDeviceCallback(void* context, IOReturn result, void* sender, IOHIDDeviceRef device);
|
: IOHIDValueMultipleCallback ( quot -- alien )
|
||||||
|
[ "void" { "void*" "IOReturn" "void*" "CFDictionaryRef" } "cdecl" ]
|
||||||
|
dip alien-callback ; inline
|
||||||
|
|
||||||
TYPEDEF: void* IOHIDDeviceCallback
|
TYPEDEF: void* IOHIDDeviceCallback
|
||||||
|
: IOHIDDeviceCallback ( quot -- alien )
|
||||||
|
[ "void" { "void*" "IOReturn" "void*" "IOHIDDeviceRef" } "cdecl" ]
|
||||||
|
dip alien-callback ; inline
|
||||||
|
|
||||||
! IOHIDDevice
|
! IOHIDDevice
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue