mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-30 22:20:21 +00:00
094d0d9699
Add function libdc_buffer_parser() intended to parse raw data buffers prepared for libdivecomputer. We have to commit elsewhere the necesary assembly tasks to achieve consistent data. Actually only OSTCTools import makes use of this feature. Uwatec families have been included as I expect to make use of this function for sample parsing in datatrak import (and, may be in a far future, smartrak). Signed-off-by: Salvador Cuñat <salvador.cunat@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
59 lines
1.4 KiB
C
59 lines
1.4 KiB
C
#ifndef LIBDIVECOMPUTER_H
|
|
#define LIBDIVECOMPUTER_H
|
|
|
|
|
|
/* libdivecomputer */
|
|
#include <libdivecomputer/version.h>
|
|
#include <libdivecomputer/device.h>
|
|
#include <libdivecomputer/parser.h>
|
|
|
|
#include "dive.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
struct dc_descriptor_t {
|
|
const char *vendor;
|
|
const char *product;
|
|
dc_family_t type;
|
|
unsigned int model;
|
|
};
|
|
|
|
/* don't forget to include the UI toolkit specific display-XXX.h first
|
|
to get the definition of progressbar_t */
|
|
typedef struct device_data_t
|
|
{
|
|
dc_descriptor_t *descriptor;
|
|
const char *vendor, *product, *devname;
|
|
const char *model;
|
|
uint32_t libdc_firmware, libdc_serial;
|
|
uint32_t deviceid, diveid;
|
|
dc_device_t *device;
|
|
dc_context_t *context;
|
|
struct dive_trip *trip;
|
|
int preexisting;
|
|
bool force_download;
|
|
bool create_new_trip;
|
|
bool libdc_log;
|
|
bool libdc_dump;
|
|
FILE *libdc_logfile;
|
|
struct dive_table *download_table;
|
|
} device_data_t;
|
|
|
|
const char *errmsg (dc_status_t rc);
|
|
const char *do_libdivecomputer_import(device_data_t *data);
|
|
const char *do_uemis_import(device_data_t *data);
|
|
dc_status_t libdc_buffer_parser(struct dive *dive, device_data_t *data, unsigned char *buffer, int size);
|
|
|
|
extern int import_thread_cancelled;
|
|
extern const char *progress_bar_text;
|
|
extern double progress_bar_fraction;
|
|
extern char *logfile_name;
|
|
extern char *dumpfile_name;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // LIBDIVECOMPUTER_H
|