CSharpSynth.Synthesis.StreamSynthesizer.getUsedVoice C# (CSharp) Method

getUsedVoice() private method

private getUsedVoice ( NoteRegistryKey r ) : Voice
r NoteRegistryKey
return Voice
        private Voice getUsedVoice(NoteRegistryKey r)
        {
            List<Voice> voicelist;
            Voice voice;
            if (keyRegistry.TryGetValue(r, out voicelist))
            {
                if (voicelist.Count > 0)
                {
                    voicelist[0].StopImmediately();
                    voice = voicelist[0];
                    voicelist.RemoveAt(0);
                    activeVoices.Remove(voice);
                    return voice;
                }
            }
            return null;
        }