OIS::Keyboard Class Reference

#include <OISKeyboard.h>

Inheritance diagram for OIS::Keyboard:
[legend]
Collaboration diagram for OIS::Keyboard:
[legend]

List of all members.

Public Types

enum  TextTranslationMode { Off, Unicode, Ascii }
 TextTranslation Mode. More...
enum  Modifier { Shift = 0x0000001, Ctrl = 0x0000010, Alt = 0x0000100 }
 Enum of bit position of modifer. More...

Public Member Functions

virtual ~Keyboard ()
virtual bool isKeyDown (KeyCode key)=0
virtual void setEventCallback (KeyListener *keyListener)
KeyListenergetEventCallback ()
virtual void setTextTranslation (TextTranslationMode mode)
TextTranslationMode getTextTranslation ()
virtual const std::string & getAsString (KeyCode kc)=0
bool isModifierDown (Modifier mod)
virtual void copyKeyStates (char keys[256])=0

Protected Member Functions

 Keyboard ()

Protected Attributes

unsigned int mModifiers
 Bit field that holds status of Alt, Ctrl, Shift.
KeyListenerlistener
 Used for buffered/actionmapping callback.
TextTranslationMode mTextMode
 The current translation mode.


Detailed Description

Keyboard base class. To be implemented by specific system (ie. DirectX Keyboard) This class is useful as you remain OS independent using this common interface.

Definition at line 211 of file OISKeyboard.h.


Member Enumeration Documentation

enum OIS::Keyboard::TextTranslationMode

TextTranslation Mode.

Enumerator:
Off 
Unicode 
Ascii 

Definition at line 240 of file OISKeyboard.h.

enum OIS::Keyboard::Modifier

Enum of bit position of modifer.

Enumerator:
Shift 
Ctrl 
Alt 

Definition at line 277 of file OISKeyboard.h.


Constructor & Destructor Documentation

virtual OIS::Keyboard::~Keyboard (  )  [inline, virtual]

Definition at line 214 of file OISKeyboard.h.

Keyboard::Keyboard (  )  [protected]

Definition at line 28 of file OISKeyboard.cpp.


Member Function Documentation

virtual bool OIS::Keyboard::isKeyDown ( KeyCode  key  )  [pure virtual]

Remarks:
Returns true if key is donwn
Parameters:
key A KeyCode to check

Implemented in OIS::LinuxKeyboard, OIS::MacKeyboard, OIS::SDLKeyboard, and OIS::Win32Keyboard.

Referenced by handleNonBufferedKeys(), and WinMain().

virtual void OIS::Keyboard::setEventCallback ( KeyListener keyListener  )  [inline, virtual]

Remarks:
Register/unregister a Keyboard Listener - Only one allowed for simplicity. If broadcasting is neccessary, just broadcast from the callback you registered.
Parameters:
keyListener Send a pointer to a class derived from KeyListener or 0 to clear the callback

Definition at line 231 of file OISKeyboard.h.

Referenced by doStartup(), and initOIS().

KeyListener* OIS::Keyboard::getEventCallback (  )  [inline]

Remarks:
Returns currently set callback.. or 0

Definition at line 237 of file OISKeyboard.h.

void Keyboard::setTextTranslation ( TextTranslationMode  mode  )  [virtual]

Remarks:
Enable extra processing to translate KC_*** to an actual text character based off of locale. Different managers may implement none or all. Check the translation mode after setting to be sure
Parameters:
mode Off, Unicode, Ascii

Reimplemented in OIS::SDLKeyboard.

Definition at line 33 of file OISKeyboard.cpp.

References mTextMode.

TextTranslationMode OIS::Keyboard::getTextTranslation (  )  [inline]

Remarks:
Returns current translation mode

Definition at line 262 of file OISKeyboard.h.

virtual const std::string& OIS::Keyboard::getAsString ( KeyCode  kc  )  [pure virtual]

Remarks:
Translates KeyCode to string representation. For example, KC_ENTER will be "Enter" - Locale specific of course.
Parameters:
kc KeyCode to convert
Returns:
The string as determined from the current locale

Implemented in OIS::LinuxKeyboard, OIS::MacKeyboard, OIS::SDLKeyboard, and OIS::Win32Keyboard.

bool Keyboard::isModifierDown ( Modifier  mod  ) 

Remarks:
Check modifier status

Definition at line 39 of file OISKeyboard.cpp.

References mModifiers.

Referenced by handleNonBufferedKeys().

virtual void OIS::Keyboard::copyKeyStates ( char  keys[256]  )  [pure virtual]

Remarks:
Copies the state of the keys into the sent buffer (in the form of 1 is down and 0 is up)

Implemented in OIS::LinuxKeyboard, OIS::MacKeyboard, OIS::SDLKeyboard, and OIS::Win32Keyboard.


Member Data Documentation

unsigned int OIS::Keyboard::mModifiers [protected]

Bit field that holds status of Alt, Ctrl, Shift.

Definition at line 301 of file OISKeyboard.h.

Referenced by OIS::Win32Keyboard::_initialize(), OIS::SDLKeyboard::_initialize(), OIS::MacKeyboard::_initialize(), OIS::LinuxKeyboard::_initialize(), OIS::MacKeyboard::_modChangeCallback(), OIS::Win32Keyboard::_read(), OIS::Win32Keyboard::_readBuffered(), and isModifierDown().

KeyListener* OIS::Keyboard::listener [protected]

Used for buffered/actionmapping callback.

Definition at line 304 of file OISKeyboard.h.

Referenced by OIS::Win32Keyboard::_readBuffered(), OIS::SDLKeyboard::capture(), OIS::MacKeyboard::capture(), OIS::MacKeyboard::injectEvent(), OIS::LinuxKeyboard::LinuxKeyboard(), OIS::SDLKeyboard::SDLKeyboard(), and OIS::Win32Keyboard::Win32Keyboard().

TextTranslationMode OIS::Keyboard::mTextMode [protected]

The current translation mode.

Definition at line 307 of file OISKeyboard.h.

Referenced by OIS::MacKeyboard::_keyDownCallback(), OIS::Win32Keyboard::_translateText(), OIS::LinuxKeyboard::capture(), OIS::SDLKeyboard::setTextTranslation(), and setTextTranslation().


The documentation for this class was generated from the following files:
Generated on Sat Dec 1 20:13:55 2007 for OIS by  doxygen 1.5.4