//! Beat timing as rendering sees it.
use serde::{Deserialize, Serialize};
/// Beat timing used to render one frame.
#[derive(Debug, Clone, Copy, Default, PartialEq, Serialize, Deserialize)]
pub struct BeatState {
/// Beats since an arbitrary start, never negative.
pub beat_progression: f32,
pub beats_per_minute: f32,
/// Frames per second of the renderer that uses this state.
pub framerate: f32,
}