3#include <QtCore/QObject>
4#include <QtCore/QTimer>
5#include <QtCore/QVariantList>
6#include <QtQmlIntegration/QtQmlIntegration>
17 Q_MOC_INCLUDE(
"Joystick.h")
29#ifdef QGC_UNITTEST_BUILD
30 friend class JoystickManagerTest;
63 void _checkForAddedOrRemovedJoysticks();
64 void _activeVehicleChanged(
Vehicle *activeVehicle);
65 void _setActiveJoystickByName(
const QString &name);
68 void _handleUpdateComplete(
int instanceId);
69 void _handleBatteryUpdated(
int instanceId);
70 void _handleGamepadRemapped(
int instanceId);
71 void _handleTouchpadEvent(
int instanceId,
int touchpad,
int finger,
bool down,
float x,
float y,
float pressure);
72 void _handleSensorUpdate(
int instanceId,
int sensor,
float x,
float y,
float z);
75 void _setActiveJoystickFromSettings();
76 void _setActiveJoystick(
Joystick *joystick);
77 bool _joystickEnabledForVehicle(
Vehicle *vehicle)
const;
78 void _setJoystickEnabledForVehicle(
Vehicle *vehicle,
bool enabled);
79 Joystick *_findJoystickByInstanceId(
int instanceId);
80 void _updatePollingTimer();
84 QMap<QString, Joystick*> _name2JoystickMap;
bool activeJoystickEnabledForActiveVehicle() const
~JoystickManager() override
static JoystickManager * instance()
Joystick * activeJoystick()
Q_INVOKABLE Joystick * joystickByName(const QString &name) const
Get joystick by name (returns nullptr if not found)
void setActiveJoystickEnabledForActiveVehicle(bool enabled)
QStringList availableJoystickNames() const
void availableJoystickNamesChanged()
void activeJoystickChanged(Joystick *joystick)
int joystickCount() const
Q_INVOKABLE QStringList linkedGroupMembers(const QString &groupId) const
void activeJoystickEnabledForActiveVehicleChanged()