Skip to content

Add multi-target renderer interface and implementations#14

Merged
wow-miley merged 1 commit intomainfrom
email/pho-3-phosphor-multi-target-renderer-interface
Mar 5, 2026
Merged

Add multi-target renderer interface and implementations#14
wow-miley merged 1 commit intomainfrom
email/pho-3-phosphor-multi-target-renderer-interface

Conversation

@wow-miley
Copy link
Contributor

Implements PHO-3 in phosphor-core by introducing a serializable SimulationFrame/FrameCell model, RenderTarget enum, generic PhosphorRenderer contract, and a hot-swappable RendererRegistry. Adds a common ComposeRenderer output model plus a JVM TerminalRenderer with ANSI output and ~30fps throttling semantics. Includes a MultiTargetRendererExample showing the same frame rendered to terminal and compose targets simultaneously. Enables Kotlin serialization plugin/dependencies and adds targeted tests for frame serialization/round-tripping, registry behavior, compose mapping, terminal output/throttle behavior, and the dual-target example; ./gradlew jvmTest passes.

@wow-miley wow-miley merged commit bf35d5a into main Mar 5, 2026
1 check passed
@wow-miley wow-miley deleted the email/pho-3-phosphor-multi-target-renderer-interface branch March 5, 2026 03:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant