kopia lustrzana https://github.com/Hamlib/Hamlib
Add VFO Ops to rigmatrix.c and colorize things a bit
rodzic
d9b57bc7a8
commit
c31497918f
|
@ -32,7 +32,7 @@
|
|||
#include <hamlib/rig.h>
|
||||
#include "misc.h"
|
||||
|
||||
static setting_t bitmap_func, bitmap_level, bitmap_parm;
|
||||
static setting_t bitmap_func, bitmap_level, bitmap_parm, bitmap_vfo_ops;
|
||||
|
||||
int create_png_range(const freq_range_t rx_range_list[],
|
||||
const freq_range_t tx_range_list[], int num);
|
||||
|
@ -99,10 +99,11 @@ int print_caps_sum(struct rig_caps *caps, void *data)
|
|||
"<TD><A HREF=\"#setlevel%u\">levels</A></TD>"
|
||||
"<TD><A HREF=\"#getparm%u\">parms</A></TD>"
|
||||
"<TD><A HREF=\"#setparm%u\">parms</A></TD>"
|
||||
"<TD><A HREF=\"#op%u\">ops</A></TD>"
|
||||
"</TR>\n",
|
||||
caps->rig_model, caps->rig_model, caps->rig_model,
|
||||
caps->rig_model, caps->rig_model, caps->rig_model,
|
||||
caps->rig_model, caps->rig_model, caps->rig_model);
|
||||
caps->rig_model, caps->rig_model, caps->rig_model, caps->rig_model);
|
||||
|
||||
return 1; /* !=0, we want them all ! */
|
||||
}
|
||||
|
@ -215,7 +216,7 @@ int print_caps_parameters(struct rig_caps *caps, void *data)
|
|||
}
|
||||
|
||||
/* used by print_caps_caps and print_caps_level */
|
||||
#define print_yn(fn) printf("<TD>%c</TD>", (fn) ? 'Y':'N')
|
||||
#define print_yn(fn) printf("<TD>%s</TD>", (fn) ? "<font color=\"00AA00\"><strong>Y</strong><font>":"<font color=\"#CCCCCC\">N<font>")
|
||||
|
||||
/*
|
||||
* backend functions defined
|
||||
|
@ -303,6 +304,43 @@ int print_caps_parm(struct rig_caps *caps, void *data)
|
|||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* VFO Ops capabilities
|
||||
*/
|
||||
int print_caps_vfo_ops(struct rig_caps *caps, void *data)
|
||||
{
|
||||
setting_t vfo_ops;
|
||||
int i;
|
||||
|
||||
if (!data)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Only set for these
|
||||
vfo_ops = (*(int *)data) ? caps->vfo_ops : caps->vfo_ops;
|
||||
|
||||
printf("<A NAME=\"%s%u\"><TR><TD>%s</TD>",
|
||||
(*(int *)data) ? "op" : "op",
|
||||
caps->rig_model,
|
||||
caps->model_name);
|
||||
|
||||
/*
|
||||
* bitmap_vfo_ops: only those who have a label
|
||||
*/
|
||||
for (i = 0; i < RIG_SETTING_MAX; i++)
|
||||
{
|
||||
if (rig_idx2setting(i) & bitmap_vfo_ops)
|
||||
{
|
||||
print_yn(vfo_ops & rig_idx2setting(i));
|
||||
}
|
||||
}
|
||||
|
||||
printf("</TR></A>\n");
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Get/Set level abilities
|
||||
|
@ -647,6 +685,7 @@ int main(int argc, char *argv[])
|
|||
"<TD>Set level</TD>"
|
||||
"<TD>Get parm</TD>"
|
||||
"<TD>Set parm</TD>"
|
||||
"<TD>VFO Ops</TD>"
|
||||
"</TR>\n");
|
||||
rig_list_foreach(print_caps_sum, NULL);
|
||||
printf("</TABLE>\n");
|
||||
|
@ -821,6 +860,40 @@ int main(int argc, char *argv[])
|
|||
|
||||
printf("<P>");
|
||||
|
||||
bitmap_vfo_ops = 0;
|
||||
prntbuf[0] = '\0';
|
||||
pbuf = prntbuf;
|
||||
|
||||
for (i = 0; i < RIG_SETTING_MAX; i++)
|
||||
{
|
||||
setting_t op = rig_idx2setting(i);
|
||||
const char *s = rig_strvfop(op);
|
||||
|
||||
if (!s)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
bitmap_vfo_ops |= op;
|
||||
nbytes = strlen("<TD></TD>") + strlen(s) + 1;
|
||||
nbytes_total += nbytes;
|
||||
pbuf += snprintf(pbuf, sizeof(pbuf) - nbytes_total, "<TD>%s</TD>", s);
|
||||
|
||||
if (strlen(pbuf) > sizeof(pbuf) + nbytes)
|
||||
{
|
||||
printf("Buffer overflow in %s\n", __func__);
|
||||
}
|
||||
}
|
||||
|
||||
printf("VFO Ops");
|
||||
printf("<TABLE BORDER=1>\n");
|
||||
printf("<TR><TD>Model</TD>%s</TR>\n", prntbuf);
|
||||
set_or_get = 0;
|
||||
rig_list_foreach(print_caps_vfo_ops, &set_or_get);
|
||||
printf("</TABLE>\n");
|
||||
|
||||
printf("<P>");
|
||||
|
||||
time(&gentime);
|
||||
printf("Rigmatrix generated %s\n", ctime(&gentime));
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue