1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
//! The core APIs for creating activities for Boppo shared across different
//! environments.
//!
//! ## Lights
//!
//! For setting the color of lights see the set_color and similar functions on
//! [`Button`], [`Buttons`], and [`Lights`].
//!
//! By default all changes are immediately flushed to the hardware. If you want
//! to make multiple changes in a row and performance matters you can use
//! [`Framebuffer`] or modify the auto flush behavior using [`LightsSetter`].
//!
//! Each Boppo button has 4 LED lights which are represented by [`LightDir`].
//!
//! For drawing and animating simple shapes treating the entire Boppo surface as
//! a display see [`lights_plane`].
//!
//! ## Button Events
//!
//! You can receive button change events as an async stream using
//! [`ButtonEvents`].
//!
//! You can also query the current state of the buttons using
//! [`Button::is_pressed`] and [`Buttons::currently_pressed`].
//!
//! You can use [`Button::wait_for_press`] and [`Button::wait_for_release`] to
//! wait for a button to be in a specific state.
//!
//! ## Audio
//!
//! Audio APIs are not apart of boppo_core because the APIs vary between
//! environments (i.e. WASM vs WebSockets vs embedded in the firmware).
//!
//! ## Guidelines
//!
//! See Boppo's
//! [Activity Guidelines](https://developer.boppo.com/docs/activity-guidelines)
//! for guidelines on creating great activities.
pub use ;
pub use ButtonEvent;
pub use ButtonEvents;
pub use Buttons;
pub use Easing;
pub use Framebuffer;
pub use LanguageTag;
pub use LightDir;
pub use Lights;
pub use LightsSetter;
pub use log;
pub use ShortDuration;