diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2015-11-02 19:54:34 -0800 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-11-02 19:54:34 -0800 |
commit | 8ea7f404574c2ee571d2dde6bb6be3791e962150 (patch) | |
tree | 6a050178bfc71bf10558968f2a3bc0a12d8c525f /subsurface-core/libdivecomputer.h | |
parent | b273c1b0ca7bfe933e7c83742f1610f6bbe3f4d3 (diff) | |
parent | df7818a9b8495285b4d9812e5d6d50d6f9c08813 (diff) | |
download | subsurface-8ea7f404574c2ee571d2dde6bb6be3791e962150.tar.gz |
Merge branch 'cmakeAndPreferences'
Diffstat (limited to 'subsurface-core/libdivecomputer.h')
-rw-r--r-- | subsurface-core/libdivecomputer.h | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/subsurface-core/libdivecomputer.h b/subsurface-core/libdivecomputer.h new file mode 100644 index 000000000..79817e509 --- /dev/null +++ b/subsurface-core/libdivecomputer.h @@ -0,0 +1,66 @@ +#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; + bool bluetooth_mode; + 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); +void logfunc(dc_context_t *context, dc_loglevel_t loglevel, const char *file, unsigned int line, const char *function, const char *msg, void *userdata); + +extern int import_thread_cancelled; +extern const char *progress_bar_text; +extern double progress_bar_fraction; +extern char *logfile_name; +extern char *dumpfile_name; + +#if SSRF_CUSTOM_SERIAL +extern dc_status_t dc_serial_qt_open(dc_serial_t **out, dc_context_t *context, const char *devaddr); +extern dc_status_t dc_serial_ftdi_open(dc_serial_t **out, dc_context_t *context); +#endif + +#ifdef __cplusplus +} +#endif + +#endif // LIBDIVECOMPUTER_H |