/[xlog]/xlog/src/hamlib-utils.c
ViewVC logotype

Diff of /xlog/src/hamlib-utils.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.25 by pa4tu, Fri Feb 25 21:19:25 2005 UTC revision 1.26 by pa4tu, Fri Mar 4 15:37:09 2005 UTC
# Line 39  Line 39 
39  #include "data/pixmaps/s8.xpm"  #include "data/pixmaps/s8.xpm"
40  #include "data/pixmaps/s9.xpm"  #include "data/pixmaps/s9.xpm"
41    
42    /* The following 2 structs are generated by mkrigstruct */
43    struct rig_id {
44            const gint modelnr;
45            const gchar *modelname;
46    };
47    
48    static const struct rig_id rig_id_list[] = {
49            {1504, "WR-3100"},
50            {352, "OptoScan535"},
51            {304, "IC-275"},
52            {336, "IC-R10"},
53            {320, "IC-736"},
54            {208, "TS-811"},
55            {224, "TS-680S"},
56            {2401, "EKD-500"},
57            {1601, "TT-550"},
58            {1505, "WR-3150"},
59            {401, "IC-PCR1000"},
60            {353, "OptoScan456"},
61            {337, "IC-R71"},
62            {321, "IC-737"},
63            {209, "TS-850"},
64            {225, "TS-140S"},
65            {113, "FT-900"},
66            {1, "Dummy"},
67            {1602, "TT-538 Jupiter"},
68            {1506, "WR-3500"},
69            {802, "BC245xlt"},
70            {402, "IC-PCR100"},
71            {354, "IC ID-1"},
72            {306, "IC-471"},
73            {338, "IC-R72"},
74            {226, "TM-D700"},
75            {210, "TS-870S"},
76            {114, "FT-920"},
77            {1603, "RX-320"},
78            {1507, "WR-3700"},
79            {803, "BC895xlt"},
80            {307, "IC-475"},
81            {339, "IC-R75"},
82            {323, "IC-746"},
83            {355, "IC-703"},
84            {227, "TM-V7"},
85            {211, "TS-940S"},
86            {115, "FT-890"},
87            {1604, "RX-340"},
88            {1204, "WJ-8888"},
89            {340, "IC-R7000"},
90            {356, "IC-7800"},
91            {324, "IC-751"},
92            {116, "FT-990"},
93            {2501, "Elektor 3/04"},
94            {2101, "4937 DI5 tuner module"},
95            {1701, "DX-77"},
96            {1605, "RX-350"},
97            {501, "AR8200"},
98            {341, "IC-R7100"},
99            {357, "IC-756PROIII"},
100            {309, "IC-706"},
101            {213, "TS-950SDX"},
102            {117, "FRG-100"},
103            {101, "FT-847"},
104            {2502, "DRT1"},
105            {2102, "4702 DT5 tuner module"},
106            {902, "R-8A"},
107            {502, "AR8000"},
108            {342, "ICR-8500"},
109            {358, "IC-R20"},
110            {326, "IC-756"},
111            {310, "IC-706MkII"},
112            {214, "TS-2000"},
113            {118, "FRG-9600"},
114            {1607, "TT-516 Argonaut V"},
115            {903, "R-8B"},
116            {503, "AR7030"},
117            {343, "IC-R9000"},
118            {327, "IC-756PRO"},
119            {311, "IC-706MkIIG"},
120            {215, "R-5000"},
121            {119, "FRG-8800"},
122            {103, "FT-1000D"},
123            {1608, "TT-565 Orion"},
124            {504, "AR5000"},
125            {344, "IC-910"},
126            {312, "IC-707"},
127            {328, "IC-761"},
128            {216, "TS-570S"},
129            {104, "MARK-V FT-1000MP"},
130            {120, "FT-817"},
131            {2601, "SW/FM radio"},
132            {2201, "DSP-10"},
133            {1801, "505DSP"},
134            {505, "AR3030"},
135            {345, "IC-78"},
136            {329, "IC-765"},
137            {313, "IC-718"},
138            {217, "TH-D7A"},
139            {201, "TS-50S"},
140            {105, "FT-747GX"},
141            {121, "FT-100"},
142            {1402, "TRP8000"},
143            {506, "AR3000A"},
144            {330, "IC-775"},
145            {346, "IC-746PRO"},
146            {314, "IC-725"},
147            {202, "TS-440"},
148            {122, "FT-857"},
149            {106, "FT-757GX"},
150            {331, "IC-781"},
151            {347, "IC-756PROII"},
152            {315, "IC-726"},
153            {203, "TS-450S"},
154            {123, "FT-897"},
155            {107, "FT-757GXII"},
156            {1004, "HF-235"},
157            {316, "IC-728"},
158            {220, "TH-F7E"},
159            {204, "TS-570D"},
160            {2301, "SDR-1000"},
161            {1901, "RPC rig"},
162            {1501, "WR-1000"},
163            {221, "K2"},
164            {205, "TS-690S"},
165            {1502, "WR-1500"},
166            {606, "NRD-535D"},
167            {334, "IC-821H"},
168            {206, "TS-711"},
169            {222, "TS-930"},
170            {110, "FT-736R"},
171            {1503, "WR-1550"},
172            {1103, "RA6790/GM"},
173            {607, "NRD-545 DSP"},
174            {351, "Omni VI Plus"},
175            {303, "IC-271"},
176            {335, "IC-970"},
177            {319, "IC-735"},
178            {223, "TH-G71"},
179            {207, "TS-790"},
180            {0, NULL}, /* end marker */
181    };
182    
183  typedef struct  typedef struct
184  {  {
185          gchar **xpmdata;          gchar **xpmdata;
# Line 63  typeLevel S[] = { Line 204  typeLevel S[] = {
204  extern preferencestype preferences;  extern preferencestype preferences;
205  extern statetype state;  extern statetype state;
206  extern GtkWidget *mainwindow;  extern GtkWidget *mainwindow;
 GList *rigs = NULL;  
207  gint svalue[10];  gint svalue[10];
 extern GList *riglist;  
208  gint hamlibtimer = -1;  gint hamlibtimer = -1;
209  RIG *myrig;  RIG *myrig;
210  GdkPixmap *pixmap = NULL;  GdkPixmap *pixmap = NULL;
# Line 191  start_hamlib (gchar * radio, gchar * dev Line 330  start_hamlib (gchar * radio, gchar * dev
330  /* sort function for creating the list of rigs */  /* sort function for creating the list of rigs */
331  static gint sortcaps (gconstpointer a, gconstpointer b)  static gint sortcaps (gconstpointer a, gconstpointer b)
332  {  {
333          struct rig_caps *acaps = (struct rig_caps *)a;          gchar *amodel = (gchar *)a;
334          struct rig_caps *bcaps = (struct rig_caps *)b;          gchar *bmodel = (gchar *)b;
   
         return (g_ascii_strcasecmp(acaps->model_name,bcaps->model_name));  
 }  
335    
336  /* Append a new entry in the driver list. It is called by rig_list_foreach */          return (g_ascii_strcasecmp(amodel, bmodel));
 static gint  
 riglist_make_list (const struct rig_caps *caps, gpointer data)  
 {  
         rigs = g_list_insert_sorted (rigs, (gpointer) caps, sortcaps);  
         return 1;               /* !=0, we want them all ! */  
337  }  }
338    
339  /* Return a list with pointers of available drivers from hamlib */  /* Return a list with pointers of available drivers from hamlib */
340  GList *  GList *
341  riglist_get_list (void)  riglist_get_list (void)
342  {  {
343          gint status;          gint i;
344            GList *rigs = NULL;
345    
346          rig_load_all_backends ();          for (i = 0; rig_id_list[i].modelname != NULL; i++)
347          status = rig_list_foreach (riglist_make_list, NULL);                  rigs = g_list_insert_sorted
348                            (rigs, (gpointer)rig_id_list[i].modelname, sortcaps);
349          return rigs;          return rigs;
350  }  }
351    
# Line 220  riglist_get_list (void) Line 353  riglist_get_list (void)
353  gint  gint
354  get_rigid (gchar * rig)  get_rigid (gchar * rig)
355  {  {
356          gint i, numrigs;          guint i;
         struct rig_caps *rcaps = NULL;  
357    
358          numrigs = g_list_length (riglist);          for (i = 0; rig_id_list[i].modelname != NULL; i++)
359          for (i = 0; i < numrigs; i++)                  if (!strcmp (rig_id_list[i].modelname, rig))
360          {                          return (rig_id_list[i].modelnr);
361                  rcaps = (struct rig_caps *) g_list_nth_data (riglist, i);          return -1;
                 if (g_ascii_strcasecmp (rig, rcaps->model_name) == 0)  
                         break;  
         }  
         if (i > 0)  
                 return rcaps->rig_model;  
         else  
                 return (-1);  
362  }  }
363    
364  /* return string with mode */  /* return string with mode */

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.26

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26