summaryrefslogtreecommitdiff
path: root/location/LocationAPI.h
diff options
context:
space:
mode:
authorSaurabh Srivastava <ssrivast@codeaurora.org>2018-05-20 19:29:46 +0530
committerSaurabh Srivastava <ssrivast@codeaurora.org>2018-06-03 12:15:34 +0530
commiteaf7e54b54a31c571560bf5fe869bb235a2aacaf (patch)
tree2f4bf20ac4196ba2439b38f80c7de31b1ce5467f /location/LocationAPI.h
parenta93b10c6770079c9f23ca3484b56fa0136b25464 (diff)
downloadgps-eaf7e54b54a31c571560bf5fe869bb235a2aacaf.tar.gz
FR 45651 - GNSS SV/Constellation Control
Adding support for configuring GNSS SVs and constellations to be used. Change-Id: I47d5cd9d08ac9aaf633be2fe3b1bd152a2f4293b CRs-Fixed: 2184871
Diffstat (limited to 'location/LocationAPI.h')
-rw-r--r--location/LocationAPI.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/location/LocationAPI.h b/location/LocationAPI.h
index ce38bc6..cfdb19f 100644
--- a/location/LocationAPI.h
+++ b/location/LocationAPI.h
@@ -178,6 +178,7 @@ typedef struct {
size_t size; // set to sizeof(LocationControlCallbacks)
responseCallback responseCb; // mandatory
collectiveResponseCallback collectiveResponseCb; // mandatory
+ gnssConfigCallback gnssConfigCb; // optional
} LocationControlCallbacks;
class LocationControlAPI : public ILocationControlAPI
@@ -231,6 +232,21 @@ public:
LOCATION_ERROR_GENERAL_FAILURE if failure for any other reason */
virtual uint32_t* gnssUpdateConfig(GnssConfig config) override;
+ /* gnssGetConfig fetches the current constellation and SV configuration
+ on the GNSS engine.
+ Returns a session id array with an id for each of the bits set in
+ the mask parameter, order from low bits to high bits.
+ Response is sent via the registered gnssConfigCallback.
+ This effect is global for all clients of LocationAPI
+ collectiveResponseCallback returns:
+ LOCATION_ERROR_SUCCESS if session was successful
+ LOCATION_ERROR_INVALID_PARAMETER if any parameter is invalid
+ LOCATION_ERROR_CALLBACK_MISSING If no gnssConfigCallback
+ was passed in createInstance
+ LOCATION_ERROR_NOT_SUPPORTED If read of requested configuration
+ is not supported */
+ uint32_t* gnssGetConfig(GnssConfigFlagsMask mask);
+
/* delete specific gnss aiding data for testing, which returns a session id
that will be returned in responseCallback to match command with response.
Only allowed in userdebug builds. This effect is global for all clients of LocationAPI