#include "legato.h"
Go to the source code of this file.
Typedefs | |
typedef struct le_pos_Sample * | le_pos_SampleRef_t |
typedef struct le_pos_MovementHandler * | le_pos_MovementHandlerRef_t |
typedef void(* | le_pos_MovementHandlerFunc_t) (le_pos_SampleRef_t positionSampleRef, void *contextPtr) |
Functions | |
void | le_pos_ConnectService (void) |
void | le_pos_DisconnectService (void) |
le_pos_MovementHandlerRef_t | le_pos_AddMovementHandler (uint32_t horizontalMagnitude, uint32_t verticalMagnitude, le_pos_MovementHandlerFunc_t handlerPtr, void *contextPtr) |
void | le_pos_RemoveMovementHandler (le_pos_MovementHandlerRef_t addHandlerRef) |
le_result_t | le_pos_Get2DLocation (int32_t *latitudePtr, int32_t *longitudePtr, int32_t *hAccuracyPtr) |
le_result_t | le_pos_Get3DLocation (int32_t *latitudePtr, int32_t *longitudePtr, int32_t *hAccuracyPtr, int32_t *altitudePtr, int32_t *vAccuracyPtr) |
le_result_t | le_pos_GetTime (uint16_t *hoursPtr, uint16_t *minutesPtr, uint16_t *secondsPtr, uint16_t *millisecondsPtr) |
le_result_t | le_pos_GetDate (uint16_t *yearPtr, uint16_t *monthPtr, uint16_t *dayPtr) |
le_result_t | le_pos_GetMotion (uint32_t *hSpeedPtrPtr, int32_t *hSpeedAccuracyPtrPtr, int32_t *vSpeedPtrPtr, int32_t *vSpeedAccuracyPtrPtr) |
le_result_t | le_pos_GetHeading (int32_t *headingPtr, int32_t *headingAccuracyPtr) |
le_result_t | le_pos_GetDirection (int32_t *directionPtr, int32_t *directionAccuracyPtr) |
le_result_t | le_pos_sample_Get2DLocation (le_pos_SampleRef_t positionSampleRef, int32_t *latitudePtr, int32_t *longitudePtr, int32_t *horizontalAccuracyPtr) |
le_result_t | le_pos_sample_GetTime (le_pos_SampleRef_t positionSampleRef, uint16_t *hoursPtr, uint16_t *minutesPtr, uint16_t *secondsPtr, uint16_t *millisecondsPtr) |
le_result_t | le_pos_sample_GetDate (le_pos_SampleRef_t positionSampleRef, uint16_t *yearPtr, uint16_t *monthPtr, uint16_t *dayPtr) |
le_result_t | le_pos_sample_GetAltitude (le_pos_SampleRef_t positionSampleRef, int32_t *altitudePtr, int32_t *altitudeAccuracyPtr) |
le_result_t | le_pos_sample_GetHorizontalSpeed (le_pos_SampleRef_t positionSampleRef, uint32_t *hspeedPtr, int32_t *hspeedAccuracyPtr) |
le_result_t | le_pos_sample_GetVerticalSpeed (le_pos_SampleRef_t positionSampleRef, int32_t *vspeedPtr, int32_t *vspeedAccuracyPtr) |
le_result_t | le_pos_sample_GetHeading (le_pos_SampleRef_t positionSampleRef, int32_t *headingPtr, int32_t *headingAccuracyPtr) |
le_result_t | le_pos_sample_GetDirection (le_pos_SampleRef_t positionSampleRef, int32_t *directionPtr, int32_t *directionAccuracyPtr) |
void | le_pos_sample_Release (le_pos_SampleRef_t positionSampleRef) |
Legato Positioning include file.
Copyright (C) Sierra Wireless Inc. Use of this work is subject to license.
typedef void(* le_pos_MovementHandlerFunc_t) (le_pos_SampleRef_t positionSampleRef, void *contextPtr) |
Handler for Movement changes.
positionSampleRef | Position's sample reference |
contextPtr |
typedef struct le_pos_MovementHandler* le_pos_MovementHandlerRef_t |
Reference type used by Add/Remove functions for EVENT 'le_pos_Movement'
typedef struct le_pos_Sample* le_pos_SampleRef_t |
Reference type for dealing with Position samples.
le_pos_MovementHandlerRef_t le_pos_AddMovementHandler | ( | uint32_t | horizontalMagnitude, |
uint32_t | verticalMagnitude, | ||
le_pos_MovementHandlerFunc_t | handlerPtr, | ||
void * | contextPtr | ||
) |
Add handler function for EVENT 'le_pos_Movement'
This event provides information on movement changes.
[in] | horizontalMagnitude | Horizontal magnitude in metres. 0 means that I don't care about changes in the latitude and longitude. |
[in] | verticalMagnitude | Vertical magnitude in metres. 0 means that I don't care about changes in the altitude. |
[in] | handlerPtr | |
[in] | contextPtr |
void le_pos_ConnectService | ( | void | ) |
Connect the current client thread to the service providing this API.
This function must be called before any other functions in this API. Normally, it's automatically called for the main thread, but must be explicitly called for other threads. For details, see Client-specific Functions.
This function is created automatically.
void le_pos_DisconnectService | ( | void | ) |
Disconnect the current client thread from the service providing this API.
Normally, this function doesn't need to be called. After this function is called, there's no longer a connection to the service, and the functions in this API can't be used. For details, see Client-specific Functions.
This function is created automatically.
le_result_t le_pos_Get2DLocation | ( | int32_t * | latitudePtr, |
int32_t * | longitudePtr, | ||
int32_t * | hAccuracyPtr | ||
) |
Get the 2D location's data (Latitude, Longitude, Horizontal accuracy).
[out] | latitudePtr | Latitude in degrees, positive North. |
[out] | longitudePtr | Longitude in degrees, positive East. |
[out] | hAccuracyPtr | Horizontal position's accuracy in metres. |
le_result_t le_pos_Get3DLocation | ( | int32_t * | latitudePtr, |
int32_t * | longitudePtr, | ||
int32_t * | hAccuracyPtr, | ||
int32_t * | altitudePtr, | ||
int32_t * | vAccuracyPtr | ||
) |
Get the 3D location's data (Latitude, Longitude, Altitude, Horizontal accuracy, Vertical accuracy).
[out] | latitudePtr | Latitude in degrees, positive North. |
[out] | longitudePtr | Longitude in degrees, positive East. |
[out] | hAccuracyPtr | Horizontal position's accuracy in metres. |
[out] | altitudePtr | Altitude in metres, above Mean Sea Level. |
[out] | vAccuracyPtr | Vertical position's accuracy in metres. |
le_result_t le_pos_GetDate | ( | uint16_t * | yearPtr, |
uint16_t * | monthPtr, | ||
uint16_t * | dayPtr | ||
) |
Get the date of the last updated location
[out] | yearPtr | UTC Year A.D. [e.g. 2014]. |
[out] | monthPtr | UTC Month into the year [range 1...12]. |
[out] | dayPtr | UTC Days into the month [range 1...31]. |
le_result_t le_pos_GetDirection | ( | int32_t * | directionPtr, |
int32_t * | directionAccuracyPtr | ||
) |
Get the direction indication. Direction of movement is the direction that the vehicle/person is actually moving.
[out] | directionPtr | Direction indication in degrees (where 0 is True North). |
[out] | directionAccuracyPtr | Direction's accuracy in degrees. |
le_result_t le_pos_GetHeading | ( | int32_t * | headingPtr, |
int32_t * | headingAccuracyPtr | ||
) |
Get the heading indication.
[out] | headingPtr | Heading in degrees (where 0 is True North). |
[out] | headingAccuracyPtr | Heading's accuracy in degrees. |
le_result_t le_pos_GetMotion | ( | uint32_t * | hSpeedPtrPtr, |
int32_t * | hSpeedAccuracyPtrPtr, | ||
int32_t * | vSpeedPtrPtr, | ||
int32_t * | vSpeedAccuracyPtrPtr | ||
) |
Get the motion's data (Horizontal Speed, Horizontal Speed's accuracy, Vertical Speed, Vertical Speed's accuracy).
[out] | hSpeedPtrPtr | Horizontal Speed in m/sec. |
[out] | hSpeedAccuracyPtrPtr | Horizontal Speed's accuracy in m/sec. |
[out] | vSpeedPtrPtr | Vertical Speed in m/sec, positive up. |
[out] | vSpeedAccuracyPtrPtr | Vertical Speed's accuracy in m/sec. |
le_result_t le_pos_GetTime | ( | uint16_t * | hoursPtr, |
uint16_t * | minutesPtr, | ||
uint16_t * | secondsPtr, | ||
uint16_t * | millisecondsPtr | ||
) |
Get the time of the last updated location
[out] | hoursPtr | UTC Hours into the day [range 0..23]. |
[out] | minutesPtr | UTC Minutes into the hour [range 0..59]. |
[out] | secondsPtr | UTC Seconds into the minute [range 0..59]. |
[out] | millisecondsPtr | UTC Milliseconds into the second [range 0..999]. |
void le_pos_RemoveMovementHandler | ( | le_pos_MovementHandlerRef_t | addHandlerRef | ) |
Remove handler function for EVENT 'le_pos_Movement'
[in] | addHandlerRef |
le_result_t le_pos_sample_Get2DLocation | ( | le_pos_SampleRef_t | positionSampleRef, |
int32_t * | latitudePtr, | ||
int32_t * | longitudePtr, | ||
int32_t * | horizontalAccuracyPtr | ||
) |
Get the position sample's 2D location (latitude, longitude, horizontal accuracy).
[in] | positionSampleRef | Position sample's reference. |
[out] | latitudePtr | Latitude in degrees. |
[out] | longitudePtr | Longitude in degrees. |
[out] | horizontalAccuracyPtr | Horizontal's accuracy estimate in metres. |
le_result_t le_pos_sample_GetAltitude | ( | le_pos_SampleRef_t | positionSampleRef, |
int32_t * | altitudePtr, | ||
int32_t * | altitudeAccuracyPtr | ||
) |
Get the position sample's altitude.
[in] | positionSampleRef | Position sample's reference. |
[out] | altitudePtr | Altitude in metres. |
[out] | altitudeAccuracyPtr | Altitude's accuracy estimate in metres. |
le_result_t le_pos_sample_GetDate | ( | le_pos_SampleRef_t | positionSampleRef, |
uint16_t * | yearPtr, | ||
uint16_t * | monthPtr, | ||
uint16_t * | dayPtr | ||
) |
Get the position sample's date.
[in] | positionSampleRef | Position sample's reference. |
[out] | yearPtr | UTC Year A.D. [e.g. 2014]. |
[out] | monthPtr | UTC Month into the year [range 1...12]. |
[out] | dayPtr | UTC Days into the month [range 1...31]. |
le_result_t le_pos_sample_GetDirection | ( | le_pos_SampleRef_t | positionSampleRef, |
int32_t * | directionPtr, | ||
int32_t * | directionAccuracyPtr | ||
) |
Get the position sample's direction. Direction of movement is the direction that the vehicle/person is actually moving.
[in] | positionSampleRef | Position sample's reference. |
[out] | directionPtr | Direction in degrees (where 0 is True North). |
[out] | directionAccuracyPtr | Direction's accuracy estimate in degrees. |
le_result_t le_pos_sample_GetHeading | ( | le_pos_SampleRef_t | positionSampleRef, |
int32_t * | headingPtr, | ||
int32_t * | headingAccuracyPtr | ||
) |
Get the position sample's heading. Heading is the direction that the vehicle/person is facing.
[in] | positionSampleRef | Position sample's reference. |
[out] | headingPtr | Heading in degrees (where 0 is True North). |
[out] | headingAccuracyPtr | Heading's accuracy estimate in degrees. |
le_result_t le_pos_sample_GetHorizontalSpeed | ( | le_pos_SampleRef_t | positionSampleRef, |
uint32_t * | hspeedPtr, | ||
int32_t * | hspeedAccuracyPtr | ||
) |
Get the position sample's horizontal speed.
[in] | positionSampleRef | Position sample's reference. |
[out] | hspeedPtr | Horizontal speed. |
[out] | hspeedAccuracyPtr | Horizontal speed's accuracy estimate. |
le_result_t le_pos_sample_GetTime | ( | le_pos_SampleRef_t | positionSampleRef, |
uint16_t * | hoursPtr, | ||
uint16_t * | minutesPtr, | ||
uint16_t * | secondsPtr, | ||
uint16_t * | millisecondsPtr | ||
) |
Get the position sample's time.
[in] | positionSampleRef | Position sample's reference. |
[out] | hoursPtr | UTC Hours into the day [range 0..23]. |
[out] | minutesPtr | UTC Minutes into the hour [range 0..59]. |
[out] | secondsPtr | UTC Seconds into the minute [range 0..59]. |
[out] | millisecondsPtr | UTC Milliseconds into the second [range 0..999]. |
le_result_t le_pos_sample_GetVerticalSpeed | ( | le_pos_SampleRef_t | positionSampleRef, |
int32_t * | vspeedPtr, | ||
int32_t * | vspeedAccuracyPtr | ||
) |
Get the position sample's vertical speed.
[in] | positionSampleRef | Position sample's reference. |
[out] | vspeedPtr | Vertical speed. |
[out] | vspeedAccuracyPtr | Vertical speed's accuracy estimate. |
void le_pos_sample_Release | ( | le_pos_SampleRef_t | positionSampleRef | ) |
Release the position sample.
[in] | positionSampleRef | Position sample's reference. |