Esempio n. 1
0
 public Receiver(OpenHome.Songcast.IReceiver aReceiver)
 {
     // create a receiver from a receiver found on the network
     iLock     = new object();
     iReceiver = aReceiver;
     UpdateCachedValues();
 }
Esempio n. 2
0
        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));
                }
            }
        }
Esempio n. 3
0
 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;
         }
     }
 }
Esempio n. 4
0
        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));
                }
            }
        }
Esempio n. 5
0
        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));
            }
        }
Esempio n. 6
0
 public void ReceiverVolumeLimitChanged(OpenHome.Songcast.IReceiver aReceiver)
 {
     ReceiverVolumeChanged(aReceiver);
 }