A game framework written with osu! in mind.
1// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
2// See the LICENCE file in the repository root for full licence text.
3
4namespace osu.Framework.Audio.Sample
5{
6 /// <summary>
7 /// A unique playback of an <see cref="ISample"/>.
8 /// </summary>
9 public interface ISampleChannel : IHasAmplitudes
10 {
11 /// <summary>
12 /// Starts or resumes playback. Has no effect if this <see cref="ISampleChannel"/> is already playing.
13 /// </summary>
14 void Play();
15
16 /// <summary>
17 /// Stops playback.
18 /// </summary>
19 void Stop();
20
21 /// <summary>
22 /// Whether playback was ever started.
23 /// </summary>
24 bool Played { get; }
25
26 /// <summary>
27 /// Whether playback is currently in progress.
28 /// </summary>
29 bool Playing { get; }
30
31 /// <summary>
32 /// Whether playback should repeat.
33 /// </summary>
34 bool Looping { get; set; }
35 }
36}