Urho3D
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes
Urho3D::Input Class Reference

Input subsystem. Converts operating system window messages to input state and events. More...

#include <Input.h>

Inheritance diagram for Urho3D::Input:
Urho3D::Object Urho3D::RefCounted

List of all members.

Public Member Functions

 Input (Context *context)
 Construct.
virtual ~Input ()
 Destruct.
void Update ()
 Poll for window messages. Called by HandleBeginFrame().
void SetToggleFullscreen (bool enable)
 Set whether ALT-ENTER fullscreen toggle is enabled.
void SetMouseVisible (bool enable)
 Set whether the operating system mouse cursor is visible. When not visible (default), is kept centered to prevent leaving the window.
bool OpenJoystick (unsigned index)
 Open a joystick. Return true if successful.
void CloseJoystick (unsigned index)
 Close a joystick.
bool DetectJoysticks ()
 Redetect joysticks. Return true if successful.
bool GetKeyDown (int key) const
 Check if a key is held down.
bool GetKeyPress (int key) const
 Check if a key has been pressed on this frame.
bool GetMouseButtonDown (int button) const
 Check if a mouse button is held down.
bool GetMouseButtonPress (int button) const
 Check if a mouse button has been pressed on this frame.
bool GetQualifierDown (int qualifier) const
 Check if a qualifier key is held down.
bool GetQualifierPress (int qualifier) const
 Check if a qualifier key has been pressed on this frame.
int GetQualifiers () const
 Return the currently held down qualifiers.
IntVector2 GetMousePosition () const
 Return mouse position within window. Should only be used with a visible mouse cursor.
const IntVector2GetMouseMove () const
 Return mouse movement since last frame.
int GetMouseMoveX () const
 Return horizontal mouse movement since last frame.
int GetMouseMoveY () const
 Return vertical mouse movement since last frame.
int GetMouseMoveWheel () const
 Return mouse wheel movement since last frame.
unsigned GetNumTouches () const
 Return number of active finger touches.
TouchStateGetTouch (unsigned index) const
 Return active finger touch by index.
unsigned GetNumJoysticks () const
 Return number of connected joysticks.
const StringGetJoystickName (unsigned index) const
 Return joystick name by index.
JoystickStateGetJoystick (unsigned index)
 Return joystick state by index. Automatically open if not opened yet.
bool GetToggleFullscreen () const
 Return whether fullscreen toggle is enabled.
bool IsMouseVisible () const
 Return whether the operating system mouse cursor is visible.
bool IsActive ()
 Return whether application window is active.
bool IsMinimized () const
 Return whether application window is minimized.
- Public Member Functions inherited from Urho3D::Object
 Object (Context *context)
 Construct.
virtual ~Object ()
 Destruct. Clean up self from event sender & receiver structures.
virtual ShortStringHash GetType () const =0
 Return type hash.
virtual const StringGetTypeName () const =0
 Return type name.
virtual void OnEvent (Object *sender, StringHash eventType, VariantMap &eventData)
 Handle event.
void SubscribeToEvent (StringHash eventType, EventHandler *handler)
 Subscribe to an event that can be sent by any sender.
void SubscribeToEvent (Object *sender, StringHash eventType, EventHandler *handler)
 Subscribe to a specific sender's event.
void UnsubscribeFromEvent (StringHash eventType)
 Unsubscribe from an event.
void UnsubscribeFromEvent (Object *sender, StringHash eventType)
 Unsubscribe from a specific sender's event.
void UnsubscribeFromEvents (Object *sender)
 Unsubscribe from a specific sender's events.
void UnsubscribeFromAllEvents ()
 Unsubscribe from all events.
void UnsubscribeFromAllEventsExcept (const PODVector< StringHash > &exceptions, bool onlyUserData)
 Unsubscribe from all events except those listed, and optionally only those with userdata (script registered events.)
void SendEvent (StringHash eventType)
 Send event to all subscribers.
void SendEvent (StringHash eventType, VariantMap &eventData)
 Send event with parameters to all subscribers.
ContextGetContext () const
 Return execution context.
ObjectGetSubsystem (ShortStringHash type) const
 Return subsystem by type.
ObjectGetEventSender () const
 Return active event sender. Null outside event handling.
EventHandlerGetEventHandler () const
 Return active event handler. Null outside event handling.
bool HasSubscribedToEvent (StringHash eventType) const
 Return whether has subscribed to an event without specific sender.
bool HasSubscribedToEvent (Object *sender, StringHash eventType) const
 Return whether has subscribed to a specific sender's event.
template<class T >
T * GetSubsystem () const
 Template version of returning a subsystem.
- Public Member Functions inherited from Urho3D::RefCounted
 RefCounted ()
 Construct. Allocate the reference count structure and set an initial self weak reference.
virtual ~RefCounted ()
 Destruct. Mark as expired and also delete the reference count structure if no outside weak references exist.
void AddRef ()
 Increment reference count. Can also be called outside of a SharedPtr for traditional reference counting.
void ReleaseRef ()
 Decrement reference count and delete self if no more references. Can also be called outside of a SharedPtr for traditional reference counting.
int Refs () const
 Return reference count.
int WeakRefs () const
 Return weak reference count.
RefCountRefCountPtr ()
 Return pointer to the reference count structure.

Private Member Functions

 OBJECT (Input)
void Initialize ()
 Initialize when screen mode initially set.
void ResetJoysticks ()
 Setup internal joystick structures.
void MakeActive ()
 Activate the application.
void MakeInactive ()
 Deactivate the application.
void ResetState ()
 Clear input state.
void SendActivationEvent ()
 Send an activation event. Called when minimized or active status changes.
void SetMouseButton (int button, bool newState)
 Handle a mouse button change.
void SetKey (int key, bool newState)
 Handle a key change.
void SetMouseWheel (int delta)
 Handle mousewheel change.
void SetMousePosition (const IntVector2 &position)
 Internal function to set the mouse cursor position.
void HandleScreenMode (StringHash eventType, VariantMap &eventData)
 Handle screen mode event.
void HandleBeginFrame (StringHash eventType, VariantMap &eventData)
 Handle frame start event.

Static Private Member Functions

static void HandleSDLEvent (void *sdlEvent)
 Handle SDL event.

Private Attributes

WeakPtr< Graphicsgraphics_
 Graphics subsystem.
HashSet< int > keyDown_
 Key down state.
HashSet< int > keyPress_
 Key pressed state.
HashMap< int, TouchStatetouches_
 Active finger touches.
Vector< JoystickStatejoysticks_
 Opened joysticks.
unsigned mouseButtonDown_
 Mouse buttons' down state.
unsigned mouseButtonPress_
 Mouse buttons' pressed state.
IntVector2 lastMousePosition_
 Last mouse position for calculating movement.
IntVector2 mouseMove_
 Mouse movement since last frame.
int mouseMoveWheel_
 Mouse wheel movement since last frame.
unsigned windowID_
 SDL window ID.
bool toggleFullscreen_
 Fullscreen toggle flag.
bool mouseVisible_
 Operating system mouse cursor visible flag.
bool active_
 Active flag.
bool minimized_
 Minimized flag.
bool activated_
 Activated on this frame flag.
bool suppressNextMouseMove_
 Next mouse move suppress flag.
bool initialized_
 Initialized flag.

Additional Inherited Members

- Protected Attributes inherited from Urho3D::Object
Contextcontext_
 Execution context.

Detailed Description

Input subsystem. Converts operating system window messages to input state and events.


Member Function Documentation

void Urho3D::Input::ResetState ( )
private

Clear input state.

Todo:
Check if this is necessary

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