| /* Copyright (c) 2011, Code Aurora Forum. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions are |
| * met: |
| * * Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * * Redistributions in binary form must reproduce the above |
| * copyright notice, this list of conditions and the following |
| * disclaimer in the documentation and/or other materials provided |
| * with the distribution. |
| * * Neither the name of Code Aurora Forum, Inc. nor the names of its |
| * contributors may be used to endorse or promote products derived |
| * from this software without specific prior written permission. |
| * |
| * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED |
| * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |
| * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT |
| * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
| * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, |
| * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE |
| * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN |
| * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| #ifndef LOC_SERVICE_H |
| #define LOC_SERVICE_H |
| /** |
| @file location_service_v02.h |
| |
| @brief This is the public header file which defines the loc service Data structures. |
| |
| This header file defines the types and structures that were defined in |
| loc. It contains the constant values defined, enums, structures, |
| messages, and service message IDs (in that order) Structures that were |
| defined in the IDL as messages contain mandatory elements, optional |
| elements, a combination of mandatory and optional elements (mandatory |
| always come before optionals in the structure), or nothing (null message) |
| |
| An optional element in a message is preceded by a uint8_t value that must be |
| set to true if the element is going to be included. When decoding a received |
| message, the uint8_t values will be set to true or false by the decode |
| routine, and should be checked before accessing the values that they |
| correspond to. |
| |
| Variable sized arrays are defined as static sized arrays with an unsigned |
| integer (32 bit) preceding it that must be set to the number of elements |
| in the array that are valid. For Example: |
| |
| uint32_t test_opaque_len; |
| uint8_t test_opaque[16]; |
| |
| If only 4 elements are added to test_opaque[] then test_opaque_len must be |
| set to 4 before sending the message. When decoding, the _len value is set |
| by the decode routine and should be checked so that the correct number of |
| elements in the array will be accessed. |
| |
| */ |
| |
| /** @defgroup loc_qmi_consts Constant values defined in the IDL */ |
| /** @defgroup loc_qmi_msg_ids Constant values for QMI message IDs */ |
| /** @defgroup loc_qmi_enums Enumerated types used in QMI messages */ |
| /** @defgroup loc_qmi_messages Structures sent as QMI messages */ |
| /** @defgroup loc_qmi_aggregates Aggregate types used in QMI messages */ |
| /** @defgroup loc_qmi_accessor Accessor for QMI service object */ |
| /** @defgroup loc_qmi_version Constant values for versioning information */ |
| |
| #include <stdint.h> |
| #include "qmi_idl_lib.h" |
| #include "common_v01.h" |
| |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| /** @addtogroup loc_qmi_version |
| @{ |
| */ |
| /** Major Version Number of the IDL used to generate this file */ |
| #define LOC_V02_IDL_MAJOR_VERS 0x02 |
| /** Revision Number of the IDL used to generate this file */ |
| #define LOC_V02_IDL_MINOR_VERS 0x04 |
| /** Major Version Number of the qmi_idl_compiler used to generate this file */ |
| #define LOC_V02_IDL_TOOL_VERS 0x02 |
| /** Maximum Defined Message ID */ |
| #define LOC_V02_MAX_MESSAGE_ID 0x005F; |
| /** |
| @} |
| */ |
| |
| |
| /** @addtogroup loc_qmi_consts |
| @{ |
| */ |
| |
| /** Maximum number of satellites in the satellite report. */ |
| #define QMI_LOC_SV_INFO_LIST_MAX_SIZE_V02 80 |
| |
| /** Maximum NMEA string length. */ |
| #define QMI_LOC_NMEA_STRING_MAX_LENGTH_V02 200 |
| |
| /** Maximum length of the requestor ID string. */ |
| #define QMI_LOC_NI_MAX_REQUESTOR_ID_LENGTH_V02 200 |
| |
| /** Session ID byte length. */ |
| #define QMI_LOC_NI_SUPL_SLP_SESSION_ID_BYTE_LENGTH_V02 4 |
| |
| /** Maximum client name length allowed. */ |
| #define QMI_LOC_NI_MAX_CLIENT_NAME_LENGTH_V02 64 |
| |
| /** Maximum URL length accepted by the location engine. */ |
| #define QMI_LOC_MAX_SERVER_ADDR_LENGTH_V02 255 |
| |
| /** IPV6 address length in bytes. */ |
| #define QMI_LOC_IPV6_ADDR_LENGTH_V02 8 |
| |
| /** SUPL hash length. */ |
| #define QMI_LOC_NI_SUPL_HASH_LENGTH_V02 8 |
| |
| /** Maximum client address length allowed. */ |
| #define QMI_LOC_NI_MAX_EXT_CLIENT_ADDRESS_V02 20 |
| |
| /** Maximum codeword length allowed. */ |
| #define QMI_LOC_NI_CODEWORD_MAX_LENGTH_V02 20 |
| |
| /** Maximum number of NTP Servers sent out with this event. */ |
| #define QMI_LOC_MAX_NTP_SERVERS_V02 3 |
| |
| /** Maximum number of predicted orbits servers supported in the location |
| engine. */ |
| #define QMI_LOC_MAX_PREDICTED_ORBITS_SERVERS_V02 3 |
| |
| /** Maximum part length that can be injected. The client should |
| also look at the maxPartSize field in the predicted orbits injection |
| request indication and pick the minimum of the two. */ |
| #define QMI_LOC_MAX_PREDICTED_ORBITS_PART_LEN_V02 1024 |
| |
| /** Maximum length of the delete SV information list */ |
| #define QMI_LOC_DELETE_MAX_SV_INFO_LENGTH_V02 128 |
| |
| /** MAC address length in bytes. */ |
| #define QMI_LOC_WIFI_MAC_ADDR_LENGTH_V02 6 |
| |
| /** Maximum number of APs that the sender can report. */ |
| #define QMI_LOC_WIFI_MAX_REPORTED_APS_PER_MSG_V02 50 |
| |
| /** Maximum number of samples that can be injected in a TLV. */ |
| #define QMI_LOC_SENSOR_DATA_MAX_SAMPLES_V02 50 |
| |
| /** Maximum APN string length allowed. */ |
| #define QMI_LOC_MAX_APN_NAME_LENGTH_V02 100 |
| |
| /** Maximum APN profiles supported. */ |
| #define QMI_LOC_MAX_APN_PROFILES_V02 6 |
| |
| /** Maximum length of SUPL CERT. */ |
| #define QMI_LOC_MAX_SUPL_CERT_LENGTH_V02 2000 |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Response Message; Generic response definition. This message is used to tell |
| clients whether their message was accepted for further |
| processing or rejected. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Result Code */ |
| qmi_response_type_v01 resp; |
| }qmiLocGenRespMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Informs the service of the minor revision of the interface |
| definition that the control point implements. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Revision */ |
| uint32_t revision; |
| /**< Revision that the control point is using. \n |
| - Type: Unsigned integer */ |
| }qmiLocInformClientRevisionReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| typedef uint64_t qmiLocEventRegMaskT_v02; |
| #define QMI_LOC_EVENT_MASK_POSITION_REPORT_V02 ((qmiLocEventRegMaskT_v02)0x00000001) /**< The control point must enable this mask to receive position report |
| event indications. */ |
| #define QMI_LOC_EVENT_MASK_GNSS_SV_INFO_V02 ((qmiLocEventRegMaskT_v02)0x00000002) /**< The control point must enable this mask to receive satellite report |
| event indications. These reports are sent at a 1 Hz rate. */ |
| #define QMI_LOC_EVENT_MASK_NMEA_V02 ((qmiLocEventRegMaskT_v02)0x00000004) /**< The control point must enable this mask to receive NMEA reports for |
| position and satellites in view. The report is at a 1 Hz rate. */ |
| #define QMI_LOC_EVENT_MASK_NI_NOTIFY_VERIFY_REQ_V02 ((qmiLocEventRegMaskT_v02)0x00000008) /**< The control point must enable this mask to receive NI notify verify request |
| event indications. */ |
| #define QMI_LOC_EVENT_MASK_INJECT_TIME_REQ_V02 ((qmiLocEventRegMaskT_v02)0x00000010) /**< The control point must enable this mask to receive time injection request |
| event indications. */ |
| #define QMI_LOC_EVENT_MASK_INJECT_PREDICTED_ORBITS_REQ_V02 ((qmiLocEventRegMaskT_v02)0x00000020) /**< The control point must enable this mask to receive predicted orbits request |
| event indications. */ |
| #define QMI_LOC_EVENT_MASK_INJECT_POSITION_REQ_V02 ((qmiLocEventRegMaskT_v02)0x00000040) /**< The control point must enable this mask to receive position injection request |
| event indications. */ |
| #define QMI_LOC_EVENT_MASK_ENGINE_STATE_V02 ((qmiLocEventRegMaskT_v02)0x00000080) /**< The control point must enable this mask to receive engine state report |
| event indications. */ |
| #define QMI_LOC_EVENT_MASK_FIX_SESSION_STATE_V02 ((qmiLocEventRegMaskT_v02)0x00000100) /**< The control point must enable this mask to receive fix session status report |
| event indications. */ |
| #define QMI_LOC_EVENT_MASK_WIFI_REQ_V02 ((qmiLocEventRegMaskT_v02)0x00000200) /**< The control point must enable this mask to receive WiFi position request |
| event indications. */ |
| #define QMI_LOC_EVENT_MASK_SENSOR_STREAMING_READY_STATUS_V02 ((qmiLocEventRegMaskT_v02)0x00000400) /**< The control point must enable this mask to receive notifications from the |
| GPS engine indicating its readiness to accept data from the |
| sensors (accelerometer, gyrometer, etc.). */ |
| #define QMI_LOC_EVENT_MASK_TIME_SYNC_REQ_V02 ((qmiLocEventRegMaskT_v02)0x00000800) /**< The control point must enable this mask to receive time-sync requests from |
| the GPS engine. Time sync enables the GPS engine to synchronize |
| its clock with the sensor processor's clock. */ |
| #define QMI_LOC_EVENT_MASK_SET_SPI_STREAMING_REPORT_V02 ((qmiLocEventRegMaskT_v02)0x00001000) /**< The control point must enable this mask to receive Stationary Position |
| Indicator (SPI) streaming report indications. */ |
| #define QMI_LOC_EVENT_MASK_LOCATION_SERVER_CONNECTION_REQ_V02 ((qmiLocEventRegMaskT_v02)0x00002000) /**< The control point must enable this mask to receive location server requests. |
| These requests are generated when the service wishes to establish a |
| connection with a location server. */ |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to register for events from the |
| location subsystem. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Event Registration Mask */ |
| qmiLocEventRegMaskT_v02 eventRegMask; |
| /**< Specifies the events that the control point is interested in receiving. |
| Refer to the definition of the following bitmasks: \n |
| |
| - 0x00000001 -- POSITION_REPORT \n |
| - 0x00000002 -- GNSS_SV_INFO \n |
| - 0x00000004 -- NMEA \n |
| - 0x00000008 -- NI_NOTIFY_VERIFY_REQ \n |
| - 0x00000010 -- INJECT_TIME_REQ \n |
| - 0x00000020 -- INJECT_PREDICTED_ORBITS_REQ \n |
| - 0x00000040 -- INJECT_POSITION_REQ \n |
| - 0x00000080 -- ENGINE_STATE \n |
| - 0x00000100 -- FIX_SESSION_STATE \n |
| - 0x00000200 -- WIFI_REQ \n |
| - 0x00000400 -- SENSOR_STREAMING_READY_STATUS \n |
| - 0x00000800 -- TIME_SYNC_REQ \n |
| - 0x00001000 -- SET_SPI_STREAMING_REPORT \n |
| - 0x00002000 -- LOCATION_SERVER_CONNECTION_REQ |
| |
| Multiple events can be registered by ORing the individual masks and |
| sending them in this TLV. All unused bits in this mask must be set to 0. |
| */ |
| }qmiLocRegEventsReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCFIXRECURRENCEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_RECURRENCE_PERIODIC_V02 = 1, /**< Request periodic position fixes. |
| Request a single position fix. */ |
| eQMI_LOC_RECURRENCE_SINGLE_V02 = 2, |
| QMILOCFIXRECURRENCEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocFixRecurrenceEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCACCURACYLEVELENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_ACCURACY_LOW_V02 = 1, /**< Low accuracy. */ |
| eQMI_LOC_ACCURACY_MED_V02 = 2, /**< Medium accuracy. |
| High accuracy. */ |
| eQMI_LOC_ACCURACY_HIGH_V02 = 3, |
| QMILOCACCURACYLEVELENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocAccuracyLevelEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCINTERMEDIATEREPORTSTATEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_INTERMEDIATE_REPORTS_ON_V02 = 1, /**< Intermediate reports are turned on. |
| Intermediate reports are turned off. */ |
| eQMI_LOC_INTERMEDIATE_REPORTS_OFF_V02 = 2, |
| QMILOCINTERMEDIATEREPORTSTATEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocIntermediateReportStateEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; The control point sends this message when it wants to |
| initiate a GPS session. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Session ID */ |
| uint8_t sessionId; |
| /**< ID of the session as identified by the control point. The session ID |
| is reported back in the position reports. The control point must |
| specify the same session ID in the QMI_LOC_STOP_REQ message. \n |
| - Type: Unsigned integer \n |
| - Range: 0 to 255 |
| */ |
| |
| /* Optional */ |
| /* Recurrence Type */ |
| uint8_t fixRecurrence_valid; /**< Must be set to true if fixRecurrence is being passed */ |
| qmiLocFixRecurrenceEnumT_v02 fixRecurrence; |
| /**< Specifies the type of session in which the control point is interested. |
| If this TLV is not specified, recurrence defaults to SINGLE. |
| |
| Valid values: \n |
| - 0x00000001 -- Request periodic fixes \n |
| - 0x00000002 -- Request a single fix |
| */ |
| |
| /* Optional */ |
| /* Horizontal Accuracy */ |
| uint8_t horizontalAccuracyLevel_valid; /**< Must be set to true if horizontalAccuracyLevel is being passed */ |
| qmiLocAccuracyLevelEnumT_v02 horizontalAccuracyLevel; |
| /**< Specifies the horizontal accuracy level required by the control point. |
| If not specified, accuracy defaults to LOW. |
| |
| Valid values: \n |
| - 0x00000001 -- LOW: Client requires low horizontal accuracy.\n |
| - 0x00000002 -- MED: Client requires medium horizontal accuracy.\n |
| - 0x00000003 -- HIGH: Client requires high horizontal accuracy. |
| */ |
| |
| /* Optional */ |
| /* Enable/Disable Intermediate Reports */ |
| uint8_t intermediateReportState_valid; /**< Must be set to true if intermediateReportState is being passed */ |
| qmiLocIntermediateReportStateEnumT_v02 intermediateReportState; |
| /**< Specifies if the control point is interested in receiving intermediate |
| reports. The control point must explicitly set this field to OFF if it |
| does not wish to receive intermediate position reports. Intermediate |
| position reports are generated at 1 Hz and are ON by default. If |
| intermediate reports are turned ON, the client receives position reports |
| even if the accuracy criteria are not met. The status in such a position |
| report is set to IN_PROGRESS in order for the control point to identify |
| intermediate reports. |
| |
| Valid values: \n |
| - 0x00000001 -- ON: Client is interested in receiving intermediate reports \n |
| - 0x00000002 -- OFF: Client is not interested in receiving intermediate reports |
| */ |
| |
| /* Optional */ |
| /* Minimum Interval Between Position Reports */ |
| uint8_t minInterval_valid; /**< Must be set to true if minInterval is being passed */ |
| uint32_t minInterval; |
| /**< Minimum time interval, specified by the control point, that must elapse between |
| position reports. \n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds \n |
| - Default: 1000 ms |
| */ |
| }qmiLocStartReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; The control point sends this message when it wants to |
| stop a GPS session. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Session ID */ |
| uint8_t sessionId; |
| /**< ID of the session that was specified in the Start request |
| (QMI_LOC_START_REQ).\n |
| - Type: Unsigned integer \n |
| - Range: 0 to 255 */ |
| }qmiLocStopReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| typedef uint32_t qmiLocPosTechMaskT_v02; |
| #define QMI_LOC_POS_TECH_MASK_SATELLITE_V02 ((qmiLocPosTechMaskT_v02)0x00000001) /**< Satellites were used to generate the fix. */ |
| #define QMI_LOC_POS_TECH_MASK_CELLID_V02 ((qmiLocPosTechMaskT_v02)0x00000002) /**< Cell towers were used to generate the fix. */ |
| #define QMI_LOC_POS_TECH_MASK_WIFI_V02 ((qmiLocPosTechMaskT_v02)0x00000004) /**< WiFi access points were used to generate the fix. */ |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSESSIONSTATUSENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SESS_STATUS_SUCCESS_V02 = 0, /**< Session was successful. */ |
| eQMI_LOC_SESS_STATUS_IN_PROGRESS_V02 = 1, /**< Session still in progress. Further position reports will be |
| generated until either the fix criteria specified by the client |
| are met or the client response timeout occurs. */ |
| eQMI_LOC_SESS_STATUS_GENERAL_FAILURE_V02 = 2, /**< Session failed. */ |
| eQMI_LOC_SESS_STATUS_TIMEOUT_V02 = 3, /**< Fix request failed because the session timed out. */ |
| eQMI_LOC_SESS_STATUS_USER_END_V02 = 4, /**< Fix request failed because the session was ended by the user. */ |
| eQMI_LOC_SESS_STATUS_BAD_PARAMETER_V02 = 5, /**< Fix request failed due to bad parameters in the request. */ |
| eQMI_LOC_SESS_STATUS_PHONE_OFFLINE_V02 = 6, /**< Fix request failed because the phone is offline. |
| Fix request failed because the engine is locked. */ |
| eQMI_LOC_SESS_STATUS_ENGINE_LOCKED_V02 = 7, |
| QMILOCSESSIONSTATUSENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocSessionStatusEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint16_t gpsWeek; |
| /**< Current GPS week as calculated from midnight, Jan. 6, 1980. \n |
| - Type: Unsigned integer \n |
| - Units: Weeks */ |
| |
| uint32_t gpsTimeOfWeekMs; |
| /**< Amount of time into the current GPS week. \n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds */ |
| }qmiLocGPSTimeStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| float PDOP; |
| /**< Position dilution of precision.\n |
| - Type: Floating point \n |
| - Range: 1 (highest accuracy) to 50 (lowest accuracy)\n |
| - PDOP = square root of (HDOP^2 + VDOP^2) */ |
| |
| float HDOP; |
| /**< Horizontal dilution of precision.\n |
| - Type: Floating point \n |
| - Range: 1 (highest accuracy) to 50 (lowest accuracy) */ |
| |
| float VDOP; |
| /**< Vertical dilution of precision.\n |
| - Type: Floating point. \n |
| - Range: 1 (highest accuracy) to 50 (lowest accuracy) */ |
| }qmiLocDOPStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| typedef uint32_t qmiLocSensorUsageMaskT_v02; |
| #define QMI_LOC_SENSOR_MASK_USED_ACCEL_V02 ((qmiLocSensorUsageMaskT_v02)0x00000001) /**< Bitmask to specify whether an accelerometer was used. */ |
| #define QMI_LOC_SENSOR_MASK_USED_GYRO_V02 ((qmiLocSensorUsageMaskT_v02)0x00000002) /**< Bitmask to specify whether a gyrometer was used. */ |
| typedef uint32_t qmiLocSensorAidedMaskT_v02; |
| #define QMI_LOC_SENSOR_AIDED_MASK_HEADING_V02 ((qmiLocSensorAidedMaskT_v02)0x00000001) /**< Bitmask to specify whether a sensor was used to calculate heading. */ |
| #define QMI_LOC_SENSOR_AIDED_MASK_SPEED_V02 ((qmiLocSensorAidedMaskT_v02)0x00000002) /**< Bitmask to specify whether a sensor was used to calculate speed. */ |
| #define QMI_LOC_SENSOR_AIDED_MASK_POSITION_V02 ((qmiLocSensorAidedMaskT_v02)0x00000004) /**< Bitmask to specify whether a sensor was used to calculate position. */ |
| #define QMI_LOC_SENSOR_AIDED_MASK_VELOCITY_V02 ((qmiLocSensorAidedMaskT_v02)0x00000008) /**< Bitmask to specify whether a sensor was used to calculate velocity. */ |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocSensorUsageMaskT_v02 usageMask; |
| /**< Specifies which sensors are used. |
| |
| Valid bitmasks are specified by the following constants: \n |
| - 0x00000001 -- SENSOR_USED_ACCEL \n |
| - 0x00000002 -- SENSOR_USED_GYRO */ |
| |
| qmiLocSensorAidedMaskT_v02 aidingIndicatorMask; |
| /**< Specifies which results are aided by sensors. |
| |
| Valid bitmasks are specified by the following constants: \n |
| - 0x00000001 -- AIDED_HEADING \n |
| - 0x00000002 -- AIDED_SPEED \n |
| - 0x00000004 -- AIDED_POSITION \n |
| - 0x00000008 -- AIDED_VELOCITY */ |
| }qmiLocSensorUsageIndicatorStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCTIMESOURCEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_TIME_SRC_INVALID_V02 = 0, /**< Invalid time. */ |
| eQMI_LOC_TIME_SRC_NETWORK_TIME_TRANSFER_V02 = 1, /**< Time is set by the 1x system. */ |
| eQMI_LOC_TIME_SRC_NETWORK_TIME_TAGGING_V02 = 2, /**< Time is set by WCDMA/GSM time tagging (i.e., |
| associating network time with GPS time). */ |
| eQMI_LOC_TIME_SRC_EXTERNAL_INPUT_V02 = 3, /**< Time is set by an external injection. */ |
| eQMI_LOC_TIME_SRC_TOW_DECODE_V02 = 4, /**< Time is set after decoding over-the-air GPS navigation data |
| from one GPS satellite. */ |
| eQMI_LOC_TIME_SRC_TOW_CONFIRMED_V02 = 5, /**< Time is set after decoding over-the-air GPS navigation data |
| from multiple satellites. */ |
| eQMI_LOC_TIME_SRC_TOW_AND_WEEK_CONFIRMED_V02 = 6, /**< Both time of the week and the GPS week number are known. */ |
| eQMI_LOC_TIME_SRC_NAV_SOLUTION_V02 = 7, /**< Time is set by the position engine after the fix is obtained. */ |
| eQMI_LOC_TIME_SRC_SOLVE_FOR_TIME_V02 = 8, /**< Time is set by the position engine after performing SFT. |
| This is done when the clock time uncertainty is large. */ |
| eQMI_LOC_TIME_SRC_GLO_TOW_DECODE_V02 = 9, /**< Time is set after decoding GLO satellites */ |
| eQMI_LOC_TIME_SRC_TIME_TRANSFORM_V02 = 10, /**< Time is set after transforming the GPS to GLO time */ |
| eQMI_LOC_TIME_SRC_WCDMA_SLEEP_TIME_TAGGING_V02 = 11, /**< Time is set by the sleep time tag provided by the WCDMA network */ |
| eQMI_LOC_TIME_SRC_GSM_SLEEP_TIME_TAGGING_V02 = 12, /**< Time is set by the sleep time tag provided by the GSM network |
| Source of the time is unknown */ |
| eQMI_LOC_TIME_SRC_UNKNOWN_V02 = 13, |
| QMILOCTIMESOURCEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocTimeSourceEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCRELIABILITYENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_RELIABILITY_NOT_SET_V02 = 0, /**< Location reliability is not set */ |
| eQMI_LOC_RELIABILITY_VERY_LOW_V02 = 1, /**< Location reliability is very low; use it at your own risk */ |
| eQMI_LOC_RELIABILITY_LOW_V02 = 2, /**< Location reliability is low; little or no cross-checking is possible */ |
| eQMI_LOC_RELIABILITY_MEDIUM_V02 = 3, /**< Location reliability is medium; limited cross-check passed |
| Location reliability is high; strong cross-check passed */ |
| eQMI_LOC_RELIABILITY_HIGH_V02 = 4, |
| QMILOCRELIABILITYENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocReliabilityEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; This message is used to send the position report to the |
| control point. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Session Status */ |
| qmiLocSessionStatusEnumT_v02 sessionStatus; |
| /**< Session status. |
| |
| Valid values: \n |
| - 0x00000000 -- SESS_STATUS_SUCCESS \n |
| - 0x00000001 -- SESS_STATUS_IN_PROGRESS \n |
| - 0x00000002 -- SESS_STATUS_GENERAL_FAILURE \n |
| - 0x00000003 -- SESS_STATUS_TIMEOUT \n |
| - 0x00000004 -- SESS_STATUS_USER_END \n |
| - 0x00000005 -- SESS_STATUS_BAD_PARAMETER \n |
| - 0x00000006 -- SESS_STATUS_PHONE_OFFLINE \n |
| - 0x00000007 -- SESS_STATUS_ENGINE_LOCKED |
| */ |
| |
| /* Mandatory */ |
| /* Session ID */ |
| uint8_t sessionId; |
| /**< ID of the session that was specified in the Start request |
| QMI_LOC_START_REQ. \n |
| - Type: Unsigned integer \n |
| - Range: 0 to 255 */ |
| |
| /* Optional */ |
| /* Latitude */ |
| uint8_t latitude_valid; /**< Must be set to true if latitude is being passed */ |
| double latitude; |
| /**< Latitude (specified in WGS84 datum). \n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: -90.0 to 90.0 \n |
| - Positive values indicate northern latitude \n |
| - Negative values indicate southern latitude */ |
| |
| /* Optional */ |
| /* Longitude */ |
| uint8_t longitude_valid; /**< Must be set to true if longitude is being passed */ |
| double longitude; |
| /**< Longitude (specified in WGS84 datum).\n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: -180.0 to 180.0 \n |
| - Positive values indicate eastern longitude \n |
| - Negative values indicate western longitude */ |
| |
| /* Optional */ |
| /* Circular Horizontal Position Uncertainty */ |
| uint8_t horUncCircular_valid; /**< Must be set to true if horUncCircular is being passed */ |
| float horUncCircular; |
| /**< Horizontal position uncertainty (circular).\n |
| - Type: Floating point \n |
| - Units: Meters */ |
| |
| /* Optional */ |
| /* Horizontal Elliptical Uncertainty (Semi-Minor Axis) */ |
| uint8_t horUncEllipseSemiMinor_valid; /**< Must be set to true if horUncEllipseSemiMinor is being passed */ |
| float horUncEllipseSemiMinor; |
| /**< Semi-minor axis of horizontal elliptical uncertainty.\n |
| - Type: Floating point \n |
| - Units: Meters */ |
| |
| /* Optional */ |
| /* Horizontal Elliptical Uncertainty (Semi-Major Axis) */ |
| uint8_t horUncEllipseSemiMajor_valid; /**< Must be set to true if horUncEllipseSemiMajor is being passed */ |
| float horUncEllipseSemiMajor; |
| /**< Semi-major axis of horizontal elliptical uncertainty.\n |
| - Type: Floating point \n |
| - Units: Meters */ |
| |
| /* Optional */ |
| /* Elliptical Horizontal Uncertainty Azimuth */ |
| uint8_t horUncEllipseOrientAzimuth_valid; /**< Must be set to true if horUncEllipseOrientAzimuth is being passed */ |
| float horUncEllipseOrientAzimuth; |
| /**< Elliptical horizontal uncertainty azimuth of orientation.\n |
| - Type: Floating point \n |
| - Units: Decimal degrees \n |
| - Range: 0 to 180 */ |
| |
| /* Optional */ |
| /* Horizontal Confidence */ |
| uint8_t horConfidence_valid; /**< Must be set to true if horConfidence is being passed */ |
| uint8_t horConfidence; |
| /**< Horizontal uncertainty confidence.\n |
| - Type: Unsigned integer \n |
| - Units: Percent \n |
| - Range: 0 to 99 */ |
| |
| /* Optional */ |
| /* Horizontal Reliability */ |
| uint8_t horReliability_valid; /**< Must be set to true if horReliability is being passed */ |
| qmiLocReliabilityEnumT_v02 horReliability; |
| /**< Specifies the reliability of the horizontal position. |
| |
| Valid values: \n |
| - 0x00000000 -- RELIABILITY_NOT_SET \n |
| - 0x00000001 -- RELIABILITY_VERY_LOW \n |
| - 0x00000002 -- RELIABILITY_LOW \n |
| - 0x00000003 -- RELIABILITY_MEDIUM \n |
| - 0x00000004 -- RELIABILITY_HIGH |
| */ |
| |
| /* Optional */ |
| /* Horizontal Speed */ |
| uint8_t speedHorizontal_valid; /**< Must be set to true if speedHorizontal is being passed */ |
| float speedHorizontal; |
| /**< Horizontal speed.\n |
| - Type: Floating point \n |
| - Units: Meters/second */ |
| |
| /* Optional */ |
| /* Speed Uncertainty */ |
| uint8_t speedUnc_valid; /**< Must be set to true if speedUnc is being passed */ |
| float speedUnc; |
| /**< Speed uncertainty.\n |
| - Type: Floating point \n |
| - Units: Meters/second */ |
| |
| /* Optional */ |
| /* Altitude With Respect to Ellipsoid */ |
| uint8_t altitudeWrtEllipsoid_valid; /**< Must be set to true if altitudeWrtEllipsoid is being passed */ |
| float altitudeWrtEllipsoid; |
| /**< Altitude with respect to the WGS84 ellipsoid.\n |
| - Type: Floating point \n |
| - Units: Meters \n |
| - Range: -500 to 15883 */ |
| |
| /* Optional */ |
| /* Altitude With Respect to Sea Level */ |
| uint8_t altitudeWrtMeanSeaLevel_valid; /**< Must be set to true if altitudeWrtMeanSeaLevel is being passed */ |
| float altitudeWrtMeanSeaLevel; |
| /**< Altitude with respect to mean sea level.\n |
| - Type: Floating point \n |
| - Units: Meters */ |
| |
| /* Optional */ |
| /* Vertical Uncertainty */ |
| uint8_t vertUnc_valid; /**< Must be set to true if vertUnc is being passed */ |
| float vertUnc; |
| /**< Vertical uncertainty.\n |
| - Type: Floating point \n |
| - Units: Meters */ |
| |
| /* Optional */ |
| /* Vertical Confidence */ |
| uint8_t vertConfidence_valid; /**< Must be set to true if vertConfidence is being passed */ |
| uint8_t vertConfidence; |
| /**< Vertical uncertainty confidence.\n |
| - Type: Unsigned integer \n |
| - Units: Percent \n |
| - Range: 0 to 99 */ |
| |
| /* Optional */ |
| /* Vertical Reliability */ |
| uint8_t vertReliability_valid; /**< Must be set to true if vertReliability is being passed */ |
| qmiLocReliabilityEnumT_v02 vertReliability; |
| /**< Specifies the reliability of the vertical position. |
| |
| Valid values: \n |
| - 0x00000000 -- RELIABILITY_NOT_SET \n |
| - 0x00000001 -- RELIABILITY_VERY_LOW \n |
| - 0x00000002 -- RELIABILITY_LOW \n |
| - 0x00000003 -- RELIABILITY_MEDIUM \n |
| - 0x00000004 -- RELIABILITY_HIGH */ |
| |
| /* Optional */ |
| /* Vertical Speed */ |
| uint8_t speedVertical_valid; /**< Must be set to true if speedVertical is being passed */ |
| float speedVertical; |
| /**< Vertical speed.\n |
| - Type: Floating point \n |
| - Units: Meters/second */ |
| |
| /* Optional */ |
| /* Heading */ |
| uint8_t heading_valid; /**< Must be set to true if heading is being passed */ |
| float heading; |
| /**< Heading.\n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: 0 to 359.999 */ |
| |
| /* Optional */ |
| /* Heading Uncertainty */ |
| uint8_t headingUnc_valid; /**< Must be set to true if headingUnc is being passed */ |
| float headingUnc; |
| /**< Heading uncertainty.\n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: 0 to 359.999 */ |
| |
| /* Optional */ |
| /* Magnetic Deviation */ |
| uint8_t magneticDeviation_valid; /**< Must be set to true if magneticDeviation is being passed */ |
| float magneticDeviation; |
| /**< Difference between the bearing to true north and the bearing shown |
| on a magnetic compass. The deviation is positive when the magnetic |
| north is east of true north. \n |
| - Type: Floating point */ |
| |
| /* Optional */ |
| /* Technology Used */ |
| uint8_t technologyMask_valid; /**< Must be set to true if technologyMask is being passed */ |
| qmiLocPosTechMaskT_v02 technologyMask; |
| /**< Technology used in computing this fix. |
| |
| Valid bitmasks: \n |
| - 0x00000001 -- SATELLITE \n |
| - 0x00000002 -- CELLID \n |
| - 0x00000004 -- WIFI */ |
| |
| /* Optional */ |
| /* Dilution of Precision */ |
| uint8_t DOP_valid; /**< Must be set to true if DOP is being passed */ |
| qmiLocDOPStructT_v02 DOP; |
| /**< \n Dilution of precision associated with this position. */ |
| |
| /* Optional */ |
| /* UTC Timestamp */ |
| uint8_t timestampUtc_valid; /**< Must be set to true if timestampUtc is being passed */ |
| uint64_t timestampUtc; |
| /**< UTC timestamp. \n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds since Jan. 1, 1970 */ |
| |
| /* Optional */ |
| /* Leap Seconds */ |
| uint8_t leapSeconds_valid; /**< Must be set to true if leapSeconds is being passed */ |
| uint8_t leapSeconds; |
| /**< Leap second information. If leapSeconds is not available, |
| timestampUtc is calculated based on a hard-coded value |
| for leap seconds. \n |
| - Type: Unsigned integer \n |
| - Units: Seconds */ |
| |
| /* Optional */ |
| /* GPS Time \n */ |
| uint8_t gpsTime_valid; /**< Must be set to true if gpsTime is being passed */ |
| qmiLocGPSTimeStructT_v02 gpsTime; |
| /**< \n The number of weeks since Jan. 5, 1980, and |
| milliseconds into the current week. */ |
| |
| /* Optional */ |
| /* Time Uncertainty */ |
| uint8_t timeUnc_valid; /**< Must be set to true if timeUnc is being passed */ |
| float timeUnc; |
| /**< Time uncertainty. \n |
| - Type: Floating point \n |
| - Units: Milliseconds */ |
| |
| /* Optional */ |
| /* Time Source */ |
| uint8_t timeSrc_valid; /**< Must be set to true if timeSrc is being passed */ |
| qmiLocTimeSourceEnumT_v02 timeSrc; |
| /**< Time source. |
| |
| Valid values: \n |
| - 0x00000000 -- TIME_SRC_INVALID \n |
| - 0x00000001 -- TIME_SRC_NETWORK_TIME_TRANSFER \n |
| - 0x00000002 -- TIME_SRC_NETWORK_TIME_TAGGING \n |
| - 0x00000003 -- TIME_SRC_EXTERNAL_ INPUT \n |
| - 0x00000004 -- TIME_SRC_TOW_DECODE \n |
| - 0x00000005 -- TIME_SRC_TOW_CONFIRMED \n |
| - 0x00000006 -- TIME_SRC_TOW_AND_WEEK_CONFIRMED \n |
| - 0x00000007 -- TIME_SRC_NAV_SOLUTION \n |
| - 0x00000008 -- TIME_SRC_SOLVE_FOR_TIME */ |
| |
| /* Optional */ |
| /* Sensor Data Usage */ |
| uint8_t sensorDataUsage_valid; /**< Must be set to true if sensorDataUsage is being passed */ |
| qmiLocSensorUsageIndicatorStructT_v02 sensorDataUsage; |
| /**< \n Whether sensor data was used in computing the position in this |
| position report. */ |
| |
| /* Optional */ |
| /* Fix Count for This Session */ |
| uint8_t fixId_valid; /**< Must be set to true if fixId is being passed */ |
| uint32_t fixId; |
| /**< Fix count for the session. Starts with 0 and increments by one |
| for each successive position report for a particular session. */ |
| }qmiLocEventPositionReportIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSVSYSTEMENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SV_SYSTEM_GPS_V02 = 1, /**< GPS satellite. */ |
| eQMI_LOC_SV_SYSTEM_GALILEO_V02 = 2, /**< GALILEO satellite. */ |
| eQMI_LOC_SV_SYSTEM_SBAS_V02 = 3, /**< SBAS satellite. */ |
| eQMI_LOC_SV_SYSTEM_COMPASS_V02 = 4, /**< COMPASS satellite. |
| GLONASS satellite. */ |
| eQMI_LOC_SV_SYSTEM_GLONASS_V02 = 5, |
| QMILOCSVSYSTEMENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocSvSystemEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSVSTATUSENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SV_STATUS_IDLE_V02 = 1, /**< SV is not being actively processed. */ |
| eQMI_LOC_SV_STATUS_SEARCH_V02 = 2, /**< The system is searching for this SV. |
| SV is being tracked. */ |
| eQMI_LOC_SV_STATUS_TRACK_V02 = 3, |
| QMILOCSVSTATUSENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocSvStatusEnumT_v02; |
| /** |
| @} |
| */ |
| |
| typedef uint32_t qmiLocSvInfoValidMaskT_v02; |
| #define QMI_LOC_SV_INFO_MASK_VALID_SYSTEM_V02 ((qmiLocSvInfoValidMaskT_v02)0x00000001) /**< System field is valid in SV information. */ |
| #define QMI_LOC_SV_INFO_MASK_VALID_GNSS_SVID_V02 ((qmiLocSvInfoValidMaskT_v02)0x00000002) /**< gnssSvId field is valid in SV information. */ |
| #define QMI_LOC_SV_INFO_MASK_VALID_HEALTH_STATUS_V02 ((qmiLocSvInfoValidMaskT_v02)0x00000004) /**< healthStatus field is valid in SV information. */ |
| #define QMI_LOC_SV_INFO_MASK_VALID_PROCESS_STATUS_V02 ((qmiLocSvInfoValidMaskT_v02)0x00000008) /**< processStatus field is valid in SV information. */ |
| #define QMI_LOC_SV_INFO_MASK_VALID_SVINFO_MASK_V02 ((qmiLocSvInfoValidMaskT_v02)0x00000010) /**< svInfoMask field is valid in SV information. */ |
| #define QMI_LOC_SV_INFO_MASK_VALID_ELEVATION_V02 ((qmiLocSvInfoValidMaskT_v02)0x00000020) /**< Elevation field is valid in SV information. */ |
| #define QMI_LOC_SV_INFO_MASK_VALID_AZIMUTH_V02 ((qmiLocSvInfoValidMaskT_v02)0x00000040) /**< Azimuth field is valid in SV information. */ |
| #define QMI_LOC_SV_INFO_MASK_VALID_SNR_V02 ((qmiLocSvInfoValidMaskT_v02)0x00000080) /**< SNR field is valid in SV information. */ |
| typedef uint8_t qmiLocSvInfoMaskT_v02; |
| #define QMI_LOC_SVINFO_MASK_HAS_EPHEMERIS_V02 ((qmiLocSvInfoMaskT_v02)0x01) /**< Ephemeris is available for this SV. */ |
| #define QMI_LOC_SVINFO_MASK_HAS_ALMANAC_V02 ((qmiLocSvInfoMaskT_v02)0x02) /**< Almanac is available for this SV. */ |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocSvInfoValidMaskT_v02 validMask; |
| /**< Bitmask indicating which of the fields in this TLV are valid. |
| |
| Valid bitmasks: \n |
| - 0x00000001 -- VALID_SYSTEM \n |
| - 0x00000002 -- VALID_GNSS_SVID \n |
| - 0x00000004 -- VALID_HEALTH_STATUS \n |
| - 0x00000008 -- VALID_PROCESS_STATUS \n |
| - 0x00000010 -- VALID_SVINFO_MASK \n |
| - 0x00000020 -- VALID_ELEVATION \n |
| - 0x00000040 -- VALID_AZIMUTH \n |
| - 0x00000080 -- VALID_SNR |
| |
| */ |
| |
| qmiLocSvSystemEnumT_v02 system; |
| /**< Indicates to which constellation this SV belongs. |
| |
| Valid values: \n |
| - 0x00000001 -- eQMI_LOC_SV_SYSTEM_GPS \n |
| - 0x00000002 -- eQMI_LOC_SV_SYSTEM_GALILEO \n |
| - 0x00000003 -- eQMI_LOC_SV_SYSTEM_SBAS \n |
| - 0x00000004 -- eQMI_LOC_SV_SYSTEM_COMPASS \n |
| - 0x00000005 -- eQMI_LOC_SV_SYSTEM_GLONASS |
| */ |
| |
| uint16_t gnssSvId; |
| /**< GNSS SV ID. \n |
| |
| - Type: Unsigned integer \n |
| - Range: \n |
| -- For GPS: 1 to 32 \n |
| -- For SBAS: 33 to 64 \n |
| -- For GLONASS: 65 to 96 */ |
| |
| uint8_t healthStatus; |
| /**< Health status. \n |
| - Type: Unsigned integer \n |
| - Range: 0 = unhealthy; 1 = healthy */ |
| |
| qmiLocSvStatusEnumT_v02 svStatus; |
| /**< SV processing status. \n |
| Valid values:\n |
| - 0x00000001 -- SV_STATUS_IDLE \n |
| - 0x00000002 -- SV_STATUS_SEARCH \n |
| - 0x00000003 -- SV_STATUS_TRACK |
| */ |
| |
| qmiLocSvInfoMaskT_v02 svInfoMask; |
| /**< Whether almanac and ephemeris information is available. \n |
| Valid bitmasks: \n |
| - 0x01 -- SVINFO_HAS_EPHEMERIS \n |
| - 0x02 -- SVINFO_HAS_ALMANAC |
| */ |
| |
| float elevation; |
| /**< SV elevation angle.\n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: 0 to 90 */ |
| |
| float azimuth; |
| /**< SV azimuth angle.\n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: 0 to 360 */ |
| |
| float snr; |
| /**< SV signal-to-noise ratio. \n |
| - Type: Floating point \n |
| - Units: dB-Hz */ |
| }qmiLocSvInfoStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used to send a satellite report to the control point. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Altitude Source */ |
| uint8_t altitudeAssumed; |
| /**< Altitude assumed or calculated:\n |
| - 0x00 (FALSE) -- Valid altitude is calculated \n |
| - 0x01 (TRUE) -- Valid altitude is assumed; there may not be enough |
| satellites to determine precise altitude */ |
| |
| /* Optional */ |
| /* Satellite Info */ |
| uint8_t svList_valid; /**< Must be set to true if svList is being passed */ |
| uint32_t svList_len; /**< Must be set to # of elements in svList */ |
| qmiLocSvInfoStructT_v02 svList[QMI_LOC_SV_INFO_LIST_MAX_SIZE_V02]; |
| /**< \n SV information list. */ |
| }qmiLocEventGnssSvInfoIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used to send NMEA sentences to the control point. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* NMEA String */ |
| char nmea[QMI_LOC_NMEA_STRING_MAX_LENGTH_V02 + 1]; |
| /**< NMEA string. \n |
| - Type: NULL-terminated string \n |
| - Maximum string length (including NULL terminator): 201 */ |
| }qmiLocEventNmeaIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCNINOTIFYVERIFYENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_NI_USER_NO_NOTIFY_NO_VERIFY_V02 = 1, /**< No notification and no verification required. */ |
| eQMI_LOC_NI_USER_NOTIFY_ONLY_V02 = 2, /**< Notify only; no verification required. */ |
| eQMI_LOC_NI_USER_NOTIFY_VERIFY_ALLOW_NO_RESP_V02 = 3, /**< Notify and verify, but no response required. */ |
| eQMI_LOC_NI_USER_NOTIFY_VERIFY_NOT_ALLOW_NO_RESP_V02 = 4, /**< Notify and verify, and require a response. |
| Notify and Verify, and require a response. */ |
| eQMI_LOC_NI_USER_NOTIFY_VERIFY_PRIVACY_OVERRIDE_V02 = 5, |
| QMILOCNINOTIFYVERIFYENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocNiNotifyVerifyEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCNIVXPOSMODEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_NI_VX_MS_ASSISTED_ONLY_V02 = 1, /**< MS-assisted only allowed. */ |
| eQMI_LOC_NI_VX_MS_BASED_ONLY_V02 = 2, /**< MS-based only allowed. */ |
| eQMI_LOC_NI_VX_MS_ASSISTED_PREFERRED_MS_BASED_ALLOWED_V02 = 3, /**< MS-assisted preferred, but MS-based allowed. |
| MS-based preferred, but MS-assisted allowed. */ |
| eQMI_LOC_NI_VX_MS_BASED_PREFERRED_MS_ASSISTED_ALLOWED_V02 = 4, |
| QMILOCNIVXPOSMODEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocNiVxPosModeEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCNIVXREQUESTORIDENCODINGSCHEMEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_NI_VX_OCTET_V02 = 0, /**< Encoding is OCTET. */ |
| eQMI_LOC_NI_VX_EXN_PROTOCOL_MSG_V02 = 1, /**< Encoding is EXN PROTOCOL MSG. */ |
| eQMI_LOC_NI_VX_ASCII_V02 = 2, /**< Encoding is ASCII. */ |
| eQMI_LOC_NI_VX_IA5_V02 = 3, /**< Encoding is IA5. */ |
| eQMI_LOC_NI_VX_UNICODE_V02 = 4, /**< Encoding is UNICODE. */ |
| eQMI_LOC_NI_VX_SHIFT_JIS_V02 = 5, /**< Encoding is SHIFT JIS. */ |
| eQMI_LOC_NI_VX_KOREAN_V02 = 6, /**< Encoding is KOREAN. */ |
| eQMI_LOC_NI_VX_LATIN_HEBREW_V02 = 7, /**< Encoding is LATIN HEBREW. */ |
| eQMI_LOC_NI_VX_LATIN_V02 = 8, /**< Encoding is LATIN. |
| Encoding is GSM. */ |
| eQMI_LOC_NI_VX_GSM_V02 = 9, |
| QMILOCNIVXREQUESTORIDENCODINGSCHEMEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocNiVxRequestorIdEncodingSchemeEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint8_t posQosIncl; |
| /**< Whether quality of service is included:\n |
| - 0x01 (TRUE) -- QoS is included \n |
| - 0x00 (FALSE) -- QoS is not included */ |
| |
| uint8_t posQos; |
| /**< Position QoS timeout. \n |
| - Type: Unsigned integer \n |
| - Units: Seconds \n |
| - Range: 0 to 255 */ |
| |
| uint32_t numFixes; |
| /**< Number of fixes allowed. \n |
| - Type: Unsigned integer */ |
| |
| uint32_t timeBetweenFixes; |
| /**< Time between fixes.\n |
| - Type: Unsigned integer \n |
| - Units: Seconds */ |
| |
| qmiLocNiVxPosModeEnumT_v02 posMode; |
| /**< Position mode. |
| |
| Valid values: \n |
| - 0x00000001 -- NI_VX_MS_ASSISTED_ONLY \n |
| - 0x00000002 -- NI_VX_MS_BASED_ONLY \n |
| - 0x00000003 -- NI_VX_MS_ASSISTED_PREFERRED_MS_BASED_ALLOWED \n |
| - 0x00000004 -- NI_VX_MS_BASED_PREFERRED_MS_ASSISTED_ALLOWED |
| */ |
| |
| qmiLocNiVxRequestorIdEncodingSchemeEnumT_v02 encodingScheme; |
| /**< VX encoding scheme. |
| |
| Valid values: \n |
| - 0x00000000 -- NI_VX_OCTET \n |
| - 0x00000001 -- NI_VX_EXN_PROTOCOL_MSG \n |
| - 0x00000002 -- NI_VX_ASCII \n |
| - 0x00000003 -- NI_VX_IA5 \n |
| - 0x00000004 -- NI_VX_UNICODE \n |
| - 0x00000005 -- NI_VX_SHIFT_JIS \n |
| - 0x00000006 -- NI_VX_KOREAN \n |
| - 0x00000007 -- NI_VX_LATIN_HEBREW \n |
| - 0x00000008 -- NI_VX_LATIN \n |
| - 0x00000009 -- NI_VX_GSM |
| */ |
| |
| uint32_t requestorId_len; /**< Must be set to # of elements in requestorId */ |
| uint8_t requestorId[QMI_LOC_NI_MAX_REQUESTOR_ID_LENGTH_V02]; |
| /**< Requestor ID. \n |
| - Type: Array of bytes \n |
| - Maximum array length: 200 |
| */ |
| |
| uint16_t userRespTimerInSeconds; |
| /**< Time to wait for the user to respond. \n |
| - Type: Unsigned integer \n |
| - Units: Seconds */ |
| }qmiLocNiVxNotifyVerifyStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCNISUPLPOSMETHODENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_NI_SUPL_POSMETHOD_AGPS_SETASSISTED_V02 = 1, /**< Set assisted. */ |
| eQMI_LOC_NI_SUPL_POSMETHOD_AGPS_SETBASED_V02 = 2, /**< Set based. */ |
| eQMI_LOC_NI_SUPL_POSMETHOD_AGPS_SETASSISTED_PREF_V02 = 3, /**< Set assisted preferred. */ |
| eQMI_LOC_NI_SUPL_POSMETHOD_AGPS_SETBASED_PREF_V02 = 4, /**< Set based preferred. */ |
| eQMI_LOC_NI_SUPL_POSMETHOD_AUTONOMOUS_GPS_V02 = 5, /**< Standalone GPS. */ |
| eQMI_LOC_NI_SUPL_POSMETHOD_AFLT_V02 = 6, /**< Advanced forward link trilateration. */ |
| eQMI_LOC_NI_SUPL_POSMETHOD_ECID_V02 = 7, /**< Exclusive chip ID. */ |
| eQMI_LOC_NI_SUPL_POSMETHOD_EOTD_V02 = 8, /**< Enhnaced observed time difference. */ |
| eQMI_LOC_NI_SUPL_POSMETHOD_OTDOA_V02 = 9, /**< Observed time delay of arrival. |
| No position. */ |
| eQMI_LOC_NI_SUPL_POSMETHOD_NO_POSITION_V02 = 10, |
| QMILOCNISUPLPOSMETHODENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocNiSuplPosMethodEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCNIDATACODINGSCHEMEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_NI_SS_GERMAN_V02 = 12, /**< Language is German. */ |
| eQMI_LOC_NI_SS_ENGLISH_V02 = 13, /**< Language is English. */ |
| eQMI_LOC_NI_SS_ITALIAN_V02 = 14, /**< Language is Italian. */ |
| eQMI_LOC_NI_SS_FRENCH_V02 = 15, /**< Language is French. */ |
| eQMI_LOC_NI_SS_SPANISH_V02 = 16, /**< Language is Spanish. */ |
| eQMI_LOC_NI_SS_DUTCH_V02 = 17, /**< Language is Dutch. */ |
| eQMI_LOC_NI_SS_SWEDISH_V02 = 18, /**< Language is Swedish. */ |
| eQMI_LOC_NI_SS_DANISH_V02 = 19, /**< Language is Danish. */ |
| eQMI_LOC_NI_SS_PORTUGUESE_V02 = 20, /**< Language is Portuguese. */ |
| eQMI_LOC_NI_SS_FINNISH_V02 = 21, /**< Language is Finnish. */ |
| eQMI_LOC_NI_SS_NORWEGIAN_V02 = 22, /**< Language is Norwegian. */ |
| eQMI_LOC_NI_SS_GREEK_V02 = 23, /**< Language is Greek. */ |
| eQMI_LOC_NI_SS_TURKISH_V02 = 24, /**< Language is Turkish. */ |
| eQMI_LOC_NI_SS_HUNGARIAN_V02 = 25, /**< Language is Hungarian. */ |
| eQMI_LOC_NI_SS_POLISH_V02 = 26, /**< Language is Polish. */ |
| eQMI_LOC_NI_SS_LANGUAGE_UNSPEC_V02 = 27, /**< Language is unspecified. */ |
| eQMI_LOC_NI_SUPL_UTF8_V02 = 28, /**< Encoding is UTF 8. */ |
| eQMI_LOC_NI_SUPL_UCS2_V02 = 29, /**< Encoding is UCS 2. |
| Encoding is GSM default. */ |
| eQMI_LOC_NI_SUPL_GSM_DEFAULT_V02 = 30, |
| QMILOCNIDATACODINGSCHEMEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocNiDataCodingSchemeEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCNISUPLFORMATENUMTYPE_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_NI_SUPL_FORMAT_LOGICAL_NAME_V02 = 0, /**< SUPL logical name format. */ |
| eQMI_LOC_NI_SUPL_FORMAT_EMAIL_ADDRESS_V02 = 1, /**< SUPL email address format. */ |
| eQMI_LOC_NI_SUPL_FORMAT_MSISDN_V02 = 2, /**< SUPL logical name format. */ |
| eQMI_LOC_NI_SUPL_FORMAT_URL_V02 = 3, /**< SUPL URL format. */ |
| eQMI_LOC_NI_SUPL_FORMAT_SIP_URL_V02 = 4, /**< SUPL SIP URL format. */ |
| eQMI_LOC_NI_SUPL_FORMAT_MIN_V02 = 5, /**< SUPL MIN format. */ |
| eQMI_LOC_NI_SUPL_FORMAT_MDN_V02 = 6, /**< SUPL MDN format. */ |
| eQMI_LOC_NI_SUPL_FORMAT_IMSPUBLIC_IDENTITY_V02 = 7, /**< SUPL IMS public identity |
| SUPL unknown format. */ |
| eQMI_LOC_NI_SUPL_FORMAT_OSS_UNKNOWN_V02 = 2147483647, |
| QMILOCNISUPLFORMATENUMTYPE_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocNiSuplFormatEnumType_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocNiSuplFormatEnumType_v02 formatType; |
| /**< Format of the formatted string. |
| |
| Valid values: \n |
| - 0x00000000 -- FORMAT_LOGICAL_NAME \n |
| - 0x00000001 -- FORMAT_EMAIL_ADDRESS \n |
| - 0x00000002 -- FORMAT_MSISDN \n |
| - 0x00000003 -- FORMAT_URL \n |
| - 0x00000004 -- FORMAT_SIP_URL \n |
| - 0x00000005 -- FORMAT_MIN \n |
| - 0x00000006 -- FORMAT_MDN \n |
| - 0x00000007 -- FORMAT_IMSPUBLIC_IDENTITY \n |
| - 0x7FFFFFFF -- FORMAT_OSS_UNKNOWN |
| */ |
| |
| uint32_t formattedString_len; /**< Must be set to # of elements in formattedString */ |
| uint8_t formattedString[QMI_LOC_NI_MAX_CLIENT_NAME_LENGTH_V02]; |
| /**< Formatted string. \n |
| - Type: Byte array \n |
| - Maximum string length: 64 |
| */ |
| }qmiLocNiSuplFormattedStringStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| typedef uint8_t qmiLocSuplQopValidMaskT_v02; |
| #define QMI_LOC_NI_SUPL_MASK_QOP_HORZ_ACC_VALID_V02 ((qmiLocSuplQopValidMaskT_v02)0x01) /**< Horizontal accuracy is valid in the Quality of Position (QoP). */ |
| #define QMI_LOC_NI_SUPL_MASK_QOP_VER_ACC_VALID_V02 ((qmiLocSuplQopValidMaskT_v02)0x02) /**< Vertical accuracy is valid in the QoP. */ |
| #define QMI_LOC_NI_SUPL_MASK_QOP_MAXAGE_VALID_V02 ((qmiLocSuplQopValidMaskT_v02)0x04) /**< Vertical accuracy is valid in the QoP. */ |
| #define QMI_LOC_NI_SUPL_MASK_QOP_DELAY_VALID_V02 ((qmiLocSuplQopValidMaskT_v02)0x08) /**< Vertical accuracy is valid in the QoP. */ |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocSuplQopValidMaskT_v02 validMask; |
| /**< Bit field indicating which fields are valid in this value. |
| |
| Valid bitmasks: \n |
| - 0x01 -- QOP_HORZ_ACC_VALID \n |
| - 0x02 -- QOP_VER_ACC_VALID \n |
| - 0x04 -- QOP_MAXAGE_VALID \n |
| - 0x08 -- QOP_DELAY_VALID */ |
| |
| uint8_t horizontalAccuracy; |
| /**< Horizontal accuracy. \n |
| - Type: Unsigned integer \n |
| - Units: Meters */ |
| |
| uint8_t verticalAccuracy; |
| /**< Vertical accuracy. \n |
| - Type: Unsigned integer \n |
| - Units: Meters */ |
| |
| uint16_t maxLocAge; |
| /**< Maximum age of the location if the engine sends a previously |
| computed position. \n |
| - Type: Unsigned integer \n |
| - Units: Seconds */ |
| |
| uint8_t delay; |
| /**< Delay the server is willing to tolerate for the fix. \n |
| - Type: Unsigned integer \n |
| - Units: Seconds */ |
| }qmiLocNiSuplQopStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| typedef uint8_t qmiLocServerAddrTypeMaskT_v02; |
| #define QMI_LOC_SERVER_ADDR_TYPE_IPV4_MASK_V02 ((qmiLocServerAddrTypeMaskT_v02)0x01) /**< IPV4 server address type. */ |
| #define QMI_LOC_SERVER_ADDR_TYPE_IPV6_MASK_V02 ((qmiLocServerAddrTypeMaskT_v02)0x02) /**< IPV6 server address type. */ |
| #define QMI_LOC_SERVER_ADDR_TYPE_URL_MASK_V02 ((qmiLocServerAddrTypeMaskT_v02)0x04) /**< URL server address type. */ |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint32_t addr; |
| /**< IPV4 address. \n |
| - Type: Unsigned integer */ |
| |
| uint16_t port; |
| /**< IPV4 port. \n |
| - Type: Unsigned integer */ |
| }qmiLocIpV4AddrStructType_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint16_t addr[QMI_LOC_IPV6_ADDR_LENGTH_V02]; |
| /**< IPV6 address. \n |
| - Type: Array of unsigned integers \n |
| - Maximum length of the array: 8 */ |
| |
| uint32_t port; |
| /**< IPV6 port. \n |
| - Type: Unsigned integer */ |
| }qmiLocIpV6AddrStructType_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocServerAddrTypeMaskT_v02 suplServerAddrTypeMask; |
| /**< Mask specifying the valid fields in this value. |
| |
| Valid bitmasks: \n |
| - 0x01 -- IPV4 \n |
| - 0x02 -- IPV6 \n |
| - 0x04 -- URL |
| */ |
| |
| qmiLocIpV4AddrStructType_v02 ipv4Addr; |
| /**< IPV4 address and port. */ |
| |
| qmiLocIpV6AddrStructType_v02 ipv6Addr; |
| /**< IPV6 address and port. */ |
| |
| char urlAddr[QMI_LOC_MAX_SERVER_ADDR_LENGTH_V02 + 1]; |
| /**< URL. \n |
| - Type: NULL-terminated string \n |
| - Maximum string length (including NULL terminator): 256 |
| */ |
| }qmiLocNiSuplServerInfoStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| typedef uint32_t qmiLocNiSuplNotifyVerifyValidMaskT_v02; |
| #define QMI_LOC_SUPL_SERVER_INFO_MASK_V02 ((qmiLocNiSuplNotifyVerifyValidMaskT_v02)0x00000001) /**< Mask to denote that the server information |
| is present in an NI SUPL notify verify request event. This mask is set in |
| the valid_flags field of a notify verify structure. */ |
| #define QMI_LOC_SUPL_SESSION_ID_MASK_V02 ((qmiLocNiSuplNotifyVerifyValidMaskT_v02)0x00000002) /**< Mask to denote that the SUPL session ID |
| is present in an NI SUPL notify verify request event. |
| This mask is set in the valid_flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_SUPL_HASH_MASK_V02 ((qmiLocNiSuplNotifyVerifyValidMaskT_v02)0x00000004) /**< Mask to denote that the SUPL hash is present |
| in an NI notify verify request event. |
| This mask is set in the valid_flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_SUPL_POS_METHOD_MASK_V02 ((qmiLocNiSuplNotifyVerifyValidMaskT_v02)0x00000008) /**< Mask to denote that the position method is present |
| in an NI SUPL notify verify request event. |
| This mask is set in the valid_flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_SUPL_DATA_CODING_SCHEME_MASK_V02 ((qmiLocNiSuplNotifyVerifyValidMaskT_v02)0x00000010) /**< Mask to denote that the data coding scheme |
| is present in an NI SUPL notify verify request event. |
| This mask is set in the valid_flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_SUPL_REQUESTOR_ID_MASK_V02 ((qmiLocNiSuplNotifyVerifyValidMaskT_v02)0x00000020) /**< Mask to denote that the requestor ID |
| is present in an NI notify verify request event. |
| This mask is set in the valid_flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_SUPL_CLIENT_NAME_MASK_V02 ((qmiLocNiSuplNotifyVerifyValidMaskT_v02)0x00000040) /**< Mask to denote that the requestor ID |
| is present in an NI notify verify request event. |
| This mask is set in the valid_flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_SUPL_QOP_MASK_V02 ((qmiLocNiSuplNotifyVerifyValidMaskT_v02)0x00000080) /**< Mask to denote that the quality of position |
| is present in an NI notify verify request event. |
| This mask is set in the valid_flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_SUPL_USER_RESP_TIMER_MASK_V02 ((qmiLocNiSuplNotifyVerifyValidMaskT_v02)0x00000100) /**< Mask to denote that the user response timer |
| is present in an NI notify verify request event. |
| This mask is set in the valid_flags field of a |
| notify verify structure. */ |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocNiSuplNotifyVerifyValidMaskT_v02 valid_flags; |
| /**< Indicates which of the following fields are present in this value. |
| |
| Valid bitmasks: \n |
| - 0x00000001 -- SUPL_SERVER_INFO \n |
| - 0x00000002 -- SUPL_SESSION_ID \n |
| - 0x00000004 -- SUPL_HASH \n |
| - 0x00000008 -- SUPL_POS_METHOD \n |
| - 0x00000010 -- SUPL_DATA_CODING_SCHEME \n |
| - 0x00000020 -- SUPL_REQUESTOR_ID \n |
| - 0x00000040 -- SUPL_CLIENT_NAME \n |
| - 0x00000080 -- SUPL_QOP \n |
| - 0x00000100 -- SUPL_USER_RESP_TIMER |
| */ |
| |
| qmiLocNiSuplServerInfoStructT_v02 suplServerInfo; |
| /**< SUPL server information. */ |
| |
| uint8_t suplSessionId[QMI_LOC_NI_SUPL_SLP_SESSION_ID_BYTE_LENGTH_V02]; |
| /**< SUPL session ID. \n |
| - Type: Array of unsigned integers \n |
| - Maximum length of the array: 4 */ |
| |
| uint8_t suplHash[QMI_LOC_NI_SUPL_HASH_LENGTH_V02]; |
| /**< Hash for SUPL_INIT; used to validate that the message was not |
| corrupted. \n |
| - Type: Array of unsigned integers \n |
| - Length of the array: 8 */ |
| |
| qmiLocNiSuplPosMethodEnumT_v02 posMethod; |
| /**< GPS mode to be used for the fix. |
| |
| Valid values: \n |
| - 0x00000001 -- AGPS_SETASSISTED \n |
| - 0x00000002 -- AGPS_SETBASED \n |
| - 0x00000003 -- AGPS_SETASSISTED_PREF \n |
| - 0x00000004 -- AGPS_SETBASED_PREF \n |
| - 0x00000005 -- AUTONOMOUS_GPS \n |
| - 0x00000006 -- AFLT \n |
| - 0x00000007 -- ECID \n |
| - 0x00000008 -- EOTD \n |
| - 0x00000009 -- OTDOA \n |
| - 0x0000000A -- NO_POSITION |
| */ |
| |
| qmiLocNiDataCodingSchemeEnumT_v02 dataCodingScheme; |
| /**< Data coding scheme applies to both the requestor ID and the client |
| name. |
| |
| Valid values: \n |
| - 0x0000000C -- NI_SS_GERMAN \n |
| - 0x0000000D -- NI_SS_ENGLISH \n |
| - 0x0000000E -- NI_SS_ITALIAN \n |
| - 0x0000000F -- NI_SS_FRENCH \n |
| - 0x00000010 -- NI_SS_SPANISH \n |
| - 0x00000011 -- NI_SS_DUTCH \n |
| - 0x00000012 -- NI_SS_SWEDISH \n |
| - 0x00000013 -- NI_SS_DANISH \n |
| - 0x00000014 -- NI_SS_PORTUGUESE \n |
| - 0x00000015 -- NI_SS_FINNISH \n |
| - 0x00000016 -- NI_SS_NORWEGIAN \n |
| - 0x00000017 -- NI_SS_GREEK \n |
| - 0x00000018 -- NI_SS_TURKISH \n |
| - 0x00000019 -- NI_SS_HUNGARIAN \n |
| - 0x0000001A -- NI_SS_POLISH \n |
| - 0x0000001B -- NI_SS_LANGUAGE_UNSPEC \n |
| - 0x0000001C -- NI_SUPL_UTF8 \n |
| - 0x0000001D -- NI_SUPL_UCS2 \n |
| - 0x0000001E -- NI_SUPL_GSM_DEFAULT |
| */ |
| |
| qmiLocNiSuplFormattedStringStructT_v02 requestorId; |
| /**< Requestor ID. The encoding scheme for requestor_id is specified in |
| the dataCodingScheme field. */ |
| |
| qmiLocNiSuplFormattedStringStructT_v02 clientName; |
| /**< Client name. The encoding scheme for client_name is specified in |
| the dataCodingScheme field. */ |
| |
| qmiLocNiSuplQopStructT_v02 suplQop; |
| /**< SUPL QoP. */ |
| |
| uint16_t userResponseTimer; |
| /**< Time to wait for the user to respond. \n |
| - Type: Unsigned integer \n |
| - Units: Seconds */ |
| }qmiLocNiSuplNotifyVerifyStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCNILOCATIONTYPEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_NI_LOCATIONTYPE_CURRENT_LOCATION_V02 = 1, /**< Current location. */ |
| eQMI_LOC_NI_LOCATIONTYPE_CURRENT_OR_LAST_KNOWN_LOCATION_V02 = 2, /**< Last known location; may be current location. |
| Initial location. */ |
| eQMI_LOC_NI_LOCATIONTYPE_INITIAL_LOCATION_V02 = 3, |
| QMILOCNILOCATIONTYPEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocNiLocationTypeEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocNiDataCodingSchemeEnumT_v02 dataCodingScheme; |
| /**< Identifies the coding scheme of the coded string. |
| |
| Valid values: \n |
| - 0x0000000C -- NI_SS_GERMAN \n |
| - 0x0000000D -- NI_SS_ENGLISH \n |
| - 0x0000000E -- NI_SS_ITALIAN \n |
| - 0x0000000F -- NI_SS_FRENCH \n |
| - 0x00000010 -- NI_SS_SPANISH \n |
| - 0x00000011 -- NI_SS_DUTCH \n |
| - 0x00000012 -- NI_SS_SWEDISH \n |
| - 0x00000013 -- NI_SS_DANISH \n |
| - 0x00000014 -- NI_SS_PORTUGUESE \n |
| - 0x00000015 -- NI_SS_FINNISH \n |
| - 0x00000016 -- NI_SS_NORWEGIAN \n |
| - 0x00000017 -- NI_SS_GREEK \n |
| - 0x00000018 -- NI_SS_TURKISH \n |
| - 0x00000019 -- NI_SS_HUNGARIAN \n |
| - 0x0000001A -- NI_SS_POLISH \n |
| - 0x0000001B -- NI_SS_LANGUAGE_UNSPEC \n |
| - 0x0000001C -- NI_SUPL_UTF8 \n |
| - 0x0000001D -- NI_SUPL_UCS2 \n |
| - 0x0000001E -- NI_SUPL_GSM_DEFAULT |
| |
| */ |
| |
| uint32_t codedString_len; /**< Must be set to # of elements in codedString */ |
| uint8_t codedString[QMI_LOC_NI_CODEWORD_MAX_LENGTH_V02]; |
| /**< Coded string. \n |
| - Type: Array of bytes \n |
| - Maximum string length: 20 */ |
| }qmiLocNiUmtsCpCodedStringStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| typedef uint16_t qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02; |
| #define QMI_LOC_UMTS_CP_INVOKE_ID_MASK_V02 ((qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02)0x0001) /**< Mask to denote that the invoke ID |
| is present in an NI notify verify request event. |
| This mask is set in the valid flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_UMTS_CP_DATA_CODING_SCHEME_MASK_V02 ((qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02)0x0002) /**< Mask to denote that the data coding scheme |
| is present in an NI notify verify request event. |
| This mask is set in the valid flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_UMTS_CP_NOTIFICATION_TEXT_MASK_V02 ((qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02)0x0004) /**< Mask to denote that the notification text |
| is present in an NI notify verify request event. |
| This mask is set in the valid flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_UMTS_CP_CLIENT_ADDRESS_MASK_V02 ((qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02)0x0008) /**< Mask to denote that the client address |
| is present in an NI notify verify request event. |
| This mask is set in the valid flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_UMTS_CP_LOCATION_TYPE_MASK_V02 ((qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02)0x0010) /**< Mask to denote that the location type |
| is present in an NI notify verify request event. |
| This mask is set in the valid flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_UMTS_CP_REQUESTOR_ID_MASK_V02 ((qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02)0x0020) /**< Mask to denote that the requestor ID |
| is present in an NI notify verify request event. |
| This mask is set in the valid flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_UMTS_CP_CODEWORD_STRING_MASK_V02 ((qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02)0x0040) /**< Mask to denote that the code word string |
| is present in an NI notify verify request event. |
| This mask is set in the valid flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_UMTS_CP_SERVICE_TYPE_MASK_V02 ((qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02)0x0080) /**< Mask to denote that the service type |
| is present in an NI notify verify request event. |
| This mask is set in the valid flags field of a |
| notify verify structure. */ |
| #define QMI_LOC_UMTS_CP_USER_RESP_TIMER_MASK_V02 ((qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02)0x0100) /**< Mask to denote that the user response timer |
| is present in an NI notify verify request event. |
| This mask is set in the valid flags field of a |
| notify verify structure. */ |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocNiUmtsCpNotifyVerifyValidMaskT_v02 valid_flags; |
| /**< Fields that are valid in this value. |
| |
| Valid bitmasks: \n |
| - 0x0001 -- INVOKE_ID_MASK \n |
| - 0x0002 -- DATA_CODING_SCHEME_MASK \n |
| - 0x0004 -- NOTIFICATION_TEXT_MASK \n |
| - 0x0008 -- CLIENT_ADDRESS_MASK \n |
| - 0x0010 -- LOCATION_TYPE_MASK \n |
| - 0x0020 -- REQUESTOR_ID_MASK \n |
| - 0x0040 -- CODEWORD_STRING_MASK \n |
| - 0x0080 -- SERVICE_TYPE_MASK \n |
| - 0x0100 -- USER_RESP_TIMER_MASK |
| */ |
| |
| uint8_t invokeId; |
| /**< Supplementary Services invoke ID. \n |
| - Type: Unsigned integer */ |
| |
| qmiLocNiDataCodingSchemeEnumT_v02 dataCodingScheme; |
| /**< Type of data encoding scheme for the text. |
| Applies to both the notification text and the client address. |
| |
| Valid values: \n |
| - 0x0000000C -- NI_SS_GERMAN \n |
| - 0x0000000D -- NI_SS_ENGLISH \n |
| - 0x0000000E -- NI_SS_ITALIAN \n |
| - 0x0000000F -- NI_SS_FRENCH \n |
| - 0x00000010 -- NI_SS_SPANISH \n |
| - 0x00000011 -- NI_SS_DUTCH \n |
| - 0x00000012 -- NI_SS_SWEDISH \n |
| - 0x00000013 -- NI_SS_DANISH \n |
| - 0x00000014 -- NI_SS_PORTUGUESE \n |
| - 0x00000015 -- NI_SS_FINNISH \n |
| - 0x00000016 -- NI_SS_NORWEGIAN \n |
| - 0x00000017 -- NI_SS_GREEK \n |
| - 0x00000018 -- NI_SS_TURKISH \n |
| - 0x00000019 -- NI_SS_HUNGARIAN \n |
| - 0x0000001A -- NI_SS_POLISH \n |
| - 0x0000001B -- NI_SS_LANGUAGE_UNSPEC \n |
| - 0x0000001C -- NI_SUPL_UTF8 \n |
| - 0x0000001D -- NI_SUPL_UCS2 \n |
| - 0x0000001E -- NI_SUPL_GSM_DEFAULT |
| */ |
| |
| uint32_t notificationText_len; /**< Must be set to # of elements in notificationText */ |
| uint8_t notificationText[QMI_LOC_NI_MAX_CLIENT_NAME_LENGTH_V02]; |
| /**< Notification text; the encoding method is specified in |
| dataCodingScheme. \n |
| - Type: Array of bytes \n |
| - Maximum array length: 64 */ |
| |
| uint32_t clientAddress_len; /**< Must be set to # of elements in clientAddress */ |
| uint8_t clientAddress[QMI_LOC_NI_MAX_EXT_CLIENT_ADDRESS_V02]; |
| /**< Client address; the encoding method is specified in |
| dataCodingScheme. \n |
| - Maximum array length: 20 */ |
| |
| qmiLocNiLocationTypeEnumT_v02 locationType; |
| /**< Location type. |
| |
| Valid values: \n |
| - 0x00000001 -- CURRENT_LOCATION \n |
| - 0x00000002 -- CURRENT_OR_LAST_KNOWN_LOCATION \n |
| - 0x00000004 -- INITIAL_LOCATION |
| */ |
| |
| qmiLocNiUmtsCpCodedStringStructT_v02 requestorId; |
| /**< Requestor ID; the encoding method is specified in the |
| qmiLocNiUmtsCpCodedStringStructT.dataCodingScheme field. */ |
| |
| qmiLocNiUmtsCpCodedStringStructT_v02 codewordString; |
| /**< Codeword string; the encoding method is specified in the |
| qmiLocNiUmtsCpCodedStringStructT.dataCodingScheme field. */ |
| |
| uint8_t lcsServiceTypeId; |
| /**< Service type ID. \n |
| - Type: Unsigned integer */ |
| |
| uint16_t userResponseTimer; |
| /**< Time to wait for the user to respond. \n |
| - Type: Unsigned integer \n |
| - Units: Seconds */ |
| }qmiLocNiUmtsCpNotifyVerifyStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCNISERVICEINTERACTIONENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_NI_SERVICE_INTERACTION_ONGOING_NI_INCOMING_MO_V02 = 1, /**< Service interaction between ongoing NI and incoming MO sessions. */ |
| QMILOCNISERVICEINTERACTIONENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocNiServiceInteractionEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocNiVxNotifyVerifyStructT_v02 niVxReq; |
| /**< Ongoing NI session request; this information is currently not filled. */ |
| |
| qmiLocNiServiceInteractionEnumT_v02 serviceInteractionType; |
| /**< Service interaction type specified in qmiLocNiServiceInteractionEnumT. |
| |
| Valid values: \n |
| - 0x00000001 -- ONGOING_NI_INCOMING_MO |
| */ |
| }qmiLocNiVxServiceInteractionStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Indicates an NI notify/verify request to the control point. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Notification Type */ |
| qmiLocNiNotifyVerifyEnumT_v02 notificationType; |
| /**< Type of notification/verification performed. |
| |
| Valid values: \n |
| - 0x00000001 -- NO_NOTIFY_NO_VERIFY \n |
| - 0x00000002 -- NOTIFY_ONLY \n |
| - 0x00000003 -- ALLOW_NO_RESP \n |
| - 0x00000004 -- NOT_ALLOW_NO_RESP \n |
| - 0x00000005 -- PRIVACY_OVERRIDE |
| */ |
| |
| /* Optional */ |
| /* Network Initiated Vx Request */ |
| uint8_t NiVxInd_valid; /**< Must be set to true if NiVxInd is being passed */ |
| qmiLocNiVxNotifyVerifyStructT_v02 NiVxInd; |
| /**< \n Optional NI Vx request payload. */ |
| |
| /* Optional */ |
| /* Network Initiated SUPL Request */ |
| uint8_t NiSuplInd_valid; /**< Must be set to true if NiSuplInd is being passed */ |
| qmiLocNiSuplNotifyVerifyStructT_v02 NiSuplInd; |
| /**< \n Optional NI SUPL request payload. */ |
| |
| /* Optional */ |
| /* Network Initiated UMTS Control Plane Request */ |
| uint8_t NiUmtsCpInd_valid; /**< Must be set to true if NiUmtsCpInd is being passed */ |
| qmiLocNiUmtsCpNotifyVerifyStructT_v02 NiUmtsCpInd; |
| /**< \n Optional NI UMTS-CP request payload. */ |
| |
| /* Optional */ |
| /* Network Initiated Service Interaction Request */ |
| uint8_t NiVxServiceInteractionInd_valid; /**< Must be set to true if NiVxServiceInteractionInd is being passed */ |
| qmiLocNiVxServiceInteractionStructT_v02 NiVxServiceInteractionInd; |
| /**< \n Optional NI service interaction payload. */ |
| }qmiLocEventNiNotifyVerifyReqIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| char serverUrl[QMI_LOC_MAX_SERVER_ADDR_LENGTH_V02 + 1]; |
| /**< Assistance server URL. \n |
| - Type: NULL-terminated string \n |
| - Maximum string length (including NULL terminator): 256 */ |
| }qmiLocAssistanceServerUrlStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint32_t delayThreshold; |
| /**< The time server is to be skipped if a one-way delay to the server |
| exceeds this threshold. \n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds */ |
| |
| uint32_t timeServerList_len; /**< Must be set to # of elements in timeServerList */ |
| qmiLocAssistanceServerUrlStructT_v02 timeServerList[QMI_LOC_MAX_NTP_SERVERS_V02]; |
| /**< List of Time Server URL's that are recommended by the service for time |
| information, the list is ordered, the client is to use the first |
| server specified in the list as the primary URL to fetch NTP time, |
| the second one as secondary, and so on. \n |
| - Maximum server list items: 3 */ |
| }qmiLocTimeServerListStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Requests the control point to inject time information. */ |
| typedef struct { |
| |
| /* Optional */ |
| /* Time Server Info */ |
| uint8_t timeServerInfo_valid; /**< Must be set to true if timeServerInfo is being passed */ |
| qmiLocTimeServerListStructT_v02 timeServerInfo; |
| /**< \n Contains information about the time servers recommended by the |
| location service for NTP time. */ |
| }qmiLocEventInjectTimeReqIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint32_t maxFileSizeInBytes; |
| /**< Maximum allowable predicted orbits file size (in bytes). \n |
| - Type: Unsigned integer */ |
| |
| uint32_t maxPartSize; |
| /**< Maximum allowable predicted orbits file chunk size (in bytes). \n |
| - Type: Unsigned integer */ |
| }qmiLocPredictedOrbitsAllowedSizesStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint32_t serverList_len; /**< Must be set to # of elements in serverList */ |
| qmiLocAssistanceServerUrlStructT_v02 serverList[QMI_LOC_MAX_PREDICTED_ORBITS_SERVERS_V02]; |
| /**< List of predicted orbits URLs. The list is ordered, so the client |
| must use the first server specified in the list as the primary URL |
| from which to download predicted orbits data, the second one as |
| secondary, and so on. \n |
| - Maximum number of servers that can be specified: 3 */ |
| }qmiLocPredictedOrbitsServerListStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Requests the control point to inject predicted orbits data. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Allowed Sizes */ |
| qmiLocPredictedOrbitsAllowedSizesStructT_v02 allowedSizes; |
| /**< \n Maximum part and file size allowed to be injected in the engine. */ |
| |
| /* Optional */ |
| /* Server List */ |
| uint8_t serverList_valid; /**< Must be set to true if serverList is being passed */ |
| qmiLocPredictedOrbitsServerListStructT_v02 serverList; |
| /**< \n List of servers that can be used by the client to download |
| predicted orbits data. */ |
| }qmiLocEventInjectPredictedOrbitsReqIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Requests the control point to inject a position. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Latitude */ |
| double latitude; |
| /**< Latitude (specified in WGS84 datum).\n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: -90.0 to 90.0 \n |
| - Positive values indicate northern latitude \n |
| - Negative values indicate southern latitude */ |
| |
| /* Mandatory */ |
| /* Longitude */ |
| double longitude; |
| /**< Longitude (specified in WGS84 datum).\n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: -180.0 to 180.0 \n |
| - Positive values indicate eastern longitude \n |
| - Negative values indicate western longitude */ |
| |
| /* Mandatory */ |
| /* Circular Horizontal Uncertainty */ |
| float horUncCircular; |
| /**< Horizontal position uncertainty (circular).\n |
| - Type: Floating point \n |
| - Units: Meters */ |
| |
| /* Mandatory */ |
| /* UTC Timestamp */ |
| uint64_t timestampUtc; |
| /**< UTC timestamp.\n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds since Jan. 1, 1970 */ |
| }qmiLocEventInjectPositionReqIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCENGINESTATEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_ENGINE_STATE_ON_V02 = 1, /**< Location engine is on. |
| Location engine is off. */ |
| eQMI_LOC_ENGINE_STATE_OFF_V02 = 2, |
| QMILOCENGINESTATEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocEngineStateEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Sends the engine state to the control point. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Engine State */ |
| qmiLocEngineStateEnumT_v02 engineState; |
| /**< Location engine state. |
| |
| Valid values: \n |
| - 0x00000001 -- ON \n |
| - 0x00000002 -- OFF |
| */ |
| }qmiLocEventEngineStateIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCFIXSESSIONSTATEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_FIX_SESSION_STARTED_V02 = 1, /**< Location fix session has started. |
| Location fix session has ended. */ |
| eQMI_LOC_FIX_SESSION_FINISHED_V02 = 2, |
| QMILOCFIXSESSIONSTATEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocFixSessionStateEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Sends the fix session state to the control point. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Session State */ |
| qmiLocFixSessionStateEnumT_v02 sessionState; |
| /**< LOC fix session state. |
| |
| Valid values: \n |
| - 0x00000001 -- STARTED \n |
| - 0x00000002 -- FINISHED |
| */ |
| |
| /* Optional */ |
| /* Session ID */ |
| uint8_t sessionId_valid; /**< Must be set to true if sessionId is being passed */ |
| uint8_t sessionId; |
| /**< ID of the session that was specified in the Start request. |
| This may not be specified for a fix session corresponding to |
| a network-initiated request. \n |
| - Type: Unsigned integer \n |
| - Range: 0 to 255 */ |
| }qmiLocEventFixSessionStateIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCWIFIREQUESTENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_WIFI_START_PERIODIC_HI_FREQ_FIXES_V02 = 0, /**< Start periodic fixes with high frequency. */ |
| eQMI_LOC_WIFI_START_PERIODIC_KEEP_WARM_V02 = 1, /**< Keep warm for low frequency fixes without data downloads. |
| Stop periodic fixes request. */ |
| eQMI_LOC_WIFI_STOP_PERIODIC_FIXES_V02 = 2, |
| QMILOCWIFIREQUESTENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocWifiRequestEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Sends a WiFi request to the control point. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Request Type */ |
| qmiLocWifiRequestEnumT_v02 requestType; |
| /**< Request type as specified in qmiWifiRequestEnumT. |
| |
| Valid values: \n |
| - 0x00000000 -- START_PERIODIC_HI_FREQ_FIXES \n |
| - 0x00000001 -- START_PERIODIC_KEEP_WARM \n |
| - 0x00000002 -- STOP_PERIODIC_FIXES |
| */ |
| |
| /* Optional */ |
| /* Time Between Fixes */ |
| uint8_t tbfInMs_valid; /**< Must be set to true if tbfInMs is being passed */ |
| uint16_t tbfInMs; |
| /**< Time between fixes for a periodic request.\n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds */ |
| }qmiLocEventWifiReqIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint16_t samplesPerBatch; |
| /**< Specifies the number of samples per batch the GNSS location engine is to |
| receive. The sensor sampling frequency can be computed as follows: \n |
| |
| samplingFrequency = samplesPerBatch * batchesPerSecond \n |
| |
| samplesPerBatch must be a non-zero positive value. |
| */ |
| |
| uint16_t batchesPerSecond; |
| /**< Number of sensor-data batches the GNSS location engine is to receive |
| per second. The rate is specified in integral number of batches per |
| second (Hz). \n |
| |
| batchesPerSecond must be a non-zero positive value. |
| */ |
| }qmiLocSensorControlConfigSamplingSpecStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint8_t injectEnable; |
| /**< Whether the GNSS location engine is ready to accept data from this |
| sensor. |
| |
| Valid values: \n |
| - 0x01 (TRUE) -- GNSS location engine is ready to accept sensor data \n |
| - 0x00 (FALSE) -- GNSS location engine is not ready to accept sensor |
| data |
| */ |
| |
| qmiLocSensorControlConfigSamplingSpecStructT_v02 dataFrequency; |
| /**< Rate at which the GNSS engine would like the sensor to be sampled. \n |
| The rate is specified in integral number of samples per second (Hz)\n |
| and batches per second. |
| */ |
| }qmiLocSensorReadyStatusStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Notifies the control point if the GNSS location engine is |
| ready to accept sensor data. */ |
| typedef struct { |
| |
| /* Optional */ |
| /* Accelerometer Accept Ready */ |
| uint8_t accelReady_valid; /**< Must be set to true if accelReady is being passed */ |
| qmiLocSensorReadyStatusStructT_v02 accelReady; |
| /**< \n Whether the GNSS location engine is ready to accept accelerometer |
| sensor data. |
| */ |
| |
| /* Optional */ |
| /* Gyrometer Accept Ready */ |
| uint8_t gyroReady_valid; /**< Must be set to true if gyroReady is being passed */ |
| qmiLocSensorReadyStatusStructT_v02 gyroReady; |
| /**< \n Whether the GNSS location engine is ready to accept gyrometer sensor |
| data. |
| */ |
| }qmiLocEventSensorStreamingReadyStatusIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Notifies the control point to inject time synchronization |
| data. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Opaque Time Sync Reference Counter */ |
| uint32_t refCounter; |
| /**< This TLV is sent to registered control points. It is sent by |
| the location engine when it needs to synchronize location engine and |
| control point (sensor processor) times. |
| This TLV must be echoed back in the Time Sync Inject request. \n |
| - Type: Unsigned integer */ |
| }qmiLocEventTimeSyncReqIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Requests the control point to enable Stationary Position |
| Indicator (SPI) streaming reports. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Enable/Disable SPI Requests */ |
| uint8_t enable; |
| /**< Whether the client is to start or stop sending an SPI status stream.\n |
| - 0x01 (TRUE) -- Client is to start sending an SPI status stream\n |
| - 0x00 (FALSE) -- Client is to stop sending an SPI status stream */ |
| }qmiLocEventSetSpiStreamingReportIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCWWANTYPEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_WWAN_TYPE_INTERNET_V02 = 0, /**< Bring up the WWAN type used for an Internet connection. |
| Bring up the WWAN type used for AGNSS connections. */ |
| eQMI_LOC_WWAN_TYPE_AGNSS_V02 = 1, |
| QMILOCWWANTYPEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocWWANTypeEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSERVERREQUESTENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SERVER_REQUEST_OPEN_V02 = 1, /**< Open a connection to the location server. |
| Close a connection to the location server. */ |
| eQMI_LOC_SERVER_REQUEST_CLOSE_V02 = 2, |
| QMILOCSERVERREQUESTENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocServerRequestEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Requests the client to open or close a connection |
| to the assisted GPS location server. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Connection Handle */ |
| uint32_t connHandle; |
| /**< Identifies a connection across Open and Close request events. \n |
| - Type: Unsigned integer */ |
| |
| /* Mandatory */ |
| /* Request Type */ |
| qmiLocServerRequestEnumT_v02 requestType; |
| /**< Open or close a connection to the location server. |
| |
| Valid values: \n |
| - 0x00000001 -- OPEN \n |
| - 0x00000002 -- CLOSE |
| */ |
| |
| /* Mandatory */ |
| /* WWAN Type */ |
| qmiLocWWANTypeEnumT_v02 wwanType; |
| /**< Identifies the WWAN type for this request. \n |
| Valid values: \n |
| - 0x00000000 -- WWAN_TYPE_INTERNET \n |
| - 0x00000001 -- WWAN_TYPE_AGNSS |
| */ |
| }qmiLocEventLocationServerConnectionReqIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSTATUSENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SUCCESS_V02 = 0, /**< Request was completed successfully. */ |
| eQMI_LOC_GENERAL_FAILURE_V02 = 1, /**< Request failed because of a general failure. */ |
| eQMI_LOC_UNSUPPORTED_V02 = 2, /**< Request failed because it is unsupported. */ |
| eQMI_LOC_INVALID_PARAMETER_V02 = 3, /**< Request failed because it contained invalid parameters. */ |
| eQMI_LOC_ENGINE_BUSY_V02 = 4, /**< Request failed because the engine is busy. */ |
| eQMI_LOC_PHONE_OFFLINE_V02 = 5, /**< Request failed because the phone is offline. |
| Request failed because it timed out. */ |
| eQMI_LOC_TIMEOUT_V02 = 6, |
| QMILOCSTATUSENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocStatusEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetServiceRevisionReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetServiceRevisionReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Client can query the service revision using this message. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Revision Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Revision request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Mandatory */ |
| /* Interface Definition Minor Revision */ |
| uint32_t revision; |
| /**< Revision of the service. This is the minor revision of the interface that |
| the service implements. Minor revision updates of the service are always |
| backward compatible. \n |
| - Type: Unsigned integer */ |
| }qmiLocGetServiceRevisionIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetFixCriteriaReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetFixCriteriaReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the fix criteria from the location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Fix Criteria Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Fix Criteria request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Horizontal Accuracy */ |
| uint8_t horizontalAccuracyLevel_valid; /**< Must be set to true if horizontalAccuracyLevel is being passed */ |
| qmiLocAccuracyLevelEnumT_v02 horizontalAccuracyLevel; |
| /**< Horizontal accuracy level. |
| |
| Valid values: \n |
| - 0x00000001 -- LOW: Client requires low horizontal accuracy. \n |
| - 0x00000002 -- MED: Client requires medium horizontal accuracy. \n |
| - 0x00000003 -- HIGH: Client requires high horizontal accuracy. |
| */ |
| |
| /* Optional */ |
| /* Enable/Disable Intermediate Fixes */ |
| uint8_t intermediateReportState_valid; /**< Must be set to true if intermediateReportState is being passed */ |
| qmiLocIntermediateReportStateEnumT_v02 intermediateReportState; |
| /**< Intermediate Report state (ON, OFF).\n |
| The client must explicitly set this field to OFF to stop receiving |
| intermediate position reports. Intermediate position reports are |
| generated at \n 1 Hz and are ON by default. If intermediate reports |
| are turned ON, the client receives position reports even if the |
| accuracy criteria is not met. The status in the position report is |
| set to IN_PROGRESS for intermediate reports. \n |
| Valid values: \n |
| - 0x00000001 -- ON: Client is interested in receiving intermediate reports \n |
| - 0x00000002 -- OFF: Client is not interested in receiving intermediate reports |
| */ |
| |
| /* Optional */ |
| /* Mimimum Interval Between Fixes */ |
| uint8_t minInterval_valid; /**< Must be set to true if minInterval is being passed */ |
| uint32_t minInterval; |
| /**< Time that must elapse before alerting the client. \n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds */ |
| }qmiLocGetFixCriteriaIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCNIUSERRESPENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_NI_LCS_NOTIFY_VERIFY_ACCEPT_V02 = 1, /**< User accepted notify verify request. */ |
| eQMI_LOC_NI_LCS_NOTIFY_VERIFY_DENY_V02 = 2, /**< User denied notify verify request. |
| User did not respond to notify verify request. */ |
| eQMI_LOC_NI_LCS_NOTIFY_VERIFY_NORESP_V02 = 3, |
| QMILOCNIUSERRESPENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocNiUserRespEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Sends the NI user response back to the engine; success or |
| failure is reported in a separate indication. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* User Response */ |
| qmiLocNiUserRespEnumT_v02 userResp; |
| /**< User accepted or denied. |
| |
| Valid values: \n |
| - 0x00000001 -- NOTIFY_VERIFY_ACCEPT \n |
| - 0x00000002 -- NOTIFY_VERIFY_DENY \n |
| - 0x00000003 -- NOTIFY_VERIFY_NORESP |
| */ |
| |
| /* Mandatory */ |
| /* Notification Type */ |
| qmiLocNiNotifyVerifyEnumT_v02 notificationType; |
| /**< Type of notification/verification performed. |
| |
| Valid values: \n |
| - 0x00000001 -- NO_NOTIFY_NO_VERIFY \n |
| - 0x00000002 -- NOTIFY_ONLY \n |
| - 0x00000003 -- ALLOW_NO_RESP \n |
| - 0x00000004 -- NOT_ALLOW_NO_RESP \n |
| - 0x00000005 -- PRIVACY_OVERRIDE |
| */ |
| |
| /* Optional */ |
| /* Network Initiated Vx Request */ |
| uint8_t NiVxPayload_valid; /**< Must be set to true if NiVxPayload is being passed */ |
| qmiLocNiVxNotifyVerifyStructT_v02 NiVxPayload; |
| /**< \n Optional NI VX request payload. */ |
| |
| /* Optional */ |
| /* Network Initiated SUPL Request */ |
| uint8_t NiSuplPayload_valid; /**< Must be set to true if NiSuplPayload is being passed */ |
| qmiLocNiSuplNotifyVerifyStructT_v02 NiSuplPayload; |
| /**< \n Optional NI SUPL request payload. */ |
| |
| /* Optional */ |
| /* Network Initiated UMTS Control Plane Request */ |
| uint8_t NiUmtsCpPayload_valid; /**< Must be set to true if NiUmtsCpPayload is being passed */ |
| qmiLocNiUmtsCpNotifyVerifyStructT_v02 NiUmtsCpPayload; |
| /**< \n Optional NI UMTS-CP request payload. */ |
| |
| /* Optional */ |
| /* Network Initiated Service Interaction Request */ |
| uint8_t NiVxServiceInteractionPayload_valid; /**< Must be set to true if NiVxServiceInteractionPayload is being passed */ |
| qmiLocNiVxServiceInteractionStructT_v02 NiVxServiceInteractionPayload; |
| /**< \n Optional NI service interaction payload. */ |
| }qmiLocNiUserRespReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Sends the NI user response back to the engine; success or |
| failure is reported in a separate indication. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* NI User Response Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the NI User Response request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocNiUserRespIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCPREDICTEDORBITSDATAFORMATENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_PREDICTED_ORBITS_XTRA_V02 = 0, /**< Default is QCOM-XTRA format. */ |
| QMILOCPREDICTEDORBITSDATAFORMATENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocPredictedOrbitsDataFormatEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Injects predicted orbits data. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Total Size */ |
| uint32_t totalSize; |
| /**< Total size of the predicted orbits data to be injected. \n |
| - Type: Unsigned integer \n |
| - Units: Bytes */ |
| |
| /* Mandatory */ |
| /* Total Parts */ |
| uint16_t totalParts; |
| /**< Total number of parts into which the predicted orbits data is |
| divided. \n |
| - Type: Unsigned integer */ |
| |
| /* Mandatory */ |
| /* Part Number */ |
| uint16_t partNum; |
| /**< Number of the current predicted orbits data part; starts at 1. \n |
| - Type: Unsigned integer */ |
| |
| /* Mandatory */ |
| /* Data */ |
| uint32_t partData_len; /**< Must be set to # of elements in partData */ |
| char partData[QMI_LOC_MAX_PREDICTED_ORBITS_PART_LEN_V02]; |
| /**< Predicted orbits data. \n |
| - Type: Array of bytes \n |
| - Maximum length of the array: 1024 |
| */ |
| |
| /* Optional */ |
| /* Format Type */ |
| uint8_t formatType_valid; /**< Must be set to true if formatType is being passed */ |
| qmiLocPredictedOrbitsDataFormatEnumT_v02 formatType; |
| /**< Predicted orbits data format. |
| |
| Valid values: \n |
| - 0x00000000 -- PREDICTED_ORBITS_XTRA |
| */ |
| }qmiLocInjectPredictedOrbitsDataReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Injects predicted orbits data. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Data Injection Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Data Injection request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Part Number */ |
| uint8_t partNum_valid; /**< Must be set to true if partNum is being passed */ |
| uint16_t partNum; |
| /**< Number of the predicted orbits data part for which this indication |
| is sent; starts at 1. \n |
| - Type: Unsigned integer */ |
| }qmiLocInjectPredictedOrbitsDataIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetPredictedOrbitsDataSourceReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetPredictedOrbitsDataSourceReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the predicted orbits data source. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Predicted Oribits Data Source Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the query request for a predicted orbits data source. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Allowed Sizes */ |
| uint8_t allowedSizes_valid; /**< Must be set to true if allowedSizes is being passed */ |
| qmiLocPredictedOrbitsAllowedSizesStructT_v02 allowedSizes; |
| /**< \n Maximum part and file size allowed to be injected in the engine. */ |
| |
| /* Optional */ |
| /* Server List */ |
| uint8_t serverList_valid; /**< Must be set to true if serverList is being passed */ |
| qmiLocPredictedOrbitsServerListStructT_v02 serverList; |
| /**< \n List of servers that can be used by the client to download |
| predicted orbits data. */ |
| }qmiLocGetPredictedOrbitsDataSourceIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetPredictedOrbitsDataValidityReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetPredictedOrbitsDataValidityReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint64_t startTimeInUTC; |
| /**< Predicted orbits data is valid starting from this time. \n |
| - Type: Unsigned integer \n |
| - Units: Seconds (since Jan. 1, 1970) |
| */ |
| |
| uint16_t durationHours; |
| /**< Duration from the start time for which the data is valid.\n |
| - Type: Unsigned integer \n |
| - Units: Hours |
| */ |
| }qmiLocPredictedOrbitsDataValidityStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the predicted orbits data validity. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Predicted Orbits Data Validity Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the query request for predicted orbits data validity. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Validity Info */ |
| uint8_t validityInfo_valid; /**< Must be set to true if validityInfo is being passed */ |
| qmiLocPredictedOrbitsDataValidityStructT_v02 validityInfo; |
| }qmiLocGetPredictedOrbitsDataValidityIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Injects UTC time in the location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* UTC Time */ |
| uint64_t timeUtc; |
| /**< UTC time since Jan. 1, 1970.\n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds |
| */ |
| |
| /* Mandatory */ |
| /* Time Uncertainty */ |
| uint32_t timeUnc; |
| /**< Time uncertainty.\n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds |
| */ |
| }qmiLocInjectUtcTimeReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Injects UTC time in the location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* UTC Time Injection Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the UTC Time Injection request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocInjectUtcTimeIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCALTSRCENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_ALT_SRC_UNKNOWN_V02 = 0, /**< Source is unknown. */ |
| eQMI_LOC_ALT_SRC_GPS_V02 = 1, /**< GPS is the source. */ |
| eQMI_LOC_ALT_SRC_CELL_ID_V02 = 2, /**< Cell ID provided the source. */ |
| eQMI_LOC_ALT_SRC_ENHANCED_CELL_ID_V02 = 3, /**< Source is enhanced cell ID. */ |
| eQMI_LOC_ALT_SRC_WIFI_V02 = 4, /**< WiFi is the source. */ |
| eQMI_LOC_ALT_SRC_TERRESTRIAL_V02 = 5, /**< Terrestrial source. */ |
| eQMI_LOC_ALT_SRC_TERRESTRIAL_HYBRID_V02 = 6, /**< Hybrid terrestrial source. */ |
| eQMI_LOC_ALT_SRC_ALTITUDE_DATABASE_V02 = 7, /**< Altitude database is the source. */ |
| eQMI_LOC_ALT_SRC_BAROMETRIC_ALTIMETER_V02 = 8, /**< Barometric altimeter is the source. |
| Other sources. */ |
| eQMI_LOC_ALT_SRC_OTHER_V02 = 9, |
| QMILOCALTSRCENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocAltSrcEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCALTSRCLINKAGEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_ALT_SRC_LINKAGE_NOT_SPECIFIED_V02 = 0, /**< Not specified. */ |
| eQMI_LOC_ALT_SRC_LINKAGE_FULLY_INTERDEPENDENT_V02 = 1, /**< Fully interdependent. */ |
| eQMI_LOC_ALT_SRC_LINKAGE_DEPENDS_ON_LAT_LONG_V02 = 2, /**< Depends on latitude and longitude. |
| Fully independent. */ |
| eQMI_LOC_ALT_SRC_LINKAGE_FULLY_INDEPENDENT_V02 = 3, |
| QMILOCALTSRCLINKAGEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocAltSrcLinkageEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCALTSRCUNCERTAINTYCOVERAGEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_ALT_UNCERTAINTY_NOT_SPECIFIED_V02 = 0, /**< Not specified. */ |
| eQMI_LOC_ALT_UNCERTAINTY_POINT_V02 = 1, /**< Altitude uncertainty is valid at the injected horizontal |
| position coordinates only. |
| Altitude uncertainty applies to the position of the device |
| regardless of horizontal position (within the horizontal |
| uncertainty region, if provided). */ |
| eQMI_LOC_ALT_UNCERTAINTY_FULL_V02 = 2, |
| QMILOCALTSRCUNCERTAINTYCOVERAGEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocAltSrcUncertaintyCoverageEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocAltSrcEnumT_v02 source; |
| /**< Specifies the source of the altitude. |
| |
| Valid values: \n |
| - 0x00000000 -- ALT_SRC_UNKNOWN \n |
| - 0x00000001 -- ALT_SRC_GPS \n |
| - 0x00000002 -- ALT_SRC_CELL_ID \n |
| - 0x00000003 -- ALT_SRC_ENHANCED_CELL_ID \n |
| - 0x00000004 -- ALT_SRC_WIFI \n |
| - 0x00000005 -- ALT_SRC_TERRESTRIAL \n |
| - 0x00000006 -- ALT_SRC_TERRESTRIAL_HYBRID \n |
| - 0x00000007 -- ALT_SRC_ALTITUDE_DATABASE \n |
| - 0x00000008 -- ALT_SRC_BAROMETRIC_ALTIMETER \n |
| - 0x00000009 -- ALT_SRC_OTHER |
| */ |
| |
| qmiLocAltSrcLinkageEnumT_v02 linkage; |
| /**< Specifies the dependency between the horizontal and |
| altitude position components. |
| |
| Valid values: \n |
| - 0x00000000 -- SRC_LINKAGE_NOT_SPECIFIED \n |
| - 0x00000001 -- SRC_LINKAGE_FULLY_INTERDEPENDENT \n |
| - 0x00000002 -- SRC_LINKAGE_DEPENDS_ON_LAT_LONG \n |
| - 0x00000003 -- SRC_LINKAGE_FULLY_INDEPENDENT |
| */ |
| |
| qmiLocAltSrcUncertaintyCoverageEnumT_v02 coverage; |
| /**< Specifies the region of uncertainty. |
| |
| Valid values: \n |
| - 0x00000000 -- UNCERTAINTY_NOT_SPECIFIED \n |
| - 0x00000001 -- UNCERTAINTY_POINT: Altitude uncertainty is valid at the |
| injected horizontal position coordinates only. \n |
| - 0x00000002 -- UNCERTAINTY_FULL: Altitude uncertainty applies to the |
| position of the device regardless of horizontal position |
| (within the horizontal uncertainty region, if provided). |
| */ |
| }qmiLocAltitudeSrcInfoStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCPOSITIONSRCENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_POSITION_SRC_GNSS_V02 = 0, /**< Position Source is GNSS. */ |
| eQMI_LOC_POSITION_SRC_CELLID_V02 = 1, /**< Position Source is Cell ID. */ |
| eQMI_LOC_POSITION_SRC_ENH_CELLID_V02 = 2, /**< Position Source is Enhanced Cell ID. */ |
| eQMI_LOC_POSITION_SRC_WIFI_V02 = 3, /**< Position Source is WiFi. */ |
| eQMI_LOC_POSITION_SRC_TERRESTRIAL_V02 = 4, /**< Position Source is Terrestrial. */ |
| eQMI_LOC_POSITION_SRC_GNSS_TERRESTRIAL_HYBRID_V02 = 5, /**< Position Source is GNSS Terrestrial Hybrid. |
| Other sources. */ |
| eQMI_LOC_POSITION_SRC_OTHER_V02 = 6, |
| QMILOCPOSITIONSRCENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocPositionSrcEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Injects a position to the location engine. */ |
| typedef struct { |
| |
| /* Optional */ |
| /* Latitude */ |
| uint8_t latitude_valid; /**< Must be set to true if latitude is being passed */ |
| double latitude; |
| /**< Latitude (specified in WGS84 datum).\n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: -90.0 to 90.0 \n |
| - Positive values indicate northern latitude \n |
| - Negative values indicate southern latitude |
| */ |
| |
| /* Optional */ |
| /* Longitude */ |
| uint8_t longitude_valid; /**< Must be set to true if longitude is being passed */ |
| double longitude; |
| /**< Longitude (specified in WGS84 datum).\n |
| - Type: Floating point \n |
| - Units: Degrees \n |
| - Range: -180.0 to 180.0 \n |
| - Positive values indicate eastern longitude \n |
| - Negative values indicate western longitude |
| */ |
| |
| /* Optional */ |
| /* Circular Horizontal Uncertainty */ |
| uint8_t horUncCircular_valid; /**< Must be set to true if horUncCircular is being passed */ |
| float horUncCircular; |
| /**< Horizontal position uncertainty (circular).\n |
| - Type: Floating point \n |
| - Units: Meters */ |
| |
| /* Optional */ |
| /* Horizontal Confidence */ |
| uint8_t horConfidence_valid; /**< Must be set to true if horConfidence is being passed */ |
| uint8_t horConfidence; |
| /**< Horizontal confidence, as defined by ETSI TS 101 109.\n |
| - Type: Unsigned integer \n |
| - Units: Percent (0 to 99) \n |
| - 0 -- invalid value \n |
| - 100 to 256 -- not used \n |
| - If 100 is received, reinterpret to 99 \n |
| This field must be specified together with horizontal uncertainty. |
| If not specified, the default value will be 50. */ |
| |
| /* Optional */ |
| /* Horizontal Reliability */ |
| uint8_t horReliability_valid; /**< Must be set to true if horReliability is being passed */ |
| qmiLocReliabilityEnumT_v02 horReliability; |
| /**< Specifies the reliability of the horizontal position. |
| |
| Valid values: \n |
| - 0x00000000 -- eQMI_LOC_RELIABILITY_NOT_SET \n |
| - 0x00000001 -- eQMI_LOC_RELIABILITY_VERY_LOW \n |
| - 0x00000002 -- eQMI_LOC_RELIABILITY_LOW \n |
| - 0x00000003 -- eQMI_LOC_RELIABILITY_MEDIUM \n |
| - 0x00000004 -- eQMI_LOC_RELIABILITY_HIGH |
| */ |
| |
| /* Optional */ |
| /* Altitude With Respect to Ellipsoid */ |
| uint8_t altitudeWrtEllipsoid_valid; /**< Must be set to true if altitudeWrtEllipsoid is being passed */ |
| float altitudeWrtEllipsoid; |
| /**< Altitude with respect to the WGS84 ellipsoid.\n |
| - Type: Floating point \n |
| - Units: Meters; positive = height, negative = depth */ |
| |
| /* Optional */ |
| /* Altitude With Respect to Sea Level */ |
| uint8_t altitudeWrtMeanSeaLevel_valid; /**< Must be set to true if altitudeWrtMeanSeaLevel is being passed */ |
| float altitudeWrtMeanSeaLevel; |
| /**< Altitude with respect to mean sea level.\n |
| - Type: Floating point \n |
| - Units: Meters */ |
| |
| /* Optional */ |
| /* Vertical Uncertainty */ |
| uint8_t vertUnc_valid; /**< Must be set to true if vertUnc is being passed */ |
| float vertUnc; |
| /**< Vertical uncertainty. This is mandatory if either altitudeWrtEllipsoid |
| or altitudeWrtMeanSeaLevel is specified.\n |
| - Type: Floating point \n |
| - Units: Meters */ |
| |
| /* Optional */ |
| /* Vertical Confidence */ |
| uint8_t vertConfidence_valid; /**< Must be set to true if vertConfidence is being passed */ |
| uint8_t vertConfidence; |
| /**< Vertical confidence, as defined by ETSI TS 101 109.\n |
| - Type: Unsigned integer \n |
| - Units: Percent (0-99) \n |
| - 0 -- invalid value\n |
| - 100 to 256 -- not used \n |
| - If 100 is received, reinterpret to 99\n |
| This field must be specified together with the vertical uncertainty. |
| If not specified, the default value will be 50. */ |
| |
| /* Optional */ |
| /* Vertical Reliability */ |
| uint8_t vertReliability_valid; /**< Must be set to true if vertReliability is being passed */ |
| qmiLocReliabilityEnumT_v02 vertReliability; |
| /**< Specifies the reliability of the vertical position. |
| |
| Valid values: \n |
| - 0x00000000 -- eQMI_LOC_RELIABILITY_NOT_SET \n |
| - 0x00000001 -- eQMI_LOC_RELIABILITY_VERY_LOW \n |
| - 0x00000002 -- eQMI_LOC_RELIABILITY_LOW \n |
| - 0x00000003 -- eQMI_LOC_RELIABILITY_MEDIUM \n |
| - 0x00000004 -- eQMI_LOC_RELIABILITY_HIGH |
| */ |
| |
| /* Optional */ |
| /* Altitude Source Info */ |
| uint8_t altSourceInfo_valid; /**< Must be set to true if altSourceInfo is being passed */ |
| qmiLocAltitudeSrcInfoStructT_v02 altSourceInfo; |
| /**< \n Specifies information regarding the altitude source. */ |
| |
| /* Optional */ |
| /* UTC Timestamp */ |
| uint8_t timestampUtc_valid; /**< Must be set to true if timestampUtc is being passed */ |
| uint64_t timestampUtc; |
| /**< UTC timestamp. \n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds (since Jan. 1, 1970) */ |
| |
| /* Optional */ |
| /* Position Age */ |
| uint8_t timestampAge_valid; /**< Must be set to true if timestampAge is being passed */ |
| int32_t timestampAge; |
| /**< Position age, which is an estimate of how long ago this fix was made. \n |
| - Type: Signed integer \n |
| - Units: Milliseconds */ |
| |
| /* Optional */ |
| /* Position Source */ |
| uint8_t positionSrc_valid; /**< Must be set to true if positionSrc is being passed */ |
| qmiLocPositionSrcEnumT_v02 positionSrc; |
| /**< Source from where this position was obtained. |
| Valid values: \n |
| - 0x00000000 -- eQMI_LOC_POSITION_SRC_GNSS \n |
| - 0x00000001 -- eQMI_LOC_POSITION_SRC_CELLID \n |
| - 0x00000002 -- eQMI_LOC_POSITION_SRC_ENH_CELLID \n |
| - 0x00000003 -- eQMI_LOC_POSITION_SRC_WIFI \n |
| - 0x00000004 -- eQMI_LOC_POSITION_SRC_TERRESTRIAL \n |
| - 0x00000005 -- eQMI_LOC_POSITION_SRC_GNSS_TERRESTRIAL_HYBRID \n |
| - 0x00000006 -- eQMI_LOC_POSITION_SRC_OTHER \n |
| |
| If altitude is specified and altitude source is not specified, the engine |
| assumes that altitude was obtained using the specified Position source. |
| If altitude and altitude source both are specified then the engine assumes |
| that only latitude, longitude were obtained using the specified Position |
| Source. |
| */ |
| }qmiLocInjectPositionReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Injects a position to the location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* UTC Position Injection Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the UTC Position Injection request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocInjectPositionIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCLOCKENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_LOCK_NONE_V02 = 1, /**< Do not lock any position sessions. */ |
| eQMI_LOC_LOCK_MI_V02 = 2, /**< Lock mobile-initiated position sessions. */ |
| eQMI_LOC_LOCK_MT_V02 = 3, /**< Lock mobile-terminated position sessions. |
| Lock all position sessions. */ |
| eQMI_LOC_LOCK_ALL_V02 = 4, |
| QMILOCLOCKENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocLockEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Sets the location engine lock. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Lock Type */ |
| qmiLocLockEnumT_v02 lockType; |
| /**< Type of lock. |
| |
| Valid values: \n |
| - 0x00000001 -- LOCK_NONE \n |
| - 0x00000002 -- LOCK_MI \n |
| - 0x00000003 -- LOCK_MT \n |
| - 0x00000004 -- LOCK_ALL |
| |
| */ |
| }qmiLocSetEngineLockReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Sets the location engine lock. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Engine Lock Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Engine Lock request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetEngineLockIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetEngineLockReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetEngineLockReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the location engine lock. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Engine Lock Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Engine Lock request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Lock Type */ |
| uint8_t lockType_valid; /**< Must be set to true if lockType is being passed */ |
| qmiLocLockEnumT_v02 lockType; |
| /**< Type of lock. |
| |
| Valid values: \n |
| - 0x00000001 -- LOCK_NONE \n |
| - 0x00000002 -- LOCK_MI \n |
| - 0x00000003 -- LOCK_MT \n |
| - 0x00000004 -- LOCK_ALL |
| */ |
| }qmiLocGetEngineLockIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Sets the SBAS configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* SBAS Config */ |
| uint8_t sbasConfig; |
| /**< Whether SBAS configuration is enabled. \n |
| - 0x01 (TRUE) -- SBAS configuration is enabled \n |
| - 0x00 (FALSE) -- SBAS configuration is disabled */ |
| }qmiLocSetSbasConfigReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Sets the SBAS configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set SBAS Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set SBAS Configuration request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetSbasConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetSbasConfigReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetSbasConfigReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the SBAS configuration from the location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get SBAS Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get SBAS Configuration request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* SBAS Config */ |
| uint8_t sbasConfig_valid; /**< Must be set to true if sbasConfig is being passed */ |
| uint8_t sbasConfig; |
| /**< Whether SBAS configuration is enabled. \n |
| - 0x01 (TRUE) -- SBAS configuration is enabled \n |
| - 0x00 (FALSE) -- SBAS configuration is disabled */ |
| }qmiLocGetSbasConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| typedef uint32_t qmiLocNmeaSentenceMaskT_v02; |
| #define QMI_LOC_NMEA_MASK_GGA_V02 ((qmiLocNmeaSentenceMaskT_v02)0x00000001) /**< Enable GGA type. */ |
| #define QMI_LOC_NMEA_MASK_RMC_V02 ((qmiLocNmeaSentenceMaskT_v02)0x00000002) /**< Enable RMC type. */ |
| #define QMI_LOC_NMEA_MASK_GSV_V02 ((qmiLocNmeaSentenceMaskT_v02)0x00000004) /**< Enable GSV type. */ |
| #define QMI_LOC_NMEA_MASK_GSA_V02 ((qmiLocNmeaSentenceMaskT_v02)0x00000008) /**< Enable GSA type. */ |
| #define QMI_LOC_NMEA_MASK_VTG_V02 ((qmiLocNmeaSentenceMaskT_v02)0x00000010) /**< Enable VTG type. */ |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Sets the NMEA types. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* NMEA Sentence Types */ |
| qmiLocNmeaSentenceMaskT_v02 nmeaSentenceType; |
| /**< Bitmasks of NMEA types to enable. |
| |
| Valid bitmasks: \n |
| - 0x00000001 -- NMEA_MASK_GGA \n |
| - 0x00000002 -- NMEA_MASK_RMC \n |
| - 0x00000004 -- NMEA_MASK_GSV \n |
| - 0x00000008 -- NMEA_MASK_GSA \n |
| - 0x00000010 -- NMEA_MASK_VTG |
| */ |
| }qmiLocSetNmeaTypesReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Sets the NMEA types. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set NMEA Types Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of Set NMEA Types request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetNmeaTypesIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetNmeaTypesReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetNmeaTypesReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the NMEA types from the location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get NMEA Types Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get NMEA Types request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* NMEA Sentence Types */ |
| uint8_t nmeaSentenceType_valid; /**< Must be set to true if nmeaSentenceType is being passed */ |
| qmiLocNmeaSentenceMaskT_v02 nmeaSentenceType; |
| /**< NMEA types to enable. |
| |
| Valid bitmasks: \n |
| - 0x0000ffff -- NMEA_MASK_ALL \n |
| - 0x00000001 -- NMEA_MASK_GGA \n |
| - 0x00000002 -- NMEA_MASK_RMC \n |
| - 0x00000004 -- NMEA_MASK_GSV \n |
| - 0x00000008 -- NMEA_MASK_GSA \n |
| - 0x00000010 -- NMEA_MASK_VTG |
| */ |
| }qmiLocGetNmeaTypesIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Enables/disables Low Power Mode (LPM) configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Enable Low Power Mode */ |
| uint8_t lowPowerMode; |
| /**< Whether to enable Low Power mode:\n |
| - 0x01 (TRUE) -- Enable LPM \n |
| - 0x00 (FALSE) -- Disable LPM */ |
| }qmiLocSetLowPowerModeReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Enables/disables Low Power Mode (LPM) configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set LPM Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Low Power Mode request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetLowPowerModeIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetLowPowerModeReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetLowPowerModeReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the LPM status from the location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get LPM Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get LPM request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Enable/Disable LPM */ |
| uint8_t lowPowerMode_valid; /**< Must be set to true if lowPowerMode is being passed */ |
| uint8_t lowPowerMode; |
| /**< Whether to enable Low Power mode:\n |
| - 0x01 (TRUE) -- Enable LPM \n |
| - 0x00 (FALSE) -- Disable LPM */ |
| }qmiLocGetLowPowerModeIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSERVERTYPEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SERVER_TYPE_CDMA_PDE_V02 = 1, /**< Server type is CDMA PDE. */ |
| eQMI_LOC_SERVER_TYPE_CDMA_MPC_V02 = 2, /**< Server type is CDMA MPC. */ |
| eQMI_LOC_SERVER_TYPE_UMTS_SLP_V02 = 3, /**< Server type is UMTS SLP. |
| Server type is custom PDE. */ |
| eQMI_LOC_SERVER_TYPE_CUSTOM_PDE_V02 = 4, |
| QMILOCSERVERTYPEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocServerTypeEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Specifies the A-GPS server type and address. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Server Type */ |
| qmiLocServerTypeEnumT_v02 serverType; |
| /**< Type of server. |
| |
| Valid values: \n |
| - 0x00000001 -- CDMA_PDE \n |
| - 0x00000002 -- CDMA_MPC \n |
| - 0x00000003 -- UMTS_SLP \n |
| - 0x00000004 -- CUSTOM_PDE |
| */ |
| |
| /* Optional */ |
| /* IPV4 Address */ |
| uint8_t ipv4Addr_valid; /**< Must be set to true if ipv4Addr is being passed */ |
| qmiLocIpV4AddrStructType_v02 ipv4Addr; |
| /**< \n IPV4 address and port. */ |
| |
| /* Optional */ |
| /* IPV6 Address */ |
| uint8_t ipv6Addr_valid; /**< Must be set to true if ipv6Addr is being passed */ |
| qmiLocIpV6AddrStructType_v02 ipv6Addr; |
| /**< \n IPV6 address and port. */ |
| |
| /* Optional */ |
| /* Uniform Resource Locator */ |
| uint8_t urlAddr_valid; /**< Must be set to true if urlAddr is being passed */ |
| char urlAddr[QMI_LOC_MAX_SERVER_ADDR_LENGTH_V02 + 1]; |
| /**< URL address. \n |
| - Type: NULL-terminated string \n |
| - Maximum string length (including NULL terminator): 256 |
| */ |
| }qmiLocSetServerReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Specifies the A-GPS server type and address. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Server Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Server request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetServerIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Gets the location server from the location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Server Type */ |
| qmiLocServerTypeEnumT_v02 serverType; |
| /**< Type of server, as defined in qmiLocServerTypeEnumT. |
| |
| Valid values: \n |
| - 0x00000001 -- CDMA_PDE \n |
| - 0x00000002 -- CDMA_MPC \n |
| - 0x00000003 -- UMTS_SLP \n |
| - 0x00000004 -- CUSTOM_PDE |
| */ |
| |
| /* Optional */ |
| /* Server Address Type */ |
| uint8_t serverAddrTypeMask_valid; /**< Must be set to true if serverAddrTypeMask is being passed */ |
| qmiLocServerAddrTypeMaskT_v02 serverAddrTypeMask; |
| /**< Type of address the client wants. If unspecified, the |
| indication will contain all the types of addresses |
| it has for the specified server type. |
| |
| Valid bitmasks: \n |
| - 0x01 -- IPV4 \n |
| - 0x02 -- IPV6 \n |
| - 0x04 -- URL |
| */ |
| }qmiLocGetServerReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the location server from the location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Server Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Server request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Mandatory */ |
| /* Server Type */ |
| qmiLocServerTypeEnumT_v02 serverType; |
| /**< Type of server, as defined in qmiLocServerTypeEnumT. |
| |
| Valid values: \n |
| - 0x00000001 -- CDMA_PDE \n |
| - 0x00000002 -- CDMA_MPC \n |
| - 0x00000003 -- UMTS_SLP \n |
| - 0x00000004 -- CUSTOM_PDE |
| */ |
| |
| /* Optional */ |
| /* IPV4 Address */ |
| uint8_t ipv4Addr_valid; /**< Must be set to true if ipv4Addr is being passed */ |
| qmiLocIpV4AddrStructType_v02 ipv4Addr; |
| /**< \n IPV4 address and port. */ |
| |
| /* Optional */ |
| /* IPV6 Address */ |
| uint8_t ipv6Addr_valid; /**< Must be set to true if ipv6Addr is being passed */ |
| qmiLocIpV6AddrStructType_v02 ipv6Addr; |
| /**< \n IPV6 address and port. */ |
| |
| /* Optional */ |
| /* Uniform Resource Locator */ |
| uint8_t urlAddr_valid; /**< Must be set to true if urlAddr is being passed */ |
| char urlAddr[QMI_LOC_MAX_SERVER_ADDR_LENGTH_V02 + 1]; |
| /**< URL. \n |
| - Type: NULL-terminated string \n |
| - Maximum string length (including NULL terminator): 256 |
| */ |
| }qmiLocGetServerIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| typedef uint64_t qmiLocDeleteGnssDataMaskT_v02; |
| #define QMI_LOC_MASK_DELETE_GPS_SVDIR_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000001) /**< Mask to delete GPS SVDIR. */ |
| #define QMI_LOC_MASK_DELETE_GPS_SVSTEER_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000002) /**< Mask to delete GPS SVSTEER. */ |
| #define QMI_LOC_MASK_DELETE_GPS_TIME_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000004) /**< Mask to delete GPS time. */ |
| #define QMI_LOC_MASK_DELETE_GPS_ALM_CORR_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000008) /**< Mask to delete almanac correlation. */ |
| #define QMI_LOC_MASK_DELETE_GLO_SVDIR_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000010) /**< Mask to delete GLONASS SVDIR. */ |
| #define QMI_LOC_MASK_DELETE_GLO_SVSTEER_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000020) /**< Mask to delete GLONASS SVSTEER. */ |
| #define QMI_LOC_MASK_DELETE_GLO_TIME_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000040) /**< Mask to delete GLONASS time. */ |
| #define QMI_LOC_MASK_DELETE_GLO_ALM_CORR_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000080) /**< Mask to delete GLONASS almanac correlation */ |
| #define QMI_LOC_MASK_DELETE_SBAS_SVDIR_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000100) /**< Mask to delete SBAS SVDIR */ |
| #define QMI_LOC_MASK_DELETE_SBAS_SVSTEER_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000200) /**< Mask to delete SBAS SVSTEER */ |
| #define QMI_LOC_MASK_DELETE_POSITION_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000400) /**< Mask to delete position estimate */ |
| #define QMI_LOC_MASK_DELETE_TIME_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00000800) /**< Mask to delete time estimate */ |
| #define QMI_LOC_MASK_DELETE_IONO_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00001000) /**< Mask to delete IONO */ |
| #define QMI_LOC_MASK_DELETE_UTC_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00002000) /**< Mask to delete UTC estimate */ |
| #define QMI_LOC_MASK_DELETE_HEALTH_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00004000) /**< Mask to delete SV health record */ |
| #define QMI_LOC_MASK_DELETE_SADATA_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00008000) /**< Mask to delete SADATA */ |
| #define QMI_LOC_MASK_DELETE_RTI_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00010000) /**< Mask to delete RTI */ |
| #define QMI_LOC_MASK_DELETE_SV_NO_EXIST_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00020000) /**< Mask to delete SV_NO_EXIST */ |
| #define QMI_LOC_MASK_DELETE_FREQ_BIAS_EST_V02 ((qmiLocDeleteGnssDataMaskT_v02)0x00040000) /**< Mask to delete frequency bias estimate */ |
| typedef uint32_t qmiLocDeleteCelldbDataMaskT_v02; |
| #define QMI_LOC_MASK_DELETE_CELLDB_POS_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000001) /**< Mask to delete cell database position */ |
| #define QMI_LOC_MASK_DELETE_CELLDB_LATEST_GPS_POS_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000002) /**< Mask to delete cell database latest GPS position */ |
| #define QMI_LOC_MASK_DELETE_CELLDB_OTA_POS_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000004) /**< Mask to delete cell database OTA position */ |
| #define QMI_LOC_MASK_DELETE_CELLDB_EXT_REF_POS_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000008) /**< Mask to delete cell database external reference position */ |
| #define QMI_LOC_MASK_DELETE_CELLDB_TIMETAG_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000010) /**< Mask to delete cell database time tag */ |
| #define QMI_LOC_MASK_DELETE_CELLDB_CELLID_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000020) /**< Mask to delete cell database cell ID */ |
| #define QMI_LOC_MASK_DELETE_CELLDB_CACHED_CELLID_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000040) /**< Mask to delete cell database cached cell ID */ |
| #define QMI_LOC_MASK_DELETE_CELLDB_LAST_SRV_CELL_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000080) /**< Mask to delete cell database last service cell */ |
| #define QMI_LOC_MASK_DELETE_CELLDB_CUR_SRV_CELL_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000100) /**< Mask to delete cell database current service cell */ |
| #define QMI_LOC_MASK_DELETE_CELLDB_NEIGHBOR_INFO_V02 ((qmiLocDeleteCelldbDataMaskT_v02)0x00000200) /**< Mask to delete cell database neighbor information */ |
| typedef uint32_t qmiLocDeleteClockInfoMaskT_v02; |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_TIME_EST_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000001) /**< Mask to delete time estimate from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_FREQ_EST_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000002) /**< Mask to delete frequency estimate from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_WEEK_NUMBER_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000004) /**< Mask to delete week number from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_RTC_TIME_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000008) /**< Mask to delete RTC time from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_TIME_TRANSFER_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000010) /**< Mask to delete time transfer from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_GPSTIME_EST_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000020) /**< Mask to delete GPS time estimate from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_GLOTIME_EST_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000040) /**< Mask to delete GLONASS time estimate from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_GLODAY_NUMBER_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000080) /**< Mask to delete GLONASS day number from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_GLO4YEAR_NUMBER_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000100) /**< Mask to delete GLONASS four year number from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_GLO_RF_GRP_DELAY_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000200) /**< Mask to delete GLONASS RF GRP delay from clock information */ |
| #define QMI_LOC_MASK_DELETE_CLOCK_INFO_DISABLE_TT_V02 ((qmiLocDeleteClockInfoMaskT_v02)0x00000400) /**< Mask to delete disable TT from clock information */ |
| typedef uint8_t qmiLocDeleteSvInfoMaskT_v02; |
| #define QMI_LOC_MASK_DELETE_EPHEMERIS_V02 ((qmiLocDeleteSvInfoMaskT_v02)0x01) /**< Delete ephemeris for the satellite */ |
| #define QMI_LOC_MASK_DELETE_ALMANAC_V02 ((qmiLocDeleteSvInfoMaskT_v02)0x02) /**< Delete almanac for the satellite */ |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint16_t gnssSvId; |
| /**< SV ID of the satellite whose data is to be deleted. \n |
| - Type: Unsigned integer \n |
| - Range: \n |
| - For GPS: 1 to 32 \n |
| - For SBAS: 33 to 64 \n |
| - For GLONASS: 65 to 96 */ |
| |
| qmiLocSvSystemEnumT_v02 system; |
| /**< Indicates to which constellation this SV belongs. |
| Valid values: \n |
| - 0x00000001 -- eQMI_LOC_SV_SYSTEM_GPS \n |
| - 0x00000002 -- eQMI_LOC_SV_SYSTEM_GALILEO \n |
| - 0x00000003 -- eQMI_LOC_SV_SYSTEM_SBAS \n |
| - 0x00000004 -- eQMI_LOC_SV_SYSTEM_COMPASS \n |
| - 0x00000005 -- eQMI_LOC_SV_SYSTEM_GLONASS |
| */ |
| |
| qmiLocDeleteSvInfoMaskT_v02 deleteSvInfoMask; |
| /**< Indicates if the ephemeris or almanac for a satellite |
| is to be deleted. \n |
| Valid values: \n |
| - 0x01 -- DELETE_EPHEMERIS \n |
| - 0x02 -- DELETE_ALMANAC |
| */ |
| }qmiLocDeleteSvInfoStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; This command is used to delete the location engine |
| assistance data */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Delete All */ |
| uint8_t deleteAllFlag; |
| /**< Whether all assistance data is to be deleted. |
| Valid values: \n |
| - 0x01 (TRUE) -- All assistance data is to be deleted; |
| if this flag is set, all the other information |
| contained in the optional fields for this |
| message are ignored \n |
| - 0x00 (FALSE) -- The optional fields in the message are to be used |
| to determine which data is to be deleted */ |
| |
| /* Optional */ |
| /* Delete SV Info */ |
| uint8_t deleteSvInfoList_valid; /**< Must be set to true if deleteSvInfoList is being passed */ |
| uint32_t deleteSvInfoList_len; /**< Must be set to # of elements in deleteSvInfoList */ |
| qmiLocDeleteSvInfoStructT_v02 deleteSvInfoList[QMI_LOC_DELETE_MAX_SV_INFO_LENGTH_V02]; |
| /**< \n List of satellites for which the assitance data is to be deleted. |
| */ |
| |
| /* Optional */ |
| /* Delete GNSS Data */ |
| uint8_t deleteGnssDataMask_valid; /**< Must be set to true if deleteGnssDataMask is being passed */ |
| qmiLocDeleteGnssDataMaskT_v02 deleteGnssDataMask; |
| /**< Mask for the GNSS data that is to be deleted. |
| Valid values: \n |
| - 0x00000001 -- DELETE_GPS_SVDIR \n |
| - 0x00000002 -- DELETE_GPS_SVSTEER \n |
| - 0x00000004 -- DELETE_GPS_TIME\n |
| - 0x00000008 -- DELETE_GPS_ALM_CORR \n |
| - 0x00000010 -- DELETE_GLO_SVDIR \n |
| - 0x00000020 -- DELETE_GLO_SVSTEER \n |
| - 0x00000040 -- DELETE_GLO_TIME \n |
| - 0x00000080 -- DELETE_GLO_ALM_CORR \n |
| - 0x00000100 -- DELETE_SBAS_SVDIR \n |
| - 0x00000200 -- DELETE_SBAS_SVSTEER \n |
| - 0x00000400 -- DELETE_POSITION \n |
| - 0x00000800 -- DELETE_TIME \n |
| - 0x00001000 -- DELETE_IONO \n |
| - 0x00002000 -- DELETE_UTC \n |
| - 0x00004000 -- DELETE_HEALTH \n |
| - 0x00008000 -- DELETE_SADATA \n |
| - 0x00010000 -- DELETE_RTI \n |
| - 0x00020000 -- DELETE_SV_NO_EXIST \n |
| - 0x00040000 -- DELETE_FREQ_BIAS_EST |
| */ |
| |
| /* Optional */ |
| /* Delete Cell Database */ |
| uint8_t deleteCellDbDataMask_valid; /**< Must be set to true if deleteCellDbDataMask is being passed */ |
| qmiLocDeleteCelldbDataMaskT_v02 deleteCellDbDataMask; |
| /**< Mask for the cell database assistance data that is to be deleted. \n |
| Valid values: \n |
| - 0x00000001 -- DELETE_CELLDB_POS \n |
| - 0x00000002 -- DELETE_CELLDB_LATEST_GPS_POS \n |
| - 0x00000004 -- DELETE_CELLDB_OTA_POS \n |
| - 0x00000008 -- DELETE_CELLDB_EXT_REF_POS \n |
| - 0x00000010 -- DELETE_CELLDB_TIMETAG \n |
| - 0x00000020 -- DELETE_CELLDB_CELLID \n |
| - 0x00000040 -- DELETE_CELLDB_CACHED_CELLID \n |
| - 0x00000080 -- DELETE_CELLDB_LAST_SRV_CELL \n |
| - 0x00000100 -- DELETE_CELLDB_CUR_SRV_CELL \n |
| - 0x00000200 -- DELETE_CELLDB_NEIGHBOR_INFO |
| */ |
| |
| /* Optional */ |
| /* Delete Clock Info */ |
| uint8_t deleteClockInfoMask_valid; /**< Must be set to true if deleteClockInfoMask is being passed */ |
| qmiLocDeleteClockInfoMaskT_v02 deleteClockInfoMask; |
| /**< Mask for the clock information assistance data that is to be deleted. \n |
| Valid values: \n |
| - 0x00000001 -- DELETE_CLOCK_INFO_TIME_EST \n |
| - 0x00000002 -- DELETE_CLOCK_INFO_FREQ_EST \n |
| - 0x00000004 -- DELETE_CLOCK_INFO_WEEK_NUMBER \n |
| - 0x00000008 -- DELETE_CLOCK_INFO_RTC_TIME \n |
| - 0x00000010 -- DELETE_CLOCK_INFO_TIME_TRANSFER \n |
| - 0x00000020 -- DELETE_CLOCK_INFO_GPSTIME_EST \n |
| - 0x00000040 -- DELETE_CLOCK_INFO_GLOTIME_EST \n |
| - 0x00000080 -- DELETE_CLOCK_INFO_GLODAY_NUMBER \n |
| - 0x00000100 -- DELETE_CLOCK_INFO_GLO4YEAR_NUMBER \n |
| - 0x00000200 -- DELETE_CLOCK_INFO_GLO_RF_GRP_DELAY \n |
| - 0x00000400 -- DELETE_CLOCK_INFO_DISABLE_TT |
| */ |
| }qmiLocDeleteAssistDataReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; This command is used to delete the location engine |
| assistance data */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Delete Assist Data Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Delete Assist Data request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocDeleteAssistDataIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Enables/disables XTRA-T session control. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Enable XTRA-T */ |
| uint8_t xtraTSessionControl; |
| /**< Whether to enable XTRA-T:\n |
| - 0x01 (TRUE) -- Enable XTRA-T \n |
| - 0x00 (FALSE) -- Disable XTRA-T */ |
| }qmiLocSetXtraTSessionControlReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Enables/disables XTRA-T session control. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set XTRA-T Session Control Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set XTRA-T Session Control request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetXtraTSessionControlIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetXtraTSessionControlReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetXtraTSessionControlReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the XTRA-T session control value from the location |
| engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get XTRA-T Session Control Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get XTRA-T Session Control request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Enable/Disable XTRA-T */ |
| uint8_t xtraTSessionControl_valid; /**< Must be set to true if xtraTSessionControl is being passed */ |
| uint8_t xtraTSessionControl; |
| /**< Whether to enable XTRA-T:\n |
| - 0x01 (TRUE) -- Enable XTRA-T \n |
| - 0x00 (FALSE) -- Disable XTRA-T */ |
| }qmiLocGetXtraTSessionControlIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint32_t wifiPositionTime; |
| /**< Common counter (typically, the number of milliseconds since bootup). |
| This field is only to be provided if the modem and host processors are |
| synchronized. \n |
| - Type: Unsigned integer */ |
| }qmiLocWifiFixTimeStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCWIFIFIXERRORCODEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_WIFI_FIX_ERROR_SUCCESS_V02 = 0, /**< WiFi fix is successful. */ |
| eQMI_LOC_WIFI_FIX_ERROR_WIFI_NOT_AVAILABLE_V02 = 1, /**< WiFi fix failed because WiFi is not available on the device. */ |
| eQMI_LOC_WIFI_FIX_ERROR_NO_AP_FOUND_V02 = 2, /**< WiFi fix failed because no access points were found. */ |
| eQMI_LOC_WIFI_FIX_ERROR_UNAUTHORIZED_V02 = 3, /**< WiFi fix failed because the server denied access due to bad authorization |
| code. */ |
| eQMI_LOC_WIFI_FIX_ERROR_SERVER_UNAVAILABLE_V02 = 4, /**< WiFi fix failed because the WiFi server was unavailable. */ |
| eQMI_LOC_WIFI_FIX_ERROR_LOCATION_CANNOT_BE_DETERMINED_V02 = 5, /**< WiFi fix failed even though APs were found and the server could be reached. |
| This may be because the APs found are not in the database. |
| WiFi fix failed, but the cause could not be determined. */ |
| eQMI_LOC_WIFI_FIX_ERROR_UNKNOWN_V02 = 6, |
| QMILOCWIFIFIXERRORCODEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocWifiFixErrorCodeEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| double lat; |
| /**< WiFi position latitude. \n |
| - Type: Floating point \n |
| - Units: Degrees */ |
| |
| double lon; |
| /**< WiFi position longitude. \n |
| - Type: Floating point \n |
| - Units: Degrees */ |
| |
| uint16_t hepe; |
| /**< WiFi position HEPE.\n |
| - Type: Unsigned integer \n |
| - Units: Meters */ |
| |
| uint8_t numApsUsed; |
| /**< Number of Access Points (AP) used to generate a fix. \n |
| - Type: Unsigned integer */ |
| |
| qmiLocWifiFixErrorCodeEnumT_v02 fixErrorCode; |
| /**< WiFi position error code; set to 0 if the fix succeeds. This position |
| is only used by a module if the value is 0. If there was a failure, |
| the error code provided by the WiFi positioning system can be provided |
| here. |
| |
| Valid values: \n |
| - 0x00000000 -- ERROR_SUCCESS \n |
| - 0x00000001 -- ERROR_WIFI_NOT_AVAILABLE \n |
| - 0x00000002 -- ERROR_NO_AP_FOUND \n |
| - 0x00000003 -- ERROR_UNAUTHORIZED \n |
| - 0x00000004 -- ERROR_SERVER_UNAVAILABLE \n |
| - 0x00000005 -- ERROR_LOCATION_CANNOT_BE_DETERMINED \n |
| - 0x00000006 -- ERROR_UNKNOWN |
| */ |
| }qmiLocWifiFixPosStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| typedef uint8_t qmiLocWifiApQualifierMaskT_v02; |
| #define QMI_LOC_WIFI_AP_QUALIFIER_BEING_USED_V02 ((qmiLocWifiApQualifierMaskT_v02)0x01) /**< Access point is being used by the WPS. */ |
| #define QMI_LOC_WIFI_AP_QUALIFIER_HIDDEN_SSID_V02 ((qmiLocWifiApQualifierMaskT_v02)0x02) /**< AP does not broadcast SSID. */ |
| #define QMI_LOC_WIFI_AP_QUALIFIER_PRIVATE_V02 ((qmiLocWifiApQualifierMaskT_v02)0x04) /**< AP has encryption turned on. */ |
| #define QMI_LOC_WIFI_AP_QUALIFIER_INFRASTRUCTURE_MODE_V02 ((qmiLocWifiApQualifierMaskT_v02)0x08) /**< AP is in infrastructure mode and not in ad-hoc/unknown mode. */ |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint8_t macAddr[QMI_LOC_WIFI_MAC_ADDR_LENGTH_V02]; |
| /**< Associated MAC address of the AP. \n |
| - Type: Array of unsigned integers \n |
| - Address length: 6 |
| */ |
| |
| int32_t rssi; |
| /**< Receive signal strength indicator.\n |
| - Type: Signed integer \n |
| - Units: dBm (offset with +100 dB) */ |
| |
| uint16_t channel; |
| /**< WiFi channel on which a beacon was received. \n |
| - Type: Unsigned integer */ |
| |
| qmiLocWifiApQualifierMaskT_v02 apQualifier; |
| /**< A bitmask of Boolean qualifiers for APs. |
| All unused bits in this mask must be set to 0. \n |
| Valid values: \n |
| - 0x01 -- BEING_USED \n |
| - 0x02 -- HIDDEN_SSID \n |
| - 0x04 -- PRIVATE \n |
| - 0x08 -- INFRASTRUCTURE_MODE |
| */ |
| }qmiLocWifiApInfoStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Injects the WiFi position. */ |
| typedef struct { |
| |
| /* Optional */ |
| /* WiFi Fix Time */ |
| uint8_t wifiFixTime_valid; /**< Must be set to true if wifiFixTime is being passed */ |
| qmiLocWifiFixTimeStructT_v02 wifiFixTime; |
| /**< \n Time of WiFi position fix. */ |
| |
| /* Optional */ |
| /* WiFi Position */ |
| uint8_t wifiFixPosition_valid; /**< Must be set to true if wifiFixPosition is being passed */ |
| qmiLocWifiFixPosStructT_v02 wifiFixPosition; |
| /**< \n WiFi position fix. */ |
| |
| /* Optional */ |
| /* WiFi Access Point Information */ |
| uint8_t apInfo_valid; /**< Must be set to true if apInfo is being passed */ |
| uint32_t apInfo_len; /**< Must be set to # of elements in apInfo */ |
| qmiLocWifiApInfoStructT_v02 apInfo[QMI_LOC_WIFI_MAX_REPORTED_APS_PER_MSG_V02]; |
| /**< \n AP scan list. */ |
| |
| /* Optional */ |
| /* Horizontal Reliability */ |
| uint8_t horizontalReliability_valid; /**< Must be set to true if horizontalReliability is being passed */ |
| qmiLocReliabilityEnumT_v02 horizontalReliability; |
| /**< Specifies the reliability of the horizontal position. |
| |
| Valid values: \n |
| - 0x00000000 -- eQMI_LOC_RELIABILITY_NOT_SET \n |
| - 0x00000001 -- eQMI_LOC_RELIABILITY_VERY_LOW \n |
| - 0x00000002 -- eQMI_LOC_RELIABILITY_LOW \n |
| - 0x00000003 -- eQMI_LOC_RELIABILITY_MEDIUM \n |
| - 0x00000004 -- eQMI_LOC_RELIABILITY_HIGH |
| */ |
| }qmiLocInjectWifiPositionReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Injects the WiFi position. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Inject WiFi Position Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Inject WiFi Position request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocInjectWifiPositionIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCWIFISTATUSENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_WIFI_STATUS_AVAILABLE_V02 = 1, /**< WiFi is available. |
| WiFi is not available. */ |
| eQMI_LOC_WIFI_STATUS_UNAVAILABLE_V02 = 2, |
| QMILOCWIFISTATUSENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocWifiStatusEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Notifies the location engine of the WiFi status. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Availablility of WiFi */ |
| qmiLocWifiStatusEnumT_v02 wifiStatus; |
| /**< WiFi status information. |
| |
| Valid values: \n |
| - 0x00000001 -- WIFI_STATUS_AVAILABLE \n |
| - 0x00000002 -- WIFI_STATUS_UNAVAILABLE |
| */ |
| }qmiLocNotifyWifiStatusReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Notifies the location engine of the WiFi status. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Status of Notify WiFi Status Request */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Notify WiFi Status request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocNotifyWifiStatusIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetRegisteredEventsReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetRegisteredEventsReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the mask of the events for which a client has |
| registered. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Registered Events Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Registered Events request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Event Registration Mask */ |
| uint8_t eventRegMask_valid; /**< Must be set to true if eventRegMask is being passed */ |
| qmiLocEventRegMaskT_v02 eventRegMask; |
| /**< Event registration mask. |
| |
| Valid bitmasks: \n |
| - 0x00000001 -- POSITION_REPORT \n |
| - 0x00000002 -- GNSS_SV_INFO \n |
| - 0x00000004 -- NMEA \n |
| - 0x00000008 -- NI_NOTIFY_VERIFY_REQ \n |
| - 0x00000010 -- INJECT_TIME_REQ \n |
| - 0x00000020 -- INJECT_PREDICTED_ORBITS_REQ \n |
| - 0x00000040 -- INJECT_POSITION_REQ \n |
| - 0x00000080 -- ENGINE_STATE \n |
| - 0x00000100 -- FIX_SESSION_STATE \n |
| - 0x00000200 -- WIFI_REQ \n |
| - 0x00000400 -- SENSOR_STREAMING_READY_STATUS \n |
| - 0x00000800 -- TIME_SYNC_REQ \n |
| - 0x00001000 -- SET_SPI_STREAMING_REPORT \n |
| - 0x00002000 -- LOCATION_SERVER__CONNECTION_REQ |
| */ |
| }qmiLocGetRegisteredEventsIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCOPERATIONMODEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_OPER_MODE_DEFAULT_V02 = 1, /**< Use the default engine mode. */ |
| eQMI_LOC_OPER_MODE_MSB_V02 = 2, /**< Use the MS-based mode. */ |
| eQMI_LOC_OPER_MODE_MSA_V02 = 3, /**< Use the MS-assisted mode. */ |
| eQMI_LOC_OPER_MODE_STANDALONE_V02 = 4, /**< Use Standalone mode. |
| Use cell ID. For 1x, this mode corresponds to |
| AFLT. */ |
| eQMI_LOC_OPER_MODE_CELL_ID_V02 = 5, |
| QMILOCOPERATIONMODEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocOperationModeEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Tells the engine to use the specified operation mode while |
| making the position fixes. This command is not to be used |
| by multiple clients concurrently. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Operation Mode */ |
| qmiLocOperationModeEnumT_v02 operationMode; |
| /**< Preferred operation mode. |
| |
| Valid values: \n |
| - 0x00000001 -- OPER_MODE_DEFAULT \n |
| - 0x00000002 -- OPER_MODE_MSB \n |
| - 0x00000003 -- OPER_MODE_MSA \n |
| - 0x00000004 -- OPER_MODE_STANDALONE \n |
| - 0x00000005 -- OPER_MODE_CELL_ID |
| */ |
| }qmiLocSetOperationModeReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Tells the engine to use the specified operation mode while |
| making the position fixes. This command is not to be used |
| by multiple clients concurrently. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Operation Mode Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Operation Mode request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetOperationModeIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetOperationModeReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetOperationModeReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Gets the current operation mode from the engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Operation Mode Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Operation Mode request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Operation Mode */ |
| uint8_t operationMode_valid; /**< Must be set to true if operationMode is being passed */ |
| qmiLocOperationModeEnumT_v02 operationMode; |
| /**< Current operation mode. |
| |
| Valid values: \n |
| - 0x00000001 -- OPER_MODE_DEFAULT \n |
| - 0x00000002 -- OPER_MODE_MSB \n |
| - 0x00000003 -- OPER_MODE_MSA \n |
| - 0x00000004 -- OPER_MODE_STANDALONE \n |
| - 0x00000005 -- OPER_MODE_CELL_ID |
| */ |
| }qmiLocGetOperationModeIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to set the SPI status, which |
| indicates whether the device is stationary. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Stationary Status */ |
| uint8_t stationary; |
| /**< Whether the device is stationary:\n |
| - 0x00 (FALSE) -- Device is not stationary \n |
| - 0x01 (TRUE) -- Device is stationary */ |
| |
| /* Optional */ |
| /* Confidence */ |
| uint8_t confidenceStationary_valid; /**< Must be set to true if confidenceStationary is being passed */ |
| uint8_t confidenceStationary; |
| /**< Confidence in the Stationary state expressed as a percentage.\n |
| - Type: Unsigned integer \n |
| - Range: 0 to 100 */ |
| }qmiLocSetSpiStatusReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to set the SPI status, which |
| indicates whether the device is stationary. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Status of SPI Status Request */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the SPI Status request. \n |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetSpiStatusIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| typedef uint8_t qmiLocSensorDataFlagMaskT_v02; |
| #define QMI_LOC_SENSOR_DATA_FLAG_SIGN_REVERSAL_V02 ((qmiLocSensorDataFlagMaskT_v02)0x01) /**< Bitmask to specify that a sign reversal is required while interpreting |
| the sensor data. */ |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint16_t timeOffset; |
| /**< Sample time offset. This time offset must be |
| relative to the sensor time of the first sample.\n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds */ |
| |
| float xAxis; |
| /**< Sensor x-axis sample. \n |
| - Type: Floating point \n |
| - Units Accelerometer: ( (meters)/(seconds^2) ) \n |
| - Units Gyrometer: ( (rads)/(seconds^2) ) */ |
| |
| float yAxis; |
| /**< Sensor y-axis sample. \n |
| - Type: Floating point \n |
| - Units Accelerometer: ( (meters)/(seconds^2) ) \n |
| - Units Gyrometer: ( (rads)/(seconds^2) ) */ |
| |
| float zAxis; |
| /**< Sensor z-axis sample. \n |
| - Type: Floating point \n |
| - Units Accelerometer: ( (meters)/(seconds^2) ) \n |
| - Units Gyrometer: ( (rads)/(seconds^2) ) */ |
| }qmiLoc3AxisSensorSampleStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| uint32_t timeOfFirstSample; |
| /**< Denotes a full 32-bit time tag of the first (oldest) sample in this |
| message. \n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds */ |
| |
| qmiLocSensorDataFlagMaskT_v02 flags; |
| /**< Flags to indicate any deviation from the default measurement |
| assumptions. All unused bits in this field must be set to 0. |
| |
| Valid bitmasks: \n |
| - 0x01 -- SIGN REVERSAL |
| */ |
| |
| uint32_t sensorData_len; /**< Must be set to # of elements in sensorData */ |
| qmiLoc3AxisSensorSampleStructT_v02 sensorData[QMI_LOC_SENSOR_DATA_MAX_SAMPLES_V02]; |
| /**< Variable length array to specify sensor samples. \n |
| - Maximum length of the array: 50 */ |
| }qmiLoc3AxisSensorSampleListStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to inject sensor data into the |
| GNSS location engine. */ |
| typedef struct { |
| |
| /* Optional */ |
| /* Opaque Identifier */ |
| uint8_t opaqueIdentifier_valid; /**< Must be set to true if opaqueIdentifier is being passed */ |
| uint32_t opaqueIdentifier; |
| /**< An opaque identifier that is sent in by the client that will be echoed |
| in the indication so the client can relate the indication to the |
| request. \n |
| - Type: Unsigned integer */ |
| |
| /* Optional */ |
| /* 3-Axis Accelerometer Data */ |
| uint8_t threeAxisAccelData_valid; /**< Must be set to true if threeAxisAccelData is being passed */ |
| qmiLoc3AxisSensorSampleListStructT_v02 threeAxisAccelData; |
| /**< \n Accelerometer sensor samples. */ |
| |
| /* Optional */ |
| /* 3-Axis Gyrometer Data */ |
| uint8_t threeAxisGyroData_valid; /**< Must be set to true if threeAxisGyroData is being passed */ |
| qmiLoc3AxisSensorSampleListStructT_v02 threeAxisGyroData; |
| /**< \n Gyrometer sensor samples. */ |
| }qmiLocInjectSensorDataReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to inject sensor data into the |
| GNSS location engine. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Inject Sensor Data Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Inject Sensor Data request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Opaque Identifier */ |
| uint8_t opaqueIdentifier_valid; /**< Must be set to true if opaqueIdentifier is being passed */ |
| uint32_t opaqueIdentifier; |
| /**< An opaque identifier that was sent in by the client echoed |
| so the client can relate the indication to the request. \n |
| - Type: Unsigned integer */ |
| |
| /* Optional */ |
| /* Accelerometer Samples Accepted */ |
| uint8_t threeAxisAccelSamplesAccepted_valid; /**< Must be set to true if threeAxisAccelSamplesAccepted is being passed */ |
| uint8_t threeAxisAccelSamplesAccepted; |
| /**< This field lets the client know how many 3-axis accelerometer samples |
| were accepted. */ |
| |
| /* Optional */ |
| /* Gyrometer Samples Accepted */ |
| uint8_t threeAxisGyroSamplesAccepted_valid; /**< Must be set to true if threeAxisGyroSamplesAccepted is being passed */ |
| uint8_t threeAxisGyroSamplesAccepted; |
| /**< This field lets the client know how many 3-axis gyrometer samples were |
| accepted. */ |
| }qmiLocInjectSensorDataIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to inject time sync data. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Reference Time Sync Counter */ |
| uint32_t refCounter; |
| /**< Must be set to the value that was sent to the control point when the |
| GNSS location engine requested time sync injection. \n |
| - Type: Unsigned integer */ |
| |
| /* Mandatory */ |
| /* Sensor Receive Time */ |
| uint32_t sensorProcRxTime; |
| /**< The value of the sensor time when the control point received the |
| Time Sync Inject request from the GNSS location engine. |
| |
| Must be monotonically increasing, jitter @latexonly $\leq$ @endlatexonly 1 |
| millisecond, never stopping until the process is rebooted.\n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds */ |
| |
| /* Mandatory */ |
| /* Sensor Transmit Time */ |
| uint32_t sensorProcTxTime; |
| /**< The value of the sensor time when the control point injects this message |
| for use by the GNSS location engine. |
| |
| Must be monotonically increasing, jitter @latexonly $\leq$ @endlatexonly 1 |
| millisecond, never stopping until the process is rebooted.\n |
| - Type: Unsigned integer \n |
| - Units: Milliseconds */ |
| }qmiLocInjectTimeSyncDataReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to inject time sync data. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Inject Time Sync Data Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Inject Time Sync Data request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocInjectTimeSyncDataIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCCRADLEMOUNTSTATEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_CRADLE_STATE_NOT_MOUNTED_V02 = 0, /**< Device is mounted on the cradle */ |
| eQMI_LOC_CRADLE_STATE_MOUNTED_V02 = 1, /**< Device is not mounted on the cradle |
| Unknown cradle mount state */ |
| eQMI_LOC_CRADLE_STATE_UNKNOWN_V02 = 2, |
| QMILOCCRADLEMOUNTSTATEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocCradleMountStateEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetCradleMountConfigReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetCradleMountConfigReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to get the current |
| cradle mount configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Cradle Mount Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Cradle Mount Configuration request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Cradle Mount State */ |
| uint8_t cradleMountState_valid; /**< Must be set to true if cradleMountState is being passed */ |
| qmiLocCradleMountStateEnumT_v02 cradleMountState; |
| /**< Cradle Mount state set by the control point. |
| |
| Valid values: \n |
| - 0x00000000 -- CRADLE_STATE_NOT_MOUNTED \n |
| - 0x00000001 -- CRADLE_STATE_MOUNTED \n |
| - 0x00000002 -- CRADLE_STATE_UNKNOWN |
| */ |
| |
| /* Optional */ |
| /* Cradle Mount Confidence */ |
| uint8_t confidenceCradleMountState_valid; /**< Must be set to true if confidenceCradleMountState is being passed */ |
| uint8_t confidenceCradleMountState; |
| /**< Confidence of the Cradle Mount state expressed as a percentage.\n |
| - Type: Unsigned integer \n |
| - Range: 0 to 100 */ |
| }qmiLocGetCradleMountConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to set the current |
| cradle mount configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Cradle Mount State */ |
| qmiLocCradleMountStateEnumT_v02 cradleMountState; |
| /**< Cradle Mount state set by the control point. |
| |
| Valid values: \n |
| - 0x00000000 -- CRADLE_STATE_NOT_MOUNTED \n |
| - 0x00000001 -- CRADLE_STATE_MOUNTED \n |
| - 0x00000002 -- CRADLE_STATE_UNKNOWN */ |
| |
| /* Optional */ |
| /* Cradle Mount Confidence */ |
| uint8_t confidenceCradleMountState_valid; /**< Must be set to true if confidenceCradleMountState is being passed */ |
| uint8_t confidenceCradleMountState; |
| /**< Confidence in the Cradle Mount state expressed as a percentage.\n |
| - Type: Unsigned integer \n |
| - Range: 0 to 100 */ |
| }qmiLocSetCradleMountConfigReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to set the current |
| cradle mount configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Cradle Mount Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Cradle Mount Configuration request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetCradleMountConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCEXTERNALPOWERCONFIGENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_EXTERNAL_POWER_NOT_CONNECTED_V02 = 0, /**< Device is not connected to an external power source. */ |
| eQMI_LOC_EXTERNAL_POWER_CONNECTED_V02 = 1, /**< Device is connected to an external power source. |
| Unknown external power state. */ |
| eQMI_LOC_EXTERNAL_POWER_UNKNOWN_V02 = 2, |
| QMILOCEXTERNALPOWERCONFIGENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocExternalPowerConfigEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetExternalPowerConfigReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetExternalPowerConfigReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to get the current |
| external power configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Ext Power Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get External Power Configuration request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* External Power State */ |
| uint8_t externalPowerState_valid; /**< Must be set to true if externalPowerState is being passed */ |
| qmiLocExternalPowerConfigEnumT_v02 externalPowerState; |
| /**< Power state; injected by the control point. |
| |
| Valid values: \n |
| - 0x00000000 -- EXTERNAL_POWER_NOT_CONNECTED \n |
| - 0x00000001 -- EXTERNAL_POWER_CONNECTED \n |
| - 0x00000002 -- EXTERNAL_POWER_UNKNOWN |
| */ |
| }qmiLocGetExternalPowerConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to set the current |
| external power configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* External Power State */ |
| qmiLocExternalPowerConfigEnumT_v02 externalPowerState; |
| /**< Power state; injected by the control point. |
| |
| Valid values: \n |
| - 0x00000000 -- EXTERNAL_POWER_NOT_CONNECTED \n |
| - 0x00000001 -- EXTERNAL_POWER_CONNECTED \n |
| - 0x00000002 -- EXTERNAL_POWER_UNKNOWN |
| */ |
| }qmiLocSetExternalPowerConfigReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to set the current |
| external power configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Ext Power Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set External Power Configuration request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetExternalPowerConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSERVERPDNENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_APN_PROFILE_PDN_TYPE_IPV4_V02 = 0x01, /**< IPV4 PDN type. */ |
| eQMI_LOC_APN_PROFILE_PDN_TYPE_IPV6_V02 = 0x02, /**< IPV6 PDN type. */ |
| eQMI_LOC_APN_PROFILE_PDN_TYPE_IPV4V6_V02 = 0x03, /**< IPV4V6 PDN type. |
| PPP PDN type. */ |
| eQMI_LOC_APN_PROFILE_PDN_TYPE_PPP_V02 = 0x04, |
| QMILOCSERVERPDNENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocServerPDNEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_aggregates |
| @{ |
| */ |
| typedef struct { |
| |
| qmiLocServerPDNEnumT_v02 pdnType; |
| /**< PDN type of the Access Point Name (APN) profile. |
| |
| Valid values: \n |
| - 0x00000001 -- PDN_TYPE_IPV4 \n |
| - 0x00000002 -- PDN_TYPE_IPV6 \n |
| - 0x00000003 -- PDN_TYPE_IPV4V6 \n |
| - 0x00000004 -- PDN_TYPE_PPP |
| */ |
| |
| char apnName[QMI_LOC_MAX_APN_NAME_LENGTH_V02 + 1]; |
| /**< APN name. \n |
| - Type: NULL-terminated string \n |
| - Maximum string length (including NULL terminator): 101 |
| */ |
| }qmiLocApnProfilesStructT_v02; /* Type */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSERVERREQSTATUSENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SERVER_REQ_STATUS_SUCCESS_V02 = 1, /**< Location server request was successful. |
| Location server request failed. */ |
| eQMI_LOC_SERVER_REQ_STATUS_FAILURE_V02 = 2, |
| QMILOCSERVERREQSTATUSENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocServerReqStatusEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to inform the service about the |
| status of the location server connection request that the |
| service may have sent via the |
| QMI_LOC_EVENT_LOCATION_SERVER_REQ_IND event. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Connection Handle */ |
| uint32_t connHandle; |
| /**< Connection handle that the service specified in the |
| Location Server Connection request event. \n |
| - Type: Unsigned integer */ |
| |
| /* Mandatory */ |
| /* Request Type */ |
| qmiLocServerRequestEnumT_v02 requestType; |
| /**< Type of connection request service that was specified in the |
| Location Server Connection Request event. |
| |
| Valid values: \n |
| - 0x00000001 -- OPEN \n |
| - 0x00000002 -- CLOSE |
| */ |
| |
| /* Mandatory */ |
| /* Connection Status */ |
| qmiLocServerReqStatusEnumT_v02 statusType; |
| /**< Status of the Connection request. |
| |
| Valid values: \n |
| - 0x00000001 -- STATUS_SUCCESS = 1 \n |
| - 0x00000002 -- STATUS_FAILURE = 2 |
| |
| */ |
| |
| /* Optional */ |
| /* APN Profile */ |
| uint8_t apnProfile_valid; /**< Must be set to true if apnProfile is being passed */ |
| qmiLocApnProfilesStructT_v02 apnProfile; |
| /**< \n APN profile information is present only when requestType |
| is OPEN and statusType is SUCCESS. */ |
| }qmiLocInformLocationServerConnStatusReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to inform the service about the |
| status of the location server connection request that the |
| service may have sent via the |
| QMI_LOC_EVENT_LOCATION_SERVER_REQ_IND event. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Status of Inform Loc Server Conn Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Inform Location Server Connection Status request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocInformLocationServerConnStatusIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCVXVERSIONENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_VX_VERSION_V1_ONLY_V02 = 1, /**< V1 VX version. |
| V2 VX version. */ |
| eQMI_LOC_VX_VERSION_V2_ONLY_V02 = 2, |
| QMILOCVXVERSIONENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocVxVersionEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSUPLVERSIONENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SUPL_VERSION_1_0_V02 = 1, /**< SUPL version 1.0. |
| SUPL version 2.0. */ |
| eQMI_LOC_SUPL_VERSION_2_0_V02 = 2, |
| QMILOCSUPLVERSIONENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocSuplVersionEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to configure parameters stored |
| in the nonvolatile memory. */ |
| typedef struct { |
| |
| /* Optional */ |
| /* SUPL Security */ |
| uint8_t suplSecurity_valid; /**< Must be set to true if suplSecurity is being passed */ |
| uint8_t suplSecurity; |
| /**< Indicates whether SUPL security is enabled. \n |
| - 0x01 (TRUE) -- SUPL security is enabled \n |
| - 0x00 (FALSE) -- SUPL security is disabled */ |
| |
| /* Optional */ |
| /* VX Version */ |
| uint8_t vxVersion_valid; /**< Must be set to true if vxVersion is being passed */ |
| qmiLocVxVersionEnumT_v02 vxVersion; |
| /**< VX version. |
| |
| Valid values: \n |
| - 0x00000001 -- VX_VERSION_V1_ONLY \n |
| - 0x00000002 -- VX_VERSION_V2_ONLY |
| */ |
| |
| /* Optional */ |
| /* SUPL Version */ |
| uint8_t suplVersion_valid; /**< Must be set to true if suplVersion is being passed */ |
| qmiLocSuplVersionEnumT_v02 suplVersion; |
| /**< SUPL version. |
| |
| Valid values: \n |
| - 0x00000001 -- SUPL_VERSION_1_0 \n |
| - 0x00000002 -- SUPL_VERSION_2_0 |
| */ |
| }qmiLocSetProtocolConfigParametersReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| typedef uint64_t qmiLocProtocolConfigParamMaskT_v02; |
| #define QMI_LOC_PROTOCOL_CONFIG_PARAM_MASK_SUPL_SECURITY_V02 ((qmiLocProtocolConfigParamMaskT_v02)0x00000001) /**< Mask for the SUPL security configuration parameter. */ |
| #define QMI_LOC_PROTOCOL_CONFIG_PARAM_MASK_VX_VERSION_V02 ((qmiLocProtocolConfigParamMaskT_v02)0x00000002) /**< Mask for the VX version configuration parameter. */ |
| #define QMI_LOC_PROTOCOL_CONFIG_PARAM_MASK_SUPL_VERSION_V02 ((qmiLocProtocolConfigParamMaskT_v02)0x00000004) /**< Mask for the SUPL version configuration parameter. */ |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to configure parameters stored |
| in the nonvolatile memory. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Config Params Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Configuration Parameters request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Failed Parameters */ |
| uint8_t failedProtocolConfigParamMask_valid; /**< Must be set to true if failedProtocolConfigParamMask is being passed */ |
| qmiLocProtocolConfigParamMaskT_v02 failedProtocolConfigParamMask; |
| /**< This field is sent only if the status is not a success. And if it is |
| not successful, this field will identify the parameters that were not |
| set successfully. |
| |
| Valid bitmasks: \n |
| - 0x0000000000000001 -- CONFIG_PARAM_MASK_SUPL_SECURITY \n |
| - 0x0000000000000002 -- CONFIG_PARAM_MASK_VX_VERSION \n |
| - 0x0000000000000004 -- CONFIG_PARAM_MASK_SUPL_VERSION |
| */ |
| }qmiLocSetProtocolConfigParametersIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to get the configuration |
| parameters stored in the nonvolatile memory. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Config Parameters */ |
| qmiLocProtocolConfigParamMaskT_v02 getProtocolConfigParamMask; |
| /**< Mask denoting the configuration parameters to be retrieved. |
| |
| Valid bitmasks: \n |
| - 0x0000000000000001 -- CONFIG_PARAM_MASK_SUPL_SECURITY \n |
| - 0x0000000000000002 -- CONFIG_PARAM_MASK_VX_VERSION \n |
| - 0x0000000000000004 -- CONFIG_PARAM_MASK_SUPL_VERSION |
| */ |
| }qmiLocGetProtocolConfigParametersReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to get the configuration |
| parameters stored in the nonvolatile memory. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Config Params Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Configuration Parameters request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* SUPL Security */ |
| uint8_t suplSecurity_valid; /**< Must be set to true if suplSecurity is being passed */ |
| uint8_t suplSecurity; |
| /**< Indicates whether SUPL security is enabled. \n |
| - 0x01 (TRUE) -- SUPL security is enabled \n |
| - 0x00 (FALSE) -- SUPL security is disabled */ |
| |
| /* Optional */ |
| /* VX Version */ |
| uint8_t vxVersion_valid; /**< Must be set to true if vxVersion is being passed */ |
| qmiLocVxVersionEnumT_v02 vxVersion; |
| /**< VX version. |
| |
| Valid values: \n |
| - 0x00000001 -- VX_VERSION_V1_ONLY \n |
| - 0x00000002 -- VX_VERSION_V2_ONLY |
| */ |
| |
| /* Optional */ |
| /* SUPL Version */ |
| uint8_t suplVersion_valid; /**< Must be set to true if suplVersion is being passed */ |
| qmiLocSuplVersionEnumT_v02 suplVersion; |
| /**< SUPL version. |
| |
| Valid values: \n |
| - 0x00000001 -- SUPL_VERSION_1_0 \n |
| - 0x00000002 -- SUPL_VERSION_2_0 |
| */ |
| }qmiLocGetProtocolConfigParametersIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSENSORSCONTROLCONFIGSENSORUSEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SENSOR_CONFIG_SENSOR_USE_ENABLE_V02 = 0, /**< Sensors data should be requested whenever a position request is |
| received. If sensor data are injected, the positioning engine |
| attempts to improve the heading and positioning performance using sensors. |
| This is the default. |
| |
| Inertial sensors are not to be used to aid heading and position |
| improvement. */ |
| eQMI_LOC_SENSOR_CONFIG_SENSOR_USE_DISABLE_V02 = 1, |
| QMILOCSENSORSCONTROLCONFIGSENSORUSEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocSensorsControlConfigSensorUseEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Sets the sensor control configuration. */ |
| typedef struct { |
| |
| /* Optional */ |
| /* Sensors Usage */ |
| uint8_t sensorsUsage_valid; /**< Must be set to true if sensorsUsage is being passed */ |
| qmiLocSensorsControlConfigSensorUseEnumT_v02 sensorsUsage; |
| /**< Controls how sensors are used to aid heading and positioning |
| performance. |
| |
| Valid values:\n |
| - 0x00000000 -- SENSORS USE ENABLED: \n |
| Sensors data is to be requested whenever a position request is |
| received. If sensors data is injected, the GNSS location engine |
| attempts to improve the heading and positioning performance using |
| sensors. This is the default. \n |
| - 0x00000001 -- SENSORS USE DISABLED: \n |
| Inertial sensors are not to be used to aid in heading and |
| position improvement. |
| */ |
| }qmiLocSetSensorControlConfigReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Sets the sensor control configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Sensor Control Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Sensor Control Configuration request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetSensorControlConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetSensorControlConfigReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetSensorControlConfigReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Retrieves the current sensor control configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Sensor Control Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Sensors Control Configuration request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Sensors Usage */ |
| uint8_t sensorsUsage_valid; /**< Must be set to true if sensorsUsage is being passed */ |
| qmiLocSensorsControlConfigSensorUseEnumT_v02 sensorsUsage; |
| /**< Controls how sensors are used to aid the heading and positioning |
| performance. |
| |
| Valid values:\n |
| - 0x00000000 -- SENSORS USE ENABLED: \n |
| Sensors data is to be requested whenever a position request is |
| received. If sensors data is injected, the GNSS location engine |
| attempts to improve the heading and positioning performance using |
| sensors. This is the default. \n |
| - 0x00000001 -- SENSORS USE DISABLED: \n |
| Inertial sensors are not to be used to aid in the heading and |
| position improvement. |
| */ |
| }qmiLocGetSensorControlConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Sets the properties specific to the type of sensor used. |
| The control point must set sensor properties before they can be |
| used to aid in heading and positioning performance improvement. |
| */ |
| typedef struct { |
| |
| /* Optional */ |
| /* Gyro Bias Variance */ |
| uint8_t gyroBiasVarianceRandomWalk_valid; /**< Must be set to true if gyroBiasVarianceRandomWalk is being passed */ |
| float gyroBiasVarianceRandomWalk; |
| /**< Specifies the gyro bias random walk parameter as a positive |
| floating-point value. This value does not have any internal defaults. |
| The gyro bias variance random walk parameter is derived from either the |
| sensors data sheet or a sensors conformance test. \n |
| - Units: radians^2/second^4 |
| |
| */ |
| }qmiLocSetSensorPropertiesReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Sets the properties specific to the type of sensor used. |
| The control point must set sensor properties before they can be |
| used to aid in heading and positioning performance improvement. |
| */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Sensor Properties Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Sensor Properties request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| }qmiLocSetSensorPropertiesIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetSensorPropertiesReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetSensorPropertiesReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Retrieves the current sensor properties. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Sensor Properties Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Sensors Properties request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Gyro Bias Variance */ |
| uint8_t gyroBiasVarianceRandomWalk_valid; /**< Must be set to true if gyroBiasVarianceRandomWalk is being passed */ |
| float gyroBiasVarianceRandomWalk; |
| /**< Specifies the gyro bias random walk parameter as a positive |
| floating-point value. This value does not have any internal defaults. |
| The gyro bias variance random walk parameter is derived from either the |
| sensors data sheet or a sensors conformance test. \n |
| - Units: radians^2/seconds^4 |
| |
| */ |
| }qmiLocGetSensorPropertiesIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_enums |
| @{ |
| */ |
| typedef enum { |
| QMILOCSENSORPERFORMANCECONTROLMODEENUMT_MIN_ENUM_VAL_V02 = -2147483647, /**< To force a 32 bit signed enum. Do not change or use*/ |
| eQMI_LOC_SENSOR_PERFORMANCE_CONTROL_MODE_AUTO_V02 = 0, /**< Sensors usage is to be determined by the GNSS location engine. |
| This mode can optimize power consumption and give a |
| power-balanced positioning and heading enhancement using |
| inertial sensors |
| Sensors usage is to be forced ON. |
| This mode can be requested by the control point when |
| power consumption is not a restriction to the use of |
| inertial sensors. */ |
| eQMI_LOC_SENSOR_PERFORMANCE_CONTROL_MODE_FORCED_V02 = 1, |
| QMILOCSENSORPERFORMANCECONTROLMODEENUMT_MAX_ENUM_VAL_V02 = 2147483647 /**< To force a 32 bit signed enum. Do not change or use*/ |
| }qmiLocSensorPerformanceControlModeEnumT_v02; |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Provides fine-grained control of sensor based positioning |
| performance */ |
| typedef struct { |
| |
| /* Optional */ |
| /* Sensor Performance Control Mode */ |
| uint8_t performanceControlMode_valid; /**< Must be set to true if performanceControlMode is being passed */ |
| qmiLocSensorPerformanceControlModeEnumT_v02 performanceControlMode; |
| /**< Controls when sensors data is requested during GNSS fix processing. |
| This field is relevant only when sensors have been enabled using the |
| sensors control configuration. |
| |
| Valid values: \n |
| - 0x00000000 -- AUTO: \n |
| The GNSS location engine can decide when to request sensor data injection |
| based on internal criteria. This is the default. \n |
| - 0x00000001 -- FORCED: \n |
| The GNSS location engine must request use of sensors every time the GNSS |
| location engine turns on. |
| */ |
| |
| /* Optional */ |
| /* Accelerometer Sampling Specification */ |
| uint8_t accelSamplingSpec_valid; /**< Must be set to true if accelSamplingSpec is being passed */ |
| qmiLocSensorControlConfigSamplingSpecStructT_v02 accelSamplingSpec; |
| /**< \n Sets the nominal rate at which the GNSS location engine is to request |
| acceleration data. The sensor data rate is specified in terms of the nominal |
| number of samples per batch and the number of batches per second. |
| However, the final control of the actual requested rate resides with |
| the Sensors Manager Module/GNSS location engine. |
| */ |
| |
| /* Optional */ |
| /* Gyrometer Sampling Specification */ |
| uint8_t gyroSamplingSpec_valid; /**< Must be set to true if gyroSamplingSpec is being passed */ |
| qmiLocSensorControlConfigSamplingSpecStructT_v02 gyroSamplingSpec; |
| /**< \n Sets the nominal rate at which the GNSS location engine is to request |
| gyro data. The sensor data rate is specified in terms of the nominal number of |
| samples per batch and the number of batches per second. |
| However, the final control of the actual requested rate resides with |
| the Sensors Manager Module/GNSS location engine. |
| */ |
| }qmiLocSetSensorPerformanceControlConfigReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| typedef uint32_t qmiLocSensorPerformanceControlConfigFailureMaskT_v02; |
| #define QMI_LOC_SENSOR_PERFORMANCE_CONTROL_CONFIG_PARAM_MASK_PERFORMANCE_MODE_V02 ((qmiLocSensorPerformanceControlConfigFailureMaskT_v02)0x00000001) /**< Failed to set the performance mode. */ |
| #define QMI_LOC_SENSOR_PERFORMANCE_CONTROL_CONFIG_PARAM_MASK_ACCEL_SAMPLING_SPEC_V02 ((qmiLocSensorPerformanceControlConfigFailureMaskT_v02)0x00000002) /**< Failed to set the accelerometer sampling specification. */ |
| #define QMI_LOC_SENSOR_PERFORMANCE_CONTROL_CONFIG_PARAM_MASK_GYRO_SAMPLING_SPEC_V02 ((qmiLocSensorPerformanceControlConfigFailureMaskT_v02)0x00000004) /**< Failed to set the gyroscope sampling specification. */ |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Provides fine-grained control of sensor based positioning |
| performance */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Sensor Perf Control Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Sensor Performance Control Configuration request. \n |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Failed Configuration */ |
| uint8_t failedConfiguration_valid; /**< Must be set to true if failedConfiguration is being passed */ |
| qmiLocSensorPerformanceControlConfigFailureMaskT_v02 failedConfiguration; |
| /**< This field is sent only if the status is not a success. |
| When sent, this field identifies which configuration failed. \n |
| Valid bitmasks: \n |
| - 0x0000000000000001 -- PERFORMANCE_MODE \n |
| - 0x0000000000000002 -- ACCEL_SAMPLING_SPEC \n |
| - 0x0000000000000004 -- GYRO_SAMPLING_SPEC |
| */ |
| }qmiLocSetSensorPerformanceControlConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /* |
| * qmiLocGetSensorPerformanceControlConfigReqMsgT is empty |
| * typedef struct { |
| * }qmiLocGetSensorPerformanceControlConfigReqMsgT_v02; |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Retrieves the current sensor performance control |
| configuration. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Sensor Perf Control Config Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Sensor Performance Control Configuration request. \n |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Performance Control Mode */ |
| uint8_t performanceControlMode_valid; /**< Must be set to true if performanceControlMode is being passed */ |
| qmiLocSensorPerformanceControlModeEnumT_v02 performanceControlMode; |
| /**< Controls when sensor data is requested during GNSS fix processing. |
| This field is relevant only when sensors have been enabled using the |
| sensor control configuration. |
| |
| Valid values: \n |
| - 0x00000000 -- AUTO: \n |
| The GNSS location engine can decide when to request sensor data injection |
| based on internal criteria. This is the default. \n |
| - 0x0000001 -- FORCED: \n |
| The GNSS location engine must request use of the sensors every time the GNSS |
| location engine turns on. |
| */ |
| |
| /* Optional */ |
| /* Accelerometer Sampling Specification */ |
| uint8_t accelSamplingSpec_valid; /**< Must be set to true if accelSamplingSpec is being passed */ |
| qmiLocSensorControlConfigSamplingSpecStructT_v02 accelSamplingSpec; |
| /**< \n Sets the nominal rate at which the GNSS location engine is to request |
| acceleration data. The sensor data rate is specified in terms of the nominal number of |
| samples per batch and the number of batches per second. |
| However, the final control of the actual requested rate resides with |
| the Sensors Manager Module/GNSS location engine. |
| */ |
| |
| /* Optional */ |
| /* Gyrometer Sampling Specification */ |
| uint8_t gyroSamplingSpec_valid; /**< Must be set to true if gyroSamplingSpec is being passed */ |
| qmiLocSensorControlConfigSamplingSpecStructT_v02 gyroSamplingSpec; |
| /**< \n Sets the nominal rate at which the GNSS location engine is to request |
| gyro data. The sensor data rate is specified in terms of the nominal number of |
| samples per batch and the number of batches per second. |
| However, the final control of the actual requested rate resides with |
| the Sensors Manager Module/GNSS location engine. |
| */ |
| }qmiLocGetSensorPerformanceControlConfigIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Inject a SUPL certificate to be used in AGNSS sessions. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* SUPL Certificate Id */ |
| uint8_t suplCertId; |
| /**< Certificate Id of the Supl Certificate |
| Type: Unsigned Integer |
| Units: Bytes |
| Range: 0-9 */ |
| |
| /* Mandatory */ |
| /* SUPL certificate Data */ |
| uint32_t suplCertData_len; /**< Must be set to # of elements in suplCertData */ |
| uint8_t suplCertData[QMI_LOC_MAX_SUPL_CERT_LENGTH_V02]; |
| /**< The supl Certificate contents |
| Type: Array of bytes. |
| - Maximum certificate size : 2000 bytes */ |
| }qmiLocInjectSuplCertificateReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Inject a SUPL certificate to be used in AGNSS sessions. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Supl Certificate Injection Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the inject SUPL certificate request. \n |
| |
| Valid Values: |
| - 0x00000000 -- SUCCESS\n |
| - 0x00000001 -- GENERAL_FAILURE\n |
| - 0x00000002 -- UNSUPPORTED\n |
| - 0x00000003 -- INVALID_PARAMETER\n |
| - 0x00000004 -- ENGINE_BUSY\n |
| - 0x00000005 -- PHONE_OFFLINE\n |
| - 0x00000006 -- LOC_TIMEOUT\n |
| */ |
| }qmiLocInjectSuplCertificateIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Delete a SUPL certificate. */ |
| typedef struct { |
| |
| /* Optional */ |
| /* SUPL Certificate Id */ |
| uint8_t suplCertId_valid; /**< Must be set to true if suplCertId is being passed */ |
| uint8_t suplCertId; |
| /**< Certificate Id of the Supl Certificate to be deleted |
| Type: Unsigned Integer \n |
| Units: Bytes \n |
| Range: 0-9 \n |
| If suplCertId is not specified then |
| "all" supl certificates will be deleted. */ |
| }qmiLocDeleteSuplCertificateReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Delete a SUPL certificate. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* SUPL certifcate Deletion Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the delete SUPL certificate request. \n |
| |
| Valid Values: |
| - 0x00000000 -- SUCCESS\n |
| - 0x00000001 -- GENERAL_FAILURE\n |
| - 0x00000002 -- UNSUPPORTED\n |
| - 0x00000003 -- INVALID_PARAMETER\n |
| - 0x00000004 -- ENGINE_BUSY\n |
| - 0x00000005 -- PHONE_OFFLINE\n |
| - 0x00000006 -- LOC_TIMEOUT\n |
| */ |
| }qmiLocDeleteSuplCertificateIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| typedef uint32_t qmiLocPositionEngineConfigParamMaskT_v02; |
| #define QMI_LOC_POSITION_ENGINE_CONFIG_PARAM_MASK_INJECTED_POSITION_CONTROL_V02 ((qmiLocPositionEngineConfigParamMaskT_v02)0x00000001) /**< This field denotes if the position engine uses the |
| injected position in direct position calculation. */ |
| #define QMI_LOC_POSITION_ENGINE_CONFIG_PARAM_MASK_FILTER_SV_USAGE_V02 ((qmiLocPositionEngineConfigParamMaskT_v02)0x00000002) /**< This field denotes if the position engine filters the |
| SV usage in the fix. */ |
| #define QMI_LOC_POSITION_ENGINE_CONFIG_PARAM_MASK_STORE_ASSIST_DATA_V02 ((qmiLocPositionEngineConfigParamMaskT_v02)0x00000004) /**< This field denotes if the position engine stores assistance data |
| in the persistent memory. */ |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to configure position engine |
| functionality. */ |
| typedef struct { |
| |
| /* Optional */ |
| /* Injected Position Control */ |
| uint8_t injectedPositionControl_valid; /**< Must be set to true if injectedPositionControl is being passed */ |
| uint8_t injectedPositionControl; |
| /**< Controls how the injected position will be used in position engine.\n |
| Valid values: \n |
| - 0x01 (TRUE) -- Use the injected position in direct position |
| calculation. \n |
| - 0x00 (FALSE) -- Do not use the injected position in direct position |
| calculation. \n |
| The default value is TRUE, the injected position is used in direct |
| position calculation by default. |
| */ |
| |
| /* Optional */ |
| /* Filter SV Usage */ |
| uint8_t filterSvUsage_valid; /**< Must be set to true if filterSvUsage is being passed */ |
| uint8_t filterSvUsage; |
| /**< Controls if SV usage will be filtered in a position fix. |
| Valid values:\n |
| - 0x01 (TRUE) -- Filter the usage of SV's in the fix. \n |
| - 0x00 (FALSE) -- Do not filter the usage of SV's in the fix. \n |
| The default value is FALSE, the SV usage is not filtered in the |
| fix by default. |
| */ |
| |
| /* Optional */ |
| /* Store Assist Data */ |
| uint8_t storeAssistData_valid; /**< Must be set to true if storeAssistData is being passed */ |
| uint8_t storeAssistData; |
| /**< Controls whether assistance data should be stored in |
| the persistent memory. \n |
| Valid values:\n |
| - 0x01 (TRUE) -- Store assistance data in persistent memory. \n |
| - 0x00 (FALSE) -- Do not store assistance data in persistent memory. \n |
| The default value is TRUE, the assistance data is stored in |
| persistent memory by default. |
| */ |
| }qmiLocSetPositionEngineConfigParametersReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to configure position engine |
| functionality. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Set Position Engine Configuration Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Set Configuration Parameters request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Failed Parameters */ |
| uint8_t failedPositionEngineConfigParamMask_valid; /**< Must be set to true if failedPositionEngineConfigParamMask is being passed */ |
| qmiLocPositionEngineConfigParamMaskT_v02 failedPositionEngineConfigParamMask; |
| /**< This field will be sent only if the status is not a success. |
| Identifies the parameters that were not set successfully. |
| |
| Valid bitmasks: \n |
| - 0x00000001 -- INJECTED_POSITION_CONTROL \n |
| - 0x00000002 -- FILTER_SV_USAGE \n |
| - 0x00000004 -- STORE_ASSIST_DATA |
| */ |
| }qmiLocSetPositionEngineConfigParametersIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Request Message; Used by the control point to get the position engine |
| configuration parameters. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Config Parameters */ |
| qmiLocPositionEngineConfigParamMaskT_v02 getPositionEngineConfigParamMask; |
| /**< Mask denoting the configuration parameters to be retrieved. |
| Valid bitmasks: \n |
| - 0x00000001 -- INJECTED_POSITION_CONTROL \n |
| - 0x00000002 -- FILTER_SV_USAGE \n |
| - 0x00000004 -- STORE_ASSIST_DATA |
| */ |
| }qmiLocGetPositionEngineConfigParametersReqMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /** @addtogroup loc_qmi_messages |
| @{ |
| */ |
| /** Indication Message; Used by the control point to get the position engine |
| configuration parameters. */ |
| typedef struct { |
| |
| /* Mandatory */ |
| /* Get Position Engine Configuration Status */ |
| qmiLocStatusEnumT_v02 status; |
| /**< Status of the Get Configuration Parameters request. |
| |
| Valid values: \n |
| - 0x00000000 -- SUCCESS \n |
| - 0x00000001 -- GENERAL_FAILURE \n |
| - 0x00000002 -- UNSUPPORTED \n |
| - 0x00000003 -- INVALID_PARAMETER \n |
| - 0x00000004 -- ENGINE_BUSY \n |
| - 0x00000005 -- PHONE_OFFLINE \n |
| - 0x00000006 -- LOC_TIMEOUT |
| */ |
| |
| /* Optional */ |
| /* Injected Position Control */ |
| uint8_t injectedPositionControl_valid; /**< Must be set to true if injectedPositionControl is being passed */ |
| uint8_t injectedPositionControl; |
| /**< Specifies if the injected position is used for direct calculation |
| in the position engine.\n |
| Valid values: \n |
| - 0x01 (TRUE) -- The injected position is used in direct position |
| calculation. \n |
| - 0x00 (FALSE) -- The injected position is not used direct position |
| calculation. \n |
| The default value is TRUE, the injected position is used in direct |
| position calculation by default. |
| */ |
| |
| /* Optional */ |
| /* Filter SV Usage */ |
| uint8_t filterSvUsage_valid; /**< Must be set to true if filterSvUsage is being passed */ |
| uint8_t filterSvUsage; |
| /**< Specifies if SV usage is filtered in a position fix. |
| Valid values: \n |
| - 0x01 (TRUE) -- SV usage is filtered in the fix. \n |
| - 0x00 (FALSE) -- SV usage is not filtered in the fix. \n |
| The default value is FALSE, the SV usage is not filtered in the |
| fix by default. |
| */ |
| |
| /* Optional */ |
| /* Store Assist Data */ |
| uint8_t storeAssistData_valid; /**< Must be set to true if storeAssistData is being passed */ |
| uint8_t storeAssistData; |
| /**< Specifies if assistance data is stored in the persistent memory. \n |
| Valid values: \n |
| 0x01 (TRUE) -- Assistance data is stored in persistent memory. \n |
| 0x00 (FALSE) -- Assistance data is not stored in persistent memory. \n |
| The default value is TRUE, the assistance data is stored in |
| persistent memory by default. |
| */ |
| }qmiLocGetPositionEngineConfigParametersIndMsgT_v02; /* Message */ |
| /** |
| @} |
| */ |
| |
| /*Service Message Definition*/ |
| /** @addtogroup loc_qmi_msg_ids |
| @{ |
| */ |
| #define QMI_LOC_INFORM_CLIENT_REVISION_REQ_V02 0x0020 |
| #define QMI_LOC_INFORM_CLIENT_REVISION_RESP_V02 0x0020 |
| #define QMI_LOC_REG_EVENTS_REQ_V02 0x0021 |
| #define QMI_LOC_REG_EVENTS_RESP_V02 0x0021 |
| #define QMI_LOC_START_REQ_V02 0x0022 |
| #define QMI_LOC_START_RESP_V02 0x0022 |
| #define QMI_LOC_STOP_REQ_V02 0x0023 |
| #define QMI_LOC_STOP_RESP_V02 0x0023 |
| #define QMI_LOC_EVENT_POSITION_REPORT_IND_V02 0x0024 |
| #define QMI_LOC_EVENT_GNSS_SV_INFO_IND_V02 0x0025 |
| #define QMI_LOC_EVENT_NMEA_IND_V02 0x0026 |
| #define QMI_LOC_EVENT_NI_NOTIFY_VERIFY_REQ_IND_V02 0x0027 |
| #define QMI_LOC_EVENT_INJECT_TIME_REQ_IND_V02 0x0028 |
| #define QMI_LOC_EVENT_INJECT_PREDICTED_ORBITS_REQ_IND_V02 0x0029 |
| #define QMI_LOC_EVENT_INJECT_POSITION_REQ_IND_V02 0x002A |
| #define QMI_LOC_EVENT_ENGINE_STATE_IND_V02 0x002B |
| #define QMI_LOC_EVENT_FIX_SESSION_STATE_IND_V02 0x002C |
| #define QMI_LOC_EVENT_WIFI_REQ_IND_V02 0x002D |
| #define QMI_LOC_EVENT_SENSOR_STREAMING_READY_STATUS_IND_V02 0x002E |
| #define QMI_LOC_EVENT_TIME_SYNC_REQ_IND_V02 0x002F |
| #define QMI_LOC_EVENT_SET_SPI_STREAMING_REPORT_IND_V02 0x0030 |
| #define QMI_LOC_EVENT_LOCATION_SERVER_CONNECTION_REQ_IND_V02 0x0031 |
| #define QMI_LOC_GET_SERVICE_REVISION_REQ_V02 0x0032 |
| #define QMI_LOC_GET_SERVICE_REVISION_RESP_V02 0x0032 |
| #define QMI_LOC_GET_SERVICE_REVISION_IND_V02 0x0032 |
| #define QMI_LOC_GET_FIX_CRITERIA_REQ_V02 0x0033 |
| #define QMI_LOC_GET_FIX_CRITERIA_RESP_V02 0x0033 |
| #define QMI_LOC_GET_FIX_CRITERIA_IND_V02 0x0033 |
| #define QMI_LOC_NI_USER_RESPONSE_REQ_V02 0x0034 |
| #define QMI_LOC_NI_USER_RESPONSE_RESP_V02 0x0034 |
| #define QMI_LOC_NI_USER_RESPONSE_IND_V02 0x0034 |
| #define QMI_LOC_INJECT_PREDICTED_ORBITS_DATA_REQ_V02 0x0035 |
| #define QMI_LOC_INJECT_PREDICTED_ORBITS_DATA_RESP_V02 0x0035 |
| #define QMI_LOC_INJECT_PREDICTED_ORBITS_DATA_IND_V02 0x0035 |
| #define QMI_LOC_GET_PREDICTED_ORBITS_DATA_SOURCE_REQ_V02 0x0036 |
| #define QMI_LOC_GET_PREDICTED_ORBITS_DATA_SOURCE_RESP_V02 0x0036 |
| #define QMI_LOC_GET_PREDICTED_ORBITS_DATA_SOURCE_IND_V02 0x0036 |
| #define QMI_LOC_GET_PREDICTED_ORBITS_DATA_VALIDITY_REQ_V02 0x0037 |
| #define QMI_LOC_GET_PREDICTED_ORBITS_DATA_VALIDITY_RESP_V02 0x0037 |
| #define QMI_LOC_GET_PREDICTED_ORBITS_DATA_VALIDITY_IND_V02 0x0037 |
| #define QMI_LOC_INJECT_UTC_TIME_REQ_V02 0x0038 |
| #define QMI_LOC_INJECT_UTC_TIME_RESP_V02 0x0038 |
| #define QMI_LOC_INJECT_UTC_TIME_IND_V02 0x0038 |
| #define QMI_LOC_INJECT_POSITION_REQ_V02 0x0039 |
| #define QMI_LOC_INJECT_POSITION_RESP_V02 0x0039 |
| #define QMI_LOC_INJECT_POSITION_IND_V02 0x0039 |
| #define QMI_LOC_SET_ENGINE_LOCK_REQ_V02 0x003A |
| #define QMI_LOC_SET_ENGINE_LOCK_RESP_V02 0x003A |
| #define QMI_LOC_SET_ENGINE_LOCK_IND_V02 0x003A |
| #define QMI_LOC_GET_ENGINE_LOCK_REQ_V02 0x003B |
| #define QMI_LOC_GET_ENGINE_LOCK_RESP_V02 0x003B |
| #define QMI_LOC_GET_ENGINE_LOCK_IND_V02 0x003B |
| #define QMI_LOC_SET_SBAS_CONFIG_REQ_V02 0x003C |
| #define QMI_LOC_SET_SBAS_CONFIG_RESP_V02 0x003C |
| #define QMI_LOC_SET_SBAS_CONFIG_IND_V02 0x003C |
| #define QMI_LOC_GET_SBAS_CONFIG_REQ_V02 0x003D |
| #define QMI_LOC_GET_SBAS_CONFIG_RESP_V02 0x003D |
| #define QMI_LOC_GET_SBAS_CONFIG_IND_V02 0x003D |
| #define QMI_LOC_SET_NMEA_TYPES_REQ_V02 0x003E |
| #define QMI_LOC_SET_NMEA_TYPES_RESP_V02 0x003E |
| #define QMI_LOC_SET_NMEA_TYPES_IND_V02 0x003E |
| #define QMI_LOC_GET_NMEA_TYPES_REQ_V02 0x003F |
| #define QMI_LOC_GET_NMEA_TYPES_RESP_V02 0x003F |
| #define QMI_LOC_GET_NMEA_TYPES_IND_V02 0x003F |
| #define QMI_LOC_SET_LOW_POWER_MODE_REQ_V02 0x0040 |
| #define QMI_LOC_SET_LOW_POWER_MODE_RESP_V02 0x0040 |
| #define QMI_LOC_SET_LOW_POWER_MODE_IND_V02 0x0040 |
| #define QMI_LOC_GET_LOW_POWER_MODE_REQ_V02 0x0041 |
| #define QMI_LOC_GET_LOW_POWER_MODE_RESP_V02 0x0041 |
| #define QMI_LOC_GET_LOW_POWER_MODE_IND_V02 0x0041 |
| #define QMI_LOC_SET_SERVER_REQ_V02 0x0042 |
| #define QMI_LOC_SET_SERVER_RESP_V02 0x0042 |
| #define QMI_LOC_SET_SERVER_IND_V02 0x0042 |
| #define QMI_LOC_GET_SERVER_REQ_V02 0x0043 |
| #define QMI_LOC_GET_SERVER_RESP_V02 0x0043 |
| #define QMI_LOC_GET_SERVER_IND_V02 0x0043 |
| #define QMI_LOC_DELETE_ASSIST_DATA_REQ_V02 0x0044 |
| #define QMI_LOC_DELETE_ASSIST_DATA_RESP_V02 0x0044 |
| #define QMI_LOC_DELETE_ASSIST_DATA_IND_V02 0x0044 |
| #define QMI_LOC_SET_XTRA_T_SESSION_CONTROL_REQ_V02 0x0045 |
| #define QMI_LOC_SET_XTRA_T_SESSION_CONTROL_RESP_V02 0x0045 |
| #define QMI_LOC_SET_XTRA_T_SESSION_CONTROL_IND_V02 0x0045 |
| #define QMI_LOC_GET_XTRA_T_SESSION_CONTROL_REQ_V02 0x0046 |
| #define QMI_LOC_GET_XTRA_T_SESSION_CONTROL_RESP_V02 0x0046 |
| #define QMI_LOC_GET_XTRA_T_SESSION_CONTROL_IND_V02 0x0046 |
| #define QMI_LOC_INJECT_WIFI_POSITION_REQ_V02 0x0047 |
| #define QMI_LOC_INJECT_WIFI_POSITION_RESP_V02 0x0047 |
| #define QMI_LOC_INJECT_WIFI_POSITION_IND_V02 0x0047 |
| #define QMI_LOC_NOTIFY_WIFI_STATUS_REQ_V02 0x0048 |
| #define QMI_LOC_NOTIFY_WIFI_STATUS_RESP_V02 0x0048 |
| #define QMI_LOC_NOTIFY_WIFI_STATUS_IND_V02 0x0048 |
| #define QMI_LOC_GET_REGISTERED_EVENTS_REQ_V02 0x0049 |
| #define QMI_LOC_GET_REGISTERED_EVENTS_RESP_V02 0x0049 |
| #define QMI_LOC_GET_REGISTERED_EVENTS_IND_V02 0x0049 |
| #define QMI_LOC_SET_OPERATION_MODE_REQ_V02 0x004A |
| #define QMI_LOC_SET_OPERATION_MODE_RESP_V02 0x004A |
| #define QMI_LOC_SET_OPERATION_MODE_IND_V02 0x004A |
| #define QMI_LOC_GET_OPERATION_MODE_REQ_V02 0x004B |
| #define QMI_LOC_GET_OPERATION_MODE_RESP_V02 0x004B |
| #define QMI_LOC_GET_OPERATION_MODE_IND_V02 0x004B |
| #define QMI_LOC_SET_SPI_STATUS_REQ_V02 0x004C |
| #define QMI_LOC_SET_SPI_STATUS_RESP_V02 0x004C |
| #define QMI_LOC_SET_SPI_STATUS_IND_V02 0x004C |
| #define QMI_LOC_INJECT_SENSOR_DATA_REQ_V02 0x004D |
| #define QMI_LOC_INJECT_SENSOR_DATA_RESP_V02 0x004D |
| #define QMI_LOC_INJECT_SENSOR_DATA_IND_V02 0x004D |
| #define QMI_LOC_INJECT_TIME_SYNC_DATA_REQ_V02 0x004E |
| #define QMI_LOC_INJECT_TIME_SYNC_DATA_RESP_V02 0x004E |
| #define QMI_LOC_INJECT_TIME_SYNC_DATA_IND_V02 0x004E |
| #define QMI_LOC_SET_CRADLE_MOUNT_CONFIG_REQ_V02 0x004F |
| #define QMI_LOC_SET_CRADLE_MOUNT_CONFIG_RESP_V02 0x004F |
| #define QMI_LOC_SET_CRADLE_MOUNT_CONFIG_IND_V02 0x004F |
| #define QMI_LOC_GET_CRADLE_MOUNT_CONFIG_REQ_V02 0x0050 |
| #define QMI_LOC_GET_CRADLE_MOUNT_CONFIG_RESP_V02 0x0050 |
| #define QMI_LOC_GET_CRADLE_MOUNT_CONFIG_IND_V02 0x0050 |
| #define QMI_LOC_SET_EXTERNAL_POWER_CONFIG_REQ_V02 0x0051 |
| #define QMI_LOC_SET_EXTERNAL_POWER_CONFIG_RESP_V02 0x0051 |
| #define QMI_LOC_SET_EXTERNAL_POWER_CONFIG_IND_V02 0x0051 |
| #define QMI_LOC_GET_EXTERNAL_POWER_CONFIG_REQ_V02 0x0052 |
| #define QMI_LOC_GET_EXTERNAL_POWER_CONFIG_RESP_V02 0x0052 |
| #define QMI_LOC_GET_EXTERNAL_POWER_CONFIG_IND_V02 0x0052 |
| #define QMI_LOC_INFORM_LOCATION_SERVER_CONN_STATUS_REQ_V02 0x0053 |
| #define QMI_LOC_INFORM_LOCATION_SERVER_CONN_STATUS_RESP_V02 0x0053 |
| #define QMI_LOC_INFORM_LOCATION_SERVER_CONN_STATUS_IND_V02 0x0053 |
| #define QMI_LOC_SET_PROTOCOL_CONFIG_PARAMETERS_REQ_V02 0x0054 |
| #define QMI_LOC_SET_PROTOCOL_CONFIG_PARAMETERS_RESP_V02 0x0054 |
| #define QMI_LOC_SET_PROTOCOL_CONFIG_PARAMETERS_IND_V02 0x0054 |
| #define QMI_LOC_GET_PROTOCOL_CONFIG_PARAMETERS_REQ_V02 0x0055 |
| #define QMI_LOC_GET_PROTOCOL_CONFIG_PARAMETERS_RESP_V02 0x0055 |
| #define QMI_LOC_GET_PROTOCOL_CONFIG_PARAMETERS_IND_V02 0x0055 |
| #define QMI_LOC_SET_SENSOR_CONTROL_CONFIG_REQ_V02 0x0056 |
| #define QMI_LOC_SET_SENSOR_CONTROL_CONFIG_RESP_V02 0x0056 |
| #define QMI_LOC_SET_SENSOR_CONTROL_CONFIG_IND_V02 0x0056 |
| #define QMI_LOC_GET_SENSOR_CONTROL_CONFIG_REQ_V02 0x0057 |
| #define QMI_LOC_GET_SENSOR_CONTROL_CONFIG_RESP_V02 0x0057 |
| #define QMI_LOC_GET_SENSOR_CONTROL_CONFIG_IND_V02 0x0057 |
| #define QMI_LOC_SET_SENSOR_PROPERTIES_REQ_V02 0x0058 |
| #define QMI_LOC_SET_SENSOR_PROPERTIES_RESP_V02 0x0058 |
| #define QMI_LOC_SET_SENSOR_PROPERTIES_IND_V02 0x0058 |
| #define QMI_LOC_GET_SENSOR_PROPERTIES_REQ_V02 0x0059 |
| #define QMI_LOC_GET_SENSOR_PROPERTIES_RESP_V02 0x0059 |
| #define QMI_LOC_GET_SENSOR_PROPERTIES_IND_V02 0x0059 |
| #define QMI_LOC_SET_SENSOR_PERFORMANCE_CONTROL_CONFIGURATION_REQ_V02 0x005A |
| #define QMI_LOC_SET_SENSOR_PERFORMANCE_CONTROL_CONFIGURATION_RESP_V02 0x005A |
| #define QMI_LOC_SET_SENSOR_PERFORMANCE_CONTROL_CONFIGURATION_IND_V02 0x005A |
| #define QMI_LOC_GET_SENSOR_PERFORMANCE_CONTROL_CONFIGURATION_REQ_V02 0x005B |
| #define QMI_LOC_GET_SENSOR_PERFORMANCE_CONTROL_CONFIGURATION_RESP_V02 0x005B |
| #define QMI_LOC_GET_SENSOR_PERFORMANCE_CONTROL_CONFIGURATION_IND_V02 0x005B |
| #define QMI_LOC_INJECT_SUPL_CERTIFICATE_REQ_V02 0x005C |
| #define QMI_LOC_INJECT_SUPL_CERTIFICATE_RESP_V02 0x005C |
| #define QMI_LOC_INJECT_SUPL_CERTIFICATE_IND_V02 0x005C |
| #define QMI_LOC_DELETE_SUPL_CERTIFICATE_REQ_V02 0x005D |
| #define QMI_LOC_DELETE_SUPL_CERTIFICATE_RESP_V02 0x005D |
| #define QMI_LOC_DELETE_SUPL_CERTIFICATE_IND_V02 0x005D |
| #define QMI_LOC_SET_POSITION_ENGINE_CONFIG_PARAMETERS_REQ_V02 0x005E |
| #define QMI_LOC_SET_POSITION_ENGINE_CONFIG_PARAMETERS_RESP_V02 0x005E |
| #define QMI_LOC_SET_POSITION_ENGINE_CONFIG_PARAMETERS_IND_V02 0x005E |
| #define QMI_LOC_GET_POSITION_ENGINE_CONFIG_PARAMETERS_REQ_V02 0x005F |
| #define QMI_LOC_GET_POSITION_ENGINE_CONFIG_PARAMETERS_RESP_V02 0x005F |
| #define QMI_LOC_GET_POSITION_ENGINE_CONFIG_PARAMETERS_IND_V02 0x005F |
| /** |
| @} |
| */ |
| |
| /* Service Object Accessor */ |
| /** @addtogroup wms_qmi_accessor |
| @{ |
| */ |
| /** This function is used internally by the autogenerated code. Clients should use the |
| macro loc_get_service_object_v02( ) that takes in no arguments. */ |
| qmi_idl_service_object_type loc_get_service_object_internal_v02 |
| ( int32_t idl_maj_version, int32_t idl_min_version, int32_t library_version ); |
| |
| /** This macro should be used to get the service object */ |
| #define loc_get_service_object_v02( ) \ |
| loc_get_service_object_internal_v02( \ |
| LOC_V02_IDL_MAJOR_VERS, LOC_V02_IDL_MINOR_VERS, \ |
| LOC_V02_IDL_TOOL_VERS ) |
| /** |
| @} |
| */ |
| |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| #endif |
| |