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