1 USING: iokit alien alien.syntax alien.c-types kernel
2 system core-foundation core-foundation.data
3 core-foundation.dictionaries ;
6 CONSTANT: kIOHIDDeviceKey "IOHIDDevice"
8 CONSTANT: kIOHIDTransportKey "Transport"
9 CONSTANT: kIOHIDVendorIDKey "VendorID"
10 CONSTANT: kIOHIDVendorIDSourceKey "VendorIDSource"
11 CONSTANT: kIOHIDProductIDKey "ProductID"
12 CONSTANT: kIOHIDVersionNumberKey "VersionNumber"
13 CONSTANT: kIOHIDManufacturerKey "Manufacturer"
14 CONSTANT: kIOHIDProductKey "Product"
15 CONSTANT: kIOHIDSerialNumberKey "SerialNumber"
16 CONSTANT: kIOHIDCountryCodeKey "CountryCode"
17 CONSTANT: kIOHIDLocationIDKey "LocationID"
18 CONSTANT: kIOHIDDeviceUsageKey "DeviceUsage"
19 CONSTANT: kIOHIDDeviceUsagePageKey "DeviceUsagePage"
20 CONSTANT: kIOHIDDeviceUsagePairsKey "DeviceUsagePairs"
21 CONSTANT: kIOHIDPrimaryUsageKey "PrimaryUsage"
22 CONSTANT: kIOHIDPrimaryUsagePageKey "PrimaryUsagePage"
23 CONSTANT: kIOHIDMaxInputReportSizeKey "MaxInputReportSize"
24 CONSTANT: kIOHIDMaxOutputReportSizeKey "MaxOutputReportSize"
25 CONSTANT: kIOHIDMaxFeatureReportSizeKey "MaxFeatureReportSize"
26 CONSTANT: kIOHIDReportIntervalKey "ReportInterval"
28 CONSTANT: kIOHIDElementKey "Elements"
30 CONSTANT: kIOHIDElementCookieKey "ElementCookie"
31 CONSTANT: kIOHIDElementTypeKey "Type"
32 CONSTANT: kIOHIDElementCollectionTypeKey "CollectionType"
33 CONSTANT: kIOHIDElementUsageKey "Usage"
34 CONSTANT: kIOHIDElementUsagePageKey "UsagePage"
35 CONSTANT: kIOHIDElementMinKey "Min"
36 CONSTANT: kIOHIDElementMaxKey "Max"
37 CONSTANT: kIOHIDElementScaledMinKey "ScaledMin"
38 CONSTANT: kIOHIDElementScaledMaxKey "ScaledMax"
39 CONSTANT: kIOHIDElementSizeKey "Size"
40 CONSTANT: kIOHIDElementReportSizeKey "ReportSize"
41 CONSTANT: kIOHIDElementReportCountKey "ReportCount"
42 CONSTANT: kIOHIDElementReportIDKey "ReportID"
43 CONSTANT: kIOHIDElementIsArrayKey "IsArray"
44 CONSTANT: kIOHIDElementIsRelativeKey "IsRelative"
45 CONSTANT: kIOHIDElementIsWrappingKey "IsWrapping"
46 CONSTANT: kIOHIDElementIsNonLinearKey "IsNonLinear"
47 CONSTANT: kIOHIDElementHasPreferredStateKey "HasPreferredState"
48 CONSTANT: kIOHIDElementHasNullStateKey "HasNullState"
49 CONSTANT: kIOHIDElementFlagsKey "Flags"
50 CONSTANT: kIOHIDElementUnitKey "Unit"
51 CONSTANT: kIOHIDElementUnitExponentKey "UnitExponent"
52 CONSTANT: kIOHIDElementNameKey "Name"
53 CONSTANT: kIOHIDElementValueLocationKey "ValueLocation"
54 CONSTANT: kIOHIDElementDuplicateIndexKey "DuplicateIndex"
55 CONSTANT: kIOHIDElementParentCollectionKey "ParentCollection"
57 : kIOHIDElementVendorSpecificKey ( -- str )
58 cpu ppc? "VendorSpecifc" "VendorSpecific" ? ; inline
60 CONSTANT: kIOHIDElementCookieMinKey "ElementCookieMin"
61 CONSTANT: kIOHIDElementCookieMaxKey "ElementCookieMax"
62 CONSTANT: kIOHIDElementUsageMinKey "UsageMin"
63 CONSTANT: kIOHIDElementUsageMaxKey "UsageMax"
65 CONSTANT: kIOHIDElementCalibrationMinKey "CalibrationMin"
66 CONSTANT: kIOHIDElementCalibrationMaxKey "CalibrationMax"
67 CONSTANT: kIOHIDElementCalibrationSaturationMinKey "CalibrationSaturationMin"
68 CONSTANT: kIOHIDElementCalibrationSaturationMaxKey "CalibrationSaturationMax"
69 CONSTANT: kIOHIDElementCalibrationDeadZoneMinKey "CalibrationDeadZoneMin"
70 CONSTANT: kIOHIDElementCalibrationDeadZoneMaxKey "CalibrationDeadZoneMax"
71 CONSTANT: kIOHIDElementCalibrationGranularityKey "CalibrationGranularity"
73 CONSTANT: kIOHIDElementTypeInput_Misc 1
74 CONSTANT: kIOHIDElementTypeInput_Button 2
75 CONSTANT: kIOHIDElementTypeInput_Axis 3
76 CONSTANT: kIOHIDElementTypeInput_ScanCodes 4
77 CONSTANT: kIOHIDElementTypeOutput 129
78 CONSTANT: kIOHIDElementTypeFeature 257
79 CONSTANT: kIOHIDElementTypeCollection 513
81 CONSTANT: kIOHIDElementCollectionTypePhysical HEX: 00
82 CONSTANT: kIOHIDElementCollectionTypeApplication HEX: 01
83 CONSTANT: kIOHIDElementCollectionTypeLogical HEX: 02
84 CONSTANT: kIOHIDElementCollectionTypeReport HEX: 03
85 CONSTANT: kIOHIDElementCollectionTypeNamedArray HEX: 04
86 CONSTANT: kIOHIDElementCollectionTypeUsageSwitch HEX: 05
87 CONSTANT: kIOHIDElementCollectionTypeUsageModifier HEX: 06
89 CONSTANT: kIOHIDReportTypeInput 0
90 CONSTANT: kIOHIDReportTypeOutput 1
91 CONSTANT: kIOHIDReportTypeFeature 2
92 CONSTANT: kIOHIDReportTypeCount 3
94 CONSTANT: kIOHIDOptionsTypeNone HEX: 00
95 CONSTANT: kIOHIDOptionsTypeSeizeDevice HEX: 01
97 CONSTANT: kIOHIDQueueOptionsTypeNone HEX: 00
98 CONSTANT: kIOHIDQueueOptionsTypeEnqueueAll HEX: 01
100 CONSTANT: kIOHIDElementFlagsConstantMask HEX: 0001
101 CONSTANT: kIOHIDElementFlagsVariableMask HEX: 0002
102 CONSTANT: kIOHIDElementFlagsRelativeMask HEX: 0004
103 CONSTANT: kIOHIDElementFlagsWrapMask HEX: 0008
104 CONSTANT: kIOHIDElementFlagsNonLinearMask HEX: 0010
105 CONSTANT: kIOHIDElementFlagsNoPreferredMask HEX: 0020
106 CONSTANT: kIOHIDElementFlagsNullStateMask HEX: 0040
107 CONSTANT: kIOHIDElementFlagsVolativeMask HEX: 0080
108 CONSTANT: kIOHIDElementFlagsBufferedByteMask HEX: 0100
110 CONSTANT: kIOHIDValueScaleTypeCalibrated 0
111 CONSTANT: kIOHIDValueScaleTypePhysical 1
113 CONSTANT: kIOHIDTransactionDirectionTypeInput 0
114 CONSTANT: kIOHIDTransactionDirectionTypeOutput 1
116 CONSTANT: kIOHIDTransactionOptionDefaultOutputValue 1
118 TYPEDEF: ptrdiff_t IOHIDElementCookie
119 TYPEDEF: int IOHIDElementType
120 TYPEDEF: int IOHIDElementCollectionType
121 TYPEDEF: int IOHIDReportType
122 TYPEDEF: uint IOHIDOptionsType
123 TYPEDEF: uint IOHIDQueueOptionsType
124 TYPEDEF: uint IOHIDElementFlags
125 TYPEDEF: void* IOHIDDeviceRef
126 TYPEDEF: void* IOHIDElementRef
127 TYPEDEF: void* IOHIDValueRef
128 TYPEDEF: void* IOHIDManagerRef
129 TYPEDEF: void* IOHIDTransactionRef
130 TYPEDEF: UInt32 IOHIDValueScaleType
131 TYPEDEF: UInt32 IOHIDTransactionDirectionType
133 CALLBACK: void IOHIDCallback ( void* context, IOReturn result, void* sender ) ;
134 CALLBACK: void IOHIDReportCallback ( void* context, IOReturn result, void* sender, IOHIDReportType type, UInt32 reportID, uchar* report, CFIndex reportLength ) ;
135 CALLBACK: void IOHIDValueCallback ( void* context, IOReturn result, void* sender, IOHIDValueRef value ) ;
136 CALLBACK: void IOHIDValueMultipleCallback ( void* context, IOReturn result, void* sender, CFDictionaryRef multiple ) ;
137 CALLBACK: void IOHIDDeviceCallback ( void* context, IOReturn result, void* sender, IOHIDDeviceRef device ) ;
141 FUNCTION: CFTypeID IOHIDDeviceGetTypeID ( ) ;
142 FUNCTION: IOHIDDeviceRef IOHIDDeviceCreate ( CFAllocatorRef allocator, io_service_t service ) ;
143 FUNCTION: IOReturn IOHIDDeviceOpen ( IOHIDDeviceRef device, IOOptionBits options ) ;
144 FUNCTION: IOReturn IOHIDDeviceClose ( IOHIDDeviceRef device, IOOptionBits options ) ;
145 FUNCTION: Boolean IOHIDDeviceConformsTo ( IOHIDDeviceRef device, UInt32 usagePage, UInt32 usage ) ;
146 FUNCTION: CFTypeRef IOHIDDeviceGetProperty ( IOHIDDeviceRef device, CFStringRef key ) ;
147 FUNCTION: Boolean IOHIDDeviceSetProperty ( IOHIDDeviceRef device, CFStringRef key, CFTypeRef property ) ;
148 FUNCTION: CFArrayRef IOHIDDeviceCopyMatchingElements ( IOHIDDeviceRef device, CFDictionaryRef matching, IOOptionBits options ) ;
149 FUNCTION: void IOHIDDeviceScheduleWithRunLoop ( IOHIDDeviceRef device, CFRunLoopRef runLoop, CFStringRef runLoopMode ) ;
150 FUNCTION: void IOHIDDeviceUnscheduleFromRunLoop ( IOHIDDeviceRef device, CFRunLoopRef runLoop, CFStringRef runLoopMode ) ;
151 FUNCTION: void IOHIDDeviceRegisterRemovalCallback ( IOHIDDeviceRef device, IOHIDCallback callback, void* context ) ;
152 FUNCTION: void IOHIDDeviceRegisterInputValueCallback ( IOHIDDeviceRef device, IOHIDValueCallback callback, void* context ) ;
153 FUNCTION: void IOHIDDeviceRegisterInputReportCallback ( IOHIDDeviceRef device, uchar* report, CFIndex reportLength, IOHIDReportCallback callback, void* context ) ;
154 FUNCTION: void IOHIDDeviceSetInputValueMatching ( IOHIDDeviceRef device, CFDictionaryRef matching ) ;
155 FUNCTION: void IOHIDDeviceSetInputValueMatchingMultiple ( IOHIDDeviceRef device, CFArrayRef multiple ) ;
156 FUNCTION: IOReturn IOHIDDeviceSetValue ( IOHIDDeviceRef device, IOHIDElementRef element, IOHIDValueRef value ) ;
157 FUNCTION: IOReturn IOHIDDeviceSetValueMultiple ( IOHIDDeviceRef device, CFDictionaryRef multiple ) ;
158 FUNCTION: IOReturn IOHIDDeviceSetValueWithCallback ( IOHIDDeviceRef device, IOHIDElementRef element, IOHIDValueRef value, CFTimeInterval timeout, IOHIDValueCallback callback, void* context ) ;
159 FUNCTION: IOReturn IOHIDDeviceSetValueMultipleWithCallback ( IOHIDDeviceRef device, CFDictionaryRef multiple, CFTimeInterval timeout, IOHIDValueMultipleCallback callback, void* context ) ;
160 FUNCTION: IOReturn IOHIDDeviceGetValue ( IOHIDDeviceRef device, IOHIDElementRef element, IOHIDValueRef* pValue ) ;
161 FUNCTION: IOReturn IOHIDDeviceCopyValueMultiple ( IOHIDDeviceRef device, CFArrayRef elements, CFDictionaryRef* pMultiple ) ;
162 FUNCTION: IOReturn IOHIDDeviceGetValueWithCallback ( IOHIDDeviceRef device, IOHIDElementRef element, IOHIDValueRef* pValue, CFTimeInterval timeout, IOHIDValueCallback callback, void* context ) ;
163 FUNCTION: IOReturn IOHIDDeviceCopyValueMultipleWithCallback ( IOHIDDeviceRef device, CFArrayRef elements, CFDictionaryRef* pMultiple, CFTimeInterval timeout, IOHIDValueMultipleCallback callback, void* context ) ;
164 FUNCTION: IOReturn IOHIDDeviceSetReport ( IOHIDDeviceRef device, IOHIDReportType reportType, CFIndex reportID, uchar* report, CFIndex reportLength ) ;
165 FUNCTION: IOReturn IOHIDDeviceSetReportWithCallback ( IOHIDDeviceRef device, IOHIDReportType reportType, CFIndex reportID, uchar* report, CFIndex reportLength, CFTimeInterval timeout, IOHIDReportCallback callback, void* context ) ;
166 FUNCTION: IOReturn IOHIDDeviceGetReport ( IOHIDDeviceRef device, IOHIDReportType reportType, CFIndex reportID, uchar* report, CFIndex* pReportLength ) ;
167 FUNCTION: IOReturn IOHIDDeviceGetReportWithCallback ( IOHIDDeviceRef device, IOHIDReportType reportType, CFIndex reportID, uchar* report, CFIndex* pReportLength, CFTimeInterval timeout, IOHIDReportCallback callback, void* context ) ;
171 FUNCTION: CFTypeID IOHIDManagerGetTypeID ( ) ;
172 FUNCTION: IOHIDManagerRef IOHIDManagerCreate ( CFAllocatorRef allocator, IOOptionBits options ) ;
173 FUNCTION: IOReturn IOHIDManagerOpen ( IOHIDManagerRef manager, IOOptionBits options ) ;
174 FUNCTION: IOReturn IOHIDManagerClose ( IOHIDManagerRef manager, IOOptionBits options ) ;
175 FUNCTION: CFTypeRef IOHIDManagerGetProperty ( IOHIDManagerRef manager, CFStringRef key ) ;
176 FUNCTION: Boolean IOHIDManagerSetProperty ( IOHIDManagerRef manager, CFStringRef key, CFTypeRef value ) ;
177 FUNCTION: void IOHIDManagerScheduleWithRunLoop ( IOHIDManagerRef manager, CFRunLoopRef runLoop, CFStringRef runLoopMode ) ;
178 FUNCTION: void IOHIDManagerUnscheduleFromRunLoop ( IOHIDManagerRef manager, CFRunLoopRef runLoop, CFStringRef runLoopMode ) ;
179 FUNCTION: void IOHIDManagerSetDeviceMatching ( IOHIDManagerRef manager, CFDictionaryRef matching ) ;
180 FUNCTION: void IOHIDManagerSetDeviceMatchingMultiple ( IOHIDManagerRef manager, CFArrayRef multiple ) ;
181 FUNCTION: CFSetRef IOHIDManagerCopyDevices ( IOHIDManagerRef manager ) ;
182 FUNCTION: void IOHIDManagerRegisterDeviceMatchingCallback ( IOHIDManagerRef manager, IOHIDDeviceCallback callback, void* context ) ;
183 FUNCTION: void IOHIDManagerRegisterDeviceRemovalCallback ( IOHIDManagerRef manager, IOHIDDeviceCallback callback, void* context ) ;
184 FUNCTION: void IOHIDManagerRegisterInputReportCallback ( IOHIDManagerRef manager, IOHIDReportCallback callback, void* context ) ;
185 FUNCTION: void IOHIDManagerRegisterInputValueCallback ( IOHIDManagerRef manager, IOHIDValueCallback callback, void* context ) ;
186 FUNCTION: void IOHIDManagerSetInputValueMatching ( IOHIDManagerRef manager, CFDictionaryRef matching ) ;
187 FUNCTION: void IOHIDManagerSetInputValueMatchingMultiple ( IOHIDManagerRef manager, CFArrayRef multiple ) ;
191 FUNCTION: CFTypeID IOHIDElementGetTypeID ( ) ;
192 FUNCTION: IOHIDElementRef IOHIDElementCreateWithDictionary ( CFAllocatorRef allocator, CFDictionaryRef dictionary ) ;
193 FUNCTION: IOHIDDeviceRef IOHIDElementGetDevice ( IOHIDElementRef element ) ;
194 FUNCTION: IOHIDElementRef IOHIDElementGetParent ( IOHIDElementRef element ) ;
195 FUNCTION: CFArrayRef IOHIDElementGetChildren ( IOHIDElementRef element ) ;
196 FUNCTION: void IOHIDElementAttach ( IOHIDElementRef element, IOHIDElementRef toAttach ) ;
197 FUNCTION: void IOHIDElementDetach ( IOHIDElementRef element, IOHIDElementRef toDetach ) ;
198 FUNCTION: CFArrayRef IOHIDElementCopyAttached ( IOHIDElementRef element ) ;
199 FUNCTION: IOHIDElementCookie IOHIDElementGetCookie ( IOHIDElementRef element ) ;
200 FUNCTION: IOHIDElementType IOHIDElementGetType ( IOHIDElementRef element ) ;
201 FUNCTION: IOHIDElementCollectionType IOHIDElementGetCollectionType ( IOHIDElementRef element ) ;
202 FUNCTION: UInt32 IOHIDElementGetUsagePage ( IOHIDElementRef element ) ;
203 FUNCTION: UInt32 IOHIDElementGetUsage ( IOHIDElementRef element ) ;
204 FUNCTION: Boolean IOHIDElementIsVirtual ( IOHIDElementRef element ) ;
205 FUNCTION: Boolean IOHIDElementIsRelative ( IOHIDElementRef element ) ;
206 FUNCTION: Boolean IOHIDElementIsWrapping ( IOHIDElementRef element ) ;
207 FUNCTION: Boolean IOHIDElementIsArray ( IOHIDElementRef element ) ;
208 FUNCTION: Boolean IOHIDElementIsNonLinear ( IOHIDElementRef element ) ;
209 FUNCTION: Boolean IOHIDElementHasPreferredState ( IOHIDElementRef element ) ;
210 FUNCTION: Boolean IOHIDElementHasNullState ( IOHIDElementRef element ) ;
211 FUNCTION: CFStringRef IOHIDElementGetName ( IOHIDElementRef element ) ;
212 FUNCTION: UInt32 IOHIDElementGetReportID ( IOHIDElementRef element ) ;
213 FUNCTION: UInt32 IOHIDElementGetReportSize ( IOHIDElementRef element ) ;
214 FUNCTION: UInt32 IOHIDElementGetReportCount ( IOHIDElementRef element ) ;
215 FUNCTION: UInt32 IOHIDElementGetUnit ( IOHIDElementRef element ) ;
216 FUNCTION: UInt32 IOHIDElementGetUnitExponent ( IOHIDElementRef element ) ;
217 FUNCTION: CFIndex IOHIDElementGetLogicalMin ( IOHIDElementRef element ) ;
218 FUNCTION: CFIndex IOHIDElementGetLogicalMax ( IOHIDElementRef element ) ;
219 FUNCTION: CFIndex IOHIDElementGetPhysicalMin ( IOHIDElementRef element ) ;
220 FUNCTION: CFIndex IOHIDElementGetPhysicalMax ( IOHIDElementRef element ) ;
221 FUNCTION: CFTypeRef IOHIDElementGetProperty ( IOHIDElementRef element, CFStringRef key ) ;
222 FUNCTION: Boolean IOHIDElementSetProperty ( IOHIDElementRef element, CFStringRef key, CFTypeRef property ) ;
226 FUNCTION: CFTypeID IOHIDValueGetTypeID ( ) ;
227 FUNCTION: IOHIDValueRef IOHIDValueCreateWithIntegerValue ( CFAllocatorRef allocator, IOHIDElementRef element, ulonglong timeStamp, CFIndex value ) ;
228 FUNCTION: IOHIDValueRef IOHIDValueCreateWithBytes ( CFAllocatorRef allocator, IOHIDElementRef element, ulonglong timeStamp, uchar* bytes, CFIndex length ) ;
229 FUNCTION: IOHIDValueRef IOHIDValueCreateWithBytesNoCopy ( CFAllocatorRef allocator, IOHIDElementRef element, ulonglong timeStamp, uchar* bytes, CFIndex length ) ;
230 FUNCTION: IOHIDElementRef IOHIDValueGetElement ( IOHIDValueRef value ) ;
231 FUNCTION: ulonglong IOHIDValueGetTimeStamp ( IOHIDValueRef value ) ;
232 FUNCTION: CFIndex IOHIDValueGetLength ( IOHIDValueRef value ) ;
233 FUNCTION: uchar* IOHIDValueGetBytePtr ( IOHIDValueRef value ) ;
234 FUNCTION: CFIndex IOHIDValueGetIntegerValue ( IOHIDValueRef value ) ;
235 FUNCTION: double IOHIDValueGetScaledValue ( IOHIDValueRef value, IOHIDValueScaleType type ) ;
239 FUNCTION: CFTypeID IOHIDTransactionGetTypeID ( ) ;
240 FUNCTION: IOHIDTransactionRef IOHIDTransactionCreate ( CFAllocatorRef allocator, IOHIDDeviceRef device, IOHIDTransactionDirectionType direction, IOOptionBits options ) ;
241 FUNCTION: IOHIDDeviceRef IOHIDTransactionGetDevice ( IOHIDTransactionRef transaction ) ;
242 FUNCTION: IOHIDTransactionDirectionType IOHIDTransactionGetDirection ( IOHIDTransactionRef transaction ) ;
243 FUNCTION: void IOHIDTransactionSetDirection ( IOHIDTransactionRef transaction, IOHIDTransactionDirectionType direction ) ;
244 FUNCTION: void IOHIDTransactionAddElement ( IOHIDTransactionRef transaction, IOHIDElementRef element ) ;
245 FUNCTION: void IOHIDTransactionRemoveElement ( IOHIDTransactionRef transaction, IOHIDElementRef element ) ;
246 FUNCTION: Boolean IOHIDTransactionContainsElement ( IOHIDTransactionRef transaction, IOHIDElementRef element ) ;
247 FUNCTION: void IOHIDTransactionScheduleWithRunLoop ( IOHIDTransactionRef transaction, CFRunLoopRef runLoop, CFStringRef runLoopMode ) ;
248 FUNCTION: void IOHIDTransactionUnscheduleFromRunLoop ( IOHIDTransactionRef transaction, CFRunLoopRef runLoop, CFStringRef runLoopMode ) ;
249 FUNCTION: void IOHIDTransactionSetValue ( IOHIDTransactionRef transaction, IOHIDElementRef element, IOHIDValueRef value, IOOptionBits options ) ;
250 FUNCTION: IOHIDValueRef IOHIDTransactionGetValue ( IOHIDTransactionRef transaction, IOHIDElementRef element, IOOptionBits options ) ;
251 FUNCTION: IOReturn IOHIDTransactionCommit ( IOHIDTransactionRef transaction ) ;
252 FUNCTION: IOReturn IOHIDTransactionCommitWithCallback ( IOHIDTransactionRef transaction, CFTimeInterval timeout, IOHIDCallback callback, void* context ) ;
253 FUNCTION: void IOHIDTransactionClear ( IOHIDTransactionRef transaction ) ;