1#![forbid(unsafe_code)]
29#![deny(missing_docs)]
30
31pub mod bringup;
32mod citizen;
33pub mod codec;
34pub mod contract;
35pub mod cookbook;
36pub mod dispatch;
37pub mod embed;
38pub mod mode;
39pub mod palette;
40pub mod profiles;
41mod render;
42pub mod set_lens;
43pub mod stack;
44pub mod surface;
45pub mod universal;
46pub mod universal_editor;
47pub mod universal_view;
48
49pub use bringup::{
50 BringUpEntry, BringUpLedger, GLASSES_BRINGUP_FIXTURE, GLASSES_BRINGUP_FIXTURE_TEXT,
51 GLASSES_BRINGUP_KIND, GLASSES_BRINGUP_LANES, GLASSES_BRINGUP_NAMESPACE, HALO_BLE_DIRECT_LANE,
52 HALO_CAMERA_LANE, HALO_PHONE_RELAY_LANE, HALO_WEB_BLUETOOTH_LANE, VITURE_CARINA_LANE,
53 VITURE_LEGACY_IMU_LANE, VITURE_UVC_CAMERA_LANE, default_glasses_bringup_fixture,
54 glasses_bringup_fixture, glasses_bringup_fixture_names,
55};
56pub use citizen::{ViewLensDescriptor, view_lens_descriptor_class_symbol};
57pub use codec::{
58 PairCodec, SurfaceCodec, UNIVERSAL_SURFACE_CODEC_ID, roundtrip_holds,
59 universal_surface_codec_symbol,
60};
61pub use contract::{Draft, Editor, Lens, LensKind, LensMeta, Operation, View};
62pub use cookbook::universal_lens_demo;
63pub use dispatch::{DispatchContext, DispatchOutcome, DispatchReason, LensRegistry};
64pub use embed::embed_scene;
65pub use mode::{Exposure, Mode, action_exposure, denied_scene, readonly_scene, universal_scene};
66pub use palette::{
67 A11y, Command, CommandKind, FocusDir, a11y_of, diagnostics_scene, filter_commands, focused_id,
68 move_focus, palette_intent, palette_scene, with_a11y, with_focus,
69};
70pub use profiles::{DEVICE_PRESETS, project_for_preset};
71pub use set_lens::{active_lens, apply_set_lens, empty_pane_lenses};
72pub use stack::LensStackEntry;
73pub use surface::{SurfaceCaps, SurfaceError};
74pub use universal::{UNIVERSAL_EDITOR_ID, UNIVERSAL_VIEW_ID, register_universal_default};
75pub use universal_editor::{EDIT_MODES, UniversalEditor, render_draft};
76pub use universal_view::{UniversalView, render_value};
77
78pub const UNIVERSAL_DEFAULT_LENS: &str = UNIVERSAL_VIEW_ID;
80
81pub static RECIPES: sim_cookbook::EmbeddedDir =
83 include!(concat!(env!("OUT_DIR"), "/cookbook_recipes.rs"));
84
85#[cfg(test)]
86mod bringup_tests;
87#[cfg(test)]
88mod mode_tests;
89#[cfg(test)]
90mod stack_tests;
91#[cfg(test)]
92mod tests;
93#[cfg(test)]
94mod universal_tests;