HamBook – Rev 54
?pathlinks?
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
namespace HamBook.Radios.Yaesu.FT_891
{
[Radio("Yaesu FT-891")]
[XmlRoot(Namespace = "Yaesu FT-891")]
public class MemoryRadioMode : Generic.MemoryRadioMode
{
public MemoryRadioMode()
{
}
public MemoryRadioMode(string name)
{
Name = name;
Code = NameToCode(name);
}
public MemoryRadioMode(char code)
{
Code = code;
Name = CodeToName(code);
}
public override char Code { get; set; }
public override string Name { get; set; }
public static IEnumerable<char> Codes
{
get
{
foreach (var code in new[] { '1', '2', '3', '4', '5', '6', '7', '8', '9', 'B', 'C', 'D' })
yield return code;
}
}
public static IEnumerable<string> Names
{
get
{
foreach (var name in new[]
{
"LSB", "USB", "CW", "FM", "AM", "RTTY-LSB", "CW-R", "DATA-LSB", "RTTY-USB", "FM-N",
"DATA-USB", "AM-N"
}) yield return name;
}
}
public override char NameToCode(string name)
{
switch (name)
{
case "LSB":
return '1';
case "USB":
return '2';
case "CW":
return '3';
case "FM":
return '4';
case "AM":
return '5';
case "RTTY-LSB":
return '6';
case "CW-R":
return '7';
case "DATA-LSB":
return '8';
case "RTTY-USB":
return '9';
case "FM-N":
return 'B';
case "DATA-USB":
return 'C';
case "AM-N":
return 'D';
default:
throw new ArgumentException();
}
}
public override string CodeToName(char code)
{
switch (code)
{
case '1':
return "LSB";
case '2':
return "USB";
case '3':
return "CW";
case '4':
return "FM";
case '5':
return "AM";
case '6':
return "RTTY-USB";
case '7':
return "CW-R";
case '8':
return "DATA-LSB";
case '9':
return "RTTY-USB";
case 'B':
return "FM-N";
case 'C':
return "DATA-USB";
case 'D':
return "AM-N";
default:
throw new ArgumentException();
}
}
}
}
Generated by GNU Enscript 1.6.5.90.