#include "legato.h"
Go to the source code of this file.
Typedefs | |
typedef struct le_ecall_Obj * | le_ecall_ObjRef_t |
typedef struct le_ecall_StateChangeHandler * | le_ecall_StateChangeHandlerRef_t |
typedef void(* | le_ecall_StateChangeHandlerFunc_t )(le_ecall_State_t state, void *contextPtr) |
Legato eCall API include file.
Copyright (C) Sierra Wireless, Inc. 2014. Use of this work is subject to license.
typedef struct le_ecall_Obj* le_ecall_ObjRef_t |
Reference returned by Create function and used by other functions
typedef void(* le_ecall_StateChangeHandlerFunc_t)(le_ecall_State_t state, void *contextPtr) |
Handler for eCall state changes.
state | eCall state |
contextPtr |
typedef struct le_ecall_StateChangeHandler* le_ecall_StateChangeHandlerRef_t |
Reference type for le_ecall_StateChangeHandler handler ADD/REMOVE functions
enum le_ecall_State_t |
eCall session states.
le_ecall_StateChangeHandlerRef_t le_ecall_AddStateChangeHandler | ( | le_ecall_StateChangeHandlerFunc_t | handlerPtr, |
void * | contextPtr | ||
) |
le_ecall_StateChangeHandler handler ADD function
[in] | handlerPtr | |
[in] | contextPtr |
le_ecall_ObjRef_t le_ecall_Create | ( | void | ) |
Create a new eCall object
The eCall is not actually established at this point. It is still up to the caller to call le_ecall_Start() when ready.
void le_ecall_Delete | ( | le_ecall_ObjRef_t | ecallRef | ) |
Call to free up a call reference.
[in] | ecallRef | eCall reference |
le_result_t le_ecall_End | ( | le_ecall_ObjRef_t | ecallRef | ) |
End the current eCall session
[in] | ecallRef | eCall reference |
le_ecall_State_t le_ecall_GetState | ( | le_ecall_ObjRef_t | ecallRef | ) |
Get the current state for the given eCall
[in] | ecallRef | eCall reference |
le_result_t le_ecall_ImportMsd | ( | le_ecall_ObjRef_t | ecallRef, |
const uint8_t * | msdPtr, | ||
size_t | msdNumElements | ||
) |
Import an already prepared MSD.
The MSD is not actually transferred at this point, this functions only creates a new MSD object. It is still up to the caller to call le_ecall_LoadMsd().
[in] | ecallRef | eCall reference |
[in] | msdPtr | the prepared MSD |
[in] | msdNumElements |
void le_ecall_RemoveStateChangeHandler | ( | le_ecall_StateChangeHandlerRef_t | addHandlerRef | ) |
le_ecall_StateChangeHandler handler REMOVE function
[in] | addHandlerRef |
le_result_t le_ecall_SetMsdPassengersCount | ( | le_ecall_ObjRef_t | ecallRef, |
uint32_t | paxCount | ||
) |
Set the number of passengers transmitted by the MSD.
The MSD is not actually transferred at this point. It is still up to the caller to call le_ecall_LoadMsd() when the MSD is fully built with the le_ecall_SetMsdXxx() functions.
[in] | ecallRef | eCall reference |
[in] | paxCount | number of passengers |
le_result_t le_ecall_SetMsdPosition | ( | le_ecall_ObjRef_t | ecallRef, |
bool | isTrusted, | ||
int32_t | latitude, | ||
int32_t | longitude, | ||
int32_t | direction | ||
) |
Set the position transmitted by the MSD.
The MSD is not actually transferred at this point. It is still up to the caller to call le_ecall_LoadMsd() when the MSD is fully built with the le_ecall_SetMsdXxx() functions.
[in] | ecallRef | eCall reference |
[in] | isTrusted | true if the position is accurate, false otherwise |
[in] | latitude | latitude in degrees with 6 decimal places, positive North |
[in] | longitude | longitude in degrees with 6 decimal places, positive East |
[in] | direction | direction in degrees (where 0 is True North) |
le_result_t le_ecall_StartAutomatic | ( | le_ecall_ObjRef_t | ecallRef | ) |
Start an automatic eCall session
[in] | ecallRef | eCall reference |
void le_ecall_StartClient | ( | const char * | serviceInstanceName | ) |
Start the service for the client main thread
[in] | serviceInstanceName |
le_result_t le_ecall_StartManual | ( | le_ecall_ObjRef_t | ecallRef | ) |
Start a manual eCall session
[in] | ecallRef | eCall reference |
le_result_t le_ecall_StartTest | ( | le_ecall_ObjRef_t | ecallRef | ) |
Start a test eCall session
[in] | ecallRef | eCall reference |
void le_ecall_StopClient | ( | void | ) |
Stop the service for the current client thread