diff --git a/src/atomics_cobalt.c b/src/atomics_cobalt.c index 0515983..c23bf5f 100644 --- a/src/atomics_cobalt.c +++ b/src/atomics_cobalt.c @@ -66,7 +66,7 @@ static dc_status_t atomics_cobalt_device_set_fingerprint (dc_device_t *abstract, static dc_status_t atomics_cobalt_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t atomics_cobalt_device_close (dc_device_t *abstract); -static const device_backend_t atomics_cobalt_device_backend = { +static const dc_device_vtable_t atomics_cobalt_device_vtable = { DC_FAMILY_ATOMICS_COBALT, atomics_cobalt_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -82,7 +82,7 @@ device_is_atomics_cobalt (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &atomics_cobalt_device_backend; + return abstract->vtable == &atomics_cobalt_device_vtable; } @@ -101,7 +101,7 @@ atomics_cobalt_device_open (dc_device_t **out, dc_context_t *context) } // Initialize the base class. - device_init (&device->base, context, &atomics_cobalt_device_backend); + device_init (&device->base, context, &atomics_cobalt_device_vtable); // Set the default values. device->context = NULL; diff --git a/src/atomics_cobalt_parser.c b/src/atomics_cobalt_parser.c index ada8941..94cf020 100644 --- a/src/atomics_cobalt_parser.c +++ b/src/atomics_cobalt_parser.c @@ -48,7 +48,7 @@ static dc_status_t atomics_cobalt_parser_get_field (dc_parser_t *abstract, dc_fi static dc_status_t atomics_cobalt_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t atomics_cobalt_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t atomics_cobalt_parser_backend = { +static const dc_parser_vtable_t atomics_cobalt_parser_vtable = { DC_FAMILY_ATOMICS_COBALT, atomics_cobalt_parser_set_data, /* set_data */ atomics_cobalt_parser_get_datetime, /* datetime */ @@ -64,7 +64,7 @@ parser_is_atomics_cobalt (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &atomics_cobalt_parser_backend; + return abstract->vtable == &atomics_cobalt_parser_vtable; } @@ -82,7 +82,7 @@ atomics_cobalt_parser_create (dc_parser_t **out, dc_context_t *context) } // Initialize the base class. - parser_init (&parser->base, context, &atomics_cobalt_parser_backend); + parser_init (&parser->base, context, &atomics_cobalt_parser_vtable); // Set the default values. parser->atmospheric = 0.0; diff --git a/src/cressi_edy.c b/src/cressi_edy.c index 56eeac1..844bc29 100644 --- a/src/cressi_edy.c +++ b/src/cressi_edy.c @@ -63,7 +63,7 @@ static dc_status_t cressi_edy_device_dump (dc_device_t *abstract, dc_buffer_t *b static dc_status_t cressi_edy_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t cressi_edy_device_close (dc_device_t *abstract); -static const device_backend_t cressi_edy_device_backend = { +static const dc_device_vtable_t cressi_edy_device_vtable = { DC_FAMILY_CRESSI_EDY, cressi_edy_device_set_fingerprint, /* set_fingerprint */ cressi_edy_device_read, /* read */ @@ -79,7 +79,7 @@ device_is_cressi_edy (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &cressi_edy_device_backend; + return abstract->vtable == &cressi_edy_device_vtable; } @@ -187,7 +187,7 @@ cressi_edy_device_open (dc_device_t **out, dc_context_t *context, const char *na } // Initialize the base class. - device_init (&device->base, context, &cressi_edy_device_backend); + device_init (&device->base, context, &cressi_edy_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/cressi_edy_parser.c b/src/cressi_edy_parser.c index 51220b0..3642dc4 100644 --- a/src/cressi_edy_parser.c +++ b/src/cressi_edy_parser.c @@ -40,7 +40,7 @@ static dc_status_t cressi_edy_parser_get_field (dc_parser_t *abstract, dc_field_ static dc_status_t cressi_edy_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t cressi_edy_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t cressi_edy_parser_backend = { +static const dc_parser_vtable_t cressi_edy_parser_vtable = { DC_FAMILY_CRESSI_EDY, cressi_edy_parser_set_data, /* set_data */ cressi_edy_parser_get_datetime, /* datetime */ @@ -56,7 +56,7 @@ parser_is_cressi_edy (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &cressi_edy_parser_backend; + return abstract->vtable == &cressi_edy_parser_vtable; } @@ -74,7 +74,7 @@ cressi_edy_parser_create (dc_parser_t **out, dc_context_t *context, unsigned int } // Initialize the base class. - parser_init (&parser->base, context, &cressi_edy_parser_backend); + parser_init (&parser->base, context, &cressi_edy_parser_vtable); // Set the default values. parser->model = model; diff --git a/src/cressi_leonardo.c b/src/cressi_leonardo.c index c22fb85..a1f5066 100644 --- a/src/cressi_leonardo.c +++ b/src/cressi_leonardo.c @@ -59,7 +59,7 @@ static dc_status_t cressi_leonardo_device_dump (dc_device_t *abstract, dc_buffer static dc_status_t cressi_leonardo_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t cressi_leonardo_device_close (dc_device_t *abstract); -static const device_backend_t cressi_leonardo_device_backend = { +static const dc_device_vtable_t cressi_leonardo_device_vtable = { DC_FAMILY_CRESSI_LEONARDO, cressi_leonardo_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -75,7 +75,7 @@ device_is_cressi_leonardo (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &cressi_leonardo_device_backend; + return abstract->vtable == &cressi_leonardo_device_vtable; } dc_status_t @@ -92,7 +92,7 @@ cressi_leonardo_device_open (dc_device_t **out, dc_context_t *context, const cha } // Initialize the base class. - device_init (&device->base, context, &cressi_leonardo_device_backend); + device_init (&device->base, context, &cressi_leonardo_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/cressi_leonardo_parser.c b/src/cressi_leonardo_parser.c index 3ce18aa..858d1e5 100644 --- a/src/cressi_leonardo_parser.c +++ b/src/cressi_leonardo_parser.c @@ -41,7 +41,7 @@ static dc_status_t cressi_leonardo_parser_get_field (dc_parser_t *abstract, dc_f static dc_status_t cressi_leonardo_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t cressi_leonardo_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t cressi_leonardo_parser_backend = { +static const dc_parser_vtable_t cressi_leonardo_parser_vtable = { DC_FAMILY_CRESSI_EDY, cressi_leonardo_parser_set_data, /* set_data */ cressi_leonardo_parser_get_datetime, /* datetime */ @@ -57,7 +57,7 @@ parser_is_cressi_leonardo (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &cressi_leonardo_parser_backend; + return abstract->vtable == &cressi_leonardo_parser_vtable; } @@ -75,7 +75,7 @@ cressi_leonardo_parser_create (dc_parser_t **out, dc_context_t *context) } // Initialize the base class. - parser_init (&parser->base, context, &cressi_leonardo_parser_backend); + parser_init (&parser->base, context, &cressi_leonardo_parser_vtable); *out = (dc_parser_t*) parser; diff --git a/src/device-private.h b/src/device-private.h index e5fee79..497c319 100644 --- a/src/device-private.h +++ b/src/device-private.h @@ -34,12 +34,12 @@ extern "C" { #define EVENT_PROGRESS_INITIALIZER {0, UINT_MAX} struct dc_device_t; -struct device_backend_t; +struct dc_device_vtable_t; -typedef struct device_backend_t device_backend_t; +typedef struct dc_device_vtable_t dc_device_vtable_t; struct dc_device_t { - const device_backend_t *backend; + const dc_device_vtable_t *vtable; // Library context. dc_context_t *context; // Event notifications. @@ -54,7 +54,7 @@ struct dc_device_t { dc_event_clock_t clock; }; -struct device_backend_t { +struct dc_device_vtable_t { dc_family_t type; dc_status_t (*set_fingerprint) (dc_device_t *device, const unsigned char data[], unsigned int size); @@ -71,7 +71,7 @@ struct device_backend_t { }; void -device_init (dc_device_t *device, dc_context_t *context, const device_backend_t *backend); +device_init (dc_device_t *device, dc_context_t *context, const dc_device_vtable_t *vtable); void device_event_emit (dc_device_t *device, dc_event_type_t event, const void *data); diff --git a/src/device.c b/src/device.c index 2684534..e2b73eb 100644 --- a/src/device.c +++ b/src/device.c @@ -39,9 +39,9 @@ void -device_init (dc_device_t *device, dc_context_t *context, const device_backend_t *backend) +device_init (dc_device_t *device, dc_context_t *context, const dc_device_vtable_t *vtable) { - device->backend = backend; + device->vtable = vtable; device->context = context; @@ -156,7 +156,7 @@ dc_device_get_type (dc_device_t *device) if (device == NULL) return DC_FAMILY_NULL; - return device->backend->type; + return device->vtable->type; } @@ -193,10 +193,10 @@ dc_device_set_fingerprint (dc_device_t *device, const unsigned char data[], unsi if (device == NULL) return DC_STATUS_UNSUPPORTED; - if (device->backend->set_fingerprint == NULL) + if (device->vtable->set_fingerprint == NULL) return DC_STATUS_UNSUPPORTED; - return device->backend->set_fingerprint (device, data, size); + return device->vtable->set_fingerprint (device, data, size); } @@ -206,10 +206,10 @@ dc_device_read (dc_device_t *device, unsigned int address, unsigned char data[], if (device == NULL) return DC_STATUS_UNSUPPORTED; - if (device->backend->read == NULL) + if (device->vtable->read == NULL) return DC_STATUS_UNSUPPORTED; - return device->backend->read (device, address, data, size); + return device->vtable->read (device, address, data, size); } @@ -219,10 +219,10 @@ dc_device_write (dc_device_t *device, unsigned int address, const unsigned char if (device == NULL) return DC_STATUS_UNSUPPORTED; - if (device->backend->write == NULL) + if (device->vtable->write == NULL) return DC_STATUS_UNSUPPORTED; - return device->backend->write (device, address, data, size); + return device->vtable->write (device, address, data, size); } @@ -232,10 +232,10 @@ dc_device_dump (dc_device_t *device, dc_buffer_t *buffer) if (device == NULL) return DC_STATUS_UNSUPPORTED; - if (device->backend->dump == NULL) + if (device->vtable->dump == NULL) return DC_STATUS_UNSUPPORTED; - return device->backend->dump (device, buffer); + return device->vtable->dump (device, buffer); } @@ -245,7 +245,7 @@ device_dump_read (dc_device_t *device, unsigned char data[], unsigned int size, if (device == NULL) return DC_STATUS_UNSUPPORTED; - if (device->backend->read == NULL) + if (device->vtable->read == NULL) return DC_STATUS_UNSUPPORTED; // Enable progress notifications. @@ -261,7 +261,7 @@ device_dump_read (dc_device_t *device, unsigned char data[], unsigned int size, len = blocksize; // Read the packet. - dc_status_t rc = device->backend->read (device, nbytes, data + nbytes, len); + dc_status_t rc = device->vtable->read (device, nbytes, data + nbytes, len); if (rc != DC_STATUS_SUCCESS) return rc; @@ -282,10 +282,10 @@ dc_device_foreach (dc_device_t *device, dc_dive_callback_t callback, void *userd if (device == NULL) return DC_STATUS_UNSUPPORTED; - if (device->backend->foreach == NULL) + if (device->vtable->foreach == NULL) return DC_STATUS_UNSUPPORTED; - return device->backend->foreach (device, callback, userdata); + return device->vtable->foreach (device, callback, userdata); } @@ -295,10 +295,10 @@ dc_device_close (dc_device_t *device) if (device == NULL) return DC_STATUS_SUCCESS; - if (device->backend->close == NULL) + if (device->vtable->close == NULL) return DC_STATUS_UNSUPPORTED; - return device->backend->close (device); + return device->vtable->close (device); } diff --git a/src/hw_frog.c b/src/hw_frog.c index 45e5b04..5bef907 100644 --- a/src/hw_frog.c +++ b/src/hw_frog.c @@ -67,7 +67,7 @@ static dc_status_t hw_frog_device_set_fingerprint (dc_device_t *abstract, const static dc_status_t hw_frog_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t hw_frog_device_close (dc_device_t *abstract); -static const device_backend_t hw_frog_device_backend = { +static const dc_device_vtable_t hw_frog_device_vtable = { DC_FAMILY_HW_FROG, hw_frog_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -84,7 +84,7 @@ device_is_hw_frog (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &hw_frog_device_backend; + return abstract->vtable == &hw_frog_device_vtable; } @@ -198,7 +198,7 @@ hw_frog_device_open (dc_device_t **out, dc_context_t *context, const char *name) } // Initialize the base class. - device_init (&device->base, context, &hw_frog_device_backend); + device_init (&device->base, context, &hw_frog_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/hw_ostc.c b/src/hw_ostc.c index 735f6e5..f3dc98f 100644 --- a/src/hw_ostc.c +++ b/src/hw_ostc.c @@ -59,7 +59,7 @@ static dc_status_t hw_ostc_device_dump (dc_device_t *abstract, dc_buffer_t *buff static dc_status_t hw_ostc_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t hw_ostc_device_close (dc_device_t *abstract); -static const device_backend_t hw_ostc_device_backend = { +static const dc_device_vtable_t hw_ostc_device_vtable = { DC_FAMILY_HW_OSTC, hw_ostc_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -76,7 +76,7 @@ device_is_hw_ostc (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &hw_ostc_device_backend; + return abstract->vtable == &hw_ostc_device_vtable; } @@ -127,7 +127,7 @@ hw_ostc_device_open (dc_device_t **out, dc_context_t *context, const char *name) } // Initialize the base class. - device_init (&device->base, context, &hw_ostc_device_backend); + device_init (&device->base, context, &hw_ostc_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/hw_ostc_parser.c b/src/hw_ostc_parser.c index 6e4f700..47e0886 100644 --- a/src/hw_ostc_parser.c +++ b/src/hw_ostc_parser.c @@ -48,7 +48,7 @@ static dc_status_t hw_ostc_parser_get_field (dc_parser_t *abstract, dc_field_typ static dc_status_t hw_ostc_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t hw_ostc_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t hw_ostc_parser_backend = { +static const dc_parser_vtable_t hw_ostc_parser_vtable = { DC_FAMILY_HW_OSTC, hw_ostc_parser_set_data, /* set_data */ hw_ostc_parser_get_datetime, /* datetime */ @@ -64,7 +64,7 @@ parser_is_hw_ostc (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &hw_ostc_parser_backend; + return abstract->vtable == &hw_ostc_parser_vtable; } @@ -82,7 +82,7 @@ hw_ostc_parser_create (dc_parser_t **out, dc_context_t *context, unsigned int fr } // Initialize the base class. - parser_init (&parser->base, context, &hw_ostc_parser_backend); + parser_init (&parser->base, context, &hw_ostc_parser_vtable); parser->frog = frog; diff --git a/src/mares_common.c b/src/mares_common.c index 116f426..ef96f64 100644 --- a/src/mares_common.c +++ b/src/mares_common.c @@ -39,12 +39,12 @@ #define FP_SIZE 5 void -mares_common_device_init (mares_common_device_t *device, dc_context_t *context, const device_backend_t *backend) +mares_common_device_init (mares_common_device_t *device, dc_context_t *context, const dc_device_vtable_t *vtable) { assert (device != NULL); // Initialize the base class. - device_init (&device->base, context, backend); + device_init (&device->base, context, vtable); // Set the default values. device->port = NULL; diff --git a/src/mares_common.h b/src/mares_common.h index f3a4486..14eeae3 100644 --- a/src/mares_common.h +++ b/src/mares_common.h @@ -47,7 +47,7 @@ typedef struct mares_common_device_t { } mares_common_device_t; void -mares_common_device_init (mares_common_device_t *device, dc_context_t *context, const device_backend_t *backend); +mares_common_device_init (mares_common_device_t *device, dc_context_t *context, const dc_device_vtable_t *vtable); dc_status_t mares_common_device_read (dc_device_t *abstract, unsigned int address, unsigned char data[], unsigned int size); diff --git a/src/mares_darwin.c b/src/mares_darwin.c index 8da7e9f..93c37bd 100644 --- a/src/mares_darwin.c +++ b/src/mares_darwin.c @@ -60,7 +60,7 @@ static dc_status_t mares_darwin_device_dump (dc_device_t *abstract, dc_buffer_t static dc_status_t mares_darwin_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t mares_darwin_device_close (dc_device_t *abstract); -static const device_backend_t mares_darwin_device_backend = { +static const dc_device_vtable_t mares_darwin_device_vtable = { DC_FAMILY_MARES_DARWIN, mares_darwin_device_set_fingerprint, /* set_fingerprint */ mares_common_device_read, /* read */ @@ -96,7 +96,7 @@ device_is_mares_darwin (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &mares_darwin_device_backend; + return abstract->vtable == &mares_darwin_device_vtable; } dc_status_t @@ -113,7 +113,7 @@ mares_darwin_device_open (dc_device_t **out, dc_context_t *context, const char * } // Initialize the base class. - mares_common_device_init (&device->base, context, &mares_darwin_device_backend); + mares_common_device_init (&device->base, context, &mares_darwin_device_vtable); // Set the default values. memset (device->fingerprint, 0, sizeof (device->fingerprint)); diff --git a/src/mares_darwin_parser.c b/src/mares_darwin_parser.c index 5c21574..6b40fe8 100644 --- a/src/mares_darwin_parser.c +++ b/src/mares_darwin_parser.c @@ -46,7 +46,7 @@ static dc_status_t mares_darwin_parser_get_field (dc_parser_t *abstract, dc_fiel static dc_status_t mares_darwin_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t mares_darwin_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t mares_darwin_parser_backend = { +static const dc_parser_vtable_t mares_darwin_parser_vtable = { DC_FAMILY_MARES_DARWIN, mares_darwin_parser_set_data, /* set_data */ mares_darwin_parser_get_datetime, /* datetime */ @@ -62,7 +62,7 @@ parser_is_mares_darwin (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &mares_darwin_parser_backend; + return abstract->vtable == &mares_darwin_parser_vtable; } @@ -80,7 +80,7 @@ mares_darwin_parser_create (dc_parser_t **out, dc_context_t *context, unsigned i } // Initialize the base class. - parser_init (&parser->base, context, &mares_darwin_parser_backend); + parser_init (&parser->base, context, &mares_darwin_parser_vtable); if (model == DARWINAIR) { parser->headersize = 60; diff --git a/src/mares_iconhd.c b/src/mares_iconhd.c index e833d20..a1042ac 100644 --- a/src/mares_iconhd.c +++ b/src/mares_iconhd.c @@ -70,7 +70,7 @@ static dc_status_t mares_iconhd_device_dump (dc_device_t *abstract, dc_buffer_t static dc_status_t mares_iconhd_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t mares_iconhd_device_close (dc_device_t *abstract); -static const device_backend_t mares_iconhd_device_backend = { +static const dc_device_vtable_t mares_iconhd_device_vtable = { DC_FAMILY_MARES_ICONHD, mares_iconhd_device_set_fingerprint, /* set_fingerprint */ mares_iconhd_device_read, /* read */ @@ -86,7 +86,7 @@ device_is_mares_iconhd (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &mares_iconhd_device_backend; + return abstract->vtable == &mares_iconhd_device_vtable; } @@ -250,7 +250,7 @@ mares_iconhd_device_open (dc_device_t **out, dc_context_t *context, const char * } // Initialize the base class. - device_init (&device->base, context, &mares_iconhd_device_backend); + device_init (&device->base, context, &mares_iconhd_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/mares_iconhd_parser.c b/src/mares_iconhd_parser.c index 5ab70ca..5dded02 100644 --- a/src/mares_iconhd_parser.c +++ b/src/mares_iconhd_parser.c @@ -43,7 +43,7 @@ static dc_status_t mares_iconhd_parser_get_field (dc_parser_t *abstract, dc_fiel static dc_status_t mares_iconhd_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t mares_iconhd_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t mares_iconhd_parser_backend = { +static const dc_parser_vtable_t mares_iconhd_parser_vtable = { DC_FAMILY_MARES_ICONHD, mares_iconhd_parser_set_data, /* set_data */ mares_iconhd_parser_get_datetime, /* datetime */ @@ -59,7 +59,7 @@ parser_is_mares_iconhd (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &mares_iconhd_parser_backend; + return abstract->vtable == &mares_iconhd_parser_vtable; } @@ -77,7 +77,7 @@ mares_iconhd_parser_create (dc_parser_t **out, dc_context_t *context, unsigned i } // Initialize the base class. - parser_init (&parser->base, context, &mares_iconhd_parser_backend); + parser_init (&parser->base, context, &mares_iconhd_parser_vtable); // Set the default values. parser->model = model; diff --git a/src/mares_nemo.c b/src/mares_nemo.c index b805c90..9bf1837 100644 --- a/src/mares_nemo.c +++ b/src/mares_nemo.c @@ -58,7 +58,7 @@ static dc_status_t mares_nemo_device_dump (dc_device_t *abstract, dc_buffer_t *b static dc_status_t mares_nemo_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t mares_nemo_device_close (dc_device_t *abstract); -static const device_backend_t mares_nemo_device_backend = { +static const dc_device_vtable_t mares_nemo_device_vtable = { DC_FAMILY_MARES_NEMO, mares_nemo_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -90,7 +90,7 @@ device_is_mares_nemo (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &mares_nemo_device_backend; + return abstract->vtable == &mares_nemo_device_vtable; } @@ -108,7 +108,7 @@ mares_nemo_device_open (dc_device_t **out, dc_context_t *context, const char *na } // Initialize the base class. - device_init (&device->base, context, &mares_nemo_device_backend); + device_init (&device->base, context, &mares_nemo_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/mares_nemo_parser.c b/src/mares_nemo_parser.c index aa58d33..769072f 100644 --- a/src/mares_nemo_parser.c +++ b/src/mares_nemo_parser.c @@ -58,7 +58,7 @@ static dc_status_t mares_nemo_parser_get_field (dc_parser_t *abstract, dc_field_ static dc_status_t mares_nemo_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t mares_nemo_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t mares_nemo_parser_backend = { +static const dc_parser_vtable_t mares_nemo_parser_vtable = { DC_FAMILY_MARES_NEMO, mares_nemo_parser_set_data, /* set_data */ mares_nemo_parser_get_datetime, /* datetime */ @@ -74,7 +74,7 @@ parser_is_mares_nemo (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &mares_nemo_parser_backend; + return abstract->vtable == &mares_nemo_parser_vtable; } @@ -92,7 +92,7 @@ mares_nemo_parser_create (dc_parser_t **out, dc_context_t *context, unsigned int } // Initialize the base class. - parser_init (&parser->base, context, &mares_nemo_parser_backend); + parser_init (&parser->base, context, &mares_nemo_parser_vtable); // Get the freedive mode for this model. unsigned int freedive = 2; diff --git a/src/mares_puck.c b/src/mares_puck.c index d379a13..6cd25a4 100644 --- a/src/mares_puck.c +++ b/src/mares_puck.c @@ -48,7 +48,7 @@ static dc_status_t mares_puck_device_dump (dc_device_t *abstract, dc_buffer_t *b static dc_status_t mares_puck_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t mares_puck_device_close (dc_device_t *abstract); -static const device_backend_t mares_puck_device_backend = { +static const dc_device_vtable_t mares_puck_device_vtable = { DC_FAMILY_MARES_PUCK, mares_puck_device_set_fingerprint, /* set_fingerprint */ mares_common_device_read, /* read */ @@ -88,7 +88,7 @@ device_is_mares_puck (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &mares_puck_device_backend; + return abstract->vtable == &mares_puck_device_vtable; } @@ -106,7 +106,7 @@ mares_puck_device_open (dc_device_t **out, dc_context_t *context, const char *na } // Initialize the base class. - mares_common_device_init (&device->base, context, &mares_puck_device_backend); + mares_common_device_init (&device->base, context, &mares_puck_device_vtable); // Set the default values. device->layout = NULL; diff --git a/src/oceanic_atom2.c b/src/oceanic_atom2.c index 8c18864..bc2530f 100644 --- a/src/oceanic_atom2.c +++ b/src/oceanic_atom2.c @@ -51,7 +51,7 @@ static dc_status_t oceanic_atom2_device_read (dc_device_t *abstract, unsigned in static dc_status_t oceanic_atom2_device_write (dc_device_t *abstract, unsigned int address, const unsigned char data[], unsigned int size); static dc_status_t oceanic_atom2_device_close (dc_device_t *abstract); -static const device_backend_t oceanic_atom2_device_backend = { +static const dc_device_vtable_t oceanic_atom2_device_vtable = { DC_FAMILY_OCEANIC_ATOM2, oceanic_common_device_set_fingerprint, /* set_fingerprint */ oceanic_atom2_device_read, /* read */ @@ -246,7 +246,7 @@ device_is_oceanic_atom2 (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &oceanic_atom2_device_backend; + return abstract->vtable == &oceanic_atom2_device_vtable; } @@ -357,7 +357,7 @@ oceanic_atom2_device_open (dc_device_t **out, dc_context_t *context, const char } // Initialize the base class. - oceanic_common_device_init (&device->base, context, &oceanic_atom2_device_backend); + oceanic_common_device_init (&device->base, context, &oceanic_atom2_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/oceanic_atom2_parser.c b/src/oceanic_atom2_parser.c index 01225e7..73e8d2c 100644 --- a/src/oceanic_atom2_parser.c +++ b/src/oceanic_atom2_parser.c @@ -71,7 +71,7 @@ static dc_status_t oceanic_atom2_parser_get_field (dc_parser_t *abstract, dc_fie static dc_status_t oceanic_atom2_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t oceanic_atom2_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t oceanic_atom2_parser_backend = { +static const dc_parser_vtable_t oceanic_atom2_parser_vtable = { DC_FAMILY_OCEANIC_ATOM2, oceanic_atom2_parser_set_data, /* set_data */ oceanic_atom2_parser_get_datetime, /* datetime */ @@ -87,7 +87,7 @@ parser_is_oceanic_atom2 (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &oceanic_atom2_parser_backend; + return abstract->vtable == &oceanic_atom2_parser_vtable; } @@ -105,7 +105,7 @@ oceanic_atom2_parser_create (dc_parser_t **out, dc_context_t *context, unsigned } // Initialize the base class. - parser_init (&parser->base, context, &oceanic_atom2_parser_backend); + parser_init (&parser->base, context, &oceanic_atom2_parser_vtable); // Set the default values. parser->model = model; diff --git a/src/oceanic_common.c b/src/oceanic_common.c index d91f542..7b9f79d 100644 --- a/src/oceanic_common.c +++ b/src/oceanic_common.c @@ -117,12 +117,12 @@ oceanic_common_match (const unsigned char *version, const oceanic_common_version void -oceanic_common_device_init (oceanic_common_device_t *device, dc_context_t *context, const device_backend_t *backend) +oceanic_common_device_init (oceanic_common_device_t *device, dc_context_t *context, const dc_device_vtable_t *vtable) { assert (device != NULL); // Initialize the base class. - device_init (&device->base, context, backend); + device_init (&device->base, context, vtable); // Set the default values. memset (device->version, 0, sizeof (device->version)); diff --git a/src/oceanic_common.h b/src/oceanic_common.h index 0530adf..af17cf3 100644 --- a/src/oceanic_common.h +++ b/src/oceanic_common.h @@ -71,7 +71,7 @@ int oceanic_common_match (const unsigned char *version, const oceanic_common_version_t patterns[], unsigned int n); void -oceanic_common_device_init (oceanic_common_device_t *device, dc_context_t *context, const device_backend_t *backend); +oceanic_common_device_init (oceanic_common_device_t *device, dc_context_t *context, const dc_device_vtable_t *vtable); dc_status_t oceanic_common_device_set_fingerprint (dc_device_t *device, const unsigned char data[], unsigned int size); diff --git a/src/oceanic_veo250.c b/src/oceanic_veo250.c index 623f820..2e73cd4 100644 --- a/src/oceanic_veo250.c +++ b/src/oceanic_veo250.c @@ -51,7 +51,7 @@ typedef struct oceanic_veo250_device_t { static dc_status_t oceanic_veo250_device_read (dc_device_t *abstract, unsigned int address, unsigned char data[], unsigned int size); static dc_status_t oceanic_veo250_device_close (dc_device_t *abstract); -static const device_backend_t oceanic_veo250_device_backend = { +static const dc_device_vtable_t oceanic_veo250_device_vtable = { DC_FAMILY_OCEANIC_VEO250, oceanic_common_device_set_fingerprint, /* set_fingerprint */ oceanic_veo250_device_read, /* read */ @@ -91,7 +91,7 @@ device_is_oceanic_veo250 (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &oceanic_veo250_device_backend; + return abstract->vtable == &oceanic_veo250_device_vtable; } @@ -240,7 +240,7 @@ oceanic_veo250_device_open (dc_device_t **out, dc_context_t *context, const char } // Initialize the base class. - oceanic_common_device_init (&device->base, context, &oceanic_veo250_device_backend); + oceanic_common_device_init (&device->base, context, &oceanic_veo250_device_vtable); // Override the base class values. device->base.layout = &oceanic_veo250_layout; diff --git a/src/oceanic_veo250_parser.c b/src/oceanic_veo250_parser.c index 910c393..6044d39 100644 --- a/src/oceanic_veo250_parser.c +++ b/src/oceanic_veo250_parser.c @@ -46,7 +46,7 @@ static dc_status_t oceanic_veo250_parser_get_field (dc_parser_t *abstract, dc_fi static dc_status_t oceanic_veo250_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t oceanic_veo250_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t oceanic_veo250_parser_backend = { +static const dc_parser_vtable_t oceanic_veo250_parser_vtable = { DC_FAMILY_OCEANIC_VEO250, oceanic_veo250_parser_set_data, /* set_data */ oceanic_veo250_parser_get_datetime, /* datetime */ @@ -62,7 +62,7 @@ parser_is_oceanic_veo250 (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &oceanic_veo250_parser_backend; + return abstract->vtable == &oceanic_veo250_parser_vtable; } @@ -80,7 +80,7 @@ oceanic_veo250_parser_create (dc_parser_t **out, dc_context_t *context, unsigned } // Initialize the base class. - parser_init (&parser->base, context, &oceanic_veo250_parser_backend); + parser_init (&parser->base, context, &oceanic_veo250_parser_vtable); // Set the default values. parser->model = model; diff --git a/src/oceanic_vtpro.c b/src/oceanic_vtpro.c index e5fc93c..e98314a 100644 --- a/src/oceanic_vtpro.c +++ b/src/oceanic_vtpro.c @@ -51,7 +51,7 @@ typedef struct oceanic_vtpro_device_t { static dc_status_t oceanic_vtpro_device_read (dc_device_t *abstract, unsigned int address, unsigned char data[], unsigned int size); static dc_status_t oceanic_vtpro_device_close (dc_device_t *abstract); -static const device_backend_t oceanic_vtpro_device_backend = { +static const dc_device_vtable_t oceanic_vtpro_device_vtable = { DC_FAMILY_OCEANIC_VTPRO, oceanic_common_device_set_fingerprint, /* set_fingerprint */ oceanic_vtpro_device_read, /* read */ @@ -104,7 +104,7 @@ device_is_oceanic_vtpro (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &oceanic_vtpro_device_backend; + return abstract->vtable == &oceanic_vtpro_device_vtable; } @@ -270,7 +270,7 @@ oceanic_vtpro_device_open (dc_device_t **out, dc_context_t *context, const char } // Initialize the base class. - oceanic_common_device_init (&device->base, context, &oceanic_vtpro_device_backend); + oceanic_common_device_init (&device->base, context, &oceanic_vtpro_device_vtable); // Override the base class values. device->base.multipage = MULTIPAGE; diff --git a/src/oceanic_vtpro_parser.c b/src/oceanic_vtpro_parser.c index 08a4b90..93d7809 100644 --- a/src/oceanic_vtpro_parser.c +++ b/src/oceanic_vtpro_parser.c @@ -45,7 +45,7 @@ static dc_status_t oceanic_vtpro_parser_get_field (dc_parser_t *abstract, dc_fie static dc_status_t oceanic_vtpro_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t oceanic_vtpro_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t oceanic_vtpro_parser_backend = { +static const dc_parser_vtable_t oceanic_vtpro_parser_vtable = { DC_FAMILY_OCEANIC_VTPRO, oceanic_vtpro_parser_set_data, /* set_data */ oceanic_vtpro_parser_get_datetime, /* datetime */ @@ -61,7 +61,7 @@ parser_is_oceanic_vtpro (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &oceanic_vtpro_parser_backend; + return abstract->vtable == &oceanic_vtpro_parser_vtable; } @@ -79,7 +79,7 @@ oceanic_vtpro_parser_create (dc_parser_t **out, dc_context_t *context) } // Initialize the base class. - parser_init (&parser->base, context, &oceanic_vtpro_parser_backend); + parser_init (&parser->base, context, &oceanic_vtpro_parser_vtable); // Set the default values. parser->cached = 0; diff --git a/src/parser-private.h b/src/parser-private.h index 78cb2f3..1081f02 100644 --- a/src/parser-private.h +++ b/src/parser-private.h @@ -30,18 +30,18 @@ extern "C" { #endif /* __cplusplus */ struct dc_parser_t; -struct parser_backend_t; +struct dc_parser_vtable_t; -typedef struct parser_backend_t parser_backend_t; +typedef struct dc_parser_vtable_t dc_parser_vtable_t; struct dc_parser_t { - const parser_backend_t *backend; + const dc_parser_vtable_t *vtable; dc_context_t *context; const unsigned char *data; unsigned int size; }; -struct parser_backend_t { +struct dc_parser_vtable_t { dc_family_t type; dc_status_t (*set_data) (dc_parser_t *parser, const unsigned char *data, unsigned int size); @@ -56,7 +56,7 @@ struct parser_backend_t { }; void -parser_init (dc_parser_t *parser, dc_context_t *context, const parser_backend_t *backend); +parser_init (dc_parser_t *parser, dc_context_t *context, const dc_parser_vtable_t *vtable); typedef struct sample_statistics_t { unsigned int divetime; diff --git a/src/parser.c b/src/parser.c index 310d13a..ff5f3a8 100644 --- a/src/parser.c +++ b/src/parser.c @@ -128,9 +128,9 @@ dc_parser_new (dc_parser_t **out, dc_device_t *device) void -parser_init (dc_parser_t *parser, dc_context_t *context, const parser_backend_t *backend) +parser_init (dc_parser_t *parser, dc_context_t *context, const dc_parser_vtable_t *vtable) { - parser->backend = backend; + parser->vtable = vtable; parser->context = context; parser->data = NULL; parser->size = 0; @@ -143,7 +143,7 @@ dc_parser_get_type (dc_parser_t *parser) if (parser == NULL) return DC_FAMILY_NULL; - return parser->backend->type; + return parser->vtable->type; } @@ -153,13 +153,13 @@ dc_parser_set_data (dc_parser_t *parser, const unsigned char *data, unsigned int if (parser == NULL) return DC_STATUS_UNSUPPORTED; - if (parser->backend->set_data == NULL) + if (parser->vtable->set_data == NULL) return DC_STATUS_UNSUPPORTED; parser->data = data; parser->size = size; - return parser->backend->set_data (parser, data, size); + return parser->vtable->set_data (parser, data, size); } @@ -169,10 +169,10 @@ dc_parser_get_datetime (dc_parser_t *parser, dc_datetime_t *datetime) if (parser == NULL) return DC_STATUS_UNSUPPORTED; - if (parser->backend->datetime == NULL) + if (parser->vtable->datetime == NULL) return DC_STATUS_UNSUPPORTED; - return parser->backend->datetime (parser, datetime); + return parser->vtable->datetime (parser, datetime); } dc_status_t @@ -181,10 +181,10 @@ dc_parser_get_field (dc_parser_t *parser, dc_field_type_t type, unsigned int fla if (parser == NULL) return DC_STATUS_UNSUPPORTED; - if (parser->backend->field == NULL) + if (parser->vtable->field == NULL) return DC_STATUS_UNSUPPORTED; - return parser->backend->field (parser, type, flags, value); + return parser->vtable->field (parser, type, flags, value); } @@ -194,10 +194,10 @@ dc_parser_samples_foreach (dc_parser_t *parser, dc_sample_callback_t callback, v if (parser == NULL) return DC_STATUS_UNSUPPORTED; - if (parser->backend->samples_foreach == NULL) + if (parser->vtable->samples_foreach == NULL) return DC_STATUS_UNSUPPORTED; - return parser->backend->samples_foreach (parser, callback, userdata); + return parser->vtable->samples_foreach (parser, callback, userdata); } @@ -207,10 +207,10 @@ dc_parser_destroy (dc_parser_t *parser) if (parser == NULL) return DC_STATUS_SUCCESS; - if (parser->backend->destroy == NULL) + if (parser->vtable->destroy == NULL) return DC_STATUS_UNSUPPORTED; - return parser->backend->destroy (parser); + return parser->vtable->destroy (parser); } diff --git a/src/reefnet_sensus.c b/src/reefnet_sensus.c index a4197f5..4435766 100644 --- a/src/reefnet_sensus.c +++ b/src/reefnet_sensus.c @@ -53,7 +53,7 @@ static dc_status_t reefnet_sensus_device_dump (dc_device_t *abstract, dc_buffer_ static dc_status_t reefnet_sensus_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t reefnet_sensus_device_close (dc_device_t *abstract); -static const device_backend_t reefnet_sensus_device_backend = { +static const dc_device_vtable_t reefnet_sensus_device_vtable = { DC_FAMILY_REEFNET_SENSUS, reefnet_sensus_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -69,7 +69,7 @@ device_is_reefnet_sensus (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &reefnet_sensus_device_backend; + return abstract->vtable == &reefnet_sensus_device_vtable; } @@ -107,7 +107,7 @@ reefnet_sensus_device_open (dc_device_t **out, dc_context_t *context, const char } // Initialize the base class. - device_init (&device->base, context, &reefnet_sensus_device_backend); + device_init (&device->base, context, &reefnet_sensus_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/reefnet_sensus_parser.c b/src/reefnet_sensus_parser.c index 1c425b7..ed0cf0a 100644 --- a/src/reefnet_sensus_parser.c +++ b/src/reefnet_sensus_parser.c @@ -52,7 +52,7 @@ static dc_status_t reefnet_sensus_parser_get_field (dc_parser_t *abstract, dc_fi static dc_status_t reefnet_sensus_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t reefnet_sensus_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t reefnet_sensus_parser_backend = { +static const dc_parser_vtable_t reefnet_sensus_parser_vtable = { DC_FAMILY_REEFNET_SENSUS, reefnet_sensus_parser_set_data, /* set_data */ reefnet_sensus_parser_get_datetime, /* datetime */ @@ -68,7 +68,7 @@ parser_is_reefnet_sensus (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &reefnet_sensus_parser_backend; + return abstract->vtable == &reefnet_sensus_parser_vtable; } @@ -86,7 +86,7 @@ reefnet_sensus_parser_create (dc_parser_t **out, dc_context_t *context, unsigned } // Initialize the base class. - parser_init (&parser->base, context, &reefnet_sensus_parser_backend); + parser_init (&parser->base, context, &reefnet_sensus_parser_vtable); // Set the default values. parser->atmospheric = ATM; diff --git a/src/reefnet_sensuspro.c b/src/reefnet_sensuspro.c index b82557f..7a45bed 100644 --- a/src/reefnet_sensuspro.c +++ b/src/reefnet_sensuspro.c @@ -52,7 +52,7 @@ static dc_status_t reefnet_sensuspro_device_dump (dc_device_t *abstract, dc_buff static dc_status_t reefnet_sensuspro_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t reefnet_sensuspro_device_close (dc_device_t *abstract); -static const device_backend_t reefnet_sensuspro_device_backend = { +static const dc_device_vtable_t reefnet_sensuspro_device_vtable = { DC_FAMILY_REEFNET_SENSUSPRO, reefnet_sensuspro_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -68,7 +68,7 @@ device_is_reefnet_sensuspro (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &reefnet_sensuspro_device_backend; + return abstract->vtable == &reefnet_sensuspro_device_vtable; } @@ -86,7 +86,7 @@ reefnet_sensuspro_device_open (dc_device_t **out, dc_context_t *context, const c } // Initialize the base class. - device_init (&device->base, context, &reefnet_sensuspro_device_backend); + device_init (&device->base, context, &reefnet_sensuspro_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/reefnet_sensuspro_parser.c b/src/reefnet_sensuspro_parser.c index dcefe15..02a98d9 100644 --- a/src/reefnet_sensuspro_parser.c +++ b/src/reefnet_sensuspro_parser.c @@ -51,7 +51,7 @@ static dc_status_t reefnet_sensuspro_parser_get_field (dc_parser_t *abstract, dc static dc_status_t reefnet_sensuspro_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t reefnet_sensuspro_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t reefnet_sensuspro_parser_backend = { +static const dc_parser_vtable_t reefnet_sensuspro_parser_vtable = { DC_FAMILY_REEFNET_SENSUSPRO, reefnet_sensuspro_parser_set_data, /* set_data */ reefnet_sensuspro_parser_get_datetime, /* datetime */ @@ -67,7 +67,7 @@ parser_is_reefnet_sensuspro (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &reefnet_sensuspro_parser_backend; + return abstract->vtable == &reefnet_sensuspro_parser_vtable; } @@ -85,7 +85,7 @@ reefnet_sensuspro_parser_create (dc_parser_t **out, dc_context_t *context, unsig } // Initialize the base class. - parser_init (&parser->base, context, &reefnet_sensuspro_parser_backend); + parser_init (&parser->base, context, &reefnet_sensuspro_parser_vtable); // Set the default values. parser->atmospheric = ATM; diff --git a/src/reefnet_sensusultra.c b/src/reefnet_sensusultra.c index 9944f64..f6254cc 100644 --- a/src/reefnet_sensusultra.c +++ b/src/reefnet_sensusultra.c @@ -61,7 +61,7 @@ static dc_status_t reefnet_sensusultra_device_dump (dc_device_t *abstract, dc_bu static dc_status_t reefnet_sensusultra_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t reefnet_sensusultra_device_close (dc_device_t *abstract); -static const device_backend_t reefnet_sensusultra_device_backend = { +static const dc_device_vtable_t reefnet_sensusultra_device_vtable = { DC_FAMILY_REEFNET_SENSUSULTRA, reefnet_sensusultra_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -77,7 +77,7 @@ device_is_reefnet_sensusultra (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &reefnet_sensusultra_device_backend; + return abstract->vtable == &reefnet_sensusultra_device_vtable; } @@ -95,7 +95,7 @@ reefnet_sensusultra_device_open (dc_device_t **out, dc_context_t *context, const } // Initialize the base class. - device_init (&device->base, context, &reefnet_sensusultra_device_backend); + device_init (&device->base, context, &reefnet_sensusultra_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/reefnet_sensusultra_parser.c b/src/reefnet_sensusultra_parser.c index 9de631f..5a7e7a3 100644 --- a/src/reefnet_sensusultra_parser.c +++ b/src/reefnet_sensusultra_parser.c @@ -51,7 +51,7 @@ static dc_status_t reefnet_sensusultra_parser_get_field (dc_parser_t *abstract, static dc_status_t reefnet_sensusultra_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t reefnet_sensusultra_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t reefnet_sensusultra_parser_backend = { +static const dc_parser_vtable_t reefnet_sensusultra_parser_vtable = { DC_FAMILY_REEFNET_SENSUSULTRA, reefnet_sensusultra_parser_set_data, /* set_data */ reefnet_sensusultra_parser_get_datetime, /* datetime */ @@ -67,7 +67,7 @@ parser_is_reefnet_sensusultra (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &reefnet_sensusultra_parser_backend; + return abstract->vtable == &reefnet_sensusultra_parser_vtable; } @@ -85,7 +85,7 @@ reefnet_sensusultra_parser_create (dc_parser_t **out, dc_context_t *context, uns } // Initialize the base class. - parser_init (&parser->base, context, &reefnet_sensusultra_parser_backend); + parser_init (&parser->base, context, &reefnet_sensusultra_parser_vtable); // Set the default values. parser->atmospheric = ATM; diff --git a/src/shearwater_predator.c b/src/shearwater_predator.c index 1969899..a38e5cc 100644 --- a/src/shearwater_predator.c +++ b/src/shearwater_predator.c @@ -58,7 +58,7 @@ static dc_status_t shearwater_predator_device_dump (dc_device_t *abstract, dc_bu static dc_status_t shearwater_predator_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t shearwater_predator_device_close (dc_device_t *abstract); -static const device_backend_t shearwater_predator_device_backend = { +static const dc_device_vtable_t shearwater_predator_device_vtable = { DC_FAMILY_SHEARWATER_PREDATOR, shearwater_predator_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -75,7 +75,7 @@ device_is_shearwater_predator (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &shearwater_predator_device_backend; + return abstract->vtable == &shearwater_predator_device_vtable; } @@ -267,7 +267,7 @@ shearwater_predator_device_open (dc_device_t **out, dc_context_t *context, const } // Initialize the base class. - device_init (&device->base, context, &shearwater_predator_device_backend); + device_init (&device->base, context, &shearwater_predator_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/shearwater_predator_parser.c b/src/shearwater_predator_parser.c index c0c6cec..cce7a68 100644 --- a/src/shearwater_predator_parser.c +++ b/src/shearwater_predator_parser.c @@ -46,7 +46,7 @@ static dc_status_t shearwater_predator_parser_get_field (dc_parser_t *abstract, static dc_status_t shearwater_predator_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t shearwater_predator_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t shearwater_predator_parser_backend = { +static const dc_parser_vtable_t shearwater_predator_parser_vtable = { DC_FAMILY_SHEARWATER_PREDATOR, shearwater_predator_parser_set_data, /* set_data */ shearwater_predator_parser_get_datetime, /* datetime */ @@ -62,7 +62,7 @@ parser_is_shearwater_predator (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &shearwater_predator_parser_backend; + return abstract->vtable == &shearwater_predator_parser_vtable; } @@ -80,7 +80,7 @@ shearwater_predator_parser_create (dc_parser_t **out, dc_context_t *context) } // Initialize the base class. - parser_init (&parser->base, context, &shearwater_predator_parser_backend); + parser_init (&parser->base, context, &shearwater_predator_parser_vtable); *out = (dc_parser_t *) parser; diff --git a/src/suunto_common.c b/src/suunto_common.c index ff77956..91aa669 100644 --- a/src/suunto_common.c +++ b/src/suunto_common.c @@ -31,12 +31,12 @@ #define RB_PROFILE_PEEK(a,l) ringbuffer_decrement (a, l->peek, l->rb_profile_begin, l->rb_profile_end) void -suunto_common_device_init (suunto_common_device_t *device, dc_context_t *context, const device_backend_t *backend) +suunto_common_device_init (suunto_common_device_t *device, dc_context_t *context, const dc_device_vtable_t *vtable) { assert (device != NULL); // Initialize the base class. - device_init (&device->base, context, backend); + device_init (&device->base, context, vtable); // Set the default values. memset (device->fingerprint, 0, sizeof (device->fingerprint)); diff --git a/src/suunto_common.h b/src/suunto_common.h index 40bdf6c..9f40113 100644 --- a/src/suunto_common.h +++ b/src/suunto_common.h @@ -46,7 +46,7 @@ typedef struct suunto_common_layout_t { } suunto_common_layout_t; void -suunto_common_device_init (suunto_common_device_t *device, dc_context_t *context, const device_backend_t *backend); +suunto_common_device_init (suunto_common_device_t *device, dc_context_t *context, const dc_device_vtable_t *vtable); dc_status_t suunto_common_device_set_fingerprint (dc_device_t *device, const unsigned char data[], unsigned int size); diff --git a/src/suunto_common2.c b/src/suunto_common2.c index 0c1916a..366e63a 100644 --- a/src/suunto_common2.c +++ b/src/suunto_common2.c @@ -37,15 +37,15 @@ #define RB_PROFILE_DISTANCE(l,a,b,m) ringbuffer_distance (a, b, m, l->rb_profile_begin, l->rb_profile_end) -#define BACKEND(abstract) ((suunto_common2_device_backend_t *) abstract->backend) +#define VTABLE(abstract) ((suunto_common2_device_vtable_t *) abstract->vtable) void -suunto_common2_device_init (suunto_common2_device_t *device, dc_context_t *context, const suunto_common2_device_backend_t *backend) +suunto_common2_device_init (suunto_common2_device_t *device, dc_context_t *context, const suunto_common2_device_vtable_t *vtable) { assert (device != NULL); // Initialize the base class. - device_init (&device->base, context, &backend->base); + device_init (&device->base, context, &vtable->base); // Set the default values. device->layout = NULL; @@ -59,7 +59,7 @@ suunto_common2_transfer (dc_device_t *abstract, const unsigned char command[], u { assert (asize >= size + 4); - if (BACKEND (abstract)->packet == NULL) + if (VTABLE (abstract)->packet == NULL) return DC_STATUS_UNSUPPORTED; // Occasionally, the dive computer does not respond to a command. @@ -69,7 +69,7 @@ suunto_common2_transfer (dc_device_t *abstract, const unsigned char command[], u unsigned int nretries = 0; dc_status_t rc = DC_STATUS_SUCCESS; - while ((rc = BACKEND (abstract)->packet (abstract, command, csize, answer, asize, size)) != DC_STATUS_SUCCESS) { + while ((rc = VTABLE (abstract)->packet (abstract, command, csize, answer, asize, size)) != DC_STATUS_SUCCESS) { // Automatically discard a corrupted packet, // and request a new one. if (rc != DC_STATUS_TIMEOUT && rc != DC_STATUS_PROTOCOL) diff --git a/src/suunto_common2.h b/src/suunto_common2.h index 6073e25..bbcf72b 100644 --- a/src/suunto_common2.h +++ b/src/suunto_common2.h @@ -47,13 +47,13 @@ typedef struct suunto_common2_device_t { unsigned char fingerprint[7]; } suunto_common2_device_t; -typedef struct suunto_common2_device_backend_t { - device_backend_t base; +typedef struct suunto_common2_device_vtable_t { + dc_device_vtable_t base; dc_status_t (*packet) (dc_device_t *device, const unsigned char command[], unsigned int csize, unsigned char answer[], unsigned int asize, unsigned int size); -} suunto_common2_device_backend_t; +} suunto_common2_device_vtable_t; void -suunto_common2_device_init (suunto_common2_device_t *device, dc_context_t *context, const suunto_common2_device_backend_t *backend); +suunto_common2_device_init (suunto_common2_device_t *device, dc_context_t *context, const suunto_common2_device_vtable_t *vtable); dc_status_t suunto_common2_device_set_fingerprint (dc_device_t *device, const unsigned char data[], unsigned int size); diff --git a/src/suunto_d9.c b/src/suunto_d9.c index 259cbe9..793d433 100644 --- a/src/suunto_d9.c +++ b/src/suunto_d9.c @@ -50,7 +50,7 @@ typedef struct suunto_d9_device_t { static dc_status_t suunto_d9_device_packet (dc_device_t *abstract, const unsigned char command[], unsigned int csize, unsigned char answer[], unsigned int asize, unsigned int size); static dc_status_t suunto_d9_device_close (dc_device_t *abstract); -static const suunto_common2_device_backend_t suunto_d9_device_backend = { +static const suunto_common2_device_vtable_t suunto_d9_device_vtable = { { DC_FAMILY_SUUNTO_D9, suunto_common2_device_set_fingerprint, /* set_fingerprint */ @@ -85,7 +85,7 @@ device_is_suunto_d9 (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == (const device_backend_t *) &suunto_d9_device_backend; + return abstract->vtable == (const dc_device_vtable_t *) &suunto_d9_device_vtable; } @@ -138,7 +138,7 @@ suunto_d9_device_open (dc_device_t **out, dc_context_t *context, const char *nam } // Initialize the base class. - suunto_common2_device_init (&device->base, context, &suunto_d9_device_backend); + suunto_common2_device_init (&device->base, context, &suunto_d9_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/suunto_d9_parser.c b/src/suunto_d9_parser.c index 1334a3b..faff739 100644 --- a/src/suunto_d9_parser.c +++ b/src/suunto_d9_parser.c @@ -72,7 +72,7 @@ static dc_status_t suunto_d9_parser_get_field (dc_parser_t *abstract, dc_field_t static dc_status_t suunto_d9_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t suunto_d9_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t suunto_d9_parser_backend = { +static const dc_parser_vtable_t suunto_d9_parser_vtable = { DC_FAMILY_SUUNTO_D9, suunto_d9_parser_set_data, /* set_data */ suunto_d9_parser_get_datetime, /* datetime */ @@ -88,7 +88,7 @@ parser_is_suunto_d9 (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &suunto_d9_parser_backend; + return abstract->vtable == &suunto_d9_parser_vtable; } @@ -106,7 +106,7 @@ suunto_d9_parser_create (dc_parser_t **out, dc_context_t *context, unsigned int } // Initialize the base class. - parser_init (&parser->base, context, &suunto_d9_parser_backend); + parser_init (&parser->base, context, &suunto_d9_parser_vtable); // Set the default values. parser->model = model; diff --git a/src/suunto_eon.c b/src/suunto_eon.c index 9354c57..3243bde 100644 --- a/src/suunto_eon.c +++ b/src/suunto_eon.c @@ -47,7 +47,7 @@ static dc_status_t suunto_eon_device_dump (dc_device_t *abstract, dc_buffer_t *b static dc_status_t suunto_eon_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t suunto_eon_device_close (dc_device_t *abstract); -static const device_backend_t suunto_eon_device_backend = { +static const dc_device_vtable_t suunto_eon_device_vtable = { DC_FAMILY_SUUNTO_EON, suunto_common_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -72,7 +72,7 @@ device_is_suunto_eon (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &suunto_eon_device_backend; + return abstract->vtable == &suunto_eon_device_vtable; } @@ -90,7 +90,7 @@ suunto_eon_device_open (dc_device_t **out, dc_context_t *context, const char *na } // Initialize the base class. - suunto_common_device_init (&device->base, context, &suunto_eon_device_backend); + suunto_common_device_init (&device->base, context, &suunto_eon_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/suunto_eon_parser.c b/src/suunto_eon_parser.c index c7f0628..58f7452 100644 --- a/src/suunto_eon_parser.c +++ b/src/suunto_eon_parser.c @@ -45,7 +45,7 @@ static dc_status_t suunto_eon_parser_get_field (dc_parser_t *abstract, dc_field_ static dc_status_t suunto_eon_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t suunto_eon_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t suunto_eon_parser_backend = { +static const dc_parser_vtable_t suunto_eon_parser_vtable = { DC_FAMILY_SUUNTO_EON, suunto_eon_parser_set_data, /* set_data */ suunto_eon_parser_get_datetime, /* datetime */ @@ -61,7 +61,7 @@ parser_is_suunto_eon (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &suunto_eon_parser_backend; + return abstract->vtable == &suunto_eon_parser_vtable; } @@ -79,7 +79,7 @@ suunto_eon_parser_create (dc_parser_t **out, dc_context_t *context, int spyder) } // Initialize the base class. - parser_init (&parser->base, context, &suunto_eon_parser_backend); + parser_init (&parser->base, context, &suunto_eon_parser_vtable); // Set the default values. parser->spyder = spyder; diff --git a/src/suunto_solution.c b/src/suunto_solution.c index 625eb3c..a35c208 100644 --- a/src/suunto_solution.c +++ b/src/suunto_solution.c @@ -49,7 +49,7 @@ static dc_status_t suunto_solution_device_dump (dc_device_t *abstract, dc_buffer static dc_status_t suunto_solution_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t suunto_solution_device_close (dc_device_t *abstract); -static const device_backend_t suunto_solution_device_backend = { +static const dc_device_vtable_t suunto_solution_device_vtable = { DC_FAMILY_SUUNTO_SOLUTION, NULL, /* set_fingerprint */ NULL, /* read */ @@ -65,7 +65,7 @@ device_is_suunto_solution (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &suunto_solution_device_backend; + return abstract->vtable == &suunto_solution_device_vtable; } @@ -83,7 +83,7 @@ suunto_solution_device_open (dc_device_t **out, dc_context_t *context, const cha } // Initialize the base class. - device_init (&device->base, context, &suunto_solution_device_backend); + device_init (&device->base, context, &suunto_solution_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/suunto_solution_parser.c b/src/suunto_solution_parser.c index c6489f2..a0a1a66 100644 --- a/src/suunto_solution_parser.c +++ b/src/suunto_solution_parser.c @@ -42,7 +42,7 @@ static dc_status_t suunto_solution_parser_get_field (dc_parser_t *abstract, dc_f static dc_status_t suunto_solution_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t suunto_solution_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t suunto_solution_parser_backend = { +static const dc_parser_vtable_t suunto_solution_parser_vtable = { DC_FAMILY_SUUNTO_SOLUTION, suunto_solution_parser_set_data, /* set_data */ NULL, /* datetime */ @@ -58,7 +58,7 @@ parser_is_suunto_solution (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &suunto_solution_parser_backend; + return abstract->vtable == &suunto_solution_parser_vtable; } @@ -76,7 +76,7 @@ suunto_solution_parser_create (dc_parser_t **out, dc_context_t *context) } // Initialize the base class. - parser_init (&parser->base, context, &suunto_solution_parser_backend); + parser_init (&parser->base, context, &suunto_solution_parser_vtable); // Set the default values. parser->cached = 0; diff --git a/src/suunto_vyper.c b/src/suunto_vyper.c index 84bc24c..1d01cc8 100644 --- a/src/suunto_vyper.c +++ b/src/suunto_vyper.c @@ -59,7 +59,7 @@ static dc_status_t suunto_vyper_device_dump (dc_device_t *abstract, dc_buffer_t static dc_status_t suunto_vyper_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t suunto_vyper_device_close (dc_device_t *abstract); -static const device_backend_t suunto_vyper_device_backend = { +static const dc_device_vtable_t suunto_vyper_device_vtable = { DC_FAMILY_SUUNTO_VYPER, suunto_common_device_set_fingerprint, /* set_fingerprint */ suunto_vyper_device_read, /* read */ @@ -92,7 +92,7 @@ device_is_suunto_vyper (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &suunto_vyper_device_backend; + return abstract->vtable == &suunto_vyper_device_vtable; } @@ -110,7 +110,7 @@ suunto_vyper_device_open (dc_device_t **out, dc_context_t *context, const char * } // Initialize the base class. - suunto_common_device_init (&device->base, context, &suunto_vyper_device_backend); + suunto_common_device_init (&device->base, context, &suunto_vyper_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/suunto_vyper2.c b/src/suunto_vyper2.c index ab68ab4..0c79d08 100644 --- a/src/suunto_vyper2.c +++ b/src/suunto_vyper2.c @@ -45,7 +45,7 @@ typedef struct suunto_vyper2_device_t { static dc_status_t suunto_vyper2_device_packet (dc_device_t *abstract, const unsigned char command[], unsigned int csize, unsigned char answer[], unsigned int asize, unsigned int size); static dc_status_t suunto_vyper2_device_close (dc_device_t *abstract); -static const suunto_common2_device_backend_t suunto_vyper2_device_backend = { +static const suunto_common2_device_vtable_t suunto_vyper2_device_vtable = { { DC_FAMILY_SUUNTO_VYPER2, suunto_common2_device_set_fingerprint, /* set_fingerprint */ @@ -80,7 +80,7 @@ device_is_suunto_vyper2 (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == (const device_backend_t *) &suunto_vyper2_device_backend; + return abstract->vtable == (const dc_device_vtable_t *) &suunto_vyper2_device_vtable; } @@ -98,7 +98,7 @@ suunto_vyper2_device_open (dc_device_t **out, dc_context_t *context, const char } // Initialize the base class. - suunto_common2_device_init (&device->base, context, &suunto_vyper2_device_backend); + suunto_common2_device_init (&device->base, context, &suunto_vyper2_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/suunto_vyper_parser.c b/src/suunto_vyper_parser.c index 4424920..ee59056 100644 --- a/src/suunto_vyper_parser.c +++ b/src/suunto_vyper_parser.c @@ -43,7 +43,7 @@ static dc_status_t suunto_vyper_parser_get_field (dc_parser_t *abstract, dc_fiel static dc_status_t suunto_vyper_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t suunto_vyper_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t suunto_vyper_parser_backend = { +static const dc_parser_vtable_t suunto_vyper_parser_vtable = { DC_FAMILY_SUUNTO_VYPER, suunto_vyper_parser_set_data, /* set_data */ suunto_vyper_parser_get_datetime, /* datetime */ @@ -59,7 +59,7 @@ parser_is_suunto_vyper (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &suunto_vyper_parser_backend; + return abstract->vtable == &suunto_vyper_parser_vtable; } @@ -77,7 +77,7 @@ suunto_vyper_parser_create (dc_parser_t **out, dc_context_t *context) } // Initialize the base class. - parser_init (&parser->base, context, &suunto_vyper_parser_backend); + parser_init (&parser->base, context, &suunto_vyper_parser_vtable); // Set the default values. parser->cached = 0; diff --git a/src/uwatec_aladin.c b/src/uwatec_aladin.c index 7ec1d37..fa422ff 100644 --- a/src/uwatec_aladin.c +++ b/src/uwatec_aladin.c @@ -58,7 +58,7 @@ static dc_status_t uwatec_aladin_device_dump (dc_device_t *abstract, dc_buffer_t static dc_status_t uwatec_aladin_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t uwatec_aladin_device_close (dc_device_t *abstract); -static const device_backend_t uwatec_aladin_device_backend = { +static const dc_device_vtable_t uwatec_aladin_device_vtable = { DC_FAMILY_UWATEC_ALADIN, uwatec_aladin_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -74,7 +74,7 @@ device_is_uwatec_aladin (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &uwatec_aladin_device_backend; + return abstract->vtable == &uwatec_aladin_device_vtable; } @@ -92,7 +92,7 @@ uwatec_aladin_device_open (dc_device_t **out, dc_context_t *context, const char } // Initialize the base class. - device_init (&device->base, context, &uwatec_aladin_device_backend); + device_init (&device->base, context, &uwatec_aladin_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/uwatec_memomouse.c b/src/uwatec_memomouse.c index 2bdf2f3..cc7e32d 100644 --- a/src/uwatec_memomouse.c +++ b/src/uwatec_memomouse.c @@ -54,7 +54,7 @@ static dc_status_t uwatec_memomouse_device_dump (dc_device_t *abstract, dc_buffe static dc_status_t uwatec_memomouse_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t uwatec_memomouse_device_close (dc_device_t *abstract); -static const device_backend_t uwatec_memomouse_device_backend = { +static const dc_device_vtable_t uwatec_memomouse_device_vtable = { DC_FAMILY_UWATEC_MEMOMOUSE, uwatec_memomouse_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -70,7 +70,7 @@ device_is_uwatec_memomouse (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &uwatec_memomouse_device_backend; + return abstract->vtable == &uwatec_memomouse_device_vtable; } @@ -88,7 +88,7 @@ uwatec_memomouse_device_open (dc_device_t **out, dc_context_t *context, const ch } // Initialize the base class. - device_init (&device->base, context, &uwatec_memomouse_device_backend); + device_init (&device->base, context, &uwatec_memomouse_device_vtable); // Set the default values. device->port = NULL; diff --git a/src/uwatec_memomouse_parser.c b/src/uwatec_memomouse_parser.c index a2b34a5..de49981 100644 --- a/src/uwatec_memomouse_parser.c +++ b/src/uwatec_memomouse_parser.c @@ -41,7 +41,7 @@ static dc_status_t uwatec_memomouse_parser_get_field (dc_parser_t *abstract, dc_ static dc_status_t uwatec_memomouse_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t uwatec_memomouse_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t uwatec_memomouse_parser_backend = { +static const dc_parser_vtable_t uwatec_memomouse_parser_vtable = { DC_FAMILY_UWATEC_MEMOMOUSE, uwatec_memomouse_parser_set_data, /* set_data */ uwatec_memomouse_parser_get_datetime, /* datetime */ @@ -57,7 +57,7 @@ parser_is_uwatec_memomouse (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &uwatec_memomouse_parser_backend; + return abstract->vtable == &uwatec_memomouse_parser_vtable; } @@ -75,7 +75,7 @@ uwatec_memomouse_parser_create (dc_parser_t **out, dc_context_t *context, unsign } // Initialize the base class. - parser_init (&parser->base, context, &uwatec_memomouse_parser_backend); + parser_init (&parser->base, context, &uwatec_memomouse_parser_vtable); // Set the default values. parser->devtime = devtime; diff --git a/src/uwatec_smart.c b/src/uwatec_smart.c index c3af3b3..913d9c8 100644 --- a/src/uwatec_smart.c +++ b/src/uwatec_smart.c @@ -48,7 +48,7 @@ static dc_status_t uwatec_smart_device_dump (dc_device_t *abstract, dc_buffer_t static dc_status_t uwatec_smart_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t uwatec_smart_device_close (dc_device_t *abstract); -static const device_backend_t uwatec_smart_device_backend = { +static const dc_device_vtable_t uwatec_smart_device_vtable = { DC_FAMILY_UWATEC_SMART, uwatec_smart_device_set_fingerprint, /* set_fingerprint */ NULL, /* read */ @@ -64,7 +64,7 @@ device_is_uwatec_smart (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &uwatec_smart_device_backend; + return abstract->vtable == &uwatec_smart_device_vtable; } @@ -163,7 +163,7 @@ uwatec_smart_device_open (dc_device_t **out, dc_context_t *context) } // Initialize the base class. - device_init (&device->base, context, &uwatec_smart_device_backend); + device_init (&device->base, context, &uwatec_smart_device_vtable); // Set the default values. device->socket = NULL; diff --git a/src/uwatec_smart_parser.c b/src/uwatec_smart_parser.c index 035f508..f11b86c 100644 --- a/src/uwatec_smart_parser.c +++ b/src/uwatec_smart_parser.c @@ -56,7 +56,7 @@ static dc_status_t uwatec_smart_parser_get_field (dc_parser_t *abstract, dc_fiel static dc_status_t uwatec_smart_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata); static dc_status_t uwatec_smart_parser_destroy (dc_parser_t *abstract); -static const parser_backend_t uwatec_smart_parser_backend = { +static const dc_parser_vtable_t uwatec_smart_parser_vtable = { DC_FAMILY_UWATEC_SMART, uwatec_smart_parser_set_data, /* set_data */ uwatec_smart_parser_get_datetime, /* datetime */ @@ -72,7 +72,7 @@ parser_is_uwatec_smart (dc_parser_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &uwatec_smart_parser_backend; + return abstract->vtable == &uwatec_smart_parser_vtable; } @@ -90,7 +90,7 @@ uwatec_smart_parser_create (dc_parser_t **out, dc_context_t *context, unsigned i } // Initialize the base class. - parser_init (&parser->base, context, &uwatec_smart_parser_backend); + parser_init (&parser->base, context, &uwatec_smart_parser_vtable); // Set the default values. parser->model = model; diff --git a/src/zeagle_n2ition3.c b/src/zeagle_n2ition3.c index 6161d65..f9c5bc0 100644 --- a/src/zeagle_n2ition3.c +++ b/src/zeagle_n2ition3.c @@ -59,7 +59,7 @@ static dc_status_t zeagle_n2ition3_device_dump (dc_device_t *abstract, dc_buffer static dc_status_t zeagle_n2ition3_device_foreach (dc_device_t *abstract, dc_dive_callback_t callback, void *userdata); static dc_status_t zeagle_n2ition3_device_close (dc_device_t *abstract); -static const device_backend_t zeagle_n2ition3_device_backend = { +static const dc_device_vtable_t zeagle_n2ition3_device_vtable = { DC_FAMILY_ZEAGLE_N2ITION3, zeagle_n2ition3_device_set_fingerprint, /* set_fingerprint */ zeagle_n2ition3_device_read, /* read */ @@ -75,7 +75,7 @@ device_is_zeagle_n2ition3 (dc_device_t *abstract) if (abstract == NULL) return 0; - return abstract->backend == &zeagle_n2ition3_device_backend; + return abstract->vtable == &zeagle_n2ition3_device_vtable; } @@ -152,7 +152,7 @@ zeagle_n2ition3_device_open (dc_device_t **out, dc_context_t *context, const cha } // Initialize the base class. - device_init (&device->base, context, &zeagle_n2ition3_device_backend); + device_init (&device->base, context, &zeagle_n2ition3_device_vtable); // Set the default values. device->port = NULL;