77 lines
1.8 KiB
C++
77 lines
1.8 KiB
C++
#ifndef __ORBIS_INPUT_H__
|
|
#define __ORBIS_INPUT_H__
|
|
|
|
#include <pad.h>
|
|
#include <user_service.h>
|
|
|
|
#define ORBIS_INPUT_INVALID_PORT -1
|
|
|
|
namespace raki
|
|
{
|
|
|
|
class OrbisJoy
|
|
{
|
|
// static const u32 PAD_L3 = SCE_PAD_BUTTON_L3;
|
|
// static const u32 PAD_R3 = SCE_PAD_BUTTON_R3;
|
|
// static const u32 PAD_OPTIONS = SCE_PAD_BUTTON_OPTIONS;
|
|
// static const u32 PAD_UP = SCE_PAD_BUTTON_UP;
|
|
// static const u32 PAD_RIGHT = SCE_PAD_BUTTON_RIGHT;
|
|
// static const u32 PAD_DOWN = SCE_PAD_BUTTON_DOWN;
|
|
// static const u32 PAD_LEFT = SCE_PAD_BUTTON_LEFT;
|
|
// static const u32 PAD_L2 = SCE_PAD_BUTTON_L2;
|
|
// static const u32 PAD_R2 = SCE_PAD_BUTTON_R2;
|
|
// static const u32 PAD_L1 = SCE_PAD_BUTTON_L1;
|
|
// static const u32 PAD_R1 = SCE_PAD_BUTTON_R1;
|
|
// static const u32 PAD_TRIANGLE = SCE_PAD_BUTTON_TRIANGLE;
|
|
// static const u32 PAD_CIRCLE = SCE_PAD_BUTTON_CIRCLE;
|
|
// static const u32 PAD_CROSS = SCE_PAD_BUTTON_CROSS;
|
|
// static const u32 PAD_SQUARE = SCE_PAD_BUTTON_SQUARE;
|
|
// static const u32 PAD_TOUCH_PAD = SCE_PAD_BUTTON_TOUCH_PAD;
|
|
|
|
public:
|
|
OrbisJoy();
|
|
~OrbisJoy();
|
|
|
|
void init( i32 _userId );
|
|
void done();
|
|
|
|
void update();
|
|
|
|
bool isConnected();
|
|
|
|
bool isButtonPressed( u32 _button );
|
|
bool getLStickVal( u8 _axe, u8& _val );
|
|
bool getRStickVal( u8 _axe, u8& _val );
|
|
bool getL2Val( u8& _val );
|
|
bool gerR2Val( u8& _val );
|
|
|
|
protected:
|
|
i32 m_portHandle;
|
|
|
|
ScePadData m_controllerState;
|
|
};
|
|
|
|
class OrbisInput
|
|
{
|
|
public:
|
|
OrbisInput();
|
|
~OrbisInput();
|
|
|
|
void init();
|
|
void done();
|
|
|
|
void update();
|
|
|
|
bool isButtonPressed( u8 _controllerId, u32 _button );
|
|
bool getLStickVal( u8 _controllerId, u8 _axe, u8& _val );
|
|
bool getRStickVal( u8 _controllerId, u8 _axe, u8& _val );
|
|
bool getL2Val( u8 _controllerId, u8& _val );
|
|
bool getR2Val( u8 _controllerId, u8& _val );
|
|
|
|
protected:
|
|
OrbisJoy m_joys[SCE_USER_SERVICE_MAX_LOGIN_USERS];
|
|
};
|
|
|
|
}
|
|
|
|
#endif //__ORBIS_INPUT_H__
|