HamBook – Blame information for rev 54

Subversion Repositories:
Rev:
Rev Author Line No. Line
54 office 1 using System;
46 office 2 using System.Xml.Serialization;
43 office 3  
4 namespace HamBook.Radios.Yaesu.FT_891
5 {
6 [Radio("Yaesu FT-891")]
46 office 7 [XmlRoot(Namespace = "Yaesu FT-891")]
43 office 8 public class RadioMode : Generic.RadioMode
9 {
46 office 10 public RadioMode()
11 {
12 }
13  
44 office 14 public RadioMode(string name)
43 office 15 {
44 office 16 Name = name;
17 Code = NameToCode(name);
43 office 18 }
19  
44 office 20 public RadioMode(char code)
43 office 21 {
44 office 22 Code = code;
23 Name = CodeToName(code);
43 office 24 }
25  
54 office 26 public override char Code { get; }
27  
28 public override string Name { get; }
29  
44 office 30 public override char NameToCode(string mode)
43 office 31 {
32 switch (mode)
33 {
34 case "SSB_1":
35 return '1';
36 case "SSB_2":
37 return '2';
38 case "CW_1":
39 return '3';
40 case "FM":
41 return '4';
42 case "AM":
43 return '5';
44 case "RTTY_1":
45 return '6';
46 case "CW_2":
47 return '7';
48 case "DATA_1":
49 return '8';
50 case "RTTY_2":
51 return '9';
52 case "FM-N":
53 return 'B';
54 case "DATA_2":
55 return 'C';
56 case "AM-N":
57 return 'D';
58 default:
59 throw new ArgumentException();
60 }
61 }
62  
44 office 63 public override string CodeToName(char code)
43 office 64 {
44 office 65 switch (code)
43 office 66 {
67 case '1':
44 office 68 return "SSB_1";
43 office 69 case '2':
44 office 70 return "SSB_2";
43 office 71 case '3':
44 office 72 return "CW_1";
43 office 73 case '4':
44 office 74 return "FM";
43 office 75 case '5':
44 office 76 return "AM";
43 office 77 case '6':
44 office 78 return "RTTY_1";
43 office 79 case '7':
44 office 80 return "CW_2";
43 office 81 case '8':
44 office 82 return "DATA_1";
43 office 83 case '9':
44 office 84 return "RTTY_2";
43 office 85 case 'B':
44 office 86 return "FM-N";
43 office 87 case 'C':
44 office 88 return "DATA_2";
43 office 89 case 'D':
44 office 90 return "AM-N";
43 office 91 default:
92 throw new ArgumentException();
93 }
94 }
95 }
54 office 96 }