Keyboard remote control for our robot core (mobile base). More...
Public Member Functions | |
std::string & | getFirmwareVersion () |
std::string & | getHardwareVersion () |
ecl::Pose2D< double > | getPose () |
ecl::Pose2D< double > | getPose () |
std::string & | getSoftwareVersion () |
std::string & | getUDID () |
bool | init () |
Initialises the node. | |
bool | isAcquired () |
KobukiManager () | |
Default constructor, needs initialisation. | |
KobukiManager () | |
KobukiManager (const std::string &device_port) | |
KobukiManager () | |
KobukiManager () | |
void | processMotion () |
void | processStreamData () |
void | processStreamData () |
void | processStreamData () |
void | processVersionInfo (const kobuki::VersionInfo &version_info) |
void | spin () |
Worker thread loop; sends current velocity command at a fixed rate. | |
void | spin () |
~KobukiManager () | |
~KobukiManager () | |
~KobukiManager () | |
Private Member Functions | |
void | decrementAngularVelocity () |
If not already mined, decrement the angular velocities.. | |
void | decrementLinearVelocity () |
If not already minned, decrement the linear velocities.. | |
void | incrementAngularVelocity () |
If not already maxxed, increment the angular velocities.. | |
void | incrementLinearVelocity () |
If not already maxxed, increment the command velocities.. | |
void | keyboardInputLoop () |
The worker thread function that accepts input keyboard commands. | |
void | processKeyboardInput (char c) |
Process individual keyboard inputs. | |
void | resetVelocity () |
void | restoreTerminal () |
Private Attributes | |
volatile bool | acquired |
double | angular_vel_max |
double | angular_vel_step |
double | dth |
double | dx |
std::string | firmware |
std::string | hardware |
int | key_file_descriptor |
kobuki::Kobuki | kobuki |
double | linear_vel_max |
double | linear_vel_step |
std::string | name |
struct termios | original_terminal_state |
ecl::Pose2D< double > | pose |
bool | quit_requested |
ecl::Slot | slot_stream_data |
ecl::Slot< const kobuki::VersionInfo & > | slot_version_info |
std::string | software |
ecl::Thread | thread |
std::string | udid |
double | vx |
double | wz |
Keyboard remote control for our robot core (mobile base).
Definition at line 14 of file initialisation.cpp.
KobukiManager::KobukiManager | ( | ) | [inline] |
Default constructor, needs initialisation.
Definition at line 16 of file initialisation.cpp.
KobukiManager::KobukiManager | ( | ) | [inline] |
Definition at line 21 of file sigslots.cpp.
KobukiManager::KobukiManager | ( | ) | [inline] |
Definition at line 26 of file simple_loop.cpp.
KobukiManager::~KobukiManager | ( | ) | [inline] |
Definition at line 39 of file simple_loop.cpp.
KobukiManager::KobukiManager | ( | const std::string & | device_port | ) | [inline] |
Definition at line 24 of file version_info.cpp.
KobukiManager::~KobukiManager | ( | ) | [inline] |
Definition at line 36 of file version_info.cpp.
void KobukiManager::decrementAngularVelocity | ( | ) | [private] |
If not already mined, decrement the angular velocities..
Definition at line 342 of file simple_keyop.cpp.
void KobukiManager::decrementLinearVelocity | ( | ) | [private] |
If not already minned, decrement the linear velocities..
Definition at line 318 of file simple_keyop.cpp.
std::string& KobukiManager::getFirmwareVersion | ( | ) | [inline] |
Definition at line 51 of file version_info.cpp.
std::string& KobukiManager::getHardwareVersion | ( | ) | [inline] |
Definition at line 50 of file version_info.cpp.
ecl::Pose2D< double > KobukiManager::getPose | ( | ) | [inline] |
Definition at line 64 of file simple_loop.cpp.
ecl::Pose2D<double> KobukiManager::getPose | ( | ) |
std::string& KobukiManager::getSoftwareVersion | ( | ) | [inline] |
Definition at line 52 of file version_info.cpp.
std::string& KobukiManager::getUDID | ( | ) | [inline] |
Definition at line 53 of file version_info.cpp.
void KobukiManager::incrementAngularVelocity | ( | ) | [private] |
If not already maxxed, increment the angular velocities..
Definition at line 330 of file simple_keyop.cpp.
void KobukiManager::incrementLinearVelocity | ( | ) | [private] |
If not already maxxed, increment the command velocities..
Definition at line 306 of file simple_keyop.cpp.
bool KobukiManager::init | ( | ) |
Initialises the node.
Definition at line 147 of file simple_keyop.cpp.
bool KobukiManager::isAcquired | ( | ) | [inline] |
Definition at line 49 of file version_info.cpp.
void KobukiManager::keyboardInputLoop | ( | ) | [private] |
The worker thread function that accepts input keyboard commands.
This is ok here - but later it might be a good idea to make a node which posts keyboard events to a topic. Recycle common code if used by many!
Definition at line 217 of file simple_keyop.cpp.
void KobukiManager::processKeyboardInput | ( | char | c | ) | [private] |
Process individual keyboard inputs.
c | keyboard input. |
Definition at line 251 of file simple_keyop.cpp.
void KobukiManager::processMotion | ( | ) | [inline] |
Definition at line 58 of file simple_loop.cpp.
void KobukiManager::processStreamData | ( | ) | [inline] |
Definition at line 44 of file simple_loop.cpp.
void KobukiManager::processStreamData | ( | ) | [inline] |
Definition at line 46 of file sigslots.cpp.
void KobukiManager::processStreamData | ( | ) |
void KobukiManager::processVersionInfo | ( | const kobuki::VersionInfo & | version_info | ) | [inline] |
Definition at line 40 of file version_info.cpp.
void KobukiManager::resetVelocity | ( | ) | [private] |
Definition at line 351 of file simple_keyop.cpp.
void KobukiManager::restoreTerminal | ( | ) | [private] |
void KobukiManager::spin | ( | ) | [inline] |
Worker thread loop; sends current velocity command at a fixed rate.
It also process ros functions as well as aborting when requested.
Definition at line 32 of file sigslots.cpp.
void KobukiManager::spin | ( | ) |
volatile bool KobukiManager::acquired [private] |
Definition at line 56 of file version_info.cpp.
double KobukiManager::angular_vel_max [private] |
Definition at line 92 of file simple_keyop.cpp.
double KobukiManager::angular_vel_step [private] |
Definition at line 92 of file simple_keyop.cpp.
double KobukiManager::dth [private] |
Definition at line 69 of file simple_loop.cpp.
double KobukiManager::dx [private] |
Definition at line 69 of file simple_loop.cpp.
std::string KobukiManager::firmware [private] |
Definition at line 58 of file version_info.cpp.
std::string KobukiManager::hardware [private] |
Definition at line 58 of file version_info.cpp.
int KobukiManager::key_file_descriptor [private] |
Definition at line 112 of file simple_keyop.cpp.
kobuki::Kobuki KobukiManager::kobuki [private] |
Definition at line 40 of file initialisation.cpp.
double KobukiManager::linear_vel_max [private] |
Definition at line 91 of file simple_keyop.cpp.
double KobukiManager::linear_vel_step [private] |
Definition at line 91 of file simple_keyop.cpp.
std::string KobukiManager::name [private] |
Definition at line 93 of file simple_keyop.cpp.
struct termios KobukiManager::original_terminal_state [private] |
Definition at line 113 of file simple_keyop.cpp.
ecl::Pose2D< double > KobukiManager::pose [private] |
Definition at line 70 of file simple_loop.cpp.
bool KobukiManager::quit_requested [private] |
Definition at line 111 of file simple_keyop.cpp.
ecl::Slot KobukiManager::slot_stream_data [private] |
Definition at line 53 of file sigslots.cpp.
ecl::Slot<const kobuki::VersionInfo&> KobukiManager::slot_version_info [private] |
Definition at line 59 of file version_info.cpp.
std::string KobukiManager::software [private] |
Definition at line 58 of file version_info.cpp.
ecl::Thread KobukiManager::thread [private] |
Definition at line 114 of file simple_keyop.cpp.
std::string KobukiManager::udid [private] |
Definition at line 58 of file version_info.cpp.
double KobukiManager::vx [private] |
Definition at line 86 of file simple_keyop.cpp.
double KobukiManager::wz [private] |
Definition at line 86 of file simple_keyop.cpp.