Add a public api to configure the depth calibration
Some dive computers store the depth as an absolute pressure value (in bar). To convert to a depth value (in meters), the atmospheric pressure and water density are required. For dive computers that do not have those values available, libdivecomputer uses a default value. With the new public api functions, applications can adjust those default values. Some dive computers already provided a backend specific calibration function. Those functions are now deprecated. They are kept around to maintain backwards compatibility for now, but they will be removed in the next version.
This commit is contained in:
parent
18f06ea585
commit
6ab140461a
@ -270,6 +270,12 @@ dc_parser_new2 (dc_parser_t **parser, dc_context_t *context, dc_descriptor_t *de
|
||||
dc_family_t
|
||||
dc_parser_get_type (dc_parser_t *parser);
|
||||
|
||||
dc_status_t
|
||||
dc_parser_set_atmospheric (dc_parser_t *parser, double atmospheric);
|
||||
|
||||
dc_status_t
|
||||
dc_parser_set_density (dc_parser_t *parser, double density);
|
||||
|
||||
dc_status_t
|
||||
dc_parser_set_data (dc_parser_t *parser, const unsigned char *data, unsigned int size);
|
||||
|
||||
|
||||
@ -44,6 +44,7 @@ struct atomics_cobalt_parser_t {
|
||||
};
|
||||
|
||||
static dc_status_t atomics_cobalt_parser_set_data (dc_parser_t *abstract, const unsigned char *data, unsigned int size);
|
||||
static dc_status_t atomics_cobalt_parser_set_density (dc_parser_t *abstract, double density);
|
||||
static dc_status_t atomics_cobalt_parser_get_datetime (dc_parser_t *abstract, dc_datetime_t *datetime);
|
||||
static dc_status_t atomics_cobalt_parser_get_field (dc_parser_t *abstract, dc_field_type_t type, unsigned int flags, void *value);
|
||||
static dc_status_t atomics_cobalt_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata);
|
||||
@ -52,6 +53,8 @@ static const dc_parser_vtable_t atomics_cobalt_parser_vtable = {
|
||||
sizeof(atomics_cobalt_parser_t),
|
||||
DC_FAMILY_ATOMICS_COBALT,
|
||||
atomics_cobalt_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
atomics_cobalt_parser_set_density, /* set_density */
|
||||
atomics_cobalt_parser_get_datetime, /* datetime */
|
||||
atomics_cobalt_parser_get_field, /* fields */
|
||||
atomics_cobalt_parser_samples_foreach, /* samples_foreach */
|
||||
@ -104,6 +107,17 @@ atomics_cobalt_parser_set_calibration (dc_parser_t *abstract, double atmospheric
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
atomics_cobalt_parser_set_density (dc_parser_t *abstract, double density)
|
||||
{
|
||||
atomics_cobalt_parser_t *parser = (atomics_cobalt_parser_t *) abstract;
|
||||
|
||||
parser->hydrostatic = density * GRAVITY;
|
||||
|
||||
return DC_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
atomics_cobalt_parser_get_datetime (dc_parser_t *abstract, dc_datetime_t *datetime)
|
||||
{
|
||||
|
||||
@ -45,6 +45,8 @@ static const dc_parser_vtable_t citizen_aqualand_parser_vtable = {
|
||||
sizeof(citizen_aqualand_parser_t),
|
||||
DC_FAMILY_CITIZEN_AQUALAND,
|
||||
citizen_aqualand_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
citizen_aqualand_parser_get_datetime, /* datetime */
|
||||
citizen_aqualand_parser_get_field, /* fields */
|
||||
citizen_aqualand_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -108,6 +108,8 @@ static const dc_parser_vtable_t cochran_commander_parser_vtable = {
|
||||
sizeof(cochran_commander_parser_t),
|
||||
DC_FAMILY_COCHRAN_COMMANDER,
|
||||
cochran_commander_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
cochran_commander_parser_get_datetime, /* datetime */
|
||||
cochran_commander_parser_get_field, /* fields */
|
||||
cochran_commander_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -47,6 +47,8 @@ static const dc_parser_vtable_t cressi_edy_parser_vtable = {
|
||||
sizeof(cressi_edy_parser_t),
|
||||
DC_FAMILY_CRESSI_EDY,
|
||||
cressi_edy_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
cressi_edy_parser_get_datetime, /* datetime */
|
||||
cressi_edy_parser_get_field, /* fields */
|
||||
cressi_edy_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -64,6 +64,8 @@ static const dc_parser_vtable_t cressi_goa_parser_vtable = {
|
||||
sizeof(cressi_goa_parser_t),
|
||||
DC_FAMILY_CRESSI_GOA,
|
||||
cressi_goa_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
cressi_goa_parser_get_datetime, /* datetime */
|
||||
cressi_goa_parser_get_field, /* fields */
|
||||
cressi_goa_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -48,6 +48,8 @@ static const dc_parser_vtable_t cressi_leonardo_parser_vtable = {
|
||||
sizeof(cressi_leonardo_parser_t),
|
||||
DC_FAMILY_CRESSI_LEONARDO,
|
||||
cressi_leonardo_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
cressi_leonardo_parser_get_datetime, /* datetime */
|
||||
cressi_leonardo_parser_get_field, /* fields */
|
||||
cressi_leonardo_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -54,6 +54,8 @@ static const dc_parser_vtable_t deepsix_parser_vtable = {
|
||||
sizeof(deepsix_excursion_parser_t),
|
||||
DC_FAMILY_DEEPSIX_EXCURSION,
|
||||
deepsix_excursion_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
deepsix_excursion_parser_get_datetime, /* datetime */
|
||||
deepsix_excursion_parser_get_field, /* fields */
|
||||
deepsix_excursion_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -58,6 +58,8 @@ static const dc_parser_vtable_t diverite_nitekq_parser_vtable = {
|
||||
sizeof(diverite_nitekq_parser_t),
|
||||
DC_FAMILY_DIVERITE_NITEKQ,
|
||||
diverite_nitekq_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
diverite_nitekq_parser_get_datetime, /* datetime */
|
||||
diverite_nitekq_parser_get_field, /* fields */
|
||||
diverite_nitekq_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -91,6 +91,8 @@ static const dc_parser_vtable_t divesystem_idive_parser_vtable = {
|
||||
sizeof(divesystem_idive_parser_t),
|
||||
DC_FAMILY_DIVESYSTEM_IDIVE,
|
||||
divesystem_idive_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
divesystem_idive_parser_get_datetime, /* datetime */
|
||||
divesystem_idive_parser_get_field, /* fields */
|
||||
divesystem_idive_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -137,6 +137,8 @@ static const dc_parser_vtable_t hw_ostc_parser_vtable = {
|
||||
sizeof(hw_ostc_parser_t),
|
||||
DC_FAMILY_HW_OSTC,
|
||||
hw_ostc_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
hw_ostc_parser_get_datetime, /* datetime */
|
||||
hw_ostc_parser_get_field, /* fields */
|
||||
hw_ostc_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -87,6 +87,8 @@ dc_custom_open
|
||||
|
||||
dc_parser_new
|
||||
dc_parser_new2
|
||||
dc_parser_set_atmospheric
|
||||
dc_parser_set_density
|
||||
dc_parser_get_type
|
||||
dc_parser_set_data
|
||||
dc_parser_get_datetime
|
||||
|
||||
@ -126,6 +126,8 @@ static const dc_parser_vtable_t liquivision_lynx_parser_vtable = {
|
||||
sizeof(liquivision_lynx_parser_t),
|
||||
DC_FAMILY_LIQUIVISION_LYNX,
|
||||
liquivision_lynx_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
liquivision_lynx_parser_get_datetime, /* datetime */
|
||||
liquivision_lynx_parser_get_field, /* fields */
|
||||
liquivision_lynx_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -56,6 +56,8 @@ static const dc_parser_vtable_t mares_darwin_parser_vtable = {
|
||||
sizeof(mares_darwin_parser_t),
|
||||
DC_FAMILY_MARES_DARWIN,
|
||||
mares_darwin_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
mares_darwin_parser_get_datetime, /* datetime */
|
||||
mares_darwin_parser_get_field, /* fields */
|
||||
mares_darwin_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -273,6 +273,8 @@ static const dc_parser_vtable_t mares_iconhd_parser_vtable = {
|
||||
sizeof(mares_iconhd_parser_t),
|
||||
DC_FAMILY_MARES_ICONHD,
|
||||
mares_iconhd_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
mares_iconhd_parser_get_datetime, /* datetime */
|
||||
mares_iconhd_parser_get_field, /* fields */
|
||||
mares_iconhd_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -68,6 +68,8 @@ static const dc_parser_vtable_t mares_nemo_parser_vtable = {
|
||||
sizeof(mares_nemo_parser_t),
|
||||
DC_FAMILY_MARES_NEMO,
|
||||
mares_nemo_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
mares_nemo_parser_get_datetime, /* datetime */
|
||||
mares_nemo_parser_get_field, /* fields */
|
||||
mares_nemo_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -67,6 +67,8 @@ static const dc_parser_vtable_t mclean_extreme_parser_vtable = {
|
||||
sizeof(mclean_extreme_parser_t),
|
||||
DC_FAMILY_MCLEAN_EXTREME,
|
||||
mclean_extreme_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
mclean_extreme_parser_get_datetime, /* datetime */
|
||||
mclean_extreme_parser_get_field, /* fields */
|
||||
mclean_extreme_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -140,6 +140,8 @@ static const dc_parser_vtable_t oceanic_atom2_parser_vtable = {
|
||||
sizeof(oceanic_atom2_parser_t),
|
||||
DC_FAMILY_OCEANIC_ATOM2,
|
||||
oceanic_atom2_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
oceanic_atom2_parser_get_datetime, /* datetime */
|
||||
oceanic_atom2_parser_get_field, /* fields */
|
||||
oceanic_atom2_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -57,6 +57,8 @@ static const dc_parser_vtable_t oceanic_veo250_parser_vtable = {
|
||||
sizeof(oceanic_veo250_parser_t),
|
||||
DC_FAMILY_OCEANIC_VEO250,
|
||||
oceanic_veo250_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
oceanic_veo250_parser_get_datetime, /* datetime */
|
||||
oceanic_veo250_parser_get_field, /* fields */
|
||||
oceanic_veo250_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -53,6 +53,8 @@ static const dc_parser_vtable_t oceanic_vtpro_parser_vtable = {
|
||||
sizeof(oceanic_vtpro_parser_t),
|
||||
DC_FAMILY_OCEANIC_VTPRO,
|
||||
oceanic_vtpro_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
oceanic_vtpro_parser_get_datetime, /* datetime */
|
||||
oceanic_vtpro_parser_get_field, /* fields */
|
||||
oceanic_vtpro_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -52,6 +52,10 @@ struct dc_parser_vtable_t {
|
||||
|
||||
dc_status_t (*set_data) (dc_parser_t *parser, const unsigned char *data, unsigned int size);
|
||||
|
||||
dc_status_t (*set_atmospheric) (dc_parser_t *parser, double atmospheric);
|
||||
|
||||
dc_status_t (*set_density) (dc_parser_t *parser, double density);
|
||||
|
||||
dc_status_t (*datetime) (dc_parser_t *parser, dc_datetime_t *datetime);
|
||||
|
||||
dc_status_t (*field) (dc_parser_t *parser, dc_field_type_t type, unsigned int flags, void *value);
|
||||
|
||||
26
src/parser.c
26
src/parser.c
@ -270,6 +270,32 @@ dc_parser_get_type (dc_parser_t *parser)
|
||||
}
|
||||
|
||||
|
||||
dc_status_t
|
||||
dc_parser_set_atmospheric (dc_parser_t *parser, double atmospheric)
|
||||
{
|
||||
if (parser == NULL)
|
||||
return DC_STATUS_UNSUPPORTED;
|
||||
|
||||
if (parser->vtable->set_atmospheric == NULL)
|
||||
return DC_STATUS_UNSUPPORTED;
|
||||
|
||||
return parser->vtable->set_atmospheric (parser, atmospheric);
|
||||
}
|
||||
|
||||
|
||||
dc_status_t
|
||||
dc_parser_set_density (dc_parser_t *parser, double density)
|
||||
{
|
||||
if (parser == NULL)
|
||||
return DC_STATUS_UNSUPPORTED;
|
||||
|
||||
if (parser->vtable->set_density == NULL)
|
||||
return DC_STATUS_UNSUPPORTED;
|
||||
|
||||
return parser->vtable->set_density (parser, density);
|
||||
}
|
||||
|
||||
|
||||
dc_status_t
|
||||
dc_parser_set_data (dc_parser_t *parser, const unsigned char *data, unsigned int size)
|
||||
{
|
||||
|
||||
@ -49,6 +49,8 @@ struct reefnet_sensus_parser_t {
|
||||
};
|
||||
|
||||
static dc_status_t reefnet_sensus_parser_set_data (dc_parser_t *abstract, const unsigned char *data, unsigned int size);
|
||||
static dc_status_t reefnet_sensus_parser_set_atmospheric (dc_parser_t *abstract, double atmospheric);
|
||||
static dc_status_t reefnet_sensus_parser_set_density (dc_parser_t *abstract, double density);
|
||||
static dc_status_t reefnet_sensus_parser_get_datetime (dc_parser_t *abstract, dc_datetime_t *datetime);
|
||||
static dc_status_t reefnet_sensus_parser_get_field (dc_parser_t *abstract, dc_field_type_t type, unsigned int flags, void *value);
|
||||
static dc_status_t reefnet_sensus_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata);
|
||||
@ -57,6 +59,8 @@ static const dc_parser_vtable_t reefnet_sensus_parser_vtable = {
|
||||
sizeof(reefnet_sensus_parser_t),
|
||||
DC_FAMILY_REEFNET_SENSUS,
|
||||
reefnet_sensus_parser_set_data, /* set_data */
|
||||
reefnet_sensus_parser_set_atmospheric, /* set_atmospheric */
|
||||
reefnet_sensus_parser_set_density, /* set_density */
|
||||
reefnet_sensus_parser_get_datetime, /* datetime */
|
||||
reefnet_sensus_parser_get_field, /* fields */
|
||||
reefnet_sensus_parser_samples_foreach, /* samples_foreach */
|
||||
@ -123,6 +127,28 @@ reefnet_sensus_parser_set_calibration (dc_parser_t *abstract, double atmospheric
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
reefnet_sensus_parser_set_atmospheric (dc_parser_t *abstract, double atmospheric)
|
||||
{
|
||||
reefnet_sensus_parser_t *parser = (reefnet_sensus_parser_t *) abstract;
|
||||
|
||||
parser->atmospheric = atmospheric;
|
||||
|
||||
return DC_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
reefnet_sensus_parser_set_density (dc_parser_t *abstract, double density)
|
||||
{
|
||||
reefnet_sensus_parser_t *parser = (reefnet_sensus_parser_t *) abstract;
|
||||
|
||||
parser->hydrostatic = density * GRAVITY;
|
||||
|
||||
return DC_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
reefnet_sensus_parser_get_datetime (dc_parser_t *abstract, dc_datetime_t *datetime)
|
||||
{
|
||||
|
||||
@ -48,6 +48,8 @@ struct reefnet_sensuspro_parser_t {
|
||||
};
|
||||
|
||||
static dc_status_t reefnet_sensuspro_parser_set_data (dc_parser_t *abstract, const unsigned char *data, unsigned int size);
|
||||
static dc_status_t reefnet_sensuspro_parser_set_atmospheric (dc_parser_t *abstract, double atmospheric);
|
||||
static dc_status_t reefnet_sensuspro_parser_set_density (dc_parser_t *abstract, double density);
|
||||
static dc_status_t reefnet_sensuspro_parser_get_datetime (dc_parser_t *abstract, dc_datetime_t *datetime);
|
||||
static dc_status_t reefnet_sensuspro_parser_get_field (dc_parser_t *abstract, dc_field_type_t type, unsigned int flags, void *value);
|
||||
static dc_status_t reefnet_sensuspro_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata);
|
||||
@ -56,6 +58,8 @@ static const dc_parser_vtable_t reefnet_sensuspro_parser_vtable = {
|
||||
sizeof(reefnet_sensuspro_parser_t),
|
||||
DC_FAMILY_REEFNET_SENSUSPRO,
|
||||
reefnet_sensuspro_parser_set_data, /* set_data */
|
||||
reefnet_sensuspro_parser_set_atmospheric, /* set_atmospheric */
|
||||
reefnet_sensuspro_parser_set_density, /* set_density */
|
||||
reefnet_sensuspro_parser_get_datetime, /* datetime */
|
||||
reefnet_sensuspro_parser_get_field, /* fields */
|
||||
reefnet_sensuspro_parser_samples_foreach, /* samples_foreach */
|
||||
@ -122,6 +126,28 @@ reefnet_sensuspro_parser_set_calibration (dc_parser_t *abstract, double atmosphe
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
reefnet_sensuspro_parser_set_atmospheric (dc_parser_t *abstract, double atmospheric)
|
||||
{
|
||||
reefnet_sensuspro_parser_t *parser = (reefnet_sensuspro_parser_t *) abstract;
|
||||
|
||||
parser->atmospheric = atmospheric;
|
||||
|
||||
return DC_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
reefnet_sensuspro_parser_set_density (dc_parser_t *abstract, double density)
|
||||
{
|
||||
reefnet_sensuspro_parser_t *parser = (reefnet_sensuspro_parser_t *) abstract;
|
||||
|
||||
parser->hydrostatic = density * GRAVITY;
|
||||
|
||||
return DC_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
reefnet_sensuspro_parser_get_datetime (dc_parser_t *abstract, dc_datetime_t *datetime)
|
||||
{
|
||||
|
||||
@ -48,6 +48,8 @@ struct reefnet_sensusultra_parser_t {
|
||||
};
|
||||
|
||||
static dc_status_t reefnet_sensusultra_parser_set_data (dc_parser_t *abstract, const unsigned char *data, unsigned int size);
|
||||
static dc_status_t reefnet_sensusultra_parser_set_atmospheric (dc_parser_t *abstract, double atmospheric);
|
||||
static dc_status_t reefnet_sensusultra_parser_set_density (dc_parser_t *abstract, double density);
|
||||
static dc_status_t reefnet_sensusultra_parser_get_datetime (dc_parser_t *abstract, dc_datetime_t *datetime);
|
||||
static dc_status_t reefnet_sensusultra_parser_get_field (dc_parser_t *abstract, dc_field_type_t type, unsigned int flags, void *value);
|
||||
static dc_status_t reefnet_sensusultra_parser_samples_foreach (dc_parser_t *abstract, dc_sample_callback_t callback, void *userdata);
|
||||
@ -56,6 +58,8 @@ static const dc_parser_vtable_t reefnet_sensusultra_parser_vtable = {
|
||||
sizeof(reefnet_sensusultra_parser_t),
|
||||
DC_FAMILY_REEFNET_SENSUSULTRA,
|
||||
reefnet_sensusultra_parser_set_data, /* set_data */
|
||||
reefnet_sensusultra_parser_set_atmospheric, /* set_atmospheric */
|
||||
reefnet_sensusultra_parser_set_density, /* set_density */
|
||||
reefnet_sensusultra_parser_get_datetime, /* datetime */
|
||||
reefnet_sensusultra_parser_get_field, /* fields */
|
||||
reefnet_sensusultra_parser_samples_foreach, /* samples_foreach */
|
||||
@ -122,6 +126,28 @@ reefnet_sensusultra_parser_set_calibration (dc_parser_t *abstract, double atmosp
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
reefnet_sensusultra_parser_set_atmospheric (dc_parser_t *abstract, double atmospheric)
|
||||
{
|
||||
reefnet_sensusultra_parser_t *parser = (reefnet_sensusultra_parser_t *) abstract;
|
||||
|
||||
parser->atmospheric = atmospheric;
|
||||
|
||||
return DC_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
reefnet_sensusultra_parser_set_density (dc_parser_t *abstract, double density)
|
||||
{
|
||||
reefnet_sensusultra_parser_t *parser = (reefnet_sensusultra_parser_t *) abstract;
|
||||
|
||||
parser->hydrostatic = density * GRAVITY;
|
||||
|
||||
return DC_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
static dc_status_t
|
||||
reefnet_sensusultra_parser_get_datetime (dc_parser_t *abstract, dc_datetime_t *datetime)
|
||||
{
|
||||
|
||||
@ -57,6 +57,8 @@ static const dc_parser_vtable_t seac_screen_parser_vtable = {
|
||||
sizeof(seac_screen_parser_t),
|
||||
DC_FAMILY_SEAC_SCREEN,
|
||||
seac_screen_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
seac_screen_parser_get_datetime, /* datetime */
|
||||
seac_screen_parser_get_field, /* fields */
|
||||
seac_screen_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -152,6 +152,8 @@ static const dc_parser_vtable_t shearwater_predator_parser_vtable = {
|
||||
sizeof(shearwater_predator_parser_t),
|
||||
DC_FAMILY_SHEARWATER_PREDATOR,
|
||||
shearwater_predator_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
shearwater_predator_parser_get_datetime, /* datetime */
|
||||
shearwater_predator_parser_get_field, /* fields */
|
||||
shearwater_predator_parser_samples_foreach, /* samples_foreach */
|
||||
@ -162,6 +164,8 @@ static const dc_parser_vtable_t shearwater_petrel_parser_vtable = {
|
||||
sizeof(shearwater_predator_parser_t),
|
||||
DC_FAMILY_SHEARWATER_PETREL,
|
||||
shearwater_predator_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
shearwater_predator_parser_get_datetime, /* datetime */
|
||||
shearwater_predator_parser_get_field, /* fields */
|
||||
shearwater_predator_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -46,6 +46,8 @@ static const dc_parser_vtable_t sporasub_sp2_parser_vtable = {
|
||||
sizeof(sporasub_sp2_parser_t),
|
||||
DC_FAMILY_SPORASUB_SP2,
|
||||
sporasub_sp2_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
sporasub_sp2_parser_get_datetime, /* datetime */
|
||||
sporasub_sp2_parser_get_field, /* fields */
|
||||
sporasub_sp2_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -101,6 +101,8 @@ static const dc_parser_vtable_t suunto_d9_parser_vtable = {
|
||||
sizeof(suunto_d9_parser_t),
|
||||
DC_FAMILY_SUUNTO_D9,
|
||||
suunto_d9_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
suunto_d9_parser_get_datetime, /* datetime */
|
||||
suunto_d9_parser_get_field, /* fields */
|
||||
suunto_d9_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -52,6 +52,8 @@ static const dc_parser_vtable_t suunto_eon_parser_vtable = {
|
||||
sizeof(suunto_eon_parser_t),
|
||||
DC_FAMILY_SUUNTO_EON,
|
||||
suunto_eon_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
suunto_eon_parser_get_datetime, /* datetime */
|
||||
suunto_eon_parser_get_field, /* fields */
|
||||
suunto_eon_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -1525,6 +1525,8 @@ static const dc_parser_vtable_t suunto_eonsteel_parser_vtable = {
|
||||
sizeof(suunto_eonsteel_parser_t),
|
||||
DC_FAMILY_SUUNTO_EONSTEEL,
|
||||
suunto_eonsteel_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
suunto_eonsteel_parser_get_datetime, /* datetime */
|
||||
suunto_eonsteel_parser_get_field, /* fields */
|
||||
suunto_eonsteel_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -47,6 +47,8 @@ static const dc_parser_vtable_t suunto_solution_parser_vtable = {
|
||||
sizeof(suunto_solution_parser_t),
|
||||
DC_FAMILY_SUUNTO_SOLUTION,
|
||||
suunto_solution_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
NULL, /* datetime */
|
||||
suunto_solution_parser_get_field, /* fields */
|
||||
suunto_solution_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -53,6 +53,8 @@ static const dc_parser_vtable_t suunto_vyper_parser_vtable = {
|
||||
sizeof(suunto_vyper_parser_t),
|
||||
DC_FAMILY_SUUNTO_VYPER,
|
||||
suunto_vyper_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
suunto_vyper_parser_get_datetime, /* datetime */
|
||||
suunto_vyper_parser_get_field, /* fields */
|
||||
suunto_vyper_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -45,6 +45,8 @@ static const dc_parser_vtable_t tecdiving_divecomputereu_parser_vtable = {
|
||||
sizeof(tecdiving_divecomputereu_parser_t),
|
||||
DC_FAMILY_TECDIVING_DIVECOMPUTEREU,
|
||||
tecdiving_divecomputereu_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
tecdiving_divecomputereu_parser_get_datetime, /* datetime */
|
||||
tecdiving_divecomputereu_parser_get_field, /* fields */
|
||||
tecdiving_divecomputereu_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -47,6 +47,8 @@ static const dc_parser_vtable_t uwatec_memomouse_parser_vtable = {
|
||||
sizeof(uwatec_memomouse_parser_t),
|
||||
DC_FAMILY_UWATEC_MEMOMOUSE,
|
||||
uwatec_memomouse_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
uwatec_memomouse_parser_get_datetime, /* datetime */
|
||||
uwatec_memomouse_parser_get_field, /* fields */
|
||||
uwatec_memomouse_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
@ -167,6 +167,8 @@ static const dc_parser_vtable_t uwatec_smart_parser_vtable = {
|
||||
sizeof(uwatec_smart_parser_t),
|
||||
DC_FAMILY_UWATEC_SMART,
|
||||
uwatec_smart_parser_set_data, /* set_data */
|
||||
NULL, /* set_atmospheric */
|
||||
NULL, /* set_density */
|
||||
uwatec_smart_parser_get_datetime, /* datetime */
|
||||
uwatec_smart_parser_get_field, /* fields */
|
||||
uwatec_smart_parser_samples_foreach, /* samples_foreach */
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user