HamBook – Rev 46

Subversion Repositories:
Rev:
using HamBook.Radios.Generic;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;

namespace HamBook.Radios.Yaesu.FT_891
{
    [Radio("Yaesu FT-891")]
    [XmlRoot(Namespace = "Yaesu FT-891")]
    public class MemoryChannel : Generic.MemoryChannel
    {
        public ClarifierDirection ClarifierDirection { get; set; } = new ClarifierDirection(ShiftDirection.PLUS_SHIFT);

        public int ClarifierOffset { get; set; } = 0;

        public bool Clar { get; set; } = false;

        public Ctcss Ctcss { get; set; } = new Ctcss(CtcssMode.Off);

        public Phase Phase { get; set; } = new Phase(PhaseMode.Simplex);

        public override string CurrentLocation { get; set; } = string.Empty;

        public override int Frequency { get; set; } = 0;

        public override Generic.MemoryRadioMode MemoryRadioMode { get; set; }

        public override bool Tag { get; set; } = false;

        public override string Text { get; set; } = string.Empty;

        public MemoryChannel()
        {
        }

        public MemoryChannel(Generic.MemoryChannel channel)
        {
            CurrentLocation = channel.CurrentLocation;
            Frequency = channel.Frequency;
            MemoryRadioMode = channel.MemoryRadioMode;
            Tag = channel.Tag;
            Text = channel.Text;
        }

        public override bool Equals(Generic.MemoryChannel other)
        {
            return CurrentLocation == other.CurrentLocation &&
               Frequency == other.Frequency &&
               MemoryRadioMode.Code == other.MemoryRadioMode.Code &&
               Tag == other.Tag &&
               Text == other.Text;
        }
    }
}