Snapdragon® Telematics Application Framework (TelAF) Interface Specification
le_framework_interface.h File Reference
#include "legato.h"
#include "le_framework_common.h"

Go to the source code of this file.

Typedefs

typedef void(* le_framework_DisconnectHandler_t) (void *)
 

Functions

void le_framework_ConnectService (void)
 
le_result_t le_framework_TryConnectService (void)
 
LE_FULL_API void le_framework_SetServerDisconnectHandler (le_framework_DisconnectHandler_t disconnectHandler, void *contextPtr)
 
LE_FULL_API void le_framework_SetNonExitServerDisconnectHandler (le_framework_DisconnectHandler_t disconnectHandler, void *contextPtr)
 
void le_framework_DisconnectService (void)
 
le_result_t le_framework_Stop (void)
 
le_result_t le_framework_Restart (bool manualRestart)
 
bool le_framework_IsStopping (void)
 
bool le_framework_IsReadOnly (void)
 
void le_framework_NotifyExpectedReboot (void)
 

Detailed Description

Legato Framework Control API include file.

Copyright (C) Sierra Wireless Inc.

Typedef Documentation

◆ le_framework_DisconnectHandler_t

typedef void(* le_framework_DisconnectHandler_t) (void *)

Type for handler called when a server disconnects.

Function Documentation

◆ le_framework_ConnectService()

void le_framework_ConnectService ( void  )

Connect the current client thread to the service providing this API. Block until the service is available.

For each thread that wants to use this API, either ConnectService or TryConnectService must be called before any other functions in this API. Normally, ConnectService is automatically called for the main thread, but not for any other thread. For details, see apiFilesC_client.

This function is created automatically.

◆ le_framework_TryConnectService()

le_result_t le_framework_TryConnectService ( void  )

Try to connect the current client thread to the service providing this API. Return with an error if the service is not available.

For each thread that wants to use this API, either ConnectService or TryConnectService must be called before any other functions in this API. Normally, ConnectService is automatically called for the main thread, but not for any other thread. For details, see apiFilesC_client.

This function is created automatically.

Returns
  • LE_OK if the client connected successfully to the service.
  • LE_UNAVAILABLE if the server is not currently offering the service to which the client is bound.
  • LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).
  • LE_COMM_ERROR if the Service Directory cannot be reached.

◆ le_framework_SetServerDisconnectHandler()

LE_FULL_API void le_framework_SetServerDisconnectHandler ( le_framework_DisconnectHandler_t  disconnectHandler,
void *  contextPtr 
)

Set handler called when server disconnection is detected.

When a server connection is lost, call this handler then exit with LE_FATAL. If a program wants to continue without exiting, it should call longjmp() from inside the handler.

◆ le_framework_SetNonExitServerDisconnectHandler()

LE_FULL_API void le_framework_SetNonExitServerDisconnectHandler ( le_framework_DisconnectHandler_t  disconnectHandler,
void *  contextPtr 
)

Set handler called when server disconnection is detected without exiting.

When a server connection is lost, call this handler without exit.

Warning
When using the API, it needs the application developer to handle some cases like re-connecting and recycling the resources. For most of cases, it is safe to use SetServerDisconnectHandler.

◆ le_framework_DisconnectService()

void le_framework_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 apiFilesC_client.

This function is created automatically.

◆ le_framework_Stop()

le_result_t le_framework_Stop ( void  )

Stops the Legato framework.

Returns
LE_OK if successful. LE_DUPLICATE if the framework is in the process of shutting down (perhaps someone else has already requested the framework be stopped or restarted).

◆ le_framework_Restart()

le_result_t le_framework_Restart ( bool  manualRestart)

Restarts the Legato framework.

Returns
LE_OK if the request was accepted and the restart procedure has begun. LE_DUPLICATE if the framework is already in the process of shutting down (perhaps someone else has already requested the framework be stopped or restarted).
Parameters
[in]manualRestartWas the restart manually triggered e.g. "legato restart"

◆ le_framework_IsStopping()

bool le_framework_IsStopping ( void  )

Reports if the Legato framework is stopping.

Returns
true if the framework is stopping or rebooting false otherwise

◆ le_framework_IsReadOnly()

bool le_framework_IsReadOnly ( void  )

Checks whether legato framework is Read-Only or not.

Returns
true if the framework is Read-Only false otherwise

◆ le_framework_NotifyExpectedReboot()

void le_framework_NotifyExpectedReboot ( void  )

Mark the next reboot as expected. Should be called by short lived app that shutdown platform after a small wakeup. This prevents system not to rollback on expected reboot.