upkie 6.1.0
Open-source wheeled biped robots
Loading...
Searching...
No Matches
upkie::cpp::sensors::Joystick Class Reference

Sensor for a joystick controller. More...

#include <Joystick.h>

Public Member Functions

 Joystick (const std::string &device_path="/dev/input/js0")
 Open the device file. More...
 
 ~Joystick () override
 Close device file.
 
bool present () const noexcept
 Check if the device file was opened successfully.
 
std::string prefix () const noexcept final
 Prefix of output in the observation dictionary. More...
 
void write (Dictionary &output) final
 Write output to a dictionary. More...
 
- Public Member Functions inherited from upkie::cpp::sensors::Sensor
virtual ~Sensor ()
 Destructor is virtual to deallocate lists of observers properly.
 
virtual std::string prefix () const noexcept
 Prefix of output in the observation dictionary. More...
 
virtual void write (Dictionary &observation)
 Write output to a dictionary. More...
 

Detailed Description

Sensor for a joystick controller.

Axes are the same for PS4 and Xbox controllers, but buttons differ slightly. See comments in the C++ code of the class for the exact mapping.

Note
This sensor only works on Linux.

Constructor & Destructor Documentation

◆ Joystick()

upkie::cpp::sensors::Joystick::Joystick ( const std::string &  device_path = "/dev/input/js0")

Open the device file.

Parameters
[in]device_pathPath to the joystick device file.

Member Function Documentation

◆ prefix()

std::string upkie::cpp::sensors::Joystick::prefix ( ) const
inlinefinalvirtualnoexcept

Prefix of output in the observation dictionary.

Reimplemented from upkie::cpp::sensors::Sensor.

◆ write()

void upkie::cpp::sensors::Joystick::write ( Dictionary &  output)
finalvirtual

Write output to a dictionary.

Parameters
[out]outputDictionary to write observations to.

Reimplemented from upkie::cpp::sensors::Sensor.


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