18#include "ControlsManager.hpp"
63 qDebug() <<
"Failed to initialize joystick controller.";
100 QString targetProcessName =
"HotWheels-app";
117 QThread::msleep(1000);
192 process.start(
"pgrep", QStringList() << processName);
193 process.waitForFinished();
195 return !process.readAllStandardOutput().isEmpty();
DrivingMode
Enum class for the driving mode.
Class for the client thread.
void readJoystickEnable()
Reads joystick enable status.
DrivingMode m_currentMode
QThread * m_processMonitorThread
Data::CarDataI * m_carDataObject
QThread * m_joystickControlThread
bool isProcessRunning(const QString &processName)
Check if a process is running.
JoysticksController * m_manualController
void setMode(DrivingMode mode)
Sets the driving mode.
~ControlsManager()
Destructor for the ControlsManager class.
QThread * m_manualControllerThread
ControlsManager(int argc, char **argv, QObject *parent=nullptr)
Constructs a ControlsManager object.
ClientThread * m_clientObject
std::atomic< bool > m_threadRunning
EngineController m_engineController
QThread * m_carDataThread
The JoysticksController class.
void processInput()
Runs the joystick controller loop.