Hamlib  1.2.15
Data Fields
rig_caps Struct Reference

Rig data structure. More...

#include <rig.h>

Data Fields

rig_model_t rig_model
const char * model_name
const char * mfg_name
const char * version
const char * copyright
enum rig_status_e status
int rig_type
ptt_type_t ptt_type
dcd_type_t dcd_type
rig_port_t port_type
int serial_rate_min
int serial_rate_max
int serial_data_bits
int serial_stop_bits
enum serial_parity_e serial_parity
enum serial_handshake_e serial_handshake
int write_delay
int post_write_delay
int timeout
int retry
setting_t has_get_func
setting_t has_set_func
setting_t has_get_level
setting_t has_set_level
setting_t has_get_parm
setting_t has_set_parm
gran_t level_gran [32]
gran_t parm_gran [32]
struct confparamsextparms
struct confparamsextlevels
const tone_tctcss_list
const tone_tdcs_list
int preamp [8]
int attenuator [8]
shortfreq_t max_rit
shortfreq_t max_xit
shortfreq_t max_ifshift
ann_t announces
vfo_op_t vfo_ops
scan_t scan_ops
int targetable_vfo
int transceive
int bank_qty
int chan_desc_sz
chan_t chan_list [16]
freq_range_t rx_range_list1 [30]
freq_range_t tx_range_list1 [30]
freq_range_t rx_range_list2 [30]
freq_range_t tx_range_list2 [30]
struct tuning_step_list tuning_steps [20]
struct filter_list filters [42]
cal_table_t str_cal
struct confparamscfgparams
const char * priv
int(* rig_init )(RIG *rig)
int(* rig_cleanup )(RIG *rig)
int(* rig_open )(RIG *rig)
int(* rig_close )(RIG *rig)
int(* set_freq )(RIG *rig, vfo_t vfo, freq_t freq)
int(* get_freq )(RIG *rig, vfo_t vfo, freq_t *freq)
int(* set_mode )(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width)
int(* get_mode )(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width)
int(* set_vfo )(RIG *rig, vfo_t vfo)
int(* get_vfo )(RIG *rig, vfo_t *vfo)
int(* set_ptt )(RIG *rig, vfo_t vfo, ptt_t ptt)
int(* get_ptt )(RIG *rig, vfo_t vfo, ptt_t *ptt)
int(* get_dcd )(RIG *rig, vfo_t vfo, dcd_t *dcd)
int(* set_rptr_shift )(RIG *rig, vfo_t vfo, rptr_shift_t rptr_shift)
int(* get_rptr_shift )(RIG *rig, vfo_t vfo, rptr_shift_t *rptr_shift)
int(* set_rptr_offs )(RIG *rig, vfo_t vfo, shortfreq_t offs)
int(* get_rptr_offs )(RIG *rig, vfo_t vfo, shortfreq_t *offs)
int(* set_split_freq )(RIG *rig, vfo_t vfo, freq_t tx_freq)
int(* get_split_freq )(RIG *rig, vfo_t vfo, freq_t *tx_freq)
int(* set_split_mode )(RIG *rig, vfo_t vfo, rmode_t tx_mode, pbwidth_t tx_width)
int(* get_split_mode )(RIG *rig, vfo_t vfo, rmode_t *tx_mode, pbwidth_t *tx_width)
int(* set_split_vfo )(RIG *rig, vfo_t vfo, split_t split, vfo_t tx_vfo)
int(* get_split_vfo )(RIG *rig, vfo_t vfo, split_t *split, vfo_t *tx_vfo)
int(* set_rit )(RIG *rig, vfo_t vfo, shortfreq_t rit)
int(* get_rit )(RIG *rig, vfo_t vfo, shortfreq_t *rit)
int(* set_xit )(RIG *rig, vfo_t vfo, shortfreq_t xit)
int(* get_xit )(RIG *rig, vfo_t vfo, shortfreq_t *xit)
int(* set_ts )(RIG *rig, vfo_t vfo, shortfreq_t ts)
int(* get_ts )(RIG *rig, vfo_t vfo, shortfreq_t *ts)
int(* set_dcs_code )(RIG *rig, vfo_t vfo, tone_t code)
int(* get_dcs_code )(RIG *rig, vfo_t vfo, tone_t *code)
int(* set_tone )(RIG *rig, vfo_t vfo, tone_t tone)
int(* get_tone )(RIG *rig, vfo_t vfo, tone_t *tone)
int(* set_ctcss_tone )(RIG *rig, vfo_t vfo, tone_t tone)
int(* get_ctcss_tone )(RIG *rig, vfo_t vfo, tone_t *tone)
int(* set_dcs_sql )(RIG *rig, vfo_t vfo, tone_t code)
int(* get_dcs_sql )(RIG *rig, vfo_t vfo, tone_t *code)
int(* set_tone_sql )(RIG *rig, vfo_t vfo, tone_t tone)
int(* get_tone_sql )(RIG *rig, vfo_t vfo, tone_t *tone)
int(* set_ctcss_sql )(RIG *rig, vfo_t vfo, tone_t tone)
int(* get_ctcss_sql )(RIG *rig, vfo_t vfo, tone_t *tone)
int(* power2mW )(RIG *rig, unsigned int *mwpower, float power, freq_t freq, rmode_t mode)
int(* mW2power )(RIG *rig, float *power, unsigned int mwpower, freq_t freq, rmode_t mode)
int(* set_powerstat )(RIG *rig, powerstat_t status)
int(* get_powerstat )(RIG *rig, powerstat_t *status)
int(* reset )(RIG *rig, reset_t reset)
int(* set_ant )(RIG *rig, vfo_t vfo, ant_t ant)
int(* get_ant )(RIG *rig, vfo_t vfo, ant_t *ant)
int(* set_level )(RIG *rig, vfo_t vfo, setting_t level, value_t val)
int(* get_level )(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
int(* set_func )(RIG *rig, vfo_t vfo, setting_t func, int status)
int(* get_func )(RIG *rig, vfo_t vfo, setting_t func, int *status)
int(* set_parm )(RIG *rig, setting_t parm, value_t val)
int(* get_parm )(RIG *rig, setting_t parm, value_t *val)
int(* set_ext_level )(RIG *rig, vfo_t vfo, token_t token, value_t val)
int(* get_ext_level )(RIG *rig, vfo_t vfo, token_t token, value_t *val)
int(* set_ext_parm )(RIG *rig, token_t token, value_t val)
int(* get_ext_parm )(RIG *rig, token_t token, value_t *val)
int(* set_conf )(RIG *rig, token_t token, const char *val)
int(* get_conf )(RIG *rig, token_t token, char *val)
int(* send_dtmf )(RIG *rig, vfo_t vfo, const char *digits)
int(* recv_dtmf )(RIG *rig, vfo_t vfo, char *digits, int *length)
int(* send_morse )(RIG *rig, vfo_t vfo, const char *msg)
int(* set_bank )(RIG *rig, vfo_t vfo, int bank)
int(* set_mem )(RIG *rig, vfo_t vfo, int ch)
int(* get_mem )(RIG *rig, vfo_t vfo, int *ch)
int(* vfo_op )(RIG *rig, vfo_t vfo, vfo_op_t op)
int(* scan )(RIG *rig, vfo_t vfo, scan_t scan, int ch)
int(* set_trn )(RIG *rig, int trn)
int(* get_trn )(RIG *rig, int *trn)
int(* decode_event )(RIG *rig)
int(* set_channel )(RIG *rig, const channel_t *chan)
int(* get_channel )(RIG *rig, channel_t *chan)
const char *(* get_info )(RIG *rig)
int(* set_chan_all_cb )(RIG *rig, chan_cb_t chan_cb, char *)
int(* get_chan_all_cb )(RIG *rig, chan_cb_t chan_cb, char *)
int(* set_mem_all_cb )(RIG *rig, chan_cb_t chan_cb, confval_cb_t parm_cb, char *)
int(* get_mem_all_cb )(RIG *rig, chan_cb_t chan_cb, confval_cb_t parm_cb, char *)
const char * clone_combo_set
const char * clone_combo_get

Detailed Description

Rig data structure.

Basic rig type, can store some useful info about different radios. Each lib must be able to populate this structure, so we can make useful inquiries about capabilities.

The main idea of this struct is that it will be defined by the backend rig driver, and will remain readonly for the application. Fields that need to be modifiable by the application are copied into the struct rig_state, which is a kind of private of the RIG instance. This way, you can have several rigs running within the same application, sharing the struct rig_caps of the backend, while keeping their own customized data. NB: don't move fields around, as backend depends on it when initializing their caps.


Field Documentation

Announces bit field list

Preamp list in dB, 0 terminated

Number of banks

Configuration parametres.

Max length of memory channel name

Channel list, zero ended

String describing key combination to enter save cloning mode

String describing key combination to enter load cloning mode

const char* rig_caps::copyright

Copyright info.

CTCSS tones list, zero ended

Type of the DCD port.

DCS code list, zero ended

Extension level list,

See also:
ext.c

Extension parm list,

See also:
ext.c

mode/filter table, at -6dB

List of get functions

List of get level

List of get parm

List of set functions

List of set level

List of set parm

level granularity (i.e. steps)

max absolute IF-SHIFT

max absolute RIT

max absolute XIT

const char* rig_caps::mfg_name

Manufacturer.

const char* rig_caps::model_name

Model name.

parm granularity (i.e. steps)

Type of communication port.

Delay between each commands send out, in mS

Preamp list in dB, 0 terminated

const char* rig_caps::priv

Private data.

Type of the PTT port.

Maximum number of retries if command fails, 0 to disable

Rig model.

Rig type.

Receive frequency range list for ITU region 1

Receive frequency range list for ITU region 2

Scan bit field list

Number of data bits.

Handshake.

Parity.

Maximum serial speed.

Minimum serial speed.

Number of stop bits.

Driver status.

S-meter calibration table

Bit field list of direct VFO access commands

Timeout, in mS

Supported transceive mode

Tuning step list

Transmit frequency range list for ITU region 1

Transmit frequency range list for ITU region 2

const char* rig_caps::version

Driver version.

VFO op bit field list

Delay between each byte sent out, in mS


The documentation for this struct was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated by doxygen 1.7.6.1

Hamlib documentation for version 1.2.15 -- Thu Feb 2 2012 21:37:29
Project page: http://www.hamlib.org