Files
Aerofoil/PortabilityLayer/InputManager.h
2019-12-31 03:55:17 -05:00

22 lines
525 B
C++

#pragma once
#include "GpVOSEvent.h"
struct GpKeyboardInputEvent;
struct GpGamepadInputEvent;
struct KeyDownStates;
namespace PortabilityLayer
{
class InputManager
{
public:
virtual void GetKeys(KeyDownStates &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();
};
}