From 147263d0176346a834925552e4e5780cc7d48597 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Fillod=2C=20F8CFE?= Date: Wed, 14 Feb 2001 00:59:02 +0000 Subject: [PATCH] * Initial release git-svn-id: https://hamlib.svn.sourceforge.net/svnroot/hamlib/trunk@376 7ae35d74-ebe9-4afe-98af-79ac388436b8 --- dummy/Makefile.am | 6 + dummy/dummy.c | 568 ++++++++++++++++++++++++++++++++++++++++++++++ dummy/dummy.h | 38 ++++ 3 files changed, 612 insertions(+) create mode 100644 dummy/Makefile.am create mode 100644 dummy/dummy.c create mode 100644 dummy/dummy.h diff --git a/dummy/Makefile.am b/dummy/Makefile.am new file mode 100644 index 000000000..e86794b77 --- /dev/null +++ b/dummy/Makefile.am @@ -0,0 +1,6 @@ +lib_LTLIBRARIES = libhamlib-dummy.la +libhamlib_dummy_la_SOURCES = dummy.c +libhamlib_dummy_la_LDFLAGS = -avoid-version # -module +lib_LIBRARIES = libhamlib-dummy.a +libhamlib_dummy_a_SOURCES = dummy.c +noinst_HEADERS = dummy.h diff --git a/dummy/dummy.c b/dummy/dummy.c new file mode 100644 index 000000000..07b111f10 --- /dev/null +++ b/dummy/dummy.c @@ -0,0 +1,568 @@ +/* + * hamlib - (C) Frank Singleton 2000 (vk3fcs@ix.netcom.com) + * + * dummy.c - Copyright (C) 2001 Stephane Fillod. + * + * This shared library supports dummy backend, for debugging + * purpose mainly. + * + * + * $Id: dummy.c,v 1.1 2001-02-14 00:59:02 f4cfe Exp $ + * + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * */ + +#include +#include /* Standard input/output definitions */ +#include /* String function definitions */ +#include /* UNIX standard function definitions */ +#include /* File control definitions */ +#include /* Error number definitions */ +#include /* POSIX terminal control definitions */ +#include +#include + +#include +#include +#include +#include +#include "dummy.h" + + +static int dummy_init(RIG *rig) { + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + rig->state.port_type = RIG_PORT_NONE; + + return RIG_OK; +} + +static int dummy_cleanup(RIG *rig) { + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + +static int dummy_open(RIG *rig) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + +static int dummy_close(RIG *rig) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + +static int dummy_set_freq(RIG *rig, vfo_t vfo, freq_t freq) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_freq(RIG *rig, vfo_t vfo, freq_t *freq) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_vfo(RIG *rig, vfo_t vfo) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_vfo(RIG *rig, vfo_t *vfo) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_ptt(RIG *rig, vfo_t vfo, ptt_t ptt) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_ptt(RIG *rig, vfo_t vfo, ptt_t *ptt) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_rptr_shift(RIG *rig, vfo_t vfo, rptr_shift_t rptr_shift) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_rptr_shift(RIG *rig, vfo_t vfo, rptr_shift_t *rptr_shift) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_rptr_offs(RIG *rig, vfo_t vfo, shortfreq_t rptr_offs) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_rptr_offs(RIG *rig, vfo_t vfo, shortfreq_t *rptr_offs) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_ctcss(RIG *rig, vfo_t vfo, unsigned int tone) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_ctcss(RIG *rig, vfo_t vfo, unsigned int *tone) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_dcs(RIG *rig, vfo_t vfo, unsigned int code) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_dcs(RIG *rig, vfo_t vfo, unsigned int *code) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_ctcss_sql(RIG *rig, vfo_t vfo, unsigned int tone) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_ctcss_sql(RIG *rig, vfo_t vfo, unsigned int *tone) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_dcs_sql(RIG *rig, vfo_t vfo, unsigned int code) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_dcs_sql(RIG *rig, vfo_t vfo, unsigned int *code) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_split_freq(RIG *rig, vfo_t vfo, freq_t rx_freq, freq_t tx_freq) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_split_freq(RIG *rig, vfo_t vfo, freq_t *rx_freq, freq_t *tx_freq) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_split(RIG *rig, vfo_t vfo, split_t split) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_split(RIG *rig, vfo_t vfo, split_t *split) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_rit(RIG *rig, vfo_t vfo, shortfreq_t rit) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_rit(RIG *rig, vfo_t vfo, shortfreq_t *rit) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_ts(RIG *rig, vfo_t vfo, shortfreq_t ts) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_ts(RIG *rig, vfo_t vfo, shortfreq_t *ts) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_power2mW(RIG *rig, unsigned int *mwpower, float power, freq_t freq, rmode_t mode) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_mW2power(RIG *rig, float *power, unsigned int mwpower, freq_t freq, rmode_t mode) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_poweron(RIG *rig) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_poweroff(RIG *rig) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_ann(RIG *rig, ann_t ann) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_ann(RIG *rig, ann_t *ann) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_ant(RIG *rig, vfo_t vfo, ant_t ant) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_ant(RIG *rig, vfo_t vfo, ant_t *ant) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_func(RIG *rig, vfo_t vfo, setting_t func, int status) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_func(RIG *rig, vfo_t vfo, setting_t func, int *status) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_bank(RIG *rig, vfo_t vfo, int bank) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_mem(RIG *rig, vfo_t vfo, int ch) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_mem(RIG *rig, vfo_t vfo, int *ch) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_mv_ctl(RIG *rig, vfo_t vfo, mv_op_t op) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_channel(RIG *rig, const channel_t *chan) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_channel(RIG *rig, channel_t *chan) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_set_trn(RIG *rig, vfo_t vfo, int trn) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + + +static int dummy_get_trn(RIG *rig, vfo_t vfo, int *trn) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return RIG_OK; +} + +static unsigned char *dummy_get_info(RIG *rig) +{ + rig_debug(RIG_DEBUG_VERBOSE,__FUNCTION__ " called\n"); + + return ""; +} + + + + +/* + * Dummy rig capabilities. + */ + +#define DUMMY_FUNC 0 +#define DUMMY_SET_LEVEL (RIG_LEVEL_ATT | RIG_LEVEL_AF) +#define DUMMY_LEVEL (DUMMY_SET_LEVEL | RIG_LEVEL_STRENGTH) + +#define DUMMY_MODES (RIG_MODE_AM | RIG_MODE_CW | \ + RIG_MODE_USB | RIG_MODE_LSB | RIG_MODE_FM) + +const struct rig_caps dummy_caps = { + rig_model: RIG_MODEL_DUMMY, + model_name: "Dummy", + mfg_name: "Hamlib", + version: "0.1", + copyright: "GPL", + status: RIG_STATUS_NEW, + rig_type: RIG_TYPE_OTHER, + targetable_vfo: 0, + ptt_type: RIG_PTT_NONE, + has_get_func: DUMMY_FUNC, + has_set_func: DUMMY_FUNC, + has_get_level: DUMMY_LEVEL, + has_set_level: DUMMY_SET_LEVEL, + transceive: RIG_TRN_OFF, + attenuator: { 10, 20, 30, RIG_DBLST_END, }, + rx_range_list2: { {start:KHz(150),end:MHz(1500),modes:DUMMY_MODES, + low_power:-1,high_power:-1}, + RIG_FRNG_END, }, + tx_range_list2: { RIG_FRNG_END, }, + tuning_steps: { {DUMMY_MODES,1}, RIG_TS_END, }, + + rig_init: dummy_init, + rig_cleanup: dummy_cleanup, + rig_open: dummy_open, + rig_close: dummy_close, +#if 0 + rig_probe: dummy_probe, +#endif + + set_freq: dummy_set_freq, + get_freq: dummy_get_freq, + set_mode: dummy_set_mode, + get_mode: dummy_get_mode, + set_vfo: dummy_set_vfo, + get_vfo: dummy_get_vfo, + + set_poweron: dummy_set_poweron, + set_poweroff: dummy_set_poweroff, + set_level: dummy_set_level, + get_level: dummy_get_level, + set_func: dummy_set_func, + get_func: dummy_get_func, + + get_info: dummy_get_info, + + + set_ptt: dummy_set_ptt, + get_ptt: dummy_get_ptt, + set_rptr_shift: dummy_set_rptr_shift, + get_rptr_shift: dummy_get_rptr_shift, + set_rptr_offs: dummy_set_rptr_offs, + get_rptr_offs: dummy_get_rptr_offs, + set_ctcss: dummy_set_ctcss, + get_ctcss: dummy_get_ctcss, + set_dcs: dummy_set_dcs, + get_dcs: dummy_get_dcs, + set_ctcss_sql: dummy_set_ctcss_sql, + get_ctcss_sql: dummy_get_ctcss_sql, + set_dcs_sql: dummy_set_dcs_sql, + get_dcs_sql: dummy_get_dcs_sql, + set_split_freq: dummy_set_split_freq, + get_split_freq: dummy_get_split_freq, + set_split: dummy_set_split, + get_split: dummy_get_split, + set_rit: dummy_set_rit, + get_rit: dummy_get_rit, + set_ts: dummy_set_ts, + get_ts: dummy_get_ts, + power2mW: dummy_power2mW, + mW2power: dummy_mW2power, + set_ann: dummy_set_ann, + get_ann: dummy_get_ann, + set_ant: dummy_set_ant, + get_ant: dummy_get_ant, + set_bank: dummy_set_bank, + set_mem: dummy_set_mem, + get_mem: dummy_get_mem, + mv_ctl: dummy_mv_ctl, + set_channel: dummy_set_channel, + get_channel: dummy_get_channel, + set_trn: dummy_set_trn, + get_trn: dummy_get_trn, +}; + +int init_dummy(void *be_handle) +{ + rig_debug(RIG_DEBUG_VERBOSE, "dummy: _init called\n"); + + rig_register(&dummy_caps); + + return RIG_OK; +} diff --git a/dummy/dummy.h b/dummy/dummy.h new file mode 100644 index 000000000..aedd4ce6f --- /dev/null +++ b/dummy/dummy.h @@ -0,0 +1,38 @@ +/* + * hamlib - (C) Frank Singleton 2000 (vk3fcs@ix.netcom.com) + * + * dummy.h - Copyright (C) 2001 Stephane Fillod. + * + * This shared library supports dummy backend, for debugging + * purpose mainly. + * + * + * $Id: dummy.h,v 1.1 2001-02-14 00:59:02 f4cfe Exp $ + * + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + */ + +#ifndef _DUMMY_H +#define _DUMMY_H 1 + +#include + +extern const struct rig_caps dummy_caps; + +extern int init_dummy(void *be_handle); + +#endif /* _DUMMY_H */