resolve_target_names#

obsidian.parameters.targets.resolve_target_names(targets: list, target_names: list[str] | None, *, require_thresholds: bool = False, drop_tracking_only: bool = True) list[source]#

Resolve a name filter against a list of ``Target``s.

Centralizes the existence / tracking-only / threshold checks shared by plotting and characterization. None means “all targets that pass the filters”; an explicit list raises on unknown names so typos surface.

Parameters:
  • targets – All targets defined on the campaign.

  • target_names – Optional subset to restrict to.

  • require_thresholds – If True, every selected target must have a threshold set (used by characterization / passfail / confidence).

  • drop_tracking_only – If True, tracking_only targets are dropped when target_names is None and rejected when listed explicitly.

Returns:

Selected targets in the order they appear in targets.