Class SmootherServer
Defined in File nav2_smoother.hpp
Inheritance Relationships
Base Type
public nav2_util::LifecycleNode
Class Documentation
This class hosts variety of plugins of different algorithms to smooth or refine a path from the exposed SmoothPath action server.
Public Types
Public Functions
A constructor for nav2_smoother::SmootherServer.
- Parameters:
options – Additional options to control creation of the node.
Destructor for nav2_smoother::SmootherServer.
Protected Types
Protected Functions
Configures smoother parameters and member variables.
Configures smoother plugin and costmap; Initialize odom subscriber, velocity publisher and smooth path action server.
- Parameters:
state – LifeCycle Node’s state
- Throws:
pluginlib::PluginlibException – When failed to initialize smoother plugin
- Returns:
Success or Failure
Loads smoother plugins from parameter file.
- Returns:
bool if successfully loaded the plugins
Activates member variables.
Activates smoother, costmap, velocity publisher and smooth path action server
- Parameters:
state – LifeCycle Node’s state
- Returns:
Success or Failure
Deactivates member variables.
Deactivates smooth path action server, smoother, costmap and velocity publisher. Before calling deactivate state, velocity is being set to zero.
- Parameters:
state – LifeCycle Node’s state
- Returns:
Success or Failure
Calls clean up states and resets member variables.
Smoother and costmap clean up state is called, and resets rest of the variables
- Parameters:
state – LifeCycle Node’s state
- Returns:
Success or Failure
Called when in Shutdown state.
- Parameters:
state – LifeCycle Node’s state
- Returns:
Success or Failure
SmoothPath action server callback. Handles action server updates and spins server until goal is reached.
Provides global path to smoother received from action client. Local section of the path is optimized using smoother.
- Throws:
nav2_core::PlannerException –
Find the valid smoother ID name for the given request.
- Parameters:
c_name – The requested smoother name
name – Reference to the name to use for control if any valid available
- Returns:
bool Whether it found a valid smoother to use
Validate that the path contains a meaningful path for smoothing.
- Parameters:
path – current path return bool if the path is valid
Protected Attributes