Snapdragon® Telematics Application Framework (TelAF) Interface Specification
taf_ecall_server.c File Reference

Data Structures

struct  _ServerData_t
 

Macros

#define HIGH_SERVER_DATA_COUNT   3
 
#define _LOCK   LE_ASSERT(pthread_mutex_lock(&_Mutex) == 0);
 
#define _UNLOCK   LE_ASSERT(pthread_mutex_unlock(&_Mutex) == 0);
 
#define TRACE(...)
 
#define IS_TRACE_ENABLED   0
 

Typedefs

typedef void(* RemoveHandlerFunc_t) (void *handlerRef)
 

Functions

 LE_MEM_DEFINE_STATIC_POOL (taf_ecall_ServerData, HIGH_SERVER_DATA_COUNT, sizeof(_ServerData_t))
 
 LE_REF_DEFINE_STATIC_MAP (taf_ecall_ServerHandlers, LE_MEM_BLOCKS(taf_ecall_ServerCmd, HIGH_SERVER_DATA_COUNT))
 
 __attribute__ ((unused))
 [in] Not used More...
 
le_msg_ServiceRef_t taf_ecall_GetServiceRef (void)
 
le_msg_SessionRef_t taf_ecall_GetClientSessionRef (void)
 
void taf_ecall_AdvertiseService (void)
 
static void AsyncResponse_taf_ecall_AddStateChangeHandler (taf_ecall_CallRef_t ecallRef, taf_ecall_State_t state, void *contextPtr)
 
static void Handle_taf_ecall_AddStateChangeHandler (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_RemoveStateChangeHandler (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_Create (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_Delete (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_ForceOnlyMode (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_ForcePersistentOnlyMode (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_ExitOnlyMode (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetConfiguredOperationMode (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdVersion (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetMsdVersion (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetVehicleType (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetVehicleType (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetVIN (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetVIN (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetPropulsionType (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetPropulsionType (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdTxMode (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetMsdTxMode (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdPosition (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdPositionN1 (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdPositionN2 (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdPassengersCount (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdAdditionalData (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_ResetMsdAdditionalData (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdEuroNCAPLocationOfImpact (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdEuroNCAPRolloverDetected (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_ResetMsdEuroNCAPRolloverDetected (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetMsdEuroNCAPIIDeltaV (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_ImportMsd (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_ExportMsd (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SendMsd (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_StartAutomatic (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_StartManual (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_StartTest (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_StartPrivate (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_End (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_Answer (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetState (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetType (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetPlatformSpecificTerminationCode (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetTerminationReason (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetPsapNumber (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetPsapNumber (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_UseUSimNumbers (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetNadDeregistrationTime (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetNadDeregistrationTime (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_TerminateRegistration (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetNadClearDownFallbackTime (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetNadClearDownFallbackTime (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_SetNadMinNetworkRegistrationTime (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetNadMinNetworkRegistrationTime (le_msg_MessageRef_t _msgRef)
 
static void Handle_taf_ecall_GetHlapTimerState (le_msg_MessageRef_t _msgRef)
 
static void ServerMsgRecvHandler (le_msg_MessageRef_t msgRef, void *contextPtr)
 

Variables

static le_mem_PoolRef_t _ServerDataPool
 
static le_ref_MapRef_t _HandlerRefMap
 

Macro Definition Documentation

◆ HIGH_SERVER_DATA_COUNT

#define HIGH_SERVER_DATA_COUNT   3

Expected number of simultaneous server data objects.

◆ _LOCK

#define _LOCK   LE_ASSERT(pthread_mutex_lock(&_Mutex) == 0);

◆ _UNLOCK

#define _UNLOCK   LE_ASSERT(pthread_mutex_unlock(&_Mutex) == 0);

◆ TRACE

#define TRACE (   ...)

Trace reference used for controlling tracing in this module.

◆ IS_TRACE_ENABLED

#define IS_TRACE_ENABLED   0

Typedef Documentation

◆ RemoveHandlerFunc_t

typedef void(* RemoveHandlerFunc_t) (void *handlerRef)

Type definition for generic function to remove a handler, given the handler ref.

Function Documentation

◆ LE_MEM_DEFINE_STATIC_POOL()

LE_MEM_DEFINE_STATIC_POOL ( taf_ecall_ServerData  ,
HIGH_SERVER_DATA_COUNT  ,
sizeof(_ServerData_t  
)

Static pool for server data objects

◆ LE_REF_DEFINE_STATIC_MAP()

LE_REF_DEFINE_STATIC_MAP ( taf_ecall_ServerHandlers  ,
LE_MEM_BLOCKS(taf_ecall_ServerCmd, HIGH_SERVER_DATA_COUNT  
)

Static safe reference map for use with Add/Remove handler references

◆ __attribute__()

__attribute__ ( (unused)  )

[in] Not used

[in] Reference to the message.

Mutex and associated macros for use with the above HandlerRefMap.

Unused attribute is needed because this variable may not always get used. Per-server data:

  • Server service reference
  • Server thread reference
  • Client session reference

Cleanup client data if the client is no longer connected

Send the message to the client (queued version)

This is a wrapper around le_msg_Send() with an extra parameter so that it can be used with le_event_QueueFunctionToThread().

Send the message to the client.

◆ taf_ecall_GetServiceRef()

le_msg_ServiceRef_t taf_ecall_GetServiceRef ( void  )

Get the server service reference

◆ taf_ecall_GetClientSessionRef()

le_msg_SessionRef_t taf_ecall_GetClientSessionRef ( void  )

Get the client session reference for the current message

◆ taf_ecall_AdvertiseService()

void taf_ecall_AdvertiseService ( void  )

Initialize the server and advertise the service.

◆ AsyncResponse_taf_ecall_AddStateChangeHandler()

static void AsyncResponse_taf_ecall_AddStateChangeHandler ( taf_ecall_CallRef_t  ecallRef,
taf_ecall_State_t  state,
void *  contextPtr 
)
static

◆ Handle_taf_ecall_AddStateChangeHandler()

static void Handle_taf_ecall_AddStateChangeHandler ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_RemoveStateChangeHandler()

static void Handle_taf_ecall_RemoveStateChangeHandler ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_Create()

static void Handle_taf_ecall_Create ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_Delete()

static void Handle_taf_ecall_Delete ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_ForceOnlyMode()

static void Handle_taf_ecall_ForceOnlyMode ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_ForcePersistentOnlyMode()

static void Handle_taf_ecall_ForcePersistentOnlyMode ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_ExitOnlyMode()

static void Handle_taf_ecall_ExitOnlyMode ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetConfiguredOperationMode()

static void Handle_taf_ecall_GetConfiguredOperationMode ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdVersion()

static void Handle_taf_ecall_SetMsdVersion ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetMsdVersion()

static void Handle_taf_ecall_GetMsdVersion ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetVehicleType()

static void Handle_taf_ecall_SetVehicleType ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetVehicleType()

static void Handle_taf_ecall_GetVehicleType ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetVIN()

static void Handle_taf_ecall_SetVIN ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetVIN()

static void Handle_taf_ecall_GetVIN ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetPropulsionType()

static void Handle_taf_ecall_SetPropulsionType ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetPropulsionType()

static void Handle_taf_ecall_GetPropulsionType ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdTxMode()

static void Handle_taf_ecall_SetMsdTxMode ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetMsdTxMode()

static void Handle_taf_ecall_GetMsdTxMode ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdPosition()

static void Handle_taf_ecall_SetMsdPosition ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdPositionN1()

static void Handle_taf_ecall_SetMsdPositionN1 ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdPositionN2()

static void Handle_taf_ecall_SetMsdPositionN2 ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdPassengersCount()

static void Handle_taf_ecall_SetMsdPassengersCount ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdAdditionalData()

static void Handle_taf_ecall_SetMsdAdditionalData ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_ResetMsdAdditionalData()

static void Handle_taf_ecall_ResetMsdAdditionalData ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdEuroNCAPLocationOfImpact()

static void Handle_taf_ecall_SetMsdEuroNCAPLocationOfImpact ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdEuroNCAPRolloverDetected()

static void Handle_taf_ecall_SetMsdEuroNCAPRolloverDetected ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_ResetMsdEuroNCAPRolloverDetected()

static void Handle_taf_ecall_ResetMsdEuroNCAPRolloverDetected ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetMsdEuroNCAPIIDeltaV()

static void Handle_taf_ecall_SetMsdEuroNCAPIIDeltaV ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_ImportMsd()

static void Handle_taf_ecall_ImportMsd ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_ExportMsd()

static void Handle_taf_ecall_ExportMsd ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SendMsd()

static void Handle_taf_ecall_SendMsd ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_StartAutomatic()

static void Handle_taf_ecall_StartAutomatic ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_StartManual()

static void Handle_taf_ecall_StartManual ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_StartTest()

static void Handle_taf_ecall_StartTest ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_StartPrivate()

static void Handle_taf_ecall_StartPrivate ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_End()

static void Handle_taf_ecall_End ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_Answer()

static void Handle_taf_ecall_Answer ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetState()

static void Handle_taf_ecall_GetState ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetType()

static void Handle_taf_ecall_GetType ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetPlatformSpecificTerminationCode()

static void Handle_taf_ecall_GetPlatformSpecificTerminationCode ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetTerminationReason()

static void Handle_taf_ecall_GetTerminationReason ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetPsapNumber()

static void Handle_taf_ecall_SetPsapNumber ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetPsapNumber()

static void Handle_taf_ecall_GetPsapNumber ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_UseUSimNumbers()

static void Handle_taf_ecall_UseUSimNumbers ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetNadDeregistrationTime()

static void Handle_taf_ecall_SetNadDeregistrationTime ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetNadDeregistrationTime()

static void Handle_taf_ecall_GetNadDeregistrationTime ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_TerminateRegistration()

static void Handle_taf_ecall_TerminateRegistration ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetNadClearDownFallbackTime()

static void Handle_taf_ecall_SetNadClearDownFallbackTime ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetNadClearDownFallbackTime()

static void Handle_taf_ecall_GetNadClearDownFallbackTime ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_SetNadMinNetworkRegistrationTime()

static void Handle_taf_ecall_SetNadMinNetworkRegistrationTime ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetNadMinNetworkRegistrationTime()

static void Handle_taf_ecall_GetNadMinNetworkRegistrationTime ( le_msg_MessageRef_t  _msgRef)
static

◆ Handle_taf_ecall_GetHlapTimerState()

static void Handle_taf_ecall_GetHlapTimerState ( le_msg_MessageRef_t  _msgRef)
static

◆ ServerMsgRecvHandler()

static void ServerMsgRecvHandler ( le_msg_MessageRef_t  msgRef,
void *  contextPtr 
)
static

Variable Documentation

◆ _ServerDataPool

le_mem_PoolRef_t _ServerDataPool
static

The memory pool for server data objects

◆ _HandlerRefMap

le_ref_MapRef_t _HandlerRefMap
static

Safe Reference Map for use with Add/Remove handler references

Warning
Use _Mutex, defined below, to protect accesses to this data.