00001
00002
00003 #ifndef NV_GAMEPAD_ANDROID_H
00004 #define NV_GAMEPAD_ANDROID_H
00005
00006 #include <NvFoundation.h>
00007
00010
00011 #include <NvGamepad/NvGamepad.h>
00012
00013 struct AInputEvent;
00014 typedef struct AInputEvent AInputEvent;
00015
00024 class NvGamepadAndroid : public NvGamepad {
00025 public:
00026 NvGamepadAndroid();
00027 virtual ~NvGamepadAndroid();
00028
00042 virtual bool pollGamepads(AInputEvent* event, uint32_t& changedMask);
00043
00044 virtual bool getState(int32_t padID, State& state);
00045 virtual void setMaxGamepadCount(int32_t max);
00046 virtual int32_t getMaxGamepadCount();
00047
00048 protected:
00049 static void ProcessDPAD(AInputEvent* event, State& state);
00050
00051 uint32_t mCurrentTimestamp;
00052 uint32_t* mLastReturnedTimestamps;
00053 State* mStates;
00054 };
00055
00056 #endif