Easy Navigation
Loading...
Searching...
No Matches
File List
Here is a list of all files with brief descriptions:
 easynav_common
  include
   easynav_common
    testing
     
LogCapture.hpp
LogCapture: records the log messages emitted while it lives (for tests)
    types
     
NavState.hpp
A blackboard-like structure to hold the current state of the navigation system
     
RobotGeometry.hpp
Declaration of RobotGeometry and LegacyRobotGeometryNames
     
TFInfo.hpp
    
CircularBuffer.hpp
    
PackageShare.hpp
Get_package_share_path(): a package's share directory on every ROS 2 distro
    
Parameters.hpp
Parameter helpers for plugins that may be initialized several times on the same node
    
RobotGeometry.hpp
RobotGeometryRegistry, which shares the robot's geometry, and get_robot_geometry()
    
RTTFBuffer.hpp
    
Singleton.hpp
    
TransformListener.hpp
Make_transform_listener(): a node-attached TransformListener on every ROS 2 distro
    
YTSession.hpp
  tests
   
navstate_tests.cpp
   
parameters_tests.cpp
Tests for declare_parameter_if_absent()
   
robot_geometry_tests.cpp
Tests for get_robot_geometry(): the system's geometry and deprecated parameters
   
transform_listener_tests.cpp
 easynav_controller
  include
   easynav_controller
    fault_injection
     
FaultyController.hpp
Declaration of the FaultyController class
    safety
     
CommandGuard.hpp
Declaration of the CommandGuard class
    
ControllerNode.hpp
Declaration of the ControllerNode class, a ROS 2 lifecycle node for speed computation in Easy Navigation
    
DummyController.hpp
Declaration of the DummyController method
    
VelocityMux.hpp
Declaration of the VelocityMux class
    
VelocitySmoother.hpp
Declaration of the VelocitySmoother class
  src
   easynav_controller
    fault_injection
     
FaultyController.cpp
Implementation of the FaultyController class
    safety
     
CommandGuard.cpp
Implementation of the CommandGuard class
    
ControllerNode.cpp
Implementation of the ControllerNode class
    
DummyController.cpp
Implementation of the DummyController class
    
VelocityMux.cpp
Implementation of the VelocityMux class
    
VelocitySmoother.cpp
Implementation of the VelocitySmoother class
  tests
   
command_guard_tests.cpp
Safety::CommandGuard around the VelocityMux: timeout, non-finite commands, new controller commands, keepalive, QoS and diagnostics
   
controller_node_tests.cpp
   
controller_node_velocity_tests.cpp
ControllerNode as the single exit of the velocity command: robot limits for the controller plugins, selection among sources (mux), smoothing, publication, and braking on deactivation
   
faulty_controller_tests.cpp
How ControllerNode copes with a controller plugin that misbehaves (FaultyController)
   
rt_allocation_tests.cpp
The RT velocity path (proposals, mux, smoother) must not allocate memory once warm
   
velocity_mux_tests.cpp
   
velocity_smoother_tests.cpp
 easynav_localizer
  include
   easynav_localizer
    fault_injection
     
FaultyLocalizer.hpp
Declaration of the FaultyLocalizer class
    
DummyLocalizer.hpp
Declaration of the DummyLocalizer class, a default plugin implementation for localization
    
LocalizerNode.hpp
Declaration of the LocalizerNode class, a ROS 2 lifecycle node for localization tasks in Easy Navigation
  src
   easynav_localizer
    fault_injection
     
FaultyLocalizer.cpp
Implementation of the FaultyLocalizer class
    
DummyLocalizer.cpp
Implementation of the DummyLocalizer class
    
LocalizerNode.cpp
Implementation of the LocalizerNode class
  tests
   
faulty_localizer_tests.cpp
FaultyLocalizer: each fault does what it says
   
localizer_node_tests.cpp
 easynav_maps_manager
  include
   easynav_maps_manager
    fault_injection
     
FaultyMapsManager.hpp
Declaration of the FaultyMapsManager class
    
DummyMapsManager.hpp
Declaration of the DummyMapsManager class, a default map manager plugin for Easy Navigation
    
MapsManagerNode.hpp
Declaration of the MapsManagerNode class, a ROS 2 lifecycle node for map handling in Easy Navigation
  src
   easynav_maps_manager
    fault_injection
     
FaultyMapsManager.cpp
Implementation of the FaultyMapsManager class
    
DummyMapsManager.cpp
Implementation of the DummyMapsManager class
    
MapsManagerNode.cpp
Implementation of the MapsManagerNode class
  tests
   
faulty_maps_manager_tests.cpp
FaultyMapsManager: each fault does what it says
   
maps_manager_node_tests.cpp
 easynav_planner
  include
   easynav_planner
    fault_injection
     
FaultyPlanner.hpp
Declaration of the FaultyPlanner class
    
DummyPlanner.hpp
Declaration of the DummyPlanner class, a default fallback planner plugin
    
PlannerNode.hpp
Declaration of the PlannerNode class, a ROS 2 lifecycle node for computing navigation paths in Easy Navigation
  src
   easynav_planner
    fault_injection
     
FaultyPlanner.cpp
Implementation of the FaultyPlanner class
    
DummyPlanner.cpp
Implementation of the DummyPlanner class
    
PlannerNode.cpp
Implementation of the PlannerNode class
  tests
   
faulty_planner_tests.cpp
FaultyPlanner: each fault does what it says
   
planner_node_tests.cpp
   
planner_path_check_tests.cpp
PlannerNode discards non-finite paths and reports them
 easynav_sensors
  include
   easynav_sensors
    types
     
DetectionsPerception.hpp
Defines data structures and utilities for representing and processing image perceptions
     
GNSSPerception.hpp
Defines data structures and utilities for representing and processing GNSS perceptions
     
ImagePerception.hpp
Defines data structures and utilities for representing and processing image perceptions
     
IMUPerception.hpp
Defines data structures and utilities for representing and processing IMU perceptions
     
OdometryPerception.hpp
Defines data structures and utilities for representing and processing odometry perceptions
     
Perceptions.hpp
Defines data structures and utilities for representing and processing sensor perceptions
     
PointPerception.hpp
Defines data structures and utilities for representing and processing point-based sensor perceptions
    
SensorsNode.hpp
Declaration of the SensorsNode class, a ROS 2 lifecycle node for sensor fusion tasks in Easy Navigation
  src
   easynav_sensors
    types
     
DetectionsPerception.cpp
     
GNSSPerception.cpp
     
ImagePerception.cpp
     
IMUPerception.cpp
     
OdometryPerception.cpp
     
PointPerception.cpp
    
SensorsNode.cpp
Implementation of the SensorsNode class
  tests
   
perception_handlers_tests.cpp
The perception handlers other than points (IMU, GNSS, odometry, detections, image): they reject wrong types, store each message in NavState, trigger once per message, and their perceptions copy, print and report their latest stamp
   
perception_locking_tests.cpp
   
perceptions_tests.cpp
   
plugin_tests.cpp
Tests that verify the pluginlib plugin registration, loading, and correctness of all built-in PerceptionHandler plugins
   
pointperceptionsops_tests.cpp
   
sensors_data_age_tests.cpp
SensorsNode: perceptions older than "forget_time" are invalidated and reported
   
sensors_lifecycle_tests.cpp
   
sensors_node_tests.cpp
 easynav_system
  include
   easynav_system
    safety
     
ConfigurationFingerprint.hpp
Fingerprint (dump and SHA-256) of the EasyNav configuration
     
ParameterFreezer.hpp
Declaration of the ParameterFreezer class
     
RtMonitor.hpp
Declaration of the RtMonitor class
     
SafetyChannelMonitor.hpp
Declaration of the SafetyChannelMonitor class
     
SafetySupervisor.hpp
Declaration of the SafetySupervisor class
    
GoalManager.hpp
Declaration of the GoalManager class
    
GoalManagerClient.hpp
Declaration of the GoalManagerClient class
    
RealTime.hpp
Real-time setup of the EasyNav process
    
SystemNode.hpp
Declaration of the SystemNode class, the central coordinator node for Easy Navigation components
  src
   easynav_system
    safety
     
ConfigurationFingerprint.cpp
Implementation of the configuration fingerprint
     
ParameterFreezer.cpp
Implementation of the ParameterFreezer class
     
RtMonitor.cpp
Implementation of the RtMonitor class
     
SafetyChannelMonitor.cpp
Implementation of the SafetyChannelMonitor class
     
SafetySupervisor.cpp
Implementation of the SafetySupervisor class
    
GoalManager.cpp
Implementation of the GoalManager class
    
GoalManagerClient.cpp
Implementation of the GoalManager class
    
RealTime.cpp
Implementation of the real-time setup of the EasyNav process
    
SystemNode.cpp
Implementation of the SystemNode class
   
goalmanager_test_main.cpp
   
system_main.cpp
  tests
   
goalmanager_tests.cpp
   
real_time_tests.cpp
Real-time setup of the EasyNav process
   
rt_monitor_tests.cpp
Safety::RtMonitor, with simulated cycle start times
   
safety_channel_monitor_tests.cpp
SafetyChannelMonitor, with simulated times
   
safety_module_tests.cpp
The safety module of easynav_system, on its own: configuration fingerprint, parameter freezer and safety supervisor
   
system_actions_tests.cpp
SystemNode as SystemActions (what a recovery system can ask of EasyNav), and recovery_node as one more EasyNav node
   
system_clock_watchdog_tests.cpp
SystemNode tells which EasyNav nodes have use_sim_time and no /clock (their components never run), and warns about them while Active
   
system_component_faults_tests.cpp
SystemNode with a localizer, planner or maps manager that misbehaves (FaultyLocalizer, FaultyPlanner, FaultyMapsManager)
   
system_fault_injection_tests.cpp
The whole RT cycle of SystemNode with a controller that misbehaves (FaultyController)
   
system_lifecycle_cycle_tests.cpp
Exercises SystemNode's own lifecycle state machine through repeated full cycles, including active -> inactive -> unconfigured -> inactive -> active
   
system_lifecycle_mission_tests.cpp
A mission survives reconfiguring EasyNav (active -> inactive -> unconfigured -> inactive -> active, as when switching plugins at runtime) in the middle of it
   
system_pause_tests.cpp
   
system_robot_geometry_tests.cpp
SystemNode shares "robot_geometry.*" with every component before they configure
   
system_safety_mode_tests.cpp
Configuration validation, safety mode, frozen configuration and configuration hash
   
system_shutdown_request_tests.cpp
A shutdown requested by a recovery mitigation takes SystemNode (and every EasyNav node) out of Active through the lifecycle's error path, ending in Finalized
   
system_tfinfo_tests.cpp
   
system_velocity_smoothing_tests.cpp
End to end through SystemNode: with very low accelerations, the published commands are smoothed, never a jump to the controller's command