le_data_interface.h File Reference

#include "legato.h"

Go to the source code of this file.

Macros

#define LE_DATA_INTERFACE_NAME_MAX_LEN   100
 
#define LE_DATA_INTERFACE_NAME_MAX_BYTES   101
 

Typedefs

typedef struct le_data_RequestObj * le_data_RequestObjRef_t
 
typedef struct le_data_ConnectionStateHandler * le_data_ConnectionStateHandlerRef_t
 
typedef void(* le_data_ConnectionStateHandlerFunc_t) (const char *intfName, bool isConnected, void *contextPtr)
 

Enumerations

enum  le_data_Technology_t { LE_DATA_WIFI = 0, LE_DATA_CELLULAR = 1, LE_DATA_MAX = 2 }
 

Functions

void le_data_ConnectService (void)
 
le_result_t le_data_TryConnectService (void)
 
void le_data_DisconnectService (void)
 
le_data_ConnectionStateHandlerRef_t le_data_AddConnectionStateHandler (le_data_ConnectionStateHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_data_RemoveConnectionStateHandler (le_data_ConnectionStateHandlerRef_t addHandlerRef)
 
le_data_RequestObjRef_t le_data_Request (void)
 
void le_data_Release (le_data_RequestObjRef_t requestRef)
 
le_result_t le_data_SetTechnologyRank (uint32_t rank, le_data_Technology_t technology)
 
le_data_Technology_t le_data_GetFirstUsedTechnology (void)
 
le_data_Technology_t le_data_GetNextUsedTechnology (void)
 
le_data_Technology_t le_data_GetTechnology (void)
 

Detailed Description

Legato Data Connection include file.

Macro Definition Documentation

#define LE_DATA_INTERFACE_NAME_MAX_BYTES   101

Interface name string length. One extra byte is added for the null character.

#define LE_DATA_INTERFACE_NAME_MAX_LEN   100

Interface name string length.

Typedef Documentation

typedef void(* le_data_ConnectionStateHandlerFunc_t) (const char *intfName, bool isConnected, void *contextPtr)

Handler for connection state changes

Parameters
intfNameInterface name for the data connection
isConnectedState: connected or disconnected
contextPtr
typedef struct le_data_ConnectionStateHandler* le_data_ConnectionStateHandlerRef_t

Reference type used by Add/Remove functions for EVENT 'le_data_ConnectionState'

typedef struct le_data_RequestObj* le_data_RequestObjRef_t

Reference returned by Request function and used by Release function

Enumeration Type Documentation

Technologies.

Enumerator
LE_DATA_WIFI 

Wi-Fi.

LE_DATA_CELLULAR 

Cellular.

LE_DATA_MAX 

Unknown state.

Function Documentation

le_data_ConnectionStateHandlerRef_t le_data_AddConnectionStateHandler ( le_data_ConnectionStateHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

Add handler function for EVENT 'le_data_ConnectionState'

This event provides information on connection state changes

Parameters
[in]handlerPtr
[in]contextPtr
void le_data_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 Client-specific Functions.

This function is created automatically.

void le_data_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_data_Technology_t le_data_GetFirstUsedTechnology ( void  )

Get the first technology to use

Returns
le_data_Technology_t le_data_GetNextUsedTechnology ( void  )

Get the next technology to use

Returns
le_data_Technology_t le_data_GetTechnology ( void  )

Get the technology currently used for the default data connection

Returns
Note
The supported technologies are LE_DATA_WIFI and LE_DATA_CELLULAR
void le_data_Release ( le_data_RequestObjRef_t  requestRef)

Release a previously requested data connection

Parameters
[in]requestRefReference to a previously requested data connection
void le_data_RemoveConnectionStateHandler ( le_data_ConnectionStateHandlerRef_t  addHandlerRef)

Remove handler function for EVENT 'le_data_ConnectionState'

Parameters
[in]addHandlerRef
le_data_RequestObjRef_t le_data_Request ( void  )

Request the default data connection

Returns
  • Reference to the data connection (to be used later for releasing the connection)
  • NULL if the data connection requested could not be processed
le_result_t le_data_SetTechnologyRank ( uint32_t  rank,
le_data_Technology_t  technology 
)

Set the rank of the technology used for the data connection service

Returns
Parameters
[in]rankRank of the used technology
[in]technologyTechnology
le_result_t le_data_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 Client-specific Functions.

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.