|
|
@@ -41,26 +41,32 @@ class PostRequestGenerator:
|
|
|
hw_cfg : содержимое hw_config.json
|
|
|
rf_raster_time : шаг RF-растра в секундах (из params["rf_raster_time"])
|
|
|
"""
|
|
|
- prefix = hw_cfg.get("file_path_prefix", "")
|
|
|
+ # Use the actual output directory of this interpretation run as the
|
|
|
+ # file base. file_path_prefix in hw_config is intentionally ignored
|
|
|
+ # here — it was a legacy hardcoded path. The orchestrator will remap
|
|
|
+ # the container-internal output_dir to the Windows host path later via
|
|
|
+ # _patch_seq_file_paths() before forwarding to the spectrometer.
|
|
|
+ def _f(filename: str) -> str:
|
|
|
+ return os.path.join(output_dir, filename)
|
|
|
|
|
|
iadc_cfg = dict(hw_cfg.get("iadc", {}))
|
|
|
srate = iadc_cfg.get("srate", 8_000_000)
|
|
|
iadc_cfg["points"] = [int(v * srate) for v in adc_values]
|
|
|
|
|
|
isync_cfg = dict(hw_cfg.get("isync", {}))
|
|
|
- isync_cfg["file"] = prefix + "sync_v2.xml"
|
|
|
+ isync_cfg["file"] = _f("sync_v2.xml")
|
|
|
|
|
|
isdr_cfg = dict(hw_cfg.get("isdr", {}))
|
|
|
- isdr_cfg["file"] = prefix + f"rf_{rf_raster_time}_raster.bin"
|
|
|
+ isdr_cfg["file"] = _f(f"rf_{rf_raster_time}_raster.bin")
|
|
|
|
|
|
igrax_cfg = dict(hw_cfg.get("igrax", {}))
|
|
|
igray_cfg = dict(hw_cfg.get("igray", {}))
|
|
|
igraz_cfg = dict(hw_cfg.get("igraz", {}))
|
|
|
|
|
|
# Включаем ось, если в seq_data присутствует соответствующий сигнал
|
|
|
- igrax_cfg["file"] = prefix + "gx.txt"
|
|
|
- igray_cfg["file"] = prefix + "gy.txt"
|
|
|
- igraz_cfg["file"] = prefix + "gz.txt"
|
|
|
+ igrax_cfg["file"] = _f("gx.txt")
|
|
|
+ igray_cfg["file"] = _f("gy.txt")
|
|
|
+ igraz_cfg["file"] = _f("gz.txt")
|
|
|
|
|
|
if "gx" in seq_data:
|
|
|
igrax_cfg["enabled"] = True
|