@@ -6,18 +6,18 @@ use rodio::{OutputStream, OutputStreamHandle, Sink};
6
6
use std:: marker:: PhantomData ;
7
7
8
8
/// Used internally to play audio on the current "audio device"
9
- pub struct AudioOutput < P = AudioSource >
9
+ pub struct AudioOutput < Source = AudioSource >
10
10
where
11
- P : Decodable ,
11
+ Source : Decodable ,
12
12
{
13
13
_stream : Option < OutputStream > ,
14
14
stream_handle : Option < OutputStreamHandle > ,
15
- phantom : PhantomData < P > ,
15
+ phantom : PhantomData < Source > ,
16
16
}
17
17
18
- impl < P > Default for AudioOutput < P >
18
+ impl < Source > Default for AudioOutput < Source >
19
19
where
20
- P : Decodable ,
20
+ Source : Decodable ,
21
21
{
22
22
fn default ( ) -> Self {
23
23
if let Ok ( ( stream, stream_handle) ) = OutputStream :: try_default ( ) {
@@ -37,21 +37,21 @@ where
37
37
}
38
38
}
39
39
40
- impl < P > AudioOutput < P >
40
+ impl < Source > AudioOutput < Source >
41
41
where
42
- P : Asset + Decodable ,
43
- <P as Decodable >:: Decoder : rodio:: Source + Send + Sync ,
44
- <<P as Decodable >:: Decoder as Iterator >:: Item : rodio:: Sample + Send + Sync ,
42
+ Source : Asset + Decodable ,
43
+ <Source as Decodable >:: Decoder : rodio:: Source + Send + Sync ,
44
+ <<Source as Decodable >:: Decoder as Iterator >:: Item : rodio:: Sample + Send + Sync ,
45
45
{
46
- fn play_source ( & self , audio_source : & P ) {
46
+ fn play_source ( & self , audio_source : & Source ) {
47
47
if let Some ( stream_handle) = & self . stream_handle {
48
48
let sink = Sink :: try_new ( stream_handle) . unwrap ( ) ;
49
49
sink. append ( audio_source. decoder ( ) ) ;
50
50
sink. detach ( ) ;
51
51
}
52
52
}
53
53
54
- fn try_play_queued ( & self , audio_sources : & Assets < P > , audio : & mut Audio < P > ) {
54
+ fn try_play_queued ( & self , audio_sources : & Assets < Source > , audio : & mut Audio < Source > ) {
55
55
let mut queue = audio. queue . write ( ) ;
56
56
let len = queue. len ( ) ;
57
57
let mut i = 0 ;
@@ -69,17 +69,17 @@ where
69
69
}
70
70
71
71
/// Plays audio currently queued in the [`Audio`] resource through the [`AudioOutput`] resource
72
- pub fn play_queued_audio_system < P : Asset > ( world : & mut World )
72
+ pub fn play_queued_audio_system < Source : Asset > ( world : & mut World )
73
73
where
74
- P : Decodable ,
75
- <P as Decodable >:: Decoder : rodio:: Source + Send + Sync ,
76
- <<P as Decodable >:: Decoder as Iterator >:: Item : rodio:: Sample + Send + Sync ,
74
+ Source : Decodable ,
75
+ <Source as Decodable >:: Decoder : rodio:: Source + Send + Sync ,
76
+ <<Source as Decodable >:: Decoder as Iterator >:: Item : rodio:: Sample + Send + Sync ,
77
77
{
78
78
let world = world. cell ( ) ;
79
- let audio_output = world. get_non_send :: < AudioOutput < P > > ( ) . unwrap ( ) ;
80
- let mut audio = world. get_resource_mut :: < Audio < P > > ( ) . unwrap ( ) ;
79
+ let audio_output = world. get_non_send :: < AudioOutput < Source > > ( ) . unwrap ( ) ;
80
+ let mut audio = world. get_resource_mut :: < Audio < Source > > ( ) . unwrap ( ) ;
81
81
82
- if let Some ( audio_sources) = world. get_resource :: < Assets < P > > ( ) {
82
+ if let Some ( audio_sources) = world. get_resource :: < Assets < Source > > ( ) {
83
83
audio_output. try_play_queued ( & * audio_sources, & mut * audio) ;
84
84
} ;
85
85
}
0 commit comments