mirror of
https://github.com/cjcliffe/CubicSDR.git
synced 2024-11-25 13:18:37 -05:00
Add win64 hamlib deps
This commit is contained in:
parent
4a64104050
commit
3a55887cd3
@ -6,7 +6,7 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules/")
|
||||
|
||||
SET(CUBICSDR_VERSION_MAJOR "0")
|
||||
SET(CUBICSDR_VERSION_MINOR "1")
|
||||
SET(CUBICSDR_VERSION_PATCH "27")
|
||||
SET(CUBICSDR_VERSION_PATCH "28")
|
||||
SET(CUBICSDR_VERSION_REL "alpha")
|
||||
SET(CUBICSDR_VERSION "${CUBICSDR_VERSION_MAJOR}.${CUBICSDR_VERSION_MINOR}.${CUBICSDR_VERSION_PATCH}-${CUBICSDR_VERSION_REL}")
|
||||
|
||||
@ -128,6 +128,7 @@ IF (MSVC)
|
||||
SET(LIQUID_INCLUDES "${PROJECT_SOURCE_DIR}/external/liquid-dsp/include/" CACHE STRING "Liquid-DSP include directory")
|
||||
SET(LIQUID_LIBRARIES "${PROJECT_SOURCE_DIR}/external/liquid-dsp/msvc/${EX_PLATFORM}/libliquid.lib" CACHE STRING "Liquid-DSP Library")
|
||||
SET(LIQUID_DLL "${PROJECT_SOURCE_DIR}/external/liquid-dsp/msvc/${EX_PLATFORM}/libliquid.dll" CACHE STRING "Liquid-DSP DLL")
|
||||
SET(HAMLIB_DLLS "${PROJECT_SOURCE_DIR}/external/hamlib/${EX_PLATFORM}/libhamlib-2.dll;${PROJECT_SOURCE_DIR}/external/hamlib/${EX_PLATFORM}/libwinpthread-1.dll" CACHE STRING "HAMLIB DLLS")
|
||||
ELSE (MSVC)
|
||||
ADD_DEFINITIONS(
|
||||
-std=c++0x
|
||||
@ -820,6 +821,15 @@ IF (WIN32 AND NOT BUILD_INSTALLER)
|
||||
${FFTW_DLL}
|
||||
DESTINATION bin)
|
||||
ENDIF()
|
||||
|
||||
IF(USE_HAMLIB)
|
||||
FOREACH(HAMLIB_DLL ${HAMLIB_DLLS})
|
||||
message(STATUS "Copying Hamlib DLL: ${HAMLIB_DLL}")
|
||||
INSTALL( FILES "${HAMLIB_DLL}"
|
||||
DESTINATION bin
|
||||
)
|
||||
ENDFOREACH()
|
||||
ENDIF()
|
||||
|
||||
INSTALL(FILES
|
||||
${CUBICSDR_RESOURCES}
|
||||
@ -859,6 +869,16 @@ IF (WIN32 AND BUILD_INSTALLER)
|
||||
${LIQUID_DLL}
|
||||
DESTINATION .)
|
||||
|
||||
IF(USE_HAMLIB)
|
||||
FOREACH(HAMLIB_DLL ${HAMLIB_DLLS})
|
||||
message(STATUS "Copying Hamlib DLL: ${HAMLIB_DLL}")
|
||||
INSTALL( FILES
|
||||
${HAMLIB_DLL}
|
||||
DESTINATION .)
|
||||
ENDFOREACH()
|
||||
ENDIF()
|
||||
|
||||
|
||||
IF(ENABLE_FFTW3)
|
||||
install(FILES
|
||||
${FFTW_DLL}
|
||||
|
261
external/hamlib/64/libhamlib-2.def
vendored
Normal file
261
external/hamlib/64/libhamlib-2.def
vendored
Normal file
@ -0,0 +1,261 @@
|
||||
EXPORTS
|
||||
azimuth_long_path
|
||||
dec2dmmm
|
||||
dec2dms
|
||||
distance_long_path
|
||||
dmmm2dec
|
||||
dms2dec
|
||||
from_bcd
|
||||
from_bcd_be = rig_get_trn
|
||||
hamlib_copyright
|
||||
hamlib_version
|
||||
initrigs3_adat
|
||||
initrigs3_alinco
|
||||
initrigs3_aor
|
||||
initrigs3_drake
|
||||
initrigs3_dummy
|
||||
initrigs3_flexradio
|
||||
initrigs3_icmarine
|
||||
initrigs3_icom = optoscan_get_info
|
||||
initrigs3_jrc
|
||||
initrigs3_kachina
|
||||
initrigs3_kenwood
|
||||
initrigs3_kit
|
||||
initrigs3_lowe
|
||||
initrigs3_pcr
|
||||
initrigs3_prm80
|
||||
initrigs3_racal
|
||||
initrigs3_rft
|
||||
initrigs3_rs
|
||||
initrigs3_skanti
|
||||
initrigs3_tapr
|
||||
initrigs3_tentec
|
||||
initrigs3_tuner
|
||||
initrigs3_uniden
|
||||
initrigs3_winradio
|
||||
initrigs3_wj
|
||||
initrigs3_yaesu
|
||||
initrots3_amsat
|
||||
initrots3_ars = ether_rot_park
|
||||
initrots3_celestron
|
||||
initrots3_cnctrk
|
||||
initrots3_dummy
|
||||
initrots3_easycomm
|
||||
initrots3_ether6
|
||||
initrots3_fodtrack
|
||||
initrots3_gs232a
|
||||
initrots3_heathkit
|
||||
initrots3_kit
|
||||
initrots3_m2
|
||||
initrots3_prosistel
|
||||
initrots3_rotorez
|
||||
initrots3_sartek
|
||||
initrots3_spid
|
||||
initrots3_ts7400
|
||||
locator2longlat
|
||||
longlat2locator
|
||||
par_lock
|
||||
par_read_control
|
||||
par_read_data
|
||||
par_read_status
|
||||
par_unlock
|
||||
par_write_control
|
||||
par_write_data
|
||||
port_close
|
||||
port_open
|
||||
probeallrigs3_adat
|
||||
probeallrigs3_drake
|
||||
probeallrigs3_icom
|
||||
probeallrigs3_kenwood
|
||||
probeallrigs3_lowe = pcr_get_freq
|
||||
probeallrigs3_uniden = ft100_set_ptt
|
||||
probeallrigs3_yaesu
|
||||
qrb
|
||||
read_block
|
||||
read_string
|
||||
rig_check_backend
|
||||
rig_check_cache_timeout
|
||||
rig_cleanup
|
||||
rig_close
|
||||
rig_confparam_lookup
|
||||
rig_debug
|
||||
rig_ext_level_foreach
|
||||
rig_ext_lookup
|
||||
rig_ext_lookup_tok
|
||||
rig_ext_parm_foreach
|
||||
rig_ext_token_lookup
|
||||
rig_force_cache_timeout
|
||||
rig_get_ant = ser_get_cts
|
||||
rig_get_caps
|
||||
rig_get_chan_all
|
||||
rig_get_chan_all_cb
|
||||
rig_get_channel
|
||||
rig_get_conf
|
||||
rig_get_ctcss_sql
|
||||
rig_get_ctcss_tone
|
||||
rig_get_dcd
|
||||
rig_get_dcs_code = longlat2locator
|
||||
rig_get_dcs_sql
|
||||
rig_get_ext_level
|
||||
rig_get_ext_parm
|
||||
rig_get_freq
|
||||
rig_get_func
|
||||
rig_get_info
|
||||
rig_get_level
|
||||
rig_get_mem
|
||||
rig_get_mem_all = rig_set_debug_file
|
||||
rig_get_mem_all_cb
|
||||
rig_get_mode
|
||||
rig_get_parm = cm108_open
|
||||
rig_get_powerstat = from_bcd
|
||||
rig_get_ptt
|
||||
rig_get_range
|
||||
rig_get_resolution
|
||||
rig_get_rit
|
||||
rig_get_rptr_offs
|
||||
rig_get_rptr_shift
|
||||
rig_get_split_freq
|
||||
rig_get_split_freq_mode = rig_mW2power
|
||||
rig_get_split_mode
|
||||
rig_get_split_vfo
|
||||
rig_get_trn
|
||||
rig_get_ts
|
||||
rig_get_vfo
|
||||
rig_get_xit
|
||||
rig_has_get_func
|
||||
rig_has_get_level
|
||||
rig_has_get_parm
|
||||
rig_has_scan
|
||||
rig_has_set_func
|
||||
rig_has_set_level = cm108_close
|
||||
rig_has_set_parm
|
||||
rig_has_vfo_op
|
||||
rig_init
|
||||
rig_list_foreach
|
||||
rig_load_all_backends
|
||||
rig_load_backend
|
||||
rig_lookup_mem_caps
|
||||
rig_mW2power
|
||||
rig_mem_count
|
||||
rig_need_debug
|
||||
rig_no_restore_ai
|
||||
rig_open
|
||||
rig_parse_func
|
||||
rig_parse_level
|
||||
rig_parse_mode
|
||||
rig_parse_mtype
|
||||
rig_parse_parm
|
||||
rig_parse_rptr_shift
|
||||
rig_parse_scan
|
||||
rig_parse_vfo
|
||||
rig_parse_vfo_op
|
||||
rig_passband_narrow
|
||||
rig_passband_normal
|
||||
rig_passband_wide
|
||||
rig_power2mW
|
||||
rig_probe
|
||||
rig_probe_all = to_bcd_be
|
||||
rig_raw2val
|
||||
rig_recv_dtmf
|
||||
rig_register
|
||||
rig_reset
|
||||
rig_scan
|
||||
rig_send_dtmf
|
||||
rig_send_morse
|
||||
rig_set_ant
|
||||
rig_set_bank
|
||||
rig_set_chan_all
|
||||
rig_set_chan_all_cb
|
||||
rig_set_channel
|
||||
rig_set_conf
|
||||
rig_set_ctcss_sql
|
||||
rig_set_ctcss_tone
|
||||
rig_set_dcd_callback
|
||||
rig_set_dcs_code
|
||||
rig_set_dcs_sql
|
||||
rig_set_debug
|
||||
rig_set_debug_callback
|
||||
rig_set_debug_file
|
||||
rig_set_ext_level
|
||||
rig_set_ext_parm
|
||||
rig_set_freq
|
||||
rig_set_freq_callback
|
||||
rig_set_func
|
||||
rig_set_level
|
||||
rig_set_mem
|
||||
rig_set_mem_all
|
||||
rig_set_mem_all_cb
|
||||
rig_set_mode = rig_get_rptr_shift
|
||||
rig_set_mode_callback
|
||||
rig_set_parm
|
||||
rig_set_pltune_callback
|
||||
rig_set_powerstat
|
||||
rig_set_ptt
|
||||
rig_set_ptt_callback
|
||||
rig_set_rit
|
||||
rig_set_rptr_offs
|
||||
rig_set_rptr_shift
|
||||
rig_set_split_freq
|
||||
rig_set_split_freq_mode
|
||||
rig_set_split_mode
|
||||
rig_set_split_vfo
|
||||
rig_set_trn
|
||||
rig_set_ts
|
||||
rig_set_vfo = rig_get_split_freq
|
||||
rig_set_vfo_callback
|
||||
rig_set_xit
|
||||
rig_setting2idx
|
||||
rig_strfunc
|
||||
rig_strlevel
|
||||
rig_strmtype
|
||||
rig_strparm
|
||||
rig_strptrshift
|
||||
rig_strrmode
|
||||
rig_strscan
|
||||
rig_strstatus
|
||||
rig_strvfo
|
||||
rig_strvfop
|
||||
rig_token_foreach
|
||||
rig_token_lookup
|
||||
rig_unregister
|
||||
rig_vfo_op
|
||||
rigerror = rig_open
|
||||
rot_check_backend
|
||||
rot_cleanup
|
||||
rot_close
|
||||
rot_confparam_lookup
|
||||
rot_get_caps
|
||||
rot_get_conf
|
||||
rot_get_info
|
||||
rot_get_position
|
||||
rot_init
|
||||
rot_list_foreach
|
||||
rot_load_all_backends
|
||||
rot_load_backend
|
||||
rot_move
|
||||
rot_open
|
||||
rot_park
|
||||
rot_probe_all = read_block
|
||||
rot_register
|
||||
rot_reset
|
||||
rot_set_conf
|
||||
rot_set_position
|
||||
rot_stop
|
||||
rot_token_foreach = map_parm
|
||||
rot_token_lookup
|
||||
rot_unregister
|
||||
ser_get_car
|
||||
ser_get_cts
|
||||
ser_get_dsr
|
||||
ser_get_dtr
|
||||
ser_get_rts = rig_probe_all_backends
|
||||
ser_set_brk
|
||||
ser_set_dtr
|
||||
ser_set_rts
|
||||
serial_flush
|
||||
serial_open
|
||||
serial_setup
|
||||
sprintf_freq
|
||||
to_bcd = remove_trn_rig
|
||||
to_bcd_be
|
||||
write_block
|
BIN
external/hamlib/64/libhamlib-2.dll
vendored
Normal file
BIN
external/hamlib/64/libhamlib-2.dll
vendored
Normal file
Binary file not shown.
BIN
external/hamlib/64/libhamlib-2.exp
vendored
Normal file
BIN
external/hamlib/64/libhamlib-2.exp
vendored
Normal file
Binary file not shown.
BIN
external/hamlib/64/libhamlib-2.lib
vendored
Normal file
BIN
external/hamlib/64/libhamlib-2.lib
vendored
Normal file
Binary file not shown.
BIN
external/hamlib/64/libwinpthread-1.dll
vendored
Normal file
BIN
external/hamlib/64/libwinpthread-1.dll
vendored
Normal file
Binary file not shown.
1742
external/hamlib/hamlib/rig.h
vendored
Normal file
1742
external/hamlib/hamlib/rig.h
vendored
Normal file
File diff suppressed because it is too large
Load Diff
92
external/hamlib/hamlib/rig_dll.h
vendored
Normal file
92
external/hamlib/hamlib/rig_dll.h
vendored
Normal file
@ -0,0 +1,92 @@
|
||||
/*
|
||||
* Hamlib Win32 DLL build definitions
|
||||
* Copyright (c) 2001-2009 by Stephane Fillod
|
||||
*
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Provide definitions to compile in Windows
|
||||
* using C-friendly options, e.g.
|
||||
*
|
||||
* HAMLIB_API -> __cdecl
|
||||
* HAMLIB_EXPORT, HAMLIB_EXPORT_VAR -> __declspec(dllexport)
|
||||
* BACKEND_EXPORT, BACKEND_EXPORT_VAR -> __declspec(dllexport)
|
||||
*
|
||||
* No effect in non-Windows environments.
|
||||
*/
|
||||
|
||||
#if defined(_WIN32) && !defined(__CYGWIN__)
|
||||
# undef HAMLIB_IMPEXP
|
||||
# undef BACKEND_IMPEXP
|
||||
# undef HAMLIB_API
|
||||
# undef HAMLIB_EXPORT
|
||||
# undef HAMLIB_EXPORT_VAR
|
||||
# undef BACKEND_EXPORT
|
||||
# undef BACKEND_EXPORT_VAR
|
||||
# undef HAMLIB_DLL_IMPORT
|
||||
# undef HAMLIB_DLL_EXPORT
|
||||
|
||||
# if defined (__BORLANDC__)
|
||||
# define HAMLIB_DLL_IMPORT __import
|
||||
# define HAMLIB_DLL_EXPORT __export
|
||||
# else
|
||||
# define HAMLIB_DLL_IMPORT __declspec(dllimport)
|
||||
# define HAMLIB_DLL_EXPORT __declspec(dllexport)
|
||||
# endif
|
||||
|
||||
# ifdef DLL_EXPORT
|
||||
/* HAMLIB_API may be set to __stdcall for VB, .. */
|
||||
# define HAMLIB_API __cdecl
|
||||
# ifdef IN_HAMLIB
|
||||
# define BACKEND_IMPEXP HAMLIB_DLL_EXPORT
|
||||
# define HAMLIB_IMPEXP HAMLIB_DLL_EXPORT
|
||||
# else
|
||||
# define BACKEND_IMPEXP HAMLIB_DLL_EXPORT
|
||||
# define HAMLIB_IMPEXP HAMLIB_DLL_IMPORT
|
||||
# endif
|
||||
# else
|
||||
/* static build, only export the backend entry points for lt_dlsym */
|
||||
# define BACKEND_IMPEXP HAMLIB_DLL_EXPORT
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
||||
/* Take care of non-cygwin platforms */
|
||||
#if !defined(HAMLIB_IMPEXP)
|
||||
# define HAMLIB_IMPEXP
|
||||
#endif
|
||||
#if !defined(BACKEND_IMPEXP)
|
||||
# define BACKEND_IMPEXP
|
||||
#endif
|
||||
#if !defined(HAMLIB_API)
|
||||
# define HAMLIB_API
|
||||
#endif
|
||||
#if !defined(HAMLIB_EXPORT)
|
||||
# define HAMLIB_EXPORT(type) HAMLIB_IMPEXP type HAMLIB_API
|
||||
#endif
|
||||
#if !defined(HAMLIB_EXPORT_VAR)
|
||||
# define HAMLIB_EXPORT_VAR(type) HAMLIB_IMPEXP type
|
||||
#endif
|
||||
#if !defined(BACKEND_EXPORT)
|
||||
# define BACKEND_EXPORT(type) BACKEND_IMPEXP type HAMLIB_API
|
||||
#endif
|
||||
#if !defined(BACKEND_EXPORT_VAR)
|
||||
# define BACKEND_EXPORT_VAR(type) BACKEND_IMPEXP type
|
||||
#endif
|
||||
|
||||
|
279
external/hamlib/hamlib/rigclass.h
vendored
Normal file
279
external/hamlib/hamlib/rigclass.h
vendored
Normal file
@ -0,0 +1,279 @@
|
||||
/*
|
||||
* Hamlib C++ bindings - API header
|
||||
* Copyright (c) 2001-2002 by Stephane Fillod
|
||||
*
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _RIGCLASS_H
|
||||
#define _RIGCLASS_H 1
|
||||
|
||||
#include <hamlib/rig.h>
|
||||
#include <iostream>
|
||||
|
||||
|
||||
class BACKEND_IMPEXP Rig {
|
||||
private:
|
||||
RIG* theRig; // Global ref. to the rig
|
||||
|
||||
protected:
|
||||
public:
|
||||
Rig(rig_model_t rig_model);
|
||||
|
||||
virtual ~Rig();
|
||||
|
||||
const struct rig_caps *caps;
|
||||
|
||||
// This method open the communication port to the rig
|
||||
void open(void);
|
||||
|
||||
// This method close the communication port to the rig
|
||||
void close(void);
|
||||
|
||||
void setConf(token_t token, const char *val);
|
||||
void setConf(const char *name, const char *val);
|
||||
void getConf(token_t token, char *val);
|
||||
void getConf(const char *name, char *val);
|
||||
token_t tokenLookup(const char *name);
|
||||
|
||||
void setFreq(freq_t freq, vfo_t vfo = RIG_VFO_CURR);
|
||||
freq_t getFreq(vfo_t vfo = RIG_VFO_CURR);
|
||||
void setMode(rmode_t, pbwidth_t width = RIG_PASSBAND_NORMAL, vfo_t vfo = RIG_VFO_CURR);
|
||||
rmode_t getMode(pbwidth_t&, vfo_t vfo = RIG_VFO_CURR);
|
||||
void setVFO(vfo_t);
|
||||
vfo_t getVFO();
|
||||
|
||||
void setPTT (ptt_t ptt, vfo_t vfo = RIG_VFO_CURR);
|
||||
ptt_t getPTT (vfo_t vfo = RIG_VFO_CURR);
|
||||
dcd_t getDCD (vfo_t vfo = RIG_VFO_CURR);
|
||||
|
||||
void setLevel(setting_t level, int vali, vfo_t vfo = RIG_VFO_CURR);
|
||||
void setLevel(setting_t level, float valf, vfo_t vfo = RIG_VFO_CURR);
|
||||
void getLevel(setting_t level, int& vali, vfo_t vfo = RIG_VFO_CURR);
|
||||
void getLevel(setting_t level, float& valf, vfo_t vfo = RIG_VFO_CURR);
|
||||
int getLevelI(setting_t level, vfo_t vfo = RIG_VFO_CURR);
|
||||
float getLevelF(setting_t level, vfo_t vfo = RIG_VFO_CURR);
|
||||
bool hasGetLevel (setting_t level);
|
||||
bool hasSetLevel (setting_t level);
|
||||
|
||||
void setParm(setting_t parm, int vali);
|
||||
void setParm(setting_t parm, float valf);
|
||||
void getParm(setting_t parm, int& vali);
|
||||
void getParm(setting_t parm, float& valf);
|
||||
int getParmI(setting_t parm);
|
||||
float getParmF(setting_t parm);
|
||||
bool hasGetParm (setting_t parm);
|
||||
bool hasSetParm (setting_t parm);
|
||||
|
||||
void setFunc (setting_t func, bool status, vfo_t vfo = RIG_VFO_CURR);
|
||||
bool getFunc (setting_t func, vfo_t vfo = RIG_VFO_CURR);
|
||||
bool hasGetFunc (setting_t func);
|
||||
bool hasSetFunc (setting_t func);
|
||||
|
||||
void VFOop(vfo_op_t op, vfo_t vfo = RIG_VFO_CURR);
|
||||
bool hasVFOop (vfo_op_t op);
|
||||
|
||||
void scan(scan_t scan, int ch, vfo_t vfo = RIG_VFO_CURR);
|
||||
bool hasScan (scan_t scan);
|
||||
|
||||
const char *getInfo (void);
|
||||
pbwidth_t passbandNormal (rmode_t);
|
||||
pbwidth_t passbandNarrow (rmode_t);
|
||||
pbwidth_t passbandWide (rmode_t);
|
||||
|
||||
void setRptrShift (rptr_shift_t rptr_shift, vfo_t vfo = RIG_VFO_CURR);
|
||||
rptr_shift_t getRptrShift (vfo_t vfo = RIG_VFO_CURR);
|
||||
void setRptrOffs (shortfreq_t rptr_offs, vfo_t vfo = RIG_VFO_CURR);
|
||||
shortfreq_t getRptrOffs (vfo_t vfo = RIG_VFO_CURR);
|
||||
void setTs (shortfreq_t ts, vfo_t vfo = RIG_VFO_CURR);
|
||||
shortfreq_t getTs (vfo_t vfo = RIG_VFO_CURR);
|
||||
|
||||
void setCTCSS (tone_t tone, vfo_t vfo = RIG_VFO_CURR);
|
||||
tone_t getCTCSS (vfo_t vfo = RIG_VFO_CURR);
|
||||
void setDCS (tone_t code, vfo_t vfo = RIG_VFO_CURR);
|
||||
tone_t getDCS (vfo_t vfo = RIG_VFO_CURR);
|
||||
|
||||
void setCTCSSsql (tone_t tone, vfo_t vfo = RIG_VFO_CURR);
|
||||
tone_t getCTCSSsql (vfo_t vfo = RIG_VFO_CURR);
|
||||
void setDCSsql (tone_t tone, vfo_t vfo = RIG_VFO_CURR);
|
||||
tone_t getDCSsql (vfo_t vfo = RIG_VFO_CURR);
|
||||
|
||||
|
||||
unsigned int power2mW (float power, freq_t freq, rmode_t mode);
|
||||
float mW2power (unsigned int mwpower, freq_t freq, rmode_t mode);
|
||||
void setTrn (int trn);
|
||||
int getTrn (void);
|
||||
void setBank (int bank, vfo_t vfo = RIG_VFO_CURR);
|
||||
void setMem (int ch, vfo_t vfo = RIG_VFO_CURR);
|
||||
int getMem (vfo_t vfo = RIG_VFO_CURR);
|
||||
|
||||
void setChannel (const channel_t *chan);
|
||||
void getChannel (channel_t *chan);
|
||||
|
||||
void setPowerStat (powerstat_t status);
|
||||
powerstat_t getPowerStat (void);
|
||||
rmode_t RngRxModes (freq_t freq);
|
||||
rmode_t RngTxModes (freq_t freq);
|
||||
|
||||
void setSplitFreq (freq_t tx_freq, vfo_t vfo = RIG_VFO_CURR);
|
||||
freq_t getSplitFreq (vfo_t vfo = RIG_VFO_CURR);
|
||||
void setSplitMode(rmode_t, pbwidth_t width = RIG_PASSBAND_NORMAL, vfo_t vfo = RIG_VFO_CURR);
|
||||
rmode_t getSplitMode(pbwidth_t&, vfo_t vfo = RIG_VFO_CURR);
|
||||
void setSplitFreqMode(freq_t, rmode_t, pbwidth_t width = RIG_PASSBAND_NORMAL, vfo_t vfo = RIG_VFO_CURR);
|
||||
freq_t getSplitFreqMode(rmode_t&, pbwidth_t&, vfo_t vfo = RIG_VFO_CURR);
|
||||
void setSplitVFO(split_t split, vfo_t vfo = RIG_VFO_CURR, vfo_t tx_vfo = RIG_VFO_CURR);
|
||||
split_t getSplitVFO(vfo_t &tx_vfo, vfo_t vfo = RIG_VFO_CURR);
|
||||
|
||||
void setRit (shortfreq_t rit, vfo_t vfo = RIG_VFO_CURR);
|
||||
shortfreq_t getRit (vfo_t vfo = RIG_VFO_CURR);
|
||||
void setXit (shortfreq_t xit, vfo_t vfo = RIG_VFO_CURR);
|
||||
shortfreq_t getXit (vfo_t vfo = RIG_VFO_CURR);
|
||||
|
||||
void setAnt (ant_t ant, vfo_t vfo = RIG_VFO_CURR);
|
||||
ant_t getAnt (vfo_t vfo = RIG_VFO_CURR);
|
||||
|
||||
void sendDtmf (const char *digits, vfo_t vfo = RIG_VFO_CURR);
|
||||
int recvDtmf (char *digits, vfo_t vfo = RIG_VFO_CURR);
|
||||
void sendMorse (const char *msg, vfo_t vfo = RIG_VFO_CURR);
|
||||
|
||||
|
||||
shortfreq_t getResolution (rmode_t mode);
|
||||
void reset (reset_t reset);
|
||||
|
||||
// callbacks available in your derived object
|
||||
virtual int FreqEvent(vfo_t, freq_t, rig_ptr_t) const {
|
||||
return RIG_OK;
|
||||
}
|
||||
virtual int ModeEvent(vfo_t, rmode_t, pbwidth_t, rig_ptr_t) const {
|
||||
return RIG_OK;
|
||||
}
|
||||
virtual int VFOEvent(vfo_t, rig_ptr_t) const {
|
||||
return RIG_OK;
|
||||
}
|
||||
virtual int PTTEvent(vfo_t, ptt_t, rig_ptr_t) const {
|
||||
return RIG_OK;
|
||||
}
|
||||
virtual int DCDEvent(vfo_t, dcd_t, rig_ptr_t) const {
|
||||
return RIG_OK;
|
||||
}
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef __GNUG__
|
||||
# if ((__GNUG__ <= 2) && (__GNUC_MINOR__ < 8))
|
||||
# if HAVE_TYPEINFO
|
||||
# include <typeinfo>
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if defined(__GNUG__)
|
||||
# if HAVE_BUILTIN_H || HAVE_GXX_BUILTIN_H || HAVE_GPP_BUILTIN_H
|
||||
# if ETIP_NEEDS_MATH_H
|
||||
# if ETIP_NEEDS_MATH_EXCEPTION
|
||||
# undef exception
|
||||
# define exception math_exception
|
||||
# endif
|
||||
# include <math.h>
|
||||
# endif
|
||||
# undef exception
|
||||
# define exception builtin_exception
|
||||
# if HAVE_GPP_BUILTIN_H
|
||||
# include <gpp/builtin.h>
|
||||
# elif HAVE_GXX_BUILTIN_H
|
||||
# include <g++/builtin.h>
|
||||
# else
|
||||
# include <builtin.h>
|
||||
# endif
|
||||
# undef exception
|
||||
# endif
|
||||
#elif defined (__SUNPRO_CC)
|
||||
# include <generic.h>
|
||||
# include <string.h>
|
||||
#else
|
||||
# include <string.h>
|
||||
#endif
|
||||
|
||||
|
||||
extern "C" {
|
||||
#if HAVE_VALUES_H
|
||||
# include <values.h>
|
||||
#endif
|
||||
|
||||
#include <assert.h>
|
||||
#include <errno.h>
|
||||
}
|
||||
|
||||
#include <iostream>
|
||||
#if !(defined(__GNUG__)||defined(__SUNPRO_CC))
|
||||
extern "C" void exit(int);
|
||||
#endif
|
||||
|
||||
// Forward Declarations
|
||||
|
||||
class BACKEND_IMPEXP RigException
|
||||
{
|
||||
public:
|
||||
const char *message;
|
||||
int errorno;
|
||||
|
||||
RigException (const char* msg, int err)
|
||||
: message(msg), errorno (err)
|
||||
{};
|
||||
|
||||
RigException (int err)
|
||||
: message(rigerror(err)), errorno (err)
|
||||
{};
|
||||
|
||||
RigException (const char* msg)
|
||||
: message(msg), errorno (-RIG_EINTERNAL)
|
||||
{};
|
||||
|
||||
virtual ~RigException()
|
||||
{};
|
||||
|
||||
void print() const {
|
||||
std::cerr << "Rig exception: " << message << std::endl;
|
||||
}
|
||||
virtual const char *classname() const {
|
||||
return "Rig";
|
||||
}
|
||||
};
|
||||
|
||||
inline void THROW(const RigException *e) {
|
||||
#if defined(__GNUG__)
|
||||
# if ((__GNUG__ <= 2) && (__GNUC_MINOR__ < 8))
|
||||
(*lib_error_handler)(e?e->classname():"",e?e->message:"");
|
||||
#else
|
||||
throw *e;
|
||||
#endif
|
||||
#elif defined(__SUNPRO_CC)
|
||||
genericerror(1, ((e != 0) ? (char *)(e->message) : ""));
|
||||
#else
|
||||
if (e)
|
||||
std::cerr << e->message << endl;
|
||||
exit(0);
|
||||
#endif
|
||||
}
|
||||
|
||||
#define THROWS(s)
|
||||
|
||||
|
||||
#endif // _RIGCLASS_H
|
555
external/hamlib/hamlib/riglist.h
vendored
Normal file
555
external/hamlib/hamlib/riglist.h
vendored
Normal file
@ -0,0 +1,555 @@
|
||||
/*
|
||||
* Hamlib Interface - list of known rigs
|
||||
* Copyright (c) 2000-2003 by Frank Singleton
|
||||
* Copyright (c) 2000-2015 by Stephane Fillod
|
||||
*
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _RIGLIST_H
|
||||
#define _RIGLIST_H 1
|
||||
|
||||
#define RIG_MAKE_MODEL(a,b) ((a)*100+(b))
|
||||
#define RIG_BACKEND_NUM(a) ((a)/100)
|
||||
|
||||
/*! \file riglist.h
|
||||
* \brief Hamlib rig(radio) model definitions.
|
||||
*
|
||||
* This file contains rig model definitions for the Hamlib rig API.
|
||||
* Each distinct rig type has a unique model number (ID) and is used
|
||||
* by hamlib to identify and distinguish between the different hardware drivers.
|
||||
* The exact model numbers can be acquired using the macros in this
|
||||
* file. To obtain a list of supported rig branches, one can use the statically
|
||||
* defined RIG_BACKEND_LIST macro. To obtain a full list of supported rig (including
|
||||
* each model in every branch), the foreach_opened_rig() API function can be used.
|
||||
*
|
||||
* The model number, or ID, is used to tell hamlib, which rig the client whishes to
|
||||
* use. It is done with the rig_init() API call.
|
||||
*/
|
||||
|
||||
#define RIG_MODEL_NONE 0
|
||||
|
||||
/*! \def RIG_MODEL_DUMMY
|
||||
* \brief A macro that returns the model number for the dummy backend.
|
||||
*
|
||||
* The dummy backend, as the name suggests, is a backend which performs
|
||||
* no hardware operations and always behaves as one would expect. It can
|
||||
* be thought of as a hardware simulator and is very usefull for testing
|
||||
* client applications.
|
||||
*/
|
||||
#define RIG_DUMMY 0
|
||||
#define RIG_BACKEND_DUMMY "dummy"
|
||||
#define RIG_MODEL_DUMMY RIG_MAKE_MODEL(RIG_DUMMY, 1)
|
||||
#define RIG_MODEL_NETRIGCTL RIG_MAKE_MODEL(RIG_DUMMY, 2)
|
||||
#define RIG_MODEL_ARMSTRONG RIG_MAKE_MODEL(RIG_DUMMY, 3)
|
||||
|
||||
/*
|
||||
* Yaesu
|
||||
*/
|
||||
#define RIG_YAESU 1
|
||||
#define RIG_BACKEND_YAESU "yaesu"
|
||||
#define RIG_MODEL_FT847 RIG_MAKE_MODEL(RIG_YAESU, 1)
|
||||
#define RIG_MODEL_FT1000 RIG_MAKE_MODEL(RIG_YAESU, 2)
|
||||
#define RIG_MODEL_FT1000D RIG_MAKE_MODEL(RIG_YAESU, 3)
|
||||
#define RIG_MODEL_FT1000MPMKV RIG_MAKE_MODEL(RIG_YAESU, 4)
|
||||
#define RIG_MODEL_FT747 RIG_MAKE_MODEL(RIG_YAESU, 5)
|
||||
#define RIG_MODEL_FT757 RIG_MAKE_MODEL(RIG_YAESU, 6)
|
||||
#define RIG_MODEL_FT757GXII RIG_MAKE_MODEL(RIG_YAESU, 7)
|
||||
#define RIG_MODEL_FT575 RIG_MAKE_MODEL(RIG_YAESU, 8)
|
||||
#define RIG_MODEL_FT767 RIG_MAKE_MODEL(RIG_YAESU, 9)
|
||||
#define RIG_MODEL_FT736R RIG_MAKE_MODEL(RIG_YAESU, 10)
|
||||
#define RIG_MODEL_FT840 RIG_MAKE_MODEL(RIG_YAESU, 11)
|
||||
#define RIG_MODEL_FT820 RIG_MAKE_MODEL(RIG_YAESU, 12)
|
||||
#define RIG_MODEL_FT900 RIG_MAKE_MODEL(RIG_YAESU, 13)
|
||||
#define RIG_MODEL_FT920 RIG_MAKE_MODEL(RIG_YAESU, 14)
|
||||
#define RIG_MODEL_FT890 RIG_MAKE_MODEL(RIG_YAESU, 15)
|
||||
#define RIG_MODEL_FT990 RIG_MAKE_MODEL(RIG_YAESU, 16)
|
||||
#define RIG_MODEL_FRG100 RIG_MAKE_MODEL(RIG_YAESU, 17)
|
||||
#define RIG_MODEL_FRG9600 RIG_MAKE_MODEL(RIG_YAESU, 18)
|
||||
#define RIG_MODEL_FRG8800 RIG_MAKE_MODEL(RIG_YAESU, 19)
|
||||
#define RIG_MODEL_FT817 RIG_MAKE_MODEL(RIG_YAESU, 20)
|
||||
#define RIG_MODEL_FT100 RIG_MAKE_MODEL(RIG_YAESU, 21)
|
||||
#define RIG_MODEL_FT857 RIG_MAKE_MODEL(RIG_YAESU, 22)
|
||||
#define RIG_MODEL_FT897 RIG_MAKE_MODEL(RIG_YAESU, 23)
|
||||
#define RIG_MODEL_FT1000MP RIG_MAKE_MODEL(RIG_YAESU, 24)
|
||||
#define RIG_MODEL_FT1000MPMKVFLD RIG_MAKE_MODEL(RIG_YAESU, 25)
|
||||
#define RIG_MODEL_VR5000 RIG_MAKE_MODEL(RIG_YAESU, 26)
|
||||
#define RIG_MODEL_FT450 RIG_MAKE_MODEL(RIG_YAESU, 27)
|
||||
#define RIG_MODEL_FT950 RIG_MAKE_MODEL(RIG_YAESU, 28)
|
||||
#define RIG_MODEL_FT2000 RIG_MAKE_MODEL(RIG_YAESU, 29)
|
||||
#define RIG_MODEL_FT9000 RIG_MAKE_MODEL(RIG_YAESU, 30)
|
||||
#define RIG_MODEL_FT980 RIG_MAKE_MODEL(RIG_YAESU, 31)
|
||||
#define RIG_MODEL_FTDX5000 RIG_MAKE_MODEL(RIG_YAESU, 32)
|
||||
#define RIG_MODEL_VX1700 RIG_MAKE_MODEL(RIG_YAESU, 33)
|
||||
#define RIG_MODEL_FT1200 RIG_MAKE_MODEL(RIG_YAESU, 34)
|
||||
#define RIG_MODEL_FT991 RIG_MAKE_MODEL(RIG_YAESU, 35)
|
||||
|
||||
/*
|
||||
* Kenwood
|
||||
*/
|
||||
#define RIG_KENWOOD 2
|
||||
#define RIG_BACKEND_KENWOOD "kenwood"
|
||||
#define RIG_MODEL_TS50 RIG_MAKE_MODEL(RIG_KENWOOD, 1)
|
||||
#define RIG_MODEL_TS440 RIG_MAKE_MODEL(RIG_KENWOOD, 2)
|
||||
#define RIG_MODEL_TS450S RIG_MAKE_MODEL(RIG_KENWOOD, 3)
|
||||
#define RIG_MODEL_TS570D RIG_MAKE_MODEL(RIG_KENWOOD, 4)
|
||||
#define RIG_MODEL_TS690S RIG_MAKE_MODEL(RIG_KENWOOD, 5)
|
||||
#define RIG_MODEL_TS711 RIG_MAKE_MODEL(RIG_KENWOOD, 6)
|
||||
#define RIG_MODEL_TS790 RIG_MAKE_MODEL(RIG_KENWOOD, 7)
|
||||
#define RIG_MODEL_TS811 RIG_MAKE_MODEL(RIG_KENWOOD, 8)
|
||||
#define RIG_MODEL_TS850 RIG_MAKE_MODEL(RIG_KENWOOD, 9)
|
||||
#define RIG_MODEL_TS870S RIG_MAKE_MODEL(RIG_KENWOOD, 10)
|
||||
#define RIG_MODEL_TS940 RIG_MAKE_MODEL(RIG_KENWOOD, 11)
|
||||
#define RIG_MODEL_TS950 RIG_MAKE_MODEL(RIG_KENWOOD, 12)
|
||||
#define RIG_MODEL_TS950SDX RIG_MAKE_MODEL(RIG_KENWOOD, 13)
|
||||
#define RIG_MODEL_TS2000 RIG_MAKE_MODEL(RIG_KENWOOD, 14)
|
||||
#define RIG_MODEL_R5000 RIG_MAKE_MODEL(RIG_KENWOOD, 15)
|
||||
#define RIG_MODEL_TS570S RIG_MAKE_MODEL(RIG_KENWOOD, 16)
|
||||
#define RIG_MODEL_THD7A RIG_MAKE_MODEL(RIG_KENWOOD, 17)
|
||||
#define RIG_MODEL_THD7AG RIG_MAKE_MODEL(RIG_KENWOOD, 18)
|
||||
#define RIG_MODEL_THF6A RIG_MAKE_MODEL(RIG_KENWOOD, 19)
|
||||
#define RIG_MODEL_THF7E RIG_MAKE_MODEL(RIG_KENWOOD, 20)
|
||||
#define RIG_MODEL_K2 RIG_MAKE_MODEL(RIG_KENWOOD, 21)
|
||||
#define RIG_MODEL_TS930 RIG_MAKE_MODEL(RIG_KENWOOD, 22)
|
||||
#define RIG_MODEL_THG71 RIG_MAKE_MODEL(RIG_KENWOOD, 23)
|
||||
#define RIG_MODEL_TS680S RIG_MAKE_MODEL(RIG_KENWOOD, 24)
|
||||
#define RIG_MODEL_TS140S RIG_MAKE_MODEL(RIG_KENWOOD, 25)
|
||||
#define RIG_MODEL_TMD700 RIG_MAKE_MODEL(RIG_KENWOOD, 26)
|
||||
#define RIG_MODEL_TMV7 RIG_MAKE_MODEL(RIG_KENWOOD, 27)
|
||||
#define RIG_MODEL_TS480 RIG_MAKE_MODEL(RIG_KENWOOD, 28)
|
||||
#define RIG_MODEL_K3 RIG_MAKE_MODEL(RIG_KENWOOD, 29)
|
||||
#define RIG_MODEL_TRC80 RIG_MAKE_MODEL(RIG_KENWOOD, 30)
|
||||
#define RIG_MODEL_TS590S RIG_MAKE_MODEL(RIG_KENWOOD, 31)
|
||||
#define RIG_MODEL_TRANSFOX RIG_MAKE_MODEL(RIG_KENWOOD, 32) /* SigFox Transfox */
|
||||
#define RIG_MODEL_THD72A RIG_MAKE_MODEL(RIG_KENWOOD, 33)
|
||||
#define RIG_MODEL_TMD710 RIG_MAKE_MODEL(RIG_KENWOOD, 34)
|
||||
#define RIG_MODEL_TMV71 RIG_MAKE_MODEL(RIG_KENWOOD, 35)
|
||||
#define RIG_MODEL_F6K RIG_MAKE_MODEL(RIG_KENWOOD, 36) /* Flex 6000 Series */
|
||||
#define RIG_MODEL_TS590SG RIG_MAKE_MODEL(RIG_KENWOOD, 37)
|
||||
#define RIG_MODEL_XG3 RIG_MAKE_MODEL(RIG_KENWOOD, 38)
|
||||
#define RIG_MODEL_TS990S RIG_MAKE_MODEL(RIG_KENWOOD, 39)
|
||||
|
||||
/*
|
||||
* Icom
|
||||
*/
|
||||
#define RIG_ICOM 3
|
||||
#define RIG_BACKEND_ICOM "icom"
|
||||
#define RIG_MODEL_IC1271 RIG_MAKE_MODEL(RIG_ICOM, 1)
|
||||
#define RIG_MODEL_IC1275 RIG_MAKE_MODEL(RIG_ICOM, 2)
|
||||
#define RIG_MODEL_IC271 RIG_MAKE_MODEL(RIG_ICOM, 3)
|
||||
#define RIG_MODEL_IC275 RIG_MAKE_MODEL(RIG_ICOM, 4)
|
||||
#define RIG_MODEL_IC375 RIG_MAKE_MODEL(RIG_ICOM, 5)
|
||||
#define RIG_MODEL_IC471 RIG_MAKE_MODEL(RIG_ICOM, 6)
|
||||
#define RIG_MODEL_IC475 RIG_MAKE_MODEL(RIG_ICOM, 7)
|
||||
#define RIG_MODEL_IC575 RIG_MAKE_MODEL(RIG_ICOM, 8)
|
||||
#define RIG_MODEL_IC706 RIG_MAKE_MODEL(RIG_ICOM, 9)
|
||||
#define RIG_MODEL_IC706MKII RIG_MAKE_MODEL(RIG_ICOM, 10)
|
||||
#define RIG_MODEL_IC706MKIIG RIG_MAKE_MODEL(RIG_ICOM, 11)
|
||||
#define RIG_MODEL_IC707 RIG_MAKE_MODEL(RIG_ICOM, 12)
|
||||
#define RIG_MODEL_IC718 RIG_MAKE_MODEL(RIG_ICOM, 13)
|
||||
#define RIG_MODEL_IC725 RIG_MAKE_MODEL(RIG_ICOM, 14)
|
||||
#define RIG_MODEL_IC726 RIG_MAKE_MODEL(RIG_ICOM, 15)
|
||||
#define RIG_MODEL_IC728 RIG_MAKE_MODEL(RIG_ICOM, 16)
|
||||
#define RIG_MODEL_IC729 RIG_MAKE_MODEL(RIG_ICOM, 17)
|
||||
#define RIG_MODEL_IC731 RIG_MAKE_MODEL(RIG_ICOM, 18)
|
||||
#define RIG_MODEL_IC735 RIG_MAKE_MODEL(RIG_ICOM, 19)
|
||||
#define RIG_MODEL_IC736 RIG_MAKE_MODEL(RIG_ICOM, 20)
|
||||
#define RIG_MODEL_IC737 RIG_MAKE_MODEL(RIG_ICOM, 21)
|
||||
#define RIG_MODEL_IC738 RIG_MAKE_MODEL(RIG_ICOM, 22)
|
||||
#define RIG_MODEL_IC746 RIG_MAKE_MODEL(RIG_ICOM, 23)
|
||||
#define RIG_MODEL_IC751 RIG_MAKE_MODEL(RIG_ICOM, 24)
|
||||
#define RIG_MODEL_IC751A RIG_MAKE_MODEL(RIG_ICOM, 25)
|
||||
#define RIG_MODEL_IC756 RIG_MAKE_MODEL(RIG_ICOM, 26)
|
||||
#define RIG_MODEL_IC756PRO RIG_MAKE_MODEL(RIG_ICOM, 27)
|
||||
#define RIG_MODEL_IC761 RIG_MAKE_MODEL(RIG_ICOM, 28)
|
||||
#define RIG_MODEL_IC765 RIG_MAKE_MODEL(RIG_ICOM, 29)
|
||||
#define RIG_MODEL_IC775 RIG_MAKE_MODEL(RIG_ICOM, 30)
|
||||
#define RIG_MODEL_IC781 RIG_MAKE_MODEL(RIG_ICOM, 31)
|
||||
#define RIG_MODEL_IC820 RIG_MAKE_MODEL(RIG_ICOM, 32)
|
||||
#define RIG_MODEL_IC821 RIG_MAKE_MODEL(RIG_ICOM, 33)
|
||||
#define RIG_MODEL_IC821H RIG_MAKE_MODEL(RIG_ICOM, 34)
|
||||
#define RIG_MODEL_IC970 RIG_MAKE_MODEL(RIG_ICOM, 35)
|
||||
#define RIG_MODEL_ICR10 RIG_MAKE_MODEL(RIG_ICOM, 36)
|
||||
#define RIG_MODEL_ICR71 RIG_MAKE_MODEL(RIG_ICOM, 37)
|
||||
#define RIG_MODEL_ICR72 RIG_MAKE_MODEL(RIG_ICOM, 38)
|
||||
#define RIG_MODEL_ICR75 RIG_MAKE_MODEL(RIG_ICOM, 39)
|
||||
#define RIG_MODEL_ICR7000 RIG_MAKE_MODEL(RIG_ICOM, 40)
|
||||
#define RIG_MODEL_ICR7100 RIG_MAKE_MODEL(RIG_ICOM, 41)
|
||||
#define RIG_MODEL_ICR8500 RIG_MAKE_MODEL(RIG_ICOM, 42)
|
||||
#define RIG_MODEL_ICR9000 RIG_MAKE_MODEL(RIG_ICOM, 43)
|
||||
#define RIG_MODEL_IC910 RIG_MAKE_MODEL(RIG_ICOM, 44)
|
||||
#define RIG_MODEL_IC78 RIG_MAKE_MODEL(RIG_ICOM, 45)
|
||||
#define RIG_MODEL_IC746PRO RIG_MAKE_MODEL(RIG_ICOM, 46)
|
||||
#define RIG_MODEL_IC756PROII RIG_MAKE_MODEL(RIG_ICOM, 47)
|
||||
#define RIG_MODEL_ICID1 RIG_MAKE_MODEL(RIG_ICOM, 54)
|
||||
#define RIG_MODEL_IC703 RIG_MAKE_MODEL(RIG_ICOM, 55)
|
||||
#define RIG_MODEL_IC7800 RIG_MAKE_MODEL(RIG_ICOM, 56)
|
||||
#define RIG_MODEL_IC756PROIII RIG_MAKE_MODEL(RIG_ICOM, 57)
|
||||
#define RIG_MODEL_ICR20 RIG_MAKE_MODEL(RIG_ICOM, 58)
|
||||
#define RIG_MODEL_IC7000 RIG_MAKE_MODEL(RIG_ICOM, 60)
|
||||
#define RIG_MODEL_IC7200 RIG_MAKE_MODEL(RIG_ICOM, 61)
|
||||
#define RIG_MODEL_IC7700 RIG_MAKE_MODEL(RIG_ICOM, 62)
|
||||
#define RIG_MODEL_IC7600 RIG_MAKE_MODEL(RIG_ICOM, 63)
|
||||
#define RIG_MODEL_IC92D RIG_MAKE_MODEL(RIG_ICOM, 65)
|
||||
#define RIG_MODEL_ICR9500 RIG_MAKE_MODEL(RIG_ICOM, 66)
|
||||
#define RIG_MODEL_IC7410 RIG_MAKE_MODEL(RIG_ICOM, 67)
|
||||
#define RIG_MODEL_IC9100 RIG_MAKE_MODEL(RIG_ICOM, 68)
|
||||
#define RIG_MODEL_ICRX7 RIG_MAKE_MODEL(RIG_ICOM, 69)
|
||||
#define RIG_MODEL_IC7100 RIG_MAKE_MODEL(RIG_ICOM, 70)
|
||||
#define RIG_MODEL_ID5100 RIG_MAKE_MODEL(RIG_ICOM, 71)
|
||||
#define RIG_MODEL_IC2730 RIG_MAKE_MODEL(RIG_ICOM, 72)
|
||||
#define RIG_MODEL_IC7300 RIG_MAKE_MODEL(RIG_ICOM, 73)
|
||||
/* next one is 74 */
|
||||
|
||||
/*
|
||||
* Optoelectronics (CI-V)
|
||||
*/
|
||||
#define RIG_MODEL_MINISCOUT RIG_MAKE_MODEL(RIG_ICOM, 48)
|
||||
#define RIG_MODEL_XPLORER RIG_MAKE_MODEL(RIG_ICOM, 49)
|
||||
#define RIG_MODEL_OS535 RIG_MAKE_MODEL(RIG_ICOM, 52)
|
||||
#define RIG_MODEL_OS456 RIG_MAKE_MODEL(RIG_ICOM, 53)
|
||||
|
||||
/*
|
||||
* TenTec (CI-V)
|
||||
*/
|
||||
#define RIG_MODEL_OMNIVI RIG_MAKE_MODEL(RIG_ICOM, 50)
|
||||
#define RIG_MODEL_OMNIVIP RIG_MAKE_MODEL(RIG_ICOM, 51) /* OMNI-VI+ */
|
||||
#define RIG_MODEL_PARAGON2 RIG_MAKE_MODEL(RIG_ICOM, 59)
|
||||
#define RIG_MODEL_DELTAII RIG_MAKE_MODEL(RIG_ICOM, 64)
|
||||
|
||||
/*
|
||||
* Icom PCR
|
||||
*/
|
||||
#define RIG_PCR 4
|
||||
#define RIG_BACKEND_PCR "pcr"
|
||||
#define RIG_MODEL_PCR1000 RIG_MAKE_MODEL(RIG_PCR, 1)
|
||||
#define RIG_MODEL_PCR100 RIG_MAKE_MODEL(RIG_PCR, 2)
|
||||
#define RIG_MODEL_PCR1500 RIG_MAKE_MODEL(RIG_PCR, 3)
|
||||
#define RIG_MODEL_PCR2500 RIG_MAKE_MODEL(RIG_PCR, 4)
|
||||
|
||||
/*
|
||||
* AOR
|
||||
*/
|
||||
#define RIG_AOR 5
|
||||
#define RIG_BACKEND_AOR "aor"
|
||||
#define RIG_MODEL_AR8200 RIG_MAKE_MODEL(RIG_AOR, 1)
|
||||
#define RIG_MODEL_AR8000 RIG_MAKE_MODEL(RIG_AOR, 2)
|
||||
#define RIG_MODEL_AR7030 RIG_MAKE_MODEL(RIG_AOR, 3)
|
||||
#define RIG_MODEL_AR5000 RIG_MAKE_MODEL(RIG_AOR, 4)
|
||||
#define RIG_MODEL_AR3030 RIG_MAKE_MODEL(RIG_AOR, 5)
|
||||
#define RIG_MODEL_AR3000A RIG_MAKE_MODEL(RIG_AOR, 6)
|
||||
#define RIG_MODEL_AR3000 RIG_MAKE_MODEL(RIG_AOR, 7)
|
||||
#define RIG_MODEL_AR2700 RIG_MAKE_MODEL(RIG_AOR, 8)
|
||||
#define RIG_MODEL_AR2500 RIG_MAKE_MODEL(RIG_AOR, 9)
|
||||
#define RIG_MODEL_AR16 RIG_MAKE_MODEL(RIG_AOR, 10)
|
||||
#define RIG_MODEL_SDU5500 RIG_MAKE_MODEL(RIG_AOR, 11)
|
||||
#define RIG_MODEL_SDU5000 RIG_MAKE_MODEL(RIG_AOR, 12)
|
||||
#define RIG_MODEL_AR8600 RIG_MAKE_MODEL(RIG_AOR, 13)
|
||||
#define RIG_MODEL_AR5000A RIG_MAKE_MODEL(RIG_AOR, 14)
|
||||
#define RIG_MODEL_AR7030P RIG_MAKE_MODEL(RIG_AOR, 15)
|
||||
#define RIG_MODEL_SR2200 RIG_MAKE_MODEL(RIG_AOR, 16)
|
||||
|
||||
/*
|
||||
* JRC
|
||||
*/
|
||||
#define RIG_JRC 6
|
||||
#define RIG_BACKEND_JRC "jrc"
|
||||
#define RIG_MODEL_JST145 RIG_MAKE_MODEL(RIG_JRC, 1)
|
||||
#define RIG_MODEL_JST245 RIG_MAKE_MODEL(RIG_JRC, 2)
|
||||
#define RIG_MODEL_CMH530 RIG_MAKE_MODEL(RIG_JRC, 3)
|
||||
#define RIG_MODEL_NRD345 RIG_MAKE_MODEL(RIG_JRC, 4)
|
||||
#define RIG_MODEL_NRD525 RIG_MAKE_MODEL(RIG_JRC, 5)
|
||||
#define RIG_MODEL_NRD535 RIG_MAKE_MODEL(RIG_JRC, 6)
|
||||
#define RIG_MODEL_NRD545 RIG_MAKE_MODEL(RIG_JRC, 7)
|
||||
|
||||
/*
|
||||
* Radio Shack
|
||||
* Actualy, they might be either Icom or Uniden. TBC --SF
|
||||
*/
|
||||
#define RIG_RADIOSHACK 7
|
||||
#define RIG_BACKEND_RADIOSHACK "radioshack"
|
||||
#define RIG_MODEL_RS64 RIG_MAKE_MODEL(RIG_RADIOSHACK, 1) /* PRO-64 */
|
||||
#define RIG_MODEL_RS2005 RIG_MAKE_MODEL(RIG_RADIOSHACK, 2) /* w/ OptoElectronics OS456 Board */
|
||||
#define RIG_MODEL_RS2006 RIG_MAKE_MODEL(RIG_RADIOSHACK, 3) /* w/ OptoElectronics OS456 Board */
|
||||
#define RIG_MODEL_RS2035 RIG_MAKE_MODEL(RIG_RADIOSHACK, 4) /* w/ OptoElectronics OS435 Board */
|
||||
#define RIG_MODEL_RS2042 RIG_MAKE_MODEL(RIG_RADIOSHACK, 5) /* w/ OptoElectronics OS435 Board */
|
||||
#define RIG_MODEL_RS2041 RIG_MAKE_MODEL(RIG_RADIOSHACK, 6) /* PRO-2041 */
|
||||
|
||||
/*
|
||||
* Uniden
|
||||
*/
|
||||
#define RIG_UNIDEN 8
|
||||
#define RIG_BACKEND_UNIDEN "uniden"
|
||||
#define RIG_MODEL_BC780 RIG_MAKE_MODEL(RIG_UNIDEN, 1) /* Uniden BC780 - Trunk Tracker "Desktop Radio" */
|
||||
#define RIG_MODEL_BC245 RIG_MAKE_MODEL(RIG_UNIDEN, 2)
|
||||
#define RIG_MODEL_BC895 RIG_MAKE_MODEL(RIG_UNIDEN, 3)
|
||||
#define RIG_MODEL_PRO2052 RIG_MAKE_MODEL(RIG_UNIDEN, 4) /* Radio Shack PRO-2052 */
|
||||
#define RIG_MODEL_BC235 RIG_MAKE_MODEL(RIG_UNIDEN, 5)
|
||||
#define RIG_MODEL_BC250 RIG_MAKE_MODEL(RIG_UNIDEN, 6)
|
||||
#define RIG_MODEL_BC785 RIG_MAKE_MODEL(RIG_UNIDEN, 7)
|
||||
#define RIG_MODEL_BC786 RIG_MAKE_MODEL(RIG_UNIDEN, 8)
|
||||
#define RIG_MODEL_BCT8 RIG_MAKE_MODEL(RIG_UNIDEN, 9)
|
||||
#define RIG_MODEL_BCD396T RIG_MAKE_MODEL(RIG_UNIDEN, 10)
|
||||
#define RIG_MODEL_BCD996T RIG_MAKE_MODEL(RIG_UNIDEN, 11)
|
||||
#define RIG_MODEL_BC898 RIG_MAKE_MODEL(RIG_UNIDEN, 12)
|
||||
|
||||
/*
|
||||
* Drake
|
||||
*/
|
||||
#define RIG_DRAKE 9
|
||||
#define RIG_BACKEND_DRAKE "drake"
|
||||
#define RIG_MODEL_DKR8 RIG_MAKE_MODEL(RIG_DRAKE, 1)
|
||||
#define RIG_MODEL_DKR8A RIG_MAKE_MODEL(RIG_DRAKE, 2)
|
||||
#define RIG_MODEL_DKR8B RIG_MAKE_MODEL(RIG_DRAKE, 3)
|
||||
|
||||
/*
|
||||
* Lowe
|
||||
*/
|
||||
#define RIG_LOWE 10
|
||||
#define RIG_BACKEND_LOWE "lowe"
|
||||
#define RIG_MODEL_HF150 RIG_MAKE_MODEL(RIG_LOWE, 1)
|
||||
#define RIG_MODEL_HF225 RIG_MAKE_MODEL(RIG_LOWE, 2)
|
||||
#define RIG_MODEL_HF250 RIG_MAKE_MODEL(RIG_LOWE, 3)
|
||||
#define RIG_MODEL_HF235 RIG_MAKE_MODEL(RIG_LOWE, 4)
|
||||
|
||||
/*
|
||||
* Racal
|
||||
*/
|
||||
#define RIG_RACAL 11
|
||||
#define RIG_BACKEND_RACAL "racal"
|
||||
#define RIG_MODEL_RA3790 RIG_MAKE_MODEL(RIG_RACAL, 1)
|
||||
#define RIG_MODEL_RA3720 RIG_MAKE_MODEL(RIG_RACAL, 2)
|
||||
#define RIG_MODEL_RA6790 RIG_MAKE_MODEL(RIG_RACAL, 3)
|
||||
#define RIG_MODEL_RA3710 RIG_MAKE_MODEL(RIG_RACAL, 4)
|
||||
#define RIG_MODEL_RA3702 RIG_MAKE_MODEL(RIG_RACAL, 5)
|
||||
|
||||
/*
|
||||
* Watkins-Johnson
|
||||
*/
|
||||
#define RIG_WJ 12
|
||||
#define RIG_BACKEND_WJ "wj"
|
||||
#define RIG_MODEL_HF1000 RIG_MAKE_MODEL(RIG_WJ, 1)
|
||||
#define RIG_MODEL_HF1000A RIG_MAKE_MODEL(RIG_WJ, 2)
|
||||
#define RIG_MODEL_WJ8711 RIG_MAKE_MODEL(RIG_WJ, 3)
|
||||
#define RIG_MODEL_WJ8888 RIG_MAKE_MODEL(RIG_WJ, 4)
|
||||
|
||||
/*
|
||||
* Rohde & Schwarz
|
||||
*/
|
||||
#define RIG_EK 13
|
||||
#define RIG_BACKEND_EK "ek"
|
||||
#define RIG_MODEL_ESM500 RIG_MAKE_MODEL(RIG_EK, 1)
|
||||
#define RIG_MODEL_EK890 RIG_MAKE_MODEL(RIG_EK, 2)
|
||||
#define RIG_MODEL_EK891 RIG_MAKE_MODEL(RIG_EK, 3)
|
||||
#define RIG_MODEL_EK895 RIG_MAKE_MODEL(RIG_EK, 4)
|
||||
#define RIG_MODEL_EK070 RIG_MAKE_MODEL(RIG_EK, 5)
|
||||
|
||||
/*
|
||||
* Skanti
|
||||
*/
|
||||
#define RIG_SKANTI 14
|
||||
#define RIG_BACKEND_SKANTI "skanti"
|
||||
#define RIG_MODEL_TRP7000 RIG_MAKE_MODEL(RIG_SKANTI, 1)
|
||||
#define RIG_MODEL_TRP8000 RIG_MAKE_MODEL(RIG_SKANTI, 2)
|
||||
#define RIG_MODEL_TRP9000 RIG_MAKE_MODEL(RIG_SKANTI, 3)
|
||||
#define RIG_MODEL_TRP8255 RIG_MAKE_MODEL(RIG_SKANTI, 4)
|
||||
|
||||
/*
|
||||
* WiNRADiO/LinRADiO
|
||||
*/
|
||||
#define RIG_WINRADIO 15
|
||||
#define RIG_BACKEND_WINRADIO "winradio"
|
||||
#define RIG_MODEL_WR1000 RIG_MAKE_MODEL(RIG_WINRADIO, 1)
|
||||
#define RIG_MODEL_WR1500 RIG_MAKE_MODEL(RIG_WINRADIO, 2)
|
||||
#define RIG_MODEL_WR1550 RIG_MAKE_MODEL(RIG_WINRADIO, 3)
|
||||
#define RIG_MODEL_WR3100 RIG_MAKE_MODEL(RIG_WINRADIO, 4)
|
||||
#define RIG_MODEL_WR3150 RIG_MAKE_MODEL(RIG_WINRADIO, 5)
|
||||
#define RIG_MODEL_WR3500 RIG_MAKE_MODEL(RIG_WINRADIO, 6)
|
||||
#define RIG_MODEL_WR3700 RIG_MAKE_MODEL(RIG_WINRADIO, 7)
|
||||
#define RIG_MODEL_G303 RIG_MAKE_MODEL(RIG_WINRADIO, 8)
|
||||
#define RIG_MODEL_G313 RIG_MAKE_MODEL(RIG_WINRADIO, 9)
|
||||
#define RIG_MODEL_G305 RIG_MAKE_MODEL(RIG_WINRADIO, 10)
|
||||
#define RIG_MODEL_G315 RIG_MAKE_MODEL(RIG_WINRADIO, 11)
|
||||
|
||||
/*
|
||||
* Ten Tec
|
||||
*/
|
||||
#define RIG_TENTEC 16
|
||||
#define RIG_BACKEND_TENTEC "tentec"
|
||||
#define RIG_MODEL_TT550 RIG_MAKE_MODEL(RIG_TENTEC, 1) /* Pegasus */
|
||||
#define RIG_MODEL_TT538 RIG_MAKE_MODEL(RIG_TENTEC, 2) /* Jupiter */
|
||||
#define RIG_MODEL_RX320 RIG_MAKE_MODEL(RIG_TENTEC, 3)
|
||||
#define RIG_MODEL_RX340 RIG_MAKE_MODEL(RIG_TENTEC, 4)
|
||||
#define RIG_MODEL_RX350 RIG_MAKE_MODEL(RIG_TENTEC, 5)
|
||||
#define RIG_MODEL_TT526 RIG_MAKE_MODEL(RIG_TENTEC, 6) /* 6N2 */
|
||||
#define RIG_MODEL_TT516 RIG_MAKE_MODEL(RIG_TENTEC, 7) /* Argonaut V */
|
||||
#define RIG_MODEL_TT565 RIG_MAKE_MODEL(RIG_TENTEC, 8) /* Orion */
|
||||
#define RIG_MODEL_TT585 RIG_MAKE_MODEL(RIG_TENTEC, 9) /* Paragon */
|
||||
#define RIG_MODEL_TT588 RIG_MAKE_MODEL(RIG_TENTEC, 11) /* Omni-VII */
|
||||
#define RIG_MODEL_RX331 RIG_MAKE_MODEL(RIG_TENTEC, 12)
|
||||
#define RIG_MODEL_TT599 RIG_MAKE_MODEL(RIG_TENTEC, 13) /* Eagle */
|
||||
|
||||
/*
|
||||
* Alinco
|
||||
*/
|
||||
#define RIG_ALINCO 17
|
||||
#define RIG_BACKEND_ALINCO "alinco"
|
||||
#define RIG_MODEL_DX77 RIG_MAKE_MODEL(RIG_ALINCO, 1)
|
||||
|
||||
/*
|
||||
* Kachina
|
||||
*/
|
||||
#define RIG_KACHINA 18
|
||||
#define RIG_BACKEND_KACHINA "kachina"
|
||||
#define RIG_MODEL_505DSP RIG_MAKE_MODEL(RIG_KACHINA, 1)
|
||||
|
||||
|
||||
/*
|
||||
* Gnuradio backend
|
||||
*/
|
||||
#define RIG_GNURADIO 20
|
||||
#define RIG_BACKEND_GNURADIO "gnuradio"
|
||||
#define RIG_MODEL_GNURADIO RIG_MAKE_MODEL(RIG_GNURADIO, 1) /* dev model, Chirp source */
|
||||
#define RIG_MODEL_MC4020 RIG_MAKE_MODEL(RIG_GNURADIO, 2) /* MC4020 */
|
||||
#define RIG_MODEL_GRAUDIO RIG_MAKE_MODEL(RIG_GNURADIO, 3) /* Sound card source */
|
||||
#define RIG_MODEL_GRAUDIOIQ RIG_MAKE_MODEL(RIG_GNURADIO, 4) /* I&Q stereo sound card source */
|
||||
#define RIG_MODEL_USRP_G RIG_MAKE_MODEL(RIG_GNURADIO, 5) /* Universal Software Radio Peripheral */
|
||||
|
||||
/*
|
||||
* Microtune tuners
|
||||
*/
|
||||
#define RIG_MICROTUNE 21
|
||||
#define RIG_BACKEND_MICROTUNE "microtune"
|
||||
#define RIG_MODEL_MICROTUNE_4937 RIG_MAKE_MODEL(RIG_MICROTUNE, 1) /* eval board */
|
||||
#define RIG_MODEL_MICROTUNE_4702 RIG_MAKE_MODEL(RIG_MICROTUNE, 2) /* Alan's */
|
||||
#define RIG_MODEL_MICROTUNE_4707 RIG_MAKE_MODEL(RIG_MICROTUNE, 3)
|
||||
|
||||
/*
|
||||
* TAPR
|
||||
*/
|
||||
#define RIG_TAPR 22
|
||||
#define RIG_BACKEND_TAPR "tapr"
|
||||
#define RIG_MODEL_DSP10 RIG_MAKE_MODEL(RIG_TAPR, 1)
|
||||
|
||||
/*
|
||||
* Flex-radio
|
||||
*/
|
||||
#define RIG_FLEXRADIO 23
|
||||
#define RIG_BACKEND_FLEXRADIO "flexradio"
|
||||
#define RIG_MODEL_SDR1000 RIG_MAKE_MODEL(RIG_FLEXRADIO, 1)
|
||||
#define RIG_MODEL_SDR1000RFE RIG_MAKE_MODEL(RIG_FLEXRADIO, 2)
|
||||
#define RIG_MODEL_DTTSP RIG_MAKE_MODEL(RIG_FLEXRADIO, 3)
|
||||
#define RIG_MODEL_DTTSP_UDP RIG_MAKE_MODEL(RIG_FLEXRADIO, 4)
|
||||
|
||||
|
||||
/*
|
||||
* VEB Funkwerk Köpenick RFT
|
||||
*/
|
||||
#define RIG_RFT 24
|
||||
#define RIG_BACKEND_RFT "rft"
|
||||
#define RIG_MODEL_EKD500 RIG_MAKE_MODEL(RIG_RFT, 1)
|
||||
|
||||
/*
|
||||
* Various kits
|
||||
*/
|
||||
#define RIG_KIT 25
|
||||
#define RIG_BACKEND_KIT "kit"
|
||||
#define RIG_MODEL_ELEKTOR304 RIG_MAKE_MODEL(RIG_KIT, 1)
|
||||
#define RIG_MODEL_DRT1 RIG_MAKE_MODEL(RIG_KIT, 2)
|
||||
#define RIG_MODEL_DWT RIG_MAKE_MODEL(RIG_KIT, 3)
|
||||
#define RIG_MODEL_USRP0 RIG_MAKE_MODEL(RIG_KIT, 4) /* prototype */
|
||||
#define RIG_MODEL_USRP RIG_MAKE_MODEL(RIG_KIT, 5)
|
||||
#define RIG_MODEL_DDS60 RIG_MAKE_MODEL(RIG_KIT, 6)
|
||||
#define RIG_MODEL_ELEKTOR507 RIG_MAKE_MODEL(RIG_KIT, 7) /* Elektor SDR USB */
|
||||
#define RIG_MODEL_MINIVNA RIG_MAKE_MODEL(RIG_KIT, 8)
|
||||
#define RIG_MODEL_SI570AVRUSB RIG_MAKE_MODEL(RIG_KIT, 9) /* SoftRock Si570 AVR */
|
||||
#define RIG_MODEL_PMSDR RIG_MAKE_MODEL(RIG_KIT, 10)
|
||||
#define RIG_MODEL_SI570PICUSB RIG_MAKE_MODEL(RIG_KIT, 11) /* SoftRock Si570 PIC */
|
||||
#define RIG_MODEL_FIFISDR RIG_MAKE_MODEL(RIG_KIT, 12) /* FiFi-SDR USB */
|
||||
#define RIG_MODEL_FUNCUBEDONGLE RIG_MAKE_MODEL(RIG_KIT, 13) /* FunCUBE Dongle */
|
||||
#define RIG_MODEL_HIQSDR RIG_MAKE_MODEL(RIG_KIT, 14) /* HiQSDR */
|
||||
#define RIG_MODEL_FASDR RIG_MAKE_MODEL(RIG_KIT,15) /* Funkamateur Sdr */
|
||||
#define RIG_MODEL_SI570PEABERRY1 RIG_MAKE_MODEL(RIG_KIT, 16) /* Peaberry V1 */
|
||||
#define RIG_MODEL_SI570PEABERRY2 RIG_MAKE_MODEL(RIG_KIT, 17) /* Peaberry V2 */
|
||||
#define RIG_MODEL_FUNCUBEDONGLEPLUS RIG_MAKE_MODEL(RIG_KIT, 18) /* FunCUBE Dongle Pro+ */
|
||||
|
||||
/*
|
||||
* SW/FM/TV tuner cards supported by Video4Linux,*BSD, ..
|
||||
*/
|
||||
#define RIG_TUNER 26
|
||||
#define RIG_BACKEND_TUNER "tuner"
|
||||
#define RIG_MODEL_V4L RIG_MAKE_MODEL(RIG_TUNER, 1)
|
||||
#define RIG_MODEL_V4L2 RIG_MAKE_MODEL(RIG_TUNER, 2)
|
||||
|
||||
/*
|
||||
* Rohde&Schwarz
|
||||
*/
|
||||
#define RIG_RS 27
|
||||
#define RIG_BACKEND_RS "rs"
|
||||
#define RIG_MODEL_ESMC RIG_MAKE_MODEL(RIG_RS, 1)
|
||||
#define RIG_MODEL_EB200 RIG_MAKE_MODEL(RIG_RS, 2)
|
||||
|
||||
/*
|
||||
* Phillips/Simoco PRM80
|
||||
*/
|
||||
#define RIG_PRM80 28
|
||||
#define RIG_BACKEND_PRM80 "prm80"
|
||||
#define RIG_MODEL_PRM8060 RIG_MAKE_MODEL(RIG_PRM80, 1)
|
||||
#define RIG_MODEL_PRM8070 RIG_MAKE_MODEL(RIG_PRM80, 2)
|
||||
|
||||
/*
|
||||
* ADAT by HB9CBU
|
||||
*
|
||||
* ADDED: frgo (DG1SBG), 2012-01-01
|
||||
*/
|
||||
#define RIG_ADAT 29
|
||||
#define RIG_BACKEND_ADAT "adat"
|
||||
#define RIG_MODEL_ADT_200A RIG_MAKE_MODEL(RIG_ADAT, 1)
|
||||
|
||||
/*
|
||||
* ICOM Marine
|
||||
*/
|
||||
#define RIG_ICMARINE 30
|
||||
#define RIG_BACKEND_ICMARINE "icmarine"
|
||||
#define RIG_MODEL_IC_M700PRO RIG_MAKE_MODEL(RIG_ICMARINE, 1)
|
||||
#define RIG_MODEL_IC_M802 RIG_MAKE_MODEL(RIG_ICMARINE, 2)
|
||||
#define RIG_MODEL_IC_M710 RIG_MAKE_MODEL(RIG_ICMARINE, 3)
|
||||
|
||||
/*
|
||||
* TODO:
|
||||
RIG_MODEL_KWZ30, KNEISNER +DOERING
|
||||
RIG_MODEL_E1800, DASA-Telefunken
|
||||
etc.
|
||||
*/
|
||||
|
||||
/*! \typedef typedef int rig_model_t
|
||||
\brief Convenience type definition for rig model.
|
||||
*/
|
||||
typedef int rig_model_t;
|
||||
|
||||
/*
|
||||
* struct rig_backend_list {
|
||||
* rig_model_t model;
|
||||
* const char *backend;
|
||||
* } rig_backend_list[] = RIG_LIST;
|
||||
*
|
||||
* TODO:
|
||||
*
|
||||
{ RIG_RADIOSHACK, RIG_BACKEND_RADIOSHACK }, \
|
||||
*/
|
||||
|
||||
#endif /* _RIGLIST_H */
|
373
external/hamlib/hamlib/rotator.h
vendored
Normal file
373
external/hamlib/hamlib/rotator.h
vendored
Normal file
@ -0,0 +1,373 @@
|
||||
/*
|
||||
* Hamlib Interface - Rotator API header
|
||||
* Copyright (c) 2000-2005 by Stephane Fillod
|
||||
*
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _ROTATOR_H
|
||||
#define _ROTATOR_H 1
|
||||
|
||||
#include <hamlib/rig.h>
|
||||
#include <hamlib/rotlist.h>
|
||||
|
||||
/**
|
||||
* \addtogroup rotator
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*! \file rotator.h
|
||||
* \brief Hamlib rotator data structures.
|
||||
*
|
||||
* This file contains the data structures and definitions for the Hamlib rotator API.
|
||||
* see the rotator.c file for more details on the rotator API.
|
||||
*/
|
||||
|
||||
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
/* Forward struct references */
|
||||
|
||||
struct rot;
|
||||
struct rot_state;
|
||||
|
||||
/*! \typedef typedef struct rot ROT
|
||||
* \brief Rotator structure definition (see rot for details).
|
||||
*/
|
||||
typedef struct rot ROT;
|
||||
|
||||
|
||||
/*! \typedef typedef float elevation_t
|
||||
* \brief Type definition for elevation.
|
||||
*
|
||||
* The elevation_t type is used as parameter for the
|
||||
* rot_set_position() and rot_get_position() functions.
|
||||
*
|
||||
* Unless specified otherwise, the unit of elevation_t is decimal degrees.
|
||||
*/
|
||||
/*! \typedef typedef float azimuth_t
|
||||
* \brief Type definition for azimuth.
|
||||
*
|
||||
* The azimuth_t type is used as parameter for the
|
||||
* rot_set_position() and rot_get_position() functions.
|
||||
*
|
||||
* Unless specified otherwise, the unit of azimuth_t is decimal degrees.
|
||||
*/
|
||||
typedef float elevation_t;
|
||||
typedef float azimuth_t;
|
||||
|
||||
/** \brief Token in the netrotctl protocol for returning error code */
|
||||
#define NETROTCTL_RET "RPRT "
|
||||
|
||||
/*! \def ROT_RESET_ALL
|
||||
* \brief A macro that returns the flag for the \b reset operation.
|
||||
* \sa rot_reset(), rot_reset_t
|
||||
*/
|
||||
#define ROT_RESET_ALL 1
|
||||
|
||||
/*! \typedef typedef int rot_reset_t
|
||||
* \brief Type definition for rotator reset.
|
||||
*
|
||||
* The rot_reset_t type is used as parameter for
|
||||
* the rot_reset() API function.
|
||||
*/
|
||||
typedef int rot_reset_t;
|
||||
|
||||
|
||||
/** \brief Rotator type flags */
|
||||
typedef enum {
|
||||
ROT_FLAG_AZIMUTH = (1<<1), /*!< Azimuth */
|
||||
ROT_FLAG_ELEVATION = (1<<2) /*!< Elevation */
|
||||
} rot_type_t;
|
||||
|
||||
#define ROT_TYPE_MASK (ROT_FLAG_AZIMUTH|ROT_FLAG_ELEVATION)
|
||||
|
||||
#define ROT_TYPE_OTHER 0
|
||||
#define ROT_TYPE_AZIMUTH ROT_FLAG_AZIMUTH
|
||||
#define ROT_TYPE_ELEVATION ROT_FLAG_ELEVATION
|
||||
#define ROT_TYPE_AZEL (ROT_FLAG_AZIMUTH|ROT_FLAG_ELEVATION)
|
||||
|
||||
|
||||
/*! \def ROT_MOVE_UP
|
||||
* \brief A macro that returns the flag for the \b UP direction.
|
||||
*
|
||||
* This macro defines the value of the \b UP direction which can be
|
||||
* used with the rot_move() function.
|
||||
*
|
||||
* \sa rot_move(), ROT_MOVE_DOWN, ROT_MOVE_LEFT, ROT_MOVE_CCW, ROT_MOVE_RIGHT, ROT_MOVE_CW
|
||||
*/
|
||||
/*! \def ROT_MOVE_DOWN
|
||||
* \brief A macro that returns the flag for the \b DOWN direction.
|
||||
*
|
||||
* This macro defines the value of the \b DOWN direction which can be
|
||||
* used with the rot_move() function.
|
||||
*
|
||||
* \sa rot_move(), ROT_MOVE_UP, ROT_MOVE_LEFT, ROT_MOVE_CCW, ROT_MOVE_RIGHT, ROT_MOVE_CW
|
||||
*/
|
||||
/*! \def ROT_MOVE_LEFT
|
||||
* \brief A macro that returns the flag for the \b LEFT direction.
|
||||
*
|
||||
* This macro defines the value of the \b LEFT direction which can be
|
||||
* used with the rot_move function.
|
||||
*
|
||||
* \sa rot_move(), ROT_MOVE_UP, ROT_MOVE_DOWN, ROT_MOVE_CCW, ROT_MOVE_RIGHT, ROT_MOVE_CW
|
||||
*/
|
||||
/*! \def ROT_MOVE_CCW
|
||||
* \brief A macro that returns the flag for the \b counterclockwise direction.
|
||||
*
|
||||
* This macro defines the value of the \b counterclockwise direction which
|
||||
* can be used with the rot_move() function. This value is equivalent to
|
||||
* ROT_MOVE_LEFT .
|
||||
*
|
||||
* \sa rot_move(), ROT_MOVE_UP, ROT_MOVE_DOWN, ROT_MOVE_LEFT, ROT_MOVE_RIGHT, ROT_MOVE_CW
|
||||
*/
|
||||
/*! \def ROT_MOVE_RIGHT
|
||||
* \brief A macro that returns the flag for the \b RIGHT direction.
|
||||
*
|
||||
* This macro defines the value of the \b RIGHT direction which can be used
|
||||
* with the rot_move() function.
|
||||
*
|
||||
* \sa rot_move(), ROT_MOVE_UP, ROT_MOVE_DOWN, ROT_MOVE_LEFT, ROT_MOVE_CCW, ROT_MOVE_CW
|
||||
*/
|
||||
/*! \def ROT_MOVE_CW
|
||||
* \brief A macro that returns the flag for the \b clockwise direction.
|
||||
*
|
||||
* This macro defines the value of the \b clockwise direction wich can be
|
||||
* used with the rot_move() function. This value is equivalent to
|
||||
* ROT_MOVE_RIGHT .
|
||||
*
|
||||
* \sa rot_move(), ROT_MOVE_UP, ROT_MOVE_DOWN, ROT_MOVE_LEFT, ROT_MOVE_CCW, ROT_MOVE_RIGHT
|
||||
*/
|
||||
#define ROT_MOVE_UP (1<<1)
|
||||
#define ROT_MOVE_DOWN (1<<2)
|
||||
#define ROT_MOVE_LEFT (1<<3)
|
||||
#define ROT_MOVE_CCW ROT_MOVE_LEFT
|
||||
#define ROT_MOVE_RIGHT (1<<4)
|
||||
#define ROT_MOVE_CW ROT_MOVE_RIGHT
|
||||
|
||||
/* Basic rot type, can store some useful
|
||||
* info about different rotators. Each lib must
|
||||
* be able to populate this structure, so we can make
|
||||
* useful enquiries about capablilities.
|
||||
*/
|
||||
|
||||
/*!
|
||||
* Rotator Caps
|
||||
* \struct rot_caps
|
||||
* \brief Rotator data structure.
|
||||
*
|
||||
* The main idea of this struct is that it will be defined by the backend
|
||||
* rotator driver, and will remain readonly for the application.
|
||||
* Fields that need to be modifiable by the application are
|
||||
* copied into the struct rot_state, which is a kind of private
|
||||
* of the ROT instance.
|
||||
* This way, you can have several rigs running within the same application,
|
||||
* sharing the struct rot_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.
|
||||
*/
|
||||
struct rot_caps {
|
||||
rot_model_t rot_model; /*!< Rotator model. */
|
||||
const char *model_name; /*!< Model name. */
|
||||
const char *mfg_name; /*!< Manufacturer. */
|
||||
const char *version; /*!< Driver version. */
|
||||
const char *copyright; /*!< Copyright info. */
|
||||
enum rig_status_e status; /*!< Driver status. */
|
||||
|
||||
int rot_type; /*!< Rotator type. */
|
||||
enum rig_port_e port_type; /*!< Type of communication port. */
|
||||
|
||||
int serial_rate_min; /*!< Minimal serial speed. */
|
||||
int serial_rate_max; /*!< Maximal serial speed. */
|
||||
int serial_data_bits; /*!< Number of data bits. */
|
||||
int serial_stop_bits; /*!< Number of stop bits. */
|
||||
enum serial_parity_e serial_parity; /*!< Parity. */
|
||||
enum serial_handshake_e serial_handshake; /*!< Handshake. */
|
||||
|
||||
int write_delay; /*!< Write delay. */
|
||||
int post_write_delay; /*!< Post-write delay. */
|
||||
int timeout; /*!< Timeout. */
|
||||
int retry; /*!< Number of retry if command fails. */
|
||||
|
||||
/*
|
||||
* Movement range, az is relative to North
|
||||
* negative values allowed for overlap
|
||||
*/
|
||||
azimuth_t min_az; /*!< Lower limit for azimuth (relative to North). */
|
||||
azimuth_t max_az; /*!< Upper limit for azimuth (relative to North). */
|
||||
elevation_t min_el; /*!< Lower limit for elevation. */
|
||||
elevation_t max_el; /*!< Upper limit for elevation. */
|
||||
|
||||
|
||||
const struct confparams *cfgparams; /*!< Configuration parametres. */
|
||||
const rig_ptr_t priv; /*!< Private data. */
|
||||
|
||||
/*
|
||||
* Rot Admin API
|
||||
*
|
||||
*/
|
||||
|
||||
int (*rot_init)(ROT *rot);
|
||||
int (*rot_cleanup)(ROT *rot);
|
||||
int (*rot_open)(ROT *rot);
|
||||
int (*rot_close)(ROT *rot);
|
||||
|
||||
int (*set_conf)(ROT *rot, token_t token, const char *val);
|
||||
int (*get_conf)(ROT *rot, token_t token, char *val);
|
||||
|
||||
/*
|
||||
* General API commands, from most primitive to least.. :()
|
||||
* List Set/Get functions pairs
|
||||
*/
|
||||
|
||||
int (*set_position)(ROT *rot, azimuth_t azimuth, elevation_t elevation);
|
||||
int (*get_position)(ROT *rot, azimuth_t *azimuth, elevation_t *elevation);
|
||||
|
||||
int (*stop)(ROT *rot);
|
||||
int (*park)(ROT *rot);
|
||||
int (*reset)(ROT *rot, rot_reset_t reset);
|
||||
int (*move)(ROT *rot, int direction, int speed);
|
||||
|
||||
/* get firmware info, etc. */
|
||||
const char* (*get_info)(ROT *rot);
|
||||
|
||||
/* more to come... */
|
||||
};
|
||||
|
||||
|
||||
/*!
|
||||
* Rotator state
|
||||
* \struct rot_state
|
||||
* \brief Live data and customized fields.
|
||||
*
|
||||
* This struct contains live data, as well as a copy of capability fields
|
||||
* that may be updated (ie. customized)
|
||||
*
|
||||
* It is fine to move fields around, as this kind of struct should
|
||||
* not be initialized like caps are.
|
||||
*/
|
||||
struct rot_state {
|
||||
/*
|
||||
* overridable fields
|
||||
*/
|
||||
azimuth_t min_az; /*!< Lower limit for azimuth (overridable). */
|
||||
azimuth_t max_az; /*!< Upper limit for azimuth (overridable). */
|
||||
elevation_t min_el; /*!< Lower limit for elevation (overridable). */
|
||||
elevation_t max_el; /*!< Upper limit for elevation (overridable). */
|
||||
|
||||
/*
|
||||
* non overridable fields, internal use
|
||||
*/
|
||||
hamlib_port_t rotport; /*!< Rotator port (internal use). */
|
||||
|
||||
int comm_state; /*!< Comm port state, opened/closed. */
|
||||
rig_ptr_t priv; /*!< Pointer to private rotator state data. */
|
||||
rig_ptr_t obj; /*!< Internal use by hamlib++ for event handling. */
|
||||
|
||||
/* etc... */
|
||||
};
|
||||
|
||||
/**
|
||||
* Rotator structure
|
||||
* \struct rot
|
||||
* \brief This is the master data structure,
|
||||
* acting as a handle for the controlled rotator.
|
||||
*
|
||||
* This is the master data structure, acting as a handle for the controlled
|
||||
* rotator. A pointer to this structure is returned by the rot_init() API
|
||||
* function and is passed as a parameter to every rotator specific API call.
|
||||
*
|
||||
* \sa rot_init(), rot_caps, rot_state
|
||||
*/
|
||||
struct rot {
|
||||
struct rot_caps *caps; /*!< Rotator caps. */
|
||||
struct rot_state state; /*!< Rotator state. */
|
||||
};
|
||||
|
||||
/* --------------- API function prototypes -----------------*/
|
||||
|
||||
extern HAMLIB_EXPORT(ROT *) rot_init HAMLIB_PARAMS((rot_model_t rot_model));
|
||||
extern HAMLIB_EXPORT(int) rot_open HAMLIB_PARAMS((ROT *rot));
|
||||
extern HAMLIB_EXPORT(int) rot_close HAMLIB_PARAMS((ROT *rot));
|
||||
extern HAMLIB_EXPORT(int) rot_cleanup HAMLIB_PARAMS((ROT *rot));
|
||||
|
||||
extern HAMLIB_EXPORT(int) rot_set_conf HAMLIB_PARAMS((ROT *rot, token_t token, const char *val));
|
||||
extern HAMLIB_EXPORT(int) rot_get_conf HAMLIB_PARAMS((ROT *rot, token_t token, char *val));
|
||||
/*
|
||||
* General API commands, from most primitive to least.. )
|
||||
* List Set/Get functions pairs
|
||||
*/
|
||||
extern HAMLIB_EXPORT(int) rot_set_position HAMLIB_PARAMS((ROT *rot, azimuth_t azimuth, elevation_t elevation));
|
||||
extern HAMLIB_EXPORT(int) rot_get_position HAMLIB_PARAMS((ROT *rot, azimuth_t *azimuth, elevation_t *elevation));
|
||||
extern HAMLIB_EXPORT(int) rot_stop HAMLIB_PARAMS((ROT *rot));
|
||||
extern HAMLIB_EXPORT(int) rot_park HAMLIB_PARAMS((ROT *rot));
|
||||
extern HAMLIB_EXPORT(int) rot_reset HAMLIB_PARAMS((ROT *rot, rot_reset_t reset));
|
||||
extern HAMLIB_EXPORT(int) rot_move HAMLIB_PARAMS((ROT *rot, int direction, int speed));
|
||||
extern HAMLIB_EXPORT(const char*) rot_get_info HAMLIB_PARAMS((ROT *rot));
|
||||
|
||||
extern HAMLIB_EXPORT(int) rot_register HAMLIB_PARAMS((const struct rot_caps *caps));
|
||||
extern HAMLIB_EXPORT(int) rot_unregister HAMLIB_PARAMS((rot_model_t rot_model));
|
||||
extern HAMLIB_EXPORT(int) rot_list_foreach HAMLIB_PARAMS((int (*cfunc)(const struct rot_caps*, rig_ptr_t), rig_ptr_t data));
|
||||
extern HAMLIB_EXPORT(int) rot_load_backend HAMLIB_PARAMS((const char *be_name));
|
||||
extern HAMLIB_EXPORT(int) rot_check_backend HAMLIB_PARAMS((rot_model_t rot_model));
|
||||
extern HAMLIB_EXPORT(int) rot_load_all_backends HAMLIB_PARAMS((void));
|
||||
extern HAMLIB_EXPORT(rot_model_t) rot_probe_all HAMLIB_PARAMS((hamlib_port_t *p));
|
||||
|
||||
extern HAMLIB_EXPORT(int) rot_token_foreach HAMLIB_PARAMS((ROT *rot, int (*cfunc)(const struct confparams *, rig_ptr_t), rig_ptr_t data));
|
||||
extern HAMLIB_EXPORT(const struct confparams*) rot_confparam_lookup HAMLIB_PARAMS((ROT *rot, const char *name));
|
||||
extern HAMLIB_EXPORT(token_t) rot_token_lookup HAMLIB_PARAMS((ROT *rot, const char *name));
|
||||
|
||||
extern HAMLIB_EXPORT(const struct rot_caps *) rot_get_caps HAMLIB_PARAMS((rot_model_t rot_model));
|
||||
|
||||
extern HAMLIB_EXPORT(int) qrb HAMLIB_PARAMS((double lon1, double lat1,
|
||||
double lon2, double lat2,
|
||||
double *distance, double *azimuth));
|
||||
extern HAMLIB_EXPORT(double) distance_long_path HAMLIB_PARAMS((double distance));
|
||||
extern HAMLIB_EXPORT(double) azimuth_long_path HAMLIB_PARAMS((double azimuth));
|
||||
|
||||
extern HAMLIB_EXPORT(int) longlat2locator HAMLIB_PARAMS((double longitude,
|
||||
double latitude, char *locator_res, int pair_count));
|
||||
extern HAMLIB_EXPORT(int) locator2longlat HAMLIB_PARAMS((double *longitude,
|
||||
double *latitude, const char *locator));
|
||||
|
||||
extern HAMLIB_EXPORT(double) dms2dec HAMLIB_PARAMS((int degrees, int minutes,
|
||||
double seconds, int sw));
|
||||
extern HAMLIB_EXPORT(int) dec2dms HAMLIB_PARAMS((double dec, int *degrees,
|
||||
int *minutes, double *seconds, int *sw));
|
||||
|
||||
extern HAMLIB_EXPORT(int) dec2dmmm HAMLIB_PARAMS((double dec, int *degrees,
|
||||
double *minutes, int *sw));
|
||||
extern HAMLIB_EXPORT(double) dmmm2dec HAMLIB_PARAMS((int degrees,
|
||||
double minutes, int sw));
|
||||
|
||||
/*! \def rot_debug
|
||||
* \brief Convenience definition for debug level.
|
||||
*
|
||||
* This is just as convenience definition of the rotator debug level,
|
||||
* and is the same as for the rig debug level.
|
||||
*
|
||||
* \sa rig_debug
|
||||
*/
|
||||
#define rot_debug rig_debug
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* _ROTATOR_H */
|
||||
|
||||
/** @} */
|
64
external/hamlib/hamlib/rotclass.h
vendored
Normal file
64
external/hamlib/hamlib/rotclass.h
vendored
Normal file
@ -0,0 +1,64 @@
|
||||
/*
|
||||
* Hamlib C++ bindings - rotator API header
|
||||
* Copyright (c) 2002 by Stephane Fillod
|
||||
*
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _ROTCLASS_H
|
||||
#define _ROTCLASS_H 1
|
||||
|
||||
#include <hamlib/rotator.h>
|
||||
|
||||
|
||||
|
||||
class BACKEND_IMPEXP Rotator {
|
||||
private:
|
||||
ROT* theRot; // Global ref. to the rot
|
||||
|
||||
protected:
|
||||
public:
|
||||
Rotator(rot_model_t rot_model);
|
||||
|
||||
virtual ~Rotator();
|
||||
|
||||
const struct rot_caps *caps;
|
||||
|
||||
// This method open the communication port to the rot
|
||||
void open(void);
|
||||
|
||||
// This method close the communication port to the rot
|
||||
void close(void);
|
||||
|
||||
void setConf(token_t token, const char *val);
|
||||
void setConf(const char *name, const char *val);
|
||||
void getConf(token_t token, char *val);
|
||||
void getConf(const char *name, char *val);
|
||||
token_t tokenLookup(const char *name);
|
||||
|
||||
void setPosition(azimuth_t az, elevation_t el);
|
||||
void getPosition(azimuth_t& az, elevation_t& el);
|
||||
void stop();
|
||||
void park();
|
||||
void reset (rot_reset_t reset);
|
||||
|
||||
void move(int direction, int speed);
|
||||
};
|
||||
|
||||
|
||||
|
||||
#endif // _ROTCLASS_H
|
310
external/hamlib/hamlib/rotlist.h
vendored
Normal file
310
external/hamlib/hamlib/rotlist.h
vendored
Normal file
@ -0,0 +1,310 @@
|
||||
/*
|
||||
* Hamlib Interface - list of known rotators
|
||||
* Copyright (c) 2000-2011 by Stephane Fillod
|
||||
* Copyright (c) 2000-2002 by Frank Singleton
|
||||
*
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _ROTLIST_H
|
||||
#define _ROTLIST_H 1
|
||||
|
||||
#define ROT_MAKE_MODEL(a,b) ((a)*100+(b))
|
||||
#define ROT_BACKEND_NUM(a) ((a)/100)
|
||||
|
||||
/**
|
||||
* \addtogroup rotator
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*! \file rotlist.h
|
||||
* \brief Hamlib rotator model definitions.
|
||||
*
|
||||
* This file contains rotator model definitions for the Hamlib rotator API.
|
||||
* Each distinct rotator type has a unique model number (ID) and is used
|
||||
* by hamlib to identify and distinguish between the different hardware drivers.
|
||||
* The exact model numbers can be acquired using the macros in this
|
||||
* file. To obtain a list of supported rotator branches, one can use the statically
|
||||
* defined ROT_BACKEND_LIST macro. To obtain a full list of supported rotators (including
|
||||
* each model in every branch), the foreach_opened_rot() API function can be used.
|
||||
*
|
||||
* The model number, or ID, is used to tell hamlib, which rotator the client whishes to
|
||||
* use. It is done with the rot_init() API call.
|
||||
*/
|
||||
|
||||
#define ROT_MODEL_NONE 0
|
||||
|
||||
/*! \def ROT_MODEL_DUMMY
|
||||
* \brief A macro that returns the model number for the dummy backend.
|
||||
*
|
||||
* The dummy backend, as the name suggests, is a backend which performs
|
||||
* no hardware operations and always behaves as one would expect. It can
|
||||
* be thought of as a hardware simulator and is very usefull for testing
|
||||
* client applications.
|
||||
*/
|
||||
/*! \def ROT_MODEL_NETROTCTL
|
||||
* \brief A macro that returns the model number for the Network backend.
|
||||
*
|
||||
* This backend allows use of the rotctld daemon through the normal
|
||||
* Hamlib API.
|
||||
*/
|
||||
#define ROT_DUMMY 0
|
||||
#define ROT_BACKEND_DUMMY "dummy"
|
||||
#define ROT_MODEL_DUMMY ROT_MAKE_MODEL(ROT_DUMMY, 1)
|
||||
#define ROT_MODEL_NETROTCTL ROT_MAKE_MODEL(ROT_DUMMY, 2)
|
||||
|
||||
/*
|
||||
* Easycomm
|
||||
*/
|
||||
/*! \def ROT_MODEL_EASYCOMM1
|
||||
* \brief A macro that returns the model number of the EasyComm 1 backend.
|
||||
*
|
||||
* The EasyComm 1 backend can be used with rotators that support the
|
||||
* EASYCOMM I Standard.
|
||||
*/
|
||||
/*! \def ROT_MODEL_EASYCOMM2
|
||||
* \brief A macro that returns the model number of the EasyComm 2 backend.
|
||||
*
|
||||
* The EasyComm 2 backend can be used with rotators that support the
|
||||
* EASYCOMM II Standard.
|
||||
*/
|
||||
#define ROT_EASYCOMM 2
|
||||
#define ROT_BACKEND_EASYCOMM "easycomm"
|
||||
#define ROT_MODEL_EASYCOMM1 ROT_MAKE_MODEL(ROT_EASYCOMM, 1)
|
||||
#define ROT_MODEL_EASYCOMM2 ROT_MAKE_MODEL(ROT_EASYCOMM, 2)
|
||||
#define ROT_MODEL_TRAKBOX ROT_MAKE_MODEL(ROT_EASYCOMM, 3)
|
||||
#define ROT_MODEL_EASYCOMM3 ROT_MAKE_MODEL(ROT_EASYCOMM, 4)
|
||||
|
||||
/*! \def ROT_MODEL_FODTRACK
|
||||
* \brief A macro that returns the model number of the Fodtrack backend.
|
||||
*
|
||||
* The Fodtrack backend can be used with rotators that support the
|
||||
* FODTRACK Standard.
|
||||
*/
|
||||
#define ROT_FODTRACK 3
|
||||
#define ROT_BACKEND_FODTRACK "fodtrack"
|
||||
#define ROT_MODEL_FODTRACK ROT_MAKE_MODEL(ROT_FODTRACK, 1)
|
||||
|
||||
/*! \def ROT_MODEL_ROTOREZ
|
||||
* \brief A macro that returns the model number of the Rotor-EZ backend.
|
||||
*
|
||||
* The Rotor-EZ backend can be used with Hy-Gain rotators that support
|
||||
* the extended DCU command set by Idiom Press Rotor-EZ board.
|
||||
*/
|
||||
/*! \def ROT_MODEL_ROTORCARD
|
||||
* \brief A macro that returns the model number of the Rotor Card backend.
|
||||
*
|
||||
* The Rotor-EZ backend can be used with Yaesu rotators that support the
|
||||
* extended DCU command set by Idiom Press Rotor Card board.
|
||||
*/
|
||||
/*! \def ROT_MODEL_DCU
|
||||
* \brief A macro that returns the model number of the DCU backend.
|
||||
*
|
||||
* The Rotor-EZ backend can be used with rotators that support the
|
||||
* DCU command set by Hy-Gain (currently the DCU-1).
|
||||
*/
|
||||
/*! \def ROT_MODEL_ERC
|
||||
* \brief A macro that returns the model number of the ERC backend.
|
||||
*
|
||||
* The Rotor-EZ backend can be used with rotators that support the
|
||||
* DCU command set by DF9GR (currently the ERC).
|
||||
*/
|
||||
/*! \def ROT_MODEL_RT21
|
||||
* \brief A macro that returns the model number of the RT21 backend.
|
||||
*
|
||||
* The Rotor-EZ backend can be used with rotators that support the
|
||||
* DCU command set by Green Heron (currently the RT-21).
|
||||
*/
|
||||
#define ROT_ROTOREZ 4
|
||||
#define ROT_BACKEND_ROTOREZ "rotorez"
|
||||
#define ROT_MODEL_ROTOREZ ROT_MAKE_MODEL(ROT_ROTOREZ, 1)
|
||||
#define ROT_MODEL_ROTORCARD ROT_MAKE_MODEL(ROT_ROTOREZ, 2)
|
||||
#define ROT_MODEL_DCU ROT_MAKE_MODEL(ROT_ROTOREZ, 3)
|
||||
#define ROT_MODEL_ERC ROT_MAKE_MODEL(ROT_ROTOREZ, 4)
|
||||
#define ROT_MODEL_RT21 ROT_MAKE_MODEL(ROT_ROTOREZ, 5)
|
||||
|
||||
/*! \def ROT_MODEL_SARTEK1
|
||||
* \brief A macro that returns the model number of the SARtek-1 backend.
|
||||
*
|
||||
* The sartek backend can be used with rotators that support the
|
||||
* SARtek protocol.
|
||||
*/
|
||||
#define ROT_SARTEK 5
|
||||
#define ROT_BACKEND_SARTEK "sartek"
|
||||
#define ROT_MODEL_SARTEK1 ROT_MAKE_MODEL(ROT_SARTEK, 1)
|
||||
|
||||
/*! \def ROT_MODEL_GS232A
|
||||
* \brief A macro that returns the model number of the GS-232A backend.
|
||||
*
|
||||
* The GS-232A backend can be used with rotators that support the
|
||||
* GS-232A protocol.
|
||||
*/
|
||||
/*! \def ROT_MODEL_GS232
|
||||
* \brief A macro that returns the model number of the GS-232 backend.
|
||||
*
|
||||
* The GS-232 backend can be used with rotators that support the
|
||||
* GS-232 protocol.
|
||||
*/
|
||||
/*! \def ROT_MODEL_GS232B
|
||||
* \brief A macro that returns the model number of the GS-232B backend.
|
||||
*
|
||||
* The GS-232B backend can be used with rotators that support the
|
||||
* GS-232B protocol.
|
||||
*/
|
||||
/*! \def ROT_MODEL_F1TETRACKER
|
||||
* \brief A macro that returns the model number of the F1TETRACKER backend.
|
||||
*
|
||||
* The F1TETRACKER backend can be used with rotators that support the
|
||||
* F1TETRACKER protocol.
|
||||
*/
|
||||
#define ROT_GS232A 6
|
||||
#define ROT_BACKEND_GS232A "gs232a"
|
||||
#define ROT_MODEL_GS232A ROT_MAKE_MODEL(ROT_GS232A, 1)
|
||||
#define ROT_MODEL_GS232 ROT_MAKE_MODEL(ROT_GS232A, 2) /* Not A or B */
|
||||
#define ROT_MODEL_GS232B ROT_MAKE_MODEL(ROT_GS232A, 3)
|
||||
#define ROT_MODEL_F1TETRACKER ROT_MAKE_MODEL(ROT_GS232A, 4)
|
||||
|
||||
/*! \def ROT_MODEL_PCROTOR
|
||||
* \brief A macro that returns the model number of the PcRotor/WA6UFQ backend.
|
||||
*
|
||||
* The kit backend can be used with home brewed rotators.
|
||||
*/
|
||||
#define ROT_KIT 7
|
||||
#define ROT_BACKEND_KIT "kit"
|
||||
#define ROT_MODEL_PCROTOR ROT_MAKE_MODEL(ROT_KIT, 1)
|
||||
|
||||
/*! \def ROT_MODEL_HD1780
|
||||
* \brief A macro that returns the model number of the HD 1780 backend.
|
||||
*/
|
||||
#define ROT_HEATHKIT 8
|
||||
#define ROT_BACKEND_HEATHKIT "heathkit"
|
||||
#define ROT_MODEL_HD1780 ROT_MAKE_MODEL(ROT_HEATHKIT, 1)
|
||||
|
||||
/*! \def ROT_MODEL_SPID_ROT2PROG
|
||||
* \brief A macro that returns the model number of the ROT2PROG backend.
|
||||
*
|
||||
* The SPID backend can be used with rotators that support the SPID
|
||||
* protocol.
|
||||
*/
|
||||
/*! \def ROT_MODEL_SPID_ROT1PROG
|
||||
* \brief A macro that returns the model number of the ROT1PROG backend.
|
||||
*
|
||||
* The SPID backend can be used with rotators that support the SPID
|
||||
* protocol.
|
||||
*/
|
||||
#define ROT_SPID 9
|
||||
#define ROT_BACKEND_SPID "spid"
|
||||
#define ROT_MODEL_SPID_ROT2PROG ROT_MAKE_MODEL(ROT_SPID, 1)
|
||||
#define ROT_MODEL_SPID_ROT1PROG ROT_MAKE_MODEL(ROT_SPID, 2)
|
||||
|
||||
/*! \def ROT_MODEL_RC2800
|
||||
* \brief A macro that returns the model number of the RC2800 backend.
|
||||
*
|
||||
* The M2 backend can be used with rotators that support the RC2800
|
||||
* protocol and alike.
|
||||
*/
|
||||
#define ROT_M2 10
|
||||
#define ROT_BACKEND_M2 "m2"
|
||||
#define ROT_MODEL_RC2800 ROT_MAKE_MODEL(ROT_M2, 1)
|
||||
|
||||
/*! \def ROT_MODEL_RCI_AZEL
|
||||
* \brief A macro that returns the model number of the RCI_AZEL backend.
|
||||
*
|
||||
* The ARS backend can be used with rotators that support the ARS
|
||||
* protocol.
|
||||
*/
|
||||
/*! \def ROT_MODEL_RCI_AZ
|
||||
* \brief A macro that returns the model number of the RCI_AZ backend.
|
||||
*
|
||||
* The ARS backend can be used with rotators that support the ARS
|
||||
* protocol.
|
||||
*/
|
||||
#define ROT_ARS 11
|
||||
#define ROT_BACKEND_ARS "ars"
|
||||
#define ROT_MODEL_RCI_AZEL ROT_MAKE_MODEL(ROT_ARS, 1)
|
||||
#define ROT_MODEL_RCI_AZ ROT_MAKE_MODEL(ROT_ARS, 2)
|
||||
|
||||
/*! \def ROT_MODEL_IF100
|
||||
* \brief A macro that returns the model number of the IF-100 backend.
|
||||
*
|
||||
* The AMSAT backend can be used with rotators that support,
|
||||
* among other, the IF-100 interface.
|
||||
*/
|
||||
#define ROT_AMSAT 12
|
||||
#define ROT_BACKEND_AMSAT "amsat"
|
||||
#define ROT_MODEL_IF100 ROT_MAKE_MODEL(ROT_AMSAT, 1)
|
||||
|
||||
|
||||
/*! \def ROT_MODEL_TS7400
|
||||
* \brief A macro that returns the model number of the TS7400 backend.
|
||||
*
|
||||
* The TS-7400 backend supports and embedded ARM board using the TS-7400
|
||||
* Linux board. More information is at http://www.embeddedarm.com
|
||||
*/
|
||||
#define ROT_TS7400 13
|
||||
#define ROT_BACKEND_TS7400 "ts7400"
|
||||
#define ROT_MODEL_TS7400 ROT_MAKE_MODEL(ROT_TS7400, 1)
|
||||
|
||||
/*! \def ROT_MODEL_NEXSTAR
|
||||
* \brief A macro that returns the model number of the NEXSTAR backend.
|
||||
*
|
||||
* The CELESTRON backend can be used with rotators that support the Celestron
|
||||
* protocol and alike.
|
||||
*/
|
||||
#define ROT_CELESTRON 14
|
||||
#define ROT_BACKEND_CELESTRON "celestron"
|
||||
#define ROT_MODEL_NEXSTAR ROT_MAKE_MODEL(ROT_CELESTRON, 1)
|
||||
|
||||
/*! \def ROT_MODEL_ETHER6
|
||||
* \brief A macro that returns the model number of the Ether6 backend.
|
||||
*
|
||||
* The Ether6 backend can be used with rotators that support the Ether6
|
||||
* protocol and alike.
|
||||
*/
|
||||
#define ROT_ETHER6 15
|
||||
#define ROT_BACKEND_ETHER6 "ether6"
|
||||
#define ROT_MODEL_ETHER6 ROT_MAKE_MODEL(ROT_ETHER6, 1)
|
||||
|
||||
|
||||
/*! \def ROT_MODEL_CNCTRK
|
||||
* \brief A macro that returns the model number of the CNCTRK backend.
|
||||
*
|
||||
* The CNCTRK backend can be used with rotators that support,
|
||||
* the LinuxCNC running Axis GUI interface.
|
||||
*/
|
||||
#define ROT_CNCTRK 16
|
||||
#define ROT_BACKEND_CNCTRK "cnctrk"
|
||||
#define ROT_MODEL_CNCTRK ROT_MAKE_MODEL(ROT_CNCTRK, 1)
|
||||
|
||||
|
||||
/*! \def ROT_MODEL_PROSISTEL
|
||||
* \brief A macro that returns the model number of the PROSISTEL backend.
|
||||
*
|
||||
*/
|
||||
#define ROT_PROSISTEL 17
|
||||
#define ROT_BACKEND_PROSISTEL "prosistel"
|
||||
#define ROT_MODEL_PROSISTEL ROT_MAKE_MODEL(ROT_PROSISTEL, 1)
|
||||
|
||||
|
||||
/*! \typedef typedef int rot_model_t
|
||||
\brief Convenience type definition for rotator model.
|
||||
*/
|
||||
typedef int rot_model_t;
|
||||
|
||||
#endif /* _ROTLIST_H */
|
||||
|
||||
/** @} */
|
Loading…
Reference in New Issue
Block a user