1 // =====================================================================
2 //
3 // status.h
4 //
5 // Author(s):
6 // 	Dave Freese, W1HKJ Copyright (C) 2010
7 //	Robert Stiles, KK5VD Copyright (C) 2013
8 //
9 // This file is part of FLAMP.
10 //
11 // This is free software; you can redistribute it and/or modify
12 // it under the terms of the GNU General Public License as published by
13 // the Free Software Foundation; either version 3 of the License, or
14 // (at your option) any later version.
15 //
16 // This software is distributed in the hope that it will be useful,
17 // but WITHOUT ANY WARRANTY; without even the implied warranty of
18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 // GNU General Public License for more details.
20 //
21 // You should have received a copy of the GNU General Public License
22 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
23 //
24 // =====================================================================
25 
26 #ifndef _status_H
27 #define _status_H
28 
29 #include <string>
30 
31 using namespace std;
32 
33 struct status {
34 	int		mainX;
35 	int		mainY;
36 	std::string my_call;
37 	std::string my_info;
38 
39 	std::string socket_addr;
40 	std::string socket_port;
41 	std::string xmlrpc_addr;
42 	std::string xmlrpc_port;
43 
44 	std::string user_socket_addr;
45 	std::string user_socket_port;
46 	std::string user_xmlrpc_addr;
47 	std::string user_xmlrpc_port;
48 
49 	bool use_compression;
50 	int  encoder;
51 	std::string encoder_string;
52 
53 	int  selected_mode;
54 
55 	int blocksize;
56 	int repeatNN;
57 	int repeat_header;
58 
59 	bool sync_mode_flamp_fldigi;
60 	bool sync_mode_fldigi_flamp;
61 	bool fldigi_xmt_mode_change;
62 
63 	int repeat_every;
64 	bool repeat_at_times;
65 	string repeat_times;
66 	bool repeat_forever;
67 
68 	bool use_txrx_interval;
69 	float  tx_interval_minutes;
70 	int  rx_interval_seconds;
71 
72 	bool use_header_modem;
73 	int  header_selected_mode;
74 	bool disable_header_modem_on_block_fills;
75 
76 	int  use_tx_on_report;
77 
78 	bool clear_tosend_on_tx_blocks;
79 
80 	bool enable_delete_warning;
81 
82 	bool enable_tx_unproto;
83 	bool enable_unproto_markers;
84 
85 	bool queue_fills_only;
86 
87 	bool auto_load_queue;
88 	bool load_from_tx_folder;
89 	string auto_load_queue_path;
90 
91 	bool hamcast_mode_cycle;
92 
93 	bool hamcast_mode_enable_1;
94 	int  hamcast_mode_selection_1;
95 
96 	bool hamcast_mode_enable_2;
97 	int  hamcast_mode_selection_2;
98 
99 	bool hamcast_mode_enable_3;
100 	int  hamcast_mode_selection_3;
101 
102 	bool hamcast_mode_enable_4;
103 	int  hamcast_mode_selection_4;
104 
105 	bool auto_rx_save;
106 	bool auto_rx_save_local_time;
107 
108 	void saveLastState();
109 	void loadLastState();
110 };
111 
112 extern status progStatus;
113 
114 #endif
115