gled_model/timing.rs
1//! Beat timing as rendering sees it.
2
3use serde::{Deserialize, Serialize};
4
5/// Beat timing used to render one frame.
6#[derive(Debug, Clone, Copy, Default, PartialEq, Serialize, Deserialize)]
7pub struct BeatState {
8 /// Beats since an arbitrary start, never negative.
9 pub beat_progression: f32,
10 pub beats_per_minute: f32,
11 /// Frames per second of the renderer that uses this state.
12 pub framerate: f32,
13}