38
+ − 1 /*
+ − 2 * vpm.h
+ − 3 *
+ − 4 * Created: 23.04.2013 11:38:19
+ − 5 * Author: produktion04
+ − 6 */
+ − 7
+ − 8
+ − 9 #ifndef VPM_H
+ − 10 #define VPM_H
+ − 11
+ − 12 #include "data_central.h"
+ − 13 extern long vpm_time_calc_begin;
+ − 14 enum DECOLIST{DECOSTOPS,FUTURESTOPS,BAILOUTSTOPS,NULLZEIT,OFF = -1}; // order is important!!
+ − 15 enum VPM_CALC_STATUS{CALC_END, CALC_BEGIN, CALC_CRITICAL, CALC_FINAL_DECO, CALC_NULLZEIT };
+ − 16 //int calc_crushing_pressure(float *starting_depth, float *ending_depth, float *rate);
+ − 17 //void vpm_check_calc(unsigned short* stoplist);
+ − 18 //void vpm_init(void);
+ − 19 //_Bool vpm_crush(void);
+ − 20
+ − 21 void vpm_reset_variables(void);
+ − 22 _Bool vpm_build_variables_from_file(unsigned long in_sdram_start);
+ − 23 int vpm_store_variables_in_sdram_for_transfer(unsigned long in_sdram_start);
+ − 24 void vpm_calc_crushing_pressure(float starting_ambient_pressure, float ending_ambient_pressure, float rate);
+ − 25 void vpm_deco_plan(unsigned short divetime,unsigned short * divetime_first_stop, float* first_stop_depth);
+ − 26
+ − 27 float schreiner_equation__2(float *initial_inspired_gas_pressure,float *rate_change_insp_gas_pressure,float *interval_time_minutes, const float *gas_time_constant,float *initial_gas_pressure);
+ − 28
+ − 29 int vpm_calc(SLifeData* pINPUT, SVpm* pVPM, SDecoinfo* pDECOINFO);
+ − 30 void vpm_saturation_after_ascent(SLifeData* input);
+ − 31 extern const float helium_time_constant[16];
+ − 32 extern const float nitrogen_time_constant[16];
+ − 33
+ − 34 #endif /* VPM_H */