mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Lift ostc_get_data_descriptor out from ostctools.c
This is for later reuse of that function in other source files. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
ce959fb757
commit
db8e786f85
3 changed files with 30 additions and 29 deletions
|
@ -1135,3 +1135,32 @@ dc_status_t libdc_buffer_parser(struct dive *dive, device_data_t *data, unsigned
|
||||||
dc_parser_destroy(parser);
|
dc_parser_destroy(parser);
|
||||||
return(DC_STATUS_SUCCESS);
|
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;
|
||||||
|
}
|
||||||
|
|
|
@ -52,6 +52,7 @@ const char *do_libdivecomputer_import(device_data_t *data);
|
||||||
const char *do_uemis_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);
|
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);
|
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 int import_thread_cancelled;
|
||||||
extern const char *progress_bar_text;
|
extern const char *progress_bar_text;
|
||||||
|
|
|
@ -7,35 +7,6 @@
|
||||||
#include "divelist.h"
|
#include "divelist.h"
|
||||||
#include "libdivecomputer.h"
|
#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.
|
* Fills a device_data_t structure with known dc data and a descriptor.
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Add table
Reference in a new issue