36#define HAMLIB_SECRET_LENGTH 32
38#define HAMLIB_TRACE rig_debug(RIG_DEBUG_TRACE,"%s%s(%d) trace\n",hl_stars(STATE(rig)->depth), __FILE__, __LINE__)
39#define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)
54#include <netinet/in.h>
62#warning TIMESIZE != 64 -- Please report your OS system to hamlib-developer@lists.sourceforge.net
68#define HAVE_STRUCT_TIMESPEC
80#ifndef __has_c_attribute
81#define __has_c_attribute(x) 0
86#if __has_c_attribute(fallthrough)
87#define HL_FALLTHROUGH [[fallthrough]];
94#if __has_c_attribute(deprecated)
95#define HL_DEPRECATED [[deprecated]]
121# define __BEGIN_DECLS extern "C" {
122# define __END_DECLS }
124# define __BEGIN_DECLS
134#if defined (__STDC__) \
136 || (defined (__mips) && defined (_SYSTYPE_SVR4)) \
137 || defined(__CYGWIN__) \
139 || defined(__cplusplus)
140# define HAMLIB_PARAMS(protos) protos
141# define rig_ptr_t void *
142# define amp_ptr_t void *
144# define HAMLIB_PARAMS(protos) ()
145# define rig_ptr_t char *
146# define amp_ptr_t char *
150#include <hamlib/rig_dll.h>
154#define CONSTANT_64BIT_FLAG(BIT) (1ull << (BIT))
167#define CONSTANT_64BIT_FLAG(BIT) (1ul << (BIT))
177#define HAMLIB_COOKIE_SIZE 37
178extern int cookie_use;
182extern HAMLIB_EXPORT_VAR(
const char) hamlib_version[];
183extern HAMLIB_EXPORT_VAR(
const char) hamlib_copyright[];
228#define RIG_IS_SOFT_ERRCODE(errcode) (errcode == -RIG_EINVAL || errcode == -RIG_ENIMPL || errcode == -RIG_ERJCTED \
229 || errcode == -RIG_ETRUNC || errcode == -RIG_ENAVAIL || errcode == -RIG_ENTARGET \
230 || errcode == -RIG_EVFO || errcode == -RIG_EDOM || errcode == -RIG_EDEPRECATED \
231 || errcode == -RIG_ESECURITY || errcode == -RIG_EPOWER)
236#define NETRIGCTL_RET "RPRT "
280#define HAMLIB_RIGNAMSIZ 30
281#define HAMLIB_RIGVERSIZ 8
282#define HAMLIB_FILPATHLEN 512
284#define FILPATHLEN HAMLIB_FILPATHLEN
285#define HAMLIB_FRQRANGESIZ 30
286#define HAMLIB_MAXCHANDESC 30
287#define HAMLIB_TSLSTSIZ 20
288#define HAMLIB_FLTLSTSIZ 60
289#define HAMLIB_MAXDBLSTSIZ 8
290#define HAMLIB_CHANLSTSIZ 16
291#define HAMLIB_MAX_AGC_LEVELS 8
292#define HAMLIB_MAX_SPECTRUM_SCOPES 4
293#define HAMLIB_MAX_SPECTRUM_MODES 5
294#define HAMLIB_MAX_SPECTRUM_AVG_MODES 12
295#define HAMLIB_MAX_SPECTRUM_SPANS 20
296#define HAMLIB_MAX_SPECTRUM_DATA 2048
297#define HAMLIB_MAX_CAL_LENGTH 32
298#define HAMLIB_MAX_MODES 63
299#define HAMLIB_MAX_VFOS 31
300#define HAMLIB_MAX_ROTORS 31
301#define HAMLIB_MAX_VFO_OPS 31
302#define HAMLIB_MAX_RSCANS 31
303#define HAMLIB_MAX_SNAPSHOT_PACKET_SIZE 16384
318#define CTCSS_LIST_SIZE 60
319#define DCS_LIST_SIZE 128
413#define RIG_FLAG_TRANSCEIVER (RIG_FLAG_RECEIVER|RIG_FLAG_TRANSMITTER)
414#define RIG_TYPE_MASK (RIG_FLAG_TRANSCEIVER|RIG_FLAG_SCANNER|RIG_FLAG_MOBILE|RIG_FLAG_HANDHELD|RIG_FLAG_COMPUTER|RIG_FLAG_TRUNKING|RIG_FLAG_TUNER)
416#define RIG_TYPE_OTHER 0
417#define RIG_TYPE_TRANSCEIVER RIG_FLAG_TRANSCEIVER
418#define RIG_TYPE_HANDHELD (RIG_FLAG_TRANSCEIVER|RIG_FLAG_HANDHELD)
419#define RIG_TYPE_MOBILE (RIG_FLAG_TRANSCEIVER|RIG_FLAG_MOBILE)
420#define RIG_TYPE_RECEIVER RIG_FLAG_RECEIVER
421#define RIG_TYPE_PCRECEIVER (RIG_FLAG_COMPUTER|RIG_FLAG_RECEIVER)
422#define RIG_TYPE_SCANNER (RIG_FLAG_SCANNER|RIG_FLAG_RECEIVER)
423#define RIG_TYPE_TRUNKSCANNER (RIG_TYPE_SCANNER|RIG_FLAG_TRUNKING)
424#define RIG_TYPE_COMPUTER (RIG_FLAG_TRANSCEIVER|RIG_FLAG_COMPUTER)
425#define RIG_TYPE_TUNER RIG_FLAG_TUNER
446#define RIG_STATUS_NEW RIG_STATUS_UNTESTED
487#define FREQFMT SCNfreq
498#define Hz(f) ((freq_t)(f))
500#define kHz(f) ((freq_t)((f)*(freq_t)1000))
502#define MHz(f) ((freq_t)((f)*(freq_t)1000000))
504#define GHz(f) ((freq_t)((f)*(freq_t)1000000000))
507#define s_Hz(f) ((shortfreq_t)(f))
509#define s_kHz(f) ((shortfreq_t)((f)*(shortfreq_t)1000))
511#define s_MHz(f) ((shortfreq_t)((f)*(shortfreq_t)1000000))
513#define s_GHz(f) ((shortfreq_t)((f)*(shortfreq_t)1000000000))
516#define RIG_FREQ_NONE Hz(0)
537#define RIG_VFO_N(n) (1u<<(n))
540#define RIG_VFO_NONE 0
543#define RIG_VFO_A RIG_VFO_N(0)
546#define RIG_VFO_B RIG_VFO_N(1)
549#define RIG_VFO_C RIG_VFO_N(2)
555#define RIG_VFO_SUB_A RIG_VFO_N(21)
558#define RIG_VFO_SUB_B RIG_VFO_N(22)
561#define RIG_VFO_SUB_C RIG_VFO_N(3)
564#define RIG_VFO_MAIN_A RIG_VFO_N(23)
567#define RIG_VFO_MAIN_B RIG_VFO_N(24)
570#define RIG_VFO_MAIN_C RIG_VFO_N(4)
573#define RIG_VFO_OTHER RIG_VFO_N(5)
576#define RIG_VFO_SUB RIG_VFO_N(25)
579#define RIG_VFO_MAIN RIG_VFO_N(26)
582#define RIG_VFO_VFO RIG_VFO_N(27)
585#define RIG_VFO_MEM RIG_VFO_N(28)
588#define RIG_VFO_CURR RIG_VFO_N(29)
591#define RIG_VFO_TX_FLAG RIG_VFO_N(30)
594#define RIG_VFO_ALL RIG_VFO_N(31)
601#define RIG_VFO_TX_VFO(v) ((v)|RIG_VFO_TX_FLAG)
604#define RIG_VFO_TX RIG_VFO_TX_VFO(RIG_VFO_CURR)
607#define RIG_VFO_RX RIG_VFO_CURR
617#define RIG_TARGETABLE_NONE 0
618#define RIG_TARGETABLE_FREQ (1<<0)
619#define RIG_TARGETABLE_MODE (1<<1)
620#define RIG_TARGETABLE_PURE (1<<2)
621#define RIG_TARGETABLE_TONE (1<<3)
622#define RIG_TARGETABLE_FUNC (1<<4)
623#define RIG_TARGETABLE_LEVEL (1<<5)
624#define RIG_TARGETABLE_RITXIT (1<<6)
625#define RIG_TARGETABLE_PTT (1<<7)
626#define RIG_TARGETABLE_MEM (1<<8)
627#define RIG_TARGETABLE_BANK (1<<9)
628#define RIG_TARGETABLE_ANT (1<<10)
629#define RIG_TARGETABLE_ROOFING (1<<11)
630#define RIG_TARGETABLE_SPECTRUM (1<<12)
631#define RIG_TARGETABLE_BAND (1<<13)
632#define RIG_TARGETABLE_COMMON (RIG_TARGETABLE_RITXIT | RIG_TARGETABLE_PTT | RIG_TARGETABLE_MEM | RIG_TARGETABLE_BANK)
633#define RIG_TARGETABLE_ALL 0x7fffffff
641#define VFO_HAS_A_B ((STATE(rig)->vfo_list & (RIG_VFO_A|RIG_VFO_B)) == (RIG_VFO_A|RIG_VFO_B))
642#define VFO_HAS_MAIN_SUB ((STATE(rig)->vfo_list & (RIG_VFO_MAIN|RIG_VFO_SUB)) == (RIG_VFO_MAIN|RIG_VFO_SUB))
643#define VFO_HAS_MAIN_SUB_ONLY ((!VFO_HAS_A_B) & VFO_HAS_MAIN_SUB)
644#define VFO_HAS_MAIN_SUB_A_B_ONLY (VFO_HAS_A_B & VFO_HAS_MAIN_SUB)
645#define VFO_HAS_A_B_ONLY (VFO_HAS_A_B & (!VFO_HAS_MAIN_SUB))
646#define VFO_DUAL (RIG_VFO_MAIN_A|RIG_VFO_MAIN_B|RIG_VFO_SUB_A|RIG_VFO_SUB_B)
647#define VFO_HAS_DUAL ((STATE(rig)->vfo_list & VFO_DUAL) == VFO_DUAL)
654#define RIG_PASSBAND_NORMAL s_Hz(0)
659#define RIG_PASSBAND_NOCHANGE s_Hz(-1)
667typedef float agc_time_t;
849#define RIG_BANDSELECT_ALL
850#define RIG_BANDSELECT_LF (RIG_BANDSELECT_2200M | RIG_BANDSELECT_600M)
851#define RIG_BANDSELECT_HF (RIG_BANDSELECT_160M | RIG_BANDSELECT_80M | RIG_BANDSELECT_60M | RIG_BANDSELECT_40M\
852| RIG_BANDSELECT_30M | RIG_BANDSELECT_20M | RIG_BANDSELECT_17M | RIG_BANDSELECT_15M | RIG_BANDSELECT_12M\
853| RIG_BANDSELECT_10M | RIG_BANDSELECT_6M)
854#define RIG_BANDSELECT_VHF (RIG_BANDSELECT_AIR | RIG_BANDSELECT_2M| RIG_BANDSELECT_1_25M(
855#define RIG_BANDSELECT_UHF (RIG_BANDSELECT_70CM)
883#define token_t hamlib_token_t
888#define RIG_CONF_END 0
915#define RIG_COMBO_MAX 16
916#define RIG_BIN_MAX 80
1006#define RIG_ANT_NONE 0
1007#define RIG_ANT_N(n) ((ant_t)1<<(n))
1008#define RIG_ANT_1 RIG_ANT_N(0)
1009#define RIG_ANT_2 RIG_ANT_N(1)
1010#define RIG_ANT_3 RIG_ANT_N(2)
1011#define RIG_ANT_4 RIG_ANT_N(3)
1012#define RIG_ANT_5 RIG_ANT_N(4)
1014#define RIG_ANT_UNKNOWN RIG_ANT_N(30)
1015#define RIG_ANT_CURR RIG_ANT_N(31)
1017#define RIG_ANT_MAX 32
1021#define RIG_AGC_LAST 99999
1030 RIG_METER_SWR = (1 << 0),
1031 RIG_METER_COMP = (1 << 1),
1032 RIG_METER_ALC = (1 << 2),
1033 RIG_METER_IC = (1 << 3),
1034 RIG_METER_DB = (1 << 4),
1035 RIG_METER_PO = (1 << 5),
1036 RIG_METER_VDD = (1 << 6),
1037 RIG_METER_TEMP = (1 << 7)
1071#define RIG_LEVEL_NONE 0
1072#define RIG_LEVEL_PREAMP CONSTANT_64BIT_FLAG(0)
1073#define RIG_LEVEL_ATT CONSTANT_64BIT_FLAG(1)
1074#define RIG_LEVEL_VOXDELAY CONSTANT_64BIT_FLAG(2)
1075#define RIG_LEVEL_AF CONSTANT_64BIT_FLAG(3)
1076#define RIG_LEVEL_RF CONSTANT_64BIT_FLAG(4)
1077#define RIG_LEVEL_SQL CONSTANT_64BIT_FLAG(5)
1078#define RIG_LEVEL_IF CONSTANT_64BIT_FLAG(6)
1079#define RIG_LEVEL_APF CONSTANT_64BIT_FLAG(7)
1080#define RIG_LEVEL_NR CONSTANT_64BIT_FLAG(8)
1081#define RIG_LEVEL_PBT_IN CONSTANT_64BIT_FLAG(9)
1082#define RIG_LEVEL_PBT_OUT CONSTANT_64BIT_FLAG(10)
1083#define RIG_LEVEL_CWPITCH CONSTANT_64BIT_FLAG(11)
1084#define RIG_LEVEL_RFPOWER CONSTANT_64BIT_FLAG(12)
1085#define RIG_LEVEL_MICGAIN CONSTANT_64BIT_FLAG(13)
1086#define RIG_LEVEL_KEYSPD CONSTANT_64BIT_FLAG(14)
1087#define RIG_LEVEL_NOTCHF CONSTANT_64BIT_FLAG(15)
1088#define RIG_LEVEL_COMP CONSTANT_64BIT_FLAG(16)
1089#define RIG_LEVEL_AGC CONSTANT_64BIT_FLAG(17)
1090#define RIG_LEVEL_BKINDL CONSTANT_64BIT_FLAG(18)
1091#define RIG_LEVEL_BALANCE CONSTANT_64BIT_FLAG(19)
1092#define RIG_LEVEL_METER CONSTANT_64BIT_FLAG(20)
1093#define RIG_LEVEL_VOXGAIN CONSTANT_64BIT_FLAG(21)
1094#define RIG_LEVEL_ANTIVOX CONSTANT_64BIT_FLAG(22)
1095#define RIG_LEVEL_SLOPE_LOW CONSTANT_64BIT_FLAG(23)
1096#define RIG_LEVEL_SLOPE_HIGH CONSTANT_64BIT_FLAG(24)
1097#define RIG_LEVEL_BKIN_DLYMS CONSTANT_64BIT_FLAG(25)
1100#define RIG_LEVEL_RAWSTR CONSTANT_64BIT_FLAG(26)
1102#define RIG_LEVEL_SWR CONSTANT_64BIT_FLAG(28)
1103#define RIG_LEVEL_ALC CONSTANT_64BIT_FLAG(29)
1104#define RIG_LEVEL_STRENGTH CONSTANT_64BIT_FLAG(30)
1106#define RIG_LEVEL_RFPOWER_METER CONSTANT_64BIT_FLAG(32)
1107#define RIG_LEVEL_COMP_METER CONSTANT_64BIT_FLAG(33)
1108#define RIG_LEVEL_VD_METER CONSTANT_64BIT_FLAG(34)
1109#define RIG_LEVEL_ID_METER CONSTANT_64BIT_FLAG(35)
1111#define RIG_LEVEL_NOTCHF_RAW CONSTANT_64BIT_FLAG(36)
1112#define RIG_LEVEL_MONITOR_GAIN CONSTANT_64BIT_FLAG(37)
1113#define RIG_LEVEL_NB CONSTANT_64BIT_FLAG(38)
1114#define RIG_LEVEL_RFPOWER_METER_WATTS CONSTANT_64BIT_FLAG(39)
1115#define RIG_LEVEL_SPECTRUM_MODE CONSTANT_64BIT_FLAG(40)
1116#define RIG_LEVEL_SPECTRUM_SPAN CONSTANT_64BIT_FLAG(41)
1117#define RIG_LEVEL_SPECTRUM_EDGE_LOW CONSTANT_64BIT_FLAG(42)
1118#define RIG_LEVEL_SPECTRUM_EDGE_HIGH CONSTANT_64BIT_FLAG(43)
1119#define RIG_LEVEL_SPECTRUM_SPEED CONSTANT_64BIT_FLAG(44)
1120#define RIG_LEVEL_SPECTRUM_REF CONSTANT_64BIT_FLAG(45)
1121#define RIG_LEVEL_SPECTRUM_AVG CONSTANT_64BIT_FLAG(46)
1122#define RIG_LEVEL_SPECTRUM_ATT CONSTANT_64BIT_FLAG(47)
1123#define RIG_LEVEL_TEMP_METER CONSTANT_64BIT_FLAG(48)
1124#define RIG_LEVEL_BAND_SELECT CONSTANT_64BIT_FLAG(49)
1125#define RIG_LEVEL_USB_AF CONSTANT_64BIT_FLAG(50)
1126#define RIG_LEVEL_USB_AF_INPUT CONSTANT_64BIT_FLAG(51)
1127#define RIG_LEVEL_AGC_TIME CONSTANT_64BIT_FLAG(52)
1128#define RIG_LEVEL_53 CONSTANT_64BIT_FLAG(53)
1129#define RIG_LEVEL_54 CONSTANT_64BIT_FLAG(54)
1130#define RIG_LEVEL_55 CONSTANT_64BIT_FLAG(55)
1131#define RIG_LEVEL_56 CONSTANT_64BIT_FLAG(56)
1132#define RIG_LEVEL_57 CONSTANT_64BIT_FLAG(57)
1133#define RIG_LEVEL_58 CONSTANT_64BIT_FLAG(58)
1134#define RIG_LEVEL_59 CONSTANT_64BIT_FLAG(59)
1135#define RIG_LEVEL_60 CONSTANT_64BIT_FLAG(60)
1136#define RIG_LEVEL_61 CONSTANT_64BIT_FLAG(61)
1137#define RIG_LEVEL_62 CONSTANT_64BIT_FLAG(62)
1138#define RIG_LEVEL_63 CONSTANT_64BIT_FLAG(63)
1141#define RIG_LEVEL_FLOAT_LIST (RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_SQL|RIG_LEVEL_APF|RIG_LEVEL_NR|RIG_LEVEL_PBT_IN|RIG_LEVEL_PBT_OUT|RIG_LEVEL_RFPOWER|RIG_LEVEL_MICGAIN|RIG_LEVEL_COMP|RIG_LEVEL_BALANCE|RIG_LEVEL_SWR|RIG_LEVEL_ALC|RIG_LEVEL_VOXGAIN|RIG_LEVEL_ANTIVOX|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_RFPOWER_METER_WATTS|RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|RIG_LEVEL_NOTCHF_RAW|RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_NB|RIG_LEVEL_SPECTRUM_REF|RIG_LEVEL_TEMP_METER|RIG_LEVEL_USB_AF|RIG_LEVEL_USB_AF_INPUT|RIG_LEVEL_AGC_TIME)
1143#define RIG_LEVEL_READONLY_LIST (RIG_LEVEL_SWR|RIG_LEVEL_ALC|RIG_LEVEL_STRENGTH|RIG_LEVEL_RAWSTR|RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|RIG_LEVEL_TEMP_METER|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_RFPOWER_METER_WATTS)
1145#define RIG_LEVEL_IS_FLOAT(l) ((l)&RIG_LEVEL_FLOAT_LIST)
1146#define RIG_LEVEL_SET(l) ((l)&~RIG_LEVEL_READONLY_LIST)
1176enum rig_keyertype_e {
1177 RIG_KEYERTYPE_STRAIGHT = 0,
1178 RIG_KEYERTYPE_BUG = (1 << 0),
1179 RIG_KEYERTYPE_PADDLE = (1 << 1),
1180 RIG_KEYERTYPE_UNKNOWN = (1 << 2)
1203 RIG_MULTICAST_TRANSCEIVE,
1204 RIG_MULTICAST_SPECTRUM
1208#define RIG_PARM_FLOAT_LIST (RIG_PARM_BACKLIGHT|RIG_PARM_BAT|RIG_PARM_KEYLIGHT|RIG_PARM_BACKLIGHT)
1209#define RIG_PARM_STRING_LIST (RIG_PARM_BANDSELECT|RIG_PARM_KEYERTYPE)
1210#define RIG_PARM_READONLY_LIST (RIG_PARM_BAT)
1212#define RIG_PARM_IS_FLOAT(l) ((l)&RIG_PARM_FLOAT_LIST)
1213#define RIG_PARM_IS_STRING(l) ((l)&RIG_PARM_STRING_LIST)
1214#define RIG_PARM_SET(l) ((l)&~RIG_PARM_READONLY_LIST)
1229#define RIG_SETTING_MAX 64
1247#define RIG_TRN_OFF 0
1248#define RIG_TRN_RIG 1
1249#define RIG_TRN_POLL 2
1269#define RIG_FUNC_NONE 0
1270#define RIG_FUNC_FAGC CONSTANT_64BIT_FLAG (0)
1271#define RIG_FUNC_NB CONSTANT_64BIT_FLAG (1)
1272#define RIG_FUNC_COMP CONSTANT_64BIT_FLAG (2)
1273#define RIG_FUNC_VOX CONSTANT_64BIT_FLAG (3)
1274#define RIG_FUNC_TONE CONSTANT_64BIT_FLAG (4)
1275#define RIG_FUNC_TSQL CONSTANT_64BIT_FLAG (5)
1276#define RIG_FUNC_SBKIN CONSTANT_64BIT_FLAG (6)
1277#define RIG_FUNC_FBKIN CONSTANT_64BIT_FLAG (7)
1278#define RIG_FUNC_ANF CONSTANT_64BIT_FLAG (8)
1279#define RIG_FUNC_NR CONSTANT_64BIT_FLAG (9)
1280#define RIG_FUNC_AIP CONSTANT_64BIT_FLAG (10)
1281#define RIG_FUNC_APF CONSTANT_64BIT_FLAG (11)
1282#define RIG_FUNC_MON CONSTANT_64BIT_FLAG (12)
1283#define RIG_FUNC_MN CONSTANT_64BIT_FLAG (13)
1284#define RIG_FUNC_RF CONSTANT_64BIT_FLAG (14)
1285#define RIG_FUNC_ARO CONSTANT_64BIT_FLAG (15)
1286#define RIG_FUNC_LOCK CONSTANT_64BIT_FLAG (16)
1287#define RIG_FUNC_MUTE CONSTANT_64BIT_FLAG (17)
1288#define RIG_FUNC_VSC CONSTANT_64BIT_FLAG (18)
1289#define RIG_FUNC_REV CONSTANT_64BIT_FLAG (19)
1290#define RIG_FUNC_SQL CONSTANT_64BIT_FLAG (20)
1291#define RIG_FUNC_ABM CONSTANT_64BIT_FLAG (21)
1292#define RIG_FUNC_BC CONSTANT_64BIT_FLAG (22)
1293#define RIG_FUNC_MBC CONSTANT_64BIT_FLAG (23)
1294#define RIG_FUNC_RIT CONSTANT_64BIT_FLAG (24)
1295#define RIG_FUNC_AFC CONSTANT_64BIT_FLAG (25)
1296#define RIG_FUNC_SATMODE CONSTANT_64BIT_FLAG (26)
1297#define RIG_FUNC_SCOPE CONSTANT_64BIT_FLAG (27)
1298#define RIG_FUNC_RESUME CONSTANT_64BIT_FLAG (28)
1299#define RIG_FUNC_TBURST CONSTANT_64BIT_FLAG (29)
1300#define RIG_FUNC_TUNER CONSTANT_64BIT_FLAG (30)
1301#define RIG_FUNC_XIT CONSTANT_64BIT_FLAG (31)
1304#define RIG_FUNC_NB2 CONSTANT_64BIT_FLAG (32)
1305#define RIG_FUNC_CSQL CONSTANT_64BIT_FLAG (33)
1306#define RIG_FUNC_AFLT CONSTANT_64BIT_FLAG (34)
1307#define RIG_FUNC_ANL CONSTANT_64BIT_FLAG (35)
1308#define RIG_FUNC_BC2 CONSTANT_64BIT_FLAG (36)
1309#define RIG_FUNC_DUAL_WATCH CONSTANT_64BIT_FLAG (37)
1310#define RIG_FUNC_DIVERSITY CONSTANT_64BIT_FLAG (38)
1311#define RIG_FUNC_DSQL CONSTANT_64BIT_FLAG (39)
1312#define RIG_FUNC_SCEN CONSTANT_64BIT_FLAG (40)
1313#define RIG_FUNC_SLICE CONSTANT_64BIT_FLAG (41)
1314#define RIG_FUNC_TRANSCEIVE CONSTANT_64BIT_FLAG (42)
1315#define RIG_FUNC_SPECTRUM CONSTANT_64BIT_FLAG (43)
1316#define RIG_FUNC_SPECTRUM_HOLD CONSTANT_64BIT_FLAG (44)
1317#define RIG_FUNC_SEND_MORSE CONSTANT_64BIT_FLAG (45)
1318#define RIG_FUNC_SEND_VOICE_MEM CONSTANT_64BIT_FLAG (46)
1319#define RIG_FUNC_OVF_STATUS CONSTANT_64BIT_FLAG (47)
1320#define RIG_FUNC_SYNC CONSTANT_64BIT_FLAG (48)
1321#define RIG_FUNC_BIT49 CONSTANT_64BIT_FLAG (49)
1322#define RIG_FUNC_BIT50 CONSTANT_64BIT_FLAG (50)
1323#define RIG_FUNC_BIT51 CONSTANT_64BIT_FLAG (51)
1324#define RIG_FUNC_BIT52 CONSTANT_64BIT_FLAG (52)
1325#define RIG_FUNC_BIT53 CONSTANT_64BIT_FLAG (53)
1326#define RIG_FUNC_BIT54 CONSTANT_64BIT_FLAG (54)
1327#define RIG_FUNC_BIT55 CONSTANT_64BIT_FLAG (55)
1328#define RIG_FUNC_BIT56 CONSTANT_64BIT_FLAG (56)
1329#define RIG_FUNC_BIT57 CONSTANT_64BIT_FLAG (57)
1330#define RIG_FUNC_BIT58 CONSTANT_64BIT_FLAG (58)
1331#define RIG_FUNC_BIT59 CONSTANT_64BIT_FLAG (59)
1332#define RIG_FUNC_BIT60 CONSTANT_64BIT_FLAG (60)
1333#define RIG_FUNC_BIT61 CONSTANT_64BIT_FLAG (61)
1334#define RIG_FUNC_BIT62 CONSTANT_64BIT_FLAG (62)
1335#define RIG_FUNC_BIT63 CONSTANT_64BIT_FLAG (63)
1345#define mW(p) ((int)(p))
1353#define Watts(p) ((int)((p)*1000))
1360#define W(p) Watts(p)
1368#define kW(p) ((int)((p)*1000000L))
1383#define RIG_MODE_NONE 0
1384#define RIG_MODE_AM CONSTANT_64BIT_FLAG (0)
1385#define RIG_MODE_CW CONSTANT_64BIT_FLAG (1)
1386#define RIG_MODE_USB CONSTANT_64BIT_FLAG (2)
1387#define RIG_MODE_LSB CONSTANT_64BIT_FLAG (3)
1388#define RIG_MODE_RTTY CONSTANT_64BIT_FLAG (4)
1389#define RIG_MODE_FM CONSTANT_64BIT_FLAG (5)
1390#define RIG_MODE_WFM CONSTANT_64BIT_FLAG (6)
1391#define RIG_MODE_CWR CONSTANT_64BIT_FLAG (7)
1392#define RIG_MODE_RTTYR CONSTANT_64BIT_FLAG (8)
1393#define RIG_MODE_AMS CONSTANT_64BIT_FLAG (9)
1394#define RIG_MODE_PKTLSB CONSTANT_64BIT_FLAG (10)
1395#define RIG_MODE_PKTUSB CONSTANT_64BIT_FLAG (11)
1396#define RIG_MODE_PKTFM CONSTANT_64BIT_FLAG (12)
1397#define RIG_MODE_ECSSUSB CONSTANT_64BIT_FLAG (13)
1398#define RIG_MODE_ECSSLSB CONSTANT_64BIT_FLAG (14)
1399#define RIG_MODE_FAX CONSTANT_64BIT_FLAG (15)
1400#define RIG_MODE_SAM CONSTANT_64BIT_FLAG (16)
1401#define RIG_MODE_SAL CONSTANT_64BIT_FLAG (17)
1402#define RIG_MODE_SAH CONSTANT_64BIT_FLAG (18)
1403#define RIG_MODE_DSB CONSTANT_64BIT_FLAG (19)
1404#define RIG_MODE_FMN CONSTANT_64BIT_FLAG (21)
1405#define RIG_MODE_PKTAM CONSTANT_64BIT_FLAG (22)
1406#define RIG_MODE_P25 CONSTANT_64BIT_FLAG (23)
1407#define RIG_MODE_DSTAR CONSTANT_64BIT_FLAG (24)
1408#define RIG_MODE_DPMR CONSTANT_64BIT_FLAG (25)
1409#define RIG_MODE_NXDNVN CONSTANT_64BIT_FLAG (26)
1410#define RIG_MODE_NXDN_N CONSTANT_64BIT_FLAG (27)
1411#define RIG_MODE_DCR CONSTANT_64BIT_FLAG (28)
1412#define RIG_MODE_AMN CONSTANT_64BIT_FLAG (29)
1413#define RIG_MODE_PSK CONSTANT_64BIT_FLAG (30)
1414#define RIG_MODE_PSKR CONSTANT_64BIT_FLAG (31)
1417#define RIG_MODE_DD CONSTANT_64BIT_FLAG (32)
1418#define RIG_MODE_C4FM CONSTANT_64BIT_FLAG (33)
1419#define RIG_MODE_PKTFMN CONSTANT_64BIT_FLAG (34)
1420#define RIG_MODE_SPEC CONSTANT_64BIT_FLAG (35)
1421#define RIG_MODE_CWN CONSTANT_64BIT_FLAG (36)
1422#define RIG_MODE_IQ CONSTANT_64BIT_FLAG (37)
1423#define RIG_MODE_ISBUSB CONSTANT_64BIT_FLAG (38)
1424#define RIG_MODE_ISBLSB CONSTANT_64BIT_FLAG (39)
1425#define RIG_MODE_USBD1 CONSTANT_64BIT_FLAG (40)
1426#define RIG_MODE_USBD2 CONSTANT_64BIT_FLAG (41)
1427#define RIG_MODE_USBD3 CONSTANT_64BIT_FLAG (42)
1428#define RIG_MODE_LSBD1 CONSTANT_64BIT_FLAG (43)
1429#define RIG_MODE_LSBD2 CONSTANT_64BIT_FLAG (44)
1430#define RIG_MODE_LSBD3 CONSTANT_64BIT_FLAG (45)
1431#define RIG_MODE_WFMS CONSTANT_64BIT_FLAG (46)
1432#define RIG_MODE_BIT47 CONSTANT_64BIT_FLAG (47)
1433#define RIG_MODE_BIT48 CONSTANT_64BIT_FLAG (48)
1434#define RIG_MODE_BIT49 CONSTANT_64BIT_FLAG (49)
1435#define RIG_MODE_BIT50 CONSTANT_64BIT_FLAG (50)
1436#define RIG_MODE_BIT51 CONSTANT_64BIT_FLAG (51)
1437#define RIG_MODE_BIT52 CONSTANT_64BIT_FLAG (52)
1438#define RIG_MODE_BIT53 CONSTANT_64BIT_FLAG (53)
1439#define RIG_MODE_BIT54 CONSTANT_64BIT_FLAG (54)
1440#define RIG_MODE_BIT55 CONSTANT_64BIT_FLAG (55)
1441#define RIG_MODE_BIT56 CONSTANT_64BIT_FLAG (56)
1442#define RIG_MODE_BIT57 CONSTANT_64BIT_FLAG (57)
1443#define RIG_MODE_BIT58 CONSTANT_64BIT_FLAG (58)
1444#define RIG_MODE_BIT59 CONSTANT_64BIT_FLAG (59)
1445#define RIG_MODE_BIT60 CONSTANT_64BIT_FLAG (60)
1446#define RIG_MODE_BIT61 CONSTANT_64BIT_FLAG (61)
1447#define RIG_MODE_BIT62 CONSTANT_64BIT_FLAG (62)
1448#define RIG_MODE_TESTS_MAX CONSTANT_64BIT_FLAG (63)
1449#define RIG_MODE_ALL (0xffffffff)
1455#define RIG_MODE_SSB (RIG_MODE_USB|RIG_MODE_LSB)
1460#define RIG_MODE_PKTSSB (RIG_MODE_PKTUSB|RIG_MODE_PKTLSB)
1465#define RIG_MODE_ECSS (RIG_MODE_ECSSUSB|RIG_MODE_ECSSLSB)
1468#define RIG_DBLST_END 0
1469#define RIG_IS_DBLST_END(d) ((d)==0)
1491#define RIG_FRNG_END {Hz(0),Hz(0),RIG_MODE_NONE,0,0,RIG_VFO_NONE}
1492#define RIG_IS_FRNG_END(r) ((r).startf == Hz(0) && (r).endf == Hz(0))
1518#define RIG_TS_END {RIG_MODE_NONE, 0}
1519#define RIG_IS_TS_END(t) ((t).modes == RIG_MODE_NONE && (t).ts == 0)
1551#define RIG_FLT_ANY 0
1552#define RIG_FLT_END {RIG_MODE_NONE, 0}
1553#define RIG_IS_FLT_END(f) ((f).modes == RIG_MODE_NONE)
1554#define DEBUGMSGSAVE_SIZE 24000
1561#define RIG_CHFLAG_NONE 0
1565#define RIG_CHFLAG_SKIP (1<<0)
1569#define RIG_CHFLAG_DATA (1<<1)
1573#define RIG_CHFLAG_PSKIP (1<<2)
1585#define RIG_EXT_END {0, {.i=0}}
1586#define RIG_IS_EXT_END(x) ((x).token == 0)
1725#define RIG_CHAN_END {0,0,RIG_MTYPE_NONE}
1726#define RIG_IS_CHAN_END(c) ((c).type == RIG_MTYPE_NONE)
1732#define RIG_MEM_CAPS_ALL -1
1789#define EMPTY_STR_CAL { 0, { { 0, 0 }, } }
1819#define EMPTY_FLOAT_CAL { 0, { { 0, 0f }, } }
1822typedef int (* confval_cb_t)(
RIG *,
1841 RIG_SPECTRUM_MODE_NONE = 0,
1912#define RIG_MODEL(arg) .rig_model=arg,.macro_name=#arg
1914#define HAMLIB_CHECK_RIG_CAPS "HAMLIB_CHECK_RIG_CAPS"
2039 int (*rig_init)(
RIG *rig);
2040 int (*rig_cleanup)(
RIG *rig);
2041 int (*rig_open)(
RIG *rig);
2042 int (*rig_close)(
RIG *rig);
2055 int (*set_vfo)(
RIG *rig,
vfo_t vfo);
2056 int (*get_vfo)(
RIG *rig,
vfo_t *vfo);
2061 int (*get_dcd)(
RIG *rig,
vfo_t vfo, dcd_t *dcd);
2072 int (*set_split_mode)(
RIG *rig,
2076 int (*get_split_mode)(
RIG *rig,
2081 int (*set_split_freq_mode)(
RIG *rig,
2086 int (*get_split_freq_mode)(
RIG *rig,
2122 int (*power2mW)(
RIG *rig,
2123 unsigned int *mwpower,
2127 int (*mW2power)(
RIG *rig,
2129 unsigned int mwpower,
2162 int (*send_dtmf)(
RIG *rig,
vfo_t vfo,
const char *digits);
2163 int (*recv_dtmf)(
RIG *rig,
vfo_t vfo,
char *digits,
int *length);
2165 int (*send_morse)(
RIG *rig,
vfo_t vfo,
const char *msg);
2166 int (*stop_morse)(
RIG *rig,
vfo_t vfo);
2167 int (*wait_morse)(
RIG *rig,
vfo_t vfo);
2169 int (*send_voice_mem)(
RIG *rig,
vfo_t vfo,
int ch);
2170 int (*stop_voice_mem)(
RIG *rig,
vfo_t vfo);
2172 int (*set_bank)(
RIG *rig,
vfo_t vfo,
int bank);
2174 int (*set_mem)(
RIG *rig,
vfo_t vfo,
int ch);
2175 int (*get_mem)(
RIG *rig,
vfo_t vfo,
int *ch);
2181 int (*set_trn)(
RIG *rig,
int trn);
2182 int (*get_trn)(
RIG *rig,
int *trn);
2184 int (*decode_event)(
RIG *rig);
2189 const char * (*get_info)(
RIG *rig);
2191 int (*set_chan_all_cb)(
RIG *rig,
vfo_t vfo, chan_cb_t chan_cb, rig_ptr_t);
2192 int (*get_chan_all_cb)(
RIG *rig,
vfo_t vfo, chan_cb_t chan_cb, rig_ptr_t);
2194 int (*set_mem_all_cb)(
RIG *rig,
2197 confval_cb_t parm_cb,
2199 int (*get_mem_all_cb)(
RIG *rig,
2202 confval_cb_t parm_cb,
2205 int (*set_vfo_opt)(
RIG *rig,
int status);
2206 int (*rig_get_vfo_info) (
RIG *rig,
2212 int(*set_clock) (
RIG *rig,
int year,
int month,
int day,
int hour,
int min,
int sec,
double msec,
int utc_offset);
2213 int(*get_clock) (
RIG *rig,
int *year,
int *month,
int *day,
int *hour,
int *min,
int *sec,
double *msec,
int *utc_offset);
2220 int (*read_frame_direct)(
RIG *rig,
2221 size_t buffer_length,
2222 const unsigned char *buffer);
2223 int (*is_async_frame)(
RIG *rig,
2224 size_t frame_length,
2225 const unsigned char *frame);
2226 int (*process_async_frame)(
RIG *rig,
2227 size_t frame_length,
2228 const unsigned char *frame);
2230 char *hamlib_check_rig_caps;
2232 int (*password)(
RIG *rig,
const char *key1);
2233 int (*set_lock_mode)(
RIG *rig,
int mode);
2234 int (*get_lock_mode)(
RIG *rig,
int *mode);
2249 RIG_FUNCTION_CLEANUP,
2252 RIG_FUNCTION_SET_FREQ,
2253 RIG_FUNCTION_GET_FREQ,
2254 RIG_FUNCTION_SET_MODE,
2255 RIG_FUNCTION_GET_MODE,
2256 RIG_FUNCTION_SET_VFO,
2257 RIG_FUNCTION_GET_VFO,
2258 RIG_FUNCTION_SET_PTT,
2259 RIG_FUNCTION_GET_PTT,
2260 RIG_FUNCTION_GET_DCD,
2261 RIG_FUNCTION_SET_RPTR_SHIFT,
2262 RIG_FUNCTION_GET_RPTR_SHIFT,
2263 RIG_FUNCTION_SET_RPTR_OFFS,
2264 RIG_FUNCTION_GET_RPTR_OFFS,
2265 RIG_FUNCTION_SET_SPLIT_FREQ,
2266 RIG_FUNCTION_GET_SPLIT_FREQ,
2267 RIG_FUNCTION_SET_SPLIT_MODE,
2268 RIG_FUNCTION_SET_SPLIT_FREQ_MODE,
2269 RIG_FUNCTION_GET_SPLIT_FREQ_MODE,
2270 RIG_FUNCTION_SET_SPLIT_VFO,
2271 RIG_FUNCTION_GET_SPLIT_VFO,
2272 RIG_FUNCTION_SET_RIT,
2273 RIG_FUNCTION_GET_RIT,
2274 RIG_FUNCTION_SET_XIT,
2275 RIG_FUNCTION_GET_XIT,
2276 RIG_FUNCTION_SET_TS,
2277 RIG_FUNCTION_GET_TS,
2278 RIG_FUNCTION_SET_DCS_CODE,
2279 RIG_FUNCTION_GET_DCS_CODE,
2280 RIG_FUNCTION_SET_TONE,
2281 RIG_FUNCTION_GET_TONE,
2282 RIG_FUNCTION_SET_CTCSS_TONE,
2283 RIG_FUNCTION_GET_CTCSS_TONE,
2284 RIG_FUNCTION_SET_DCS_SQL,
2285 RIG_FUNCTION_GET_DCS_SQL,
2286 RIG_FUNCTION_SET_TONE_SQL,
2287 RIG_FUNCTION_GET_TONE_SQL,
2288 RIG_FUNCTION_SET_CTCSS_SQL,
2289 RIG_FUNCTION_GET_CTCSS_SQL,
2290 RIG_FUNCTION_POWER2MW,
2291 RIG_FUNCTION_MW2POWER,
2292 RIG_FUNCTION_SET_POWERSTAT,
2293 RIG_FUNCTION_GET_POWERSTAT,
2295 RIG_FUNCTION_SET_ANT,
2296 RIG_FUNCTION_GET_ANT,
2297 RIG_FUNCTION_SET_LEVEL,
2298 RIG_FUNCTION_GET_LEVEL,
2299 RIG_FUNCTION_SET_FUNC,
2300 RIG_FUNCTION_GET_FUNC,
2301 RIG_FUNCTION_SET_PARM,
2302 RIG_FUNCTION_GET_PARM,
2303 RIG_FUNCTION_SET_EXT_LEVEL,
2304 RIG_FUNCTION_GET_EXT_LEVEL,
2305 RIG_FUNCTION_SET_EXT_FUNC,
2306 RIG_FUNCTION_GET_EXT_FUNC,
2307 RIG_FUNCTION_SET_EXT_PARM,
2308 RIG_FUNCTION_GET_EXT_PARM,
2309 RIG_FUNCTION_SET_CONF,
2310 RIG_FUNCTION_GET_CONF,
2311 RIG_FUNCTION_SEND_DTMF,
2312 RIG_FUNCTION_SEND_MORSE,
2313 RIG_FUNCTION_STOP_MORSE,
2314 RIG_FUNCTION_WAIT_MORSE,
2315 RIG_FUNCTION_SEND_VOICE_MEM,
2316 RIG_FUNCTION_SET_BANK,
2317 RIG_FUNCTION_SET_MEM,
2318 RIG_FUNCTION_GET_MEM,
2319 RIG_FUNCTION_VFO_OP,
2321 RIG_FUNCTION_SET_TRN,
2322 RIG_FUNCTION_GET_TRN,
2323 RIG_FUNCTION_DECODE_EVENT,
2324 RIG_FUNCTION_SET_CHANNEL,
2325 RIG_FUNCTION_GET_CHANNEL,
2326 RIG_FUNCTION_GET_INFO,
2327 RIG_FUNCTION_SET_CHAN_ALL_CB,
2328 RIG_FUNCTION_GET_CHAN_ALL_CB,
2329 RIG_FUNCTION_SET_MEM_ALL_CB,
2330 RIG_FUNCTION_GET_MEM_ALL_CB,
2331 RIG_FUNCTION_SET_VFO_OPT,
2332 RIG_FUNCTION_READ_FRAME_DIRECT,
2333 RIG_FUNCTION_IS_ASYNC_FRAME,
2334 RIG_FUNCTION_PROCESS_ASYNC_FRAME,
2335 RIG_FUNCTION_GET_CONF2,
2336 RIG_FUNCTION_STOP_VOICE_MEM,
2351 RIG_CAPS_TARGETABLE_VFO,
2355 RIG_CAPS_HAS_GET_LEVEL,
2356 RIG_CAPS_HAS_SET_LEVEL,
2359enum rig_caps_cptr_e {
2360 RIG_CAPS_VERSION_CPTR,
2361 RIG_CAPS_MFG_NAME_CPTR,
2362 RIG_CAPS_MODEL_NAME_CPTR,
2363 RIG_CAPS_STATUS_CPTR
2378struct hamlib_async_pipe;
2380typedef struct hamlib_async_pipe hamlib_async_pipe_t;
2386#ifndef NO_OLD_INCLUDES
2405#if defined(IN_HAMLIB)
2407#define RIGPORT(r) (&(r)->state.rigport)
2408#define PTTPORT(r) (&(r)->state.pttport)
2409#define DCDPORT(r) (&(r)->state.dcdport)
2411#define AMPPORT(a) (&(a)->state.ampport)
2412#define ROTPORT(r) (&(r)->state.rotport)
2413#define ROTPORT2(r) (&(r)->state.rotport2)
2452#define HAMLIB_ELAPSED_GET 0
2453#define HAMLIB_ELAPSED_SET 1
2454#define HAMLIB_ELAPSED_INVALIDATE 2
2456#define HAMLIB_CACHE_ALWAYS (-1)
2521 struct timespec time_freqCurr;
2522 struct timespec time_freqOther;
2523 struct timespec time_freqMainA;
2524 struct timespec time_freqMainB;
2525 struct timespec time_freqMainC;
2526 struct timespec time_freqSubA;
2527 struct timespec time_freqSubB;
2528 struct timespec time_freqSubC;
2529 struct timespec time_freqMem;
2530 struct timespec time_vfo;
2531 struct timespec time_modeCurr;
2532 struct timespec time_modeOther;
2533 struct timespec time_modeMainA;
2534 struct timespec time_modeMainB;
2535 struct timespec time_modeMainC;
2536 struct timespec time_modeSubA;
2537 struct timespec time_modeSubB;
2538 struct timespec time_modeSubC;
2539 struct timespec time_modeMem;
2540 struct timespec time_widthCurr;
2541 struct timespec time_widthOther;
2542 struct timespec time_widthMainA;
2543 struct timespec time_widthMainB;
2544 struct timespec time_widthMainC;
2545 struct timespec time_widthSubA;
2546 struct timespec time_widthSubB;
2547 struct timespec time_widthSubC;
2548 struct timespec time_widthMem;
2549 struct timespec time_ptt;
2550 struct timespec time_split;
2558#include <hamlib/multicast.h>
2561 int multicast_running;
2564 volatile int runflag;
2569 pthread_mutex_t mutex;
2570 int mutex_initialized;
2573 struct sockaddr_in dest_addr;
2578typedef unsigned int rig_comm_status_t;
2580#define RIG_COMM_STATUS_OK 0x00
2581#define RIG_COMM_STATUS_CONNECTING 0x01
2582#define RIG_COMM_STATUS_DISCONNECTED 0x02
2583#define RIG_COMM_STATUS_TERMINATED 0x03
2584#define RIG_COMM_STATUS_WARNING 0x04
2585#define RIG_COMM_STATUS_ERROR 0x05
2589#ifndef NO_OLD_INCLUDES
2608typedef int (*vfo_cb_t)(
RIG *,
vfo_t, rig_ptr_t);
2610typedef int (*dcd_cb_t)(
RIG *,
vfo_t, dcd_t, rig_ptr_t);
2611typedef int (*pltune_cb_t)(
RIG *,
2616typedef int (*spectrum_cb_t)(
RIG *,
2688extern HAMLIB_EXPORT(
int)
rig_open HAMLIB_PARAMS((
RIG *rig));
2695extern HAMLIB_EXPORT(
int)
2698extern HAMLIB_EXPORT(
int)
2701extern HAMLIB_EXPORT(
void)
2702rig_lock(
RIG *rig,
int lock);
2705#define rig_set_freq(r,v,f) rig_set_freq(r,v,f,__builtin_FUNCTION())
2706extern HAMLIB_EXPORT(
int)
2709 freq_t freq,
const char*));
2711extern HAMLIB_EXPORT(
int)
2717#define rig_get_freq(r,v,f) rig_get_freq(r,v,f,__builtin_FUNCTION())
2718extern HAMLIB_EXPORT(
int)
2721 freq_t *freq,
const char*));
2723extern HAMLIB_EXPORT(
int)
2729extern HAMLIB_EXPORT(
int)
2734extern HAMLIB_EXPORT(
int)
2741#define rig_set_vfo(r,v) rig_set_vfo(r,v,__builtin_FUNCTION())
2742extern HAMLIB_EXPORT(
int)
2744 vfo_t vfo,
const char *func));
2746extern HAMLIB_EXPORT(
int)
2750extern HAMLIB_EXPORT(
int)
2754extern HAMLIB_EXPORT(
int)
2763extern HAMLIB_EXPORT(
int)
2766extern HAMLIB_EXPORT(
int)
2767netrigctl_get_vfo_mode HAMLIB_PARAMS((
RIG *rig));
2769extern HAMLIB_EXPORT(
int)
2773extern HAMLIB_EXPORT(
int)
2778extern HAMLIB_EXPORT(
int)
2783extern HAMLIB_EXPORT(
int)
2787extern HAMLIB_EXPORT(
int)
2792extern HAMLIB_EXPORT(
int)
2796extern HAMLIB_EXPORT(
int)
2801extern HAMLIB_EXPORT(
int)
2805extern HAMLIB_EXPORT(
int)
2810extern HAMLIB_EXPORT(
int)
2814extern HAMLIB_EXPORT(
int)
2819extern HAMLIB_EXPORT(
int)
2823extern HAMLIB_EXPORT(
int)
2828extern HAMLIB_EXPORT(
int)
2832extern HAMLIB_EXPORT(
int)
2837extern HAMLIB_EXPORT(
int)
2841extern HAMLIB_EXPORT(
int)
2846extern HAMLIB_EXPORT(
int)
2851extern HAMLIB_EXPORT(
int)
2857extern HAMLIB_EXPORT(
int)
2863extern HAMLIB_EXPORT(
int)
2870extern HAMLIB_EXPORT(
int)
2875extern HAMLIB_EXPORT(
int)
2881extern HAMLIB_EXPORT(
int)
2885extern HAMLIB_EXPORT(
int)
2890extern HAMLIB_EXPORT(
int)
2894extern HAMLIB_EXPORT(
int)
2899extern HAMLIB_EXPORT(
int)
2903extern HAMLIB_EXPORT(
int)
2908extern HAMLIB_EXPORT(
int)
2910 unsigned int *mwpower,
2914extern HAMLIB_EXPORT(
int)
2917 unsigned int mwpower,
2925extern HAMLIB_EXPORT(
int)
2930extern HAMLIB_EXPORT(
int)
2936#define rig_get_strength(r,v,s) rig_get_level((r),(v),RIG_LEVEL_STRENGTH, (value_t*)(s))
2938extern HAMLIB_EXPORT(
int)
2942extern HAMLIB_EXPORT(
int)
2947extern HAMLIB_EXPORT(
int)
2952HL_DEPRECATED
extern HAMLIB_EXPORT(
int)
2956extern HAMLIB_EXPORT(
int)
2957rig_get_conf2 HAMLIB_PARAMS((
RIG *rig,
2962extern HAMLIB_EXPORT(
int)
2965extern HAMLIB_EXPORT(
int)
2969extern HAMLIB_EXPORT(
int)
2973extern HAMLIB_EXPORT(
int)
2978extern HAMLIB_EXPORT(
int)
2984extern HAMLIB_EXPORT(
int)
2989extern HAMLIB_EXPORT(
int)
2995extern HAMLIB_EXPORT(
int)
2999extern HAMLIB_EXPORT(
int)
3004extern HAMLIB_EXPORT(
int)
3010extern HAMLIB_EXPORT(
int)
3016extern HAMLIB_EXPORT(
int)
3023extern HAMLIB_EXPORT(
const struct confparams *)
3027extern HAMLIB_EXPORT(
const struct confparams *)
3035extern HAMLIB_EXPORT(
int)
3041extern HAMLIB_EXPORT(
const struct confparams *)
3048extern HAMLIB_EXPORT(
int)
3051extern HAMLIB_EXPORT(
int)
3054extern HAMLIB_EXPORT(
int)
3059extern HAMLIB_EXPORT(
int)
3089extern HAMLIB_EXPORT(
int)
3094extern HAMLIB_EXPORT(
int)
3100extern HAMLIB_EXPORT(
int)
3103 const char *digits));
3104extern HAMLIB_EXPORT(
int)
3110extern HAMLIB_EXPORT(
int)
3115extern HAMLIB_EXPORT(
int)
3119extern HAMLIB_EXPORT(
int)
3123extern HAMLIB_EXPORT(
int)
3128extern HAMLIB_EXPORT(
int)
3132extern HAMLIB_EXPORT(
int)
3137extern HAMLIB_EXPORT(
int)
3141extern HAMLIB_EXPORT(
int)
3146extern HAMLIB_EXPORT(
int)
3155extern HAMLIB_EXPORT(
int)
3161extern HAMLIB_EXPORT(
scan_t)
3165extern HAMLIB_EXPORT(
int)
3169extern HAMLIB_EXPORT(
int)
3174extern HAMLIB_EXPORT(
int)
3178extern HAMLIB_EXPORT(
int)
3183extern HAMLIB_EXPORT(
int)
3188extern HAMLIB_EXPORT(
int)
3194extern HAMLIB_EXPORT(
int)
3198 confval_cb_t parm_cb,
3200extern HAMLIB_EXPORT(
int)
3204 confval_cb_t parm_cb,
3207extern HAMLIB_EXPORT(
int)
3213extern HAMLIB_EXPORT(
int)
3220extern HAMLIB_EXPORT(
const chan_t *)
3224extern HAMLIB_EXPORT(
int)
3228extern HAMLIB_EXPORT(
int)
3232extern HAMLIB_EXPORT(
int)
3236extern HAMLIB_EXPORT(
int)
3241extern HAMLIB_EXPORT(
int)
3245extern HAMLIB_EXPORT(
int)
3250extern HAMLIB_EXPORT(
int)
3255extern HAMLIB_EXPORT(
int)
3260extern HAMLIB_EXPORT(
int)
3265extern HAMLIB_EXPORT(
int)
3270extern HAMLIB_EXPORT(
int)
3274extern HAMLIB_EXPORT(
int)
3278extern HAMLIB_EXPORT(
int)
3282extern HAMLIB_EXPORT(
const char *)
3285extern HAMLIB_EXPORT(
struct rig_caps *)
3286rig_get_caps HAMLIB_PARAMS((
rig_model_t rig_model));
3303extern HAMLIB_EXPORT(
const char *)
3304rigerror HAMLIB_PARAMS((
int errnum));
3305extern HAMLIB_EXPORT(
const char *)
3308extern HAMLIB_EXPORT(
int)
3311#define HAMLIB_SETTINGS_FILE "hamlib_settings"
3319extern HAMLIB_EXPORT(
void)
3322extern HAMLIB_EXPORT(
void)
3325extern HAMLIB_EXPORT(
void)
3328#define rig_set_debug_level(level) rig_set_debug(level)
3330extern HAMLIB_EXPORT(
int)
3336extern HAMLIB_EXPORT_VAR(
char) debugmsgsave[DEBUGMSGSAVE_SIZE];
3337extern HAMLIB_EXPORT_VAR(
char) debugmsgsave2[DEBUGMSGSAVE_SIZE];
3339extern HAMLIB_EXPORT_VAR(
char) debugmsgsave3[DEBUGMSGSAVE_SIZE];
3340#define rig_debug_clear() { debugmsgsave[0] = debugmsgsave2[0] = debugmsgsave3[0] = 0; };
3344#define rig_debug(debug_level,fmt,...) do { snprintf(debugmsgsave2,sizeof(debugmsgsave2),fmt,__VA_ARGS__);rig_debug(debug_level,fmt,##__VA_ARGS__); add2debugmsgsave(debugmsgsave2); } while(0)
3349#define ELAPSED1 struct timespec __begin; elapsed_ms(&__begin, HAMLIB_ELAPSED_SET);
3350#define ELAPSED2 rig_debug(RIG_DEBUG_VERBOSE, "%s%d:%s: elapsed=%.0lfms\n", hl_stars(STATE(rig)->depth), STATE(rig)->depth, __func__, elapsed_ms(&__begin, HAMLIB_ELAPSED_GET));
3353#define SNPRINTF(s,n,...) { if (snprintf(s,n,##__VA_ARGS__) >= (n)) fprintf(stderr,"***** %s(%d): message truncated *****\n", __func__, __LINE__); }
3355extern HAMLIB_EXPORT(
void)
3357 const char *fmt, ...));
3359extern HAMLIB_EXPORT(vprintf_cb_t)
3363extern HAMLIB_EXPORT(FILE *)
3366extern HAMLIB_EXPORT(
int)
3367rig_register HAMLIB_PARAMS((
struct rig_caps *caps));
3369extern HAMLIB_EXPORT(
int)
3370rig_unregister HAMLIB_PARAMS((
rig_model_t rig_model));
3372extern HAMLIB_EXPORT(
int)
3373rig_list_foreach HAMLIB_PARAMS((
int (*cfunc)(
const struct rig_caps *, rig_ptr_t),
3376extern HAMLIB_EXPORT(
int)
3377rig_list_foreach_model HAMLIB_PARAMS((
int (*cfunc)(
const rig_model_t rig_model, rig_ptr_t),
3380extern HAMLIB_EXPORT(
int)
3381rig_load_backend HAMLIB_PARAMS((
const char *be_name));
3383extern HAMLIB_EXPORT(
int)
3384rig_check_backend HAMLIB_PARAMS((
rig_model_t rig_model));
3386extern HAMLIB_EXPORT(
int)
3387rig_load_all_backends HAMLIB_PARAMS((
void));
3391extern HAMLIB_EXPORT(
int)
3429extern HAMLIB_EXPORT(
const char *)
rig_license HAMLIB_PARAMS((
void));
3430extern HAMLIB_EXPORT(
const char *)
rig_version HAMLIB_PARAMS((
void));
3431extern HAMLIB_EXPORT(
const char *)
rig_copyright HAMLIB_PARAMS((
void));
3433extern HAMLIB_EXPORT(
void) rig_no_restore_ai(
void);
3435extern HAMLIB_EXPORT(
int) rig_get_cache_timeout_ms(
RIG *rig, hamlib_cache_t selection);
3436extern HAMLIB_EXPORT(
int) rig_set_cache_timeout_ms(
RIG *rig, hamlib_cache_t selection,
int ms);
3440extern HAMLIB_EXPORT(
int)
rig_get_rig_info(
RIG *rig,
char *response,
int max_response_len);
3444extern HAMLIB_EXPORT(
int)
rig_set_clock(
RIG *rig,
int year,
int month,
int day,
int hour,
int min,
int sec,
double msec,
int utc_offset);
3445extern HAMLIB_EXPORT(
int)
rig_get_clock(
RIG *rig,
int *year,
int *month,
int *day,
int *hour,
int *min,
int *sec,
double *msec,
int *utc_offset);
3447typedef unsigned long rig_useconds_t;
3448extern HAMLIB_EXPORT(
int) hl_usleep(rig_useconds_t msec);
3450extern HAMLIB_EXPORT(
int)
rig_cookie(
RIG *rig,
enum cookie_e cookie_cmd,
char *cookie,
int cookie_len);
3452extern HAMLIB_EXPORT(
int) rig_password(
RIG *rig,
const char *key1);
3453extern HAMLIB_EXPORT(
void) rig_password_generate_secret(
char *pass,
3454 char result[HAMLIB_SECRET_LENGTH + 1]);
3455extern HAMLIB_EXPORT(
int)
rig_send_raw(
RIG *rig,
const unsigned char* send,
int send_len,
unsigned char* reply,
int reply_len,
unsigned char *term);
3457extern HAMLIB_EXPORT(
int)
3463extern HAMLIB_EXPORT(
int)
3466 const char *locator));
3468extern HAMLIB_EXPORT(
char*) rig_make_md5(
const char *pass);
3470extern HAMLIB_EXPORT(
int) rig_set_lock_mode(
RIG *rig,
int lock);
3471extern HAMLIB_EXPORT(
int) rig_get_lock_mode(
RIG *rig,
int *lock);
3473extern HAMLIB_EXPORT(
int) rig_is_model(
RIG *rig,
rig_model_t model);
3475extern HAMLIB_EXPORT(
char*) rig_date_strget(
char *buf,
int buflen,
int localtime);
3477enum GPIO { GPIO1, GPIO2, GPIO3, GPIO4 };
3478extern HAMLIB_EXPORT(
int) rig_cm108_get_bit(
hamlib_port_t *p,
enum GPIO gpio,
int *bit);
3479extern HAMLIB_EXPORT(
int) rig_cm108_set_bit(
hamlib_port_t *p,
enum GPIO gpio,
int bit);
void add2debugmsgsave(const char *s)
Handle stack trace messages.
Definition rig.c:426
struct hamlib_port_deprecated hamlib_port_t_deprecated
struct hamlib_port hamlib_port_t
Port definition.
setting_t rig_parse_parm(const char *s)
Convert alpha string to RIG_PARM_...
Definition misc.c:1315
vfo_t rig_parse_vfo(const char *s)
Convert alpha string to enum RIG_VFO_...
Definition misc.c:650
const char * rig_strparm(setting_t parm)
Convert enum RIG_PARM_... to alpha string.
Definition misc.c:1365
const char * rig_strspectrummode(enum rig_spectrum_mode_e mode)
Convert enum RIG_SPECTRUM_MODE_... to alpha string.
Definition misc.c:1823
int rig_strrmodes(rmode_t modes, char *buf, int buflen)
Convert RIG_MODE or'd value to alpha string of all modes.
Definition misc.c:581
const char * rig_strvfo(vfo_t vfo)
Convert enum RIG_VFO_... to alpha string.
Definition misc.c:679
const char * rig_strscan(scan_t rscan)
Convert enum RIG_SCAN_... to alpha string.
Definition misc.c:1658
rptr_shift_t rig_parse_rptr_shift(const char *s)
Convert alpha char to enum RIG_RPT_SHIFT_...
Definition misc.c:1712
enum agc_level_e rig_levelagcstr(const char *agcString)
Convert AGC string... to agc_level_e.
Definition misc.c:1517
const char * rig_strfunc(setting_t func)
Convert enum RIG_FUNC_... to alpha string.
Definition misc.c:896
value_t rig_valueagclevel(enum agc_level_e agcLevel)
Convert a enum agc_level_e to value.
Definition misc.c:1466
const char * rig_strptrshift(rptr_shift_t shift)
convert enum RIG_RPT_SHIFT_... to printable character
Definition misc.c:1687
uint64_t rig_idx2setting(int i)
Definition misc.c:808
chan_type_t rig_parse_mtype(const char *s)
Convert alpha string to enum RIG_MTYPE_...
Definition misc.c:1758
const char * rig_stragclevel(enum agc_level_e level)
Convert enum RIG_AGC_... to alpha string.
Definition misc.c:1441
enum agc_level_e rig_levelagcvalue(int agcValue)
Convert a value to agc_level_e – constrains the range.
Definition misc.c:1486
const char * rig_strcommstatus(rig_comm_status_t status)
Convert enum RIG_COMM_STATUS... to alpha string.
Definition misc.c:2755
const char * rig_strstatus(enum rig_status_e status)
Convert enum RIG_STATUS_... to printable string.
Definition misc.c:429
setting_t rig_parse_level(const char *s)
Convert alpha string to enum RIG_LEVEL_...
Definition misc.c:1110
scan_t rig_parse_scan(const char *s)
Convert alpha string to enum RIG_SCAN_...
Definition misc.c:1633
const char * rig_strrmode(rmode_t mode)
Convert enum RIG_MODE to alpha string.
Definition misc.c:549
setting_t rig_parse_func(const char *s)
Convert alpha string to enum RIG_FUNC_...
Definition misc.c:820
const char * rig_strmtype(chan_type_t mtype)
Convert enum RIG_MTYPE_... to alpha string.
Definition misc.c:1783
rmode_t rig_parse_mode(const char *s)
Convert alpha string to enum RIG_MODE.
Definition misc.c:522
const char * rig_strvfop(vfo_op_t op)
Convert enum RIG_OP_... to alpha string.
Definition misc.c:1588
const char * rig_strlevel(setting_t level)
Convert enum RIG_LEVEL_... to alpha string.
Definition misc.c:1191
int rig_flush_force(hamlib_port_t *port, int flush_async_data)
Force flush of rig communication data buffers.
Definition misc.c:2261
vfo_op_t rig_parse_vfo_op(const char *s)
Convert alpha string to enum RIG_OP_...
Definition misc.c:1563
const char * rig_get_info(RIG *rig)
get general information from the radio
Definition rig.c:7950
int rig_set_vfo(RIG *rig, vfo_t vfo)
set the current VFO
Definition rig.c:3370
unsigned int vfo_t
VFO definition.
Definition rig.h:533
int rig_get_split_freq_mode(RIG *rig, vfo_t vfo, freq_t *tx_freq, rmode_t *tx_mode, pbwidth_t *tx_width)
get the current split frequency and mode
Definition rig.c:5660
int rig_send_dtmf(RIG *rig, vfo_t vfo, const char *digits)
send DTMF digits
Definition rig.c:7332
int rig_set_twiddle(RIG *rig, int seconds)
timeout (secs) to stop rigctld when VFO is manually changed
Definition rig.c:1968
struct chan_list chan_t
chan_t type
Definition rig.h:1737
unsigned int ant_t
Antenna typedef.
Definition rig.h:1004
meter_level_e
Level display meters.
Definition rig.h:1028
int rig_get_rig_info(RIG *rig, char *response, int max_response_len)
get freq/mode/width for requested VFO
Definition rig.c:8017
int rig_get_mem_all(RIG *rig, vfo_t vfo, channel_t chans[], const struct confparams cfgps[], value_t vals[])
get all channel and non-channel data
Definition mem.c:1527
int rig_get_dcd(RIG *rig, vfo_t vfo, dcd_t *dcd)
get the status of the DCD
Definition rig.c:4282
serial_parity_e
Serial parity.
Definition rig.h:348
int rig_get_split_vfo(RIG *rig, vfo_t vfo, split_t *split, vfo_t *tx_vfo)
get the current split mode
Definition rig.c:5999
int rig_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width)
get the mode of the target VFO
Definition rig.c:3039
int rig_get_cache(RIG *rig, vfo_t vfo, freq_t *freq, int *cache_ms_freq, rmode_t *mode, int *cache_ms_mode, pbwidth_t *width, int *cache_ms_width)
get cached values for a VFO
Definition cache.c:311
int rig_set_channel(RIG *rig, vfo_t vfo, const channel_t *chan)
set channel data
Definition mem.c:683
int rig_set_split_vfo(RIG *rig, vfo_t rx_vfo, split_t split, vfo_t tx_vfo)
set the split mode
Definition rig.c:5748
dcd_e
Definition rig.h:669
struct cal_table cal_table_t
calibration table type
Definition rig.h:1786
hamlib_token_t rig_ext_token_lookup(RIG *rig, const char *name)
Simple lookup returning token id associated with name.
Definition ext.c:323
int rig_set_freq_callback(RIG *rig, freq_cb_t cb, rig_ptr_t arg)
set the callback for freq events
Definition event.c:374
hamlib_band_t
Band enumeration.
Definition rig.h:797
const char * hamlib_copyright2
Hamlib copyright notice.
Definition rig.c:126
int rig_get_rptr_offs(RIG *rig, vfo_t vfo, shortfreq_t *rptr_offs)
get the current repeater offset
Definition rig.c:4666
int rig_get_ext_func(RIG *rig, vfo_t vfo, hamlib_token_t token, int *status)
get the value of a function extra parameter
Definition settings.c:858
int rig_set_powerstat(RIG *rig, powerstat_t status)
turn on/off the radio
Definition rig.c:6906
int rig_get_powerstat(RIG *rig, powerstat_t *status)
get the on/off status of the radio
Definition rig.c:6958
int rig_set_dcs_sql(RIG *rig, vfo_t vfo, tone_t code)
set the current DCS code
Definition tones.c:496
long hamlib_token_t
configuration token
Definition rig.h:882
serial_control_state_e
Serial control state.
Definition rig.h:370
int rig_set_mem(RIG *rig, vfo_t vfo, int ch)
set the current memory channel number
Definition mem.c:67
int rig_power2mW(RIG *rig, unsigned int *mwpower, float power, freq_t freq, rmode_t mode)
conversion utility from relative range to absolute in mW
Definition rig.c:6725
setting_t rig_has_set_func(RIG *rig, setting_t func)
check ability of radio functions
Definition settings.c:468
int rig_get_vfo(RIG *rig, vfo_t *vfo)
get the current VFO
Definition rig.c:3517
int rig_set_split_freq_mode(RIG *rig, vfo_t vfo, freq_t tx_freq, rmode_t tx_mode, pbwidth_t tx_width)
set the split frequency and mode
Definition rig.c:5518
uint64_t rmode_t
Radio mode.
Definition rig.h:1381
int rig_set_vfo_callback(RIG *rig, vfo_cb_t cb, rig_ptr_t arg)
set the callback for vfo events
Definition event.c:430
shortfreq_t pbwidth_t
Definition rig.h:665
int rig_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
set a radio level setting
Definition settings.c:74
int rig_get_rit(RIG *rig, vfo_t vfo, shortfreq_t *rit)
get the current RIT offset
Definition rig.c:6170
int rig_cleanup(RIG *rig)
release a rig handle and free associated memory
Definition rig.c:1924
rig_type_t
Rig type flags.
Definition rig.h:380
int rig_get_mem(RIG *rig, vfo_t vfo, int *ch)
get the current memory channel number
Definition mem.c:130
int rig_set_mem_all(RIG *rig, vfo_t vfo, const channel_t chans[], const struct confparams cfgps[], const value_t vals[])
set all channel and non-channel data
Definition mem.c:1459
int rig_set_ext_parm(RIG *rig, hamlib_token_t token, value_t val)
set a radio parm extra parameter
Definition settings.c:923
enum rig_port_e rig_port_t
Port type.
split_t
Split mode.
Definition rig.h:462
int rig_get_vfo_list(RIG *rig, char *buf, int buflen)
get list of available vfos
Definition rig.c:8205
rptr_shift_t
Repeater shift type.
Definition rig.h:452
const char * rig_license()
get the Hamlib license
Definition rig.c:8263
int rig_set_mem_all_cb(RIG *rig, vfo_t vfo, chan_cb_t chan_cb, confval_cb_t parm_cb, rig_ptr_t arg)
set all channel and non-channel data by call-back
Definition mem.c:1325
int rig_get_dcs_sql(RIG *rig, vfo_t vfo, tone_t *code)
get the current DCS code
Definition tones.c:559
scan_t rig_has_scan(RIG *rig, scan_t scan)
check availability of scanning functions
Definition rig.c:7227
client_e
Definition rig.h:751
int rig_get_clock(RIG *rig, int *year, int *month, int *day, int *hour, int *min, int *sec, double *msec, int *utc_offset)
get the rig's clock
Definition rig.c:8242
int rig_get_mem_all_cb(RIG *rig, vfo_t vfo, chan_cb_t chan_cb, confval_cb_t parm_cb, rig_ptr_t arg)
get all channel and non-channel data by call-back
Definition mem.c:1393
int rig_set_ctcss_sql(RIG *rig, vfo_t vfo, tone_t tone)
set CTCSS squelch
Definition tones.c:365
ann_t
Announce.
Definition rig.h:947
int rig_set_dcs_code(RIG *rig, vfo_t vfo, tone_t code)
set the current encoding DCS code
Definition tones.c:231
int rig_set_dcd_callback(RIG *rig, dcd_cb_t cb, rig_ptr_t arg)
set the callback for dcd events
Definition event.c:486
int rig_get_channel(RIG *rig, vfo_t vfox, channel_t *chan, int read_only)
get channel data
Definition mem.c:827
int rig_get_freq(RIG *rig, vfo_t vfo, freq_t *freq)
get the frequency of the target VFO
Definition rig.c:2498
int rig_set_func(RIG *rig, vfo_t vfo, setting_t func, int status)
activate/de-activate functions of radio
Definition settings.c:499
int rig_get_ptt(RIG *rig, vfo_t vfo, ptt_t *ptt)
get the status of the PTT
Definition rig.c:3957
int rig_get_chan_all_cb(RIG *rig, vfo_t vfo, chan_cb_t chan_cb, rig_ptr_t arg)
get all channel data, by callback
Definition mem.c:1125
int rig_mW2power(RIG *rig, float *power, unsigned int mwpower, freq_t freq, rmode_t mode)
conversion utility from absolute in mW to relative range
Definition rig.c:6799
int rig_set_bank(RIG *rig, vfo_t vfo, int bank)
set the current memory bank
Definition mem.c:193
const struct confparams * rig_ext_lookup_tok(RIG *rig, hamlib_token_t token)
lookup ext token, return pointer to confparams struct.
Definition ext.c:278
int rig_ext_func_foreach(RIG *rig, int(*cfunc)(RIG *, const struct confparams *, rig_ptr_t), rig_ptr_t data)
Executes cfunc on all the elements stored in the extfuncs table.
Definition ext.c:81
const char * rig_version()
get the Hamlib version
Definition rig.c:8273
int rig_get_ctcss_sql(RIG *rig, vfo_t vfo, tone_t *tone)
get the current CTCSS squelch
Definition tones.c:433
FILE * rig_set_debug_file(FILE *stream)
Change the output stream from stderr to a different stream.
Definition debug.c:333
int rig_get_xit(RIG *rig, vfo_t vfo, shortfreq_t *xit)
get the current XIT offset
Definition rig.c:6320
const char * rig_get_caps_cptr(rig_model_t rig_model, enum rig_caps_cptr_e rig_caps)
Function to return char pointer value from rig->caps.
Definition misc.c:2700
int rig_set_spectrum_callback(RIG *rig, spectrum_cb_t cb, rig_ptr_t arg)
set the callback for spectrum line reception events
Definition event.c:544
int rig_get_parm(RIG *rig, setting_t parm, value_t *val)
get the value of a parameter
Definition settings.c:286
uint64_t rig_get_caps_int(rig_model_t rig_model, enum rig_caps_int_e rig_caps)
Function to return int value from rig->caps Does not support > 32-bit rig_caps values.
Definition misc.c:2654
rig_caps_int_e
Enumeration of rig->caps values.
Definition rig.h:2350
int rig_get_trn(RIG *rig, int *trn)
get the current transceive mode
Definition event.c:601
int rig_set_rptr_offs(RIG *rig, vfo_t vfo, shortfreq_t rptr_offs)
set the repeater offset
Definition rig.c:4589
int rig_get_ctcss_tone(RIG *rig, vfo_t vfo, tone_t *tone)
get the current CTCSS sub-tone frequency
Definition tones.c:167
setting_t rig_has_set_level(RIG *rig, setting_t level)
check settable ability of level settings
Definition settings.c:350
rig_parm_e
Rig Parameters.
Definition rig.h:1158
int rig_set_ant(RIG *rig, vfo_t vfo, ant_t ant, value_t option)
set the antenna
Definition rig.c:6552
void rig_set_debug_time_stamp(int flag)
Enable or disable the time stamp on debugging output.
Definition debug.c:189
shortfreq_t rig_get_resolution(RIG *rig, rmode_t mode)
get the best frequency resolution of the rig
Definition rig.c:6864
int rig_get_vfo_info(RIG *rig, vfo_t vfo, freq_t *freq, rmode_t *mode, pbwidth_t *width, split_t *split, int *satmode)
get freq/mode/width for requested VFO
Definition rig.c:8124
pbwidth_t rig_passband_wide(RIG *rig, rmode_t mode)
get the wide passband of a mode
Definition rig.c:3311
struct channel channel_t
Channel structure typedef.
Definition rig.h:1634
uint64_t setting_t
Setting bit mask.
Definition rig.h:1223
powerstat_t
Radio power state.
Definition rig.h:727
multicast_item_e
Multicast data items 3 different data item can be included in the multicast JSON.
Definition rig.h:1201
setting_t rig_has_get_func(RIG *rig, setting_t func)
check ability of radio functions
Definition settings.c:438
int rig_set_uplink(RIG *rig, int val)
For GPredict to avoid reading frequency on uplink VFO.
Definition rig.c:1992
int rig_get_func(RIG *rig, vfo_t vfo, setting_t func, int *status)
get the status of functions of the radio
Definition settings.c:596
int rig_set_split_freq(RIG *rig, vfo_t vfo, freq_t tx_freq)
set the split frequencies
Definition rig.c:4749
int rig_probe_all(hamlib_port_t *port, rig_probe_func_t cfunc, rig_ptr_t data)
try to guess rigs
Definition rig.c:7086
rig_errcode_e
Hamlib error codes.
Definition rig.h:196
int rig_ext_parm_foreach(RIG *rig, int(*cfunc)(RIG *, const struct confparams *, rig_ptr_t), rig_ptr_t data)
Executes cfunc on all the elements stored in the extparms table.
Definition ext.c:181
rig_conf_e
parameter types
Definition rig.h:904
scan_t
Rig Scan operation.
Definition rig.h:866
int rig_send_voice_mem(RIG *rig, vfo_t vfo, int ch)
send voice memory content
Definition rig.c:7768
int rig_recv_dtmf(RIG *rig, vfo_t vfo, char *digits, int *length)
receive DTMF digits
Definition rig.c:7409
int rig_set_mode_callback(RIG *rig, mode_cb_t cb, rig_ptr_t arg)
set the callback for mode events
Definition event.c:402
int rig_set_freq(RIG *rig, vfo_t vfo, freq_t freq)
set the frequency of the target VFO
Definition rig.c:2150
int rig_set_ptt(RIG *rig, vfo_t vfo, ptt_t ptt)
set PTT on/off
Definition rig.c:3621
int rig_set_ext_level(RIG *rig, vfo_t vfo, hamlib_token_t token, value_t val)
set a radio level extra parameter
Definition settings.c:661
const char * hamlib_version2
Hamlib version string.
Definition rig.c:113
double freq_t
Frequency type.
Definition rig.h:473
int rig_scan(RIG *rig, vfo_t vfo, scan_t scan, int ch)
perform Memory/VFO operations
Definition rig.c:7260
cookie_e
Rig Cookie enumerations.
Definition rig.h:1191
int rig_send_morse(RIG *rig, vfo_t vfo, const char *msg)
send morse code
Definition rig.c:7485
void * rig_get_function_ptr(rig_model_t rig_model, enum rig_function_e rig_function)
Function to return pointer to rig_* function.
Definition misc.c:2361
int rig_setting2idx(setting_t s)
basically convert setting_t expressed 2^n to n
Definition settings.c:982
int rig_mem_count(RIG *rig)
get memory channel count
Definition mem.c:1651
ptt_t
PTT status.
Definition rig.h:696
const chan_t * rig_lookup_mem_caps(RIG *rig, int ch)
lookup the memory type and capabilities
Definition mem.c:1586
dcd_type_e
DCD (Data Carrier Detect) type.
Definition rig.h:680
RIG * rig_init(rig_model_t rig_model)
Allocate a new RIG handle.
Definition rig.c:616
setting_t rig_has_get_parm(RIG *rig, setting_t parm)
check retrieval ability of parameter settings
Definition settings.c:380
int rig_ext_level_foreach(RIG *rig, int(*cfunc)(RIG *, const struct confparams *, rig_ptr_t), rig_ptr_t data)
Executes cfunc on all the elements stored in the extlevels table.
Definition ext.c:131
int rig_get_ext_level(RIG *rig, vfo_t vfo, hamlib_token_t token, value_t *val)
get the value of a level extra parameter
Definition settings.c:727
int rig_set_pltune_callback(RIG *rig, pltune_cb_t cb, rig_ptr_t arg)
set the callback for pipelined tuning module
Definition event.c:516
int rig_get_conf(RIG *rig, hamlib_token_t token, char *val)
get the value of a configuration parameter
Definition conf.c:1559
struct freq_range_list freq_range_t
Frequency range.
int rig_set_clock(RIG *rig, int year, int month, int day, int hour, int min, int sec, double msec, int utc_offset)
set the rig's clock
Definition rig.c:8224
int rig_set_ctcss_tone(RIG *rig, vfo_t vfo, tone_t tone)
set CTCSS sub-tone frequency
Definition tones.c:99
int rig_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width)
set the mode of the target VFO
Definition rig.c:2838
vfo_op_t
VFO operation.
Definition rig.h:773
int rig_get_ts(RIG *rig, vfo_t vfo, shortfreq_t *ts)
get the current Tuning Step
Definition rig.c:6470
enum ptt_type_e ptt_type_t
PTT (Push To Talk) type.
signed long shortfreq_t
Short frequency type.
Definition rig.h:495
void rig_get_debug(enum rig_debug_level_e *debug_level)
Get the current debug level.
Definition debug.c:159
vprintf_cb_t rig_set_debug_callback(vprintf_cb_t cb, rig_ptr_t arg)
Set callback to handle debugging messages.
Definition debug.c:315
const char * rig_copyright()
get the Hamlib copyright
Definition rig.c:8283
int rig_need_debug(enum rig_debug_level_e debug_level)
Test if a given debug level is active.
Definition debug.c:175
rig_port_e
Port type.
Definition rig.h:327
int rig_wait_morse(RIG *rig, vfo_t vfo)
wait morse code
Definition rig.c:7697
int rig_close(RIG *rig)
close the communication to the rig
Definition rig.c:1750
pbwidth_t rig_passband_narrow(RIG *rig, rmode_t mode)
get the narrow passband of a mode
Definition rig.c:3258
serial_handshake_e
Serial handshake.
Definition rig.h:360
const char * rigerror(int errnum)
Add error message to debug output.
Definition rig.c:520
int rig_get_cache_freq(RIG *rig, vfo_t vfo, freq_t *freq, int *cache_ms_freq_p)
get cached values for a VFO
Definition cache.c:553
agc_level_e
AGC delay settings.
Definition rig.h:398
unsigned int tone_t
CTCSS and DCS type definition.
Definition rig.h:317
int rig_get_chan_all(RIG *rig, vfo_t vfo, channel_t chans[])
get all channel data
Definition mem.c:1209
int rig_set_chan_all(RIG *rig, vfo_t vfo, const channel_t chans[])
set all channel data
Definition mem.c:1166
int rig_set_vfo_opt(RIG *rig, int status)
set the vfo option for rigctld
Definition rig.c:7911
int rig_set_ptt_callback(RIG *rig, ptt_cb_t cb, rig_ptr_t arg)
set the callback for ptt events
Definition event.c:458
pbwidth_t rig_passband_normal(RIG *rig, rmode_t mode)
get the normal passband of a mode
Definition rig.c:3207
rig_debug_level_e
Hamlib debug levels.
Definition rig.h:246
#define RIG_SETTING_MAX
Maximum # of rig settings.
Definition rig.h:1229
const struct confparams * rig_ext_lookup(RIG *rig, const char *name)
lookup ext token by its name, return pointer to confparams struct.
Definition ext.c:231
setting_t rig_has_set_parm(RIG *rig, setting_t parm)
check settable ability of parameter settings
Definition settings.c:409
struct channel_cap channel_cap_t
Channel cap.
Definition rig.h:1676
struct s_rig RIG
Rig structure definition (see rig for details).
Definition rig.h:277
int rig_set_ext_func(RIG *rig, vfo_t vfo, hamlib_token_t token, int status)
set a radio function extra parameter
Definition settings.c:792
const struct confparams * rig_confparam_lookup(RIG *rig, const char *name)
lookup a confparam struct
Definition conf.c:1393
int rig_set_rit(RIG *rig, vfo_t vfo, shortfreq_t rit)
set the RIT
Definition rig.c:6098
hamlib_bandselect_t
Definition rig.h:817
int rig_stop_voice_mem(RIG *rig, vfo_t vfo)
stop sending voice memory
Definition rig.c:7837
int rig_get_twiddle(RIG *rig, int *seconds)
get the twiddle timeout value (secs)
Definition rig.c:2019
int rig_set_ts(RIG *rig, vfo_t vfo, shortfreq_t ts)
set the Tuning Step
Definition rig.c:6398
int rig_get_ant(RIG *rig, vfo_t vfo, ant_t ant, value_t *option, ant_t *ant_curr, ant_t *ant_tx, ant_t *ant_rx)
get the current antenna
Definition rig.c:6632
int rig_open(RIG *rig)
open the communication to the rig
Definition rig.c:1040
int rig_set_parm(RIG *rig, setting_t parm, value_t val)
set a radio parameter
Definition settings.c:252
enum dcd_type_e dcd_type_t
DCD (Data Carrier Detect) type.
int rig_get_dcs_code(RIG *rig, vfo_t vfo, tone_t *code)
get the current encoding DCS code
Definition tones.c:294
hamlib_token_t rig_token_lookup(RIG *rig, const char *name)
lookup a token id
Definition conf.c:1467
int rig_stop_morse(RIG *rig, vfo_t vfo)
stop morse code
Definition rig.c:7582
ptt_type_e
PTT (Push To Talk) type.
Definition rig.h:711
setting_t rig_has_get_level(RIG *rig, setting_t level)
check retrieval ability of level settings
Definition settings.c:320
uint64_t rig_level_e
Rig Level Settings.
Definition rig.h:1070
int rig_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
get the value of a level
Definition settings.c:157
const char * rigerror2(int errnum)
Get the string describing the passed error code.
Definition rig.c:492
int rig_set_chan_all_cb(RIG *rig, vfo_t vfo, chan_cb_t chan_cb, rig_ptr_t arg)
set all channel data, by callback
Definition mem.c:1078
int rig_set_split_mode(RIG *rig, vfo_t vfo, rmode_t tx_mode, pbwidth_t tx_width)
set the split modes
Definition rig.c:5116
int rig_reset(RIG *rig, reset_t reset)
reset the radio
Definition rig.c:7013
struct gran gran_t
gran_t type
Definition rig.h:1760
int rig_token_foreach(RIG *rig, int(*cfunc)(const struct confparams *, rig_ptr_t), rig_ptr_t data)
call a function against each configuration token of a rig
Definition conf.c:1331
int rig_set_trn(RIG *rig, int trn)
control the transceive mode
Definition event.c:577
vfo_op_t rig_has_vfo_op(RIG *rig, vfo_op_t op)
check retrieval ability of VFO operations
Definition rig.c:7115
int rig_get_rptr_shift(RIG *rig, vfo_t vfo, rptr_shift_t *rptr_shift)
get the current repeater shift
Definition rig.c:4505
int rig_get_split_mode(RIG *rig, vfo_t vfo, rmode_t *tx_mode, pbwidth_t *tx_width)
get the current split modes
Definition rig.c:5354
int rig_set_rptr_shift(RIG *rig, vfo_t vfo, rptr_shift_t rptr_shift)
set the repeater shift
Definition rig.c:4427
reset_t
Reset operation.
Definition rig.h:739
rig_function_e
Enumeration of all rig_ functions.
Definition rig.h:2247
int rig_get_split_freq(RIG *rig, vfo_t vfo, freq_t *tx_freq)
get the current split frequencies
Definition rig.c:4939
void rig_set_debug(enum rig_debug_level_e debug_level)
Change the current debug level.
Definition debug.c:146
const freq_range_t * rig_get_range(const freq_range_t *range_list, freq_t freq, rmode_t mode)
find the freq_range of freq/mode
Definition rig.c:7875
int rig_get_ext_parm(RIG *rig, hamlib_token_t token, value_t *val)
get the value of a parm extra parameter
Definition settings.c:955
int rig_vfo_op(RIG *rig, vfo_t vfo, vfo_op_t op)
perform Memory/VFO operations
Definition rig.c:7144
rig_status_e
Development status of the backend.
Definition rig.h:432
int rig_set_xit(RIG *rig, vfo_t vfo, shortfreq_t xit)
set the XIT
Definition rig.c:6248
int rig_set_conf(RIG *rig, hamlib_token_t token, const char *val)
set a radio configuration parameter
Definition conf.c:1498
void rig_debug(enum rig_debug_level_e debug_level, const char *fmt,...)
Print debugging messages through stderr by default.
Definition debug.c:205
struct cal_table_float cal_table_float_t
calibration table type for float values
Definition rig.h:1816
int rig_cookie(RIG *rig, enum cookie_e cookie_cmd, char *cookie, int cookie_len)
get a cookie to grab rig control
Definition rig.c:8312
rig_spectrum_mode_e
Spectrum scope modes.
Definition rig.h:1840
rig_model_t rig_probe(hamlib_port_t *port)
try to guess a rig
Definition rig.c:7058
chan_type_t
Memory channel type definition.
Definition rig.h:1689
@ RIG_PARITY_MARK
Definition rig.h:352
@ RIG_PARITY_NONE
Definition rig.h:349
@ RIG_PARITY_EVEN
Definition rig.h:351
@ RIG_PARITY_SPACE
Definition rig.h:353
@ RIG_PARITY_ODD
Definition rig.h:350
@ RIG_DCD_ON
Definition rig.h:671
@ RIG_DCD_OFF
Definition rig.h:670
@ RIG_BAND_AIR
Definition rig.h:812
@ RIG_BAND_UNUSED
Definition rig.h:811
@ RIG_BAND_20M
Definition rig.h:803
@ RIG_BAND_12M
Definition rig.h:806
@ RIG_BAND_60M
Definition rig.h:800
@ RIG_BAND_10M
Definition rig.h:807
@ RIG_BAND_430MHZ
Definition rig.h:814
@ RIG_BAND_40M
Definition rig.h:801
@ RIG_BAND_15M
Definition rig.h:805
@ RIG_BAND_GEN
Definition rig.h:809
@ RIG_BAND_30M
Definition rig.h:802
@ RIG_BAND_144MHZ
Definition rig.h:813
@ RIG_BAND_80M
Definition rig.h:799
@ RIG_BAND_MW
Definition rig.h:810
@ RIG_BAND_6M
Definition rig.h:808
@ RIG_BAND_17M
Definition rig.h:804
@ RIG_BAND_160M
Definition rig.h:798
@ RIG_SIGNAL_ON
Definition rig.h:372
@ RIG_SIGNAL_OFF
Definition rig.h:373
@ RIG_SIGNAL_UNSET
Definition rig.h:371
@ RIG_FLAG_COMPUTER
Definition rig.h:386
@ RIG_FLAG_TUNER
Definition rig.h:391
@ RIG_FLAG_SCANNER
Definition rig.h:383
@ RIG_FLAG_TRANSMITTER
Definition rig.h:382
@ RIG_FLAG_MOBILE
Definition rig.h:384
@ RIG_FLAG_TRUNKING
Definition rig.h:387
@ RIG_FLAG_APRS
Definition rig.h:388
@ RIG_FLAG_TNC
Definition rig.h:389
@ RIG_FLAG_HANDHELD
Definition rig.h:385
@ RIG_FLAG_DXCLUSTER
Definition rig.h:390
@ RIG_FLAG_RECEIVER
Definition rig.h:381
@ RIG_SPLIT_ON
Definition rig.h:464
@ RIG_SPLIT_OFF
Definition rig.h:463
@ RIG_RPT_SHIFT_PLUS
Definition rig.h:455
@ RIG_RPT_SHIFT_MINUS
Definition rig.h:454
@ RIG_RPT_SHIFT_NONE
Definition rig.h:453
@ RIG_CLIENT_WSJTX
Definition rig.h:753
@ RIG_CLIENT_UNKNOWN
Definition rig.h:752
@ RIG_CLIENT_GPREDICT
Definition rig.h:754
@ RIG_ANN_RXMODE
Definition rig.h:951
@ RIG_ANN_OFF
Definition rig.h:949
@ RIG_ANN_ENG
Definition rig.h:953
@ RIG_ANN_FREQ
Definition rig.h:950
@ RIG_ANN_NONE
Definition rig.h:948
@ RIG_ANN_CW
Definition rig.h:952
@ RIG_ANN_JAP
Definition rig.h:954
@ RIG_PARM_BEEP
Definition rig.h:1163
@ RIG_PARM_AFIF_LAN
Definition rig.h:1171
@ RIG_PARM_AFIF_WLAN
Definition rig.h:1172
@ RIG_PARM_BANDSELECT
Definition rig.h:1169
@ RIG_PARM_TIME
Definition rig.h:1164
@ RIG_PARM_SCREENSAVER
Definition rig.h:1167
@ RIG_PARM_ANN
Definition rig.h:1160
@ RIG_PARM_AFIF
Definition rig.h:1168
@ RIG_PARM_NONE
Definition rig.h:1159
@ RIG_PARM_KEYERTYPE
Definition rig.h:1170
@ RIG_PARM_AFIF_ACC
Definition rig.h:1173
@ RIG_PARM_BACKLIGHT
Definition rig.h:1162
@ RIG_PARM_KEYLIGHT
Definition rig.h:1166
@ RIG_PARM_BAT
Definition rig.h:1165
@ RIG_PARM_APO
Definition rig.h:1161
@ RIG_POWER_OPERATE
Definition rig.h:731
@ RIG_POWER_UNKNOWN
Definition rig.h:732
@ RIG_POWER_STANDBY
Definition rig.h:730
@ RIG_POWER_OFF
Definition rig.h:728
@ RIG_POWER_ON
Definition rig.h:729
@ RIG_ENIMPL
Definition rig.h:201
@ RIG_ECONF
Definition rig.h:199
@ RIG_ELIMIT
Definition rig.h:218
@ RIG_ENAVAIL
Definition rig.h:208
@ RIG_OK
Definition rig.h:197
@ RIG_EPROTO
Definition rig.h:205
@ RIG_EINTERNAL
Definition rig.h:204
@ RIG_EDOM
Definition rig.h:214
@ RIG_EIO
Definition rig.h:203
@ RIG_EVFO
Definition rig.h:213
@ RIG_ETIMEOUT
Definition rig.h:202
@ RIG_ENOMEM
Definition rig.h:200
@ RIG_EARG
Definition rig.h:212
@ RIG_EPOWER
Definition rig.h:217
@ RIG_EACCESS
Definition rig.h:219
@ RIG_ERJCTED
Definition rig.h:206
@ RIG_ESECURITY
Definition rig.h:216
@ RIG_BUSERROR
Definition rig.h:210
@ RIG_BUSBUSY
Definition rig.h:211
@ RIG_EDEPRECATED
Definition rig.h:215
@ RIG_ENTARGET
Definition rig.h:209
@ RIG_EINVAL
Definition rig.h:198
@ RIG_ETRUNC
Definition rig.h:207
@ RIG_CONF_STRING
Definition rig.h:905
@ RIG_CONF_BUTTON
Definition rig.h:909
@ RIG_CONF_CHECKBUTTON
Definition rig.h:908
@ RIG_CONF_BINARY
Definition rig.h:910
@ RIG_CONF_COMBO
Definition rig.h:906
@ RIG_CONF_INT
Definition rig.h:911
@ RIG_CONF_NUMERIC
Definition rig.h:907
@ RIG_SCAN_DELTA
Definition rig.h:872
@ RIG_SCAN_PLT
Definition rig.h:874
@ RIG_SCAN_PROG
Definition rig.h:871
@ RIG_SCAN_MEM
Definition rig.h:868
@ RIG_SCAN_NONE
Definition rig.h:867
@ RIG_SCAN_VFO
Definition rig.h:873
@ RIG_SCAN_PRIO
Definition rig.h:870
@ RIG_SCAN_SLCT
Definition rig.h:869
@ RIG_SCAN_STOP
Definition rig.h:875
@ RIG_COOKIE_RENEW
Definition rig.h:1194
@ RIG_COOKIE_RELEASE
Definition rig.h:1193
@ RIG_COOKIE_GET
Definition rig.h:1192
@ RIG_PTT_OFF
Definition rig.h:697
@ RIG_PTT_ON_DATA
Definition rig.h:700
@ RIG_PTT_ON_MIC
Definition rig.h:699
@ RIG_PTT_ON
Definition rig.h:698
@ RIG_DCD_SERIAL_CTS
Definition rig.h:684
@ RIG_DCD_PARALLEL
Definition rig.h:686
@ RIG_DCD_CM108
Definition rig.h:687
@ RIG_DCD_RIG
Definition rig.h:682
@ RIG_DCD_GPION
Definition rig.h:689
@ RIG_DCD_NONE
Definition rig.h:681
@ RIG_DCD_SERIAL_DSR
Definition rig.h:683
@ RIG_DCD_GPIO
Definition rig.h:688
@ RIG_DCD_SERIAL_CAR
Definition rig.h:685
@ RIG_OP_CPY
Definition rig.h:775
@ RIG_OP_DOWN
Definition rig.h:781
@ RIG_OP_TO_VFO
Definition rig.h:778
@ RIG_OP_TUNE
Definition rig.h:786
@ RIG_OP_FROM_VFO
Definition rig.h:777
@ RIG_OP_MCL
Definition rig.h:779
@ RIG_OP_RIGHT
Definition rig.h:785
@ RIG_OP_UP
Definition rig.h:780
@ RIG_OP_TOGGLE
Definition rig.h:787
@ RIG_OP_NONE
Definition rig.h:774
@ RIG_OP_BAND_UP
Definition rig.h:782
@ RIG_OP_BAND_DOWN
Definition rig.h:783
@ RIG_OP_LEFT
Definition rig.h:784
@ RIG_OP_XCHG
Definition rig.h:776
@ RIG_PORT_PACKET
Definition rig.h:332
@ RIG_PORT_UDP_NETWORK
Definition rig.h:338
@ RIG_PORT_NONE
Definition rig.h:328
@ RIG_PORT_CM108
Definition rig.h:339
@ RIG_PORT_GPIO
Definition rig.h:340
@ RIG_PORT_ULTRA
Definition rig.h:334
@ RIG_PORT_GPION
Definition rig.h:341
@ RIG_PORT_SERIAL
Definition rig.h:329
@ RIG_PORT_PARALLEL
Definition rig.h:336
@ RIG_PORT_NETWORK
Definition rig.h:330
@ RIG_PORT_DEVICE
Definition rig.h:331
@ RIG_PORT_RPC
Definition rig.h:335
@ RIG_PORT_DTMF
Definition rig.h:333
@ RIG_PORT_USB
Definition rig.h:337
@ RIG_HANDSHAKE_HARDWARE
Definition rig.h:363
@ RIG_HANDSHAKE_NONE
Definition rig.h:361
@ RIG_HANDSHAKE_XONXOFF
Definition rig.h:362
@ RIG_AGC_NONE
Definition rig.h:408
@ RIG_AGC_ON
Definition rig.h:407
@ RIG_AGC_USER
Definition rig.h:403
@ RIG_DEBUG_ERR
Definition rig.h:249
@ RIG_DEBUG_BUG
Definition rig.h:248
@ RIG_DEBUG_WARN
Definition rig.h:250
@ RIG_DEBUG_TRACE
Definition rig.h:252
@ RIG_DEBUG_VERBOSE
Definition rig.h:251
@ RIG_DEBUG_CACHE
Definition rig.h:253
@ RIG_DEBUG_NONE
Definition rig.h:247
@ RIG_BANDSELECT_600M
Definition rig.h:820
@ RIG_BANDSELECT_1_25M
Definition rig.h:838
@ RIG_BANDSELECT_GEN
Definition rig.h:833
@ RIG_BANDSELECT_17M
Definition rig.h:827
@ RIG_BANDSELECT_6M
Definition rig.h:831
@ RIG_BANDSELECT_9CM
Definition rig.h:843
@ RIG_BANDSELECT_160M
Definition rig.h:821
@ RIG_BANDSELECT_AIR
Definition rig.h:835
@ RIG_BANDSELECT_20M
Definition rig.h:826
@ RIG_BANDSELECT_MW
Definition rig.h:834
@ RIG_BANDSELECT_2200M
Definition rig.h:819
@ RIG_BANDSELECT_23CM
Definition rig.h:841
@ RIG_BANDSELECT_UNUSED
Definition rig.h:818
@ RIG_BANDSELECT_33CM
Definition rig.h:840
@ RIG_BANDSELECT_60M
Definition rig.h:823
@ RIG_BANDSELECT_3CM
Definition rig.h:845
@ RIG_BANDSELECT_4M
Definition rig.h:836
@ RIG_BANDSELECT_12M
Definition rig.h:829
@ RIG_BANDSELECT_WFM
Definition rig.h:832
@ RIG_BANDSELECT_5CM
Definition rig.h:844
@ RIG_BANDSELECT_15M
Definition rig.h:828
@ RIG_BANDSELECT_30M
Definition rig.h:825
@ RIG_BANDSELECT_70CM
Definition rig.h:839
@ RIG_BANDSELECT_40M
Definition rig.h:824
@ RIG_BANDSELECT_80M
Definition rig.h:822
@ RIG_BANDSELECT_13CM
Definition rig.h:842
@ RIG_BANDSELECT_2M
Definition rig.h:837
@ RIG_BANDSELECT_10M
Definition rig.h:830
@ RIG_PTT_RIG
Definition rig.h:713
@ RIG_PTT_RIG_MICDATA
Definition rig.h:717
@ RIG_PTT_SERIAL_DTR
Definition rig.h:714
@ RIG_PTT_NONE
Definition rig.h:712
@ RIG_PTT_PARALLEL
Definition rig.h:716
@ RIG_PTT_GPION
Definition rig.h:720
@ RIG_PTT_GPIO
Definition rig.h:719
@ RIG_PTT_CM108
Definition rig.h:718
@ RIG_PTT_SERIAL_RTS
Definition rig.h:715
@ RIG_RESET_MCALL
Definition rig.h:743
@ RIG_RESET_MASTER
Definition rig.h:744
@ RIG_RESET_NONE
Definition rig.h:740
@ RIG_RESET_VFO
Definition rig.h:742
@ RIG_RESET_SOFT
Definition rig.h:741
@ RIG_STATUS_STABLE
Definition rig.h:436
@ RIG_STATUS_BUGGY
Definition rig.h:437
@ RIG_STATUS_UNTESTED
Definition rig.h:434
@ RIG_STATUS_BETA
Definition rig.h:435
@ RIG_STATUS_ALPHA
Definition rig.h:433
@ RIG_SPECTRUM_MODE_CENTER_SCROLL
Definition rig.h:1844
@ RIG_SPECTRUM_MODE_FIXED_SCROLL
Definition rig.h:1845
@ RIG_SPECTRUM_MODE_FIXED
Definition rig.h:1843
@ RIG_SPECTRUM_MODE_CENTER
Definition rig.h:1842
@ RIG_MTYPE_VOICE
Definition rig.h:1698
@ RIG_MTYPE_PRIO
Definition rig.h:1697
@ RIG_MTYPE_EDGE
Definition rig.h:1692
@ RIG_MTYPE_MEM
Definition rig.h:1691
@ RIG_MTYPE_CALL
Definition rig.h:1693
@ RIG_MTYPE_SAT
Definition rig.h:1695
@ RIG_MTYPE_MORSE
Definition rig.h:1699
@ RIG_MTYPE_MEMOPAD
Definition rig.h:1694
@ RIG_MTYPE_SPLIT
Definition rig.h:1700
@ RIG_MTYPE_NONE
Definition rig.h:1690
@ RIG_MTYPE_BAND
Definition rig.h:1696
uint32_t rig_model_t
Definition riglist.h:1161
int locator2longlat(double *longitude, double *latitude, const char *locator)
Convert QRA locator (Maidenhead grid square) to Longitude/Latitude.
Definition locator.c:450
int longlat2locator(double longitude, double latitude, char *locator, int pair_count)
Convert longitude/latitude to QRA locator (Maidenhead grid square).
Definition locator.c:544
Hamlib port data structures.
int rig_send_raw(RIG *rig, const unsigned char *send, int send_len, unsigned char *reply, int reply_len, unsigned char *term)
Send verbatim data.
Definition rig.c:8930
void * rig_data_pointer(RIG *rig, rig_ptrx_t idx)
Get the address of a Hamlib data structure.
Definition rig.c:9116
Hamlib rig state data structure.
Hamlib rig (radio) model definitions.
Calibration table struct for float values.
Definition rig.h:1796
float val
Definition rig.h:1800
struct cal_table_float::@102065103012151172367277130031243273253016145353 table[HAMLIB_MAX_CAL_LENGTH]
int size
Definition rig.h:1797
int raw
Definition rig.h:1799
Calibration table struct.
Definition rig.h:1766
int val
Definition rig.h:1770
int raw
Definition rig.h:1769
int size
Definition rig.h:1767
struct cal_table::@136040036006044373061124052240055326367311307122 table[HAMLIB_MAX_CAL_LENGTH]
Memory channel list definition.
Definition rig.h:1717
int startc
Definition rig.h:1718
chan_type_t type
Definition rig.h:1720
channel_cap_t mem_caps
Definition rig.h:1721
int endc
Definition rig.h:1719
Channel capability definition.
Definition rig.h:1641
unsigned tx_vfo
Definition rig.h:1654
unsigned tx_freq
Definition rig.h:1649
unsigned mode
Definition rig.h:1646
unsigned dcs_code
Definition rig.h:1664
unsigned rit
Definition rig.h:1658
unsigned dcs_sql
Definition rig.h:1665
unsigned rptr_offs
Definition rig.h:1656
unsigned bank_num
Definition rig.h:1642
setting_t levels
Definition rig.h:1661
unsigned width
Definition rig.h:1647
unsigned rptr_shift
Definition rig.h:1655
unsigned tx_width
Definition rig.h:1651
unsigned ctcss_sql
Definition rig.h:1663
unsigned tx_mode
Definition rig.h:1650
unsigned freq
Definition rig.h:1645
setting_t funcs
Definition rig.h:1660
unsigned ctcss_tone
Definition rig.h:1662
unsigned tag
Definition rig.h:1670
unsigned ext_levels
Definition rig.h:1669
unsigned vfo
Definition rig.h:1643
unsigned ant
Definition rig.h:1644
unsigned split
Definition rig.h:1653
unsigned scan_group
Definition rig.h:1666
unsigned flags
Definition rig.h:1667
unsigned tuning_step
Definition rig.h:1657
unsigned xit
Definition rig.h:1659
unsigned channel_desc
Definition rig.h:1668
Channel structure.
Definition rig.h:1596
shortfreq_t tuning_step
Definition rig.h:1614
rmode_t mode
Definition rig.h:1602
tone_t ctcss_tone
Definition rig.h:1619
pbwidth_t tx_width
Definition rig.h:1607
vfo_t vfo
Definition rig.h:1599
value_t levels[64]
Definition rig.h:1618
shortfreq_t rptr_offs
Definition rig.h:1613
vfo_t tx_vfo
Definition rig.h:1610
tone_t dcs_code
Definition rig.h:1621
setting_t funcs
Definition rig.h:1617
struct ext_list * ext_levels
Definition rig.h:1626
tone_t ctcss_sql
Definition rig.h:1620
shortfreq_t xit
Definition rig.h:1616
int bank_num
Definition rig.h:1598
pbwidth_t width
Definition rig.h:1603
freq_t freq
Definition rig.h:1601
char tag[32]
Definition rig.h:1628
rptr_shift_t rptr_shift
Definition rig.h:1612
shortfreq_t rit
Definition rig.h:1615
char channel_desc[HAMLIB_MAXCHANDESC]
Definition rig.h:1625
rmode_t tx_mode
Definition rig.h:1606
split_t split
Definition rig.h:1609
freq_t tx_freq
Definition rig.h:1605
ant_t ant
Definition rig.h:1600
unsigned int flags
Definition rig.h:1624
int scan_group
Definition rig.h:1623
int channel_num
Definition rig.h:1597
tone_t dcs_sql
Definition rig.h:1622
Configuration parameter structure.
Definition rig.h:922
const char * combostr[RIG_COMBO_MAX]
Definition rig.h:936
hamlib_token_t token
Definition rig.h:923
const char * tooltip
Definition rig.h:926
struct confparams::@217173040070230057060100312356205077223210342225::@303257153356161141342114134151024152002013040210 c
const char * dflt
Definition rig.h:927
union confparams::@217173040070230057060100312356205077223210342225 u
float min
Definition rig.h:931
struct confparams::@217173040070230057060100312356205077223210342225::@214007374113372275205335331133324155377051325256 n
float step
Definition rig.h:933
const char * label
Definition rig.h:925
float max
Definition rig.h:932
const char * name
Definition rig.h:924
enum rig_conf_e type
Definition rig.h:928
Extension attribute definition.
Definition rig.h:1579
hamlib_token_t token
Definition rig.h:1580
value_t val
Definition rig.h:1581
Filter definition.
Definition rig.h:1546
rmode_t modes
Definition rig.h:1547
pbwidth_t width
Definition rig.h:1548
Frequency range.
Definition rig.h:1479
freq_t startf
Definition rig.h:1480
freq_t endf
Definition rig.h:1481
int low_power
Definition rig.h:1483
char * label
Definition rig.h:1487
ant_t ant
Definition rig.h:1486
int high_power
Definition rig.h:1484
vfo_t vfo
Definition rig.h:1485
rmode_t modes
Definition rig.h:1482
level/parm granularity definition
Definition rig.h:1751
value_t max
Definition rig.h:1753
value_t step
Definition rig.h:1754
value_t min
Definition rig.h:1752
Port definition.
Definition port.h:55
Multicast data items the are unique per rig instantiation This is meant for internal Hamlib use only.
Definition rig.h:2560
Rig cache data.
Definition rig.h:2480
Rig cache data.
Definition cache.h:45
Callback functions and args for rig event.
Definition rig.h:2640
rig_ptr_t mode_arg
Definition rig.h:2644
ptt_cb_t ptt_event
Definition rig.h:2647
vfo_cb_t vfo_event
Definition rig.h:2645
spectrum_cb_t spectrum_event
Definition rig.h:2653
mode_cb_t mode_event
Definition rig.h:2643
rig_ptr_t freq_arg
Definition rig.h:2642
rig_ptr_t spectrum_arg
Definition rig.h:2654
rig_ptr_t ptt_arg
Definition rig.h:2648
rig_ptr_t dcd_arg
Definition rig.h:2650
dcd_cb_t dcd_event
Definition rig.h:2649
rig_ptr_t pltune_arg
Definition rig.h:2652
pltune_cb_t pltune
Definition rig.h:2651
rig_ptr_t vfo_arg
Definition rig.h:2646
freq_cb_t freq_event
Definition rig.h:2641
Rig data structure.
Definition rig.h:1935
int write_delay
Definition rig.h:1955
setting_t has_set_func
Definition rig.h:1961
enum serial_handshake_e serial_handshake
Definition rig.h:1953
struct tuning_step_list tuning_steps[HAMLIB_TSLSTSIZ]
Definition rig.h:2014
int retry
Definition rig.h:1958
const char * model_name
Definition rig.h:1937
int attenuator[HAMLIB_MAXDBLSTSIZ]
Definition rig.h:1979
freq_range_t rx_range_list5[HAMLIB_FRQRANGESIZ]
Definition rig.h:2011
int serial_data_bits
Definition rig.h:1950
const char * clone_combo_get
Definition rig.h:2216
const char * version
Definition rig.h:1939
int serial_rate_max
Definition rig.h:1949
int targetable_vfo
Definition rig.h:1991
cal_table_float_t swr_cal
Definition rig.h:2018
ptt_type_t ptt_type
Definition rig.h:1944
const char * clone_combo_set
Definition rig.h:2215
cal_table_float_t vd_meter_cal
Definition rig.h:2022
int serial_stop_bits
Definition rig.h:1951
struct rig_spectrum_avg_mode spectrum_avg_modes[HAMLIB_MAX_SPECTRUM_AVG_MODES]
Definition rig.h:2028
int * ext_tokens
Definition rig.h:1973
gran_t parm_gran[64]
Definition rig.h:1968
const char * macro_name
Definition rig.h:2217
dcd_type_t dcd_type
Definition rig.h:1945
int async_data_supported
Definition rig.h:2219
enum agc_level_e agc_levels[HAMLIB_MAX_AGC_LEVELS]
Definition rig.h:1985
chan_t chan_list[HAMLIB_CHANLSTSIZ]
Definition rig.h:1997
int preamp[HAMLIB_MAXDBLSTSIZ]
Definition rig.h:1978
const rig_ptr_t priv
Definition rig.h:2032
const struct confparams * cfgparams
Definition rig.h:2031
enum rig_status_e status
Definition rig.h:1941
freq_range_t tx_range_list5[HAMLIB_FRQRANGESIZ]
Definition rig.h:2012
tone_t * dcs_list
Definition rig.h:1976
shortfreq_t max_rit
Definition rig.h:1980
const struct confparams * extlevels
Definition rig.h:1971
const char * copyright
Definition rig.h:1940
shortfreq_t max_xit
Definition rig.h:1981
setting_t has_set_level
Definition rig.h:1963
rig_model_t rig_model
Definition rig.h:1936
short morse_qsize
Definition rig.h:2236
cal_table_float_t rfpower_meter_cal
Definition rig.h:2020
setting_t has_get_parm
Definition rig.h:1964
int chan_desc_sz
Definition rig.h:1995
enum serial_parity_e serial_parity
Definition rig.h:1952
freq_range_t rx_range_list1[HAMLIB_FRQRANGESIZ]
Definition rig.h:2003
int spectrum_attenuator[HAMLIB_MAXDBLSTSIZ]
Definition rig.h:2029
shortfreq_t max_ifshift
Definition rig.h:1982
cal_table_float_t comp_meter_cal
Definition rig.h:2021
rig_port_t port_type
Definition rig.h:1946
short timeout_retry
Definition rig.h:2235
const char * mfg_name
Definition rig.h:1938
tone_t * ctcss_list
Definition rig.h:1975
struct rig_spectrum_scope spectrum_scopes[HAMLIB_MAX_SPECTRUM_SCOPES]
Definition rig.h:2025
freq_range_t rx_range_list4[HAMLIB_FRQRANGESIZ]
Definition rig.h:2009
scan_t scan_ops
Definition rig.h:1990
cal_table_float_t alc_cal
Definition rig.h:2019
freq_range_t rx_range_list2[HAMLIB_FRQRANGESIZ]
Definition rig.h:2005
setting_t has_set_parm
Definition rig.h:1965
vfo_op_t vfo_ops
Definition rig.h:1989
setting_t has_get_func
Definition rig.h:1960
ann_t announces
Definition rig.h:1987
const struct confparams * extparms
Definition rig.h:1970
struct filter_list filters[HAMLIB_FLTLSTSIZ]
Definition rig.h:2015
int post_write_delay
Definition rig.h:1956
int transceive
Definition rig.h:1992
enum rig_spectrum_mode_e spectrum_modes[HAMLIB_MAX_SPECTRUM_MODES]
Definition rig.h:2026
int timeout
Definition rig.h:1957
freq_t spectrum_spans[HAMLIB_MAX_SPECTRUM_SPANS]
Definition rig.h:2027
freq_range_t tx_range_list1[HAMLIB_FRQRANGESIZ]
Definition rig.h:2004
cal_table_t str_cal
Definition rig.h:2017
cal_table_float_t id_meter_cal
Definition rig.h:2023
int bank_qty
Definition rig.h:1994
freq_range_t rx_range_list3[HAMLIB_FRQRANGESIZ]
Definition rig.h:2007
int rig_type
Definition rig.h:1943
setting_t has_get_level
Definition rig.h:1962
const struct confparams * extfuncs
Definition rig.h:1972
gran_t level_gran[64]
Definition rig.h:1967
freq_range_t tx_range_list4[HAMLIB_FRQRANGESIZ]
Definition rig.h:2010
int agc_level_count
Definition rig.h:1984
int serial_rate_min
Definition rig.h:1948
freq_range_t tx_range_list3[HAMLIB_FRQRANGESIZ]
Definition rig.h:2008
freq_range_t tx_range_list2[HAMLIB_FRQRANGESIZ]
Definition rig.h:2006
Spectrum scope averaging modes.
Definition rig.h:1852
Represents a single line of rig spectrum scope FFT data.
Definition rig.h:1869
size_t spectrum_data_length
Definition rig.h:1885
freq_t low_edge_freq
Definition rig.h:1882
int data_level_min
Definition rig.h:1872
int id
Definition rig.h:1870
enum rig_spectrum_mode_e spectrum_mode
Definition rig.h:1877
double signal_strength_max
Definition rig.h:1875
freq_t center_freq
Definition rig.h:1879
freq_t span_freq
Definition rig.h:1880
double signal_strength_min
Definition rig.h:1874
unsigned char * spectrum_data
Definition rig.h:1886
int data_level_max
Definition rig.h:1873
freq_t high_edge_freq
Definition rig.h:1883
Spectrum scope.
Definition rig.h:1832
Deprecated Rig state containing live data and customized fields.
Definition rig_state.h:263
Rig state containing live data and customized fields.
Definition rig_state.h:61
The Rig structure.
Definition rig.h:2668
struct rig_callbacks callbacks
Definition rig.h:2672
struct rig_state_deprecated state_deprecated
Definition rig.h:2671
struct rig_state state
Definition rig.h:2674
struct rig_caps * caps
Definition rig.h:2669
struct rig_cache * cache_addr
Definition rig.h:2678
Tuning step definition.
Definition rig.h:1511
rmode_t modes
Definition rig.h:1512
shortfreq_t ts
Definition rig.h:1513
Universal approach for passing values.
Definition rig.h:1047
unsigned int u
Definition rig.h:1049
char * s
Definition rig.h:1051
float f
Definition rig.h:1050
const char * cs
Definition rig.h:1052
signed int i
Definition rig.h:1048