36 #define HAMLIB_SECRET_LENGTH 32
38 #define HAMLIB_TRACE rig_debug(RIG_DEBUG_TRACE,"%s%s(%d) trace\n",spaces(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
96 # define __BEGIN_DECLS extern "C" {
97 # define __END_DECLS }
99 # define __BEGIN_DECLS
109 #if defined (__STDC__) \
111 || (defined (__mips) && defined (_SYSTYPE_SVR4)) \
112 || defined(__CYGWIN__) \
114 || defined(__cplusplus)
115 # define HAMLIB_PARAMS(protos) protos
116 # define rig_ptr_t void *
117 # define amp_ptr_t void *
119 # define HAMLIB_PARAMS(protos) ()
120 # define rig_ptr_t char *
121 # define amp_ptr_t char *
125 #include <hamlib/rig_dll.h>
128 #define CONSTANT_64BIT_FLAG(BIT) (1ull << (BIT))
142 #define CONSTANT_64BIT_FLAG(BIT) (1ul << (BIT))
148 #define HAMLIB_FIFO_SIZE 1024
152 char data[HAMLIB_FIFO_SIZE];
157 pthread_mutex_t mutex;
169 #define HAMLIB_COOKIE_SIZE 37
170 extern int cookie_use;
171 extern int skip_init;
174 extern HAMLIB_EXPORT_VAR(
const char) hamlib_version[];
175 extern HAMLIB_EXPORT_VAR(const
char) hamlib_copyright[];
176 extern HAMLIB_EXPORT_VAR(const
char *) hamlib_version2;
225 #define RIG_IS_SOFT_ERRCODE(errcode) (errcode == RIG_EINVAL || errcode == RIG_ENIMPL || errcode == RIG_ERJCTED \
226 || errcode == RIG_ETRUNC || errcode == RIG_ENAVAIL || errcode == RIG_ENTARGET \
227 || errcode == RIG_EVFO || errcode == RIG_EDOM || errcode == RIG_EDEPRECATED \
228 || errcode == RIG_ESECURITY || errcode == RIG_EPOWER)
233 #define NETRIGCTL_RET "RPRT "
267 #define HAMLIB_RIGNAMSIZ 30
268 #define HAMLIB_RIGVERSIZ 8
269 #define HAMLIB_FILPATHLEN 512
270 #define HAMLIB_FRQRANGESIZ 30
271 #define HAMLIB_MAXCHANDESC 30
272 #define HAMLIB_TSLSTSIZ 20
273 #define HAMLIB_FLTLSTSIZ 60
274 #define HAMLIB_MAXDBLSTSIZ 8
275 #define HAMLIB_CHANLSTSIZ 16
276 #define HAMLIB_MAX_AGC_LEVELS 8
277 #define HAMLIB_MAX_SPECTRUM_SCOPES 4
278 #define HAMLIB_MAX_SPECTRUM_MODES 5
279 #define HAMLIB_MAX_SPECTRUM_AVG_MODES 12
280 #define HAMLIB_MAX_SPECTRUM_SPANS 20
281 #define HAMLIB_MAX_SPECTRUM_DATA 2048
282 #define HAMLIB_MAX_CAL_LENGTH 32
283 #define HAMLIB_MAX_MODES 63
284 #define HAMLIB_MAX_VFOS 31
285 #define HAMLIB_MAX_ROTORS 63
286 #define HAMLIB_MAX_VFO_OPS 31
287 #define HAMLIB_MAX_RSCANS 31
288 #define HAMLIB_MAX_SNAPSHOT_PACKET_SIZE 16384
302 #define CTCSS_LIST_SIZE 60
303 #define DCS_LIST_SIZE 128
304 typedef unsigned int tone_t;
398 #define RIG_FLAG_TRANSCEIVER (RIG_FLAG_RECEIVER|RIG_FLAG_TRANSMITTER)
399 #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)
401 #define RIG_TYPE_OTHER 0
402 #define RIG_TYPE_TRANSCEIVER RIG_FLAG_TRANSCEIVER
403 #define RIG_TYPE_HANDHELD (RIG_FLAG_TRANSCEIVER|RIG_FLAG_HANDHELD)
404 #define RIG_TYPE_MOBILE (RIG_FLAG_TRANSCEIVER|RIG_FLAG_MOBILE)
405 #define RIG_TYPE_RECEIVER RIG_FLAG_RECEIVER
406 #define RIG_TYPE_PCRECEIVER (RIG_FLAG_COMPUTER|RIG_FLAG_RECEIVER)
407 #define RIG_TYPE_SCANNER (RIG_FLAG_SCANNER|RIG_FLAG_RECEIVER)
408 #define RIG_TYPE_TRUNKSCANNER (RIG_TYPE_SCANNER|RIG_FLAG_TRUNKING)
409 #define RIG_TYPE_COMPUTER (RIG_FLAG_TRANSCEIVER|RIG_FLAG_COMPUTER)
410 #define RIG_TYPE_TUNER RIG_FLAG_TUNER
431 #define RIG_STATUS_NEW RIG_STATUS_UNTESTED
463 #define PRIfreq ".0f"
472 #define FREQFMT SCNfreq
483 #define Hz(f) ((freq_t)(f))
485 #define kHz(f) ((freq_t)((f)*(freq_t)1000))
487 #define MHz(f) ((freq_t)((f)*(freq_t)1000000))
489 #define GHz(f) ((freq_t)((f)*(freq_t)1000000000))
492 #define s_Hz(f) ((shortfreq_t)(f))
494 #define s_kHz(f) ((shortfreq_t)((f)*(shortfreq_t)1000))
496 #define s_MHz(f) ((shortfreq_t)((f)*(shortfreq_t)1000000))
498 #define s_GHz(f) ((shortfreq_t)((f)*(shortfreq_t)1000000000))
501 #define RIG_FREQ_NONE Hz(0)
522 #define RIG_VFO_N(n) (1u<<(n))
525 #define RIG_VFO_NONE 0
528 #define RIG_VFO_A RIG_VFO_N(0)
531 #define RIG_VFO_B RIG_VFO_N(1)
534 #define RIG_VFO_C RIG_VFO_N(2)
540 #define RIG_VFO_SUB_A RIG_VFO_N(21)
543 #define RIG_VFO_SUB_B RIG_VFO_N(22)
546 #define RIG_VFO_SUB_C RIG_VFO_N(3)
549 #define RIG_VFO_MAIN_A RIG_VFO_N(23)
552 #define RIG_VFO_MAIN_B RIG_VFO_N(24)
555 #define RIG_VFO_MAIN_C RIG_VFO_N(4)
558 #define RIG_VFO_OTHER RIG_VFO_N(5)
561 #define RIG_VFO_SUB RIG_VFO_N(25)
564 #define RIG_VFO_MAIN RIG_VFO_N(26)
567 #define RIG_VFO_VFO RIG_VFO_N(27)
570 #define RIG_VFO_MEM RIG_VFO_N(28)
573 #define RIG_VFO_CURR RIG_VFO_N(29)
576 #define RIG_VFO_TX_FLAG RIG_VFO_N(30)
579 #define RIG_VFO_ALL RIG_VFO_N(31)
586 #define RIG_VFO_TX_VFO(v) ((v)|RIG_VFO_TX_FLAG)
589 #define RIG_VFO_TX RIG_VFO_TX_VFO(RIG_VFO_CURR)
592 #define RIG_VFO_RX RIG_VFO_CURR
602 #define RIG_TARGETABLE_NONE 0
603 #define RIG_TARGETABLE_FREQ (1<<0)
604 #define RIG_TARGETABLE_MODE (1<<1) // mode by vfo or same mode on both vfos
605 #define RIG_TARGETABLE_PURE (1<<2) // deprecated -- not used -- reuse it
606 #define RIG_TARGETABLE_TONE (1<<3)
607 #define RIG_TARGETABLE_FUNC (1<<4)
608 #define RIG_TARGETABLE_LEVEL (1<<5)
609 #define RIG_TARGETABLE_RITXIT (1<<6)
610 #define RIG_TARGETABLE_PTT (1<<7)
611 #define RIG_TARGETABLE_MEM (1<<8)
612 #define RIG_TARGETABLE_BANK (1<<9)
613 #define RIG_TARGETABLE_ANT (1<<10)
614 #define RIG_TARGETABLE_ROOFING (1<<11) // roofing filter targetable by VFO
615 #define RIG_TARGETABLE_SPECTRUM (1<<12) // spectrum scope targetable by VFO
616 #define RIG_TARGETABLE_BAND (1<<13) // Band select -- e.g. Yaesu BS command
617 #define RIG_TARGETABLE_COMMON (RIG_TARGETABLE_RITXIT | RIG_TARGETABLE_PTT | RIG_TARGETABLE_MEM | RIG_TARGETABLE_BANK)
618 #define RIG_TARGETABLE_ALL 0x7fffffff
626 #define VFO_HAS_A_B ((STATE(rig)->vfo_list & (RIG_VFO_A|RIG_VFO_B)) == (RIG_VFO_A|RIG_VFO_B))
627 #define VFO_HAS_MAIN_SUB ((STATE(rig)->vfo_list & (RIG_VFO_MAIN|RIG_VFO_SUB)) == (RIG_VFO_MAIN|RIG_VFO_SUB))
628 #define VFO_HAS_MAIN_SUB_ONLY ((!VFO_HAS_A_B) & VFO_HAS_MAIN_SUB)
629 #define VFO_HAS_MAIN_SUB_A_B_ONLY (VFO_HAS_A_B & VFO_HAS_MAIN_SUB)
630 #define VFO_HAS_A_B_ONLY (VFO_HAS_A_B & (!VFO_HAS_MAIN_SUB))
631 #define VFO_DUAL (RIG_VFO_MAIN_A|RIG_VFO_MAIN_B|RIG_VFO_SUB_A|RIG_VFO_SUB_B)
632 #define VFO_HAS_DUAL ((STATE(rig)->vfo_list & VFO_DUAL) == VFO_DUAL)
639 #define RIG_PASSBAND_NORMAL s_Hz(0)
644 #define RIG_PASSBAND_NOCHANGE s_Hz(-1)
652 typedef float agc_time_t;
828 #define RIG_BANDSELECT_ALL
829 #define RIG_BANDSELECT_LF (RIG_BANDSELECT_2200M | RIG_BANDSELECT_600M)
830 #define RIG_BANDSELECT_HF (RIG_BANDSELECT_160M | RIG_BANDSELECT_80M | RIG_BANDSELECT_60M | RIG_BANDSELECT_40M\
831 | RIG_BANDSELECT_30M | RIG_BANDSELECT_20M | RIG_BANDSELECT_17M | RIG_BANDSELECT_15M | RIG_BANDSELECT_12M\
832 RIG_BANDSELECT_10M | RIG_BANDSELECT_6M)
833 #define RIG_BANDSELECT_VHF (RIG_BANDSELECT_AIR | RIG_BANDSELECT_2M| RIG_BANDSELECT_1_25M(
834 #define RIG_BANDSELECT_UHF (RIG_BANDSELECT_70CM)
862 #define token_t hamlib_token_t
866 #define RIG_CONF_END 0
895 #define RIG_COMBO_MAX 16
896 #define RIG_BIN_MAX 80
986 #define RIG_ANT_NONE 0
987 #define RIG_ANT_N(n) ((ant_t)1<<(n))
988 #define RIG_ANT_1 RIG_ANT_N(0)
989 #define RIG_ANT_2 RIG_ANT_N(1)
990 #define RIG_ANT_3 RIG_ANT_N(2)
991 #define RIG_ANT_4 RIG_ANT_N(3)
992 #define RIG_ANT_5 RIG_ANT_N(4)
994 #define RIG_ANT_UNKNOWN RIG_ANT_N(30)
995 #define RIG_ANT_CURR RIG_ANT_N(31)
997 #define RIG_ANT_MAX 32
1001 #define RIG_AGC_LAST 99999
1010 RIG_METER_SWR = (1 << 0),
1011 RIG_METER_COMP = (1 << 1),
1012 RIG_METER_ALC = (1 << 2),
1013 RIG_METER_IC = (1 << 3),
1014 RIG_METER_DB = (1 << 4),
1015 RIG_METER_PO = (1 << 5),
1016 RIG_METER_VDD = (1 << 6),
1017 RIG_METER_TEMP = (1 << 7)
1051 #define RIG_LEVEL_NONE 0
1052 #define RIG_LEVEL_PREAMP CONSTANT_64BIT_FLAG(0)
1053 #define RIG_LEVEL_ATT CONSTANT_64BIT_FLAG(1)
1054 #define RIG_LEVEL_VOXDELAY CONSTANT_64BIT_FLAG(2)
1055 #define RIG_LEVEL_AF CONSTANT_64BIT_FLAG(3)
1056 #define RIG_LEVEL_RF CONSTANT_64BIT_FLAG(4)
1057 #define RIG_LEVEL_SQL CONSTANT_64BIT_FLAG(5)
1058 #define RIG_LEVEL_IF CONSTANT_64BIT_FLAG(6)
1059 #define RIG_LEVEL_APF CONSTANT_64BIT_FLAG(7)
1060 #define RIG_LEVEL_NR CONSTANT_64BIT_FLAG(8)
1061 #define RIG_LEVEL_PBT_IN CONSTANT_64BIT_FLAG(9)
1062 #define RIG_LEVEL_PBT_OUT CONSTANT_64BIT_FLAG(10)
1063 #define RIG_LEVEL_CWPITCH CONSTANT_64BIT_FLAG(11)
1064 #define RIG_LEVEL_RFPOWER CONSTANT_64BIT_FLAG(12)
1065 #define RIG_LEVEL_MICGAIN CONSTANT_64BIT_FLAG(13)
1066 #define RIG_LEVEL_KEYSPD CONSTANT_64BIT_FLAG(14)
1067 #define RIG_LEVEL_NOTCHF CONSTANT_64BIT_FLAG(15)
1068 #define RIG_LEVEL_COMP CONSTANT_64BIT_FLAG(16)
1069 #define RIG_LEVEL_AGC CONSTANT_64BIT_FLAG(17)
1070 #define RIG_LEVEL_BKINDL CONSTANT_64BIT_FLAG(18)
1071 #define RIG_LEVEL_BALANCE CONSTANT_64BIT_FLAG(19)
1072 #define RIG_LEVEL_METER CONSTANT_64BIT_FLAG(20)
1073 #define RIG_LEVEL_VOXGAIN CONSTANT_64BIT_FLAG(21)
1074 #define RIG_LEVEL_ANTIVOX CONSTANT_64BIT_FLAG(22)
1075 #define RIG_LEVEL_SLOPE_LOW CONSTANT_64BIT_FLAG(23)
1076 #define RIG_LEVEL_SLOPE_HIGH CONSTANT_64BIT_FLAG(24)
1077 #define RIG_LEVEL_BKIN_DLYMS CONSTANT_64BIT_FLAG(25)
1080 #define RIG_LEVEL_RAWSTR CONSTANT_64BIT_FLAG(26)
1081 //#define RIG_LEVEL_SQLSTAT CONSTANT_64BIT_FLAG(27)
1082 #define RIG_LEVEL_SWR CONSTANT_64BIT_FLAG(28)
1083 #define RIG_LEVEL_ALC CONSTANT_64BIT_FLAG(29)
1084 #define RIG_LEVEL_STRENGTH CONSTANT_64BIT_FLAG(30)
1086 #define RIG_LEVEL_RFPOWER_METER CONSTANT_64BIT_FLAG(32)
1087 #define RIG_LEVEL_COMP_METER CONSTANT_64BIT_FLAG(33)
1088 #define RIG_LEVEL_VD_METER CONSTANT_64BIT_FLAG(34)
1089 #define RIG_LEVEL_ID_METER CONSTANT_64BIT_FLAG(35)
1091 #define RIG_LEVEL_NOTCHF_RAW CONSTANT_64BIT_FLAG(36)
1092 #define RIG_LEVEL_MONITOR_GAIN CONSTANT_64BIT_FLAG(37)
1093 #define RIG_LEVEL_NB CONSTANT_64BIT_FLAG(38)
1094 #define RIG_LEVEL_RFPOWER_METER_WATTS CONSTANT_64BIT_FLAG(39)
1095 #define RIG_LEVEL_SPECTRUM_MODE CONSTANT_64BIT_FLAG(40)
1096 #define RIG_LEVEL_SPECTRUM_SPAN CONSTANT_64BIT_FLAG(41)
1097 #define RIG_LEVEL_SPECTRUM_EDGE_LOW CONSTANT_64BIT_FLAG(42)
1098 #define RIG_LEVEL_SPECTRUM_EDGE_HIGH CONSTANT_64BIT_FLAG(43)
1099 #define RIG_LEVEL_SPECTRUM_SPEED CONSTANT_64BIT_FLAG(44)
1100 #define RIG_LEVEL_SPECTRUM_REF CONSTANT_64BIT_FLAG(45)
1101 #define RIG_LEVEL_SPECTRUM_AVG CONSTANT_64BIT_FLAG(46)
1102 #define RIG_LEVEL_SPECTRUM_ATT CONSTANT_64BIT_FLAG(47)
1103 #define RIG_LEVEL_TEMP_METER CONSTANT_64BIT_FLAG(48)
1104 #define RIG_LEVEL_BAND_SELECT CONSTANT_64BIT_FLAG(49)
1105 #define RIG_LEVEL_USB_AF CONSTANT_64BIT_FLAG(50)
1106 #define RIG_LEVEL_USB_AF_INPUT CONSTANT_64BIT_FLAG(51)
1107 #define RIG_LEVEL_AGC_TIME CONSTANT_64BIT_FLAG(52)
1108 #define RIG_LEVEL_53 CONSTANT_64BIT_FLAG(53)
1109 #define RIG_LEVEL_54 CONSTANT_64BIT_FLAG(54)
1110 #define RIG_LEVEL_55 CONSTANT_64BIT_FLAG(55)
1111 #define RIG_LEVEL_56 CONSTANT_64BIT_FLAG(56)
1112 #define RIG_LEVEL_57 CONSTANT_64BIT_FLAG(57)
1113 #define RIG_LEVEL_58 CONSTANT_64BIT_FLAG(58)
1114 #define RIG_LEVEL_59 CONSTANT_64BIT_FLAG(59)
1115 #define RIG_LEVEL_60 CONSTANT_64BIT_FLAG(60)
1116 #define RIG_LEVEL_61 CONSTANT_64BIT_FLAG(61)
1117 #define RIG_LEVEL_62 CONSTANT_64BIT_FLAG(62)
1118 #define RIG_LEVEL_63 CONSTANT_64BIT_FLAG(63)
1120 #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)
1123 #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)
1125 #define RIG_LEVEL_IS_FLOAT(l) ((l)&RIG_LEVEL_FLOAT_LIST)
1126 #define RIG_LEVEL_SET(l) ((l)&~RIG_LEVEL_READONLY_LIST)
1156 enum rig_keyertype_e {
1157 RIG_KEYERTYPE_STRAIGHT = 0,
1158 RIG_KEYERTYPE_BUG = (1 << 0),
1159 RIG_KEYERTYPE_PADDLE = (1 << 1),
1160 RIG_KEYERTYPE_UNKNOWN = (1 << 2)
1183 RIG_MULTICAST_TRANSCEIVE,
1184 RIG_MULTICAST_SPECTRUM
1188 #define RIG_PARM_FLOAT_LIST (RIG_PARM_BACKLIGHT|RIG_PARM_BAT|RIG_PARM_KEYLIGHT|RIG_PARM_BACKLIGHT)
1189 #define RIG_PARM_STRING_LIST (RIG_PARM_BANDSELECT|RIG_PARM_KEYERTYPE)
1190 #define RIG_PARM_READONLY_LIST (RIG_PARM_BAT)
1192 #define RIG_PARM_IS_FLOAT(l) ((l)&RIG_PARM_FLOAT_LIST)
1193 #define RIG_PARM_IS_STRING(l) ((l)&RIG_PARM_STRING_LIST)
1194 #define RIG_PARM_SET(l) ((l)&~RIG_PARM_READONLY_LIST)
1209 #define RIG_SETTING_MAX 64
1227 #define RIG_TRN_OFF 0
1228 #define RIG_TRN_RIG 1
1229 #define RIG_TRN_POLL 2
1249 #define RIG_FUNC_NONE 0
1250 #define RIG_FUNC_FAGC CONSTANT_64BIT_FLAG (0)
1251 #define RIG_FUNC_NB CONSTANT_64BIT_FLAG (1)
1252 #define RIG_FUNC_COMP CONSTANT_64BIT_FLAG (2)
1253 #define RIG_FUNC_VOX CONSTANT_64BIT_FLAG (3)
1254 #define RIG_FUNC_TONE CONSTANT_64BIT_FLAG (4)
1255 #define RIG_FUNC_TSQL CONSTANT_64BIT_FLAG (5)
1256 #define RIG_FUNC_SBKIN CONSTANT_64BIT_FLAG (6)
1257 #define RIG_FUNC_FBKIN CONSTANT_64BIT_FLAG (7)
1258 #define RIG_FUNC_ANF CONSTANT_64BIT_FLAG (8)
1259 #define RIG_FUNC_NR CONSTANT_64BIT_FLAG (9)
1260 #define RIG_FUNC_AIP CONSTANT_64BIT_FLAG (10)
1261 #define RIG_FUNC_APF CONSTANT_64BIT_FLAG (11)
1262 #define RIG_FUNC_MON CONSTANT_64BIT_FLAG (12)
1263 #define RIG_FUNC_MN CONSTANT_64BIT_FLAG (13)
1264 #define RIG_FUNC_RF CONSTANT_64BIT_FLAG (14)
1265 #define RIG_FUNC_ARO CONSTANT_64BIT_FLAG (15)
1266 #define RIG_FUNC_LOCK CONSTANT_64BIT_FLAG (16)
1267 #define RIG_FUNC_MUTE CONSTANT_64BIT_FLAG (17)
1268 #define RIG_FUNC_VSC CONSTANT_64BIT_FLAG (18)
1269 #define RIG_FUNC_REV CONSTANT_64BIT_FLAG (19)
1270 #define RIG_FUNC_SQL CONSTANT_64BIT_FLAG (20)
1271 #define RIG_FUNC_ABM CONSTANT_64BIT_FLAG (21)
1272 #define RIG_FUNC_BC CONSTANT_64BIT_FLAG (22)
1273 #define RIG_FUNC_MBC CONSTANT_64BIT_FLAG (23)
1274 #define RIG_FUNC_RIT CONSTANT_64BIT_FLAG (24)
1275 #define RIG_FUNC_AFC CONSTANT_64BIT_FLAG (25)
1276 #define RIG_FUNC_SATMODE CONSTANT_64BIT_FLAG (26)
1277 #define RIG_FUNC_SCOPE CONSTANT_64BIT_FLAG (27)
1278 #define RIG_FUNC_RESUME CONSTANT_64BIT_FLAG (28)
1279 #define RIG_FUNC_TBURST CONSTANT_64BIT_FLAG (29)
1280 #define RIG_FUNC_TUNER CONSTANT_64BIT_FLAG (30)
1281 #define RIG_FUNC_XIT CONSTANT_64BIT_FLAG (31)
1284 #define RIG_FUNC_NB2 CONSTANT_64BIT_FLAG (32)
1285 #define RIG_FUNC_CSQL CONSTANT_64BIT_FLAG (33)
1286 #define RIG_FUNC_AFLT CONSTANT_64BIT_FLAG (34)
1287 #define RIG_FUNC_ANL CONSTANT_64BIT_FLAG (35)
1288 #define RIG_FUNC_BC2 CONSTANT_64BIT_FLAG (36)
1289 #define RIG_FUNC_DUAL_WATCH CONSTANT_64BIT_FLAG (37)
1290 #define RIG_FUNC_DIVERSITY CONSTANT_64BIT_FLAG (38)
1291 #define RIG_FUNC_DSQL CONSTANT_64BIT_FLAG (39)
1292 #define RIG_FUNC_SCEN CONSTANT_64BIT_FLAG (40)
1293 #define RIG_FUNC_SLICE CONSTANT_64BIT_FLAG (41)
1294 #define RIG_FUNC_TRANSCEIVE CONSTANT_64BIT_FLAG (42)
1295 #define RIG_FUNC_SPECTRUM CONSTANT_64BIT_FLAG (43)
1296 #define RIG_FUNC_SPECTRUM_HOLD CONSTANT_64BIT_FLAG (44)
1297 #define RIG_FUNC_SEND_MORSE CONSTANT_64BIT_FLAG (45)
1298 #define RIG_FUNC_SEND_VOICE_MEM CONSTANT_64BIT_FLAG (46)
1299 #define RIG_FUNC_OVF_STATUS CONSTANT_64BIT_FLAG (47)
1300 #define RIG_FUNC_SYNC CONSTANT_64BIT_FLAG (48)
1301 #define RIG_FUNC_BIT49 CONSTANT_64BIT_FLAG (49)
1302 #define RIG_FUNC_BIT50 CONSTANT_64BIT_FLAG (50)
1303 #define RIG_FUNC_BIT51 CONSTANT_64BIT_FLAG (51)
1304 #define RIG_FUNC_BIT52 CONSTANT_64BIT_FLAG (52)
1305 #define RIG_FUNC_BIT53 CONSTANT_64BIT_FLAG (53)
1306 #define RIG_FUNC_BIT54 CONSTANT_64BIT_FLAG (54)
1307 #define RIG_FUNC_BIT55 CONSTANT_64BIT_FLAG (55)
1308 #define RIG_FUNC_BIT56 CONSTANT_64BIT_FLAG (56)
1309 #define RIG_FUNC_BIT57 CONSTANT_64BIT_FLAG (57)
1310 #define RIG_FUNC_BIT58 CONSTANT_64BIT_FLAG (58)
1311 #define RIG_FUNC_BIT59 CONSTANT_64BIT_FLAG (59)
1312 #define RIG_FUNC_BIT60 CONSTANT_64BIT_FLAG (60)
1313 #define RIG_FUNC_BIT61 CONSTANT_64BIT_FLAG (61)
1314 #define RIG_FUNC_BIT62 CONSTANT_64BIT_FLAG (62)
1315 #define RIG_FUNC_BIT63 CONSTANT_64BIT_FLAG (63)
1325 #define mW(p) ((int)(p))
1333 #define Watts(p) ((int)((p)*1000))
1340 #define W(p) Watts(p)
1341 #if 0 // deprecating kW macro as this doesn't make sense
1348 #define kW(p) ((int)((p)*1000000L))
1363 #define RIG_MODE_NONE 0
1364 #define RIG_MODE_AM CONSTANT_64BIT_FLAG (0)
1365 #define RIG_MODE_CW CONSTANT_64BIT_FLAG (1)
1366 #define RIG_MODE_USB CONSTANT_64BIT_FLAG (2)
1367 #define RIG_MODE_LSB CONSTANT_64BIT_FLAG (3)
1368 #define RIG_MODE_RTTY CONSTANT_64BIT_FLAG (4)
1369 #define RIG_MODE_FM CONSTANT_64BIT_FLAG (5)
1370 #define RIG_MODE_WFM CONSTANT_64BIT_FLAG (6)
1371 #define RIG_MODE_CWR CONSTANT_64BIT_FLAG (7)
1372 #define RIG_MODE_RTTYR CONSTANT_64BIT_FLAG (8)
1373 #define RIG_MODE_AMS CONSTANT_64BIT_FLAG (9)
1374 #define RIG_MODE_PKTLSB CONSTANT_64BIT_FLAG (10)
1375 #define RIG_MODE_PKTUSB CONSTANT_64BIT_FLAG (11)
1376 #define RIG_MODE_PKTFM CONSTANT_64BIT_FLAG (12)
1377 #define RIG_MODE_ECSSUSB CONSTANT_64BIT_FLAG (13)
1378 #define RIG_MODE_ECSSLSB CONSTANT_64BIT_FLAG (14)
1379 #define RIG_MODE_FAX CONSTANT_64BIT_FLAG (15)
1380 #define RIG_MODE_SAM CONSTANT_64BIT_FLAG (16)
1381 #define RIG_MODE_SAL CONSTANT_64BIT_FLAG (17)
1382 #define RIG_MODE_SAH CONSTANT_64BIT_FLAG (18)
1383 #define RIG_MODE_DSB CONSTANT_64BIT_FLAG (19)
1384 #define RIG_MODE_FMN CONSTANT_64BIT_FLAG (21)
1385 #define RIG_MODE_PKTAM CONSTANT_64BIT_FLAG (22)
1386 #define RIG_MODE_P25 CONSTANT_64BIT_FLAG (23)
1387 #define RIG_MODE_DSTAR CONSTANT_64BIT_FLAG (24)
1388 #define RIG_MODE_DPMR CONSTANT_64BIT_FLAG (25)
1389 #define RIG_MODE_NXDNVN CONSTANT_64BIT_FLAG (26)
1390 #define RIG_MODE_NXDN_N CONSTANT_64BIT_FLAG (27)
1391 #define RIG_MODE_DCR CONSTANT_64BIT_FLAG (28)
1392 #define RIG_MODE_AMN CONSTANT_64BIT_FLAG (29)
1393 #define RIG_MODE_PSK CONSTANT_64BIT_FLAG (30)
1394 #define RIG_MODE_PSKR CONSTANT_64BIT_FLAG (31)
1397 #define RIG_MODE_DD CONSTANT_64BIT_FLAG (32)
1398 #define RIG_MODE_C4FM CONSTANT_64BIT_FLAG (33)
1399 #define RIG_MODE_PKTFMN CONSTANT_64BIT_FLAG (34)
1400 #define RIG_MODE_SPEC CONSTANT_64BIT_FLAG (35)
1401 #define RIG_MODE_CWN CONSTANT_64BIT_FLAG (36)
1402 #define RIG_MODE_IQ CONSTANT_64BIT_FLAG (37)
1403 #define RIG_MODE_ISBUSB CONSTANT_64BIT_FLAG (38)
1404 #define RIG_MODE_ISBLSB CONSTANT_64BIT_FLAG (39)
1405 #define RIG_MODE_USBD1 CONSTANT_64BIT_FLAG (40)
1406 #define RIG_MODE_USBD2 CONSTANT_64BIT_FLAG (41)
1407 #define RIG_MODE_USBD3 CONSTANT_64BIT_FLAG (42)
1408 #define RIG_MODE_LSBD1 CONSTANT_64BIT_FLAG (43)
1409 #define RIG_MODE_LSBD2 CONSTANT_64BIT_FLAG (44)
1410 #define RIG_MODE_LSBD3 CONSTANT_64BIT_FLAG (45)
1411 #define RIG_MODE_BIT46 CONSTANT_64BIT_FLAG (46)
1412 #define RIG_MODE_BIT47 CONSTANT_64BIT_FLAG (47)
1413 #define RIG_MODE_BIT48 CONSTANT_64BIT_FLAG (48)
1414 #define RIG_MODE_BIT49 CONSTANT_64BIT_FLAG (49)
1415 #define RIG_MODE_BIT50 CONSTANT_64BIT_FLAG (50)
1416 #define RIG_MODE_BIT51 CONSTANT_64BIT_FLAG (51)
1417 #define RIG_MODE_BIT52 CONSTANT_64BIT_FLAG (52)
1418 #define RIG_MODE_BIT53 CONSTANT_64BIT_FLAG (53)
1419 #define RIG_MODE_BIT54 CONSTANT_64BIT_FLAG (54)
1420 #define RIG_MODE_BIT55 CONSTANT_64BIT_FLAG (55)
1421 #define RIG_MODE_BIT56 CONSTANT_64BIT_FLAG (56)
1422 #define RIG_MODE_BIT57 CONSTANT_64BIT_FLAG (57)
1423 #define RIG_MODE_BIT58 CONSTANT_64BIT_FLAG (58)
1424 #define RIG_MODE_BIT59 CONSTANT_64BIT_FLAG (59)
1425 #define RIG_MODE_BIT60 CONSTANT_64BIT_FLAG (60)
1426 #define RIG_MODE_BIT61 CONSTANT_64BIT_FLAG (61)
1427 #define RIG_MODE_BIT62 CONSTANT_64BIT_FLAG (62)
1428 #define RIG_MODE_TESTS_MAX CONSTANT_64BIT_FLAG (63)
1429 #define RIG_MODE_ALL (0xffffffff)
1435 #define RIG_MODE_SSB (RIG_MODE_USB|RIG_MODE_LSB)
1440 #define RIG_MODE_PKTSSB (RIG_MODE_PKTUSB|RIG_MODE_PKTLSB)
1445 #define RIG_MODE_ECSS (RIG_MODE_ECSSUSB|RIG_MODE_ECSSLSB)
1448 #define RIG_DBLST_END 0
1449 #define RIG_IS_DBLST_END(d) ((d)==0)
1471 #define RIG_FRNG_END {Hz(0),Hz(0),RIG_MODE_NONE,0,0,RIG_VFO_NONE}
1472 #define RIG_IS_FRNG_END(r) ((r).startf == Hz(0) && (r).endf == Hz(0))
1497 #define RIG_TS_ANY 0
1498 #define RIG_TS_END {RIG_MODE_NONE, 0}
1499 #define RIG_IS_TS_END(t) ((t).modes == RIG_MODE_NONE && (t).ts == 0)
1531 #define RIG_FLT_ANY 0
1532 #define RIG_FLT_END {RIG_MODE_NONE, 0}
1533 #define RIG_IS_FLT_END(f) ((f).modes == RIG_MODE_NONE)
1534 #define DEBUGMSGSAVE_SIZE 24000
1541 #define RIG_CHFLAG_NONE 0
1545 #define RIG_CHFLAG_SKIP (1<<0)
1549 #define RIG_CHFLAG_DATA (1<<1)
1553 #define RIG_CHFLAG_PSKIP (1<<2)
1565 #define RIG_EXT_END {0, {.i=0}}
1566 #define RIG_IS_EXT_END(x) ((x).token == 0)
1705 #define RIG_CHAN_END {0,0,RIG_MTYPE_NONE}
1706 #define RIG_IS_CHAN_END(c) ((c).type == RIG_MTYPE_NONE)
1712 #define RIG_MEM_CAPS_ALL -1
1751 }
table[HAMLIB_MAX_CAL_LENGTH];
1769 #define EMPTY_STR_CAL { 0, { { 0, 0 }, } }
1781 }
table[HAMLIB_MAX_CAL_LENGTH];
1799 #define EMPTY_FLOAT_CAL { 0, { { 0, 0f }, } }
1801 typedef int (* chan_cb_t)(
RIG *, vfo_t vfo,
channel_t **, int,
const chan_t *, rig_ptr_t);
1802 typedef int (* confval_cb_t)(RIG *,
1821 RIG_SPECTRUM_MODE_NONE = 0,
1874 hamlib_token_t token;
1904 #define RIG_MODEL(arg) .rig_model=arg,.macro_name=#arg
1906 #define HAMLIB_CHECK_RIG_CAPS "HAMLIB_CHECK_RIG_CAPS"
1909 const char *model_name;
1910 const char *mfg_name;
1911 const char *version;
1912 const char *copyright;
1920 int serial_rate_min;
1921 int serial_rate_max;
1922 int serial_data_bits;
1923 int serial_stop_bits;
1928 int post_write_delay;
1932 setting_t has_get_func;
1933 setting_t has_set_func;
1934 setting_t has_get_level;
1935 setting_t has_set_level;
1936 setting_t has_get_parm;
1937 setting_t has_set_parm;
1950 int preamp[HAMLIB_MAXDBLSTSIZ];
1951 int attenuator[HAMLIB_MAXDBLSTSIZ];
1952 shortfreq_t max_rit;
1953 shortfreq_t max_xit;
1954 shortfreq_t max_ifshift;
1956 int agc_level_count;
1957 enum agc_level_e agc_levels[HAMLIB_MAX_AGC_LEVELS];
1999 freq_t spectrum_spans[HAMLIB_MAX_SPECTRUM_SPANS];
2001 int spectrum_attenuator[HAMLIB_MAXDBLSTSIZ];
2004 const rig_ptr_t priv;
2021 int (*set_freq)(RIG *rig, vfo_t vfo, freq_t freq);
2022 int (*get_freq)(RIG *rig, vfo_t vfo, freq_t *freq);
2024 int (*set_mode)(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width);
2025 int (*get_mode)(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width);
2027 int (*set_vfo)(RIG *rig, vfo_t vfo);
2028 int (*get_vfo)(RIG *rig, vfo_t *vfo);
2030 int (*set_ptt)(RIG *rig, vfo_t vfo,
ptt_t ptt);
2031 int (*get_ptt)(RIG *rig, vfo_t vfo,
ptt_t *ptt);
2033 int (*get_dcd)(RIG *rig, vfo_t vfo, dcd_t *dcd);
2035 int (*set_rptr_shift)(RIG *rig, vfo_t vfo,
rptr_shift_t rptr_shift);
2036 int (*get_rptr_shift)(RIG *rig, vfo_t vfo,
rptr_shift_t *rptr_shift);
2038 int (*set_rptr_offs)(RIG *rig, vfo_t vfo, shortfreq_t offs);
2039 int (*get_rptr_offs)(RIG *rig, vfo_t vfo, shortfreq_t *offs);
2041 int (*set_split_freq)(RIG *rig, vfo_t vfo, freq_t tx_freq);
2042 int (*get_split_freq)(RIG *rig, vfo_t vfo, freq_t *tx_freq);
2044 int (*set_split_mode)(RIG *rig,
2047 pbwidth_t tx_width);
2048 int (*get_split_mode)(RIG *rig,
2051 pbwidth_t *tx_width);
2053 int (*set_split_freq_mode)(RIG *rig,
2057 pbwidth_t tx_width);
2058 int (*get_split_freq_mode)(RIG *rig,
2062 pbwidth_t *tx_width);
2064 int (*set_split_vfo)(RIG *rig, vfo_t vfo,
split_t split, vfo_t tx_vfo);
2065 int (*get_split_vfo)(RIG *rig, vfo_t vfo,
split_t *split, vfo_t *tx_vfo);
2067 int (*set_rit)(RIG *rig, vfo_t vfo, shortfreq_t rit);
2068 int (*get_rit)(RIG *rig, vfo_t vfo, shortfreq_t *rit);
2070 int (*set_xit)(RIG *rig, vfo_t vfo, shortfreq_t xit);
2071 int (*get_xit)(RIG *rig, vfo_t vfo, shortfreq_t *xit);
2073 int (*set_ts)(RIG *rig, vfo_t vfo, shortfreq_t ts);
2074 int (*get_ts)(RIG *rig, vfo_t vfo, shortfreq_t *ts);
2076 int (*set_dcs_code)(RIG *rig, vfo_t vfo, tone_t code);
2077 int (*get_dcs_code)(RIG *rig, vfo_t vfo, tone_t *code);
2079 int (*set_tone)(RIG *rig, vfo_t vfo, tone_t tone);
2080 int (*get_tone)(RIG *rig, vfo_t vfo, tone_t *tone);
2082 int (*set_ctcss_tone)(RIG *rig, vfo_t vfo, tone_t tone);
2083 int (*get_ctcss_tone)(RIG *rig, vfo_t vfo, tone_t *tone);
2085 int (*set_dcs_sql)(RIG *rig, vfo_t vfo, tone_t code);
2086 int (*get_dcs_sql)(RIG *rig, vfo_t vfo, tone_t *code);
2088 int (*set_tone_sql)(RIG *rig, vfo_t vfo, tone_t tone);
2089 int (*get_tone_sql)(RIG *rig, vfo_t vfo, tone_t *tone);
2091 int (*set_ctcss_sql)(RIG *rig, vfo_t vfo, tone_t tone);
2092 int (*get_ctcss_sql)(RIG *rig, vfo_t vfo, tone_t *tone);
2094 int (*power2mW)(RIG *rig,
2095 unsigned int *mwpower,
2099 int (*mW2power)(RIG *rig,
2101 unsigned int mwpower,
2105 int (*set_powerstat)(RIG *rig,
powerstat_t status);
2106 int (*get_powerstat)(RIG *rig,
powerstat_t *status);
2108 int (*reset)(RIG *rig,
reset_t reset);
2110 int (*set_ant)(RIG *rig, vfo_t vfo, ant_t ant, value_t option);
2111 int (*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);
2113 int (*set_level)(RIG *rig, vfo_t vfo, setting_t level, value_t val);
2114 int (*get_level)(RIG *rig, vfo_t vfo, setting_t level, value_t *val);
2116 int (*set_func)(RIG *rig, vfo_t vfo, setting_t func,
int status);
2117 int (*get_func)(RIG *rig, vfo_t vfo, setting_t func,
int *status);
2119 int (*set_parm)(RIG *rig, setting_t parm, value_t val);
2120 int (*get_parm)(RIG *rig, setting_t parm, value_t *val);
2122 int (*set_ext_level)(RIG *rig, vfo_t vfo, hamlib_token_t
token, value_t val);
2123 int (*get_ext_level)(RIG *rig, vfo_t vfo, hamlib_token_t
token, value_t *val);
2125 int (*set_ext_func)(RIG *rig, vfo_t vfo, hamlib_token_t
token,
int status);
2126 int (*get_ext_func)(RIG *rig, vfo_t vfo, hamlib_token_t
token,
int *status);
2128 int (*set_ext_parm)(RIG *rig, hamlib_token_t
token, value_t val);
2129 int (*get_ext_parm)(RIG *rig, hamlib_token_t
token, value_t *val);
2131 int (*set_conf)(RIG *rig, hamlib_token_t
token,
const char *val);
2132 int (*get_conf)(RIG *rig, hamlib_token_t
token,
char *val);
2134 int (*send_dtmf)(RIG *rig, vfo_t vfo,
const char *digits);
2135 int (*recv_dtmf)(RIG *rig, vfo_t vfo,
char *digits,
int *length);
2137 int (*send_morse)(RIG *rig, vfo_t vfo,
const char *msg);
2138 int (*stop_morse)(RIG *rig, vfo_t vfo);
2139 int (*wait_morse)(RIG *rig, vfo_t vfo);
2141 int (*send_voice_mem)(RIG *rig, vfo_t vfo,
int ch);
2142 int (*stop_voice_mem)(RIG *rig, vfo_t vfo);
2144 int (*set_bank)(RIG *rig, vfo_t vfo,
int bank);
2146 int (*set_mem)(RIG *rig, vfo_t vfo,
int ch);
2147 int (*get_mem)(RIG *rig, vfo_t vfo,
int *ch);
2149 int (*vfo_op)(RIG *rig, vfo_t vfo,
vfo_op_t op);
2151 int (*scan)(RIG *rig, vfo_t vfo,
scan_t scan,
int ch);
2153 int (*set_trn)(RIG *rig,
int trn);
2154 int (*get_trn)(RIG *rig,
int *trn);
2156 int (*decode_event)(RIG *rig);
2158 int (*set_channel)(RIG *rig, vfo_t vfo,
const channel_t *chan);
2159 int (*get_channel)(RIG *rig, vfo_t vfo, channel_t *chan,
int read_only);
2161 const char * (*get_info)(RIG *rig);
2163 int (*set_chan_all_cb)(RIG *rig, vfo_t vfo, chan_cb_t chan_cb, rig_ptr_t);
2164 int (*get_chan_all_cb)(RIG *rig, vfo_t vfo, chan_cb_t chan_cb, rig_ptr_t);
2166 int (*set_mem_all_cb)(RIG *rig,
2169 confval_cb_t parm_cb,
2171 int (*get_mem_all_cb)(RIG *rig,
2174 confval_cb_t parm_cb,
2177 int (*set_vfo_opt)(RIG *rig,
int status);
2184 int(*set_clock) (RIG *rig,
int year,
int month,
int day,
int hour,
int min,
int sec,
double msec,
int utc_offset);
2185 int(*get_clock) (RIG *rig,
int *year,
int *month,
int *day,
int *hour,
int *
min,
int *sec,
double *msec,
int *utc_offset);
2187 const char *clone_combo_set;
2188 const char *clone_combo_get;
2189 const char *macro_name;
2191 int async_data_supported;
2192 int (*read_frame_direct)(RIG *rig,
2193 size_t buffer_length,
2194 const unsigned char *buffer);
2195 int (*is_async_frame)(RIG *rig,
2196 size_t frame_length,
2197 const unsigned char *frame);
2198 int (*process_async_frame)(RIG *rig,
2199 size_t frame_length,
2200 const unsigned char *frame);
2202 char *hamlib_check_rig_caps;
2203 int (*get_conf2)(RIG *rig, hamlib_token_t
token,
char *val,
int val_len);
2204 int (*password)(RIG *rig,
const char *key1);
2205 int (*set_lock_mode)(RIG *rig,
int mode);
2206 int (*get_lock_mode)(RIG *rig,
int *mode);
2207 short timeout_retry;
2221 RIG_FUNCTION_CLEANUP,
2224 RIG_FUNCTION_SET_FREQ,
2225 RIG_FUNCTION_GET_FREQ,
2226 RIG_FUNCTION_SET_MODE,
2227 RIG_FUNCTION_GET_MODE,
2228 RIG_FUNCTION_SET_VFO,
2229 RIG_FUNCTION_GET_VFO,
2230 RIG_FUNCTION_SET_PTT,
2231 RIG_FUNCTION_GET_PTT,
2232 RIG_FUNCTION_GET_DCD,
2233 RIG_FUNCTION_SET_RPTR_SHIFT,
2234 RIG_FUNCTION_GET_RPTR_SHIFT,
2235 RIG_FUNCTION_SET_RPTR_OFFS,
2236 RIG_FUNCTION_GET_RPTR_OFFS,
2237 RIG_FUNCTION_SET_SPLIT_FREQ,
2238 RIG_FUNCTION_GET_SPLIT_FREQ,
2239 RIG_FUNCTION_SET_SPLIT_MODE,
2240 RIG_FUNCTION_SET_SPLIT_FREQ_MODE,
2241 RIG_FUNCTION_GET_SPLIT_FREQ_MODE,
2242 RIG_FUNCTION_SET_SPLIT_VFO,
2243 RIG_FUNCTION_GET_SPLIT_VFO,
2244 RIG_FUNCTION_SET_RIT,
2245 RIG_FUNCTION_GET_RIT,
2246 RIG_FUNCTION_SET_XIT,
2247 RIG_FUNCTION_GET_XIT,
2248 RIG_FUNCTION_SET_TS,
2249 RIG_FUNCTION_GET_TS,
2250 RIG_FUNCTION_SET_DCS_CODE,
2251 RIG_FUNCTION_GET_DCS_CODE,
2252 RIG_FUNCTION_SET_TONE,
2253 RIG_FUNCTION_GET_TONE,
2254 RIG_FUNCTION_SET_CTCSS_TONE,
2255 RIG_FUNCTION_GET_CTCSS_TONE,
2256 RIG_FUNCTION_SET_DCS_SQL,
2257 RIG_FUNCTION_GET_DCS_SQL,
2258 RIG_FUNCTION_SET_TONE_SQL,
2259 RIG_FUNCTION_GET_TONE_SQL,
2260 RIG_FUNCTION_SET_CTCSS_SQL,
2261 RIG_FUNCTION_GET_CTCSS_SQL,
2262 RIG_FUNCTION_POWER2MW,
2263 RIG_FUNCTION_MW2POWER,
2264 RIG_FUNCTION_SET_POWERSTAT,
2265 RIG_FUNCTION_GET_POWERSTAT,
2267 RIG_FUNCTION_SET_ANT,
2268 RIG_FUNCTION_GET_ANT,
2269 RIG_FUNCTION_SET_LEVEL,
2270 RIG_FUNCTION_GET_LEVEL,
2271 RIG_FUNCTION_SET_FUNC,
2272 RIG_FUNCTION_GET_FUNC,
2273 RIG_FUNCTION_SET_PARM,
2274 RIG_FUNCTION_GET_PARM,
2275 RIG_FUNCTION_SET_EXT_LEVEL,
2276 RIG_FUNCTION_GET_EXT_LEVEL,
2277 RIG_FUNCTION_SET_EXT_FUNC,
2278 RIG_FUNCTION_GET_EXT_FUNC,
2279 RIG_FUNCTION_SET_EXT_PARM,
2280 RIG_FUNCTION_GET_EXT_PARM,
2281 RIG_FUNCTION_SET_CONF,
2282 RIG_FUNCTION_GET_CONF,
2283 RIG_FUNCTION_SEND_DTMF,
2284 RIG_FUNCTION_SEND_MORSE,
2285 RIG_FUNCTION_STOP_MORSE,
2286 RIG_FUNCTION_WAIT_MORSE,
2287 RIG_FUNCTION_SEND_VOICE_MEM,
2288 RIG_FUNCTION_SET_BANK,
2289 RIG_FUNCTION_SET_MEM,
2290 RIG_FUNCTION_GET_MEM,
2291 RIG_FUNCTION_VFO_OP,
2293 RIG_FUNCTION_SET_TRN,
2294 RIG_FUNCTION_GET_TRN,
2295 RIG_FUNCTION_DECODE_EVENT,
2296 RIG_FUNCTION_SET_CHANNEL,
2297 RIG_FUNCTION_GET_CHANNEL,
2298 RIG_FUNCTION_GET_INFO,
2299 RIG_FUNCTION_SET_CHAN_ALL_CB,
2300 RIG_FUNCTION_GET_CHAN_ALL_CB,
2301 RIG_FUNCTION_SET_MEM_ALL_CB,
2302 RIG_FUNCTION_GET_MEM_ALL_CB,
2303 RIG_FUNCTION_SET_VFO_OPT,
2304 RIG_FUNCTION_READ_FRAME_DIRECT,
2305 RIG_FUNCTION_IS_ASYNC_FRAME,
2306 RIG_FUNCTION_PROCESS_ASYNC_FRAME,
2307 RIG_FUNCTION_GET_CONF2,
2308 RIG_FUNCTION_STOP_VOICE_MEM,
2323 RIG_CAPS_TARGETABLE_VFO,
2327 RIG_CAPS_HAS_GET_LEVEL,
2328 RIG_CAPS_HAS_SET_LEVEL,
2331 enum rig_caps_cptr_e {
2332 RIG_CAPS_VERSION_CPTR,
2333 RIG_CAPS_MFG_NAME_CPTR,
2334 RIG_CAPS_MODEL_NAME_CPTR,
2335 RIG_CAPS_STATUS_CPTR
2350 struct hamlib_async_pipe;
2352 typedef struct hamlib_async_pipe hamlib_async_pipe_t;
2364 typedef struct hamlib_port {
2375 int post_write_delay;
2378 int tv_sec, tv_usec;
2385 char pathname[HAMLIB_FILPATHLEN];
2425 hamlib_async_pipe_t *sync_data_pipe;
2426 hamlib_async_pipe_t *sync_data_error_pipe;
2430 int fd_sync_error_write;
2431 int fd_sync_error_read;
2433 short timeout_retry;
2440 typedef struct hamlib_port_deprecated {
2451 int post_write_delay;
2454 int tv_sec, tv_usec;
2461 char pathname[HAMLIB_FILPATHLEN];
2499 } hamlib_port_t_deprecated;
2502 #if !defined(__APPLE__) || !defined(__cplusplus)
2504 typedef hamlib_port_t port_t;
2517 #if defined(IN_HAMLIB)
2519 #define RIGPORT(r) (&r->state.rigport)
2520 #define PTTPORT(r) (&r->state.pttport)
2521 #define DCDPORT(r) (&r->state.dcdport)
2522 #define CACHE(r) (&r->state.cache)
2523 #define AMPPORT(a) (&a->state.ampport)
2524 #define ROTPORT(r) (&r->state.rotport)
2525 #define ROTPORT2(r) (&r->state.rotport2)
2526 #define STATE(r) (&r->state)
2527 #define AMPSTATE(a) (&(a)->state)
2528 #define ROTSTATE(r) (&(r)->state)
2536 #define HAMLIB_RIGPORT(r) ((hamlib_port_t *)rig_data_pointer(r, RIG_PTRX_RIGPORT))
2537 #define HAMLIB_PTTPORT(r) ((hamlib_port_t *)rig_data_pointer(r, RIG_PTRX_PTTPORT))
2538 #define HAMLIB_DCDPORT(r) ((hamlib_port_t *)rig_data_pointer(r, RIG_PTRX_DCDPORT))
2539 #define HAMLIB_CACHE(r) ((struct rig_cache *)rig_data_pointer(r, RIG_PTRX_CACHE))
2540 #define HAMLIB_AMPPORT(a) ((hamlib_port_t *)amp_data_pointer(a, RIG_PTRX_AMPPORT))
2541 #define HAMLIB_ROTPORT(r) ((hamlib_port_t *)rot_data_pointer(r, RIG_PTRX_ROTPORT))
2542 #define HAMLIB_ROTPORT2(r) ((hamlib_port_t *)rot_data_pointer(r, RIG_PTRX_ROTPORT2))
2543 #define HAMLIB_STATE(r) ((struct rig_state *)rig_data_pointer(r, RIG_PTRX_STATE))
2544 #define HAMLIB_AMPSTATE(a) ((struct amp_state *)amp_data_pointer(a, RIG_PTRX_AMPSTATE))
2545 #define HAMLIB_ROTSTATE(r) ((struct rot_state *)rot_data_pointer(r, RIG_PTRX_ROTSTATE))
2564 #define HAMLIB_ELAPSED_GET 0
2565 #define HAMLIB_ELAPSED_SET 1
2566 #define HAMLIB_ELAPSED_INVALIDATE 2
2568 #define HAMLIB_CACHE_ALWAYS (-1)
2620 pbwidth_t widthCurr;
2621 pbwidth_t widthOther;
2622 pbwidth_t widthMainA;
2623 pbwidth_t widthMainB;
2624 pbwidth_t widthMainC;
2625 pbwidth_t widthSubA;
2626 pbwidth_t widthSubB;
2627 pbwidth_t widthSubC;
2632 struct timespec time_freqCurr;
2633 struct timespec time_freqOther;
2634 struct timespec time_freqMainA;
2635 struct timespec time_freqMainB;
2636 struct timespec time_freqMainC;
2637 struct timespec time_freqSubA;
2638 struct timespec time_freqSubB;
2639 struct timespec time_freqSubC;
2640 struct timespec time_freqMem;
2641 struct timespec time_vfo;
2642 struct timespec time_modeCurr;
2643 struct timespec time_modeOther;
2644 struct timespec time_modeMainA;
2645 struct timespec time_modeMainB;
2646 struct timespec time_modeMainC;
2647 struct timespec time_modeSubA;
2648 struct timespec time_modeSubB;
2649 struct timespec time_modeSubC;
2650 struct timespec time_modeMem;
2651 struct timespec time_widthCurr;
2652 struct timespec time_widthOther;
2653 struct timespec time_widthMainA;
2654 struct timespec time_widthMainB;
2655 struct timespec time_widthMainC;
2656 struct timespec time_widthSubA;
2657 struct timespec time_widthSubB;
2658 struct timespec time_widthSubC;
2659 struct timespec time_widthMem;
2660 struct timespec time_ptt;
2661 struct timespec time_split;
2669 #include <hamlib/multicast.h>
2672 int multicast_running;
2680 pthread_mutex_t mutex;
2681 int mutex_initialized;
2684 struct sockaddr_in dest_addr;
2689 typedef unsigned int rig_comm_status_t;
2691 #define RIG_COMM_STATUS_OK 0x00
2692 #define RIG_COMM_STATUS_CONNECTING 0x01
2693 #define RIG_COMM_STATUS_DISCONNECTED 0x02
2694 #define RIG_COMM_STATUS_TERMINATED 0x03
2695 #define RIG_COMM_STATUS_WARNING 0x04
2696 #define RIG_COMM_STATUS_ERROR 0x05
2802 volatile unsigned int snapshot_packet_sequence_number;
2804 volatile int multicast_publisher_run;
2806 volatile int async_data_handler_thread_run;
2807 void *async_data_handler_priv_data;
2808 volatile int poll_routine_thread_run;
2809 void *poll_routine_priv_data;
2810 pthread_mutex_t mutex_set_transaction;
2877 volatile int morse_data_handler_thread_run;
2878 void *morse_data_handler_priv_data;
2885 volatile int multicast_receiver_run;
2888 char device_id[HAMLIB_RIGNAMSIZ];
2891 struct timespec freq_event_elapsed;
3001 volatile unsigned int snapshot_packet_sequence_number;
3003 volatile int multicast_publisher_run;
3005 volatile int async_data_handler_thread_run;
3006 void *async_data_handler_priv_data;
3007 volatile int poll_routine_thread_run;
3008 void *poll_routine_priv_data;
3009 pthread_mutex_t mutex_set_transaction;
3037 typedef int (*vfo_cb_t)(RIG *,
vfo_t, rig_ptr_t);
3038 typedef int (*ptt_cb_t)(RIG *,
vfo_t,
ptt_t, rig_ptr_t);
3039 typedef int (*dcd_cb_t)(RIG *,
vfo_t, dcd_t, rig_ptr_t);
3040 typedef int (*pltune_cb_t)(RIG *,
3045 typedef int (*spectrum_cb_t)(RIG *,
3113 extern HAMLIB_EXPORT(
int)
rig_open HAMLIB_PARAMS((RIG *rig));
3120 extern HAMLIB_EXPORT(
int)
3123 extern HAMLIB_EXPORT(
int)
3124 rig_flush(hamlib_port_t *port);
3126 extern HAMLIB_EXPORT(
void)
3127 rig_lock(RIG *rig,
int lock);
3130 #define rig_set_freq(r,v,f) rig_set_freq(r,v,f,__builtin_FUNCTION())
3131 extern HAMLIB_EXPORT(
int)
3134 freq_t freq, const
char*));
3136 extern HAMLIB_EXPORT(
int)
3142 #define rig_get_freq(r,v,f) rig_get_freq(r,v,f,__builtin_FUNCTION())
3143 extern HAMLIB_EXPORT(
int)
3146 freq_t *freq, const
char*));
3148 extern HAMLIB_EXPORT(
int)
3154 extern HAMLIB_EXPORT(
int)
3159 extern HAMLIB_EXPORT(
int)
3166 #define rig_set_vfo(r,v) rig_set_vfo(r,v,__builtin_FUNCTION())
3167 extern HAMLIB_EXPORT(
int)
3169 vfo_t vfo, const
char *func));
3171 extern HAMLIB_EXPORT(
int)
3175 extern HAMLIB_EXPORT(
int)
3179 extern HAMLIB_EXPORT(
int)
3188 extern HAMLIB_EXPORT(
int)
3191 extern HAMLIB_EXPORT(
int)
3192 netrigctl_get_vfo_mode HAMLIB_PARAMS((RIG *rig));
3194 extern HAMLIB_EXPORT(
int)
3198 extern HAMLIB_EXPORT(
int)
3203 extern HAMLIB_EXPORT(
int)
3208 extern HAMLIB_EXPORT(
int)
3212 extern HAMLIB_EXPORT(
int)
3217 extern HAMLIB_EXPORT(
int)
3220 shortfreq_t rptr_offs));
3221 extern HAMLIB_EXPORT(
int)
3224 shortfreq_t *rptr_offs));
3226 extern HAMLIB_EXPORT(
int)
3230 extern HAMLIB_EXPORT(
int)
3235 extern HAMLIB_EXPORT(
int)
3239 extern HAMLIB_EXPORT(
int)
3244 extern HAMLIB_EXPORT(
int)
3248 extern HAMLIB_EXPORT(
int)
3253 extern HAMLIB_EXPORT(
int)
3257 extern HAMLIB_EXPORT(
int)
3262 extern HAMLIB_EXPORT(
int)
3266 extern HAMLIB_EXPORT(
int)
3271 extern HAMLIB_EXPORT(
int)
3275 pbwidth_t tx_width));
3276 extern HAMLIB_EXPORT(
int)
3280 pbwidth_t *tx_width));
3282 extern HAMLIB_EXPORT(
int)
3287 pbwidth_t tx_width));
3288 extern HAMLIB_EXPORT(
int)
3293 pbwidth_t *tx_width));
3295 extern HAMLIB_EXPORT(
int)
3300 extern HAMLIB_EXPORT(
int)
3306 extern HAMLIB_EXPORT(
int)
3310 extern HAMLIB_EXPORT(
int)
3315 extern HAMLIB_EXPORT(
int)
3319 extern HAMLIB_EXPORT(
int)
3324 extern HAMLIB_EXPORT(
int)
3328 extern HAMLIB_EXPORT(
int)
3333 extern HAMLIB_EXPORT(
int)
3335 unsigned int *mwpower,
3339 extern HAMLIB_EXPORT(
int)
3342 unsigned int mwpower,
3346 extern HAMLIB_EXPORT(shortfreq_t)
3350 extern HAMLIB_EXPORT(
int)
3355 extern HAMLIB_EXPORT(
int)
3361 #define rig_get_strength(r,v,s) rig_get_level((r),(v),RIG_LEVEL_STRENGTH, (value_t*)(s))
3363 extern HAMLIB_EXPORT(
int)
3367 extern HAMLIB_EXPORT(
int)
3372 extern HAMLIB_EXPORT(
int)
3374 hamlib_token_t token,
3377 extern HAMLIB_EXPORT(
int)
3379 hamlib_token_t token,
3381 extern HAMLIB_EXPORT(
int)
3382 rig_get_conf2 HAMLIB_PARAMS((RIG *rig,
3383 hamlib_token_t token,
3387 extern HAMLIB_EXPORT(
int)
3390 extern HAMLIB_EXPORT(
int)
3394 extern HAMLIB_EXPORT(
int)
3398 extern HAMLIB_EXPORT(
int)
3401 hamlib_token_t token,
3403 extern HAMLIB_EXPORT(
int)
3406 hamlib_token_t token,
3409 extern HAMLIB_EXPORT(
int)
3412 hamlib_token_t token,
3414 extern HAMLIB_EXPORT(
int)
3417 hamlib_token_t token,
3420 extern HAMLIB_EXPORT(
int)
3422 hamlib_token_t token,
3424 extern HAMLIB_EXPORT(
int)
3426 hamlib_token_t token,
3429 extern HAMLIB_EXPORT(
int)
3435 extern HAMLIB_EXPORT(
int)
3438 const struct confparams *,
3441 extern HAMLIB_EXPORT(
int)
3444 const struct confparams *,
3448 extern HAMLIB_EXPORT(const struct confparams *)
3452 extern HAMLIB_EXPORT(const struct confparams *)
3454 hamlib_token_t token));
3455 extern HAMLIB_EXPORT(hamlib_token_t)
3460 extern HAMLIB_EXPORT(
int)
3462 int (*cfunc)(const struct confparams *,
3466 extern HAMLIB_EXPORT(const struct confparams *)
3469 extern HAMLIB_EXPORT(hamlib_token_t)
3473 extern HAMLIB_EXPORT(
int)
3476 extern HAMLIB_EXPORT(
int)
3479 extern HAMLIB_EXPORT(
int)
3484 extern HAMLIB_EXPORT(
int)
3514 extern HAMLIB_EXPORT(
int)
3519 extern HAMLIB_EXPORT(
int)
3525 extern HAMLIB_EXPORT(
int)
3528 const
char *digits));
3529 extern HAMLIB_EXPORT(
int)
3535 extern HAMLIB_EXPORT(
int)
3540 extern HAMLIB_EXPORT(
int)
3544 extern HAMLIB_EXPORT(
int)
3548 extern HAMLIB_EXPORT(
int)
3553 extern HAMLIB_EXPORT(
int)
3557 extern HAMLIB_EXPORT(
int)
3562 extern HAMLIB_EXPORT(
int)
3566 extern HAMLIB_EXPORT(
int)
3571 extern HAMLIB_EXPORT(
int)
3580 extern HAMLIB_EXPORT(
int)
3586 extern HAMLIB_EXPORT(
scan_t)
3590 extern HAMLIB_EXPORT(
int)
3594 extern HAMLIB_EXPORT(
int)
3599 extern HAMLIB_EXPORT(
int)
3603 extern HAMLIB_EXPORT(
int)
3608 extern HAMLIB_EXPORT(
int)
3613 extern HAMLIB_EXPORT(
int)
3619 extern HAMLIB_EXPORT(
int)
3623 confval_cb_t parm_cb,
3625 extern HAMLIB_EXPORT(
int)
3629 confval_cb_t parm_cb,
3632 extern HAMLIB_EXPORT(
int)
3636 const struct confparams *,
3638 extern HAMLIB_EXPORT(
int)
3642 const struct confparams *,
3645 extern HAMLIB_EXPORT(const
chan_t *)
3649 extern HAMLIB_EXPORT(
int)
3652 extern HAMLIB_EXPORT(
int)
3655 extern HAMLIB_EXPORT(
int)
3659 extern HAMLIB_EXPORT(
int)
3664 extern HAMLIB_EXPORT(
int)
3668 extern HAMLIB_EXPORT(
int)
3673 extern HAMLIB_EXPORT(
int)
3678 extern HAMLIB_EXPORT(
int)
3683 extern HAMLIB_EXPORT(
int)
3688 extern HAMLIB_EXPORT(
int)
3693 extern HAMLIB_EXPORT(
int)
3697 extern HAMLIB_EXPORT(
int)
3701 extern HAMLIB_EXPORT(
int)
3705 extern HAMLIB_EXPORT(const
char *)
3708 extern HAMLIB_EXPORT(struct rig_caps *)
3709 rig_get_caps HAMLIB_PARAMS((
rig_model_t rig_model));
3716 extern HAMLIB_EXPORT(pbwidth_t)
3719 extern HAMLIB_EXPORT(pbwidth_t)
3722 extern HAMLIB_EXPORT(pbwidth_t)
3726 extern HAMLIB_EXPORT(const
char *)
3727 rigerror HAMLIB_PARAMS((
int errnum));
3728 extern HAMLIB_EXPORT(const
char *)
3731 extern HAMLIB_EXPORT(
int)
3734 #define HAMLIB_SETTINGS_FILE "hamlib_settings"
3742 extern HAMLIB_EXPORT(
void)
3743 rig_set_debug HAMLIB_PARAMS((enum rig_debug_level_e debug_level));
3745 extern HAMLIB_EXPORT(
void)
3746 rig_get_debug HAMLIB_PARAMS((enum rig_debug_level_e *debug_level));
3748 extern HAMLIB_EXPORT(
void)
3751 #define rig_set_debug_level(level) rig_set_debug(level)
3753 extern HAMLIB_EXPORT(
int)
3754 rig_need_debug HAMLIB_PARAMS((enum rig_debug_level_e debug_level));
3757 extern HAMLIB_EXPORT(
void)add2debugmsgsave(const
char *s);
3759 extern HAMLIB_EXPORT_VAR(
char) debugmsgsave[DEBUGMSGSAVE_SIZE];
3760 extern HAMLIB_EXPORT_VAR(
char) debugmsgsave2[DEBUGMSGSAVE_SIZE];
3762 extern HAMLIB_EXPORT_VAR(
char) debugmsgsave3[DEBUGMSGSAVE_SIZE];
3763 #define rig_debug_clear() { debugmsgsave[0] = debugmsgsave2[0] = debugmsgsave3[0] = 0; };
3767 #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)
3772 #define ELAPSED1 struct timespec __begin; elapsed_ms(&__begin, HAMLIB_ELAPSED_SET);
3773 #define ELAPSED2 rig_debug(RIG_DEBUG_VERBOSE, "%s%d:%s: elapsed=%.0lfms\n", spaces(STATE(rig)->depth), STATE(rig)->depth, __func__, elapsed_ms(&__begin, HAMLIB_ELAPSED_GET));
3776 #define SNPRINTF(s,n,...) { if (snprintf(s,n,##__VA_ARGS__) >= (n)) fprintf(stderr,"***** %s(%d): message truncated *****\n", __func__, __LINE__); }
3778 extern HAMLIB_EXPORT(
void)
3779 rig_debug HAMLIB_PARAMS((enum rig_debug_level_e debug_level,
3780 const
char *fmt, ...));
3782 extern HAMLIB_EXPORT(vprintf_cb_t)
3786 extern HAMLIB_EXPORT(FILE *)
3789 extern HAMLIB_EXPORT(
int)
3790 rig_register HAMLIB_PARAMS((struct rig_caps *caps));
3792 extern HAMLIB_EXPORT(
int)
3793 rig_unregister HAMLIB_PARAMS((
rig_model_t rig_model));
3795 extern HAMLIB_EXPORT(
int)
3796 rig_list_foreach HAMLIB_PARAMS((
int (*cfunc)(const struct rig_caps *, rig_ptr_t),
3799 extern HAMLIB_EXPORT(
int)
3800 rig_list_foreach_model HAMLIB_PARAMS((
int (*cfunc)(const
rig_model_t rig_model, rig_ptr_t),
3803 extern HAMLIB_EXPORT(
int)
3804 rig_load_backend HAMLIB_PARAMS((const
char *be_name));
3806 extern HAMLIB_EXPORT(
int)
3807 rig_check_backend HAMLIB_PARAMS((
rig_model_t rig_model));
3809 extern HAMLIB_EXPORT(
int)
3810 rig_load_all_backends HAMLIB_PARAMS((
void));
3812 typedef
int (*rig_probe_func_t)(const hamlib_port_t *,
rig_model_t, rig_ptr_t);
3814 extern HAMLIB_EXPORT(
int)
3819 extern HAMLIB_EXPORT(rig_model_t)
3820 rig_probe HAMLIB_PARAMS((hamlib_port_t *p));
3824 extern HAMLIB_EXPORT(const
char *)
rig_strrmode(rmode_t mode);
3825 extern HAMLIB_EXPORT(
int)
rig_strrmodes(rmode_t modes,
char *buf,
int buflen);
3826 extern HAMLIB_EXPORT(const
char *)
rig_strvfo(vfo_t vfo);
3828 extern HAMLIB_EXPORT(const
char *)
rig_strlevel(setting_t);
3829 extern HAMLIB_EXPORT(const
char *)
rig_strparm(setting_t);
3852 extern HAMLIB_EXPORT(const
char *)
rig_license HAMLIB_PARAMS((
void));
3853 extern HAMLIB_EXPORT(const
char *)
rig_version HAMLIB_PARAMS((
void));
3854 extern HAMLIB_EXPORT(const
char *)
rig_copyright HAMLIB_PARAMS((
void));
3856 extern HAMLIB_EXPORT(
void) rig_no_restore_ai(
void);
3858 extern HAMLIB_EXPORT(
int) rig_get_cache_timeout_ms(RIG *rig, hamlib_cache_t selection);
3859 extern HAMLIB_EXPORT(
int) rig_set_cache_timeout_ms(RIG *rig, hamlib_cache_t selection,
int ms);
3862 extern HAMLIB_EXPORT(
int)
rig_get_vfo_info(RIG *rig, vfo_t vfo, freq_t *freq, rmode_t *mode, pbwidth_t *width,
split_t *split,
int *satmode);
3863 extern HAMLIB_EXPORT(
int)
rig_get_rig_info(RIG *rig,
char *response,
int max_response_len);
3864 extern HAMLIB_EXPORT(
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);
3865 extern HAMLIB_EXPORT(
int)
rig_get_cache_freq(RIG *rig, vfo_t vfo, freq_t *freq,
int * cache_ms_freq);
3867 extern 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);
3868 extern 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);
3870 typedef
unsigned long rig_useconds_t;
3871 extern HAMLIB_EXPORT(
int) hl_usleep(rig_useconds_t msec);
3873 extern HAMLIB_EXPORT(
int)
rig_cookie(RIG *rig, enum
cookie_e cookie_cmd,
char *cookie,
int cookie_len);
3875 extern HAMLIB_EXPORT(
int) rig_password(RIG *rig, const
char *key1);
3876 extern HAMLIB_EXPORT(
void) rig_password_generate_secret(
char *pass,
3877 char result[HAMLIB_SECRET_LENGTH + 1]);
3878 extern HAMLIB_EXPORT(
int) rig_send_raw(RIG *rig, const
unsigned char* send,
int send_len,
unsigned char* reply,
int reply_len,
unsigned char *term);
3880 extern HAMLIB_EXPORT(
int)
3886 extern HAMLIB_EXPORT(
int)
3889 const
char *locator));
3891 extern HAMLIB_EXPORT(
char*) rig_make_md5(
char *pass);
3893 extern HAMLIB_EXPORT(
int) rig_set_lock_mode(RIG *rig,
int lock);
3894 extern HAMLIB_EXPORT(
int) rig_get_lock_mode(RIG *rig,
int *lock);
3896 extern HAMLIB_EXPORT(
int) rig_is_model(RIG *rig, rig_model_t model);
3898 extern HAMLIB_EXPORT(
char*) rig_date_strget(
char *buf,
int buflen,
int localtime);
3900 enum GPIO { GPIO1, GPIO2, GPIO3, GPIO4 };
3901 extern HAMLIB_EXPORT(
int) rig_cm108_get_bit(hamlib_port_t *p, enum GPIO gpio,
int *bit);
3902 extern HAMLIB_EXPORT(
int) rig_cm108_set_bit(hamlib_port_t *p, enum GPIO gpio,
int bit);
3905 extern HAMLIB_EXPORT(
void *) rig_data_pointer(RIG *rig, rig_ptrx_t idx);
const char * rig_strstatus(enum rig_status_e status)
Convert enum RIG_STATUS_... to printable string.
Definition: misc.c:427
rig_port_t port_type
Definition: rig.h:2840
scan_t rig_has_scan(RIG *rig, scan_t scan)
check availability of scanning functions
Definition: rig.c:7141
setting_t funcs
Definition: rig.h:1640
enum serial_handshake_e serial_handshake
Definition: rig.h:2846
int multicast_data_port
Definition: rig.h:2882
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:549
hamlib_token_t token
Definition: rig.h:903
int rig_get_mem(RIG *rig, vfo_t vfo, int *ch)
get the current memory channel number
Definition: mem.c:131
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:585
vfo_cb_t vfo_event
Definition: rig.h:3074
int auto_power_on
Definition: rig.h:2786
rig_debug_level_e
Hamlib debug levels.
Definition: rig.h:243
struct rig_callbacks callbacks
Definition: rig.h:3101
double vfo_comp
Definition: rig.h:2920
value_t step
Definition: rig.h:1734
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:716
unsigned tuning_step
Definition: rig.h:1637
const char * rig_strspectrummode(enum rig_spectrum_mode_e mode)
Convert enum RIG_SPECTRUM_MODE_... to alpha string.
Definition: misc.c:1811
unsigned channel_desc
Definition: rig.h:1648
vfo_op_t vfo_ops
Definition: rig.h:2857
unsigned tx_vfo
Definition: rig.h:1634
int rig_set_uplink(RIG *rig, int val)
For GPredict to avoid reading frequency on uplink VFO.
Definition: rig.c:1906
setting_t rig_has_get_level(RIG *rig, setting_t level)
check retrieval ability of level settings
Definition: settings.c:309
setting_t has_set_func
Definition: rig.h:2745
struct ext_list * ext_levels
Definition: rig.h:1606
hamlib_bandselect_t
Definition: rig.h:796
int raw
Definition: rig.h:1749
int rig_set_dcd_callback(RIG *rig, dcd_cb_t cb, rig_ptr_t arg)
set the callback for dcd events
Definition: event.c:491
double freq_t
Frequency type,.
Definition: rig.h:458
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:310
int rig_get_dcd(RIG *rig, vfo_t vfo, dcd_t *dcd)
get the status of the DCD
Definition: rig.c:4196
value_t min
Definition: rig.h:1732
int use_cached_mode
Definition: rig.h:3017
rig_ptr_t spectrum_arg
Definition: rig.h:3083
shortfreq_t max_ifshift
Definition: rig.h:2936
unsigned bank_num
Definition: rig.h:1622
int rig_set_dcs_code(RIG *rig, vfo_t vfo, tone_t code)
set the current encoding DCS code
Definition: tones.c:230
Filter definition.
Definition: rig.h:1526
vfo_t tx_vfo
Definition: rig.h:2772
float f
Definition: rig.h:1030
int rig_set_channel(RIG *rig, vfo_t vfo, const channel_t *chan)
set channel data
Definition: mem.c:684
int rig_set_vfo(RIG *rig, vfo_t vfo)
set the current VFO
Definition: rig.c:3290
scan_t
Rig Scan operation.
Definition: rig.h:845
float step
Definition: rig.h:913
int rig_get_rig_info(RIG *rig, char *response, int max_response_len)
get freq/mode/width for requested VFO
Definition: rig.c:7918
shortfreq_t xit
Definition: rig.h:1596
void rig_debug(enum rig_debug_level_e debug_level, const char *fmt,...)
Print debugging messages through stderr by default.
Definition: debug.c:206
dcd_type_t dcd_type
Definition: rig.h:2839
uint32_t rig_model_t
Convenience type definition for rig model.
Definition: riglist.h:708
int chan_desc_sz
Definition: rig.h:2861
unsigned tx_width
Definition: rig.h:1631
pbwidth_t tx_width
Definition: rig.h:1587
char tag[32]
Definition: rig.h:1608
int low_power
Definition: rig.h:1463
hamlib_port_t_deprecated rigport_deprecated
Definition: rig.h:2717
hamlib_port_t_deprecated dcdport_deprecated
Definition: rig.h:2719
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:1326
FILE * rig_set_debug_file(FILE *stream)
Change the output stream from stderr a different stream.
Definition: debug.c:334
freq_range_t rx_range_list[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2923
rig_ptr_t priv
Definition: rig.h:2962
const char * dflt
Definition: rig.h:907
void rig_get_debug(enum rig_debug_level_e *debug_level)
Get the current debug level.
Definition: debug.c:160
int rig_send_morse(RIG *rig, vfo_t vfo, const char *msg)
send morse code
Definition: rig.c:7399
const char * cs
Definition: rig.h:1032
rig_ptr_t pltune_arg
Definition: rig.h:3081
int serial_data_bits
Definition: rig.h:2843
int transaction_active
Definition: rig.h:2759
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:6713
Deprecated Rig state containing live data and customized fields. Due to DLL problems this remains in-...
Definition: rig.h:2906
freq_t endf
Definition: rig.h:1461
powerstat_t powerstat
Definition: rig.h:2822
int twiddle_timeout
Definition: rig.h:2980
shortfreq_t max_ifshift
Definition: rig.h:2737
gran_t level_gran[64]
Definition: rig.h:2950
pbwidth_t rig_passband_wide(RIG *rig, rmode_t mode)
get the wide passband of a mode
Definition: rig.c:3231
freq_range_t rx_range_list1[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2862
int uplink
Definition: rig.h:2783
gran_t level_gran[64]
Definition: rig.h:2751
vfo_t vfo
Definition: rig.h:1579
const char * model_name
Definition: rig.h:2832
unsigned rptr_offs
Definition: rig.h:1636
const char * rig_strlevel(setting_t level)
Convert enum RIG_LEVEL_... to alpha string.
Definition: misc.c:1179
int rig_set_bank(RIG *rig, vfo_t vfo, int bank)
set the current memory bank
Definition: mem.c:194
hamlib_token_t rig_token_lookup(RIG *rig, const char *name)
lookup a token id
Definition: conf.c:1439
int ptt_share
Definition: rig.h:2992
int rig_scan(RIG *rig, vfo_t vfo, scan_t scan, int ch)
perform Memory/VFO operations
Definition: rig.c:7174
int freq_skip
Definition: rig.h:2892
const struct confparams * rig_ext_lookup_tok(RIG *rig, hamlib_token_t token)
lookup ext token, return pointer to confparams struct.
Definition: ext.c:279
int rig_get_freq(RIG *rig, vfo_t vfo, freq_t *freq)
get the frequency of the target VFO
Definition: rig.c:2413
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:6639
rig_parm_e
Rig Parameters.
Definition: rig.h:1138
struct cal_table::@3 table[HAMLIB_MAX_CAL_LENGTH]
Tuning step definition.
Definition: rig.h:1491
hamlib_token_t rig_ext_token_lookup(RIG *rig, const char *name)
Simple lookup returning token id associated with name.
Definition: ext.c:324
int rig_get_xit(RIG *rig, vfo_t vfo, shortfreq_t *xit)
get the current XIT offset
Definition: rig.c:6234
setting_t rig_has_set_level(RIG *rig, setting_t level)
check settable ability of level settings
Definition: settings.c:339
vfo_op_t rig_has_vfo_op(RIG *rig, vfo_op_t op)
check retrieval ability of VFO operations
Definition: rig.c:7029
int rig_set_ptt(RIG *rig, vfo_t vfo, ptt_t ptt)
set PTT on/off
Definition: rig.c:3540
pbwidth_t current_width
Definition: rig.h:2970
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:132
int rig_set_trn(RIG *rig, int trn)
control the transceive mode
Definition: event.c:582
Frequency range.
Definition: rig.h:1459
ann_t announces
Definition: rig.h:2739
Calibration table struct for float values.
Definition: rig.h:1776
hamlib_port_t dcdport
Definition: rig.h:3012
double signal_strength_min
Definition: rig.h:1854
const char * rig_strparm(setting_t parm)
Convert enum RIG_PARM_... to alpha string.
Definition: misc.c:1353
powerstat_t
Radio power state.
Definition: rig.h:710
Definition: network.c:145
time_t twiddle_time
Definition: rig.h:2979
int lock_mode
Definition: rig.h:2821
int startc
Definition: rig.h:1698
rig_model_t rig_model
Definition: rig.h:2831
value_t levels[64]
Definition: rig.h:1598
int vfo_list
Definition: rig.h:2761
double signal_strength_max
Definition: rig.h:1855
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:521
signed long shortfreq_t
Short frequency type.
Definition: rig.h:480
vfo_t rx_vfo
Definition: rig.h:2999
int async_data_enabled
Definition: rig.h:2965
chan_type_t rig_parse_mtype(const char *s)
Convert alpha string to enum RIG_MTYPE_...
Definition: misc.c:1746
struct filter_list filters[HAMLIB_FLTLSTSIZ]
Definition: rig.h:2729
unsigned flags
Definition: rig.h:1647
setting_t has_get_func
Definition: rig.h:2744
signed int i
Definition: rig.h:1028
pbwidth_t current_width
Definition: rig.h:2771
setting_t has_get_parm
Definition: rig.h:2748
int poll_interval
Definition: rig.h:2966
const chan_t * rig_lookup_mem_caps(RIG *rig, int ch)
lookup the memory type and capabilities
Definition: mem.c:1587
freq_t freq
Definition: rig.h:1581
setting_t rig_has_set_func(RIG *rig, setting_t func)
check ability of radio functions
Definition: settings.c:457
void rig_set_debug(enum rig_debug_level_e debug_level)
Change the current debug level.
Definition: debug.c:147
setting_t has_get_parm
Definition: rig.h:2947
freq_range_t tx_range_list[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2725
int use_cached_mode
Definition: rig.h:2818
rig_ptr_t ptt_arg
Definition: rig.h:3077
powerstat_t powerstat
Definition: rig.h:3021
uint64_t rig_idx2setting(int i)
Definition: misc.c:798
freq_t center_freq
Definition: rig.h:1859
hamlib_port_t pttport
Definition: rig.h:3011
int rig_set_conf(RIG *rig, hamlib_token_t token, const char *val)
set a radio configuration parameter
Definition: conf.c:1470
rig_ptr_t obj
Definition: rig.h:2963
int power_max
Definition: rig.h:2796
setting_t has_set_level
Definition: rig.h:2946
int comm_state
Definition: rig.h:2961
int rig_set_vfo_callback(RIG *rig, vfo_cb_t cb, rig_ptr_t arg)
set the callback for vfo events
Definition: event.c:435
setting_t rig_parse_func(const char *s)
Convert alpha string to enum RIG_FUNC_...
Definition: misc.c:810
pbwidth_t width
Definition: rig.h:1583
rmode_t mode
Definition: rig.h:1582
shortfreq_t tuning_step
Definition: rig.h:1594
freq_t current_freq
Definition: rig.h:2768
freq_range_t tx_range_list2[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2865
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:6546
int rig_probe_all(hamlib_port_t *port, rig_probe_func_t cfunc, rig_ptr_t data)
try to guess rigs
Definition: rig.c:7000
float val
Definition: rig.h:1780
int auto_power_off
Definition: rig.h:2987
freq_t startf
Definition: rig.h:1460
int post_ptt_delay
Definition: rig.h:2890
int rig_send_dtmf(RIG *rig, vfo_t vfo, const char *digits)
send DTMF digits
Definition: rig.c:7246
serial_handshake_e
Serial handshake.
Definition: rig.h:345
int high_power
Definition: rig.h:1464
struct confparams::@0::@2 c
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:5030
struct tuning_step_list tuning_steps[HAMLIB_TSLSTSIZ]
Definition: rig.h:2926
int rig_set_func(RIG *rig, vfo_t vfo, setting_t func, int status)
activate/de-activate functions of radio
Definition: settings.c:488
unsigned vfo
Definition: rig.h:1623
unsigned mode
Definition: rig.h:1626
const char * rig_strvfo(vfo_t vfo)
Convert enum RIG_VFO_... to alpha string.
Definition: misc.c:670
shortfreq_t pbwidth_t
Definition: rig.h:650
int ptt_share
Definition: rig.h:2793
Spectrum scope.
Definition: rig.h:1811
Spectrum scope averaging modes.
Definition: rig.h:1831
int rig_set_freq_callback(RIG *rig, freq_cb_t cb, rig_ptr_t arg)
set the callback for freq events
Definition: event.c:379
Channel capability definition.
Definition: rig.h:1621
int bank_qty
Definition: rig.h:2860
int rig_set_ctcss_sql(RIG *rig, vfo_t vfo, tone_t tone)
set CTCSS squelch
Definition: tones.c:364
shortfreq_t rig_get_resolution(RIG *rig, rmode_t mode)
get the best frequency resolution of the rig
Definition: rig.c:6778
Channel structure.
Definition: rig.h:1576
ann_t announces
Definition: rig.h:2938
vfo_op_t
VFO operation.
Definition: rig.h:752
rptr_shift_t
Repeater shift type.
Definition: rig.h:437
int size
Definition: rig.h:1747
int power_now
Definition: rig.h:2794
const char * rig_license()
get the Hamlib license
Definition: rig.c:8164
int serial_rate_min
Definition: rig.h:2841
int rig_wait_morse(RIG *rig, vfo_t vfo)
wait morse code
Definition: rig.c:7604
setting_t has_set_parm
Definition: rig.h:2948
int rig_setting2idx(setting_t s)
basically convert setting_t expressed 2^n to n
Definition: settings.c:971
rig_spectrum_mode_e
Spectrum scope modes.
Definition: rig.h:1820
unsigned int u
Definition: rig.h:1029
const char * rig_strfunc(setting_t func)
Convert enum RIG_FUNC_... to alpha string.
Definition: misc.c:886
int rig_set_vfo_opt(RIG *rig, int status)
set the vfo option for rigctld
Definition: rig.c:7812
Extension attribute definition.
Definition: rig.h:1559
struct rig_spectrum_scope spectrum_scopes[HAMLIB_MAX_SPECTRUM_SCOPES]
Definition: rig.h:2872
gran_t parm_gran[64]
Definition: rig.h:2951
rmode_t mode_list
Definition: rig.h:2972
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:2702
int rig_set_xit(RIG *rig, vfo_t vfo, shortfreq_t xit)
set the XIT
Definition: rig.c:6162
setting_t rig_has_get_parm(RIG *rig, setting_t parm)
check retrieval ability of parameter settings
Definition: settings.c:369
freq_range_t rx_range_list5[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2870
int async_data_supported
Definition: rig.h:2852
enum serial_parity_e serial_parity
Definition: rig.h:2845
Universal approach for passing values.
Definition: rig.h:1027
hamlib_port_t_deprecated pttport_deprecated
Definition: rig.h:2917
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:5268
char * multicast_cmd_addr
Definition: rig.h:2883
const char * rig_strptrshift(rptr_shift_t shift)
convert enum RIG_RPT_SHIFT_... to printable character
Definition: misc.c:1675
int twiddle_rit
Definition: rig.h:2798
vfo_t rig_parse_vfo(const char *s)
Convert alpha string to enum RIG_VFO_...
Definition: misc.c:641
freq_range_t tx_range_list1[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2863
const char * rig_strscan(scan_t rscan)
Convert enum RIG_SCAN_... to alpha string.
Definition: misc.c:1646
freq_t offset_vfob
Definition: rig.h:3025
setting_t has_set_parm
Definition: rig.h:2749
vfo_t tx_vfo
Definition: rig.h:2971
int vfo_opt
Definition: rig.h:2984
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:847
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:7776
freq_range_t tx_range_list5[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2871
vfo_t current_vfo
Definition: rig.h:2959
freq_range_t rx_range_list2[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2864
unsigned ant
Definition: rig.h:1624
freq_cb_t freq_event
Definition: rig.h:3070
ptt_type_t ptt_type
Definition: rig.h:2838
setting_t has_get_func
Definition: rig.h:2943
vfo_t current_vfo
Definition: rig.h:2760
rig_ptr_t dcd_arg
Definition: rig.h:3079
int auto_power_off
Definition: rig.h:2788
int rig_get_ptt(RIG *rig, vfo_t vfo, ptt_t *ptt)
get the status of the PTT
Definition: rig.c:3871
hamlib_port_t pttport
Definition: rig.h:2812
The Rig structure.
Definition: rig.h:3097
int write_delay
Definition: rig.h:2847
dcd_type_t
DCD type.
Definition: rig.h:665
struct multicast_s * multicast
Definition: rig.h:2827
int rig_reset(RIG *rig, reset_t reset)
reset the radio
Definition: rig.c:6927
rmode_t modes
Definition: rig.h:1462
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:8125
pltune_cb_t pltune
Definition: rig.h:3080
unsigned char disable_yaesu_bandselect
Definition: rig.h:2996
tone_t dcs_code
Definition: rig.h:1601
char * s
Definition: rig.h:1031
int rig_get_conf(RIG *rig, hamlib_token_t token, char *val)
get the value of a configuration parameter
Definition: conf.c:1531
int raw
Definition: rig.h:1779
freq_t offset_vfob
Definition: rig.h:2826
setting_t rig_has_set_parm(RIG *rig, setting_t parm)
check settable ability of parameter settings
Definition: settings.c:398
struct tuning_step_list tuning_steps[HAMLIB_TSLSTSIZ]
Definition: rig.h:2727
unsigned tag
Definition: rig.h:1650
meter_level_e
Level display meters.
Definition: rig.h:1008
chan_type_t
Memory channel type definition.
Definition: rig.h:1669
setting_t has_set_level
Definition: rig.h:2747
spectrum_cb_t spectrum_event
Definition: rig.h:3082
const char * rig_stragclevel(enum agc_level_e level)
Convert enum RIG_AGC_... to alpha string.
Definition: misc.c:1429
int channel_num
Definition: rig.h:1577
setting_t rig_has_get_func(RIG *rig, setting_t func)
check ability of radio functions
Definition: settings.c:427
rig_status_e
Development status of the backend.
Definition: rig.h:417
const char * rig_copyright()
get the Hamlib copyright
Definition: rig.c:8184
rig_comm_status_t comm_status
Definition: rig.h:2887
const struct confparams * rig_confparam_lookup(RIG *rig, const char *name)
lookup a confparam struct
Definition: conf.c:1369
char * multicast_data_addr
Definition: rig.h:2881
struct rig_state_deprecated state_deprecated
Definition: rig.h:3100
setting_t has_get_level
Definition: rig.h:2945
shortfreq_t max_rit
Definition: rig.h:2735
char * tuner_control_pathname
Definition: rig.h:3022
rmode_t modes
Definition: rig.h:1492
scan_t rig_parse_scan(const char *s)
Convert alpha string to enum RIG_SCAN_...
Definition: misc.c:1621
int rig_set_chan_all(RIG *rig, vfo_t vfo, const channel_t chans[])
set all channel data
Definition: mem.c:1167
rig_function_e
Rig data structure.
Definition: rig.h:2219
shortfreq_t max_rit
Definition: rig.h:2934
int rig_set_mem(RIG *rig, vfo_t vfo, int ch)
set the current memory channel number
Definition: mem.c:68
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:944
struct rig_state state
Definition: rig.h:3103
int poll_interval
Definition: rig.h:2767
int post_write_delay
Definition: rig.h:2848
unsigned split
Definition: rig.h:1633
freq_range_t rx_range_list4[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2868
int rig_open(RIG *rig)
open the communication to the rig
Definition: rig.c:934
unsigned rit
Definition: rig.h:1638
int rig_get_dcs_sql(RIG *rig, vfo_t vfo, tone_t *code)
get the current DCS code
Definition: tones.c:558
agc_level_e
AGC delay settings.
Definition: rig.h:383
int vfo_list
Definition: rig.h:2960
int transmit
Definition: rig.h:2776
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:1460
enum rig_status_e status
Definition: rig.h:2836
void rig_set_debug_time_stamp(int flag)
Enable or disable the time stamp on debugging output.
Definition: debug.c:190
tone_t * ctcss_list
Definition: rig.h:2855
Rig state containing live data and customized fields.
Definition: rig.h:2708
vfo_t rx_vfo
Definition: rig.h:2800
int rig_need_debug(enum rig_debug_level_e debug_level)
Test if a given debug level is active.
Definition: debug.c:176
shortfreq_t rit
Definition: rig.h:1595
hamlib_port_t rigport
Definition: rig.h:3010
int transceive
Definition: rig.h:2859
int rig_set_mode_callback(RIG *rig, mode_cb_t cb, rig_ptr_t arg)
set the callback for mode events
Definition: event.c:407
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:781
time_t twiddle_time
Definition: rig.h:2780
struct rig_caps * caps
Definition: rig.h:3098
freq_range_t rx_range_list[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2724
int twiddle_state
Definition: rig.h:2998
freq_range_t tx_range_list4[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2869
ann_t
Announce.
Definition: rig.h:927
int rig_get_rptr_shift(RIG *rig, vfo_t vfo, rptr_shift_t *rptr_shift)
get the current repeater shift
Definition: rig.c:4419
multicast_item_e
Multicast data items 3 different data item can be included in the multicast JSON. ...
Definition: rig.h:1181
int rig_cleanup(RIG *rig)
release a rig handle and free associated memory
Definition: rig.c:1838
RIG * rig_init(rig_model_t rig_model)
Allocate a new RIG handle.
Definition: rig.c:531
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:1079
pbwidth_t rig_passband_normal(RIG *rig, rmode_t mode)
get the normal passband of a mode
Definition: rig.c:3127
int use_cached_ptt
Definition: rig.h:2819
setting_t rig_parse_parm(const char *s)
Convert alpha string to RIG_PARM_...
Definition: misc.c:1303
unsigned xit
Definition: rig.h:1639
int serial_rate_max
Definition: rig.h:2842
int targetable_vfo
Definition: rig.h:2851
int rig_set_rptr_shift(RIG *rig, vfo_t vfo, rptr_shift_t rptr_shift)
set the repeater shift
Definition: rig.c:4341
#define RIG_SETTING_MAX
Maximum # of rig settings.
Definition: rig.h:1209
unsigned int ant_t
Antenna typedef.
Definition: rig.h:984
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:1394
char * label
Definition: rig.h:1467
setting_t rig_parse_level(const char *s)
Convert alpha string to enum RIG_LEVEL_...
Definition: misc.c:1098
int rig_set_twiddle(RIG *rig, int seconds)
timeout (secs) to stop rigctld when VFO is manually changed
Definition: rig.c:1882
const char * name
Definition: rig.h:904
int scan_group
Definition: rig.h:1603
rig_ptr_t mode_arg
Definition: rig.h:3073
int rig_set_parm(RIG *rig, setting_t parm, value_t val)
set a radio parameter
Definition: settings.c:241
int rig_flush_force(hamlib_port_t *port, int flush_async_data)
Force flush of rig communication data buffers.
Definition: misc.c:2265
reset_t
Reset operation.
Definition: rig.h:722
int rig_get_rptr_offs(RIG *rig, vfo_t vfo, shortfreq_t *rptr_offs)
get the current repeater offset
Definition: rig.c:4580
int rig_send_voice_mem(RIG *rig, vfo_t vfo, int ch)
send voice memory content
Definition: rig.c:7669
int depth
Definition: rig.h:3019
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:1126
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:8025
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:549
uint64_t rig_level_e
Rig Level Settings.
Definition: rig.h:1050
freq_range_t tx_range_list[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2924
rig_errcode_e
Definition: rig.h:190
int use_cached_freq
Definition: rig.h:2817
int deprecated_itu_region
Definition: rig.h:2922
Rig cache data.
Definition: rig.h:2591
int rig_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width)
Definition: rig.c:2959
int rig_get_vfo_list(RIG *rig, char *buf, int buflen)
get list of available vfos
Definition: rig.c:8106
Hamlib rig(radio) model definitions.
rig_conf_e
parameter types
Definition: rig.h:884
int power_now
Definition: rig.h:2993
rmode_t mode_list
Definition: rig.h:2773
enum rig_port_e rig_port_t
Port type.
setting_t levels
Definition: rig.h:1641
rmode_t tx_mode
Definition: rig.h:1586
int rig_set_ptt_callback(RIG *rig, ptt_cb_t cb, rig_ptr_t arg)
set the callback for ptt events
Definition: event.c:463
int rig_set_dcs_sql(RIG *rig, vfo_t vfo, tone_t code)
set the current DCS code
Definition: tones.c:495
unsigned ctcss_tone
Definition: rig.h:1642
ptt_type_t
PTT type.
Definition: rig.h:694
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:5574
setting_t funcs
Definition: rig.h:1597
int uplink
Definition: rig.h:2982
int rig_set_ant(RIG *rig, vfo_t vfo, ant_t ant, value_t option)
set the antenna
Definition: rig.c:6466
hamlib_band_t
Band enumeration.
Definition: rig.h:776
int rig_recv_dtmf(RIG *rig, vfo_t vfo, char *digits, int *length)
receive DTMF digits
Definition: rig.c:7323
int timeout
Definition: rig.h:2849
Calibration table struct.
Definition: rig.h:1746
serial_parity_e
Serial parity.
Definition: rig.h:333
const char * hamlib_copyright2
Hamlib copyright notice.
Definition: rig.c:112
int vfo_opt
Definition: rig.h:2785
int longlat2locator(double longitude, double latitude, char *locator, int pair_count)
Convert longitude/latitude to QRA locator (Maidenhead grid square).
Definition: locator.c:545
int rig_get_parm(RIG *rig, setting_t parm, value_t *val)
get the value of a parameter
Definition: settings.c:275
freq_t spectrum_spans[HAMLIB_MAX_SPECTRUM_SPANS]
Definition: rig.h:2874
freq_t low_edge_freq
Definition: rig.h:1862
int id
Definition: rig.h:1850
int size
Definition: rig.h:1777
freq_t high_edge_freq
Definition: rig.h:1863
gran_t parm_gran[64]
Definition: rig.h:2752
tone_t ctcss_tone
Definition: rig.h:1599
value_t val
Definition: rig.h:1561
int rig_get_chan_all(RIG *rig, vfo_t vfo, channel_t chans[])
get all channel data
Definition: mem.c:1210
setting_t has_get_level
Definition: rig.h:2746
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:5913
int rig_get_ctcss_sql(RIG *rig, vfo_t vfo, tone_t *tone)
get the current CTCSS squelch
Definition: tones.c:432
shortfreq_t ts
Definition: rig.h:1493
const char * rig_strrmode(rmode_t mode)
Convert enum RIG_MODE to alpha string.
Definition: misc.c:540
int power_min
Definition: rig.h:2994
hamlib_port_t rigport
Definition: rig.h:2811
int rig_set_ext_parm(RIG *rig, hamlib_token_t token, value_t val)
set a radio parm extra parameter
Definition: settings.c:912
int auto_disable_screensaver
Definition: rig.h:2790
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:5432
unsigned tx_mode
Definition: rig.h:1630
int rig_get_powerstat(RIG *rig, powerstat_t *status)
get the on/off status of the radio
Definition: rig.c:6872
pbwidth_t width
Definition: rig.h:1528
freq_t span_freq
Definition: rig.h:1860
freq_t offset_vfoa
Definition: rig.h:3024
enum rig_spectrum_mode_e spectrum_modes[HAMLIB_MAX_SPECTRUM_MODES]
Definition: rig.h:2873
rmode_t current_mode
Definition: rig.h:2968
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:5662
enum rig_spectrum_mode_e spectrum_mode
Definition: rig.h:1857
hamlib_port_t_deprecated port_t_deprecated
Port definition.
Definition: rig.h:2503
int rig_get_trn(RIG *rig, int *trn)
get the current transceive mode
Definition: event.c:606
unsigned int flags
Definition: rig.h:1604
freq_t lo_freq
Definition: rig.h:2779
unsigned rptr_shift
Definition: rig.h:1635
int rig_stop_morse(RIG *rig, vfo_t vfo)
stop morse code
Definition: rig.c:7495
int rig_get_twiddle(RIG *rig, int *seconds)
get the twiddle timeout value (secs)
Definition: rig.c:1933
const char * version
Definition: rig.h:2834
int rig_get_ctcss_tone(RIG *rig, vfo_t vfo, tone_t *tone)
get the current CTCSS sub-tone frequency
Definition: tones.c:166
ant_t ant
Definition: rig.h:1580
int use_cached_freq
Definition: rig.h:3016
const char * rig_strvfop(vfo_op_t op)
Convert enum RIG_OP_... to alpha string.
Definition: misc.c:1576
const char * rigerror2(int errnum)
get string describing the error code
Definition: rig.c:441
freq_t offset_vfoa
Definition: rig.h:2825
const char * combostr[RIG_COMBO_MAX]
Definition: rig.h:916
split_t
Split mode.
Definition: rig.h:447
struct multicast_s * multicast
Definition: rig.h:3026
int rig_set_freq(RIG *rig, vfo_t vfo, freq_t freq)
set the frequency of the target VFO
Definition: rig.c:2064
chan_type_t type
Definition: rig.h:1700
int transmit
Definition: rig.h:2975
int rig_get_split_freq(RIG *rig, vfo_t vfo, freq_t *tx_freq)
get the current split frequencies
Definition: rig.c:4853
Callback functions and args for rig event.
Definition: rig.h:3069
int rig_stop_voice_mem(RIG *rig, vfo_t vfo)
stop sending voice memory
Definition: rig.c:7738
const char * tooltip
Definition: rig.h:906
long hamlib_token_t
configuration token
Definition: rig.h:861
int rig_mem_count(RIG *rig)
get memory channel count
Definition: mem.c:1652
Memory channel list definition.
Definition: rig.h:1697
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:2761
cookie_e
Rig Cookie enumerations.
Definition: rig.h:1171
unsigned ctcss_sql
Definition: rig.h:1643
level/parm granularity definition
Definition: rig.h:1731
rig_model_t rig_probe(hamlib_port_t *port)
try to guess a rig
Definition: rig.c:6972
rig_caps_int_e
Enumeration of rig->caps values.
Definition: rig.h:2322
char * tuner_control_pathname
Definition: rig.h:2823
shortfreq_t rptr_offs
Definition: rig.h:1593
const char * rig_strcommstatus(rig_comm_status_t status)
Convert enum RIG_COMM_STATUS... to alpha string.
Definition: misc.c:2757
unsigned freq
Definition: rig.h:1625
ptt_t
PTT status.
Definition: rig.h:681
int data_level_max
Definition: rig.h:1853
float min
Definition: rig.h:911
char channel_desc[HAMLIB_MAXCHANDESC]
Definition: rig.h:1605
int rig_close(RIG *rig)
close the communication to the rig
Definition: rig.c:1661
struct cal_table_float::@4 table[HAMLIB_MAX_CAL_LENGTH]
int deprecated_itu_region
Definition: rig.h:2723
int bank_num
Definition: rig.h:1578
int doppler
Definition: rig.h:2880
int power_min
Definition: rig.h:2795
char client_version[32]
Definition: rig.h:2824
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:1307
unsigned tx_freq
Definition: rig.h:1629
int twiddle_rit
Definition: rig.h:2997
rmode_t modes
Definition: rig.h:1527
unsigned dcs_code
Definition: rig.h:1644
enum agc_level_e rig_levelagcvalue(int agcValue)
Convert a value to agc_level_e – constrains the range.
Definition: misc.c:1474
struct freq_range_list freq_range_t
Frequency range.
dcd_e
Definition: rig.h:654
int retry
Definition: rig.h:2850
rig_type_t
Rig type flags.
Definition: rig.h:365
rmode_t rig_parse_mode(const char *s)
Convert alpha string to enum RIG_MODE.
Definition: misc.c:513
struct rig_spectrum_avg_mode spectrum_avg_modes[HAMLIB_MAX_SPECTRUM_AVG_MODES]
Definition: rig.h:2875
unsigned int vfo_t
VFO definition.
Definition: rig.h:518
int rig_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
get the value of a level
Definition: settings.c:153
freq_range_t rx_range_list3[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2866
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:650
unsigned width
Definition: rig.h:1627
ptt_cb_t ptt_event
Definition: rig.h:3076
freq_t current_freq
Definition: rig.h:2967
rptr_shift_t rig_parse_rptr_shift(const char *s)
Convert alpha char to enum RIG_RPT_SHIFT_...
Definition: misc.c:1700
struct confparams::@0::@1 n
hamlib_port_t_deprecated dcdport_deprecated
Definition: rig.h:2918
enum rig_conf_e type
Definition: rig.h:908
vfo_t vfo
Definition: rig.h:1465
int preamp[HAMLIB_MAXDBLSTSIZ]
Definition: rig.h:2741
int locator2longlat(double *longitude, double *latitude, const char *locator)
Convert QRA locator (Maidenhead grid square) to Longitude/Latitude.
Definition: locator.c:451
int agc_level_count
Definition: rig.h:2853
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:1528
int rig_get_dcs_code(RIG *rig, vfo_t vfo, tone_t *code)
get the current encoding DCS code
Definition: tones.c:293
freq_range_t tx_range_list3[HAMLIB_FRQRANGESIZ]
Definition: rig.h:2867
const char * rig_strmtype(chan_type_t mtype)
Convert enum RIG_MTYPE_... to alpha string.
Definition: misc.c:1771
int rig_get_channel(RIG *rig, vfo_t vfox, channel_t *chan, int read_only)
get channel data
Definition: mem.c:828
int data_level_min
Definition: rig.h:1852
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:182
freq_t tx_freq
Definition: rig.h:1585
vfo_t tx_vfo
Definition: rig.h:1590
mode_cb_t mode_event
Definition: rig.h:3072
vprintf_cb_t rig_set_debug_callback(vprintf_cb_t cb, rig_ptr_t arg)
Set callback to handle debugging messages.
Definition: debug.c:316
int async_data_enabled
Definition: rig.h:2766
rig_ptr_t freq_arg
Definition: rig.h:3071
int endc
Definition: rig.h:1699
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:2364
enum agc_level_e agc_levels[HAMLIB_MAX_AGC_LEVELS]
Definition: rig.h:2854
tone_t * dcs_list
Definition: rig.h:2856
size_t spectrum_data_length
Definition: rig.h:1865
tone_t dcs_sql
Definition: rig.h:1602
int rig_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
set a radio level setting
Definition: settings.c:73
cal_table_t str_cal
Definition: rig.h:2930
int auto_disable_screensaver
Definition: rig.h:2989
int transaction_active
Definition: rig.h:2958
uint64_t setting_t
Setting.
Definition: rig.h:1203
int twiddle_state
Definition: rig.h:2799
int twiddle_timeout
Definition: rig.h:2781
cal_table_t str_cal
Definition: rig.h:2731
dcd_cb_t dcd_event
Definition: rig.h:3078
rig_ptr_t vfo_arg
Definition: rig.h:3075
int serial_stop_bits
Definition: rig.h:2844
int lock_mode
Definition: rig.h:3020
rig_ptr_t obj
Definition: rig.h:2764
struct filter_list filters[HAMLIB_FLTLSTSIZ]
Definition: rig.h:2928
unsigned ext_levels
Definition: rig.h:1649
Multicast data items the are unique per rig instantiation This is meant for internal Hamlib use only...
Definition: rig.h:2670
split_t split
Definition: rig.h:1589
unsigned char * spectrum_data
Definition: rig.h:1866
freq_t lo_freq
Definition: rig.h:2978
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:8213
serial_control_state_e
Serial control state.
Definition: rig.h:355
int auto_power_on
Definition: rig.h:2985
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:8143
unsigned char disable_yaesu_bandselect
Definition: rig.h:2797
int dual_watch
Definition: rig.h:2889
const char * mfg_name
Definition: rig.h:2833
setting_t has_set_func
Definition: rig.h:2944
pbwidth_t rig_passband_narrow(RIG *rig, rmode_t mode)
get the narrow passband of a mode
Definition: rig.c:3178
int rig_vfo_op(RIG *rig, vfo_t vfo, vfo_op_t op)
perform Memory/VFO operations
Definition: rig.c:7058
char client_version[32]
Definition: rig.h:3023
shortfreq_t max_xit
Definition: rig.h:2736
enum agc_level_e rig_levelagcstr(const char *agcString)
Convert AGC string... to agc_level_e.
Definition: misc.c:1505
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:82
value_t max
Definition: rig.h:1733
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:2656
int multicast_cmd_port
Definition: rig.h:2884
shortfreq_t max_xit
Definition: rig.h:2935
unsigned scan_group
Definition: rig.h:1646
Definition: network.c:131
int rig_get_ts(RIG *rig, vfo_t vfo, shortfreq_t *ts)
get the current Tuning Step
Definition: rig.c:6384
int spectrum_attenuator[HAMLIB_MAXDBLSTSIZ]
Definition: rig.h:2876
int rig_set_powerstat(RIG *rig, powerstat_t status)
turn on/off the radio
Definition: rig.c:6820
scan_t scan_ops
Definition: rig.h:2858
Configuration parameter structure.
Definition: rig.h:902
uint64_t rmode_t
Radio mode.
Definition: rig.h:1361
tone_t ctcss_sql
Definition: rig.h:1600
int rig_set_ts(RIG *rig, vfo_t vfo, shortfreq_t ts)
set the Tuning Step
Definition: rig.c:6312
int rig_set_rptr_offs(RIG *rig, vfo_t vfo, shortfreq_t rptr_offs)
set the repeater offset
Definition: rig.c:4503
const char * label
Definition: rig.h:905
int rig_type
Definition: rig.h:2837
int val
Definition: rig.h:1750
int rig_set_rit(RIG *rig, vfo_t vfo, shortfreq_t rit)
set the RIT
Definition: rig.c:6012
ant_t ant
Definition: rig.h:1466
const char * copyright
Definition: rig.h:2835
hamlib_port_t_deprecated rigport_deprecated
Definition: rig.h:2916
int rig_set_ctcss_tone(RIG *rig, vfo_t vfo, tone_t tone)
set CTCSS sub-tone frequency
Definition: tones.c:98
value_t rig_valueagclevel(enum agc_level_e agcLevel)
Convert a enum agc_level_e to value.
Definition: misc.c:1454
rig_port_e
Port type.
Definition: rig.h:312
int rig_set_split_freq(RIG *rig, vfo_t vfo, freq_t tx_freq)
set the split frequencies
Definition: rig.c:4663
hamlib_port_t dcdport
Definition: rig.h:2813
int preamp[HAMLIB_MAXDBLSTSIZ]
Definition: rig.h:2940
channel_cap_t mem_caps
Definition: rig.h:1701
int rig_get_rit(RIG *rig, vfo_t vfo, shortfreq_t *rit)
get the current RIT offset
Definition: rig.c:6084
int depth
Definition: rig.h:2820
hamlib_port_t_deprecated pttport_deprecated
Definition: rig.h:2718
rig_ptr_t priv
Definition: rig.h:2763
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:232
int comm_state
Definition: rig.h:2762
const char * rig_get_info(RIG *rig)
get general information from the radio
Definition: rig.c:7851
float max
Definition: rig.h:912
int rig_get_vfo(RIG *rig, vfo_t *vfo)
get the current VFO
Definition: rig.c:3437
Represents a single line of rig spectrum scope FFT data.
Definition: rig.h:1848
vfo_op_t rig_parse_vfo_op(const char *s)
Convert alpha string to enum RIG_OP_...
Definition: misc.c:1551
rmode_t current_mode
Definition: rig.h:2769
unsigned dcs_sql
Definition: rig.h:1645
int attenuator[HAMLIB_MAXDBLSTSIZ]
Definition: rig.h:2742
int attenuator[HAMLIB_MAXDBLSTSIZ]
Definition: rig.h:2941
rptr_shift_t rptr_shift
Definition: rig.h:1592
int power_max
Definition: rig.h:2995
const char * rig_version()
get the Hamlib version
Definition: rig.c:8174
double vfo_comp
Definition: rig.h:2721
int use_cached_ptt
Definition: rig.h:3018
hamlib_token_t token
Definition: rig.h:1560
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:572