summaryrefslogtreecommitdiffstats
path: root/dive.h
diff options
context:
space:
mode:
Diffstat (limited to 'dive.h')
-rw-r--r--dive.h64
1 files changed, 1 insertions, 63 deletions
diff --git a/dive.h b/dive.h
index c326de1ea..96ed96b33 100644
--- a/dive.h
+++ b/dive.h
@@ -290,70 +290,8 @@ extern gboolean autogroup;
#define DIVE_TRIP(_trip) ((dive_trip_t *)(_trip)->data)
#define DIVE_FITS_TRIP(_dive, _dive_trip) ((_dive_trip)->when - TRIP_THRESHOLD <= (_dive)->when)
-/* compare two dives by when they happened */
-static inline int dive_date_cmp(gconstpointer _a, gconstpointer _b) {
- return ((dive_trip_t *)_a)->when - ((dive_trip_t *)_b)->when;
-}
-
-/* returns 0 if the dive happened exactly at time */
-static inline int dive_when_find(gconstpointer _dive_trip, gconstpointer _time) {
- return ((dive_trip_t *)_dive_trip)->when != (time_t) _time;
-}
-
-#define FIND_TRIP(_when) g_list_find_custom(dive_trip_list, (gconstpointer)(_when), dive_when_find)
-
-#ifdef DEBUG_TRIP
-static void dump_trip_list(void)
-{
- GList *p = NULL;
- int i=0;
- time_t last_time = 0;
- while ((p = NEXT_TRIP(p))) {
- dive_trip_t *dive_trip = DIVE_TRIP(p);
- struct tm *tm = gmtime(&dive_trip->when);
- if (dive_trip->when < last_time)
- printf("\n\ndive_trip_list OUT OF ORDER!!!\n\n\n");
- printf("%s trip %d to \"%s\" on %04u-%02u-%02u %02u:%02u:%02u\n",
- dive_trip->tripflag == AUTOGEN_TRIP ? "autogen " : "",
- ++i, dive_trip->location,
- tm->tm_year + 1900, tm->tm_mon+1, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec);
- if (dive_trip->when_from_file && dive_trip->when != dive_trip->when_from_file) {
- tm = gmtime(&dive_trip->when_from_file);
- printf("originally on %04u-%02u-%02u %02u:%02u:%02u\n", tm->tm_year + 1900,
- tm->tm_mon+1, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec);
- }
- last_time = dive_trip->when;
- }
- printf("-----\n");
-}
-#endif
+extern void insert_trip(dive_trip_t **trip);
-/* insert the trip into the dive_trip_list - but ensure you don't have
- * two trips for the same date; but if you have, make sure you don't
- * keep the one with less information */
-static void inline insert_trip(dive_trip_t **trip)
-{
- dive_trip_t *dive_trip = *trip;
- GList *result = FIND_TRIP(dive_trip->when);
- if (result) {
- if (! DIVE_TRIP(result)->location)
- DIVE_TRIP(result)->location = dive_trip->location;
- *trip = DIVE_TRIP(result);
- } else {
- dive_trip_list = g_list_insert_sorted(dive_trip_list, dive_trip, dive_date_cmp);
- }
-#ifdef DEBUG_TRIP
- dump_trip_list();
-#endif
-}
-
-static inline void delete_trip(GList *trip)
-{
- dive_trip_list = g_list_delete_link(dive_trip_list, trip);
-#ifdef DEBUG_TRIP
- dump_trip_list();
-#endif
-}
/*
* We keep our internal data in well-specified units, but
* the input and output may come in some random format. This