Orxonox  0.0.5 Codename: Arcturus
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
OIS::Keyboard Class Referenceabstract

Keyboard base class. More...

#include </home/jenkins/workspace/orxonox_doxygen_trunk/src/external/ois/OISKeyboard.h>

Inheritance diagram for OIS::Keyboard:
OIS::Object OIS::LinuxKeyboard OIS::MacKeyboard OIS::Win32Keyboard

Public Types

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

Public Member Functions

virtual ~Keyboard ()
 
virtual void copyKeyStates (char keys[256]) const =0
 
virtual const std::string & getAsString (KeyCode kc)=0
 
KeyListenergetEventCallback () const
 
TextTranslationMode getTextTranslation () const
 
virtual bool isKeyDown (KeyCode key) const =0
 
bool isModifierDown (Modifier mod) const
 
virtual void setEventCallback (KeyListener *keyListener)
 
virtual void setTextTranslation (TextTranslationMode mode)
 
- Public Member Functions inherited from OIS::Object
virtual ~Object ()
 
virtual void _initialize ()=0
 
virtual bool buffered () const
 
virtual void capture ()=0
 
InputManagergetCreator () const
 
virtual int getID () const
 
virtual InterfacequeryInterface (Interface::IType type)=0
 
virtual void setBuffered (bool buffered)=0
 
Type type () const
 
const std::string & vendor () const
 

Protected Member Functions

 Keyboard (const std::string &vendor, bool buffered, int devID, InputManager *creator)
 
- Protected Member Functions inherited from OIS::Object
 Object (const std::string &vendor, Type iType, bool buffered, int devID, InputManager *creator)
 

Protected Attributes

KeyListenermListener
 Used for buffered/actionmapping callback. More...
 
unsigned int mModifiers
 Bit field that holds status of Alt, Ctrl, Shift. More...
 
TextTranslationMode mTextMode
 The current translation mode. More...
 
- Protected Attributes inherited from OIS::Object
bool mBuffered
 Buffered flag. More...
 
InputManagermCreator
 The creator who created this object. More...
 
int mDevID
 Not fully implemented yet. More...
 
Type mType
 Type of controller object. More...
 
std::string mVendor
 Vendor name if applicable/known. More...
 

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.

Member Enumeration Documentation

Enum of bit position of modifer.

Enumerator
Shift 
Ctrl 
Alt 

TextTranslation Mode.

Enumerator
Off 
Unicode 
Ascii 

Constructor & Destructor Documentation

virtual OIS::Keyboard::~Keyboard ( )
inlinevirtual
OIS::Keyboard::Keyboard ( const std::string &  vendor,
bool  buffered,
int  devID,
InputManager creator 
)
inlineprotected

Member Function Documentation

virtual void OIS::Keyboard::copyKeyStates ( char  keys[256]) const
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::Win32Keyboard, OIS::MacKeyboard, and OIS::LinuxKeyboard.

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
kcKeyCode to convert
Returns
The string as determined from the current locale

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

KeyListener* OIS::Keyboard::getEventCallback ( ) const
inline
Remarks
Returns currently set callback.. or 0
TextTranslationMode OIS::Keyboard::getTextTranslation ( ) const
inline
Remarks
Returns current translation mode
virtual bool OIS::Keyboard::isKeyDown ( KeyCode  key) const
pure virtual
Remarks
Returns true if key is donwn
Parameters
keyA KeyCode to check

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

bool Keyboard::isModifierDown ( Modifier  mod) const
Remarks
Check modifier status
virtual void OIS::Keyboard::setEventCallback ( KeyListener keyListener)
inlinevirtual
Remarks
Register/unregister a Keyboard Listener - Only one allowed for simplicity. If broadcasting is neccessary, just broadcast from the callback you registered.
Parameters
keyListenerSend a pointer to a class derived from KeyListener or 0 to clear the callback
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
modeOff, Unicode, Ascii

Member Data Documentation

KeyListener* OIS::Keyboard::mListener
protected

Used for buffered/actionmapping callback.

unsigned int OIS::Keyboard::mModifiers
protected

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

TextTranslationMode OIS::Keyboard::mTextMode
protected

The current translation mode.


The documentation for this class was generated from the following files: