Example #1
0
 /// <summary>
 /// Returns true if a preset pre-exists with a given frequency
 /// </summary>
 /// <param name="freq">frequency to check for</param>
 /// <returns>true if found, false if not</returns>
 private bool HasPresetWithFrequency(int freq)
 {
     foreach (UserPresetItem i in frequencyPresets)
     {
         MicrowaveFrequencyPreset p = i as MicrowaveFrequencyPreset;
         if (p != null)
         {
             if (p.Frequency == freq)
             {
                 return(true);
             }
         }
     }
     return(false);
 }
Example #2
0
        void scanner_ScanCompleted(object sender, ScanCompleteEvent e)
        {
            AppLogger.Message("MicrowaveControlService scanner_ScanCompleted");
            ChannelScanCompleteEventArgs argsToClient = new ChannelScanCompleteEventArgs();

            argsToClient.Cancelled = !scanInProgress;

            argsToClient.ChannelsFound = e.PeakDictionary.Count;

            scanInProgress = false;

            FireChannelScanCompleted(argsToClient);

            lock (_userLock)
            {
                AppLogger.Message("    removing old scan presets");
                List <Guid> autoGeneratedIDs = new List <Guid>();
                foreach (UserPresetItem i in frequencyPresets)
                {
                    if (i is MicrowaveFrequencyPreset)
                    {
                        if (((MicrowaveFrequencyPreset)i).AutoGenerated)
                        {
                            autoGeneratedIDs.Add(i.ID);
                        }
                    }
                }
                foreach (Guid id in autoGeneratedIDs)
                {
                    frequencyPresets.Remove(id);
                }

                AppLogger.Message("    adding new presets");
                foreach (MicrowaveTuning freq in e.PeakDictionary.Keys)
                {
                    if (!HasPresetWithFrequency((int)freq.FrequencyMHz))
                    {
                        MicrowaveFrequencyPreset p = new MicrowaveFrequencyPreset((int)freq.FrequencyMHz);
                        p.AutoGenerated = true;
                        frequencyPresets.Add(p);
                    }
                }
            }

            FirePresetsChanged();
        }
Example #3
0
 public UserPresetItem SavePreset()
 {
     lock (_userLock)
     {
         AppLogger.Message("MicrowaveControlService.SavePreset");
         try
         {
             MicrowaveFrequencyPreset item = new MicrowaveFrequencyPreset((int)microwaveReceiver.GetTuning().FrequencyMHz);
             frequencyPresets.Add(item);
             return(item);
         }
         catch (Exception exc)
         {
             AppLogger.Dump(exc);
             return(null);
         }
     }
 }
Example #4
0
        public void RestorePreset(Guid id)
        {
            MicrowaveFrequencyPreset item = null;

            lock (_userLock)
            {
                AppLogger.Message("MicrowaveControlService.RestorePreset " + id);

                try
                {
                    item = frequencyPresets[id] as MicrowaveFrequencyPreset;
                }
                catch (Exception exc)
                {
                    AppLogger.Dump(exc);
                }
            }

            if (item != null)
            {
                this.SetFrequency(item.Frequency);
            }
        }