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

Go to the source code of this file.

Macros

#define IFGEN_LE_WDOG_PROTOCOL_ID   "572ba176b790548eed89b7ba6f9f4b14"
 
#define IFGEN_LE_WDOG_MSG_SIZE   20
 
#define LE_WDOG_TIMEOUT_NEVER   -1
 
#define LE_WDOG_TIMEOUT_NOW   0
 

Typedefs

typedef void(* le_wdog_ExternalWatchdogHandlerFunc_t) (void *contextPtr)
 

Functions

LE_SHARED bool ifgen_le_wdog_HasLocalBinding (void)
 
LE_SHARED void ifgen_le_wdog_InitCommonData (void)
 
LE_SHARED void ifgen_le_wdog_CleanupCommonData (le_msg_SessionRef_t _ifgen_sessionRef)
 
LE_SHARED le_result_t ifgen_le_wdog_OpenSession (le_msg_SessionRef_t _ifgen_sessionRef, bool isBlocking)
 
LE_SHARED void ifgen_le_wdog_Kick (le_msg_SessionRef_t _ifgen_sessionRef)
 
LE_SHARED void ifgen_le_wdog_Timeout (le_msg_SessionRef_t _ifgen_sessionRef, int32_t milliseconds)
 
LE_SHARED le_result_t ifgen_le_wdog_GetWatchdogTimeout (le_msg_SessionRef_t _ifgen_sessionRef, uint64_t *millisecondsPtr)
 
LE_SHARED le_result_t ifgen_le_wdog_GetMaxWatchdogTimeout (le_msg_SessionRef_t _ifgen_sessionRef, uint64_t *millisecondsPtr)
 

Macro Definition Documentation

◆ IFGEN_LE_WDOG_PROTOCOL_ID

#define IFGEN_LE_WDOG_PROTOCOL_ID   "572ba176b790548eed89b7ba6f9f4b14"

◆ IFGEN_LE_WDOG_MSG_SIZE

#define IFGEN_LE_WDOG_MSG_SIZE   20

◆ LE_WDOG_TIMEOUT_NEVER

#define LE_WDOG_TIMEOUT_NEVER   -1

Suspend the watchdog so that it never times out.

◆ LE_WDOG_TIMEOUT_NOW

#define LE_WDOG_TIMEOUT_NOW   0

Timeout immediately

Typedef Documentation

◆ le_wdog_ExternalWatchdogHandlerFunc_t

typedef void(* le_wdog_ExternalWatchdogHandlerFunc_t) (void *contextPtr)

External watchdog kick handler

Function Documentation

◆ ifgen_le_wdog_HasLocalBinding()

LE_SHARED bool ifgen_le_wdog_HasLocalBinding ( void  )

Get if this client bound locally.

◆ ifgen_le_wdog_InitCommonData()

LE_SHARED void ifgen_le_wdog_InitCommonData ( void  )

Init data that is common across all threads

◆ ifgen_le_wdog_CleanupCommonData()

LE_SHARED void ifgen_le_wdog_CleanupCommonData ( le_msg_SessionRef_t  _ifgen_sessionRef)

Cleanup the data of a session

◆ ifgen_le_wdog_OpenSession()

LE_SHARED le_result_t ifgen_le_wdog_OpenSession ( le_msg_SessionRef_t  _ifgen_sessionRef,
bool  isBlocking 
)

Perform common initialization and open a session

◆ ifgen_le_wdog_Kick()

LE_SHARED void ifgen_le_wdog_Kick ( le_msg_SessionRef_t  _ifgen_sessionRef)

Kicks the watchdog timer.

Once the watchdog has been kicked it must be kicked again before the expiration of the current effective timeout else the configured WatchdogAction will be executed.

◆ ifgen_le_wdog_Timeout()

LE_SHARED void ifgen_le_wdog_Timeout ( le_msg_SessionRef_t  _ifgen_sessionRef,
int32_t  milliseconds 
)

Set a time out.

The watchdog is kicked and a new effective timeout value is set. The new timeout will be effective until the next kick at which point it will revert to the original value.

Parameters
[in]millisecondsThe number of milliseconds until this timer expires

◆ ifgen_le_wdog_GetWatchdogTimeout()

LE_SHARED le_result_t ifgen_le_wdog_GetWatchdogTimeout ( le_msg_SessionRef_t  _ifgen_sessionRef,
uint64_t *  millisecondsPtr 
)

Get the watchdog timeout configured for this process

Returns
  • LE_OK The watchdog timeout is configured and returned
  • LE_NOT_FOUND The watchdog timeout is not set
Parameters
[out]millisecondsPtrThe watchdog timeout set for this process

◆ ifgen_le_wdog_GetMaxWatchdogTimeout()

LE_SHARED le_result_t ifgen_le_wdog_GetMaxWatchdogTimeout ( le_msg_SessionRef_t  _ifgen_sessionRef,
uint64_t *  millisecondsPtr 
)

Get the max watchdog timeout configured for this process

Returns
  • LE_OK The max watchdog timeout is configured and returned
  • LE_NOT_FOUND The max watchdog timeout is not set
Parameters
[out]millisecondsPtrThe max watchdog timeout set for this process