euv_engine/audio/
struct.rs1use super::*;
2
3#[derive(Clone, Data, New)]
6pub struct GameAudioContext {
7 #[set(pub(crate))]
9 pub(crate) context: AudioContext,
10 #[set(pub(crate))]
12 pub(crate) master_gain: GainNode,
13 #[get(type(copy))]
15 pub(crate) master_volume: f64,
16}
17
18#[derive(Clone, Data, New)]
20pub struct AudioClip {
21 #[set(pub(crate))]
23 pub(crate) buffer: AudioBuffer,
24 #[set(pub(crate))]
26 pub(crate) name: String,
27 #[get(type(copy))]
29 #[get_mut(pub(crate))]
30 pub(crate) state: AudioPlayState,
31 #[get(type(copy))]
33 #[get_mut(pub(crate))]
34 pub(crate) looping: bool,
35 #[get(type(copy))]
37 #[get_mut(pub(crate))]
38 pub(crate) volume: f64,
39 #[get(type(copy))]
41 #[get_mut(pub(crate))]
42 pub(crate) playback_rate: f64,
43 #[get_mut(pub(crate))]
45 #[set(pub(crate))]
46 #[new(skip)]
47 pub(crate) source_node: Option<AudioBufferSourceNode>,
48}