⎇ d3649bfd1a80153652c2a028315369bb4b184024
crates/modules/ui_engine/widgets/lapaloma-stream/src/lib.rs
Historia
Quién tocó qué
crudo
feat(lapaloma-stream): osciloscopio CRT con RingBuffer en sweep mode
1//! `lapaloma-stream` — telemetría streaming tipo osciloscopio.
2//!
3//! Núcleo: `lapaloma_core::ring::RingBuffer` + render en dos
4//! segmentos split-at-head (modo sweep). El emisor de samples vive
5//! afuera del Element — típicamente en el `Render` host con un
6//! timer `cx.background_executor().timer(...)` que llama a
7//! `buffer.push(value)` y `cx.notify()` cada N ms.
8//!
9//! El Element clona el RingBuffer por frame (para cap = 512 son
10//! 4 KB, irrelevante). Para capacidades grandes (100k+) la siguiente
11//! optimización es pasar `Arc<RingBuffer>` con shared read y
12//! mutación interna via `Mutex`/`AtomicU64` para el head.
13
14#![forbid(unsafe_code)]
15#![allow(dead_code)]
16
17pub mod envelope {}
18
19#[cfg(feature = "gpui")]
20pub mod element;
21
22#[cfg(feature = "gpui")]
23pub use element::{lapaloma_stream, LapalomaStreamElement};