core: move picture-related function from dive.c to picture.c

Move the two functions create_picture() and picture_check_valid_time()
from dive.c to picture.c.

This might be somewhat questionable, as these functions are not purely
picture related, but check the nearest selected dives, etc. However,
dive.c is so huge, that slimming it down can't hurt. Moreover,
getting the nearest selected dive is more divelist- than dive
functionality anyway.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2020-04-19 17:01:58 +02:00 committed by Dirk Hohndel
parent 74f03e3537
commit 6ae2d36e38
4 changed files with 100 additions and 95 deletions

View file

@ -204,14 +204,6 @@ extern enum divemode_t get_current_divemode(const struct divecomputer *dc, int t
extern struct event *get_next_divemodechange(const struct event **evd, bool update_pointer);
extern enum divemode_t get_divemode_at_time(const struct divecomputer *dc, int dtime, const struct event **ev_dmc);
/* picture list and methods related to dive picture handling */
#define FOR_EACH_PICTURE(_dive) \
if ((_dive) && (_dive)->pictures.nr) \
for (struct picture *picture = (_dive)->pictures.pictures; \
picture < (_dive)->pictures.pictures + (_dive)->pictures.nr; \
picture++)
extern struct picture *create_picture(const char *filename, int shift_time, bool match_all, struct dive **dive);
extern bool picture_check_valid_time(timestamp_t timestamp, int shift_time);
extern void dive_set_geodata_from_picture(struct dive *dive, struct picture *picture, struct dive_site_table *table);
extern bool has_gaschange_event(const struct dive *dive, const struct divecomputer *dc, int idx);