le_gnss_interface.h
Go to the documentation of this file.
24 * GNSS or Global Navigation Satellite System is a satellite navigation system with global coverage.55 * The other starting functions that allow to start or restart the GNSS devices in particular modes60 * A diagram of GNSS device state machine showing how to use the different starting fonctions can be73 * The le_gnss_StartMode() function clears the @ref le_gnss_Data according to the starting mode and75 * In HOT mode, no data are cleared, the GNSS is started with its available data. It is equivalent76 * to @ref le_gnss_Start() function. In WARM mode, GNSS is started after the Ephemeris are cleared.77 * In COLD mode, GNSS is started after all data are cleared except Almanac and in Factory mode GNSS81 * The le_gnss_ForceHotRestart() function performs a "HOT" restart of the GNSS device. The current86 * The le_gnss_ForceWarmRestart() function performs a "WARM" restart of the GNSS device. The current93 * The le_gnss_ForceColdRestart() function performs a "COLD" restart of the GNSS device. The current129 * The le_gnss_GetTtff() function provides the TTFF (first between 2-Dimensional or 3-Dimensional132 * le_gnss_GetPositionState() function. The GNSS fix position states are given by le_gnss_FixState_t143 * The le_gnss_InjectUtcTime() function injects the UTC time into the location engine. Providing an145 * @note It is mandatory to enable the 'Extended Ephemeris' file injection into the GNSS device with149 * Please refer to your platform documentation @ref platformConstraintsGnss_SettingConfiguration for153 * The GNSS position is computed and delivered each acquisition rate. The acquisition rate defines162 * The le_gnss_EnableExternalLna() function enables the EXT_GPS_LNA_EN signal. The pin is set high165 * The le_gnss_DisableExternalLna() function disables the EXT_GPS_LNA_EN signal. The pin remains off181 * Please refer to your platform documentation @ref platformConstraintsGnss_SettingConfiguration for184 * Combinations of constellation for GPS, GLONASS, BDS, GALILEO and QZSS satellites are currently194 * le_gnss_SetConstellationArea sets the area for a GNSS constellation. le_gnss_GetConstellationArea216 * @ref le_gnss_NMEA with a bit mask. The supported values are listed in @ref le_gnss_NmeaBitMask_t.218 * @note This function may be subject to limitations depending on the platform. Please refer to the222 * Please refer to your platform documentation @ref platformConstraintsGnss_SettingConfiguration for230 * The le_gnss_GetNmeaSentences() function gets the bit mask of the enabled NMEA sentences in the233 * The le_gnss_GetSupportedNmeaSentences() function gets a bit mask of the NMEA sentences supported250 * ''LE_OK or error code'' means the function is authorized in the corresponding state, the request251 * is performed and the result is returned; otherwise the returned error is indicated for each state254 *| ----------------------------- | --------------------------- | -----------------------------| --------------------------- | --------------------------- |257 *| le_gnss_ForceHotRestart() | LE_NOT_PERMITTED | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED |258 *| le_gnss_ForceWarmRestart() | LE_NOT_PERMITTED | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED |259 *| le_gnss_ForceColdRestart() | LE_NOT_PERMITTED | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED |260 *| le_gnss_ForceFactoryRestart() | LE_NOT_PERMITTED | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED |261 *| le_gnss_Disable() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_DUPLICATE |263 *| le_gnss_SetConstellation() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |264 *| le_gnss_GetConstellation() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |265 *| le_gnss_SetConstellationArea() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |266 *| le_gnss_GetConstellationArea() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |267 *| le_gnss_GetTtff() | LE_NOT_PERMITTED | LE_OK or error code | LE_OK or error code | LE_NOT_PERMITTED |268 *| le_gnss_SetAcquisitionRate() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |269 *| le_gnss_GetAcquisitionRate() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |270 *| le_gnss_SetNmeaSentences() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |271 *| le_gnss_GetNmeaSentences() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |272 *| le_gnss_EnableExternalLna() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |273 *| le_gnss_DisableExternalLna() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |274 *| le_gnss_GetExternalLna() | LE_NOT_PERMITTED | LE_OK or error code | LE_NOT_PERMITTED | LE_NOT_PERMITTED |327 * le_gnss_SetDataResolution() function can be called to configure the resolution of position data335 * le_gnss_SetDataResolution() function is called with vertical position accuracy set as data type338 * @note If le_gnss_SetDataResolution() function is not called, the position data types are received357 * A sample code using le_gnss_ConvertDataCoordinate() function can be seen in the following page:365 * @c le_gnss_SetDopResolution() and @c le_gnss_GetDilutionOfPrecision() functions should be called403 * With le_gnss_GetExtendedEphemerisValidity(), you will to get the validity of the last injected416 * That 3GPP User Plane A-GNSS (Assisted GNSS) protocol is defined by two different standardization417 * bodies, 3GPP and Open Mobile Alliance (OMA). For more information, please refer to the standard.422 *, then returns the retrieved GNSS data to the SUPL (Secure User Plan Location) server, where the426 * server. The MS measures the signals from the GNSS satellites and makes the position calculation.439 * The SUPL server is configured using the le_gnss_SetSuplServerUrl() function. That function sets443 * le_gnss_InjectSuplCertificate() function and deleted through the le_gnss_DeleteSuplCertificate()445 * The SUPL certificate lenght given as parameter to le_gnss_InjectSuplCertificate() must be less522 //--------------------------------------------------------------------------------------------------526 //--------------------------------------------------------------------------------------------------529 //--------------------------------------------------------------------------------------------------532 * Connect the current client thread to the service providing this API. Block until the service is535 * For each thread that wants to use this API, either ConnectService or TryConnectService must be536 * called before any other functions in this API. Normally, ConnectService is automatically called541 //--------------------------------------------------------------------------------------------------547 //--------------------------------------------------------------------------------------------------550 * Try to connect the current client thread to the service providing this API. Return with an error553 * For each thread that wants to use this API, either ConnectService or TryConnectService must be554 * called before any other functions in this API. Normally, ConnectService is automatically called563 * - LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).566 //--------------------------------------------------------------------------------------------------572 //--------------------------------------------------------------------------------------------------576 * When a server connection is lost, call this handler then exit with LE_FATAL. If a program wants579 //--------------------------------------------------------------------------------------------------586 //--------------------------------------------------------------------------------------------------592 * longer a connection to the service, and the functions in this API can't be used. For details, see597 //--------------------------------------------------------------------------------------------------604 //--------------------------------------------------------------------------------------------------608 //--------------------------------------------------------------------------------------------------611 //--------------------------------------------------------------------------------------------------615 //--------------------------------------------------------------------------------------------------618 //--------------------------------------------------------------------------------------------------622 //--------------------------------------------------------------------------------------------------625 //--------------------------------------------------------------------------------------------------629 //--------------------------------------------------------------------------------------------------632 //--------------------------------------------------------------------------------------------------636 //--------------------------------------------------------------------------------------------------639 //--------------------------------------------------------------------------------------------------643 //--------------------------------------------------------------------------------------------------646 //--------------------------------------------------------------------------------------------------650 //--------------------------------------------------------------------------------------------------653 //--------------------------------------------------------------------------------------------------657 //--------------------------------------------------------------------------------------------------660 //--------------------------------------------------------------------------------------------------664 //--------------------------------------------------------------------------------------------------667 //--------------------------------------------------------------------------------------------------671 //--------------------------------------------------------------------------------------------------674 //--------------------------------------------------------------------------------------------------680 //--------------------------------------------------------------------------------------------------683 //--------------------------------------------------------------------------------------------------692 //--------------------------------------------------------------------------------------------------695 //--------------------------------------------------------------------------------------------------699 //--------------------------------------------------------------------------------------------------702 //--------------------------------------------------------------------------------------------------706 //--------------------------------------------------------------------------------------------------709 //--------------------------------------------------------------------------------------------------713 //--------------------------------------------------------------------------------------------------716 //--------------------------------------------------------------------------------------------------721 //--------------------------------------------------------------------------------------------------724 //--------------------------------------------------------------------------------------------------728 //--------------------------------------------------------------------------------------------------731 //--------------------------------------------------------------------------------------------------747 //--------------------------------------------------------------------------------------------------754 //--------------------------------------------------------------------------------------------------765 //--------------------------------------------------------------------------------------------------772 //--------------------------------------------------------------------------------------------------786 //--------------------------------------------------------------------------------------------------795 //--------------------------------------------------------------------------------------------------808 //--------------------------------------------------------------------------------------------------817 //--------------------------------------------------------------------------------------------------828 //--------------------------------------------------------------------------------------------------834 //--------------------------------------------------------------------------------------------------845 //--------------------------------------------------------------------------------------------------851 //--------------------------------------------------------------------------------------------------860 //--------------------------------------------------------------------------------------------------867 //--------------------------------------------------------------------------------------------------878 //--------------------------------------------------------------------------------------------------885 //--------------------------------------------------------------------------------------------------893 * @note If the caller is passing an invalid Position sample reference or null pointers into this896 //--------------------------------------------------------------------------------------------------905 //--------------------------------------------------------------------------------------------------914 * @note It is mandatory to enable the 'Extended Ephemeris' file injection into the GNSS device with917 //--------------------------------------------------------------------------------------------------926 //--------------------------------------------------------------------------------------------------937 //--------------------------------------------------------------------------------------------------943 //--------------------------------------------------------------------------------------------------954 * @warning This function may be subject to limitations depending on the platform. Please refer to957 //--------------------------------------------------------------------------------------------------964 //--------------------------------------------------------------------------------------------------975 //--------------------------------------------------------------------------------------------------981 //--------------------------------------------------------------------------------------------------990 * @Note This API can be used to restart the GNSS device. It is equivalent calling le_gnss_Stop()993 //--------------------------------------------------------------------------------------------------999 //--------------------------------------------------------------------------------------------------1011 //--------------------------------------------------------------------------------------------------1017 //--------------------------------------------------------------------------------------------------1027 //--------------------------------------------------------------------------------------------------1033 //--------------------------------------------------------------------------------------------------1043 //--------------------------------------------------------------------------------------------------1049 //--------------------------------------------------------------------------------------------------1062 //--------------------------------------------------------------------------------------------------1069 //--------------------------------------------------------------------------------------------------1082 //--------------------------------------------------------------------------------------------------1088 //--------------------------------------------------------------------------------------------------1101 //--------------------------------------------------------------------------------------------------1107 //--------------------------------------------------------------------------------------------------1119 * @warning This function may be subject to limitations depending on the platform. Please refer to1125 //--------------------------------------------------------------------------------------------------1132 //--------------------------------------------------------------------------------------------------1144 //--------------------------------------------------------------------------------------------------1151 //--------------------------------------------------------------------------------------------------1161 //--------------------------------------------------------------------------------------------------1170 //--------------------------------------------------------------------------------------------------1174 //--------------------------------------------------------------------------------------------------1181 //--------------------------------------------------------------------------------------------------1188 * @note If the caller is passing an invalid Position sample reference or a null pointer into this1191 //--------------------------------------------------------------------------------------------------1200 //--------------------------------------------------------------------------------------------------1224 //--------------------------------------------------------------------------------------------------1237 //--------------------------------------------------------------------------------------------------1246 * @note horUncEllipseSemiMajorPtr, horUncEllipseSemiMinorPtr and horConfidencePtr can be set to1251 * @note The confidence level is given in an integer percentage with values ranging from 0 to 99.1260 //--------------------------------------------------------------------------------------------------1273 //--------------------------------------------------------------------------------------------------1282 * @note Altitude is in meters, above Mean Sea Level, with 3 decimal places (3047 = 3.047 meters).1299 //--------------------------------------------------------------------------------------------------1310 //--------------------------------------------------------------------------------------------------1319 * @note If the caller is passing an invalid Position sample reference or null pointers into this1323 //--------------------------------------------------------------------------------------------------1338 //--------------------------------------------------------------------------------------------------1347 * @note If the caller is passing an invalid Position sample reference or null pointers into this1350 //--------------------------------------------------------------------------------------------------1361 //--------------------------------------------------------------------------------------------------1373 * @note If the caller is passing an invalid position sample reference or a null pointer into this1376 //--------------------------------------------------------------------------------------------------1385 //--------------------------------------------------------------------------------------------------1394 * @note If the caller is passing an invalid position sample reference or a null pointer into this1397 //--------------------------------------------------------------------------------------------------1406 //--------------------------------------------------------------------------------------------------1415 * @note The leap seconds in advance is the accumulated time in seconds since the start of GPS Epoch1418 * @note Insertion of each UTC leap second is usually decided about six months in advance by the1421 * @note If the caller is passing an invalid position sample reference or a null pointer into this1426 //--------------------------------------------------------------------------------------------------1435 //--------------------------------------------------------------------------------------------------1445 * @note Insertion of each UTC leap second is usually decided about six months in advance by the1451 * @note If the return value of a parameter is INT32_MAX/UINT64_MAX, the parameter is not valid.1453 //--------------------------------------------------------------------------------------------------1469 //--------------------------------------------------------------------------------------------------1478 * @note If the caller is passing an invalid Position sample reference or null pointers into this1481 //--------------------------------------------------------------------------------------------------1494 //--------------------------------------------------------------------------------------------------1504 * @note Horizontal speed is in meters/second with 2 decimal places (3047 = 30.47 meters/second).1506 * @note Horizontal speed accuracy estimate is default set to meters/second with 1 decimal place1520 //--------------------------------------------------------------------------------------------------1531 //--------------------------------------------------------------------------------------------------1559 //--------------------------------------------------------------------------------------------------1571 //--------------------------------------------------------------------------------------------------1573 * Get the position sample's direction. Direction of movement is the direction that the vehicle or1581 * @note Direction and direction accuracy are given in degrees with 1 decimal place: 1755 = 175.51593 //--------------------------------------------------------------------------------------------------1606 //--------------------------------------------------------------------------------------------------1628 //--------------------------------------------------------------------------------------------------1668 //--------------------------------------------------------------------------------------------------1673 //--------------------------------------------------------------------------------------------------1680 //--------------------------------------------------------------------------------------------------1695 //--------------------------------------------------------------------------------------------------1708 //--------------------------------------------------------------------------------------------------1723 //--------------------------------------------------------------------------------------------------1734 //--------------------------------------------------------------------------------------------------1746 * @note For a 2D position fix, the altitude with respect to the WGS-84 ellipsoid will be indicated1752 //--------------------------------------------------------------------------------------------------1762 //--------------------------------------------------------------------------------------------------1778 //--------------------------------------------------------------------------------------------------1787 //--------------------------------------------------------------------------------------------------1797 //--------------------------------------------------------------------------------------------------1803 //--------------------------------------------------------------------------------------------------1810 //--------------------------------------------------------------------------------------------------1817 //--------------------------------------------------------------------------------------------------1830 //--------------------------------------------------------------------------------------------------1837 //--------------------------------------------------------------------------------------------------1848 //--------------------------------------------------------------------------------------------------1855 //--------------------------------------------------------------------------------------------------1873 //--------------------------------------------------------------------------------------------------1880 //--------------------------------------------------------------------------------------------------1896 //--------------------------------------------------------------------------------------------------1908 //--------------------------------------------------------------------------------------------------1919 //--------------------------------------------------------------------------------------------------1927 //--------------------------------------------------------------------------------------------------1939 * @warning This function may be subject to limitations depending on the platform. Please refer to1949 //--------------------------------------------------------------------------------------------------1956 //--------------------------------------------------------------------------------------------------1974 //--------------------------------------------------------------------------------------------------1981 //--------------------------------------------------------------------------------------------------1986 //--------------------------------------------------------------------------------------------------1992 //--------------------------------------------------------------------------------------------------2005 //--------------------------------------------------------------------------------------------------2012 //--------------------------------------------------------------------------------------------------2024 //--------------------------------------------------------------------------------------------------2031 //--------------------------------------------------------------------------------------------------2044 //--------------------------------------------------------------------------------------------------2051 //--------------------------------------------------------------------------------------------------2063 //--------------------------------------------------------------------------------------------------2072 //--------------------------------------------------------------------------------------------------2084 //--------------------------------------------------------------------------------------------------2099 //--------------------------------------------------------------------------------------------------2109 //--------------------------------------------------------------------------------------------------2115 //--------------------------------------------------------------------------------------------------2124 //--------------------------------------------------------------------------------------------------2130 //--------------------------------------------------------------------------------------------------2139 //--------------------------------------------------------------------------------------------------2146 //--------------------------------------------------------------------------------------------------2153 //--------------------------------------------------------------------------------------------------2160 //--------------------------------------------------------------------------------------------------2167 //--------------------------------------------------------------------------------------------------2174 //--------------------------------------------------------------------------------------------------2181 //--------------------------------------------------------------------------------------------------2188 //--------------------------------------------------------------------------------------------------2195 //--------------------------------------------------------------------------------------------------le_result_t le_gnss_GetConstellation(le_gnss_ConstellationBitMask_t *constellationMaskPtr)le_result_t le_gnss_Enable(void)le_result_t le_gnss_GetExternalLna(uint8_t *lnaStatusPtr)le_result_t le_gnss_ForceHotRestart(void)le_result_t le_gnss_SetAcquisitionRate(uint32_t rate)le_result_t le_gnss_GetEpochTime(le_gnss_SampleRef_t positionSampleRef, uint64_t *millisecondsPtr)le_result_t le_gnss_GetSuplAssistedMode(le_gnss_AssistedMode_t *assistedModePtr)void le_gnss_RemovePositionHandler(le_gnss_PositionHandlerRef_t handlerRef)le_result_t le_gnss_GetExtendedEphemerisValidity(uint64_t *startTimePtr, uint64_t *stopTimePtr)le_result_t le_gnss_GetTtff(uint32_t *ttffPtr)le_result_t le_gnss_ForceColdRestart(void)le_result_t le_gnss_GetAltitude(le_gnss_SampleRef_t positionSampleRef, int32_t *altitudePtr, int32_t *vAccuracyPtr)le_result_t le_gnss_SetSuplServerUrl(const char *LE_NONNULL suplServerUrl)le_result_t le_gnss_GetMinElevation(uint8_t *minElevationPtrPtr)le_result_t le_gnss_ForceWarmRestart(void)le_result_t le_gnss_GetPositionState(le_gnss_SampleRef_t positionSampleRef, le_gnss_FixState_t *statePtr)le_result_t le_gnss_EnableExtendedEphemerisFile(void)le_gnss_State_t le_gnss_GetState(void)le_result_t le_gnss_SetConstellation(le_gnss_ConstellationBitMask_t constellationMask)le_result_t le_gnss_GetSatellitesInfo(le_gnss_SampleRef_t positionSampleRef, uint16_t *satIdPtr, size_t *satIdSizePtr, le_gnss_Constellation_t *satConstPtr, size_t *satConstSizePtr, bool *satUsedPtr, size_t *satUsedSizePtr, uint8_t *satSnrPtr, size_t *satSnrSizePtr, uint16_t *satAzimPtr, size_t *satAzimSizePtr, uint8_t *satElevPtr, size_t *satElevSizePtr)le_result_t le_gnss_StartMode(le_gnss_StartMode_t mode)void le_gnss_ConnectService(void)le_result_t le_gnss_SetNmeaSentences(le_gnss_NmeaBitMask_t nmeaMask)void le_gnss_DisconnectService(void)le_result_t le_gnss_DisableExternalLna(void)le_result_t le_gnss_GetNmeaSentences(le_gnss_NmeaBitMask_t *nmeaMaskPtrPtr)le_result_t le_gnss_SetMinElevation(uint8_t minElevation)le_gnss_SbasConstellationCategory_tDefinition: le_gnss_common.h:214le_gnss_SbasConstellationCategory_t le_gnss_GetSbasConstellationCategory(uint16_t satId)le_result_t le_gnss_GetSatellitesStatus(le_gnss_SampleRef_t positionSampleRef, uint8_t *satsInViewCountPtr, uint8_t *satsTrackingCountPtr, uint8_t *satsUsedCountPtr)le_result_t le_gnss_SetConstellationArea(le_gnss_Constellation_t satConstellation, le_gnss_ConstellationArea_t constellationArea)le_result_t le_gnss_TryConnectService(void)le_result_t le_gnss_InjectSuplCertificate(uint8_t suplCertificateId, uint16_t suplCertificateLen, const char *LE_NONNULL suplCertificate)le_result_t le_gnss_GetMagneticDeviation(le_gnss_SampleRef_t positionSampleRef, int32_t *magneticDeviationPtr)le_result_t le_gnss_ConvertDataCoordinateSystem(le_gnss_CoordinateSystem_t coordinateSrc, le_gnss_CoordinateSystem_t coordinateDst, le_gnss_LocationDataType_t locationDataType, int64_t locationDataSrc, int64_t *locationDataDstPtr)le_result_t le_gnss_GetSupportedNmeaSentences(le_gnss_NmeaBitMask_t *NmeaMaskPtr)le_result_t le_gnss_GetSupportedConstellations(le_gnss_ConstellationBitMask_t *constellationMaskPtr)le_result_t le_gnss_GetMinNmeaRate(uint32_t *minNmeaRatePtr)le_result_t le_gnss_GetTime(le_gnss_SampleRef_t positionSampleRef, uint16_t *hoursPtr, uint16_t *minutesPtr, uint16_t *secondsPtr, uint16_t *millisecondsPtr)le_result_t le_gnss_GetLocation(le_gnss_SampleRef_t positionSampleRef, int32_t *latitudePtr, int32_t *longitudePtr, int32_t *hAccuracyPtr)le_result_t le_gnss_GetAltitudeOnWgs84(le_gnss_SampleRef_t positionSampleRef, int32_t *altitudeOnWgs84Ptr)le_result_t le_gnss_GetEllipticalUncertainty(le_gnss_SampleRef_t positionSampleRef, uint32_t *horUncEllipseSemiMajorPtr, uint32_t *horUncEllipseSemiMinorPtr, uint8_t *horConfidencePtr)le_result_t le_gnss_Stop(void)le_result_t le_gnss_DownloadExtendedEphemeris(uint32_t days)le_result_t le_gnss_GetAcquisitionRate(uint32_t *ratePtr)void(* le_gnss_PositionHandlerFunc_t)(le_gnss_SampleRef_t positionSampleRef, void *contextPtr)Definition: le_gnss_common.h:459le_result_t le_gnss_GetMaxNmeaRate(uint32_t *maxNmeaRatePtr)le_result_t le_gnss_GetVerticalSpeed(le_gnss_SampleRef_t positionSampleRef, int32_t *vspeedPtr, int32_t *vspeedAccuracyPtr)LE_FULL_API void le_gnss_SetServerDisconnectHandler(le_gnss_DisconnectHandler_t disconnectHandler, void *contextPtr)le_result_t le_gnss_GetGpsLeapSeconds(le_gnss_SampleRef_t positionSampleRef, uint8_t *leapSecondsPtr)le_result_t le_gnss_Disable(void)void le_gnss_ReleaseSampleRef(le_gnss_SampleRef_t positionSampleRef)void(* le_gnss_DisconnectHandler_t)(void *)Definition: le_gnss_interface.h:527le_result_t le_gnss_GetHorizontalSpeed(le_gnss_SampleRef_t positionSampleRef, uint32_t *hspeedPtr, uint32_t *hspeedAccuracyPtr)struct le_gnss_PositionHandler * le_gnss_PositionHandlerRef_tDefinition: le_gnss_common.h:449le_result_t le_gnss_InjectUtcTime(uint64_t timeUtc, uint32_t timeUnc)le_gnss_SampleRef_t le_gnss_GetLastSampleRef(void)le_result_t le_gnss_GetGpsTime(le_gnss_SampleRef_t positionSampleRef, uint32_t *gpsWeekPtr, uint32_t *gpsTimeOfWeekPtr)le_result_t le_gnss_DeleteSuplCertificate(uint8_t suplCertificateId)le_result_t le_gnss_LoadExtendedEphemerisFile(int fd)le_result_t le_gnss_SetDopResolution(le_gnss_Resolution_t resolution)le_result_t le_gnss_SetDataResolution(le_gnss_DataType_t dataType, le_gnss_Resolution_t resolution)le_gnss_PositionHandlerRef_t le_gnss_AddPositionHandler(le_gnss_PositionHandlerFunc_t handlerPtr, void *contextPtr)le_result_t le_gnss_Start(void)le_result_t le_gnss_EnableExternalLna(void)le_result_t le_gnss_GetDate(le_gnss_SampleRef_t positionSampleRef, uint16_t *yearPtr, uint16_t *monthPtr, uint16_t *dayPtr)le_result_t le_gnss_DisableExtendedEphemerisFile(void)le_result_t le_gnss_GetDirection(le_gnss_SampleRef_t positionSampleRef, uint32_t *directionPtr, uint32_t *directionAccuracyPtr)le_result_t le_gnss_ForceFactoryRestart(void)le_result_t le_gnss_SetSuplAssistedMode(le_gnss_AssistedMode_t assistedMode)le_result_t le_gnss_GetLeapSeconds(uint64_t *gpsTimePtr, int32_t *currentLeapSecondsPtr, uint64_t *changeEventTimePtr, int32_t *nextLeapSecondsPtr)le_result_t le_gnss_GetDilutionOfPrecision(le_gnss_SampleRef_t positionSampleRef, le_gnss_DopType_t dopType, uint16_t *dopPtr)le_result_t le_gnss_GetTimeAccuracy(le_gnss_SampleRef_t positionSampleRef, uint32_t *timeAccuracyPtr)le_result_t le_gnss_GetConstellationArea(le_gnss_Constellation_t satConstellation, le_gnss_ConstellationArea_t *constellationAreaPtr)