Hamlib/tests
Bill Somerville 21c346453a Implement combined split VFO frequency and mode setting.
CAT protocols that don't allow  direct addressing of VFOs require that
the  "other" VFO  be queried  or set  via a  select then  get/set then
select back  to original or  swap then  get/set then swap  again. When
both frequncy and  mode need to be set the  sequences can be optimized
if a single funciton is avaiable.

This enhancement adds those single functions rig_set_split_freq_mode()
and  rig_get_split_freq_mode()  with  a default  impelementation  that
calls the individual rig_{get,set}_split_{freq,mode}() functions. Back
ends  can choose  to  implement  an optimized  version  which is  used
instead of the default if present.

Using these  functions when  an optimized implementation  is available
allows the TX VFO's frequency and mode to be set in a single operation
with  only  one   VFO  exchange  or  selection  either   side  of  the
operation.  Many CAT  protocols  are very  efficient  when getting  or
setting both  frequency and mode  and some even  combine the two  in a
single command.

The letters 'K' and 'k' are used for the rigctl short command name for
these functions.
2016-03-23 17:09:26 +00:00
..
config Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
rigctl.test Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
testbcd.test Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
testfreq.test Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
testloc.test Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
dumpcaps_rot.c Add support for RIG_PORT_UDP_NETWORK 2012-01-06 09:28:24 +01:00
dumpcaps.c Add support for RIG_PORT_UDP_NETWORK 2012-01-06 09:28:24 +01:00
dumpmem.c Clean up build system, fix test programs 2013-12-10 20:14:22 -06:00
example.c Assure NULL terminated strings in tests programs. 2012-01-07 20:36:50 -06:00
listrigs.c Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
Makefile.am Install daemon man files to man1 2016-01-12 15:53:53 -06:00
memcsv.c Quell clang warnings in tests directory 2016-02-09 11:12:28 -06:00
memload.c Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
memsave.c Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
README Update man pages for sorted -l output 2012-03-01 21:22:49 -06:00
rig_bench.c Assure NULL terminated strings in tests programs. 2012-01-07 20:36:50 -06:00
rig_split_lst.awk Remove remaining references to rpc 2013-09-19 15:24:52 -05:00
rigctl_parse.c Implement combined split VFO frequency and mode setting. 2016-03-23 17:09:26 +00:00
rigctl_parse.h Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
rigctl.1 Install daemon man files to man1 2016-01-12 15:53:53 -06:00
rigctl.c Add a new command line option '--no-restore-ai' ('-n') to rigctl 2015-12-04 00:22:01 +00:00
rigctld.1 Install daemon man files to man1 2016-01-12 15:53:53 -06:00
rigctld.c Touch up rigctld.c and rotctld.c with astyle 2016-02-14 18:05:55 -06:00
rigmatrix_head.html initial release 2001-06-05 18:10:26 +00:00
rigmatrix.c Add support for RIG_PORT_UDP_NETWORK 2012-01-06 09:28:24 +01:00
rigmem.1 Kill RPC backends and rpc.rigd/rpc.rotd 2011-08-21 13:23:01 +02:00
rigmem.c Assure NULL terminated strings in tests programs. 2012-01-07 20:36:50 -06:00
rigsmtr.1 Install daemon man files to man1 2016-01-12 15:53:53 -06:00
rigsmtr.c Assure NULL terminated strings in tests programs. 2012-01-07 20:36:50 -06:00
rigswr.1 Kill RPC backends and rpc.rigd/rpc.rotd 2011-08-21 13:23:01 +02:00
rigswr.c Assure NULL terminated strings in tests programs. 2012-01-07 20:36:50 -06:00
rotctl_parse.c Quell clang warnings in tests directory 2016-02-09 11:12:28 -06:00
rotctl_parse.h Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
rotctl.1 Install daemon man files to man1 2016-01-12 15:53:53 -06:00
rotctl.c rigctl.c/rotctl.c: fix closing brace placement 2014-03-07 05:55:54 -06:00
rotctld.1 Install daemon man files to man1 2016-01-12 15:53:53 -06:00
rotctld.c Touch up rigctld.c and rotctld.c with astyle 2016-02-14 18:05:55 -06:00
sprintflst.c Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
sprintflst.h Update GPL/LGPL header in tests source files. 2011-08-22 21:38:37 -05:00
testbcd.c Advise on use of int64_t cast 2016-02-09 11:26:23 -06:00
testctld.pl Install daemon man files to man1 2016-01-12 15:53:53 -06:00
testfreq.c Clean up build system, fix test programs 2013-12-10 20:14:22 -06:00
testloc.c Remove ASCII degree symbol 2012-01-12 15:40:48 -06:00
testrig.c Clean up build system, fix test programs 2013-12-10 20:14:22 -06:00
testrotctld.pl Install daemon man files to man1 2016-01-12 15:53:53 -06:00
testtrn.c Clean up build system, fix test programs 2013-12-10 20:14:22 -06:00
uthash.h Tidy up rotctl --list output 2012-02-13 15:28:03 -06:00

You will find in the tests/ subdirectory various programs to exercise
the Hamlib library.

Most of the time, you will have to make sure that the backend for
your rig is loaded by passing the model number of your rig by argument.
If you don't know the number, listrigs can give it to you,
"rigctl --list" will also output something like this:

    Rig#    Mfg           Model           Vers.
    1       Hamlib        Dummy           0.1
    105     Yaesu         FT-747GX        0.1
    210     Kenwood       TS-870S         0.1
    311     Icom          IC-706MkIIG     0.2
    1506    Winradio      WR-3500         0.6
    [etc.]

In any case, you are encouraged to check for correct initialization
by reading the source code, at the begining of the main().  Check also
that the program is setup for your rig path strncpy(my_rig->state.rig_path...

dumpcaps  - Output the caps contents of a rig
dumpmem   - Dump the memory contents of the rig
listrigs  - Condensed list of all the models supported by backends
rigmatrix - Output the HTML table of supported rigs, with .png files for freqs
            (Better call 'make rigmatrix.html' which builds the HTML table
            and additional information in sup-info subdirectory.)
testbcd   - Simple program to test BCD conversion, takes a number as arg.
testfreq  - Simple program to test Freq conversion, takes a number as arg.
testrig   - Sample program calling common API calls, uses rig_probe
testtrn   - Sample program using event notification (transceive mode)
rigctl    - Combined tool to execute any call of the API, see man page
rigmem    - Combined tool to load/save content of rig memory, see man page
rotctl    - Similar to 'rigctl' but for rotators, see man page
rigctld   - A simple daemon to process 'rigctl' commands received over a
            network socket.  Useful for scripting languages or remote access
            via an SSH tunnel (unsecure program).  See man page.
rotctld   - A simple daemon to process 'rotctl' commands received over a
            network socket.  Useful for scripting languages or remote access
            via an SSH tunnel (unsecure program).  See man page.
testctld.pl A Perl program to test 'rigctld' and provide some example code.