251 lines
16 KiB
Rust
251 lines
16 KiB
Rust
// exports from <IOKit/hid/IOHIDKeys.h>
|
|
|
|
// This is used to find HID Devices in the IORegistry
|
|
pub const kIOHIDDeviceKey: *const ::std::os::raw::c_char =
|
|
b"IOHIDDevice\x00" as *const [u8; 12usize] as *const ::std::os::raw::c_char;
|
|
|
|
// HID Device Property Keys
|
|
pub const kIOHIDTransportKey: *const ::std::os::raw::c_char =
|
|
b"Transport\x00" as *const [u8; 10usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDVendorIDKey: *const ::std::os::raw::c_char =
|
|
b"VendorID\x00" as *const [u8; 9usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDVendorIDSourceKey: *const ::std::os::raw::c_char =
|
|
b"VendorIDSource\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDProductIDKey: *const ::std::os::raw::c_char =
|
|
b"ProductID\x00" as *const [u8; 10usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDVersionNumberKey: *const ::std::os::raw::c_char =
|
|
b"VersionNumber\x00" as *const [u8; 14usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDManufacturerKey: *const ::std::os::raw::c_char =
|
|
b"Manufacturer\x00" as *const [u8; 13usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDProductKey: *const ::std::os::raw::c_char =
|
|
b"Product\x00" as *const [u8; 8usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDSerialNumberKey: *const ::std::os::raw::c_char =
|
|
b"SerialNumber\x00" as *const [u8; 13usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDCountryCodeKey: *const ::std::os::raw::c_char =
|
|
b"CountryCode\x00" as *const [u8; 12usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDStandardTypeKey: *const ::std::os::raw::c_char =
|
|
b"StandardType\x00" as *const [u8; 13usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDLocationIDKey: *const ::std::os::raw::c_char =
|
|
b"LocationID\x00" as *const [u8; 11usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDDeviceUsageKey: *const ::std::os::raw::c_char =
|
|
b"DeviceUsage\x00" as *const [u8; 12usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDDeviceUsagePageKey: *const ::std::os::raw::c_char =
|
|
b"DeviceUsagePage\x00" as *const [u8; 16usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDDeviceUsagePairsKey: *const ::std::os::raw::c_char =
|
|
b"DeviceUsagePairs\x00" as *const [u8; 17usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDPrimaryUsageKey: *const ::std::os::raw::c_char =
|
|
b"PrimaryUsage\x00" as *const [u8; 13usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDPrimaryUsagePageKey: *const ::std::os::raw::c_char =
|
|
b"PrimaryUsagePage\x00" as *const [u8; 17usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDMaxInputReportSizeKey: *const ::std::os::raw::c_char =
|
|
b"MaxInputReportSize\x00" as *const [u8; 19usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDMaxOutputReportSizeKey: *const ::std::os::raw::c_char =
|
|
b"MaxOutputReportSize\x00" as *const [u8; 20usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDMaxFeatureReportSizeKey: *const ::std::os::raw::c_char =
|
|
b"MaxFeatureReportSize\x00" as *const [u8; 21usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDReportIntervalKey: *const ::std::os::raw::c_char =
|
|
b"ReportInterval\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDSampleIntervalKey: *const ::std::os::raw::c_char =
|
|
b"SampleInterval\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDBatchIntervalKey: *const ::std::os::raw::c_char =
|
|
b"BatchInterval\x00" as *const [u8; 14usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDRequestTimeoutKey: *const ::std::os::raw::c_char =
|
|
b"RequestTimeout\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDReportDescriptorKey: *const ::std::os::raw::c_char =
|
|
b"ReportDescriptor\x00" as *const [u8; 17usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDResetKey: *const ::std::os::raw::c_char =
|
|
b"Reset\x00" as *const [u8; 6usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDKeyboardLanguageKey: *const ::std::os::raw::c_char =
|
|
b"KeyboardLanguage\x00" as *const [u8; 17usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDAltHandlerIdKey: *const ::std::os::raw::c_char =
|
|
b"alt_handler_id\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDBuiltInKey: *const ::std::os::raw::c_char =
|
|
b"Built-In\x00" as *const [u8; 9usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDDisplayIntegratedKey: *const ::std::os::raw::c_char =
|
|
b"DisplayIntegrated\x00" as *const [u8; 18usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDProductIDMaskKey: *const ::std::os::raw::c_char =
|
|
b"ProductIDMask\x00" as *const [u8; 14usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDProductIDArrayKey: *const ::std::os::raw::c_char =
|
|
b"ProductIDArray\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDPowerOnDelayNSKey: *const ::std::os::raw::c_char =
|
|
b"HIDPowerOnDelayNS\x00" as *const [u8; 18usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDCategoryKey: *const ::std::os::raw::c_char =
|
|
b"Category\x00" as *const [u8; 9usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDMaxResponseLatencyKey: *const ::std::os::raw::c_char =
|
|
b"MaxResponseLatency\x00" as *const [u8; 19usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDUniqueIDKey: *const ::std::os::raw::c_char =
|
|
b"UniqueID\x00" as *const [u8; 9usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDPhysicalDeviceUniqueIDKey: *const ::std::os::raw::c_char =
|
|
b"PhysicalDeviceUniqueID\x00" as *const [u8; 23usize] as *const ::std::os::raw::c_char;
|
|
|
|
pub const kIOHIDTransportUSBValue: *const ::std::os::raw::c_char =
|
|
b"USB\x00" as *const [u8; 4usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDTransportBluetoothValue: *const ::std::os::raw::c_char =
|
|
b"Bluetooth\x00" as *const [u8; 10usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDTransportBluetoothLowEnergyValue: *const ::std::os::raw::c_char =
|
|
b"BluetoothLowEnergy\x00" as *const [u8; 19usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDTransportAIDBValue: *const ::std::os::raw::c_char =
|
|
b"AIDB\x00" as *const [u8; 5usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDTransportI2CValue: *const ::std::os::raw::c_char =
|
|
b"I2C\x00" as *const [u8; 4usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDTransportSPIValue: *const ::std::os::raw::c_char =
|
|
b"SPI\x00" as *const [u8; 4usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDTransportSerialValue: *const ::std::os::raw::c_char =
|
|
b"Serial\x00" as *const [u8; 7usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDTransportIAPValue: *const ::std::os::raw::c_char =
|
|
b"IAP\x00" as *const [u8; 4usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDTransportAirPlayValue: *const ::std::os::raw::c_char =
|
|
b"AirPlay\x00" as *const [u8; 8usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDTransportSPUValue: *const ::std::os::raw::c_char =
|
|
b"SPU\x00" as *const [u8; 4usize] as *const ::std::os::raw::c_char;
|
|
|
|
pub const kIOHIDCategoryAutomotiveValue: *const ::std::os::raw::c_char =
|
|
b"Automotive\x00" as *const [u8; 11usize] as *const ::std::os::raw::c_char;
|
|
|
|
// HID Element Key
|
|
pub const kIOHIDElementKey: *const ::std::os::raw::c_char =
|
|
b"Elements\x00" as *const [u8; 9usize] as *const ::std::os::raw::c_char;
|
|
|
|
// HID Element Dictionary Keys
|
|
pub const kIOHIDElementCookieKey: *const ::std::os::raw::c_char =
|
|
b"ElementCookie\x00" as *const [u8; 14usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementTypeKey: *const ::std::os::raw::c_char =
|
|
b"Type\x00" as *const [u8; 5usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementCollectionTypeKey: *const ::std::os::raw::c_char =
|
|
b"CollectionType\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementUsageKey: *const ::std::os::raw::c_char =
|
|
b"Usage\x00" as *const [u8; 6usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementUsagePageKey: *const ::std::os::raw::c_char =
|
|
b"UsagePage\x00" as *const [u8; 10usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementMinKey: *const ::std::os::raw::c_char =
|
|
b"Min\x00" as *const [u8; 4usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementMaxKey: *const ::std::os::raw::c_char =
|
|
b"Max\x00" as *const [u8; 4usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementScaledMinKey: *const ::std::os::raw::c_char =
|
|
b"ScaledMin\x00" as *const [u8; 10usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementScaledMaxKey: *const ::std::os::raw::c_char =
|
|
b"ScaledMax\x00" as *const [u8; 10usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementSizeKey: *const ::std::os::raw::c_char =
|
|
b"Size\x00" as *const [u8; 5usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementReportSizeKey: *const ::std::os::raw::c_char =
|
|
b"ReportSize\x00" as *const [u8; 11usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementReportCountKey: *const ::std::os::raw::c_char =
|
|
b"ReportCount\x00" as *const [u8; 12usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementReportIDKey: *const ::std::os::raw::c_char =
|
|
b"ReportID\x00" as *const [u8; 9usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementIsArrayKey: *const ::std::os::raw::c_char =
|
|
b"IsArray\x00" as *const [u8; 8usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementIsRelativeKey: *const ::std::os::raw::c_char =
|
|
b"IsRelative\x00" as *const [u8; 11usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementIsWrappingKey: *const ::std::os::raw::c_char =
|
|
b"IsWrapping\x00" as *const [u8; 11usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementIsNonLinearKey: *const ::std::os::raw::c_char =
|
|
b"IsNonLinear\x00" as *const [u8; 12usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementHasPreferredStateKey: *const ::std::os::raw::c_char =
|
|
b"HasPreferredState\x00" as *const [u8; 18usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementHasNullStateKey: *const ::std::os::raw::c_char =
|
|
b"HasNullState\x00" as *const [u8; 13usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementFlagsKey: *const ::std::os::raw::c_char =
|
|
b"Flags\x00" as *const [u8; 6usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementUnitKey: *const ::std::os::raw::c_char =
|
|
b"Unit\x00" as *const [u8; 5usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementUnitExponentKey: *const ::std::os::raw::c_char =
|
|
b"UnitExponent\x00" as *const [u8; 13usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementNameKey: *const ::std::os::raw::c_char =
|
|
b"Name\x00" as *const [u8; 5usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementValueLocationKey: *const ::std::os::raw::c_char =
|
|
b"ValueLocation\x00" as *const [u8; 14usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementDuplicateIndexKey: *const ::std::os::raw::c_char =
|
|
b"DuplicateIndex\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementParentCollectionKey: *const ::std::os::raw::c_char =
|
|
b"ParentCollection\x00" as *const [u8; 17usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementVendorSpecificKey: *const ::std::os::raw::c_char =
|
|
b"VendorSpecific\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
|
|
// HID Element Match Keys
|
|
pub const kIOHIDElementCookieMinKey: *const ::std::os::raw::c_char =
|
|
b"ElementCookieMin\x00" as *const [u8; 17usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementCookieMaxKey: *const ::std::os::raw::c_char =
|
|
b"ElementCookieMax\x00" as *const [u8; 17usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementUsageMinKey: *const ::std::os::raw::c_char =
|
|
b"UsageMin\x00" as *const [u8; 9usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementUsageMaxKey: *const ::std::os::raw::c_char =
|
|
b"UsageMax\x00" as *const [u8; 9usize] as *const ::std::os::raw::c_char;
|
|
|
|
// HID Element Calibration Keys
|
|
pub const kIOHIDElementCalibrationMinKey: *const ::std::os::raw::c_char =
|
|
b"CalibrationMin\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementCalibrationMaxKey: *const ::std::os::raw::c_char =
|
|
b"CalibrationMax\x00" as *const [u8; 15usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementCalibrationSaturationMinKey: *const ::std::os::raw::c_char =
|
|
b"CalibrationSaturationMin\x00" as *const [u8; 25usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementCalibrationSaturationMaxKey: *const ::std::os::raw::c_char =
|
|
b"CalibrationSaturationMax\x00" as *const [u8; 25usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementCalibrationDeadZoneMinKey: *const ::std::os::raw::c_char =
|
|
b"CalibrationDeadZoneMin\x00" as *const [u8; 23usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementCalibrationDeadZoneMaxKey: *const ::std::os::raw::c_char =
|
|
b"CalibrationDeadZoneMax\x00" as *const [u8; 23usize] as *const ::std::os::raw::c_char;
|
|
pub const kIOHIDElementCalibrationGranularityKey: *const ::std::os::raw::c_char =
|
|
b"CalibrationGranularity\x00" as *const [u8; 23usize] as *const ::std::os::raw::c_char;
|
|
|
|
pub type IOHIDElementCookie = u32;
|
|
|
|
pub type IOHIDElementType = u32;
|
|
pub const kIOHIDElementTypeInput_Misc: IOHIDElementType = 1;
|
|
pub const kIOHIDElementTypeInput_Button: IOHIDElementType = 2;
|
|
pub const kIOHIDElementTypeInput_Axis: IOHIDElementType = 3;
|
|
pub const kIOHIDElementTypeInput_ScanCodes: IOHIDElementType = 4;
|
|
pub const kIOHIDElementTypeOutput: IOHIDElementType = 129;
|
|
pub const kIOHIDElementTypeFeature: IOHIDElementType = 257;
|
|
pub const kIOHIDElementTypeCollection: IOHIDElementType = 513;
|
|
|
|
pub type IOHIDElementCollectionType = u32;
|
|
pub const kIOHIDElementCollectionTypePhysical: IOHIDElementCollectionType = 0x00;
|
|
pub const kIOHIDElementCollectionTypeApplication: IOHIDElementCollectionType = 0x01;
|
|
pub const kIOHIDElementCollectionTypeLogical: IOHIDElementCollectionType = 0x02;
|
|
pub const kIOHIDElementCollectionTypeReport: IOHIDElementCollectionType = 0x03;
|
|
pub const kIOHIDElementCollectionTypeNamedArray: IOHIDElementCollectionType = 0x04;
|
|
pub const kIOHIDElementCollectionTypeUsageSwitch: IOHIDElementCollectionType = 0x05;
|
|
pub const kIOHIDElementCollectionTypeUsageModifier: IOHIDElementCollectionType = 0x06;
|
|
|
|
pub type IOHIDReportType = u32;
|
|
pub const kIOHIDReportTypeInput: IOHIDReportType = 0;
|
|
pub const kIOHIDReportTypeOutput: IOHIDReportType = 1;
|
|
pub const kIOHIDReportTypeFeature: IOHIDReportType = 2;
|
|
pub const kIOHIDReportTypeCount: IOHIDReportType = 3;
|
|
|
|
pub type IOHIDOptionsType = u32;
|
|
pub const kIOHIDOptionsTypeNone: IOHIDOptionsType = 0x00;
|
|
pub const kIOHIDOptionsTypeSeizeDevice: IOHIDOptionsType = 0x01;
|
|
|
|
pub type IOHIDQueueOptionsType = u32;
|
|
pub const kIOHIDQueueOptionsTypeNone: IOHIDQueueOptionsType = 0x00;
|
|
pub const kIOHIDQueueOptionsTypeEnqueueAll: IOHIDQueueOptionsType = 0x01;
|
|
|
|
pub type IOHIDElementFlags = u32;
|
|
pub const kIOHIDElementFlagsConstantMask: IOHIDElementFlags = 0x0001;
|
|
pub const kIOHIDElementFlagsVariableMask: IOHIDElementFlags = 0x0002;
|
|
pub const kIOHIDElementFlagsRelativeMask: IOHIDElementFlags = 0x0004;
|
|
pub const kIOHIDElementFlagsWrapMask: IOHIDElementFlags = 0x0008;
|
|
pub const kIOHIDElementFlagsNonLinearMask: IOHIDElementFlags = 0x0010;
|
|
pub const kIOHIDElementFlagsNoPreferredMask: IOHIDElementFlags = 0x0020;
|
|
pub const kIOHIDElementFlagsNullStateMask: IOHIDElementFlags = 0x0040;
|
|
pub const kIOHIDElementFlagsVolativeMask: IOHIDElementFlags = 0x0080;
|
|
pub const kIOHIDElementFlagsBufferedByteMask: IOHIDElementFlags = 0x0100;
|
|
|
|
pub type IOHIDStandardType = u32;
|
|
pub const kIOHIDStandardTypeANSI: IOHIDStandardType = 0;
|
|
pub const kIOHIDStandardTypeISO: IOHIDStandardType = 1;
|
|
pub const kIOHIDStandardTypeJIS: IOHIDStandardType = 2;
|
|
|
|
pub type IOHIDValueScaleType = u32;
|
|
pub const kIOHIDValueScaleTypeCalibrated: IOHIDValueScaleType = 0;
|
|
pub const kIOHIDValueScaleTypePhysical: IOHIDValueScaleType = 1;
|
|
|
|
pub type IOHIDValueOptions = u32;
|
|
pub const kIOHIDValueOptionsFlagRelativeSimple: IOHIDValueOptions = 1 << 0;
|
|
pub const kIOHIDValueOptionsFlagPrevious: IOHIDValueOptions = 1 << 1;
|
|
|
|
pub const kIOHIDDigitizerGestureCharacterStateKey: *const ::std::os::raw::c_char =
|
|
b"DigitizerCharacterGestureState\x00" as *const [u8; 31usize] as *const ::std::os::raw::c_char;
|