using System; namespace AudioStreamer { public abstract class BaseAudioSource : BaseAudioOutput, AudioSource { public AudioStreamer AudioStreamer { get; private set; } public BaseAudioSource() { } public void Associate(AudioStreamer audioStreamer){ if (this.AudioStreamer != null){ this.AudioStreamer.removeAudioSource(this); } this.AudioStreamer = audioStreamer; } public abstract void Start(); public abstract void Stop(); public abstract void Source(); } }