diff options
-rw-r--r-- | data/qmi-service-loc.json | 12 | ||||
-rw-r--r-- | docs/reference/libqmi-glib/libqmi-glib-common.sections | 4 | ||||
-rw-r--r-- | src/libqmi-glib/qmi-compat.c | 24 | ||||
-rw-r--r-- | src/libqmi-glib/qmi-compat.h | 46 |
4 files changed, 80 insertions, 6 deletions
diff --git a/data/qmi-service-loc.json b/data/qmi-service-loc.json index 3db3a89d..0e054778 100644 --- a/data/qmi-service-loc.json +++ b/data/qmi-service-loc.json @@ -244,16 +244,16 @@ "since" : "1.22", "format" : "guint32", "public-format" : "QmiLocTechnologyUsed" }, - { "name" : "Dilution of Precision", + { "name" : "DOP", "id" : "0x24", "type" : "TLV", - "since" : "1.22", - "format" : "struct", - "contents" : [ { "name" : "Position Dilution of Precision", + "since" : "1.32", + "format" : "sequence", + "contents" : [ { "name" : "PDOP", "format" : "gfloat" }, - { "name" : "Horizontal Dilution of Precision", + { "name" : "HDOP", "format" : "gfloat" }, - { "name" : "Vertical Dilution of Precision", + { "name" : "VDOP", "format" : "gfloat" } ] }, { "name" : "UTC Timestamp", "id" : "0x25", diff --git a/docs/reference/libqmi-glib/libqmi-glib-common.sections b/docs/reference/libqmi-glib/libqmi-glib-common.sections index b0cb0ea6..a3dd0ce6 100644 --- a/docs/reference/libqmi-glib/libqmi-glib-common.sections +++ b/docs/reference/libqmi-glib/libqmi-glib-common.sections @@ -1859,6 +1859,9 @@ qmi_message_dms_delete_stored_image_input_set_image QmiMessageDmsGetStoredImageInfoInputImage qmi_message_dms_get_stored_image_info_input_get_image qmi_message_dms_get_stored_image_info_input_set_image +<SUBSECTION LocPositionReport> +QmiIndicationLocPositionReportOutputDilutionOfPrecision +qmi_indication_loc_position_report_output_get_dilution_of_precision <SUBSECTION Private> QmiDeprecatedNasSimRejectState QmiDeprecatedWdsCdmaCauseCode @@ -1877,6 +1880,7 @@ QmiDeprecatedMessageWdsSetDefaultProfileNumOutput QmiDeprecatedConfigTypeAndId QmiDeprecatedMessageDmsDeleteStoredImageInputImage QmiDeprecatedMessageDmsGetStoredImageInfoInputImage +QmiDeprecatedIndicationLocPositionReportOutputDilutionOfPrecision QMI_TYPE_DMS_DELL_FIRMWARE_VERSION_TYPE QMI_TYPE_MESSAGE_DMS_DELL_GET_FIRMWARE_VERSION_INPUT QMI_TYPE_MESSAGE_DMS_DELL_GET_FIRMWARE_VERSION_OUTPUT diff --git a/src/libqmi-glib/qmi-compat.c b/src/libqmi-glib/qmi-compat.c index 45dd7977..b193008e 100644 --- a/src/libqmi-glib/qmi-compat.c +++ b/src/libqmi-glib/qmi-compat.c @@ -2300,4 +2300,28 @@ qmi_message_dms_get_stored_image_info_input_set_image ( #endif /* HAVE_QMI_MESSAGE_DMS_GET_STORED_IMAGE_INFO */ +#if defined HAVE_QMI_INDICATION_LOC_POSITION_REPORT + +gboolean +qmi_indication_loc_position_report_output_get_dilution_of_precision ( + QmiIndicationLocPositionReportOutput *self, + QmiDeprecatedIndicationLocPositionReportOutputDilutionOfPrecision *value_dilution_of_precision, + GError **error) +{ + gfloat pdop = 0.0; + gfloat hdop = 0.0; + gfloat vdop = 0.0; + + if (!qmi_indication_loc_position_report_output_get_dop (self, &pdop, &hdop, &vdop, error)) + return FALSE; + if (value_dilution_of_precision) { + value_dilution_of_precision->position_dilution_of_precision = pdop; + value_dilution_of_precision->horizontal_dilution_of_precision = hdop; + value_dilution_of_precision->vertical_dilution_of_precision = vdop; + } + return TRUE; +} + +#endif /* HAVE_QMI_INDICATION_LOC_POSITION_REPORT */ + #endif /* QMI_DISABLE_DEPRECATED */ diff --git a/src/libqmi-glib/qmi-compat.h b/src/libqmi-glib/qmi-compat.h index 423829e7..15a654a1 100644 --- a/src/libqmi-glib/qmi-compat.h +++ b/src/libqmi-glib/qmi-compat.h @@ -35,6 +35,7 @@ #include "qmi-wda.h" #include "qmi-wds.h" #include "qmi-pdc.h" +#include "qmi-loc.h" #include "qmi-enums-nas.h" #include "qmi-enums-wms.h" #include "qmi-enums-pdc.h" @@ -3714,6 +3715,51 @@ gboolean qmi_message_dms_get_stored_image_info_input_set_image ( #endif /* HAVE_QMI_MESSAGE_DMS_GET_STORED_IMAGE_INFO */ +#if defined HAVE_QMI_INDICATION_LOC_POSITION_REPORT + +/** + * QmiIndicationLocPositionReportOutputDilutionOfPrecision: + * @position_dilution_of_precision: a #gfloat. + * @horizontal_dilution_of_precision: a #gfloat. + * @vertical_dilution_of_precision: a #gfloat. + * + * A QmiIndicationLocPositionReportOutputDilutionOfPrecision struct. + * + * This type is deprecated and there is no replacement as the + * new methods don't require any intermediate type any more. + * + * Since: 1.22 + * Deprecated: 1.32 + */ +typedef struct _QmiDeprecatedIndicationLocPositionReportOutputDilutionOfPrecision { + gfloat position_dilution_of_precision; + gfloat horizontal_dilution_of_precision; + gfloat vertical_dilution_of_precision; +} QmiDeprecatedIndicationLocPositionReportOutputDilutionOfPrecision; +G_DEPRECATED +typedef QmiDeprecatedIndicationLocPositionReportOutputDilutionOfPrecision QmiIndicationLocPositionReportOutputDilutionOfPrecision; + +/** + * qmi_indication_loc_position_report_output_get_dilution_of_precision: + * @self: a #QmiIndicationLocPositionReportOutput. + * @value_dilution_of_precision: (out)(optional)(transfer none): a placeholder for the output constant #QmiIndicationLocPositionReportOutputDilutionOfPrecision, or %NULL if not required. + * @error: Return location for error or %NULL. + * + * Get the 'Dilution of Precision' field from @self. + * + * Returns: (skip): %TRUE if the field is found, %FALSE otherwise. + * + * Since: 1.22 + * Deprecated: 1.32: Use qmi_indication_loc_position_report_output_get_dop() instead. + */ +G_DEPRECATED_FOR (qmi_indication_loc_position_report_output_get_dop) +gboolean qmi_indication_loc_position_report_output_get_dilution_of_precision ( + QmiIndicationLocPositionReportOutput *self, + QmiDeprecatedIndicationLocPositionReportOutputDilutionOfPrecision *value_dilution_of_precision, + GError **error); + +#endif /* HAVE_QMI_INDICATION_LOC_POSITION_REPORT */ + #endif /* QMI_DISABLE_DEPRECATED */ #endif /* _LIBQMI_GLIB_QMI_COMPAT_H_ */ |