BB.Estimator.Context (bb v0.20.0)

Copy Markdown View Source

Framework-provided init context delivered to BB.Estimator.init/1 via the :estimator_context option.

Carries the topology-derived information an estimator needs to interpret its inputs and stamp its outputs correctly: the robot module, the estimator's full path, the target frame for its outputs, and the static frame transforms from each input's source frame to the target frame.

Fields

  • :robot - The robot module that owns this estimator.
  • :path - The estimator's full path (e.g. [:sensor, :base_link, :imu, :orientation] for sensor-nested or [:estimator, :base_link, :pose] for link-nested).
  • :target_frame - The frame atom of the estimator's outputs. For sensor-nested estimators this is the parent sensor's frame. For link-nested estimators this is the parent link's name.
  • :transforms - A map from input declaration name to a BB.Math.Transform.t() describing the static transform from that input's source frame into the target frame. For inputs already in the target frame the value is BB.Math.Transform.identity(). Empty for sensor-nested estimators (no transform needed - the input is in the same frame as the output).

Summary

Types

t()

@type t() :: %BB.Estimator.Context{
  path: [atom()],
  robot: module(),
  target_frame: atom(),
  transforms: %{required(atom()) => BB.Math.Transform.t()}
}