HamBook – Rev 53
?pathlinks?
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 RadioMode : Generic.RadioMode
{
public override char Code { get; }
public override string Name { get; }
public RadioMode()
{
}
public RadioMode(string name)
{
Name = name;
Code = NameToCode(name);
}
public RadioMode(char code)
{
Code = code;
Name = CodeToName(code);
}
public override char NameToCode(string mode)
{
switch (mode)
{
case "SSB_1":
return '1';
case "SSB_2":
return '2';
case "CW_1":
return '3';
case "FM":
return '4';
case "AM":
return '5';
case "RTTY_1":
return '6';
case "CW_2":
return '7';
case "DATA_1":
return '8';
case "RTTY_2":
return '9';
case "FM-N":
return 'B';
case "DATA_2":
return 'C';
case "AM-N":
return 'D';
default:
throw new ArgumentException();
}
}
public override string CodeToName(char code)
{
switch (code)
{
case '1':
return "SSB_1";
case '2':
return "SSB_2";
case '3':
return "CW_1";
case '4':
return "FM";
case '5':
return "AM";
case '6':
return "RTTY_1";
case '7':
return "CW_2";
case '8':
return "DATA_1";
case '9':
return "RTTY_2";
case 'B':
return "FM-N";
case 'C':
return "DATA_2";
case 'D':
return "AM-N";
default:
throw new ArgumentException();
}
}
}
}