sig
  type t = Sdljoystick.t
  external num_joysticks : unit -> int = "caml_SDL_NumJoysticks"
  external name_for_index : device_index:int -> string
    = "caml_SDL_JoystickNameForIndex"
  external j_open : device_index:int -> Sdl.Joystick.t
    = "caml_SDL_JoystickOpen"
  external close : Sdl.Joystick.t -> unit = "caml_SDL_JoystickClose"
  external num_axes : Sdl.Joystick.t -> int = "caml_SDL_JoystickNumAxes"
  external num_hats : Sdl.Joystick.t -> int = "caml_SDL_JoystickNumHats"
  external get_axis : Sdl.Joystick.t -> axis:int -> int
    = "caml_SDL_JoystickGetAxis"
  external get_button : Sdl.Joystick.t -> button:int -> int
    = "caml_SDL_JoystickGetButton"
end