Struct BatchOptimizerParams

Struct Documentation

struct BatchOptimizerParams

Defines the set of parameters required by the fuse_optimizers::FixedLagSmoother class.

Public Functions

inline void loadFromROS(fuse_core::node_interfaces::NodeInterfaces<fuse_core::node_interfaces::Base, fuse_core::node_interfaces::Logging, fuse_core::node_interfaces::Parameters> interfaces)

Method for loading parameter values from ROS.

Parameters:

interfaces[in] - The node interfaces used to load the parameter

Public Members

rclcpp::Duration optimization_period = {0, static_cast<uint32_t>(RCUTILS_S_TO_NS(0.1))}

The target duration for optimization cycles.

If an optimization takes longer than expected, an optimization cycle may be skipped. The optimization period may be specified in either the “optimization_period” parameter in seconds, or in the “optimization_frequency” parameter in Hz. “optimization_frequency” will be prioritized.

rclcpp::Duration transaction_timeout = {0, static_cast<uint32_t>(RCUTILS_S_TO_NS(0.1))}

The maximum time to wait for motion models to be generated for a received transaction.

Transactions are processed sequentially, so no new transactions will be added to the graph while waiting for motion models to be generated. Once the timeout expires, that transaction will be deleted from the queue.

ceres::Solver::Options solver_options

Ceres Solver::Options object that controls various aspects of the optimizer.