Input & Resource Managers
This commit is contained in:
@ -24,10 +24,34 @@ namespace ia::iae
|
||||
{
|
||||
class InputManager
|
||||
{
|
||||
public:
|
||||
public:
|
||||
STATIC VOID Initialize();
|
||||
STATIC VOID Terminate();
|
||||
|
||||
STATIC VOID OnSDLEvent(IN SDL_Event* event);
|
||||
STATIC VOID OnSDLEvent(IN SDL_Event *event);
|
||||
|
||||
STATIC Vec2 GetAxis();
|
||||
STATIC VOID SwitchModeToText();
|
||||
STATIC VOID SwitchModeToAction();
|
||||
STATIC Vec2 GetPointerPosition();
|
||||
STATIC BOOL IsKeyDown(IN InputKey key);
|
||||
STATIC BOOL WasKeyPressed(IN InputKey key);
|
||||
STATIC BOOL WasKeyReleased(IN InputKey key);
|
||||
STATIC BOOL IsActionDown(IN Handle action);
|
||||
STATIC BOOL WasActionPressed(IN Handle action);
|
||||
STATIC BOOL WasActionReleased(IN Handle action);
|
||||
STATIC BOOL IsActionDown(IN CONST String& action);
|
||||
STATIC BOOL WasActionPressed(IN CONST String& action);
|
||||
STATIC BOOL WasActionReleased(IN CONST String& action);
|
||||
STATIC Handle BindAction(IN CONST String &name, IN InputKey key);
|
||||
STATIC VOID BindAxis(IN InputKey upKey, IN InputKey downKey, IN InputKey leftKey, IN InputKey rightKey);
|
||||
|
||||
private:
|
||||
STATIC BOOL s_keys[256];
|
||||
STATIC BOOL s_prevKeys[256];
|
||||
STATIC Vec2 s_pointerPosition;
|
||||
STATIC InputKey s_axisInputs[4];
|
||||
STATIC Map<String, Handle> s_actionNames;
|
||||
STATIC Vector<Vector<InputKey>> s_actions;
|
||||
};
|
||||
}
|
||||
} // namespace ia::iae
|
||||
Reference in New Issue
Block a user