1 // ----------------------------------------------------------------------------
2 // Copyright (C) 2014
3 //              David Freese, W1HKJ
4 //
5 // This file is part of flrig.
6 //
7 // flrig is free software; you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation; either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // flrig is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // aunsigned long int with this program.  If not, see <http://www.gnu.org/licenses/>.
19 // ----------------------------------------------------------------------------
20 
21 #ifndef _IC7410_H
22 #define _IC7410_H
23 
24 #include "IC746.h"
25 
26 class RIG_IC7410 : public RIG_IC746PRO {
27 public:
28 	RIG_IC7410();
~RIG_IC7410()29 	~RIG_IC7410(){}
30 
31 	void initialize();
32 
33 	void selectA();
34 	void selectB();
35 
36 	void set_modeA(int val);
37 	int  get_modeA();
38 
39 	void set_modeB(int val);
40 	int  get_modeB();
41 
42 	void set_bwA(int val);
43 	int  get_bwA();
44 
45 	void set_bwB(int val);
46 	int  get_bwB();
47 
48 	int  adjust_bandwidth(int m);
49 	int  def_bandwidth(int m);
50 
51 	void set_attenuator( int val );
52 	int  get_attenuator();
53 	void set_mic_gain(int v);
54 
55 	void set_pbt_inner(int val);
56 	void set_pbt_outer(int val);
57 
58 	int  get_pbt_inner();
59 	int  get_pbt_outer();
60 
61 	void set_compression(int, int);
get_comp_min_max_step(int & min,int & max,int & step)62 	void get_comp_min_max_step(int &min, int &max, int &step) {
63 		min = 0; max = 10; step = 1; }
64 	void set_vox_onoff();
65 	void set_vox_gain();
66 	void set_vox_anti();
67 	void set_vox_hang();
get_vox_hang_min_max_step(int & min,int & max,int & step)68 	void get_vox_hang_min_max_step(int &min, int &max, int &step) {
69 		min = 0; max = 200; step = 10; }
70 
get_cw_wpm_min_max(int & min,int & max)71 	void get_cw_wpm_min_max(int &min, int &max) {
72 		min = 6; max = 48; }
73 
get_cw_qsk_min_max_step(double & min,double & max,double & step)74 	void get_cw_qsk_min_max_step(double &min, double &max, double &step) {
75 		min = 2.0; max = 13.0; step = 0.1; }
76 
get_cw_spot_tone_min_max_step(int & min,int & max,int & step)77 	void get_cw_spot_tone_min_max_step(int &min, int &max, int &step) {
78 		min = 300; max = 900; step = 5; }
79 
80 	void set_cw_wpm();
81 	void set_cw_qsk();
82 	void set_cw_spot_tone();
83 	void set_cw_vol();
84 
canswap()85 	bool canswap() { return true; }
86 
87 	void set_PTT_control(int val);
88 	int  get_PTT();
89 
90 	const char *FILT(int &val);
91 	const char *nextFILT();
92 
93 	const char **bwtable(int m);
94 
95 	void set_band_selection(int v);
96 	void get_band_selection(int v);
97 
98 };
99 
100 #endif
101