From 8cb77fa915e5c907c7a48120549bb0ae92b2a8b4 Mon Sep 17 00:00:00 2001 From: Themaister Date: Sun, 29 Sep 2013 20:52:51 +0200 Subject: [PATCH] Add get_joypad_driver to more input drivers. --- input/dinput.c | 7 +++++++ input/linuxraw_input.c | 7 +++++++ input/sdl_input.c | 7 +++++++ 3 files changed, 21 insertions(+) diff --git a/input/dinput.c b/input/dinput.c index ac70e2d64d..e8f5674be2 100644 --- a/input/dinput.c +++ b/input/dinput.c @@ -340,6 +340,12 @@ static bool dinput_set_rumble(void *data, unsigned port, enum retro_rumble_effec return input_joypad_set_rumble(di->joypad, port, effect, strength); } +static const rarch_joypad_driver_t *dinput_get_joypad_driver(void *data) +{ + struct dinput_input *di = (struct dinput_input*)data; + return di->joypad; +} + const input_driver_t input_dinput = { dinput_init, dinput_poll, @@ -351,6 +357,7 @@ const input_driver_t input_dinput = { dinput_grab_mouse, dinput_set_rumble, + dinput_get_joypad_driver, }; // Keep track of which pad indexes are 360 controllers diff --git a/input/linuxraw_input.c b/input/linuxraw_input.c index 5467ccc68d..507f46e20d 100644 --- a/input/linuxraw_input.c +++ b/input/linuxraw_input.c @@ -291,6 +291,12 @@ static bool linuxraw_set_rumble(void *data, unsigned port, enum retro_rumble_eff return input_joypad_set_rumble(linuxraw->joypad, port, effect, strength); } +static const rarch_joypad_driver_t *linuxraw_get_joypad_driver(void *data) +{ + linuxraw_input_t *linuxraw = (linuxraw_input_t*)data; + return linuxraw->joypad; +} + static void linuxraw_input_poll(void *data) { linuxraw_input_t *linuxraw = (linuxraw_input_t*)data; @@ -325,4 +331,5 @@ const input_driver_t input_linuxraw = { "linuxraw", NULL, linuxraw_set_rumble, + linuxraw_get_joypad_driver, }; diff --git a/input/sdl_input.c b/input/sdl_input.c index 64e40b05aa..9b1262938d 100644 --- a/input/sdl_input.c +++ b/input/sdl_input.c @@ -220,6 +220,12 @@ static bool sdl_set_rumble(void *data, unsigned port, enum retro_rumble_effect e return input_joypad_set_rumble(sdl->joypad, port, effect, strength); } +static const rarch_joypad_driver_t *sdl_get_joypad_driver(void *data) +{ + sdl_input_t *sdl = (sdl_input_t*)data; + return sdl->joypad; +} + static void sdl_poll_mouse(sdl_input_t *sdl) { Uint8 btn = SDL_GetRelativeMouseState(&sdl->mouse_x, &sdl->mouse_y); @@ -248,5 +254,6 @@ const input_driver_t input_sdl = { "sdl", NULL, sdl_set_rumble, + sdl_get_joypad_driver, };