Add helper function to add extra_data to dive computer

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2014-11-06 22:02:22 -08:00
parent 77621ef7df
commit 9aefaa1ec8
2 changed files with 15 additions and 0 deletions

14
dive.c
View file

@ -145,6 +145,20 @@ void update_event_name(struct dive *d, struct event *event, char *name)
free(remove); free(remove);
} }
void add_extra_data(struct divecomputer *dc, const char *key, const char *value)
{
struct extra_data **ed = &dc->extra_data;
while (*ed)
ed = &(*ed)->next;
*ed = malloc(sizeof(struct extra_data));
if (*ed) {
(*ed)->key = strdup(key);
(*ed)->value = strdup(value);
(*ed)->next = NULL;
}
}
/* this returns a pointer to static variable - so use it right away after calling */ /* this returns a pointer to static variable - so use it right away after calling */
struct gasmix *get_gasmix_from_event(struct event *ev) struct gasmix *get_gasmix_from_event(struct event *ev)
{ {

1
dive.h
View file

@ -690,6 +690,7 @@ extern void add_gas_switch_event(struct dive *dive, struct divecomputer *dc, int
extern struct event *add_event(struct divecomputer *dc, int time, int type, int flags, int value, const char *name); extern struct event *add_event(struct divecomputer *dc, int time, int type, int flags, int value, const char *name);
extern void remove_event(struct event *event); extern void remove_event(struct event *event);
extern void update_event_name(struct dive *d, struct event* event, char *name); extern void update_event_name(struct dive *d, struct event* event, char *name);
extern void add_extra_data(struct divecomputer *dc, const char *key, const char *value);
extern void per_cylinder_mean_depth(struct dive *dive, struct divecomputer *dc, int *mean, int *duration); extern void per_cylinder_mean_depth(struct dive *dive, struct divecomputer *dc, int *mean, int *duration);
extern int get_cylinder_index(struct dive *dive, struct event *ev); extern int get_cylinder_index(struct dive *dive, struct event *ev);
extern int nr_cylinders(struct dive *dive); extern int nr_cylinders(struct dive *dive);