QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
Joystick Class Referenceabstract

#include <Joystick.h>

+ Inheritance diagram for Joystick:
+ Collaboration diagram for Joystick:

Classes

struct  AxisCalibration_t
 

Public Types

enum  ButtonEvent_t { ButtonEventUpTransition , ButtonEventDownTransition , ButtonEventRepeat , ButtonEventNone }
 
enum  AxisFunction_t {
  rollFunction , pitchFunction , yawFunction , throttleFunction ,
  pitchExtensionFunction , rollExtensionFunction , additionalAxis1Function , additionalAxis2Function ,
  additionalAxis3Function , additionalAxis4Function , additionalAxis5Function , additionalAxis6Function ,
  maxAxisFunction
}
 
enum  HatDirection : quint8 {
  HatCentered = 0x00 , HatUp = 0x01 , HatRight = 0x02 , HatDown = 0x04 ,
  HatLeft = 0x08 , HatRightUp = HatRight | HatUp , HatRightDown = HatRight | HatDown , HatLeftUp = HatLeft | HatUp ,
  HatLeftDown = HatLeft | HatDown
}
 Standard gamepad hat/D-pad directions. More...
 
enum  GamepadButton {
  ButtonA = 0 , ButtonB = 1 , ButtonX = 2 , ButtonY = 3 ,
  ButtonBack = 4 , ButtonGuide = 5 , ButtonStart = 6 , ButtonLeftStick = 7 ,
  ButtonRightStick = 8 , ButtonLeftShoulder = 9 , ButtonRightShoulder = 10 , ButtonDPadUp = 11 ,
  ButtonDPadDown = 12 , ButtonDPadLeft = 13 , ButtonDPadRight = 14
}
 Standard gamepad button indices. More...
 
enum  GamepadAxis {
  AxisLeftX = 0 , AxisLeftY = 1 , AxisRightX = 2 , AxisRightY = 3 ,
  AxisTriggerLeft = 4 , AxisTriggerRight = 5
}
 Standard gamepad axis indices. More...
 

Signals

void buttonActionsChanged ()
 
void assignableActionsChanged ()
 
void playerIndexChanged ()
 
void batteryStateChanged ()
 
void connectionStateChanged (const QString &newState)
 
void linkedGroupChanged ()
 
void axisValues (float roll, float pitch, float yaw, float throttle)
 
void startContinuousZoom (int direction)
 
void stopContinuousZoom ()
 
void stepZoom (int direction)
 
void startContinuousFocus (int direction)
 
void stopContinuousFocus ()
 
void stepFocus (int direction)
 
void stepCamera (int direction)
 
void stepStream (int direction)
 
void triggerCamera ()
 
void startVideoRecord ()
 
void stopVideoRecord ()
 
void toggleVideoRecord ()
 
void gimbalPitchStart (int direction)
 
void gimbalYawStart (int direction)
 
void gimbalPitchStop ()
 
void gimbalYawStop ()
 
void centerGimbal ()
 
void gimbalYawLock (bool lock)
 
void setArmed (bool arm)
 
void setVtolInFwdFlight (bool set)
 
void setFlightMode (const QString &flightMode)
 
void emergencyStop ()
 
void gripperAction (GRIPPER_ACTIONS gripperAction)
 
void landingGearDeploy ()
 
void landingGearRetract ()
 
void motorInterlock (bool enable)
 
void unknownAction (const QString &action)
 
void vehicleJoystickData (float roll, float pitch, float yaw, float throttle, uint16_t buttonsLow, uint16_t buttonsHigh, float gimbalPitch, float gimbalYaw)
 
void rawChannelValuesChanged (QVector< int > channelValues)
 Signalled during PollingForConfiguration.
 
void rawButtonPressedChanged (int index, bool pressed)
 Signalled during PollingForConfiguration.
 
void gyroscopeDataUpdated (const QVector3D &data)
 
void accelerometerDataUpdated (const QVector3D &data)
 
void touchpadEvent (int touchpad, int finger, bool down, float x, float y, float pressure)
 
void mappingRemapped ()
 
void updateComplete ()
 

Public Member Functions

 Joystick (const QString &name, int axisCount, int buttonCount, int hatCount, QObject *parent=nullptr)
 
virtual ~Joystick ()
 
Q_INVOKABLE void setButtonRepeat (int button, bool repeat)
 
Q_INVOKABLE bool getButtonRepeat (int button)
 
Q_INVOKABLE void setButtonAction (int button, const QString &action)
 
Q_INVOKABLE QString getButtonAction (int button) const
 
JoystickSettingssettings ()
 
QString name () const
 
int buttonCount () const
 
int axisCount () const
 
virtual bool requiresCalibration () const
 
virtual bool hasRumble () const
 
virtual bool hasRumbleTriggers () const
 
virtual bool hasLED () const
 
virtual QString guid () const
 
virtual quint16 vendorId () const
 
virtual quint16 productId () const
 
virtual QString serial () const
 
virtual QString deviceType () const
 
virtual int playerIndex () const
 
virtual void setPlayerIndex (int index)
 
virtual int batteryPercent () const
 
virtual QString powerState () const
 
virtual bool isGamepad () const
 
virtual QString gamepadType () const
 
virtual QString path () const
 
virtual bool isVirtual () const
 
virtual quint16 firmwareVersion () const
 
virtual QString connectionType () const
 
virtual int ballCount () const
 
virtual Q_INVOKABLE void rumble (quint16 lowFreq, quint16 highFreq, quint32 durationMs)
 
virtual Q_INVOKABLE void rumbleTriggers (quint16 left, quint16 right, quint32 durationMs)
 
virtual Q_INVOKABLE void setLED (quint8 red, quint8 green, quint8 blue)
 
virtual Q_INVOKABLE QString axisLabel (int axis) const
 
virtual Q_INVOKABLE QString buttonLabel (int button) const
 
virtual Q_INVOKABLE QString getMapping () const
 
virtual Q_INVOKABLE bool addMapping (const QString &mapping)
 
virtual Q_INVOKABLE bool hasGyroscope () const
 
virtual Q_INVOKABLE bool hasAccelerometer () const
 
virtual Q_INVOKABLE bool setGyroscopeEnabled (bool enabled)
 
virtual Q_INVOKABLE bool setAccelerometerEnabled (bool enabled)
 
virtual Q_INVOKABLE QVector3D gyroscopeData () const
 
virtual Q_INVOKABLE QVector3D accelerometerData () const
 
virtual Q_INVOKABLE float gyroscopeDataRate () const
 
virtual Q_INVOKABLE float accelerometerDataRate () const
 
virtual Q_INVOKABLE int touchpadCount () const
 
virtual Q_INVOKABLE int touchpadFingerCount (int touchpad) const
 
virtual Q_INVOKABLE QVariantMap getTouchpadFinger (int touchpad, int finger) const
 
virtual Q_INVOKABLE QVariantMap getBall (int ball) const
 
virtual Q_INVOKABLE bool sendEffect (const QByteArray &data)
 
virtual Q_INVOKABLE QVariantMap getAxisBinding (int axis) const
 
virtual Q_INVOKABLE QVariantMap getButtonBinding (int button) const
 
virtual Q_INVOKABLE bool hasButton (int button) const
 
virtual Q_INVOKABLE bool hasAxis (int axis) const
 
virtual Q_INVOKABLE QString realGamepadType () const
 
virtual Q_INVOKABLE QString buttonLabelForType (int button) const
 
virtual Q_INVOKABLE bool hasHaptic () const
 
virtual Q_INVOKABLE int hapticEffectsCount () const
 
virtual Q_INVOKABLE bool hapticRumbleSupported () const
 
virtual Q_INVOKABLE bool hapticRumbleInit ()
 
virtual Q_INVOKABLE bool hapticRumblePlay (float strength, quint32 durationMs)
 
virtual Q_INVOKABLE void hapticRumbleStop ()
 
virtual Q_INVOKABLE QString getMappingForGUID (const QString &guid) const
 
virtual Q_INVOKABLE bool setVirtualAxis (int axis, int value)
 
virtual Q_INVOKABLE bool setVirtualButton (int button, bool down)
 
virtual Q_INVOKABLE bool setVirtualHat (int hat, quint8 value)
 
virtual Q_INVOKABLE bool setVirtualBall (int ball, int dx, int dy)
 
virtual Q_INVOKABLE bool setVirtualTouchpad (int touchpad, int finger, bool down, float x, float y, float pressure)
 
virtual Q_INVOKABLE bool sendVirtualSensorData (int sensorType, float x, float y, float z)
 
virtual Q_INVOKABLE bool hasMonoLED () const
 
virtual Q_INVOKABLE bool hasRGBLED () const
 
virtual Q_INVOKABLE bool hasPlayerLED () const
 
virtual Q_INVOKABLE QString connectionState () const
 
virtual Q_INVOKABLE QVariantMap getAxisInitialState (int axis) const
 
virtual Q_INVOKABLE bool setMapping (const QString &mapping)
 
QStringList buttonActions () const
 
QString buttonActionNone () const
 
QString disabledActionName () const
 
const QmlObjectListModelassignableActions () const
 
QStringList assignableActionTitles () const
 
QString linkedGroupId () const
 HOTAS/Multi-device linking (devices with same groupId act as single joystick)
 
void setLinkedGroupId (const QString &groupId)
 
QString linkedGroupRole () const
 
void setLinkedGroupRole (const QString &role)
 
void setAxisCalibration (int axis, const AxisCalibration_t &calibration)
 
Joystick::AxisCalibration_t getAxisCalibration (int axis) const
 
RemoteControlCalibrationController::StickFunction mapAxisFunctionToRCCStickFunction (AxisFunction_t axisFunction) const
 
AxisFunction_t mapRCCStickFunctionToAxisFunction (RemoteControlCalibrationController::StickFunction stickFunction) const
 
void setFunctionForChannel (RemoteControlCalibrationController::StickFunction stickFunction, int channel)
 
int getChannelForFunction (RemoteControlCalibrationController::StickFunction stickFunction) const
 
Q_INVOKABLE void startConfiguration ()
 Tells the joystick that the configuration UI is being displayed so it can do any special processing required.
 
Q_INVOKABLE void stopConfiguration ()
 Tells the joystick that the configuration UI is being closed so it can do any special processing required.
 
void stop ()
 

Static Public Member Functions

static QString axisFunctionToString (AxisFunction_t function)
 

Static Public Attributes

static constexpr int AxisMin = -32768
 
static constexpr int AxisMax = 32767
 

Protected Attributes

QString _name
 
int _axisCount = 0
 
int _buttonCount = 0
 
int _hatCount = 0
 

Friends

class JoystickManager
 
class JoystickConfigController
 

Detailed Description

Definition at line 62 of file Joystick.h.

Member Enumeration Documentation

◆ AxisFunction_t

Enumerator
rollFunction 
pitchFunction 
yawFunction 
throttleFunction 
pitchExtensionFunction 
rollExtensionFunction 
additionalAxis1Function 
additionalAxis2Function 
additionalAxis3Function 
additionalAxis4Function 
additionalAxis5Function 
additionalAxis6Function 
maxAxisFunction 

Definition at line 137 of file Joystick.h.

◆ ButtonEvent_t

Enumerator
ButtonEventUpTransition 
ButtonEventDownTransition 
ButtonEventRepeat 
ButtonEventNone 

Definition at line 114 of file Joystick.h.

◆ GamepadAxis

Standard gamepad axis indices.

Enumerator
AxisLeftX 
AxisLeftY 
AxisRightX 
AxisRightY 
AxisTriggerLeft 
AxisTriggerRight 

Definition at line 189 of file Joystick.h.

◆ GamepadButton

Standard gamepad button indices.

Enumerator
ButtonA 
ButtonB 
ButtonX 
ButtonY 
ButtonBack 
ButtonGuide 
ButtonStart 
ButtonLeftStick 
ButtonRightStick 
ButtonLeftShoulder 
ButtonRightShoulder 
ButtonDPadUp 
ButtonDPadDown 
ButtonDPadLeft 
ButtonDPadRight 

Definition at line 169 of file Joystick.h.

◆ HatDirection

enum Joystick::HatDirection : quint8

Standard gamepad hat/D-pad directions.

Enumerator
HatCentered 
HatUp 
HatRight 
HatDown 
HatLeft 
HatRightUp 
HatRightDown 
HatLeftUp 
HatLeftDown 

Definition at line 155 of file Joystick.h.

Constructor & Destructor Documentation

◆ Joystick()

Joystick::Joystick ( const QString &  name,
int  axisCount,
int  buttonCount,
int  hatCount,
QObject *  parent = nullptr 
)

◆ ~Joystick()

Joystick::~Joystick ( )
virtual

Definition at line 165 of file Joystick.cc.

References QmlObjectListModel::clearAndDeleteContents().

Member Function Documentation

◆ accelerometerData()

virtual Q_INVOKABLE QVector3D Joystick::accelerometerData ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 243 of file Joystick.h.

◆ accelerometerDataRate()

virtual Q_INVOKABLE float Joystick::accelerometerDataRate ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 245 of file Joystick.h.

◆ accelerometerDataUpdated

void Joystick::accelerometerDataUpdated ( const QVector3D &  data)
signal

◆ addMapping()

virtual Q_INVOKABLE bool Joystick::addMapping ( const QString &  mapping)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 235 of file Joystick.h.

◆ assignableActions()

const QmlObjectListModel * Joystick::assignableActions ( ) const
inline

Definition at line 314 of file Joystick.h.

◆ assignableActionsChanged

void Joystick::assignableActionsChanged ( )
signal

◆ assignableActionTitles()

QStringList Joystick::assignableActionTitles ( ) const
inline

Definition at line 315 of file Joystick.h.

◆ axisCount()

int Joystick::axisCount ( ) const
inline

Definition at line 207 of file Joystick.h.

References _axisCount.

Referenced by JoystickSDL::discover(), Joystick(), and JoystickComponent::joystickStatusText().

◆ axisFunctionToString()

◆ axisLabel()

virtual Q_INVOKABLE QString Joystick::axisLabel ( int  axis) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 232 of file Joystick.h.

◆ axisValues

void Joystick::axisValues ( float  roll,
float  pitch,
float  yaw,
float  throttle 
)
signal

◆ ballCount()

virtual int Joystick::ballCount ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 227 of file Joystick.h.

◆ batteryPercent()

virtual int Joystick::batteryPercent ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 219 of file Joystick.h.

◆ batteryStateChanged

void Joystick::batteryStateChanged ( )
signal

◆ buttonActionNone()

QString Joystick::buttonActionNone ( ) const
inline

Definition at line 312 of file Joystick.h.

◆ buttonActions()

QStringList Joystick::buttonActions ( ) const

Definition at line 1570 of file Joystick.cc.

◆ buttonActionsChanged

void Joystick::buttonActionsChanged ( )
signal

Referenced by setButtonAction().

◆ buttonCount()

int Joystick::buttonCount ( ) const
inline

Definition at line 206 of file Joystick.h.

Referenced by JoystickSDL::discover(), and Joystick().

◆ buttonLabel()

virtual Q_INVOKABLE QString Joystick::buttonLabel ( int  button) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 233 of file Joystick.h.

◆ buttonLabelForType()

virtual Q_INVOKABLE QString Joystick::buttonLabelForType ( int  button) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 272 of file Joystick.h.

◆ centerGimbal

void Joystick::centerGimbal ( )
signal

◆ connectionState()

virtual Q_INVOKABLE QString Joystick::connectionState ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 303 of file Joystick.h.

◆ connectionStateChanged

void Joystick::connectionStateChanged ( const QString &  newState)
signal

◆ connectionType()

virtual QString Joystick::connectionType ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 226 of file Joystick.h.

◆ deviceType()

virtual QString Joystick::deviceType ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 216 of file Joystick.h.

◆ disabledActionName()

QString Joystick::disabledActionName ( ) const
inline

Definition at line 313 of file Joystick.h.

◆ emergencyStop

void Joystick::emergencyStop ( )
signal

◆ firmwareVersion()

virtual quint16 Joystick::firmwareVersion ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 225 of file Joystick.h.

◆ gamepadType()

virtual QString Joystick::gamepadType ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 222 of file Joystick.h.

◆ getAxisBinding()

virtual Q_INVOKABLE QVariantMap Joystick::getAxisBinding ( int  axis) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 261 of file Joystick.h.

◆ getAxisCalibration()

Joystick::AxisCalibration_t Joystick::getAxisCalibration ( int  axis) const

Definition at line 1369 of file Joystick.cc.

◆ getAxisInitialState()

virtual Q_INVOKABLE QVariantMap Joystick::getAxisInitialState ( int  axis) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 306 of file Joystick.h.

◆ getBall()

virtual Q_INVOKABLE QVariantMap Joystick::getBall ( int  ball) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 255 of file Joystick.h.

◆ getButtonAction()

QString Joystick::getButtonAction ( int  button) const

Definition at line 1559 of file Joystick.cc.

◆ getButtonBinding()

virtual Q_INVOKABLE QVariantMap Joystick::getButtonBinding ( int  button) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 262 of file Joystick.h.

◆ getButtonRepeat()

bool Joystick::getButtonRepeat ( int  button)

Definition at line 1502 of file Joystick.cc.

◆ getChannelForFunction()

int Joystick::getChannelForFunction ( RemoteControlCalibrationController::StickFunction  stickFunction) const

Definition at line 1477 of file Joystick.cc.

References mapRCCStickFunctionToAxisFunction().

◆ getMapping()

virtual Q_INVOKABLE QString Joystick::getMapping ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 234 of file Joystick.h.

◆ getMappingForGUID()

virtual Q_INVOKABLE QString Joystick::getMappingForGUID ( const QString &  guid) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 283 of file Joystick.h.

References guid().

◆ getTouchpadFinger()

virtual Q_INVOKABLE QVariantMap Joystick::getTouchpadFinger ( int  touchpad,
int  finger 
) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 250 of file Joystick.h.

◆ gimbalPitchStart

void Joystick::gimbalPitchStart ( int  direction)
signal

◆ gimbalPitchStop

void Joystick::gimbalPitchStop ( )
signal

◆ gimbalYawLock

void Joystick::gimbalYawLock ( bool  lock)
signal

◆ gimbalYawStart

void Joystick::gimbalYawStart ( int  direction)
signal

◆ gimbalYawStop

void Joystick::gimbalYawStop ( )
signal

◆ gripperAction

void Joystick::gripperAction ( GRIPPER_ACTIONS  gripperAction)
signal

◆ guid()

virtual QString Joystick::guid ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 212 of file Joystick.h.

Referenced by getMappingForGUID().

◆ gyroscopeData()

virtual Q_INVOKABLE QVector3D Joystick::gyroscopeData ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 242 of file Joystick.h.

◆ gyroscopeDataRate()

virtual Q_INVOKABLE float Joystick::gyroscopeDataRate ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 244 of file Joystick.h.

◆ gyroscopeDataUpdated

void Joystick::gyroscopeDataUpdated ( const QVector3D &  data)
signal

◆ hapticEffectsCount()

virtual Q_INVOKABLE int Joystick::hapticEffectsCount ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 276 of file Joystick.h.

◆ hapticRumbleInit()

virtual Q_INVOKABLE bool Joystick::hapticRumbleInit ( )
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 278 of file Joystick.h.

◆ hapticRumblePlay()

virtual Q_INVOKABLE bool Joystick::hapticRumblePlay ( float  strength,
quint32  durationMs 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 279 of file Joystick.h.

◆ hapticRumbleStop()

virtual Q_INVOKABLE void Joystick::hapticRumbleStop ( )
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 280 of file Joystick.h.

◆ hapticRumbleSupported()

virtual Q_INVOKABLE bool Joystick::hapticRumbleSupported ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 277 of file Joystick.h.

◆ hasAccelerometer()

virtual Q_INVOKABLE bool Joystick::hasAccelerometer ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 239 of file Joystick.h.

Referenced by JoystickComponent::joystickFeaturesText().

◆ hasAxis()

virtual Q_INVOKABLE bool Joystick::hasAxis ( int  axis) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 266 of file Joystick.h.

◆ hasButton()

virtual Q_INVOKABLE bool Joystick::hasButton ( int  button) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 265 of file Joystick.h.

◆ hasGyroscope()

virtual Q_INVOKABLE bool Joystick::hasGyroscope ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 238 of file Joystick.h.

Referenced by JoystickComponent::joystickFeaturesText().

◆ hasHaptic()

virtual Q_INVOKABLE bool Joystick::hasHaptic ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 275 of file Joystick.h.

◆ hasLED()

virtual bool Joystick::hasLED ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 211 of file Joystick.h.

Referenced by JoystickComponent::joystickFeaturesText().

◆ hasMonoLED()

virtual Q_INVOKABLE bool Joystick::hasMonoLED ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 298 of file Joystick.h.

◆ hasPlayerLED()

virtual Q_INVOKABLE bool Joystick::hasPlayerLED ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 300 of file Joystick.h.

◆ hasRGBLED()

virtual Q_INVOKABLE bool Joystick::hasRGBLED ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 299 of file Joystick.h.

◆ hasRumble()

virtual bool Joystick::hasRumble ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 209 of file Joystick.h.

Referenced by JoystickComponent::joystickFeaturesText().

◆ hasRumbleTriggers()

virtual bool Joystick::hasRumbleTriggers ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 210 of file Joystick.h.

Referenced by JoystickComponent::joystickFeaturesText().

◆ isGamepad()

virtual bool Joystick::isGamepad ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 221 of file Joystick.h.

◆ isVirtual()

virtual bool Joystick::isVirtual ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 224 of file Joystick.h.

◆ landingGearDeploy

void Joystick::landingGearDeploy ( )
signal

◆ landingGearRetract

void Joystick::landingGearRetract ( )
signal

◆ linkedGroupChanged

void Joystick::linkedGroupChanged ( )
signal

◆ linkedGroupId()

QString Joystick::linkedGroupId ( ) const
inline

HOTAS/Multi-device linking (devices with same groupId act as single joystick)

Definition at line 318 of file Joystick.h.

◆ linkedGroupRole()

QString Joystick::linkedGroupRole ( ) const
inline

Definition at line 320 of file Joystick.h.

◆ mapAxisFunctionToRCCStickFunction()

◆ mappingRemapped

void Joystick::mappingRemapped ( )
signal

◆ mapRCCStickFunctionToAxisFunction()

◆ motorInterlock

void Joystick::motorInterlock ( bool  enable)
signal

◆ name()

QString Joystick::name ( ) const
inline

Definition at line 205 of file Joystick.h.

References _name.

Referenced by JoystickSDL::discover(), Joystick(), and JoystickConfigController::start().

◆ path()

virtual QString Joystick::path ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 223 of file Joystick.h.

◆ playerIndex()

virtual int Joystick::playerIndex ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 217 of file Joystick.h.

◆ playerIndexChanged

void Joystick::playerIndexChanged ( )
signal

◆ powerState()

virtual QString Joystick::powerState ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 220 of file Joystick.h.

◆ productId()

virtual quint16 Joystick::productId ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 214 of file Joystick.h.

◆ rawButtonPressedChanged

void Joystick::rawButtonPressedChanged ( int  index,
bool  pressed 
)
signal

Signalled during PollingForConfiguration.

◆ rawChannelValuesChanged

void Joystick::rawChannelValuesChanged ( QVector< int >  channelValues)
signal

Signalled during PollingForConfiguration.

◆ realGamepadType()

virtual Q_INVOKABLE QString Joystick::realGamepadType ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 269 of file Joystick.h.

◆ requiresCalibration()

virtual bool Joystick::requiresCalibration ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 208 of file Joystick.h.

Referenced by JoystickComponent::joystickStatusText().

◆ rumble()

virtual Q_INVOKABLE void Joystick::rumble ( quint16  lowFreq,
quint16  highFreq,
quint32  durationMs 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 229 of file Joystick.h.

◆ rumbleTriggers()

virtual Q_INVOKABLE void Joystick::rumbleTriggers ( quint16  left,
quint16  right,
quint32  durationMs 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 230 of file Joystick.h.

◆ sendEffect()

virtual Q_INVOKABLE bool Joystick::sendEffect ( const QByteArray &  data)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 258 of file Joystick.h.

◆ sendVirtualSensorData()

virtual Q_INVOKABLE bool Joystick::sendVirtualSensorData ( int  sensorType,
float  x,
float  y,
float  z 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 293 of file Joystick.h.

◆ serial()

virtual QString Joystick::serial ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 215 of file Joystick.h.

◆ setAccelerometerEnabled()

virtual Q_INVOKABLE bool Joystick::setAccelerometerEnabled ( bool  enabled)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 241 of file Joystick.h.

◆ setArmed

void Joystick::setArmed ( bool  arm)
signal

◆ setAxisCalibration()

void Joystick::setAxisCalibration ( int  axis,
const AxisCalibration_t calibration 
)

Definition at line 1360 of file Joystick.cc.

◆ setButtonAction()

void Joystick::setButtonAction ( int  button,
const QString &  action 
)

◆ setButtonRepeat()

void Joystick::setButtonRepeat ( int  button,
bool  repeat 
)

Definition at line 1482 of file Joystick.cc.

References settings(), and SettingsGroup::settingsGroup().

◆ setFlightMode

void Joystick::setFlightMode ( const QString &  flightMode)
signal

◆ setFunctionForChannel()

void Joystick::setFunctionForChannel ( RemoteControlCalibrationController::StickFunction  stickFunction,
int  channel 
)

Definition at line 1472 of file Joystick.cc.

References mapRCCStickFunctionToAxisFunction().

◆ setGyroscopeEnabled()

virtual Q_INVOKABLE bool Joystick::setGyroscopeEnabled ( bool  enabled)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 240 of file Joystick.h.

◆ setLED()

virtual Q_INVOKABLE void Joystick::setLED ( quint8  red,
quint8  green,
quint8  blue 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 231 of file Joystick.h.

◆ setLinkedGroupId()

void Joystick::setLinkedGroupId ( const QString &  groupId)

Definition at line 1884 of file Joystick.cc.

References _name, linkedGroupChanged(), and settings().

◆ setLinkedGroupRole()

void Joystick::setLinkedGroupRole ( const QString &  role)

Definition at line 1905 of file Joystick.cc.

References _name, linkedGroupChanged(), and settings().

◆ setMapping()

virtual Q_INVOKABLE bool Joystick::setMapping ( const QString &  mapping)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 309 of file Joystick.h.

◆ setPlayerIndex()

virtual void Joystick::setPlayerIndex ( int  index)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 218 of file Joystick.h.

◆ settings()

◆ setVirtualAxis()

virtual Q_INVOKABLE bool Joystick::setVirtualAxis ( int  axis,
int  value 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 286 of file Joystick.h.

◆ setVirtualBall()

virtual Q_INVOKABLE bool Joystick::setVirtualBall ( int  ball,
int  dx,
int  dy 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 289 of file Joystick.h.

◆ setVirtualButton()

virtual Q_INVOKABLE bool Joystick::setVirtualButton ( int  button,
bool  down 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 287 of file Joystick.h.

◆ setVirtualHat()

virtual Q_INVOKABLE bool Joystick::setVirtualHat ( int  hat,
quint8  value 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 288 of file Joystick.h.

◆ setVirtualTouchpad()

virtual Q_INVOKABLE bool Joystick::setVirtualTouchpad ( int  touchpad,
int  finger,
bool  down,
float  x,
float  y,
float  pressure 
)
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 290 of file Joystick.h.

◆ setVtolInFwdFlight

void Joystick::setVtolInFwdFlight ( bool  set)
signal

◆ startConfiguration()

void Joystick::startConfiguration ( )

Tells the joystick that the configuration UI is being displayed so it can do any special processing required.

Definition at line 1846 of file Joystick.cc.

◆ startContinuousFocus

void Joystick::startContinuousFocus ( int  direction)
signal

◆ startContinuousZoom

void Joystick::startContinuousZoom ( int  direction)
signal

◆ startVideoRecord

void Joystick::startVideoRecord ( )
signal

◆ stepCamera

void Joystick::stepCamera ( int  direction)
signal

◆ stepFocus

void Joystick::stepFocus ( int  direction)
signal

◆ stepStream

void Joystick::stepStream ( int  direction)
signal

◆ stepZoom

void Joystick::stepZoom ( int  direction)
signal

◆ stop()

void Joystick::stop ( )

Definition at line 1872 of file Joystick.cc.

◆ stopConfiguration()

void Joystick::stopConfiguration ( )

Tells the joystick that the configuration UI is being closed so it can do any special processing required.

Definition at line 1851 of file Joystick.cc.

◆ stopContinuousFocus

void Joystick::stopContinuousFocus ( )
signal

◆ stopContinuousZoom

void Joystick::stopContinuousZoom ( )
signal

◆ stopVideoRecord

void Joystick::stopVideoRecord ( )
signal

◆ toggleVideoRecord

void Joystick::toggleVideoRecord ( )
signal

◆ touchpadCount()

virtual Q_INVOKABLE int Joystick::touchpadCount ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 248 of file Joystick.h.

Referenced by JoystickComponent::joystickFeaturesText().

◆ touchpadEvent

void Joystick::touchpadEvent ( int  touchpad,
int  finger,
bool  down,
float  x,
float  y,
float  pressure 
)
signal

◆ touchpadFingerCount()

virtual Q_INVOKABLE int Joystick::touchpadFingerCount ( int  touchpad) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 249 of file Joystick.h.

◆ triggerCamera

void Joystick::triggerCamera ( )
signal

◆ unknownAction

void Joystick::unknownAction ( const QString &  action)
signal

◆ updateComplete

void Joystick::updateComplete ( )
signal

◆ vehicleJoystickData

void Joystick::vehicleJoystickData ( float  roll,
float  pitch,
float  yaw,
float  throttle,
uint16_t  buttonsLow,
uint16_t  buttonsHigh,
float  gimbalPitch,
float  gimbalYaw 
)
signal

◆ vendorId()

virtual quint16 Joystick::vendorId ( ) const
inlinevirtual

Reimplemented in JoystickSDL.

Definition at line 213 of file Joystick.h.

Friends And Related Symbol Documentation

◆ JoystickConfigController

friend class JoystickConfigController
friend

Definition at line 71 of file Joystick.h.

◆ JoystickManager

friend class JoystickManager
friend

Definition at line 70 of file Joystick.h.

Member Data Documentation

◆ _axisCount

int Joystick::_axisCount = 0
protected

Definition at line 387 of file Joystick.h.

Referenced by axisCount().

◆ _buttonCount

int Joystick::_buttonCount = 0
protected

Definition at line 388 of file Joystick.h.

◆ _hatCount

int Joystick::_hatCount = 0
protected

Definition at line 389 of file Joystick.h.

◆ _name

QString Joystick::_name
protected

Definition at line 386 of file Joystick.h.

Referenced by name(), setLinkedGroupId(), and setLinkedGroupRole().

◆ AxisMax

constexpr int Joystick::AxisMax = 32767
staticconstexpr

Definition at line 112 of file Joystick.h.

Referenced by Joystick::AxisCalibration_t::reset().

◆ AxisMin

constexpr int Joystick::AxisMin = -32768
staticconstexpr

Definition at line 111 of file Joystick.h.

Referenced by Joystick::AxisCalibration_t::reset().


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