#pragma section-numbers off #pragma disable-camelcase || DRAFT|| = SDL_JoystickOpen = Use this function to open a joystick for use. <> == Syntax == {{{#!highlight cpp SDL_Joystick* SDL_JoystickOpen(int device_index) }}} == Function Parameters == ||'''device_index'''||the index of the joystick to query|| == Return Value == Returns a joystick identifier or NULL if an error occurred; call [[SDL_GetError]]() for more information. == Code Examples == {{{#!highlight cpp SDL_Joystick *joy; // Initialize the joystick subsystem SDL_InitSubSystem(SDL_INIT_JOYSTICK); // Check for joystick if (SDL_NumJoysticks() > 0) { // Open joystick joy = SDL_JoystickOpen(0); if (joy) { printf("Opened Joystick 0\n"); printf("Name: %s\n", SDL_JoystickNameForIndex(0)); printf("Number of Axes: %d\n", SDL_JoystickNumAxes(joy)); printf("Number of Buttons: %d\n", SDL_JoystickNumButtons(joy)); printf("Number of Balls: %d\n", SDL_JoystickNumBalls(joy)); } else { printf("Couldn't open Joystick 0\n"); } // Close if opened if (SDL_JoystickGetAttached(joy)) { SDL_JoystickClose(joy); } } }}} == Remarks == The device_index passed as an argument refers to the N'th joystick presently recognized by SDL on the system. It is '''NOT''' the same as the instance ID used to identify the joystick in future events. See [[SDL_JoystickInstanceID]]() for more details about instance IDs. The joystick subsystem must be initialized before a joystick can be opened for use. == Related Functions == .[[SDL_JoystickClose]] .[[SDL_JoystickInstanceID]] /* <> */ ---- [[CategoryAPI]], [[CategoryJoystick]]