aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/input/joypad.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libjin/input/joypad.h')
-rw-r--r--src/libjin/input/joypad.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/libjin/input/joypad.h b/src/libjin/input/joypad.h
new file mode 100644
index 0000000..fb5dc38
--- /dev/null
+++ b/src/libjin/input/joypad.h
@@ -0,0 +1,56 @@
+#ifndef __JE_JOYPAD_H__
+#define __JE_JOYPAD_H__
+
+#include <SDL2/SDL.h>
+
+namespace JinEngine
+{
+ namespace Input
+ {
+
+ ///
+ ///
+ ///
+ inline const char* getJoyButtonName(int button)
+ {
+ switch (button)
+ {
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_A: return "A"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_B : return "B"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_X : return "X"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_Y: return "Y"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_BACK: return "Back"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_GUIDE: return "Guide"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_START: return "Start"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_LEFTSTICK: return "LeftStick"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_RIGHTSTICK: return "RightStick"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_LEFTSHOULDER: return "LeftShoulder"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_RIGHTSHOULDER: return "RightShoulder"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_DPAD_UP: return "DpadUp"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_DPAD_DOWN: return "DpadDown"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_DPAD_LEFT: return "DpadLeft"; break;
+ case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_DPAD_RIGHT: return "DpadRight"; break;
+ default: return NULL;
+ }
+ }
+
+ ///
+ ///
+ ///
+ inline const char* getJoyAxisName(int axis)
+ {
+ switch (axis)
+ {
+ case SDL_GameControllerAxis::SDL_CONTROLLER_AXIS_LEFTX: return "LeftX"; break;
+ case SDL_GameControllerAxis::SDL_CONTROLLER_AXIS_LEFTY: return "LeftY"; break;
+ case SDL_GameControllerAxis::SDL_CONTROLLER_AXIS_RIGHTX: return "RightX"; break;
+ case SDL_GameControllerAxis::SDL_CONTROLLER_AXIS_RIGHTY: return "RightY"; break;
+ case SDL_GameControllerAxis::SDL_CONTROLLER_AXIS_TRIGGERLEFT: return "TriggerLeft"; break;
+ case SDL_GameControllerAxis::SDL_CONTROLLER_AXIS_TRIGGERRIGHT: return "TriggerRight"; break;
+ }
+ }
+
+ } // namespace Input
+} // namespace JinEngine
+
+#endif // __JE_JOYPAD_H__