protected void mediaRendererFoundSink(CpAVRenderer _avRenderer)
{
Renderer.Renderer renderer;
this.writeLog(LogType.Info, String.Format("MediaRenderer '{0}' gefunden (UDN: {1})", _avRenderer.FriendlyName, _avRenderer.UniqueDeviceName));
if (_avRenderer.isVirtualRenderer())
{
renderer = new RendererVirtual(_avRenderer);
if (renderers.ContainsKey(renderer.udn))
renderers.Remove(renderer.udn);
renderers.Add(renderer.udn, renderer);
this.linkVirtualRendererToZone((RendererVirtual)renderer);
}
else
{
renderer = new RendererRoom(_avRenderer);
if (renderers.ContainsKey(renderer.udn))
renderers.Remove(renderer.udn);
renderers.Add(renderer.udn, renderer);
this.linkRoomRendererToRoom((RendererRoom)renderer);
}
renderer.muteStateChanged += renderer_muteStateChangedSink;
renderer.volumeChanged += renderer_volumeChangedSink;
if (mediaRendererFound != null) mediaRendererFound();
}