/* profile.c */
-/* creates all the necessary data for drawing the dive profile
+/* creates all the necessary data for drawing the dive profile
* uses cairo to draw it
*/
#include <stdio.h>
#include "color.h"
int selected_dive = 0;
-int *selectiontracker;
typedef enum { STABLE, SLOW, MODERATE, FAST, CRAZY } velocity_t;
else if (speed < -25) /* -5ft/min */
v = SLOW;
else if (speed < 25) /* very hard to find data, but it appears that the recommendations
- for descent are usually about 2x ascent rate; still, we want
+ for descent are usually about 2x ascent rate; still, we want
stable to mean stable */
v = STABLE;
else if (speed < 152) /* between 5 and 30ft/min is considered slow */
int past = -2;
while (i+past > 0 && entry[0].sec - entry[past].sec < 15)
past--;
- entry->velocity = velocity((entry[0].depth - entry[past].depth) /
+ entry->velocity = velocity((entry[0].depth - entry[past].depth) /
(entry[0].sec - entry[past].sec));
}
} else
struct plot_data *entry = pi->entry +i;
analyze_plot_info_minmax(entry, pi->entry, pi->entry+nr);
}
-
+
return pi;
}
/* there may be multiple segments - so
* let's assemble the length */
nlist = list;
- pt = list->pressure_time;
- while (!nlist->end) {
- nlist = nlist->next;
- if (!nlist) {
- /* oops - we have no end pressure,
- * so this means this is a tank without
- * gas consumption information */
- break;
+ if (list) {
+ pt = list->pressure_time;
+ while (!nlist->end) {
+ nlist = nlist->next;
+ if (!nlist) {
+ /* oops - we have no end pressure,
+ * so this means this is a tank without
+ * gas consumption information */
+ break;
+ }
+ pt += nlist->pressure_time;
}
- pt += nlist->pressure_time;
}
if (!nlist) {
/* just continue without calculating