Hamlib  4.2
Data Structures | Macros | Typedefs | Enumerations
rig.h File Reference

Hamlib rig data structures. More...

#include <stdio.h>
#include <stdarg.h>
#include <string.h>
#include <inttypes.h>
#include <time.h>
#include <hamlib/riglist.h>
#include <hamlib/rig_dll.h>
Include dependency graph for rig.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  confparams
 Configuration parameter structure. More...
 
union  value_t
 Universal approach for passing values. More...
 
struct  freq_range_list
 Frequency range. More...
 
struct  tuning_step_list
 Tuning step definition. More...
 
struct  filter_list
 Filter definition. More...
 
struct  ext_list
 Extension attribute definition. More...
 
struct  channel
 Channel structure. More...
 
struct  channel_cap
 Channel capability definition. More...
 
struct  chan_list
 Memory channel list definition. More...
 
struct  gran
 level/parm granularity definition More...
 
struct  cal_table
 Calibration table struct. More...
 
struct  cal_table_float
 Calibration table struct for float values. More...
 
struct  rig_cache
 Rig cache data. More...
 
struct  rig_state
 Rig state containing live data and customized fields. More...
 
struct  rig_callbacks
 Callback functions and args for rig event. More...
 
struct  s_rig
 The Rig structure. More...
 

Macros

#define __FILENAME__   (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)
 
#define RIG_IS_SOFT_ERRCODE(errcode)
 Determines if the given error code indicates a "soft" error Soft errors are caused by invalid parameters and software/hardware features and cannot be fixed by retries or by re-initializing hardware. More...
 
#define NETRIGCTL_RET   "RPRT "
 Token in the netrigctl protocol for returning error code.
 
#define CTCSS_LIST_SIZE   60
 CTCSS and DCS type definition. More...
 
#define DCS_LIST_SIZE   128
 
#define RIG_STATUS_NEW   RIG_STATUS_UNTESTED
 Map all deprecated RIG_STATUS_NEW references to RIG_STATUS_UNTESTED for backward compatibility.
 
#define PRIfreq   ".0f"
 printf(3) format to be used for freq_t type
 
#define SCNfreq   "lf"
 scanf(3) format to be used for freq_t type
 
#define FREQFMT   SCNfreq
 printf(3) format to be used for freq_t type
 
#define Hz(f)   ((freq_t)(f))
 Macro to return Hz when f=Hz

 
#define kHz(f)   ((freq_t)((f)*(freq_t)1000))
 Macro to return Hz when f=kHz

 
#define MHz(f)   ((freq_t)((f)*(freq_t)1000000))
 Macro to return Hz when f=MHz

 
#define GHz(f)   ((freq_t)((f)*(freq_t)1000000000))
 Macro to return Hz when f=GHz

 
#define s_Hz(f)   ((shortfreq_t)(f))
 Macro to return short Hz when f=Hz

 
#define s_kHz(f)   ((shortfreq_t)((f)*(shortfreq_t)1000))
 Macro to return short Hz when f=kHz

 
#define s_MHz(f)   ((shortfreq_t)((f)*(shortfreq_t)1000000))
 Macro to return short Hz when f=MHz

 
#define s_GHz(f)   ((shortfreq_t)((f)*(shortfreq_t)1000000000))
 Macro to return short Hz when f=GHz

 
#define RIG_FREQ_NONE   Hz(0)
 Frequency none – used as default value for checking

 
#define RIG_VFO_N(n)   ((vfo_t)(1u<<(n)))
 '' – used in caps
 
#define RIG_VFO_NONE   0
 VFONone – vfo unknown
 
#define RIG_VFO_A   RIG_VFO_N(0)
 VFOA – VFO A
 
#define RIG_VFO_B   RIG_VFO_N(1)
 VFOB – VFO B
 
#define RIG_VFO_C   RIG_VFO_N(2)
 VFOC – VFO C
 
#define RIG_VFO_SUB_A   RIG_VFO_N(21)
 SubA – alias for SUB_A
 
#define RIG_VFO_SUB_B   RIG_VFO_N(22)
 SubB – alias for SUB_B
 
#define RIG_VFO_SUB_C   RIG_VFO_N(3)
 SubC – alias for SUB_B
 
#define RIG_VFO_MAIN_A   RIG_VFO_N(23)
 MainA – alias for MAIN_A
 
#define RIG_VFO_MAIN_B   RIG_VFO_N(24)
 MainB – alias for MAIN_B
 
#define RIG_VFO_MAIN_C   RIG_VFO_N(4)
 MainC – alias for MAIN_C
 
#define RIG_VFO_SUB   RIG_VFO_N(25)
 Sub – alias for SUB
 
#define RIG_VFO_MAIN   RIG_VFO_N(26)
 Main – alias for MAIN
 
#define RIG_VFO_VFO   RIG_VFO_N(27)
 VFO – means (last or any)VFO mode, with set_vfo
 
#define RIG_VFO_MEM   RIG_VFO_N(28)
 MEM – means Memory mode, to be used with set_vfo
 
#define RIG_VFO_CURR   RIG_VFO_N(29)
 currVFO – current "tunable channel"/VFO
 
#define RIG_VFO_TX_FLAG   RIG_VFO_N(30)
 Flag to set if VFO can transmit
 
#define RIG_VFO_ALL   RIG_VFO_N(31)
 Flag to set all VFOS
 
#define RIG_VFO_TX_VFO(v)   ((v)|RIG_VFO_TX_FLAG)
 Macro to tell you if VFO can transmit
 
#define RIG_VFO_TX   RIG_VFO_TX_VFO(RIG_VFO_CURR)
 TX – alias for split tx or uplink, of VFO_CURR

 
#define RIG_VFO_RX   RIG_VFO_CURR
 RX – alias for split rx or downlink
 
#define RIG_PASSBAND_NORMAL   s_Hz(0)
 Macro for bandpass to be set to normal.
 
#define RIG_PASSBAND_NOCHANGE   s_Hz(-1)
 Macro for bandpass to be left alone.
 
#define RIG_ANT_NONE   0
 Antenna numberNo antenna set yet or unknown.
 
#define RIG_ANT_N(n)   ((ant_t)1<<(n))
 Antenna conversion macroConvert antenna number to bit mask.
 
#define RIG_ANT_1   RIG_ANT_N(0)
 Macro for Ant#1.
 
#define RIG_ANT_2   RIG_ANT_N(1)
 Macro for Ant#2.
 
#define RIG_ANT_3   RIG_ANT_N(2)
 Macro for Ant#3.
 
#define RIG_ANT_4   RIG_ANT_N(3)
 Macro for Ant#4.
 
#define RIG_ANT_5   RIG_ANT_N(4)
 Macro for Ant#5.
 
#define RIG_ANT_UNKNOWN   RIG_ANT_N(30)
 Macro for unknown antenna.
 
#define RIG_ANT_CURR   RIG_ANT_N(31)
 Antenna is on whatever "current" means.
 
#define RIG_ANT_MAX   32
 Maximum antenna#.
 
#define RIG_LEVEL_NONE   0
 
#define RIG_LEVEL_PREAMP   CONSTANT_64BIT_FLAG(0)
 
#define RIG_LEVEL_ATT   CONSTANT_64BIT_FLAG(1)
 
#define RIG_LEVEL_VOXDELAY   CONSTANT_64BIT_FLAG(2)
 
#define RIG_LEVEL_AF   CONSTANT_64BIT_FLAG(3)
 
#define RIG_LEVEL_RF   CONSTANT_64BIT_FLAG(4)
 
#define RIG_LEVEL_SQL   CONSTANT_64BIT_FLAG(5)
 
#define RIG_LEVEL_IF   CONSTANT_64BIT_FLAG(6)
 
#define RIG_LEVEL_APF   CONSTANT_64BIT_FLAG(7)
 
#define RIG_LEVEL_NR   CONSTANT_64BIT_FLAG(8)
 
#define RIG_LEVEL_PBT_IN   CONSTANT_64BIT_FLAG(9)
 
#define RIG_LEVEL_PBT_OUT   CONSTANT_64BIT_FLAG(10)
 
#define RIG_LEVEL_CWPITCH   CONSTANT_64BIT_FLAG(11)
 
#define RIG_LEVEL_RFPOWER   CONSTANT_64BIT_FLAG(12)
 
#define RIG_LEVEL_MICGAIN   CONSTANT_64BIT_FLAG(13)
 
#define RIG_LEVEL_KEYSPD   CONSTANT_64BIT_FLAG(14)
 
#define RIG_LEVEL_NOTCHF   CONSTANT_64BIT_FLAG(15)
 
#define RIG_LEVEL_COMP   CONSTANT_64BIT_FLAG(16)
 
#define RIG_LEVEL_AGC   CONSTANT_64BIT_FLAG(17)
 
#define RIG_LEVEL_BKINDL   CONSTANT_64BIT_FLAG(18)
 
#define RIG_LEVEL_BALANCE   CONSTANT_64BIT_FLAG(19)
 
#define RIG_LEVEL_METER   CONSTANT_64BIT_FLAG(20)
 
#define RIG_LEVEL_VOXGAIN   CONSTANT_64BIT_FLAG(21)
 
#define RIG_LEVEL_ANTIVOX   CONSTANT_64BIT_FLAG(22)
 
#define RIG_LEVEL_SLOPE_LOW   CONSTANT_64BIT_FLAG(23)
 
#define RIG_LEVEL_SLOPE_HIGH   CONSTANT_64BIT_FLAG(24)
 
#define RIG_LEVEL_BKIN_DLYMS   CONSTANT_64BIT_FLAG(25)
 
#define RIG_LEVEL_RAWSTR   CONSTANT_64BIT_FLAG(26)
 
#define RIG_LEVEL_SWR   CONSTANT_64BIT_FLAG(28)
 
#define RIG_LEVEL_ALC   CONSTANT_64BIT_FLAG(29)
 
#define RIG_LEVEL_STRENGTH   CONSTANT_64BIT_FLAG(30)
 
#define RIG_LEVEL_RFPOWER_METER   CONSTANT_64BIT_FLAG(32)
 
#define RIG_LEVEL_COMP_METER   CONSTANT_64BIT_FLAG(33)
 
#define RIG_LEVEL_VD_METER   CONSTANT_64BIT_FLAG(34)
 
#define RIG_LEVEL_ID_METER   CONSTANT_64BIT_FLAG(35)
 
#define RIG_LEVEL_NOTCHF_RAW   CONSTANT_64BIT_FLAG(36)
 
#define RIG_LEVEL_MONITOR_GAIN   CONSTANT_64BIT_FLAG(37)
 
#define RIG_LEVEL_NB   CONSTANT_64BIT_FLAG(38)
 
#define RIG_LEVEL_RFPOWER_METER_WATTS   CONSTANT_64BIT_FLAG(39)
 
#define RIG_LEVEL_40   CONSTANT_64BIT_FLAG(40)
 
#define RIG_LEVEL_41   CONSTANT_64BIT_FLAG(41)
 
#define RIG_LEVEL_42   CONSTANT_64BIT_FLAG(42)
 
#define RIG_LEVEL_43   CONSTANT_64BIT_FLAG(43)
 
#define RIG_LEVEL_44   CONSTANT_64BIT_FLAG(44)
 
#define RIG_LEVEL_45   CONSTANT_64BIT_FLAG(45)
 
#define RIG_LEVEL_46   CONSTANT_64BIT_FLAG(46)
 
#define RIG_LEVEL_47   CONSTANT_64BIT_FLAG(47)
 
#define RIG_LEVEL_48   CONSTANT_64BIT_FLAG(48)
 
#define RIG_LEVEL_49   CONSTANT_64BIT_FLAG(49)
 
#define RIG_LEVEL_50   CONSTANT_64BIT_FLAG(50)
 
#define RIG_LEVEL_51   CONSTANT_64BIT_FLAG(51)
 
#define RIG_LEVEL_52   CONSTANT_64BIT_FLAG(52)
 
#define RIG_LEVEL_53   CONSTANT_64BIT_FLAG(53)
 
#define RIG_LEVEL_54   CONSTANT_64BIT_FLAG(54)
 
#define RIG_LEVEL_55   CONSTANT_64BIT_FLAG(55)
 
#define RIG_LEVEL_56   CONSTANT_64BIT_FLAG(56)
 
#define RIG_LEVEL_57   CONSTANT_64BIT_FLAG(57)
 
#define RIG_LEVEL_58   CONSTANT_64BIT_FLAG(58)
 
#define RIG_LEVEL_59   CONSTANT_64BIT_FLAG(59)
 
#define RIG_LEVEL_60   CONSTANT_64BIT_FLAG(60)
 
#define RIG_LEVEL_61   CONSTANT_64BIT_FLAG(61)
 
#define RIG_LEVEL_62   CONSTANT_64BIT_FLAG(62)
 
#define RIG_LEVEL_63   CONSTANT_64BIT_FLAG(63)
 
#define RIG_SETTING_MAX   64
 Maximum # of rig settings.
 
#define RIG_TRN_OFF   0
 Tranceive mode The rig notifies the host of any event, like freq changed, mode changed, etc.Turn it off. More...
 
#define RIG_TRN_RIG   1
 Tranceive mode. More...
 
#define RIG_TRN_POLL   2
 
#define RIG_FUNC_NONE   0
 Rig Function Settings. More...
 
#define RIG_FUNC_FAGC   CONSTANT_64BIT_FLAG (0)
 
#define RIG_FUNC_NB   CONSTANT_64BIT_FLAG (1)
 
#define RIG_FUNC_COMP   CONSTANT_64BIT_FLAG (2)
 
#define RIG_FUNC_VOX   CONSTANT_64BIT_FLAG (3)
 
#define RIG_FUNC_TONE   CONSTANT_64BIT_FLAG (4)
 
#define RIG_FUNC_TSQL   CONSTANT_64BIT_FLAG (5)
 
#define RIG_FUNC_SBKIN   CONSTANT_64BIT_FLAG (6)
 
#define RIG_FUNC_FBKIN   CONSTANT_64BIT_FLAG (7)
 
#define RIG_FUNC_ANF   CONSTANT_64BIT_FLAG (8)
 
#define RIG_FUNC_NR   CONSTANT_64BIT_FLAG (9)
 
#define RIG_FUNC_AIP   CONSTANT_64BIT_FLAG (10)
 
#define RIG_FUNC_APF   CONSTANT_64BIT_FLAG (11)
 
#define RIG_FUNC_MON   CONSTANT_64BIT_FLAG (12)
 
#define RIG_FUNC_MN   CONSTANT_64BIT_FLAG (13)
 
#define RIG_FUNC_RF   CONSTANT_64BIT_FLAG (14)
 
#define RIG_FUNC_ARO   CONSTANT_64BIT_FLAG (15)
 
#define RIG_FUNC_LOCK   CONSTANT_64BIT_FLAG (16)
 
#define RIG_FUNC_MUTE   CONSTANT_64BIT_FLAG (17)
 
#define RIG_FUNC_VSC   CONSTANT_64BIT_FLAG (18)
 
#define RIG_FUNC_REV   CONSTANT_64BIT_FLAG (19)
 
#define RIG_FUNC_SQL   CONSTANT_64BIT_FLAG (20)
 
#define RIG_FUNC_ABM   CONSTANT_64BIT_FLAG (21)
 
#define RIG_FUNC_BC   CONSTANT_64BIT_FLAG (22)
 
#define RIG_FUNC_MBC   CONSTANT_64BIT_FLAG (23)
 
#define RIG_FUNC_RIT   CONSTANT_64BIT_FLAG (24)
 
#define RIG_FUNC_AFC   CONSTANT_64BIT_FLAG (25)
 
#define RIG_FUNC_SATMODE   CONSTANT_64BIT_FLAG (26)
 
#define RIG_FUNC_SCOPE   CONSTANT_64BIT_FLAG (27)
 
#define RIG_FUNC_RESUME   CONSTANT_64BIT_FLAG (28)
 
#define RIG_FUNC_TBURST   CONSTANT_64BIT_FLAG (29)
 
#define RIG_FUNC_TUNER   CONSTANT_64BIT_FLAG (30)
 
#define RIG_FUNC_XIT   CONSTANT_64BIT_FLAG (31)
 
#define RIG_FUNC_NB2   CONSTANT_64BIT_FLAG (32)
 
#define RIG_FUNC_CSQL   CONSTANT_64BIT_FLAG (33)
 
#define RIG_FUNC_AFLT   CONSTANT_64BIT_FLAG (34)
 
#define RIG_FUNC_ANL   CONSTANT_64BIT_FLAG (35)
 
#define RIG_FUNC_BC2   CONSTANT_64BIT_FLAG (36)
 
#define RIG_FUNC_DUAL_WATCH   CONSTANT_64BIT_FLAG (37)
 
#define RIG_FUNC_DIVERSITY   CONSTANT_64BIT_FLAG (38)
 
#define RIG_FUNC_DSQL   CONSTANT_64BIT_FLAG (39)
 
#define RIG_FUNC_SCEN   CONSTANT_64BIT_FLAG (40)
 
#define RIG_FUNC_SLICE   CONSTANT_64BIT_FLAG (41)
 
#define RIG_FUNC_BIT42   CONSTANT_64BIT_FLAG (42)
 
#define RIG_FUNC_BIT43   CONSTANT_64BIT_FLAG (43)
 
#define RIG_FUNC_BIT44   CONSTANT_64BIT_FLAG (44)
 
#define RIG_FUNC_BIT45   CONSTANT_64BIT_FLAG (45)
 
#define RIG_FUNC_BIT46   CONSTANT_64BIT_FLAG (46)
 
#define RIG_FUNC_BIT47   CONSTANT_64BIT_FLAG (47)
 
#define RIG_FUNC_BIT48   CONSTANT_64BIT_FLAG (48)
 
#define RIG_FUNC_BIT49   CONSTANT_64BIT_FLAG (49)
 
#define RIG_FUNC_BIT50   CONSTANT_64BIT_FLAG (50)
 
#define RIG_FUNC_BIT51   CONSTANT_64BIT_FLAG (51)
 
#define RIG_FUNC_BIT52   CONSTANT_64BIT_FLAG (52)
 
#define RIG_FUNC_BIT53   CONSTANT_64BIT_FLAG (53)
 
#define RIG_FUNC_BIT54   CONSTANT_64BIT_FLAG (54)
 
#define RIG_FUNC_BIT55   CONSTANT_64BIT_FLAG (55)
 
#define RIG_FUNC_BIT56   CONSTANT_64BIT_FLAG (56)
 
#define RIG_FUNC_BIT57   CONSTANT_64BIT_FLAG (57)
 
#define RIG_FUNC_BIT58   CONSTANT_64BIT_FLAG (58)
 
#define RIG_FUNC_BIT59   CONSTANT_64BIT_FLAG (59)
 
#define RIG_FUNC_BIT60   CONSTANT_64BIT_FLAG (60)
 
#define RIG_FUNC_BIT61   CONSTANT_64BIT_FLAG (61)
 
#define RIG_FUNC_BIT62   CONSTANT_64BIT_FLAG (62)
 
#define RIG_FUNC_BIT63   CONSTANT_64BIT_FLAG (63)
 
#define mW(p)   ((int)(p))
 power unit macrosConverts a power level integer to milliwatts. This is limited to 2 megawatts on 32 bit systems.
 
#define Watts(p)   ((int)((p)*1000))
 power unit macros More...
 
#define W(p)   Watts(p)
 power unit macros More...
 
#define RIG_MODE_NONE   0
 
#define RIG_MODE_AM   CONSTANT_64BIT_FLAG (0)
 
#define RIG_MODE_CW   CONSTANT_64BIT_FLAG (1)
 
#define RIG_MODE_USB   CONSTANT_64BIT_FLAG (2)
 
#define RIG_MODE_LSB   CONSTANT_64BIT_FLAG (3)
 
#define RIG_MODE_RTTY   CONSTANT_64BIT_FLAG (4)
 
#define RIG_MODE_FM   CONSTANT_64BIT_FLAG (5)
 
#define RIG_MODE_WFM   CONSTANT_64BIT_FLAG (6)
 
#define RIG_MODE_CWR   CONSTANT_64BIT_FLAG (7)
 
#define RIG_MODE_RTTYR   CONSTANT_64BIT_FLAG (8)
 
#define RIG_MODE_AMS   CONSTANT_64BIT_FLAG (9)
 
#define RIG_MODE_PKTLSB   CONSTANT_64BIT_FLAG (10)
 
#define RIG_MODE_PKTUSB   CONSTANT_64BIT_FLAG (11)
 
#define RIG_MODE_PKTFM   CONSTANT_64BIT_FLAG (12)
 
#define RIG_MODE_ECSSUSB   CONSTANT_64BIT_FLAG (13)
 
#define RIG_MODE_ECSSLSB   CONSTANT_64BIT_FLAG (14)
 
#define RIG_MODE_FAX   CONSTANT_64BIT_FLAG (15)
 
#define RIG_MODE_SAM   CONSTANT_64BIT_FLAG (16)
 
#define RIG_MODE_SAL   CONSTANT_64BIT_FLAG (17)
 
#define RIG_MODE_SAH   CONSTANT_64BIT_FLAG (18)
 
#define RIG_MODE_DSB   CONSTANT_64BIT_FLAG (19)
 
#define RIG_MODE_FMN   CONSTANT_64BIT_FLAG (21)
 
#define RIG_MODE_PKTAM   CONSTANT_64BIT_FLAG (22)
 
#define RIG_MODE_P25   CONSTANT_64BIT_FLAG (23)
 
#define RIG_MODE_DSTAR   CONSTANT_64BIT_FLAG (24)
 
#define RIG_MODE_DPMR   CONSTANT_64BIT_FLAG (25)
 
#define RIG_MODE_NXDNVN   CONSTANT_64BIT_FLAG (26)
 
#define RIG_MODE_NXDN_N   CONSTANT_64BIT_FLAG (27)
 
#define RIG_MODE_DCR   CONSTANT_64BIT_FLAG (28)
 
#define RIG_MODE_AMN   CONSTANT_64BIT_FLAG (29)
 
#define RIG_MODE_PSK   CONSTANT_64BIT_FLAG (30)
 
#define RIG_MODE_PSKR   CONSTANT_64BIT_FLAG (31)
 
#define RIG_MODE_DD   CONSTANT_64BIT_FLAG (32)
 
#define RIG_MODE_C4FM   CONSTANT_64BIT_FLAG (33)
 
#define RIG_MODE_PKTFMN   CONSTANT_64BIT_FLAG (34)
 
#define RIG_MODE_SPEC   CONSTANT_64BIT_FLAG (35)
 
#define RIG_MODE_BIT36   CONSTANT_64BIT_FLAG (36)
 
#define RIG_MODE_BIT37   CONSTANT_64BIT_FLAG (37)
 
#define RIG_MODE_BIT38   CONSTANT_64BIT_FLAG (38)
 
#define RIG_MODE_BIT39   CONSTANT_64BIT_FLAG (39)
 
#define RIG_MODE_BIT40   CONSTANT_64BIT_FLAG (40)
 
#define RIG_MODE_BIT41   CONSTANT_64BIT_FLAG (41)
 
#define RIG_MODE_BIT42   CONSTANT_64BIT_FLAG (42)
 
#define RIG_MODE_BIT43   CONSTANT_64BIT_FLAG (43)
 
#define RIG_MODE_BIT44   CONSTANT_64BIT_FLAG (44)
 
#define RIG_MODE_BIT45   CONSTANT_64BIT_FLAG (45)
 
#define RIG_MODE_BIT46   CONSTANT_64BIT_FLAG (46)
 
#define RIG_MODE_BIT47   CONSTANT_64BIT_FLAG (47)
 
#define RIG_MODE_BIT48   CONSTANT_64BIT_FLAG (48)
 
#define RIG_MODE_BIT49   CONSTANT_64BIT_FLAG (49)
 
#define RIG_MODE_BIT50   CONSTANT_64BIT_FLAG (50)
 
#define RIG_MODE_BIT51   CONSTANT_64BIT_FLAG (51)
 
#define RIG_MODE_BIT52   CONSTANT_64BIT_FLAG (52)
 
#define RIG_MODE_BIT53   CONSTANT_64BIT_FLAG (53)
 
#define RIG_MODE_BIT54   CONSTANT_64BIT_FLAG (54)
 
#define RIG_MODE_BIT55   CONSTANT_64BIT_FLAG (55)
 
#define RIG_MODE_BIT56   CONSTANT_64BIT_FLAG (56)
 
#define RIG_MODE_BIT57   CONSTANT_64BIT_FLAG (57)
 
#define RIG_MODE_BIT58   CONSTANT_64BIT_FLAG (58)
 
#define RIG_MODE_BIT59   CONSTANT_64BIT_FLAG (59)
 
#define RIG_MODE_BIT60   CONSTANT_64BIT_FLAG (60)
 
#define RIG_MODE_BIT61   CONSTANT_64BIT_FLAG (61)
 
#define RIG_MODE_BIT62   CONSTANT_64BIT_FLAG (62)
 
#define RIG_MODE_TESTS_MAX   CONSTANT_64BIT_FLAG (63)
 
#define RIG_MODE_SSB   (RIG_MODE_USB|RIG_MODE_LSB)
 macro for backends, not to be used by rig_set_mode et al.
 
#define RIG_MODE_ECSS   (RIG_MODE_ECSSUSB|RIG_MODE_ECSSLSB)
 macro for backends, not to be used by rig_set_mode et al.
 
#define RIG_CHFLAG_NONE   0
 Empty channel_t.flags field.
 
#define RIG_CHFLAG_SKIP   (1<<0)
 skip memory channel during scan (lock out), channel_t.flags
 
#define RIG_CHFLAG_DATA   (1<<1)
 DATA port mode flag.
 
#define RIG_CHFLAG_PSKIP   (1<<2)
 programmed skip (PSKIP) memory channel during scan (lock out), channel_t.flags
 
#define RIG_MEM_CAPS_ALL   -1
 Special memory channel value to tell rig_lookup_mem_caps() to retrieve all the ranges.
 
#define HAMLIB_ELAPSED_GET   0
 
#define HAMLIB_ELAPSED_SET   1
 
#define HAMLIB_ELAPSED_INVALIDATE   2
 

Typedefs

typedef struct s_rig RIG
 Rig structure definition (see rig for details).
 
typedef unsigned int tone_t
 
typedef enum rig_port_e rig_port_t
 Port type.
 
typedef double freq_t
 Frequency type,. More...
 
typedef signed long shortfreq_t
 Short frequency type. More...
 
typedef unsigned int vfo_t
 VFO definition. More...
 
typedef shortfreq_t pbwidth_t
 
typedef enum dcd_e dcd_t
 DCD status.
 
typedef long token_t
 configuration token
 
typedef unsigned int ant_t
 Antenna typedef.
 
typedef uint64_t rig_level_e
 Rig Level Settings. More...
 
typedef uint64_t setting_t
 Setting. More...
 
typedef uint64_t rmode_t
 Radio mode. More...
 
typedef struct freq_range_list freq_range_t
 Frequency range. More...
 
typedef struct channel channel_t
 Channel structure typedef.
 
typedef struct channel_cap channel_cap_t
 Channel cap.
 
typedef struct chan_list chan_t
 chan_t type
 
typedef struct gran gran_t
 gran_t type
 
typedef struct cal_table cal_table_t
 calibration table type More...
 
typedef struct cal_table_float cal_table_float_t
 calibration table type for float values More...
 
typedef hamlib_port_t port_t
 Rig data structure. More...
 

Enumerations

enum  rig_errcode_e {
  RIG_OK = 0 , RIG_EINVAL , RIG_ECONF , RIG_ENOMEM ,
  RIG_ENIMPL , RIG_ETIMEOUT , RIG_EIO , RIG_EINTERNAL ,
  RIG_EPROTO , RIG_ERJCTED , RIG_ETRUNC , RIG_ENAVAIL ,
  RIG_ENTARGET , RIG_BUSERROR , RIG_BUSBUSY , RIG_EARG ,
  RIG_EVFO , RIG_EDOM
}
 Hamlib error codes Error code definition that can be returned by the Hamlib functions. Unless stated otherwise, Hamlib functions return the negative value of rig_errcode_e definitions in case of error, or 0 when successful. More...
 
enum  rig_debug_level_e {
  RIG_DEBUG_NONE = 0 , RIG_DEBUG_BUG , RIG_DEBUG_ERR , RIG_DEBUG_WARN ,
  RIG_DEBUG_VERBOSE , RIG_DEBUG_TRACE , RIG_DEBUG_CACHE
}
 Hamlib debug levels. More...
 
enum  rig_port_e {
  RIG_PORT_NONE = 0 , RIG_PORT_SERIAL , RIG_PORT_NETWORK , RIG_PORT_DEVICE ,
  RIG_PORT_PACKET , RIG_PORT_DTMF , RIG_PORT_ULTRA , RIG_PORT_RPC ,
  RIG_PORT_PARALLEL , RIG_PORT_USB , RIG_PORT_UDP_NETWORK , RIG_PORT_CM108 ,
  RIG_PORT_GPIO , RIG_PORT_GPION
}
 Port type. More...
 
enum  serial_parity_e {
  RIG_PARITY_NONE = 0 , RIG_PARITY_ODD , RIG_PARITY_EVEN , RIG_PARITY_MARK ,
  RIG_PARITY_SPACE
}
 Serial parity. More...
 
enum  serial_handshake_e { RIG_HANDSHAKE_NONE = 0 , RIG_HANDSHAKE_XONXOFF , RIG_HANDSHAKE_HARDWARE }
 Serial handshake. More...
 
enum  serial_control_state_e { RIG_SIGNAL_UNSET = 0 , RIG_SIGNAL_ON , RIG_SIGNAL_OFF }
 Serial control state. More...
 
enum  rig_type_t {
  RIG_FLAG_RECEIVER = (1 << 1) , RIG_FLAG_TRANSMITTER = (1 << 2) , RIG_FLAG_SCANNER = (1 << 3) , RIG_FLAG_MOBILE = (1 << 4) ,
  RIG_FLAG_HANDHELD = (1 << 5) , RIG_FLAG_COMPUTER = (1 << 6) , RIG_FLAG_TRUNKING = (1 << 7) , RIG_FLAG_APRS = (1 << 8) ,
  RIG_FLAG_TNC = (1 << 9) , RIG_FLAG_DXCLUSTER = (1 << 10) , RIG_FLAG_TUNER = (1 << 11)
}
 Rig type flags. More...
 
enum  rig_status_e {
  RIG_STATUS_ALPHA = 0 , RIG_STATUS_UNTESTED , RIG_STATUS_BETA , RIG_STATUS_STABLE ,
  RIG_STATUS_BUGGY
}
 Development status of the backend. More...
 
enum  rptr_shift_t { RIG_RPT_SHIFT_NONE = 0 , RIG_RPT_SHIFT_MINUS , RIG_RPT_SHIFT_PLUS }
 Repeater shift type. More...
 
enum  split_t { RIG_SPLIT_OFF = 0 , RIG_SPLIT_ON }
 Split mode. More...
 
enum  dcd_e { RIG_DCD_OFF = 0 , RIG_DCD_ON }
 DCD status. More...
 
enum  dcd_type_t {
  RIG_DCD_NONE = 0 , RIG_DCD_RIG , RIG_DCD_SERIAL_DSR , RIG_DCD_SERIAL_CTS ,
  RIG_DCD_SERIAL_CAR , RIG_DCD_PARALLEL , RIG_DCD_CM108 , RIG_DCD_GPIO ,
  RIG_DCD_GPION
}
 DCD type. More...
 
enum  ptt_t { RIG_PTT_OFF = 0 , RIG_PTT_ON , RIG_PTT_ON_MIC , RIG_PTT_ON_DATA }
 PTT status. More...
 
enum  ptt_type_t {
  RIG_PTT_NONE = 0 , RIG_PTT_RIG , RIG_PTT_SERIAL_DTR , RIG_PTT_SERIAL_RTS ,
  RIG_PTT_PARALLEL , RIG_PTT_RIG_MICDATA , RIG_PTT_CM108 , RIG_PTT_GPIO ,
  RIG_PTT_GPION
}
 PTT type. More...
 
enum  powerstat_t {
  RIG_POWER_OFF = 0 , RIG_POWER_ON = (1 << 0) , RIG_POWER_STANDBY = (1 << 1) , RIG_POWER_OPERATE = (1 << 2) ,
  RIG_POWER_UNKNOWN = (1 << 3)
}
 Radio power state. More...
 
enum  reset_t {
  RIG_RESET_NONE = 0 , RIG_RESET_SOFT = (1 << 0) , RIG_RESET_VFO = (1 << 1) , RIG_RESET_MCALL = (1 << 2) ,
  RIG_RESET_MASTER = (1 << 3)
}
 Reset operation. More...
 
enum  vfo_op_t {
  RIG_OP_NONE = 0 , RIG_OP_CPY = (1 << 0) , RIG_OP_XCHG = (1 << 1) , RIG_OP_FROM_VFO = (1 << 2) ,
  RIG_OP_TO_VFO = (1 << 3) , RIG_OP_MCL = (1 << 4) , RIG_OP_UP = (1 << 5) , RIG_OP_DOWN = (1 << 6) ,
  RIG_OP_BAND_UP = (1 << 7) , RIG_OP_BAND_DOWN = (1 << 8) , RIG_OP_LEFT = (1 << 9) , RIG_OP_RIGHT = (1 << 10) ,
  RIG_OP_TUNE = (1 << 11) , RIG_OP_TOGGLE = (1 << 12)
}
 VFO operation. More...
 
enum  scan_t {
  RIG_SCAN_NONE = 0 , RIG_SCAN_MEM = (1 << 0) , RIG_SCAN_SLCT = (1 << 1) , RIG_SCAN_PRIO = (1 << 2) ,
  RIG_SCAN_PROG = (1 << 3) , RIG_SCAN_DELTA = (1 << 4) , RIG_SCAN_VFO = (1 << 5) , RIG_SCAN_PLT = (1 << 6) ,
  RIG_SCAN_STOP = (1 << 7)
}
 Rig Scan operation. More...
 
enum  rig_conf_e {
  RIG_CONF_STRING , RIG_CONF_COMBO , RIG_CONF_NUMERIC , RIG_CONF_CHECKBUTTON ,
  RIG_CONF_BUTTON , RIG_CONF_BINARY
}
 parameter types More...
 
enum  ann_t {
  RIG_ANN_NONE = 0 , RIG_ANN_OFF = RIG_ANN_NONE , RIG_ANN_FREQ = (1 << 0) , RIG_ANN_RXMODE = (1 << 1) ,
  RIG_ANN_CW = (1 << 2) , RIG_ANN_ENG = (1 << 3) , RIG_ANN_JAP = (1 << 4)
}
 Announce. More...
 
enum  agc_level_e {
  RIG_AGC_OFF = 0 , RIG_AGC_SUPERFAST , RIG_AGC_FAST , RIG_AGC_SLOW ,
  RIG_AGC_USER , RIG_AGC_MEDIUM , RIG_AGC_AUTO
}
 AGC delay settings. More...
 
enum  meter_level_e {
  RIG_METER_NONE = 0 , RIG_METER_SWR = (1 << 0) , RIG_METER_COMP = (1 << 1) , RIG_METER_ALC = (1 << 2) ,
  RIG_METER_IC = (1 << 3) , RIG_METER_DB = (1 << 4) , RIG_METER_PO = (1 << 5) , RIG_METER_VDD = (1 << 6) ,
  RIG_METER_TEMP = (1 << 7)
}
 Level display meters.
 
enum  rig_parm_e {
  RIG_PARM_NONE = 0 , RIG_PARM_ANN = (1 << 0) , RIG_PARM_APO = (1 << 1) , RIG_PARM_BACKLIGHT = (1 << 2) ,
  RIG_PARM_BEEP = (1 << 4) , RIG_PARM_TIME = (1 << 5) , RIG_PARM_BAT = (1 << 6) , RIG_PARM_KEYLIGHT = (1 << 7) ,
  RIG_PARM_SCREENSAVER = (1 << 8)
}
 Rig Parameters. More...
 
enum  chan_type_t {
  RIG_MTYPE_NONE = 0 , RIG_MTYPE_MEM , RIG_MTYPE_EDGE , RIG_MTYPE_CALL ,
  RIG_MTYPE_MEMOPAD , RIG_MTYPE_SAT , RIG_MTYPE_BAND , RIG_MTYPE_PRIO
}
 Memory channel type definition. More...
 
enum  hamlib_cache_t {
  HAMLIB_CACHE_ALL , HAMLIB_CACHE_VFO , HAMLIB_CACHE_FREQ , HAMLIB_CACHE_MODE ,
  HAMLIB_CACHE_PTT , HAMLIB_CACHE_SPLIT , HAMLIB_CACHE_WIDTH
}
 
enum  twiddle_state_t { TWIDDLE_OFF , TWIDDLE_ON }
 

Detailed Description

Hamlib rig data structures.

This file contains the data structures and definitions for the Hamlib rig API. see the rig.c file for more details on the rig API.