[PATCH 1/3] Lift ostc_get_data_descriptor out from ostctools.c
Anton Lundin
glance at acc.umu.se
Wed Dec 28 11:55:52 PST 2016
This is for later reuse of that function in other source files.
Signed-off-by: Anton Lundin <glance at acc.umu.se>
---
core/libdivecomputer.c | 29 +++++++++++++++++++++++++++++
core/libdivecomputer.h | 1 +
core/ostctools.c | 29 -----------------------------
3 files changed, 30 insertions(+), 29 deletions(-)
diff --git a/core/libdivecomputer.c b/core/libdivecomputer.c
index 4a50acf..89d9702 100644
--- a/core/libdivecomputer.c
+++ b/core/libdivecomputer.c
@@ -1135,3 +1135,32 @@ dc_status_t libdc_buffer_parser(struct dive *dive, device_data_t *data, unsigned
dc_parser_destroy(parser);
return(DC_STATUS_SUCCESS);
}
+
+/*
+ * Returns a dc_descriptor_t structure based on dc model's number and family.
+ */
+
+dc_descriptor_t *ostc_get_data_descriptor(int data_model, dc_family_t data_fam)
+{
+ dc_descriptor_t *descriptor = NULL, *current = NULL;
+ ;
+ dc_iterator_t *iterator = NULL;
+ dc_status_t rc;
+
+ rc = dc_descriptor_iterator(&iterator);
+ if (rc != DC_STATUS_SUCCESS) {
+ fprintf(stderr, "Error creating the device descriptor iterator.\n");
+ return current;
+ }
+ while ((dc_iterator_next(iterator, &descriptor)) == DC_STATUS_SUCCESS) {
+ int desc_model = dc_descriptor_get_model(descriptor);
+ dc_family_t desc_fam = dc_descriptor_get_type(descriptor);
+ if (data_model == desc_model && data_fam == desc_fam) {
+ current = descriptor;
+ break;
+ }
+ dc_descriptor_free(descriptor);
+ }
+ dc_iterator_free(iterator);
+ return current;
+}
diff --git a/core/libdivecomputer.h b/core/libdivecomputer.h
index f2894b0..613ab70 100644
--- a/core/libdivecomputer.h
+++ b/core/libdivecomputer.h
@@ -52,6 +52,7 @@ 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);
+dc_descriptor_t *ostc_get_data_descriptor(int data_model, dc_family_t data_fam);
extern int import_thread_cancelled;
extern const char *progress_bar_text;
diff --git a/core/ostctools.c b/core/ostctools.c
index 9be591b..02e80fc 100644
--- a/core/ostctools.c
+++ b/core/ostctools.c
@@ -8,35 +8,6 @@
#include "libdivecomputer.h"
/*
- * Returns a dc_descriptor_t structure based on dc model's number and family.
- */
-
-static dc_descriptor_t *ostc_get_data_descriptor(int data_model, dc_family_t data_fam)
-{
- dc_descriptor_t *descriptor = NULL, *current = NULL;
- ;
- dc_iterator_t *iterator = NULL;
- dc_status_t rc;
-
- rc = dc_descriptor_iterator(&iterator);
- if (rc != DC_STATUS_SUCCESS) {
- fprintf(stderr, "Error creating the device descriptor iterator.\n");
- return current;
- }
- while ((dc_iterator_next(iterator, &descriptor)) == DC_STATUS_SUCCESS) {
- int desc_model = dc_descriptor_get_model(descriptor);
- dc_family_t desc_fam = dc_descriptor_get_type(descriptor);
- if (data_model == desc_model && data_fam == desc_fam) {
- current = descriptor;
- break;
- }
- dc_descriptor_free(descriptor);
- }
- dc_iterator_free(iterator);
- return current;
-}
-
-/*
* Fills a device_data_t structure with known dc data and a descriptor.
*/
static int ostc_prepare_data(int data_model, dc_family_t dc_fam, device_data_t *dev_data)
--
2.9.3
More information about the subsurface
mailing list