waveform_editor.import_waveform.ImportWaveform

class waveform_editor.import_waveform.ImportWaveform(entries, *, yaml_str='', name='waveform', dd_version=None)

Bases: BaseWaveform

A waveform whose entire content is imported from external entries.

Used for imports that cannot be expressed as a single analytic segment: non-0D quantities (a value per radial point, etc.) and wildcard paths (.../*) that mirror a whole subtree. This class only carries the imports' configuration; the exporter copies the (resampled) source into the target IDS via the ImportResolver.

It may carry several imports ([{ref: a}, {ref: b}]), overlaid in listed order. A whole-IDS import (<ids>/*) is an overlay base for that IDS. Overlays are applied broadest-first (see specificity()), so more specific imports win.

__init__(entries, *, yaml_str='', name='waveform', dd_version=None)

Methods

__init__(entries, *[, yaml_str, name, ...])

get_metadata(dd_version)

Parses the name of the waveform and returns the IDS metadata for this waveform.

get_value([time])

get_yaml_string()

Attributes

specificity

Concrete (pre-wildcard) path length.

get_metadata(dd_version)

Parses the name of the waveform and returns the IDS metadata for this waveform. The name must be formatted as follows: <IDS-Name>/<IDS-path>

For example: ec_launchers/beam(2)/phase/angle

Parameters:
dd_version

Data dictionary version to create metadata for.

Returns:

The metadata of the IDS node, or None if it could not find it.

property specificity

Concrete (pre-wildcard) path length. Broader overlays have a lower value and are applied first, so more specific imports win; * (whole entry) is 0.


Last update: 2026-07-16