From f8b465fba1c30c112630d7eab93d63e4b8d29c72 Mon Sep 17 00:00:00 2001 From: Jef Driesen Date: Mon, 25 Jan 2010 19:46:39 +0000 Subject: [PATCH] Use the common fingerprint function directly. --- src/suunto_common.c | 4 +++- src/suunto_common.h | 2 +- src/suunto_eon.c | 15 +-------------- src/suunto_vyper.c | 15 +-------------- 4 files changed, 6 insertions(+), 30 deletions(-) diff --git a/src/suunto_common.c b/src/suunto_common.c index 313e981..97964ce 100644 --- a/src/suunto_common.c +++ b/src/suunto_common.c @@ -44,8 +44,10 @@ suunto_common_device_init (suunto_common_device_t *device, const device_backend_ device_status_t -suunto_common_device_set_fingerprint (suunto_common_device_t *device, const unsigned char data[], unsigned int size) +suunto_common_device_set_fingerprint (device_t *abstract, const unsigned char data[], unsigned int size) { + suunto_common_device_t *device = (suunto_common_device_t *) abstract; + assert (device != NULL); if (size && size != sizeof (device->fingerprint)) diff --git a/src/suunto_common.h b/src/suunto_common.h index 65b2830..e1a0dee 100644 --- a/src/suunto_common.h +++ b/src/suunto_common.h @@ -49,7 +49,7 @@ void suunto_common_device_init (suunto_common_device_t *device, const device_backend_t *backend); device_status_t -suunto_common_device_set_fingerprint (suunto_common_device_t *device, const unsigned char data[], unsigned int size); +suunto_common_device_set_fingerprint (device_t *device, const unsigned char data[], unsigned int size); device_status_t suunto_common_extract_dives (suunto_common_device_t *device, const suunto_common_layout_t *layout, const unsigned char data[], dive_callback_t callback, void *userdata); diff --git a/src/suunto_eon.c b/src/suunto_eon.c index 94d95aa..61e7bd9 100644 --- a/src/suunto_eon.c +++ b/src/suunto_eon.c @@ -41,14 +41,13 @@ typedef struct suunto_eon_device_t { struct serial *port; } suunto_eon_device_t; -static device_status_t suunto_eon_device_set_fingerprint (device_t *abstract, const unsigned char data[], unsigned int size); static device_status_t suunto_eon_device_dump (device_t *abstract, dc_buffer_t *buffer); static device_status_t suunto_eon_device_foreach (device_t *abstract, dive_callback_t callback, void *userdata); static device_status_t suunto_eon_device_close (device_t *abstract); static const device_backend_t suunto_eon_device_backend = { DEVICE_TYPE_SUUNTO_EON, - suunto_eon_device_set_fingerprint, /* set_fingerprint */ + suunto_common_device_set_fingerprint, /* set_fingerprint */ NULL, /* version */ NULL, /* read */ NULL, /* write */ @@ -155,18 +154,6 @@ suunto_eon_device_close (device_t *abstract) } -static device_status_t -suunto_eon_device_set_fingerprint (device_t *abstract, const unsigned char data[], unsigned int size) -{ - suunto_common_device_t *device = (suunto_common_device_t*) abstract; - - if (! device_is_suunto_eon (abstract)) - return DEVICE_STATUS_TYPE_MISMATCH; - - return suunto_common_device_set_fingerprint (device, data, size); -} - - static device_status_t suunto_eon_device_dump (device_t *abstract, dc_buffer_t *buffer) { diff --git a/src/suunto_vyper.c b/src/suunto_vyper.c index 0b31adc..38da227 100644 --- a/src/suunto_vyper.c +++ b/src/suunto_vyper.c @@ -50,7 +50,6 @@ typedef struct suunto_vyper_device_t { unsigned int delay; } suunto_vyper_device_t; -static device_status_t suunto_vyper_device_set_fingerprint (device_t *abstract, const unsigned char data[], unsigned int size); static device_status_t suunto_vyper_device_read (device_t *abstract, unsigned int address, unsigned char data[], unsigned int size); static device_status_t suunto_vyper_device_write (device_t *abstract, unsigned int address, const unsigned char data[], unsigned int size); static device_status_t suunto_vyper_device_dump (device_t *abstract, dc_buffer_t *buffer); @@ -59,7 +58,7 @@ static device_status_t suunto_vyper_device_close (device_t *abstract); static const device_backend_t suunto_vyper_device_backend = { DEVICE_TYPE_SUUNTO_VYPER, - suunto_vyper_device_set_fingerprint, /* set_fingerprint */ + suunto_common_device_set_fingerprint, /* set_fingerprint */ NULL, /* version */ suunto_vyper_device_read, /* read */ suunto_vyper_device_write, /* write */ @@ -195,18 +194,6 @@ suunto_vyper_device_set_delay (device_t *abstract, unsigned int delay) } -static device_status_t -suunto_vyper_device_set_fingerprint (device_t *abstract, const unsigned char data[], unsigned int size) -{ - suunto_common_device_t *device = (suunto_common_device_t*) abstract; - - if (! device_is_suunto_vyper (abstract)) - return DEVICE_STATUS_TYPE_MISMATCH; - - return suunto_common_device_set_fingerprint (device, data, size); -} - - static device_status_t suunto_vyper_send (suunto_vyper_device_t *device, const unsigned char command[], unsigned int csize) {