""" Unified Pipeline Architecture. This module provides a clean, dependency-managed pipeline system: - Stage: Base class for all pipeline components - Pipeline: DAG-based execution orchestrator - PipelineParams: Runtime configuration for animation - PipelinePreset: Pre-configured pipeline configurations - StageRegistry: Unified registration for all stage types The pipeline architecture supports: - Sources: Data providers (headlines, poetry, pipeline viz) - Effects: Post-processors (noise, fade, glitch, hud) - Displays: Output backends (terminal, pygame, websocket) - Cameras: Viewport controllers (vertical, horizontal, omni) Example: from engine.pipeline import Pipeline, PipelineConfig, StageRegistry pipeline = Pipeline(PipelineConfig(source="headlines", display="terminal")) pipeline.add_stage("source", StageRegistry.create("source", "headlines")) pipeline.add_stage("display", StageRegistry.create("display", "terminal")) pipeline.build().initialize() result = pipeline.execute(initial_data) """ from engine.pipeline.controller import ( Pipeline, PipelineConfig, PipelineRunner, create_default_pipeline, create_pipeline_from_params, ) from engine.pipeline.core import ( PipelineContext, Stage, StageConfig, StageError, StageResult, ) from engine.pipeline.params import ( DEFAULT_HEADLINE_PARAMS, DEFAULT_PIPELINE_PARAMS, DEFAULT_PYGAME_PARAMS, PipelineParams, ) from engine.pipeline.presets import ( DEMO_PRESET, FIREHOSE_PRESET, PIPELINE_VIZ_PRESET, POETRY_PRESET, PRESETS, SIXEL_PRESET, WEBSOCKET_PRESET, PipelinePreset, create_preset_from_params, get_preset, list_presets, ) from engine.pipeline.registry import ( StageRegistry, discover_stages, register_camera, register_display, register_effect, register_source, ) __all__ = [ # Core "Stage", "StageConfig", "StageError", "StageResult", "PipelineContext", # Controller "Pipeline", "PipelineConfig", "PipelineRunner", "create_default_pipeline", "create_pipeline_from_params", # Params "PipelineParams", "DEFAULT_HEADLINE_PARAMS", "DEFAULT_PIPELINE_PARAMS", "DEFAULT_PYGAME_PARAMS", # Presets "PipelinePreset", "PRESETS", "DEMO_PRESET", "POETRY_PRESET", "PIPELINE_VIZ_PRESET", "WEBSOCKET_PRESET", "SIXEL_PRESET", "FIREHOSE_PRESET", "get_preset", "list_presets", "create_preset_from_params", # Registry "StageRegistry", "discover_stages", "register_source", "register_effect", "register_display", "register_camera", ]