Mercurial > public > ostc4
annotate Discovery/Inc/tStructure.h @ 429:7f351c25608a ImprovmentNVM_2
Marked possible code improvment for future activities:
parameters stored in the settings were not trusted. LastDive ID and Sample index are usually calculated at startup. This calculation could be avoided, nevertheless the implementation works => only TODO
Removed function without effect:
Calling writeblock with legth 0 has no effect
author | ideenmodellierer |
---|---|
date | Mon, 17 Feb 2020 19:43:09 +0100 |
parents | 2b31cf1ebbcc |
children | 998529b3e142 |
rev | line source |
---|---|
38 | 1 /////////////////////////////////////////////////////////////////////////////// |
2 /// -*- coding: UTF-8 -*- | |
3 /// | |
4 /// \file Discovery/Inc/tStructure.h | |
5 /// \brief Header file for All | |
6 /// \author heinrichs weikamp gmbh | |
7 /// \date 04-July-2014 | |
8 /// | |
9 /// $Id$ | |
10 /////////////////////////////////////////////////////////////////////////////// | |
11 /// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh | |
12 /// | |
13 /// This program is free software: you can redistribute it and/or modify | |
14 /// it under the terms of the GNU General Public License as published by | |
15 /// the Free Software Foundation, either version 3 of the License, or | |
16 /// (at your option) any later version. | |
17 /// | |
18 /// This program is distributed in the hope that it will be useful, | |
19 /// but WITHOUT ANY WARRANTY; without even the implied warranty of | |
20 /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
21 /// GNU General Public License for more details. | |
22 /// | |
23 /// You should have received a copy of the GNU General Public License | |
24 /// along with this program. If not, see <http://www.gnu.org/licenses/>. | |
25 ////////////////////////////////////////////////////////////////////////////// | |
26 | |
27 /* Define to prevent recursive inclusion -------------------------------------*/ | |
28 #ifndef TSTRUCTURE_H | |
29 #define TSTRUCTURE_H | |
30 | |
31 #ifdef __cplusplus | |
32 extern "C" { | |
33 #endif | |
34 | |
35 /* Includes ------------------------------------------------------------------*/ | |
36 #include "stdint.h" | |
37 | |
38 /** @addtogroup Template | |
39 * @{ | |
40 */ | |
41 | |
42 | |
43 #ifdef __cplusplus | |
44 } | |
45 #endif | |
46 | |
47 #define _MB(base,menuPage,menuLine,menuEditField,menuEditWhichMode) ((base << 28) + (menuPage << 24) + (menuLine << 16) + (menuEditField << 8) + menuEditWhichMode) | |
48 | |
49 #define BaseInfo 0 | |
50 #define BaseHome 1 | |
51 #define BaseMenu 2 | |
52 #define BaseComm 3 | |
53 #define BaseStop 6 | |
54 #define BaseBoot 7 | |
55 | |
56 #define PageDebug 0 | |
57 #define PageSurface 1 | |
58 #define PageDive 2 | |
59 | |
60 #define MaskLineFieldDigit _MB(7,15,0,0,0) | |
61 #define MaskFieldDigit _MB(7,15,255,0,0) | |
62 #define MaskAllButLine _MB(0,0,255,0,0) | |
63 #define MaskLineDigit _MB(7,15,0,255,0) | |
64 #define InfoPageLogList 2 | |
65 #define InfoPageLogShow 3 | |
66 #define InfoPageCompass 6 | |
67 | |
68 #define StI _MB(0,1,0,0,0) | |
69 #define StILOGLIST _MB(0,2,0,0,0) | |
70 #define StILOGSHOW _MB(0,3,0,0,0) | |
71 #define StIDIVE _MB(0,4,0,0,0) | |
72 #define StISIM _MB(0,5,0,0,0) | |
73 #define StICOMPASS _MB(0,6,0,0,0) | |
74 #define StIDEBUG _MB(0,7,0,0,0) | |
75 | |
76 #define StI_GoToLogbook _MB(0,1,1,0,0) | |
77 #define StI_GoToPlanner _MB(0,1,2,0,0) | |
78 #define StI_StartSimulator _MB(0,1,3,0,0) | |
79 | |
80 #define StISIM_Descend _MB(0,5,1,0,0) | |
81 #define StISIM_Ascend _MB(0,5,2,0,0) | |
82 #define StISIM_Divetime _MB(0,5,3,0,0) | |
83 #define StISIM_Exit _MB(0,5,4,0,0) | |
84 #define StISIM_FollowDeco _MB(0,5,5,0,0) | |
85 | |
86 | |
87 #define StDEBUG _MB(1,0,0,0,0) | |
88 #define StS _MB(1,1,0,0,0) | |
89 #define StD _MB(1,2,0,0,0) | |
90 #define StDMGAS _MB(1,2,1,0,0) | |
91 #define StDMSPT _MB(1,2,2,0,0) | |
92 #define StDMENU _MB(1,2,3,0,0) | |
93 #define StDSIM1 _MB(1,2,4,0,0) | |
94 #define StDSIM2 _MB(1,2,5,0,0) | |
95 #define StDSIM3 _MB(1,2,6,0,0) | |
96 #define StDSIM4 _MB(1,2,7,0,0) | |
97 #define StDBEAR _MB(1,2,8,0,0) | |
98 #define StDRAVG _MB(1,2,9,0,0) | |
99 #define StDQUIT _MB(1,2,10,0,0) | |
100 | |
101 | |
102 #define StUART_STANDARD _MB(3,1,0,0,0) | |
103 #define StUART_RTECONNECT _MB(3,2,0,0,0) | |
104 | |
105 #define StStop _MB(6,0,0,0,0) | |
106 #define StBoot0 _MB(7,0,0,0,0) | |
107 | |
108 /* globalState defines in which visible range the cursor can move */ | |
109 /* position of the cursor does not affect globalState */ | |
110 /* next page is a different globalState */ | |
111 /* next line, field or digit is not a different state */ | |
112 /* digit is empty at the moment and be reused for future features */ | |
113 | |
114 /* PAGE 1 */ | |
115 #define StMOG _MB(2,1,0,0,0) | |
116 | |
117 /* PAGE 1 MENU EDIT */ | |
118 | |
119 /* PAGE 1 EDIT FIELD CONTENT */ | |
120 /* used for PAGE 2 AS WELL */ | |
121 #define StMOG_Mix _MB(2,1,255,1,0) | |
122 #define StMOG_GasType _MB(2,1,255,2,0) | |
123 #define StMOG_ChangeDepth _MB(2,1,255,3,0) | |
124 #define StMOG_SetToMOD _MB(2,1,255,4,0) | |
125 #define StMOG_Bottle _MB(2,1,255,5,0) | |
126 | |
127 #define StMOG_MOD _MB(2,1,255,9,0) | |
128 | |
129 #define StMOG_First _MB(2,1,255,21,0) | |
130 #define StMOG_Deco _MB(2,1,255,22,0) | |
131 #define StMOG_Travel _MB(2,1,255,23,0) | |
132 #define StMOG_Inactive _MB(2,1,255,24,0) | |
133 | |
134 #define StMOG_NoTransmitter _MB(2,1,255,30,0) | |
135 #define StMOG_Transmitter1 _MB(2,1,255,31,0) | |
136 #define StMOG_Transmitter2 _MB(2,1,255,32,0) | |
137 #define StMOG_Transmitter3 _MB(2,1,255,33,0) | |
138 #define StMOG_Transmitter4 _MB(2,1,255,34,0) | |
139 #define StMOG_Transmitter5 _MB(2,1,255,35,0) | |
140 //#define StMOG_Transmitter6 _MB(2,1,255,36,0) | |
141 //#define StMOG_Transmitter7 _MB(2,1,255,37,0) | |
142 //#define StMOG_Transmitter8 _MB(2,1,255,38,0) | |
143 //#define StMOG_Transmitter9 _MB(2,1,255,39,0) | |
144 | |
145 #define StMOG_DM_ActiveBase _MB(2,1,6,255,0) | |
146 #define StMOG_DM_ExtraMix _MB(2,1,6,6,0) | |
147 /* | |
148 #define StMOG_DM_Active1 _MB(2,1,6,255,1) | |
149 #define StMOG_DM_Active2 _MB(2,1,6,255,2) | |
150 #define StMOG_DM_Active3 _MB(2,1,6,255,3) | |
151 #define StMOG_DM_Active4 _MB(2,1,6,255,4) | |
152 #define StMOG_DM_Active5 _MB(2,1,6,255,5) | |
153 #define StMOG_DM_Active6 _MB(2,1,6,255,6) | |
154 #define StMOG_DM_Active7 _MB(2,1,6,255,7) | |
155 #define StMOG_DM_Active8 _MB(2,1,6,1,8) | |
156 #define StMOG_DM_Active9 _MB(2,1,6,1,9) | |
157 #define StMOG_DM_Active10 _MB(2,1,6,1,10) | |
158 */ | |
159 | |
160 /* | |
161 #define StMOG_Depth _MB(2,1,255, 2,0) | |
162 #define StMOG_DefaultDepth _MB(2,1,255, 4,0) | |
163 #define StMOG_Reset _MB(2,1,255, 5,0) | |
164 #define StMOG_ToggleDefault _MB(2,1,255, 6,0) | |
165 #define StMOG_SensorLink _MB(2,1,255, 9,0) | |
166 #define StMOG_Size _MB(2,1,255,10,0) | |
167 */ | |
168 | |
169 /* PAGE 2 */ | |
170 #define StMCG _MB(2,2,0,0,0) | |
171 /* PAGE 3 */ | |
172 #define StMSP _MB(2,3,0,0,0) | |
173 | |
174 /* PAGE 3 EDIT FIELD CONTENT */ | |
175 #define StMSP_ppo2_setting _MB(2,3,255,1,0) | |
176 #define StMSP_Depth _MB(2,3,255,2,0) | |
177 #define StMSP_Active _MB(2,3,255,3,0) | |
178 #define StMSP_First _MB(2,3,255,4,0) | |
179 #define StMSP_Select _MB(2,3,255,5,0) | |
180 #define StMSP_Sensor1 _MB(2,3,255,6,0) | |
181 #define StMSP_Sensor2 _MB(2,3,255,7,0) | |
182 #define StMSP_Sensor3 _MB(2,3,255,8,0) | |
183 | |
184 /* PAGE 4 */ | |
185 #define StMXTRA _MB(2,4,0,0,0) | |
186 | |
187 /* PAGE 4 MENU EDIT */ | |
188 #define StMXTRA_ResetStopwatch _MB(2,4,1,1,0) | |
189 #define StMXTRA_CompassHeading _MB(2,4,2,1,0) | |
190 | |
191 /* PAGE 5 */ | |
192 #define StMDECO _MB(2,5,0,0,0) | |
193 | |
194 /* PAGE 5 MENU EDIT */ | |
195 /* | |
196 #define StMDECO1 _MB(2,5,1,0,0) | |
197 #define StMDECO2 _MB(2,5,2,0,0) | |
198 #define StMDECO3 _MB(2,5,3,0,0) | |
199 #define StMDECO4 _MB(2,5,4,0,0) | |
200 #define StMDECO5 _MB(2,5,5,0,0) | |
201 #define StMDECO6 _MB(2,5,6,0,0) | |
202 */ | |
203 | |
204 /* PAGE 5 EDIT FIELD CONTENT */ | |
205 #define StMDECO1_OC _MB(2,5,1,1,0) | |
206 #define StMDECO1_CC _MB(2,5,1,2,0) | |
207 #define StMDECO1_Apnea _MB(2,5,1,3,0) | |
208 #define StMDECO1_Gauge _MB(2,5,1,4,0) | |
209 | |
210 #define StMDECO2_CCRmode _MB(2,5,2,1,0) | |
211 #define StMDECO3_PPO2Max _MB(2,5,3,1,0) | |
212 #define StMDECO4_SafetyStop _MB(2,5,4,1,0) | |
213 #define StMDECO5_FUTURE _MB(2,5,5,1,0) | |
214 #define StMDECO6_SALINITY _MB(2,5,6,1,0) | |
215 | |
216 /* PAGE 6 */ | |
217 #define StMDECOP _MB(2,6,0,0,0) | |
218 | |
219 #define StMDECOP1_Algorithm _MB(2,6,1,1,0) | |
220 #define StMDECOP2_VPM _MB(2,6,2,1,0) | |
221 #define StMDECOP3_GF _MB(2,6,3,1,0) | |
222 #define StMDECOP4_AltGF _MB(2,6,4,1,0) | |
223 #define StMDECOP5_LASTSTOP _MB(2,6,5,1,0) | |
224 | |
225 #define StMDECOP7_ActiveGF _MB(2,6,7,1,0) | |
226 #define StMDECOP8_ActiveVPM _MB(2,6,8,1,0) | |
227 #define StMDECOP9_ActiveAltGF _MB(2,6,9,1,0) | |
228 | |
229 /* PAGE 7 */ | |
230 #define StMHARD _MB(2,7,0,0,0) | |
231 | |
232 /* PAGE 7 EDIT FIELD CONTENT */ | |
233 | |
234 | |
235 #define StMHARD1_Bluetooth _MB(2,7,1,1,0) | |
236 | |
237 #define StMHARD2_Compass_SetCourse _MB(2,7,2,2,0) | |
238 #define StMHARD2_Compass_ResetCourse _MB(2,7,2,3,0) | |
239 #define StMHARD2_Compass_Calibrate _MB(2,7,2,4,0) | |
240 | |
241 //#define StMHARD2_Exit _MB(2,7,2,2,0) | |
242 | |
243 #define StMHARD3_O2_Sensor1 _MB(2,7,3,1,0) | |
244 #define StMHARD3_O2_Sensor2 _MB(2,7,3,2,0) | |
245 #define StMHARD3_O2_Sensor3 _MB(2,7,3,3,0) | |
246 #define StMHARD3_O2_Fallback _MB(2,7,3,4,0) | |
247 | |
248 #define StMHARD4_BrightnessEco _MB(2,7,4,1,0) | |
249 #define StMHARD4_BrightnessStd _MB(2,7,4,2,0) | |
250 #define StMHARD4_BrightnessHigh _MB(2,7,4,3,0) | |
251 #define StMHARD4_BrightnessMax _MB(2,7,4,4,0) | |
252 | |
253 #define StMHARD5_Button1 _MB(2,7,5,1,0) | |
254 #define StMHARD5_ButtonBalance1 _MB(2,7,5,2,0) | |
255 #define StMHARD5_ButtonBalance2 _MB(2,7,5,3,0) | |
256 #define StMHARD5_ButtonBalance3 _MB(2,7,5,4,0) | |
257 | |
258 //#define StMHARD6_UpdateCPU2_No _MB(2,7,6,1,0) | |
259 //#define StMHARD6_UpdateCPU2_Yes _MB(2,7,6,2,0) | |
260 //#define StMHARD6_UpdateCPU2_Now _MB(2,7,6,3,0) | |
261 | |
262 /* PAGE 8 */ | |
263 #define StMSYS _MB(2,8,0,0,0) | |
264 | |
265 /* PAGE 8 EDIT FIELD CONTENT */ | |
266 #define StMSYS1_Date _MB(2,8,1,1,0) | |
267 #define StMSYS1_Time _MB(2,8,1,2,0) | |
268 #define StMSYS1_DDMMYY _MB(2,8,1,3,0) | |
269 #define StMSYS1_MMDDYY _MB(2,8,1,4,0) | |
270 #define StMSYS1_YYMMDD _MB(2,8,1,5,0) | |
271 #define StMSYS1_DST _MB(2,8,1,6,0) | |
272 | |
273 #define StMSYS2_English _MB(2,8,2,1,0) | |
274 #define StMSYS2_German _MB(2,8,2,2,0) | |
275 #define StMSYS2_French _MB(2,8,2,3,0) | |
276 #define StMSYS2_Italian _MB(2,8,2,4,0) | |
277 #define StMSYS2_Espanol _MB(2,8,2,5,0) | |
278 | |
279 #define StMSYS3_Units _MB(2,8,3,1,0) | |
280 #define StMSYS3_Colors _MB(2,8,3,2,0) | |
281 #define StMSYS3_Debug _MB(2,8,3,3,0) | |
282 | |
283 #define StMSYS4_CViewTimeout _MB(2,8,4,1,0) | |
284 #define StMSYS4_CViewStandard _MB(2,8,4,2,0) | |
285 #define StMSYS4_CornerTimeout _MB(2,8,4,3,0) | |
368
50ea68c7a153
Added menu item for motion detection. There are several possibility to use motion detection for user action input. To select of the a new menu entry has been added to the Sys2 =>Custom View Menu (Variables in german)
ideenmodellierer
parents:
138
diff
changeset
|
286 #define StMSYS4_CornerStandard _MB(2,8,4,4,0) |
38 | 287 #define StMSYS4_ExtraDisplay _MB(2,8,4,5,0) |
368
50ea68c7a153
Added menu item for motion detection. There are several possibility to use motion detection for user action input. To select of the a new menu entry has been added to the Sys2 =>Custom View Menu (Variables in german)
ideenmodellierer
parents:
138
diff
changeset
|
288 #define StMSYS4_MotionCtrl _MB(2,8,4,6,0) |
38 | 289 |
290 #define StMSYS5_Info _MB(2,8,5,1,0) | |
291 | |
292 | |
424
2b31cf1ebbcc
Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents:
382
diff
changeset
|
293 #define StMSYS6_Exit _MB(2,8,6,1,0) |
38 | 294 #define StMSYS6_LogbookOffset _MB(2,8,6,7,0) |
424
2b31cf1ebbcc
Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents:
382
diff
changeset
|
295 #define StMSYS6_ResetAll _MB(2,8,6,2,0) |
2b31cf1ebbcc
Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents:
382
diff
changeset
|
296 #define StMSYS6_ResetDeco _MB(2,8,6,3,0) |
2b31cf1ebbcc
Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents:
382
diff
changeset
|
297 #define StMSYS6_Reboot _MB(2,8,6,4,0) |
38 | 298 #define StMSYS6_Maintenance _MB(2,8,6,5,0) |
299 #define StMSYS6_ResetLogbook _MB(2,8,6,6,0) | |
300 #define StMSYS6_SetBattCharge _MB(2,8,6,7,0) | |
424
2b31cf1ebbcc
Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents:
382
diff
changeset
|
301 #define StMSYS6_RebootRTE _MB(2,8,6,8,0) |
38 | 302 #define StMSYS6_RebootMainCPU _MB(2,8,6,9,0) |
303 #define StMSYS6_ScreenTest _MB(2,8,6,10,0) | |
304 #define StMSYS6_SetFactoryBC _MB(2,8,6,11,0) | |
424
2b31cf1ebbcc
Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents:
382
diff
changeset
|
305 #define StMSYS6_SetSampleIndx _MB(2,8,6,12,0) |
38 | 306 |
307 /* PAGE 9 */ | |
308 #define StMPLAN _MB(2,9,0,0,0) | |
309 | |
310 /* PAGE 9 EDIT FIELD CONTENT */ | |
311 #define StMPLAN2_Interval _MB(2,9,2,1,0) | |
312 #define StMPLAN3_DiveTime _MB(2,9,3,1,0) | |
313 #define StMPLAN4_MaxDepth _MB(2,9,4,1,0) | |
314 #define StMPLAN5_ExitResult _MB(2,9,5,1,0) | |
315 #define StMPLAN4_Settings _MB(2,9,6,1,0) | |
316 | |
317 | |
318 //#define StMDECO6_SALINITY _MB(2,5,6,1,0) | |
319 //#define StMDECO6_DefaultSAL _MB(2,5,6,2,0) | |
320 | |
321 | |
322 | |
323 | |
324 //#define StMDECO7_AMV _MB(2,5,7,1,0) | |
325 //#define StMDECO7_DefaultAMV _MB(2,5,7,2,0) | |
326 //#define StMDECO7_RESERVE _MB(2,5,7,3,0) | |
327 | |
328 | |
329 /* | |
330 typedef struct | |
331 { | |
332 uint32_t id; | |
333 int8_t implemented; | |
334 int8_t enabled; | |
335 uint32_t pointer; | |
336 uint8_t type; | |
337 } SStateOfMachine; | |
338 */ | |
339 | |
340 typedef struct | |
341 { | |
342 uint8_t base; | |
343 uint8_t page; | |
344 uint8_t line; | |
345 uint8_t field; | |
346 uint8_t mode; | |
347 } SStateList; | |
348 | |
349 | |
350 | |
351 #endif /* TSTRUCTURE_H */ | |
352 | |
353 /************************ (C) COPYRIGHT heinrichs weikamp *****END OF FILE****/ |