1
0
mirror of https://github.com/Halofreak1990/XFXFramework synced 2024-12-26 13:49:34 +01:00
Tom Lint 95bf1d7ebc Added missing TypeInfos to XFX::Input namespace
Updated function incorrect signatures in libXFX
2013-10-03 14:40:24 +02:00

56 lines
1.2 KiB
C++

/*****************************************************************************
* Keyboard.h *
* *
* XFX::Input::Keyboard class definition file. *
* Copyright (c) XFX Team. All Rights Reserved. *
*****************************************************************************/
#ifndef _XFX_INPUT_KEYBOARD_
#define _XFX_INPUT_KEYBOARD_
#include "Enums.h"
namespace XFX
{
namespace Input
{
/**
* Represents a state of keystrokes recorded by a keyboard input device.
*/
struct KeyboardState
{
KeyboardState();
KeyboardState(Keys_t keys[]);
KeyboardState(const KeyboardState &obj);
Keys_t* GetPressedKeys();
bool IsKeyDown(Keys_t key);
bool IsKeyUp(Keys_t key);
/**
* Returns the state of a particular key.
*
* @param key
* Enumerated value representing the key to query.
*/
const KeyState_t operator[](const Keys_t key) const;
private:
Keys_t* pressedKeys;
};
/**
* Allows retrieval of keystrokes from a keyboard input device.
*/
class Keyboard
{
private:
Keyboard(); //Private constructor to prevent instantiation.
public:
static KeyboardState GetState();
};
}
}
#endif //_XFX_INPUT_KEYBOARD_