20#ifdef OBJFWHID_LOCAL_INCLUDES
24# if defined(__has_feature) && __has_feature(modules)
27# import <ObjFW/OFObject.h>
28# import <ObjFW/OFString.h>
33#import "OHExtendedGamepad.h"
35OF_ASSUME_NONNULL_BEGIN
37@class OFArray OF_GENERIC(ObjectType);
39@class OHGameControllerProfile;
51#ifdef OF_HAVE_CLASS_PROPERTIES
52@property (
class, readonly, nonatomic)
53 OFArray <OHGameController *> *controllers;
59@property (readonly, nonatomic, copy)
OFString *name;
74@property (readonly, nonatomic) id <OHGameControllerProfile> profile;
80@property OF_NULLABLE_PROPERTY (readonly, nonatomic) id <OHGamepad>
gamepad;
86@property OF_NULLABLE_PROPERTY (readonly, nonatomic)
87 id <OHExtendedGamepad> extendedGamepad;
96- (instancetype)init OF_UNAVAILABLE;
112extern const uint16_t OHVendorIDSony;
113extern const uint16_t OHVendorIDNintendo;
114extern const uint16_t OHVendorIDGoogle;
115extern const uint16_t OHProductIDDualShock4;
116extern const uint16_t OHProductIDDualSense;
117extern const uint16_t OHProductIDLeftJoyCon;
118extern const uint16_t OHProductIDRightJoyCon;
119extern const uint16_t OHProductIDN64Controller;
120extern const uint16_t OHProductIDStadiaController;
An abstract class for storing objects in an array.
Definition OFArray.h:109
Provides a way to store a number in an object.
Definition OFNumber.h:47
The root class for all other classes inside ObjFW.
Definition OFObject.h:692
A class for handling strings.
Definition OFString.h:143
A class for reading state from a game controller.
Definition OHGameController.h:47
OFNumber * productID
The product ID of the controller or nil if unavailable.
Definition OHGameController.h:69
OFNumber * vendorID
The vendor ID of the controller or nil if unavailable.
Definition OHGameController.h:64
id< OHGamepad > gamepad
The gamepad profile for the game controller, or nil if not supported.
Definition OHGameController.h:80