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