public Receiver(OpenHome.Songcast.IReceiver aReceiver) { // create a receiver from a receiver found on the network iLock = new object(); iReceiver = aReceiver; UpdateCachedValues(); }
public void ReceiverVolumeChanged(OpenHome.Songcast.IReceiver aReceiver) { // this function runs in an ohSongcast thread lock (iLock) { Receiver recv = Receiver(aReceiver.Udn); if (recv != null) { // update the receiver that has changed recv.Update(aReceiver); // notify in the main thread iInvoker.BeginInvoke(new Action <EventArgsReceiver>(NotifyReceiverVolumeChanged), new EventArgsReceiver(aReceiver.Udn)); } } }
public void Update(OpenHome.Songcast.IReceiver aReceiver) { // update a receiver lock (iLock) { if (aReceiver != null) { Assert.Check(iUdn == aReceiver.Udn); iReceiver = aReceiver; UpdateCachedValues(); } else { iReceiver = null; } } }
void IReceiverHandler.ReceiverRemoved(OpenHome.Songcast.IReceiver aReceiver) { UserLog.WriteLine(DateTime.Now + " : Linn.Songcast.SongcastMonitor.ReceiverRemoved " + aReceiver.Room + ":" + aReceiver.Group); // this function runs in an ohSongcast thread lock (iLock) { Receiver recv = Receiver(aReceiver.Udn); if (recv != null) { // receiver exists in list - update it with a null openhome receiver recv.Update(null); // notify in the main thread iInvoker.BeginInvoke(new Action(NotifyReceiverListChanged)); } } }
void IReceiverHandler.ReceiverAdded(OpenHome.Songcast.IReceiver aReceiver) { UserLog.WriteLine(DateTime.Now + " : Linn.Songcast.SongcastMonitor.ReceiverAdded " + aReceiver.Room + ":" + aReceiver.Group); // this function runs in an ohSongcast thread lock (iLock) { Receiver recv = Receiver(aReceiver.Udn); // update existing receivers with the new openhome receiver if (recv != null) { recv.Update(aReceiver); } else { iReceiverList.Add(new Receiver(aReceiver)); } // notify in the main thread iInvoker.BeginInvoke(new Action <EventArgsReceiver>(NotifyReceiverAdded), new EventArgsReceiver(aReceiver.Udn)); } }
public void ReceiverVolumeLimitChanged(OpenHome.Songcast.IReceiver aReceiver) { ReceiverVolumeChanged(aReceiver); }