Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members | Tutorials

# irr::SEvent::SJoystickEvent Struct Reference

A joystick event. More...

`#include <IEventReceiver.h>`

List of all members.

## Public Types
enum | { NUMBER_OF_BUTTONS = 32, AXIS_X = 0, AXIS_Y, AXIS_Z, AXIS_R, AXIS_U, AXIS_V, NUMBER_OF_AXES }
## Public Member Functions
bool | IsButtonPressed (u32 button) const
| A helper function to check if a button is pressed.
## Public Attributes
s16 | Axis [NUMBER_OF_AXES]
u32 | ButtonStates
u8 | Joystick
| The ID of the joystick which generated this event.
u16 | POV

## Detailed Description

A joystick event.

Unlike other events, joystick events represent the result of polling each connected joystick once per run() of the device. Joystick events will not be generated by default. If joystick support is available for the active device, _IRR_COMPILE_WITH_JOYSTICK_EVENTS_ is defined, and irr::IrrlichtDevice::activateJoysticks() has been called, an event of this type will be generated once per joystick per IrrlichtDevice::run() regardless of whether the state of the joystick has actually changed.

Definition at line 341 of file IEventReceiver.h.

## Member Enumeration Documentation

anonymous enum

Enumerator:

  NUMBER_OF_BUTTONS |
  AXIS_X |
  AXIS_Y |
  AXIS_Z |
  AXIS_R |
  AXIS_U |
  AXIS_V |
  NUMBER_OF_AXES |

Definition at line 343 of file IEventReceiver.h.

## Member Function Documentation

bool irr::SEvent::SJoystickEvent::IsButtonPressed | ( | u32 | button | ) | const`[inline]`

A helper function to check if a button is pressed.

Definition at line 383 of file IEventReceiver.h.

References ButtonStates, and NUMBER_OF_BUTTONS.

## Member Data Documentation

s16 irr::SEvent::SJoystickEvent::Axis[NUMBER_OF_AXES]

For AXIS_X, AXIS_Y, AXIS_Z, AXIS_R, AXIS_U and AXIS_V Values are in the range -32768 to 32767, with 0 representing the center position. You will receive the raw value from the joystick, and so will usually want to implement a dead zone around the center of the range. Axes not supported by this joystick will always have a value of 0. On Linux, POV hats are represented as axes, usually the last two active axis.

Definition at line 368 of file IEventReceiver.h.

u32 irr::SEvent::SJoystickEvent::ButtonStates

A bitmap of button states. You can use IsButtonPressed() to ( check the state of each button from 0 to (NUMBER_OF_BUTTONS - 1)

Definition at line 358 of file IEventReceiver.h.

Referenced by IsButtonPressed().

u8 irr::SEvent::SJoystickEvent::Joystick

The ID of the joystick which generated this event.

This is an internal Irrlicht index; it does not map directly to any particular hardware joystick.

Definition at line 380 of file IEventReceiver.h.

u16 irr::SEvent::SJoystickEvent::POV

The POV represents the angle of the POV hat in degrees * 100, from 0 to 35,900. A value of 65535 indicates that the POV hat is centered (or not present). This value is only supported on Windows. On Linux, the POV hat will be sent as 2 axes instead.

Definition at line 375 of file IEventReceiver.h.

The documentation for this struct was generated from the following file:

- IEventReceiver.h

| The Irrlicht Engine Documentation © 2003-2010 by Nikolaus Gebhardt. Generated on Sun Oct 24 12:42:03 2010 by Doxygen (1.6.2)