Cleanup: remove split_dive_*() functions

In 302f6adb79 dive-splitting was made
undo-able. To this goal, the dive-splitting functions were split in
two types: Those that operate directly on the divelist and those that
only allocate the dives. The former are not in use anymore, therefore
remove them. Since only the latter remain, remove the "_dont_insert"
appendix of the name.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2018-12-09 13:17:45 +01:00 committed by Dirk Hohndel
parent 10c20babae
commit 662dd823fd
3 changed files with 6 additions and 37 deletions

View file

@ -3686,17 +3686,6 @@ static int split_dive_at(const struct dive *dive, int a, int b, struct dive **ou
return nr;
}
static void finish_split(int nr, struct dive *old, struct dive *d1, struct dive *d2)
{
if (old->divetrip) {
add_dive_to_trip(d1, old->divetrip);
add_dive_to_trip(d2, old->divetrip);
}
delete_single_dive(nr);
add_single_dive(nr, d1);
add_single_dive(nr + 1, d2);
}
/* in freedive mode we split for as little as 10 seconds on the surface,
* otherwise we use a minute */
static bool should_split(const struct divecomputer *dc, int t1, int t2)
@ -3716,7 +3705,7 @@ static bool should_split(const struct divecomputer *dc, int t1, int t2)
*
* In other words, this is a (simplified) reversal of the dive merging.
*/
int split_dive_dont_insert(const struct dive *dive, struct dive **new1, struct dive **new2)
int split_dive(const struct dive *dive, struct dive **new1, struct dive **new2)
{
int i;
int at_surface, surface_start;
@ -3758,16 +3747,7 @@ int split_dive_dont_insert(const struct dive *dive, struct dive **new1, struct d
return -1;
}
void split_dive(struct dive *dive)
{
int nr;
struct dive *new1, *new2;
if ((nr = split_dive_dont_insert(dive, &new1, &new2)) >= 0)
finish_split(nr, dive, new1, new2);
}
int split_dive_at_time_dont_insert(const struct dive *dive, duration_t time, struct dive **new1, struct dive **new2)
int split_dive_at_time(const struct dive *dive, duration_t time, struct dive **new1, struct dive **new2)
{
int i = 0;
struct sample *sample = dive->dc.sample;
@ -3783,15 +3763,6 @@ int split_dive_at_time_dont_insert(const struct dive *dive, duration_t time, str
return split_dive_at(dive, i, i - 1, new1, new2);
}
void split_dive_at_time(struct dive *dive, duration_t time)
{
int nr;
struct dive *new1, *new2;
if ((nr = split_dive_at_time_dont_insert(dive, time, &new1, &new2)) >= 0)
finish_split(nr, dive, new1, new2);
}
/*
* "dc_maxtime()" is how much total time this dive computer
* has for this dive. Note that it can differ from "duration"

View file

@ -552,10 +552,8 @@ extern void fixup_dc_duration(struct divecomputer *dc);
extern int dive_getUniqID();
extern unsigned int dc_airtemp(const struct divecomputer *dc);
extern unsigned int dc_watertemp(const struct divecomputer *dc);
extern int split_dive_dont_insert(const struct dive *dive, struct dive **new1, struct dive **new2);
extern void split_dive(struct dive *);
extern int split_dive_at_time_dont_insert(const struct dive *dive, duration_t time, struct dive **new1, struct dive **new2);
extern void split_dive_at_time(struct dive *dive, duration_t time);
extern int split_dive(const struct dive *dive, struct dive **new1, struct dive **new2);
extern int split_dive_at_time(const struct dive *dive, duration_t time, struct dive **new1, struct dive **new2);
extern struct dive *merge_dives(const struct dive *a, const struct dive *b, int offset, bool prefer_downloaded, struct dive_trip **trip);
extern struct dive *try_to_merge(struct dive *a, struct dive *b, bool prefer_downloaded);
extern struct event *clone_event(const struct event *src_ev);

View file

@ -758,8 +758,8 @@ SplitDives::SplitDives(dive *d, duration_t time)
// Split the dive
dive *new1, *new2;
int idx = time.seconds < 0 ?
split_dive_dont_insert(d, &new1, &new2) :
split_dive_at_time_dont_insert(d, time, &new1, &new2);
split_dive(d, &new1, &new2) :
split_dive_at_time(d, time, &new1, &new2);
// If this didn't work, simply return. Empty arrays indicate that nothing is to be done.
if (idx < 0)