Crate objc2_game_controller

Source
Expand description

§Bindings to the GameController framework

See Apple’s docs and the general docs on framework crates for more information.

Structs§

GCAccelerationGCMotion
A 3 dimensional acceleration vector measured as scalar multiples of earth’s gravitational acceleration, G.
GCColorGCColor
Represents a color used by a GCDeviceLight.
GCControllerGCController
Controllers are available to an application that links to GameController.framework. There are 2 ways to access controllers paired to the system, adopt both to ensure the best user experience:
GCControllerAxisInputGCControllerAxisInput and GCControllerElement
Apple’s documentation
GCControllerButtonInputGCControllerButtonInput and GCControllerElement
Apple’s documentation
GCControllerDirectionPadGCControllerDirectionPad and GCControllerElement
A direction pad is a common grouping of 2 axis inputs where the input can also be interpreted as 2 sets of mutually exclusive button pairs. Only one button in each pair, {up, down} and {left, right}, can be pressed at any one time.
GCControllerElementGCControllerElement
Every controller element knows which collection it belongs to and whether its input value is analog or digital.
GCControllerInputStateGCControllerInput
Apple’s documentation
GCControllerLiveInputGCControllerInput
Apple’s documentation
GCControllerPlayerIndexGCController
This is the player index that a connected controller will have if it has never been assigned a player index on the current system. Controllers retain the player index they have been assigned between game sessions, so if you wish to unset the player index of a controller set it back to this value.
GCControllerTouchpadGCControllerElement and GCControllerTouchpad
A touchpad is a touch-based two axis input with a notion of “touch state”. It keeps track of whether the touchpad is actively being touched, and generates events based on a change in touch state.
GCDeviceBatteryGCDeviceBattery
A controller battery is an abstract representation of the battery level and battery status of a GCController instance.
GCDeviceBatteryStateGCDeviceBattery
This is the battery status and it’s represented by one of the following values: GCControllerBatteryStateUnknown means that the current state of battery is unknown or cannot be determined GCControllerBatteryStateDischarging means that controller is on battery and discharging at this moment GCControllerBatteryStateCharging means that controller is plugged in, but it’s battery level is less than 100% GCControllerBatteryStateFull means that controller is plugged in and it’s battery level is 100%
GCDeviceCursorGCControllerDirectionPad and GCControllerElement and GCDeviceCursor
A cursor is a Direction Pad that has its axis extended from [-1; 1] to [width; height] range Up, down, left, right allows to use mouse to simulate DirectionaPad or Thumbstick since values are normalized for these elements
GCDeviceHapticsGCDeviceHaptics
Apple’s documentation
GCDeviceLightGCDeviceLight
A controller light is an abstract representation of the light-emitting capabilities of a GCController instance.
GCDevicePhysicalInputElementChangeGCDevicePhysicalInputStateDiff
Apple’s documentation
GCDirectionalGamepadGCDirectionalGamepad and GCMicroGamepad and GCPhysicalInputProfile
Directional Gamepad profile.
GCDualSenseAdaptiveTriggerGCControllerButtonInput and GCControllerElement and GCDualSenseAdaptiveTrigger
DualSense triggers are required to be analog inputs. Common uses would be acceleration and decelleration in a driving game for example.
GCDualSenseAdaptiveTriggerModeGCDualSenseAdaptiveTrigger
Apple’s documentation
GCDualSenseAdaptiveTriggerPositionalAmplitudesGCDualSenseAdaptiveTrigger
Apple’s documentation
GCDualSenseAdaptiveTriggerPositionalResistiveStrengthsGCDualSenseAdaptiveTrigger
Apple’s documentation
GCDualSenseAdaptiveTriggerStatusGCDualSenseAdaptiveTrigger
Apple’s documentation
GCDualSenseGamepadGCDualSenseGamepad and GCExtendedGamepad and GCPhysicalInputProfile
The GCDualSenseGamepad profile represents any supported DualSense controller.
GCDualShockGamepadGCDualShockGamepad and GCExtendedGamepad and GCPhysicalInputProfile
The GCDualShockGamepad profile represents any supported DualShock 4 controller.
GCEulerAnglesGCMotion
A structure containing 3-axis rotation data. The angles are rotated in order or pitch then yaw then roll.
GCEventViewControllerGCEventViewController and objc2-app-kit and macOS
A view controller subclass that allows fine grained control of the user interface system’s handling of game controller events. Set an instance of this class as your root view controller if you intend to use GCController APIs for handling game controllers.
GCExtendedGamepadGCExtendedGamepad and GCPhysicalInputProfile
Apple’s documentation
GCExtendedGamepadSnapShotDataV100GCExtendedGamepadSnapshot
Apple’s documentation
GCExtendedGamepadSnapshotDeprecatedGCExtendedGamepad and GCExtendedGamepadSnapshot and GCPhysicalInputProfile
A GCExtendedGamepadSnapshot snapshot is a concrete GCExtendedGamepad implementation. It can be used directly in an application to implement controller input replays. It is also returned as the result of polling a controller.
GCExtendedGamepadSnapshotDataGCExtendedGamepadSnapshot
Apple’s documentation
GCExtendedGamepadSnapshotDataVersionDeprecatedGCExtendedGamepadSnapshot
Apple’s documentation
GCGamepadDeprecatedGCGamepad and GCPhysicalInputProfile
Apple’s documentation
GCGamepadSnapShotDataV100GCGamepadSnapshot
Apple’s documentation
GCGamepadSnapshotDeprecatedGCGamepad and GCGamepadSnapshot and GCPhysicalInputProfile
A GCGamepadSnapshot snapshot is a concrete GCGamepad implementation. It can be used directly in an application to implement controller input replays. It is also returned as the result of polling a controller.
GCGearShifterElementGCGearShifterElement
A GCGearShifterElementobject represents an attached gear shifter. Both pattern and sequential gear shifters are supported.
GCKeyboardGCKeyboard
GCKeyboard is available to an application that links to GameController.framework There are 2 ways to access keyboard paired to the system: 1: Querying for the coalescedKeyboard using [GCKeyboard coalescedKeyboard] 2: Registering for Connection/Disconnection notifications from NSNotificationCenter
GCKeyboardInputGCKeyboardInput and GCPhysicalInputProfile
Keyboard profile. Contains the current state of buttons specified in GCKeyCodes.h.
GCMicroGamepadGCMicroGamepad and GCPhysicalInputProfile
Apple’s documentation
GCMicroGamepadSnapShotDataV100GCMicroGamepadSnapshot
Apple’s documentation
GCMicroGamepadSnapshotDeprecatedGCMicroGamepad and GCMicroGamepadSnapshot and GCPhysicalInputProfile
A GCMicroGamepadSnapshot snapshot is a concrete GCMicroGamepad implementation. It can be used directly in an application to implement controller input replays. It is also returned as the result of polling a controller.
GCMicroGamepadSnapshotDataGCMicroGamepadSnapshot
Apple’s documentation
GCMicroGamepadSnapshotDataVersionDeprecatedGCMicroGamepadSnapshot
Apple’s documentation
GCMotionGCMotion
A profile for getting motion input from a controller that has the ability to measure acceleration and rotation rate.
GCMouseGCMouse
Mice are available to an application that links to GameController.framework. There are 2 ways to access mice paired to the system. Adopt both to ensure the best user experience:
GCMouseInputGCMouseInput and GCPhysicalInputProfile
Mouse profile that represent a physical mouse object with two axis cursor, two axis scroll, left button, optional right and middle buttons and optional set of auxiliary buttons.
GCPhysicalInputElementCollectionGCPhysicalInputElement
An instance of GCPhysicalInputElementCollectioncontains the collection of input elements found in a device’s physical input profile.
GCPhysicalInputProfileGCPhysicalInputProfile
A game controller profile representing physical buttons, thumbsticks, dpads, etc… on a controller.
GCPhysicalInputSourceDirectionGCPhysicalInputSource
One or more directions associated with a GCPhysicalInputSource.
GCPoint2GCTypes
Apple’s documentation
GCQuaternionGCMotion
Represents a quaternion (one way of parameterizing attitude). If q is an instance of GCQuaternion, mathematically it represents the following quaternion:
GCRacingWheelGCRacingWheel
Apple’s documentation
GCRacingWheelInputGCRacingWheelInput
Apple’s documentation
GCRacingWheelInputStateGCRacingWheelInput
Apple’s documentation
GCRotationRateGCMotion
A structure containing 3-axis rotation rate data.
GCSteeringWheelElementGCSteeringWheelElement
Apple’s documentation
GCSystemGestureStateGCControllerElement
Elements on a GCDevice can be used for system gestures. The system gesture state represents how input is handled in the app for a controller element that is bound to a system gesture.
GCTouchStateGCControllerTouchpad
Represents the current state of a touch event on a touchpad.
GCXboxGamepadGCExtendedGamepad and GCPhysicalInputProfile and GCXboxGamepad
The GCXboxGamepad profile represents any supported Xbox controller.

Constants§

GCDualSenseAdaptiveTriggerDiscretePositionCountGCDualSenseAdaptiveTrigger
The number of discrete control positions supported by the DualSense adaptive triggers. Each of these positions can be configured separately in multi-position feedback and multi-position vibration modes.

Statics§

GCControllerDidBecomeCurrentNotificationGCController
Use these constants with NSNotificationCenter to listen to a controller becoming the most recently used controller. This is a good time to swap out UI to match the new current controller, and unregister any handlers with the old current controller.
GCControllerDidConnectNotificationGCController
Use these constants with NSNotificationCenter to listen to connection and disconnection events.
GCControllerDidDisconnectNotificationGCController
Apple’s documentation
GCControllerDidStopBeingCurrentNotificationGCController
Apple’s documentation
GCControllerUserCustomizationsDidChangeNotificationGCController
Use this constant with NSNotificationCenter to listen to controller user customization events.
GCCurrentExtendedGamepadSnapshotDataVersionGCExtendedGamepadSnapshot
Apple’s documentation
GCCurrentMicroGamepadSnapshotDataVersionGCMicroGamepadSnapshot
Apple’s documentation
GCHapticDurationInfiniteGCDeviceHaptics
Apple’s documentation
GCHapticsLocalityAllGCDeviceHaptics
Apple’s documentation
GCHapticsLocalityDefaultGCDeviceHaptics
Apple’s documentation
GCHapticsLocalityHandlesGCDeviceHaptics
Apple’s documentation
GCHapticsLocalityLeftHandleGCDeviceHaptics
Apple’s documentation
GCHapticsLocalityLeftTriggerGCDeviceHaptics
Apple’s documentation
GCHapticsLocalityRightHandleGCDeviceHaptics
Apple’s documentation
GCHapticsLocalityRightTriggerGCDeviceHaptics
Apple’s documentation
GCHapticsLocalityTriggersGCDeviceHaptics
Apple’s documentation
GCInputButtonAGCInputNames
GCInputButtonBGCInputNames
GCInputButtonHomeGCInputNames
GCInputButtonMenuGCInputNames
GCInputButtonOptionsGCInputNames
GCInputButtonShareGCInputNames
GCInputButtonXGCInputNames
GCInputButtonYGCInputNames
GCInputDirectionPadGCInputNames
GCInputDirectionalCardinalDpadGCDirectionalGamepad
An optional secondary directional input surface for the directional gamepad. This input is guaranteed to be an 8-way digital dpad with physical Up, Down, Left, Right butttons.
GCInputDirectionalCenterButtonGCDirectionalGamepad
An optional button for the directional gamepad. This input represents the center button of the cardinal dpad.
GCInputDirectionalDpadGCDirectionalGamepad
The primary directional input surface for the directional gamepad
GCInputDirectionalTouchSurfaceButtonGCDirectionalGamepad
The button corresponding to pressing anywhere on the primary directional input surface for the directional gamepad
GCInputDualShockTouchpadButtonGCInputNames
GCInputDualShockTouchpadOneGCInputNames
GCInputDualShockTouchpadTwoGCInputNames
GCInputLeftBumperGCInputNames
Identifies the button element located at the top-left/right of a gamepad, between the left/right shoulder button and the gamepad’s horizontal center.
GCInputLeftPaddleGCInputNames
GCInputLeftShoulderGCInputNames
GCInputLeftThumbstickGCInputNames
GCInputLeftThumbstickButtonGCInputNames
GCInputLeftTriggerGCInputNames
GCInputMicroGamepadButtonAGCMicroGamepad
The primary button for the microgamepad
GCInputMicroGamepadButtonMenuGCMicroGamepad
The primary menu button for the microgamepad
GCInputMicroGamepadButtonXGCMicroGamepad
The secondary button for the microgamepad
GCInputMicroGamepadDpadGCMicroGamepad
The primary directional input surface for the directional gamepad
GCInputPedalAcceleratorGCInputNames
GCInputPedalBrakeGCInputNames
GCInputPedalClutchGCInputNames
GCInputRightBumperGCInputNames
Apple’s documentation
GCInputRightPaddleGCInputNames
GCInputRightShoulderGCInputNames
GCInputRightThumbstickGCInputNames
GCInputRightThumbstickButtonGCInputNames
GCInputRightTriggerGCInputNames
GCInputShifterGCInputNames
GCInputSteeringWheelGCInputNames
GCInputXboxPaddleFourGCInputNames
GCInputXboxPaddleOneGCInputNames
GCInputXboxPaddleThreeGCInputNames
GCInputXboxPaddleTwoGCInputNames
GCKeyAGCKeyNames
A set of strings that can be used to access keyboard buttons
GCKeyApplicationGCKeyNames
Apple’s documentation
GCKeyBGCKeyNames
Apple’s documentation
GCKeyBackslashGCKeyNames
Apple’s documentation
GCKeyCGCKeyNames
Apple’s documentation
GCKeyCapsLockGCKeyNames
Apple’s documentation
GCKeyCloseBracketGCKeyNames
Apple’s documentation
GCKeyCodeApplicationGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeBackslashGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeCapsLockGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeCloseBracketGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeCommaGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeDeleteForwardGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeDeleteOrBackspaceGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeDownArrowGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeEightGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeEndGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeEqualSignGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeEscapeGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF1GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF2GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF3GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF4GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF5GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF6GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF7GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF8GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF9GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF10GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF11GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF12GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF13GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF14GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF15GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF16GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF17GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF18GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF19GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeF20GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeFiveGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeFourGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeGraveAccentAndTildeGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeHomeGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeHyphenGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInsertGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInternational1GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInternational2GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInternational3GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInternational4GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInternational5GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInternational6GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInternational7GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInternational8GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeInternational9GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyAGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyBGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyCGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyDGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyEGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyFGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyGGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyHGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyIGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyJGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyKGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyLGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyMGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyNGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyOGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyPGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyQGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyRGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeySGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyTGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyUGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyVGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyWGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyXGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyYGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeyZGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad0GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad1GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad2GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad3GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad4GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad5GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad6GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad7GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad8GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypad9GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypadAsteriskGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypadEnterGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypadEqualSignGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypadHyphenGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypadNumLockGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypadPeriodGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypadPlusGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeKeypadSlashGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLANG1GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLANG2GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLANG3GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLANG4GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLANG5GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLANG6GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLANG7GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLANG8GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLANG9GCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLeftAltGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLeftArrowGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLeftControlGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLeftGUIGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeLeftShiftGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeNineGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeNonUSBackslashGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeNonUSPoundGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeOneGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeOpenBracketGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodePageDownGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodePageUpGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodePauseGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodePeriodGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodePowerGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodePrintScreenGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeQuoteGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeReturnOrEnterGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeRightAltGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeRightArrowGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeRightControlGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeRightGUIGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeRightShiftGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeScrollLockGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeSemicolonGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeSevenGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeSixGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeSlashGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeSpacebarGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeTabGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeThreeGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeTwoGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeUpArrowGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCodeZeroGCKeyCodes and objc2-core-foundation
Apple’s documentation
GCKeyCommaGCKeyNames
Apple’s documentation
GCKeyDGCKeyNames
Apple’s documentation
GCKeyDeleteForwardGCKeyNames
Apple’s documentation
GCKeyDeleteOrBackspaceGCKeyNames
Apple’s documentation
GCKeyDownArrowGCKeyNames
Apple’s documentation
GCKeyEGCKeyNames
Apple’s documentation
GCKeyEightGCKeyNames
Apple’s documentation
GCKeyEndGCKeyNames
Apple’s documentation
GCKeyEqualSignGCKeyNames
Apple’s documentation
GCKeyEscapeGCKeyNames
Apple’s documentation
GCKeyFGCKeyNames
Apple’s documentation
GCKeyF1GCKeyNames
Apple’s documentation
GCKeyF2GCKeyNames
Apple’s documentation
GCKeyF3GCKeyNames
Apple’s documentation
GCKeyF4GCKeyNames
Apple’s documentation
GCKeyF5GCKeyNames
Apple’s documentation
GCKeyF6GCKeyNames
Apple’s documentation
GCKeyF7GCKeyNames
Apple’s documentation
GCKeyF8GCKeyNames
Apple’s documentation
GCKeyF9GCKeyNames
Apple’s documentation
GCKeyF10GCKeyNames
Apple’s documentation
GCKeyF11GCKeyNames
Apple’s documentation
GCKeyF12GCKeyNames
Apple’s documentation
GCKeyF13GCKeyNames
Apple’s documentation
GCKeyF14GCKeyNames
Apple’s documentation
GCKeyF15GCKeyNames
Apple’s documentation
GCKeyF16GCKeyNames
Apple’s documentation
GCKeyF17GCKeyNames
Apple’s documentation
GCKeyF18GCKeyNames
Apple’s documentation
GCKeyF19GCKeyNames
Apple’s documentation
GCKeyF20GCKeyNames
Apple’s documentation
GCKeyFiveGCKeyNames
Apple’s documentation
GCKeyFourGCKeyNames
Apple’s documentation
GCKeyGGCKeyNames
Apple’s documentation
GCKeyGraveAccentAndTildeGCKeyNames
Apple’s documentation
GCKeyHGCKeyNames
Apple’s documentation
GCKeyHomeGCKeyNames
Apple’s documentation
GCKeyHyphenGCKeyNames
Apple’s documentation
GCKeyIGCKeyNames
Apple’s documentation
GCKeyInsertGCKeyNames
Apple’s documentation
GCKeyInternational1GCKeyNames
Apple’s documentation
GCKeyInternational2GCKeyNames
Apple’s documentation
GCKeyInternational3GCKeyNames
Apple’s documentation
GCKeyInternational4GCKeyNames
Apple’s documentation
GCKeyInternational5GCKeyNames
Apple’s documentation
GCKeyInternational6GCKeyNames
Apple’s documentation
GCKeyInternational7GCKeyNames
Apple’s documentation
GCKeyInternational8GCKeyNames
Apple’s documentation
GCKeyInternational9GCKeyNames
Apple’s documentation
GCKeyJGCKeyNames
Apple’s documentation
GCKeyKGCKeyNames
Apple’s documentation
GCKeyKeypad0GCKeyNames
Apple’s documentation
GCKeyKeypad1GCKeyNames
Apple’s documentation
GCKeyKeypad2GCKeyNames
Apple’s documentation
GCKeyKeypad3GCKeyNames
Apple’s documentation
GCKeyKeypad4GCKeyNames
Apple’s documentation
GCKeyKeypad5GCKeyNames
Apple’s documentation
GCKeyKeypad6GCKeyNames
Apple’s documentation
GCKeyKeypad7GCKeyNames
Apple’s documentation
GCKeyKeypad8GCKeyNames
Apple’s documentation
GCKeyKeypad9GCKeyNames
Apple’s documentation
GCKeyKeypadAsteriskGCKeyNames
Apple’s documentation
GCKeyKeypadEnterGCKeyNames
Apple’s documentation
GCKeyKeypadEqualSignGCKeyNames
Apple’s documentation
GCKeyKeypadHyphenGCKeyNames
Apple’s documentation
GCKeyKeypadNumLockGCKeyNames
Apple’s documentation
GCKeyKeypadPeriodGCKeyNames
Apple’s documentation
GCKeyKeypadPlusGCKeyNames
Apple’s documentation
GCKeyKeypadSlashGCKeyNames
Apple’s documentation
GCKeyLGCKeyNames
Apple’s documentation
GCKeyLANG1GCKeyNames
Apple’s documentation
GCKeyLANG2GCKeyNames
Apple’s documentation
GCKeyLANG3GCKeyNames
Apple’s documentation
GCKeyLANG4GCKeyNames
Apple’s documentation
GCKeyLANG5GCKeyNames
Apple’s documentation
GCKeyLANG6GCKeyNames
Apple’s documentation
GCKeyLANG7GCKeyNames
Apple’s documentation
GCKeyLANG8GCKeyNames
Apple’s documentation
GCKeyLANG9GCKeyNames
Apple’s documentation
GCKeyLeftAltGCKeyNames
Apple’s documentation
GCKeyLeftArrowGCKeyNames
Apple’s documentation
GCKeyLeftControlGCKeyNames
Apple’s documentation
GCKeyLeftGUIGCKeyNames
Apple’s documentation
GCKeyLeftShiftGCKeyNames
Apple’s documentation
GCKeyMGCKeyNames
Apple’s documentation
GCKeyNGCKeyNames
Apple’s documentation
GCKeyNineGCKeyNames
Apple’s documentation
GCKeyNonUSBackslashGCKeyNames
Apple’s documentation
GCKeyNonUSPoundGCKeyNames
Apple’s documentation
GCKeyOGCKeyNames
Apple’s documentation
GCKeyOneGCKeyNames
Apple’s documentation
GCKeyOpenBracketGCKeyNames
Apple’s documentation
GCKeyPGCKeyNames
Apple’s documentation
GCKeyPageDownGCKeyNames
Apple’s documentation
GCKeyPageUpGCKeyNames
Apple’s documentation
GCKeyPauseGCKeyNames
Apple’s documentation
GCKeyPeriodGCKeyNames
Apple’s documentation
GCKeyPowerGCKeyNames
Apple’s documentation
GCKeyPrintScreenGCKeyNames
Apple’s documentation
GCKeyQGCKeyNames
Apple’s documentation
GCKeyQuoteGCKeyNames
Apple’s documentation
GCKeyRGCKeyNames
Apple’s documentation
GCKeyReturnOrEnterGCKeyNames
Apple’s documentation
GCKeyRightAltGCKeyNames
Apple’s documentation
GCKeyRightArrowGCKeyNames
Apple’s documentation
GCKeyRightControlGCKeyNames
Apple’s documentation
GCKeyRightGUIGCKeyNames
Apple’s documentation
GCKeyRightShiftGCKeyNames
Apple’s documentation
GCKeySGCKeyNames
Apple’s documentation
GCKeyScrollLockGCKeyNames
Apple’s documentation
GCKeySemicolonGCKeyNames
Apple’s documentation
GCKeySevenGCKeyNames
Apple’s documentation
GCKeySixGCKeyNames
Apple’s documentation
GCKeySlashGCKeyNames
Apple’s documentation
GCKeySpacebarGCKeyNames
Apple’s documentation
GCKeyTGCKeyNames
Apple’s documentation
GCKeyTabGCKeyNames
Apple’s documentation
GCKeyThreeGCKeyNames
Apple’s documentation
GCKeyTwoGCKeyNames
Apple’s documentation
GCKeyUGCKeyNames
Apple’s documentation
GCKeyUpArrowGCKeyNames
Apple’s documentation
GCKeyVGCKeyNames
Apple’s documentation
GCKeyWGCKeyNames
Apple’s documentation
GCKeyXGCKeyNames
Apple’s documentation
GCKeyYGCKeyNames
Apple’s documentation
GCKeyZGCKeyNames
Apple’s documentation
GCKeyZeroGCKeyNames
Apple’s documentation
GCKeyboardDidConnectNotificationGCKeyboard
Use these constants with NSNotificationCenter to listen to connection and disconnection events
GCKeyboardDidDisconnectNotificationGCKeyboard
Apple’s documentation
GCMouseDidBecomeCurrentNotificationGCMouse
Use these constants with NSNotificationCenter to listen to a controller becoming the most recently used mouse. This is a good time to swap out UI to match the new current mouse, and unregister any handlers with the old current controller.
GCMouseDidConnectNotificationGCMouse
Use these constants with NSNotificationCenter to listen to connection and disconnection events.
GCMouseDidDisconnectNotificationGCMouse
Apple’s documentation
GCMouseDidStopBeingCurrentNotificationGCMouse
Apple’s documentation
GCPoint2ZeroGCTypes
Apple’s documentation
GCProductCategoryArcadeStickGCProductCategories
Apple’s documentation
GCProductCategoryCoalescedRemoteGCProductCategories
If multiple remotes have been combined into one, the device will have the GCProductCategoryCoalescedRemote product category.
GCProductCategoryControlCenterRemoteGCProductCategories
Users can use Apple TV Remote controls in Control Center on an iOS or iPadOS device.
GCProductCategoryDualSenseGCProductCategories
Game Controller Product Categories
GCProductCategoryDualShock4GCProductCategories
Apple’s documentation
GCProductCategoryHIDGCProductCategories
Apple’s documentation
GCProductCategoryKeyboardGCProductCategories
Apple’s documentation
GCProductCategoryMFiGCProductCategories
Apple’s documentation
GCProductCategoryMouseGCProductCategories
Keyboards and Mice Product Categories
GCProductCategorySiriRemote1stGenGCProductCategories
The Siri Remote (1st generation), or Apple TV Remote (1st generation), was first introduced in 2015. It features a Touch surface for touch navigation, and supports device motion.
GCProductCategorySiriRemote2ndGenGCProductCategories
The Siri Remote (2nd generation), or Apple TV Remote (2nd generation), was first introduced in 2021. It features a touch-enabled clickpad for navigation.
GCProductCategoryUniversalElectronicsRemoteGCProductCategories
The Universal Electronics remote is an infrared and Bluetooth Low Energy remote designed to work with the Apple TV.
GCProductCategoryXboxOneGCProductCategories
Apple’s documentation
GCRacingWheelDidConnectNotificationGCRacingWheel
Use these constants with NSNotificationCenter to listen to connection and disconnection events.
GCRacingWheelDidDisconnectNotificationGCRacingWheel
Apple’s documentation

Traits§

GCAxis2DInputGCAxis2DInput
An object conforming to GCAxis2DInputrepresents an input that produces a pair of normalized values - between [-1, 1] - along two axes with fixed origin. The origin - a value of 0 - corresponds the neutral state of the input.
GCAxisElementGCAxisElement and GCPhysicalInputElement
Apple’s documentation
GCAxisElementNameGCInputNames
Apple’s documentation
GCAxisInputGCAxisInput
An object conforming to GCAxisInputrepresents an input that produces normalized values - between [-1, 1] - along an axis with a fixed origin. The origin - a value of 0 - corresponds the neutral state of the input.
GCButtonElementGCButtonElement and GCPhysicalInputElement
An object conforming to GCButtonElementrepresents a momentary switch, such as a push button. A button’s input only asserts while the user is interacting with it, and then returns to a preferred state (not pressed, not touched).
GCButtonElementNameGCInputNames
Apple’s documentation
GCDeviceGCDevice
Apple’s documentation
GCDevicePhysicalInputGCDevicePhysicalInput and GCDevicePhysicalInputState
An objecting conforming to GCDevicePhysicalInputprovides properties and methods for accessing common physical elements - buttons, thumbsticks, dpads, etc - of a device.
GCDevicePhysicalInputStateGCDevicePhysicalInputState
An object conforming to GCDevicePhysicalInputStatecontains the state of a device’s physical inputs. This may be either the “live” physical input state if the same object also conforms to GCDevicePhysicalInput,or a snapshot of the physical input state.
GCDevicePhysicalInputStateDiffGCDevicePhysicalInputStateDiff
An object conforming to the GCDevicePhysicalInputStateDiffprotocol contains the input state differences between the current and previous GCDevicePhysicalInputStateobjects returned from the -nextInputStatemethod of GCDevicePhysicalInput.
GCDirectionPadElementGCDirectionPadElement and GCPhysicalInputElement
An object conforming to GCDirectionPadElementrepresents a four-way directional control element.
GCDirectionPadElementNameGCInputNames
Apple’s documentation
GCLinearInputGCLinearInput
An object conforming to GCLinearInputrepresents an input that produces normalized values in the unit interval - between [0, 1].
GCPhysicalInputElementGCPhysicalInputElement
The GCPhysicalInputElementprotocol is a base protocol for specific types of elements that represent controls on a device.
GCPhysicalInputElementNameGCInputNames
Apple’s documentation
GCPhysicalInputSourceGCPhysicalInputSource
A description of the actual physical input element that a user interacts with to manipulate the the value of an input that is exposed to the app.
GCPressedStateInputGCPressedStateInput
An object conforming to GCPressedStateInputrepresents the pressed state of an element, typically a button.
GCRelativeInputGCRelativeInput
An object conforming to GCRelativeInputrepresents an input that reports its change in position along an axis (delta) since the previous event. Relative inputs have no fixed origin from which a coordinate syatem can be defined.
GCSwitchElementGCPhysicalInputElement and GCSwitchElement
An object conforming to GCSwitchElementrepresents a latching switch. A switch may be in one of several positions, and remains in its last position after the user stops interacting with it.
GCSwitchElementNameGCInputNames
Apple’s documentation
GCSwitchPositionInputGCSwitchPositionInput
Apple’s documentation
GCTouchedStateInputGCTouchedStateInput
An object conforming to GCTouchedStateInputrepresents the touched state of an element.
NSValueGCTypesGCTypes
Category “GCTypes” on NSValue.

Functions§

GCExtendedGamepadSnapShotDataV100FromNSDataDeprecatedGCExtendedGamepadSnapshot
Fills out a v100 snapshot from any compatible NSData source
GCExtendedGamepadSnapshotDataFromNSDataDeprecatedGCExtendedGamepadSnapshot
Fills out a snapshot from any compatible NSData source
GCGamepadSnapShotDataV100FromNSDataDeprecatedGCGamepadSnapshot
Fills out a v100 snapshot from any compatible NSData source
GCInputBackLeftButtonGCInputNames
GCInputBackRightButtonGCInputNames
GCMicroGamepadSnapShotDataV100FromNSDataDeprecatedGCMicroGamepadSnapshot
Fills out a v100 snapshot from any compatible NSData source
GCMicroGamepadSnapshotDataFromNSDataDeprecatedGCMicroGamepadSnapshot
Fills out a snapshot from any compatible NSData source
NSDataFromGCExtendedGamepadSnapShotDataV100DeprecatedGCExtendedGamepadSnapshot
Creates an NSData object from a v100 snapshot. If the version and size is not set in the snapshot the data will automatically have version 0x100 and sizeof(GCExtendedGamepadSnapShotDataV100) set as the values implicitly.
NSDataFromGCExtendedGamepadSnapshotDataDeprecatedGCExtendedGamepadSnapshot
Creates an NSData object from a snapshot. If the version and size is not set in the snapshot the data will automatically have the version GCCurrentExtendedGamepadSnapshotDataVersion and sizeof(GCExtendedGamepadSnapshotData) set as the values implicitly.
NSDataFromGCGamepadSnapShotDataV100DeprecatedGCGamepadSnapshot
Creates an NSData object from a v100 snapshot. If the version and size is not set in the snapshot the data will automatically have version 0x100 and sizeof(GCGamepadSnapShotDataV100) set as the values implicitly.
NSDataFromGCMicroGamepadSnapShotDataV100DeprecatedGCMicroGamepadSnapshot
Creates an NSData object from a v100 snapshot. If the version and size is not set in the snapshot the data will automatically have version 0x100 and sizeof(GCMicroGamepadSnapShotDataV100) set as the values implicitly.
NSDataFromGCMicroGamepadSnapshotDataDeprecatedGCMicroGamepadSnapshot
Creates an NSData object from a snapshot. If the version and size is not set in the snapshot the data will automatically have version GCCurrentMicroGamepadSnapshotDataVersion and sizeof(GCMicroGamepadSnapshotData) set as the values implicitly.
NSStringFromGCPoint2GCTypes

Type Aliases§

GCControllerAxisValueChangedHandlerGCControllerAxisInput and GCControllerElement and block2
Set this block if you want to be notified when the value on this axis changes.
GCControllerButtonTouchedChangedHandlerGCControllerButtonInput and GCControllerElement and block2
Set this block if you want to be notified when the touched state on this button changes.
GCControllerButtonValueChangedHandlerGCControllerButtonInput and GCControllerElement and block2
Set this block if you want to be notified when the value on this button changes.
GCControllerDirectionPadValueChangedHandlerGCControllerDirectionPad and GCControllerElement and block2
Set this block if you want to be notified when the value on this axis changes.
GCControllerTouchpadHandlerGCControllerElement and GCControllerTouchpad and block2
Set this block if you want to be notified when an axis or the touch state changes.
GCExtendedGamepadValueChangedHandlerGCControllerElement and GCExtendedGamepad and GCPhysicalInputProfile and block2
Set this block if you want to be notified when a value on a element changed. If multiple elements have changed this block will be called for each element that changed. As elements in a collection, such as the axis in a dpad, tend to change at the same time and thus will only call this once with the collection as the element.
GCGamepadValueChangedHandlerGCControllerElement and GCGamepad and GCPhysicalInputProfile and block2
Apple’s documentation
GCHapticsLocalityGCDeviceHaptics
A GCHapticsLocality represents the locations of haptic actuators on a controller. You can create a haptic engine with a given GCHapticsLocality, and any patterns you send to that engine will play on all specified actuators.
GCInputAxisNameGCInputNames
GCInputButtonNameGCInputNames
GCInputDirectionPadNameGCInputNames
GCInputElementNameGCInputNames
GCInputSwitchNameGCInputNames
GCKeyCodeGCKeyCodes and objc2-core-foundation
A set of low level key codes that can be used to access keyboard buttons
GCKeyboardValueChangedHandlerGCControllerButtonInput and GCControllerElement and GCKeyCodes and GCKeyboardInput and GCPhysicalInputProfile and block2 and objc2-core-foundation
Set this block if you want to be notified when a value of a key changed. If multiple keys have changed this block will be called cd for each key that changed.
GCMicroGamepadValueChangedHandlerGCControllerElement and GCMicroGamepad and GCPhysicalInputProfile and block2
Set this block if you want to be notified when a value on a element changed. If multiple elements have changed this block will be called for each element that changed. As elements in a collection, such as the axis in a dpad, tend to change at the same time and thus will only call this once with the collection as the element.
GCMotionValueChangedHandlerGCMotion and block2
Called whenever a motion value changed.
GCMouseMovedGCMouseInput and GCPhysicalInputProfile and block2
Set this block if you want to be notified when the mouse was moved