]> Shamusworld >> Repos - virtualjaguar/blobdiff - src/gui/gamepad.h
Added logging to Gamepad::CheckButtonPressed().
[virtualjaguar] / src / gui / gamepad.h
index 6b4993a8d163be76ad7ae92f2c4d2e4dbdae3f7f..902dae128b2694ec888c83355a6ccd6948039046 100644 (file)
 #define JOY_KEY                        0x000000
 #define JOY_BUTTON             0x010000
 #define JOY_HAT                        0x020000
+#define JOY_AXIS               0x040000
 
-#define        JOY_TYPE_MASK   0xFF0000
-#define JOY_BUTTON_MASK 0x00FFFF
-#define JOY_HATNUM_MASK        0x0000F8
-#define JOY_HATBUT_MASK        0x000007
+#define        JOY_TYPE_MASK           0xFF0000
+#define JOY_BUTTON_MASK                0x00FFFF
+#define JOY_HATNUM_MASK                0x0000F8
+#define JOY_HATBUT_MASK                0x000007
+#define JOY_AXISNUM_MASK       0x00FFFE
+#define JOY_AXISDIR_MASK       0x000001
 
 #include <stdint.h>
 #include "SDL.h"
@@ -27,7 +30,7 @@
 class Gamepad
 {
 // really should make all methods and members be static so that we can
-// call this stuff without instantiating one. :-)
+// call this stuff without instantiating one. :-) [DONE]
        public:
                Gamepad();
                ~Gamepad();
@@ -35,19 +38,24 @@ class Gamepad
                // Class methods...
                static void AllocateJoysticks(void);
                static void DeallocateJoysticks(void);
+               static const char * GetJoystickName(int joystickID);
                static bool GetState(int joystickID, int buttonID);
                static int CheckButtonPressed(void);
                static int GetButtonID(void);
                static int GetJoystickID(void);
                static void Update(void);
+               static void DumpJoystickStatesToLog(void);
 
                // Support up to 8 gamepads
                static int numJoysticks;
                static SDL_Joystick * pad[8];
+               static char padName[8][128];
                static int numButtons[8];
+               static int numAxes[8];
                static int numHats[8];
                static bool button[8][256];
                static uint8_t hat[8][32];
+               static int32_t axis[8][32];
 };
 
 #endif // __GAMEPAD_H__