Files
Aerofoil/PortabilityLayer/InputManager.h
2019-12-29 17:39:19 -05:00

22 lines
511 B
C++

#pragma once
#include "GpVOSEvent.h"
struct GpKeyboardInputEvent;
struct GpGamepadInputEvent;
struct KeyMap;
namespace PortabilityLayer
{
class InputManager
{
public:
virtual void GetKeys(KeyMap &keys16) const = 0;
virtual void ApplyKeyboardEvent(const GpKeyboardInputEvent &vosEvent) = 0;
virtual void ApplyGamepadEvent(const GpGamepadInputEvent &vosEvent) = 0;
virtual int16_t GetGamepadAxis(unsigned int playerNum, GpGamepadAxis_t gamepadAxis) = 0;
static InputManager *GetInstance();
};
}