"""Pipeline stage entry points (data, classify, hardware, visualization)."""
from __future__ import annotations
from pathlib import Path
from typing import Any
from .base import (
BaseClassifyStage,
BaseDataStage,
BaseFeatureStage,
BaseHardwareStage,
BaseOptimizationStage,
BaseVisualizationStage,
)
from .classify import (
DefaultClassifyStage,
_ensure_classifiers_registered,
run_classify_stage,
run_single_classifier,
)
from .data import DefaultDataStage, Readout2019DataStage
from .features import DefaultFeatureStage
from .hardware import DefaultHardwareStage, run_hardware_stage
from .helpers import (
FILTER_CLASSIFIERS,
data_out_data_fraction,
data_out_labels_placeholder,
hydrate_data_out,
resolve_cache_paths,
transition_plan,
)
from .optimization import DefaultOptimizationStage
from .visualization import DefaultVisualizationStage, run_visualization_stage
[docs]
def run_data_stage(
cfg: Any,
*,
cache_dir: str | Path | None = None,
demod_cache_path: str | Path | None = None,
classifiers_run: list[str] | None = None,
) -> dict[str, Any]:
"""Run the default data stage (load, demodulate, split, transitions).
Thin wrapper around :class:`DefaultDataStage`.
Args:
cfg: Pipeline config (typically :class:`~arcade.config.ArcadeConfig`).
cache_dir: Optional root for demod / spectral / transition caches.
demod_cache_path: Optional explicit demod-cache file path.
classifiers_run: Classifier names used to auto-plan transition
detection when ``transitions.auto`` is enabled.
Returns:
Data-stage dict with traces, labels, splits, and transition results.
"""
return DefaultDataStage().run(
cfg,
cache_dir=cache_dir,
demod_cache_path=demod_cache_path,
classifiers_run=classifiers_run,
)
__all__ = [
"BaseClassifyStage",
"BaseDataStage",
"BaseFeatureStage",
"BaseHardwareStage",
"BaseOptimizationStage",
"BaseVisualizationStage",
"DefaultClassifyStage",
"DefaultDataStage",
"DefaultFeatureStage",
"DefaultHardwareStage",
"DefaultOptimizationStage",
"DefaultVisualizationStage",
"Readout2019DataStage",
"FILTER_CLASSIFIERS",
"hydrate_data_out",
"data_out_data_fraction",
"data_out_labels_placeholder",
"resolve_cache_paths",
"transition_plan",
"_ensure_classifiers_registered",
"run_data_stage",
"run_classify_stage",
"run_single_classifier",
"run_hardware_stage",
"run_visualization_stage",
]