summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/qmi-service-loc.json12
-rw-r--r--docs/reference/libqmi-glib/libqmi-glib-common.sections4
-rw-r--r--src/libqmi-glib/qmi-compat.c24
-rw-r--r--src/libqmi-glib/qmi-compat.h46
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_ */