Hamlib  4.0~git
Data Structures | Macros | Typedefs | Functions
register.c File Reference

Dynamic registration of backends. More...

#include <errno.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <stdio.h>
#include <sys/types.h>
#include <register.h>
#include <hamlib/rig.h>

Data Structures

struct  rig_list
 

Macros

#define PATH_MAX   1024
 
#define RIG_BACKEND_MAX   32
 
#define DEFINE_INITRIG_BACKEND(backend)
 
#define RIG_FUNCNAMA(backend)   MAKE_VERSIONED_FN(PREFIX_INITRIG, ABI_VERSION, backend)
 
#define RIG_FUNCNAMB(backend)   MAKE_VERSIONED_FN(PREFIX_PROBERIG, ABI_VERSION, backend)
 
#define RIG_FUNCNAM(backend)   RIG_FUNCNAMA(backend),RIG_FUNCNAMB(backend)
 
#define RIGLSTHASHSZ   65535
 
#define HASH_FUNC(a)   ((a)%RIGLSTHASHSZ)
 

Typedefs

typedef int(* backend_init_t) (char *)
 

Functions

int initrigs4_dummy (void *be_handle)
 
rig_model_t probeallrigs4_dummy (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_yaesu (void *be_handle)
 
rig_model_t probeallrigs4_yaesu (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_kenwood (void *be_handle)
 
rig_model_t probeallrigs4_kenwood (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_icom (void *be_handle)
 
rig_model_t probeallrigs4_icom (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_icmarine (void *be_handle)
 
rig_model_t probeallrigs4_icmarine (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_pcr (void *be_handle)
 
rig_model_t probeallrigs4_pcr (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_aor (void *be_handle)
 
rig_model_t probeallrigs4_aor (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_jrc (void *be_handle)
 
rig_model_t probeallrigs4_jrc (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_uniden (void *be_handle)
 
rig_model_t probeallrigs4_uniden (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_drake (void *be_handle)
 
rig_model_t probeallrigs4_drake (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_lowe (void *be_handle)
 
rig_model_t probeallrigs4_lowe (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_racal (void *be_handle)
 
rig_model_t probeallrigs4_racal (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_wj (void *be_handle)
 
rig_model_t probeallrigs4_wj (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_skanti (void *be_handle)
 
rig_model_t probeallrigs4_skanti (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_tentec (void *be_handle)
 
rig_model_t probeallrigs4_tentec (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_alinco (void *be_handle)
 
rig_model_t probeallrigs4_alinco (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_kachina (void *be_handle)
 
rig_model_t probeallrigs4_kachina (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_tapr (void *be_handle)
 
rig_model_t probeallrigs4_tapr (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_flexradio (void *be_handle)
 
rig_model_t probeallrigs4_flexradio (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_rft (void *be_handle)
 
rig_model_t probeallrigs4_rft (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_kit (void *be_handle)
 
rig_model_t probeallrigs4_kit (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_tuner (void *be_handle)
 
rig_model_t probeallrigs4_tuner (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_rs (void *be_handle)
 
rig_model_t probeallrigs4_rs (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_prm80 (void *be_handle)
 
rig_model_t probeallrigs4_prm80 (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_adat (void *be_handle)
 
rig_model_t probeallrigs4_adat (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_dorji (void *be_handle)
 
rig_model_t probeallrigs4_dorji (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_barrett (void *be_handle)
 
rig_model_t probeallrigs4_barrett (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_elad (void *be_handle)
 
rig_model_t probeallrigs4_elad (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int initrigs4_winradio (void *be_handle)
 
rig_model_t probeallrigs4_winradio (hamlib_port_t *port, rig_probe_func_t cfunc, char *data)
 
int rig_register (const struct rig_caps *caps)
 
const struct rig_capsrig_get_caps (rig_model_t rig_model)
 
int rig_check_backend (rig_model_t rig_model)
 
int rig_unregister (rig_model_t rig_model)
 
int rig_list_foreach (int(*cfunc)(const struct rig_caps *, char *), char *data)
 
rig_model_t rig_probe_first (hamlib_port_t *p)
 
int rig_probe_all_backends (hamlib_port_t *p, rig_probe_func_t cfunc, char *data)
 
int rig_load_all_backends ()
 
int rig_load_backend (const char *be_name)
 

Detailed Description

Dynamic registration of backends.

doc todo: Let's explain what's going on here!

Macro Definition Documentation

◆ DEFINE_INITRIG_BACKEND

#define DEFINE_INITRIG_BACKEND (   backend)
Value:
int MAKE_VERSIONED_FN(PREFIX_INITRIG, ABI_VERSION, backend(void *be_handle)); \
rig_model_t MAKE_VERSIONED_FN(PREFIX_PROBERIG, ABI_VERSION, backend(hamlib_port_t *port, rig_probe_func_t cfunc, rig_ptr_t data))
Port definition.
Definition: rig.h:1655

Generated by doxygen 1.8.15

Hamlib documentation for version 4.0~git -- Sat Apr 4 2020 16:38:15
Project page: http://www.hamlib.org