All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
le_mrc_interface.h File Reference
#include "legato.h"

Go to the source code of this file.

Macros

#define LE_MRC_MCC_LEN   3
 
#define LE_MRC_MCC_BYTES   4
 
#define LE_MRC_MNC_LEN   3
 
#define LE_MRC_MNC_BYTES   4
 
#define LE_MRC_NETWORK_NAME_MAX_LEN   100
 

Typedefs

typedef struct
le_mrc_ScanInformation * 
le_mrc_ScanInformationRef_t
 
typedef struct
le_mrc_ScanInformationList * 
le_mrc_ScanInformationListRef_t
 
typedef struct
le_mrc_PreferredOperator * 
le_mrc_PreferredOperatorRef_t
 
typedef struct
le_mrc_PreferredOperatorList * 
le_mrc_PreferredOperatorListRef_t
 
typedef struct le_mrc_CellInfo * le_mrc_CellInfoRef_t
 
typedef struct
le_mrc_NeighborCells * 
le_mrc_NeighborCellsRef_t
 
typedef struct
le_mrc_NetRegStateEventHandler * 
le_mrc_NetRegStateEventHandlerRef_t
 
typedef struct
le_mrc_RatChangeHandler * 
le_mrc_RatChangeHandlerRef_t
 
typedef void(* le_mrc_NetRegStateHandlerFunc_t )(le_mrc_NetRegState_t state, void *contextPtr)
 
typedef void(* le_mrc_RatChangeHandlerFunc_t )(le_mrc_Rat_t rat, void *contextPtr)
 

Enumerations

enum  le_mrc_BandBitMask_t {
  LE_MRC_BITMASK_BAND_CLASS_0_A_SYSTEM = 0x1, LE_MRC_BITMASK_BAND_CLASS_0_B_SYSTEM = 0x2, LE_MRC_BITMASK_BAND_CLASS_1_ALL_BLOCKS = 0x4, LE_MRC_BITMASK_BAND_CLASS_2_PLACEHOLDER = 0x8,
  LE_MRC_BITMASK_BAND_CLASS_3_A_SYSTEM = 0x10, LE_MRC_BITMASK_BAND_CLASS_4_ALL_BLOCKS = 0x20, LE_MRC_BITMASK_BAND_CLASS_5_ALL_BLOCKS = 0x40, LE_MRC_BITMASK_BAND_CLASS_6 = 0x80,
  LE_MRC_BITMASK_BAND_CLASS_7 = 0x100, LE_MRC_BITMASK_BAND_CLASS_8 = 0x200, LE_MRC_BITMASK_BAND_CLASS_9 = 0x400, LE_MRC_BITMASK_BAND_CLASS_10 = 0x800,
  LE_MRC_BITMASK_BAND_CLASS_11 = 0x1000, LE_MRC_BITMASK_BAND_CLASS_12 = 0x2000, LE_MRC_BITMASK_BAND_CLASS_14 = 0x4000, LE_MRC_BITMASK_BAND_CLASS_15 = 0x8000,
  LE_MRC_BITMASK_BAND_CLASS_16 = 0x10000, LE_MRC_BITMASK_BAND_CLASS_17 = 0x20000, LE_MRC_BITMASK_BAND_CLASS_18 = 0x40000, LE_MRC_BITMASK_BAND_CLASS_19 = 0x80000,
  LE_MRC_BITMASK_BAND_GSM_DCS_1800 = 0x100000, LE_MRC_BITMASK_BAND_EGSM_900 = 0x200000, LE_MRC_BITMASK_BAND_PRI_GSM_900 = 0x400000, LE_MRC_BITMASK_BAND_GSM_450 = 0x800000,
  LE_MRC_BITMASK_BAND_GSM_480 = 0x1000000, LE_MRC_BITMASK_BAND_GSM_750 = 0x2000000, LE_MRC_BITMASK_BAND_GSM_850 = 0x4000000, LE_MRC_BITMASK_BAND_GSMR_900 = 0x8000000,
  LE_MRC_BITMASK_BAND_GSM_PCS_1900 = 0x10000000, LE_MRC_BITMASK_BAND_WCDMA_EU_J_CH_IMT_2100 = 0x20000000, LE_MRC_BITMASK_BAND_WCDMA_US_PCS_1900 = 0x40000000, LE_MRC_BITMASK_BAND_WCDMA_EU_CH_DCS_1800 = 0x80000000,
  LE_MRC_BITMASK_BAND_WCDMA_US_1700 = 0x100000000, LE_MRC_BITMASK_BAND_WCDMA_US_850 = 0x200000000, LE_MRC_BITMASK_BAND_WCDMA_J_800 = 0x400000000, LE_MRC_BITMASK_BAND_WCDMA_EU_2600 = 0x800000000,
  LE_MRC_BITMASK_BAND_WCDMA_EU_J_900 = 0x1000000000, LE_MRC_BITMASK_BAND_WCDMA_J_1700 = 0x2000000000
}
 
enum  le_mrc_LteBandBitMask_t {
  LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_1 = 0x1, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_2 = 0x2, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_3 = 0x4, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_4 = 0x8,
  LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_5 = 0x10, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_6 = 0x20, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_7 = 0x40, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_8 = 0x80,
  LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_9 = 0x100, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_10 = 0x200, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_11 = 0x400, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_12 = 0x800,
  LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_13 = 0x1000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_14 = 0x2000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_17 = 0x4000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_18 = 0x8000,
  LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_19 = 0x10000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_20 = 0x20000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_21 = 0x40000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_24 = 0x80000,
  LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_25 = 0x100000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_33 = 0x200000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_34 = 0x400000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_35 = 0x800000,
  LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_36 = 0x1000000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_37 = 0x2000000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_38 = 0x4000000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_39 = 0x8000000,
  LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_40 = 0x10000000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_41 = 0x20000000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_42 = 0x40000000, LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_43 = 0x80000000
}
 
enum  le_mrc_TdScdmaBandBitMask_t {
  LE_MRC_BITMASK_TDSCDMA_BAND_A = 0x1, LE_MRC_BITMASK_TDSCDMA_BAND_B = 0x2, LE_MRC_BITMASK_TDSCDMA_BAND_C = 0x4, LE_MRC_BITMASK_TDSCDMA_BAND_D = 0x8,
  LE_MRC_BITMASK_TDSCDMA_BAND_E = 0x10, LE_MRC_BITMASK_TDSCDMA_BAND_F = 0x20
}
 
enum  le_mrc_NetRegState_t {
  LE_MRC_REG_NONE, LE_MRC_REG_HOME, LE_MRC_REG_SEARCHING, LE_MRC_REG_DENIED,
  LE_MRC_REG_ROAMING, LE_MRC_REG_UNKNOWN
}
 
enum  le_mrc_Rat_t {
  LE_MRC_RAT_UNKNOWN, LE_MRC_RAT_GSM, LE_MRC_RAT_UMTS, LE_MRC_RAT_LTE,
  LE_MRC_RAT_CDMA
}
 
enum  le_mrc_RatBitMask_t {
  LE_MRC_BITMASK_RAT_GSM = 0x1, LE_MRC_BITMASK_RAT_UMTS = 0x2, LE_MRC_BITMASK_RAT_LTE = 0x4, LE_MRC_BITMASK_RAT_CDMA = 0x8,
  LE_MRC_BITMASK_RAT_ALL = 0x10
}
 

Functions

void le_mrc_ConnectService (void)
 
void le_mrc_DisconnectService (void)
 
le_mrc_NetRegStateEventHandlerRef_t le_mrc_AddNetRegStateEventHandler (le_mrc_NetRegStateHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_mrc_RemoveNetRegStateEventHandler (le_mrc_NetRegStateEventHandlerRef_t addHandlerRef)
 
le_mrc_RatChangeHandlerRef_t le_mrc_AddRatChangeHandler (le_mrc_RatChangeHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_mrc_RemoveRatChangeHandler (le_mrc_RatChangeHandlerRef_t addHandlerRef)
 
le_result_t le_mrc_SetAutomaticRegisterMode (void)
 
le_result_t le_mrc_SetManualRegisterMode (const char *mcc, const char *mnc)
 
le_result_t le_mrc_GetRegisterMode (bool *isManualPtrPtr, char *mccPtr, size_t mccPtrNumElements, char *mncPtr, size_t mncPtrNumElements)
 
le_result_t le_mrc_SetRatPreferences (le_mrc_RatBitMask_t ratMask)
 
le_result_t le_mrc_GetRatPreferences (le_mrc_RatBitMask_t *ratMaskPtrPtr)
 
le_result_t le_mrc_SetBandPreferences (le_mrc_BandBitMask_t bandMask)
 
le_result_t le_mrc_GetBandPreferences (le_mrc_BandBitMask_t *bandMaskPtrPtr)
 
le_result_t le_mrc_SetLteBandPreferences (le_mrc_LteBandBitMask_t bandMask)
 
le_result_t le_mrc_GetLteBandPreferences (le_mrc_LteBandBitMask_t *bandMaskPtrPtr)
 
le_result_t le_mrc_SetTdScdmaBandPreferences (le_mrc_TdScdmaBandBitMask_t bandMask)
 
le_result_t le_mrc_GetTdScdmaBandPreferences (le_mrc_TdScdmaBandBitMask_t *bandMaskPtrPtr)
 
le_result_t le_mrc_AddPreferredOperator (const char *mcc, const char *mnc, le_mrc_RatBitMask_t ratMask)
 
le_result_t le_mrc_RemovePreferredOperator (const char *mcc, const char *mnc)
 
le_mrc_PreferredOperatorListRef_t le_mrc_GetPreferredOperatorsList (void)
 
le_mrc_PreferredOperatorRef_t le_mrc_GetFirstPreferredOperator (le_mrc_PreferredOperatorListRef_t preferredOperatorListRef)
 
le_mrc_PreferredOperatorRef_t le_mrc_GetNextPreferredOperator (le_mrc_PreferredOperatorListRef_t preferredOperatorListRef)
 
void le_mrc_DeletePreferredOperatorsList (le_mrc_PreferredOperatorListRef_t preferredOperatorListRef)
 
le_result_t le_mrc_GetPreferredOperatorDetails (le_mrc_PreferredOperatorRef_t preferredOperatorRef, char *mccPtr, size_t mccPtrNumElements, char *mncPtr, size_t mncPtrNumElements, le_mrc_RatBitMask_t *ratMaskPtr)
 
le_result_t le_mrc_GetNetRegState (le_mrc_NetRegState_t *statePtr)
 
le_result_t le_mrc_GetSignalQual (uint32_t *qualityPtr)
 
le_result_t le_mrc_SetRadioPower (le_onoff_t power)
 
le_result_t le_mrc_GetRadioPower (le_onoff_t *powerPtr)
 
le_result_t le_mrc_RegisterCellularNetwork (const char *mcc, const char *mnc)
 
le_mrc_ScanInformationListRef_t le_mrc_PerformCellularNetworkScan (le_mrc_RatBitMask_t ratMask)
 
le_mrc_ScanInformationRef_t le_mrc_GetFirstCellularNetworkScan (le_mrc_ScanInformationListRef_t scanInformationListRef)
 
le_mrc_ScanInformationRef_t le_mrc_GetNextCellularNetworkScan (le_mrc_ScanInformationListRef_t scanInformationListRef)
 
void le_mrc_DeleteCellularNetworkScan (le_mrc_ScanInformationListRef_t scanInformationListRef)
 
le_result_t le_mrc_GetCellularNetworkMccMnc (le_mrc_ScanInformationRef_t scanInformationRef, char *mccPtr, size_t mccPtrNumElements, char *mncPtr, size_t mncPtrNumElements)
 
le_result_t le_mrc_GetCellularNetworkName (le_mrc_ScanInformationRef_t scanInformationRef, char *namePtr, size_t namePtrNumElements)
 
le_mrc_Rat_t le_mrc_GetCellularNetworkRat (le_mrc_ScanInformationRef_t scanInformationRef)
 
bool le_mrc_IsCellularNetworkInUse (le_mrc_ScanInformationRef_t scanInformationRef)
 
bool le_mrc_IsCellularNetworkAvailable (le_mrc_ScanInformationRef_t scanInformationRef)
 
bool le_mrc_IsCellularNetworkHome (le_mrc_ScanInformationRef_t scanInformationRef)
 
bool le_mrc_IsCellularNetworkForbidden (le_mrc_ScanInformationRef_t scanInformationRef)
 
le_result_t le_mrc_GetCurrentNetworkName (char *nameStr, size_t nameStrNumElements)
 
le_result_t le_mrc_GetCurrentNetworkMccMnc (char *mccStr, size_t mccStrNumElements, char *mncStr, size_t mncStrNumElements)
 
le_result_t le_mrc_GetRadioAccessTechInUse (le_mrc_Rat_t *ratPtr)
 
le_mrc_NeighborCellsRef_t le_mrc_GetNeighborCellsInfo (void)
 
void le_mrc_DeleteNeighborCellsInfo (le_mrc_NeighborCellsRef_t ngbrCellsRef)
 
le_mrc_CellInfoRef_t le_mrc_GetFirstNeighborCellInfo (le_mrc_NeighborCellsRef_t ngbrCellsRef)
 
le_mrc_CellInfoRef_t le_mrc_GetNextNeighborCellInfo (le_mrc_NeighborCellsRef_t ngbrCellsRef)
 
uint32_t le_mrc_GetNeighborCellId (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 
uint32_t le_mrc_GetNeighborCellLocAreaCode (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 
int32_t le_mrc_GetNeighborCellRxLevel (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 

Detailed Description

Legato Modem Radio Control include file.

Copyright (C) Sierra Wireless Inc. Use of this work is subject to license.

Macro Definition Documentation

#define LE_MRC_MCC_LEN   3

Mobile Country Code and Mobile network Code lengths

#define LE_MRC_NETWORK_NAME_MAX_LEN   100

Cellular Network length.

Typedef Documentation

typedef struct le_mrc_CellInfo* le_mrc_CellInfoRef_t

Reference type for one Cell Information.

typedef struct le_mrc_NeighborCells* le_mrc_NeighborCellsRef_t

Reference type for all Neighboring Cells Information.

typedef struct le_mrc_NetRegStateEventHandler* le_mrc_NetRegStateEventHandlerRef_t

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

typedef void(* le_mrc_NetRegStateHandlerFunc_t)(le_mrc_NetRegState_t state, void *contextPtr)

Handler for Network registration state changes.

Parameters
stateParameter ready to receive the Network Registration state.
contextPtr
typedef struct le_mrc_PreferredOperatorList* le_mrc_PreferredOperatorListRef_t

Reference type for Preferred Operator Listing.

typedef struct le_mrc_PreferredOperator* le_mrc_PreferredOperatorRef_t

Reference type for referring to the Preferred Operator objects.

typedef void(* le_mrc_RatChangeHandlerFunc_t)(le_mrc_Rat_t rat, void *contextPtr)

Handler for Radio Access Technology changes.

Parameters
ratParameter ready to receive the Radio Access Technology.
contextPtr
typedef struct le_mrc_RatChangeHandler* le_mrc_RatChangeHandlerRef_t

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

typedef struct le_mrc_ScanInformationList* le_mrc_ScanInformationListRef_t

Reference type for Scan Information Listing.

typedef struct le_mrc_ScanInformation* le_mrc_ScanInformationRef_t

Reference type for referring to MRC Scan Information objects.

Enumeration Type Documentation

2G/3G Band Bit Mask (64 bits)

LTE Band Bit Mask (32bits)

Network Registration states.

Enumerator
LE_MRC_REG_NONE 

Not registered and not currently searching for new operator.

LE_MRC_REG_HOME 

Registered, home network.

LE_MRC_REG_SEARCHING 

Not registered but currently searching for a new operator.

LE_MRC_REG_DENIED 

Registration was denied, usually because of invalid access credentials.

LE_MRC_REG_ROAMING 

Registered to a roaming network.

LE_MRC_REG_UNKNOWN 

Unknown state.

Radio Access Technology enum

Enumerator
LE_MRC_RAT_UNKNOWN 

Unknown.

LE_MRC_RAT_GSM 

GSM network.

LE_MRC_RAT_UMTS 

UMTS network.

LE_MRC_RAT_LTE 

LTE network.

LE_MRC_RAT_CDMA 

CDMA network.

Radio Bitmask Access Technology Bit Mask

Enumerator
LE_MRC_BITMASK_RAT_GSM 

GSM RAT Bit Mask.

LE_MRC_BITMASK_RAT_UMTS 

UMTS RAT Bit Mask.

LE_MRC_BITMASK_RAT_LTE 

LTE RAT Bit Mask.

LE_MRC_BITMASK_RAT_CDMA 

CDMA RAT Bit Mask.

LE_MRC_BITMASK_RAT_ALL 

To Set all RAT preference Bit Mask.

TDSCDMA Band Bit Mask

Function Documentation

le_mrc_NetRegStateEventHandlerRef_t le_mrc_AddNetRegStateEventHandler ( le_mrc_NetRegStateHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

Add handler function for EVENT 'le_mrc_NetRegStateEvent'

This event provides information on network registration state changes.

Parameters
[in]handlerPtr
[in]contextPtr
le_result_t le_mrc_AddPreferredOperator ( const char *  mcc,
const char *  mnc,
le_mrc_RatBitMask_t  ratMask 
)

Add a preferred operator by specifying the MCC/MNC and the Radio Access Technology.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[in]mccMobile Country Code
[in]mncMobile Network Code
[in]ratMaskBit mask for the Radio Access Technology preferences.
le_mrc_RatChangeHandlerRef_t le_mrc_AddRatChangeHandler ( le_mrc_RatChangeHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

Add handler function for EVENT 'le_mrc_RatChange'

This event provides information on Radio Access Technology changes.

Parameters
[in]handlerPtr
[in]contextPtr
void le_mrc_ConnectService ( void  )

Connect the client to the service

void le_mrc_DeleteCellularNetworkScan ( le_mrc_ScanInformationListRef_t  scanInformationListRef)

This function must be called to delete the list of the Scan Information retrieved with le_mrc_PerformNetworkScan().

Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]scanInformationListRefThe list of scan information.
void le_mrc_DeleteNeighborCellsInfo ( le_mrc_NeighborCellsRef_t  ngbrCellsRef)

This function must be called to delete the Neighboring Cells information.

Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]ngbrCellsRefThe Neighboring Cells reference.
void le_mrc_DeletePreferredOperatorsList ( le_mrc_PreferredOperatorListRef_t  preferredOperatorListRef)

This function must be called to delete the list of the preferred operators retrieved with le_mrc_GetPreferredOperators().

Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]preferredOperatorListRefThe list of the preferred operators.
void le_mrc_DisconnectService ( void  )

Disconnect the client from the service

le_result_t le_mrc_GetBandPreferences ( le_mrc_BandBitMask_t bandMaskPtrPtr)

Get the Bit mask for 2G/3G Band preferences.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[out]bandMaskPtrPtrBit mask for 2G/3G Band preferences.
le_result_t le_mrc_GetCellularNetworkMccMnc ( le_mrc_ScanInformationRef_t  scanInformationRef,
char *  mccPtr,
size_t  mccPtrNumElements,
char *  mncPtr,
size_t  mncPtrNumElements 
)

This function must be called to get the Cellular Network Code [mcc:mnc]

Returns
  • LE_OK on success
  • LE_OVERFLOW if the mcc or mnc would not fit in buffer
  • LE_FAULT for all other errors
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]scanInformationRefScan information reference
[out]mccPtrMobile Country Code
[in]mccPtrNumElements
[out]mncPtrMobile Network Code
[in]mncPtrNumElements
le_result_t le_mrc_GetCellularNetworkName ( le_mrc_ScanInformationRef_t  scanInformationRef,
char *  namePtr,
size_t  namePtrNumElements 
)

This function must be called to get the Cellular Network Name.

Returns
  • LE_OK on success
  • LE_OVERFLOW if the operator name would not fit in buffer
  • LE_FAULT for all other errors
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]scanInformationRefScan information reference
[out]namePtrName of operator
[in]namePtrNumElements
le_mrc_Rat_t le_mrc_GetCellularNetworkRat ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to get the radio access technology of a scanInformationRef.

Returns
  • the radio access technology
Note
On failure, the process exits.
Parameters
[in]scanInformationRefScan information reference
le_result_t le_mrc_GetCurrentNetworkMccMnc ( char *  mccStr,
size_t  mccStrNumElements,
char *  mncStr,
size_t  mncStrNumElements 
)

This function must be called to get the current network PLMN information.

Returns
  • LE_OK on success
  • LE_FAULT on any other failure
Parameters
[out]mccStrthe mobile country code
[in]mccStrNumElements
[out]mncStrthe mobile network code
[in]mncStrNumElements
le_result_t le_mrc_GetCurrentNetworkName ( char *  nameStr,
size_t  nameStrNumElements 
)

This function must be called to get the current network name information.

Returns
  • LE_OK on success
  • LE_BAD_PARAMETER if nameStr is NULL
  • LE_OVERFLOW if the Home Network Name can't fit in nameStr
  • LE_FAULT on any other failure
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[out]nameStrthe home network Name
[in]nameStrNumElements
le_mrc_ScanInformationRef_t le_mrc_GetFirstCellularNetworkScan ( le_mrc_ScanInformationListRef_t  scanInformationListRef)

This function must be called to get the first Scan Information object reference in the list of scan Information retrieved with le_mrc_PerformNetworkScan().

Returns
NULL No scan information found.
le_mrc_ScanInformationRef_t The Scan Information object reference.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[in]scanInformationListRefThe list of scan information.
le_mrc_CellInfoRef_t le_mrc_GetFirstNeighborCellInfo ( le_mrc_NeighborCellsRef_t  ngbrCellsRef)

This function must be called to get the first Cell Information reference in the list of Neighboring Cells information retrieved with le_mrc_GetNeighborCellsInfo().

Returns
NULL No Cell information object found.
le_mrc_CellInfoRef_t The Cell information object reference.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[in]ngbrCellsRefThe Neighboring Cells reference.
le_mrc_PreferredOperatorRef_t le_mrc_GetFirstPreferredOperator ( le_mrc_PreferredOperatorListRef_t  preferredOperatorListRef)

This function must be called to get the first Operator object reference in the list of the preferred operators retrieved with le_mrc_GetPreferredOperators().

Returns
  • NULL No operator information found.
  • le_mrc_PreferredOperatorRef The Operator object reference.
Note
If the caller is passing a bad reference into this function, it is a fatal error, the function will not return.
Parameters
[in]preferredOperatorListRefThe list of the preferred operators.
le_result_t le_mrc_GetLteBandPreferences ( le_mrc_LteBandBitMask_t bandMaskPtrPtr)

Get the Bit mask for LTE Band preferences.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[out]bandMaskPtrPtrBit mask for LTE Band preferences.
uint32_t le_mrc_GetNeighborCellId ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

This function must be called to get the Cell Identifier.

Returns
The Cell Identifier.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[in]ngbrCellInfoRefThe Cell information reference.
uint32_t le_mrc_GetNeighborCellLocAreaCode ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

This function must be called to get the Location Area Code of a cell.

Returns
The Location Area Code of a cell.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[in]ngbrCellInfoRefThe Cell information reference.
int32_t le_mrc_GetNeighborCellRxLevel ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

This function must be called to get the signal strength of a cell.

Returns
The signal strength of a cell.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[in]ngbrCellInfoRefThe Cell information reference.
le_mrc_NeighborCellsRef_t le_mrc_GetNeighborCellsInfo ( void  )

This function must be called to retrieve the Neighboring Cells information. It creates and returns a reference to the Neighboring Cells information.

Returns
A reference to the Neighboring Cells information.
NULL if no Cells Information are available.
le_result_t le_mrc_GetNetRegState ( le_mrc_NetRegState_t statePtr)

Get the network registration state.

Returns
LE_FAULT The function failed to get the Network registration state.
LE_BAD_PARAMETER A bad parameter was passed.
LE_OK The function succeeded.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[out]statePtrNetwork Registration state.
le_mrc_ScanInformationRef_t le_mrc_GetNextCellularNetworkScan ( le_mrc_ScanInformationListRef_t  scanInformationListRef)

This function must be called to get the next Scan Information object reference in the list of scan Information retrieved with le_mrc_PerformNetworkScan().

Returns
NULL No scan information found.
le_mrc_ScanInformationRef_t The Scan Information object reference.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[in]scanInformationListRefThe list of scan information.
le_mrc_CellInfoRef_t le_mrc_GetNextNeighborCellInfo ( le_mrc_NeighborCellsRef_t  ngbrCellsRef)

This function must be called to get the next Cell Information reference in the list of Neighboring Cells information retrieved with le_mrc_GetNeighborCellsInfo().

Returns
NULL No Cell information object found.
le_mrc_CellInfoRef_t The Cell information object reference.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[in]ngbrCellsRefThe Neighboring Cells reference.
le_mrc_PreferredOperatorRef_t le_mrc_GetNextPreferredOperator ( le_mrc_PreferredOperatorListRef_t  preferredOperatorListRef)

This function must be called to get the next Operator object reference in the list of the preferred operators retrieved with le_mrc_GetPreferredOperators().

Returns
  • NULL No operator information found.
  • le_mrc_PreferredOperatorRef The Operator object reference.
Note
If the caller is passing a bad reference into this function, it is a fatal error, the function will not return.
Parameters
[in]preferredOperatorListRefThe list of the preferred operators.
le_result_t le_mrc_GetPreferredOperatorDetails ( le_mrc_PreferredOperatorRef_t  preferredOperatorRef,
char *  mccPtr,
size_t  mccPtrNumElements,
char *  mncPtr,
size_t  mncPtrNumElements,
le_mrc_RatBitMask_t ratMaskPtr 
)

This function must be called to get the Operator information details.

Returns
LE_FAULT Function failed.
LE_OK Function succeeded.
Parameters
[in]preferredOperatorRefOperator object reference.
[out]mccPtrMobile Country Code.
[in]mccPtrNumElements
[out]mncPtrMobile Network Code.
[in]mncPtrNumElements
[out]ratMaskPtrBit mask for the RAT preferences.
le_mrc_PreferredOperatorListRef_t le_mrc_GetPreferredOperatorsList ( void  )

This function must be called to retrieve a list of the preferred operators.

Returns
  • Reference to the List object.
  • Null pointer if there is no preferences.
le_result_t le_mrc_GetRadioAccessTechInUse ( le_mrc_Rat_t ratPtr)

This function must be called to get the current Radio Access Technology in use.

Returns
LE_FAULT Function failed to get the Radio Access Technology.
LE_BAD_PARAMETER A bad parameter was passed.
LE_OK Function succeeded.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[out]ratPtrThe Radio Access Technology.
le_result_t le_mrc_GetRadioPower ( le_onoff_t powerPtr)

Must be called to get the Radio Module power state.

Returns
LE_FAULT The function failed to get the Radio Module power state.
LE_BAD_PARAMETER if powerPtr is NULL.
LE_OK The function succeed.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[out]powerPtrPower state.
le_result_t le_mrc_GetRatPreferences ( le_mrc_RatBitMask_t ratMaskPtrPtr)

Get the Radio Access Technology preferences

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[out]ratMaskPtrPtrBit mask for the Radio Access Technology preferences.
le_result_t le_mrc_GetRegisterMode ( bool *  isManualPtrPtr,
char *  mccPtr,
size_t  mccPtrNumElements,
char *  mncPtr,
size_t  mncPtrNumElements 
)

Get the selected Selection Register mode.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[out]isManualPtrPtrtrue if the scan mode is manual, false if the scan mode is automatic.
[out]mccPtrMobile Country Code
[in]mccPtrNumElements
[out]mncPtrMobile Network Code
[in]mncPtrNumElements
le_result_t le_mrc_GetSignalQual ( uint32_t *  qualityPtr)

Get the signal quality.

Returns
LE_FAULT The function failed to get the Signal Quality information.
LE_BAD_PARAMETER A bad parameter was passed.
LE_OK The function succeeded.
Note
If the caller is passing a bad pointer into this function, it is a fatal error, the function will not return.
Parameters
[out]qualityPtr[OUT] Received signal strength quality (0 = no signal strength, 5 = very good signal strength).
le_result_t le_mrc_GetTdScdmaBandPreferences ( le_mrc_TdScdmaBandBitMask_t bandMaskPtrPtr)

Get the Bit mask for TD-SCDMA Band preferences.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[out]bandMaskPtrPtrBit mask for TD-SCDMA Band preferences.
bool le_mrc_IsCellularNetworkAvailable ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to check if a cellular network is available.

Returns
true The network is available
false The network is not available
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]scanInformationRefScan information reference
bool le_mrc_IsCellularNetworkForbidden ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to check if a cellular network is forbidden by the operator.

Returns
true The network is forbidden
false The network is allowed
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]scanInformationRefScan information reference
bool le_mrc_IsCellularNetworkHome ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to check if a cellular network is currently in home mode.

Returns
true The network is home
false The network is roaming
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]scanInformationRefScan information reference
bool le_mrc_IsCellularNetworkInUse ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to check if a cellular network is currently in use.

Returns
true The network is in use
false The network is not in use
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]scanInformationRefScan information reference
le_mrc_ScanInformationListRef_t le_mrc_PerformCellularNetworkScan ( le_mrc_RatBitMask_t  ratMask)

This function must be called to perform a cellular network scan.

Returns
Reference to the List object. Null pointer if the scan failed.
Parameters
[in]ratMaskRadio Access Technology mask
le_result_t le_mrc_RegisterCellularNetwork ( const char *  mcc,
const char *  mnc 
)

This function must be called to register on a cellular network [mcc;mnc]

Returns
LE_FAULT The function failed to register on the network.
LE_BAD_PARAMETER A bad parameter was passed.
LE_OK The function succeeded.
Note
If one code is too long (max 3 digits), it is a fatal error, the function will not return.
Parameters
[in]mccMobile Country Code
[in]mncMobile Network Code
void le_mrc_RemoveNetRegStateEventHandler ( le_mrc_NetRegStateEventHandlerRef_t  addHandlerRef)

Remove handler function for EVENT 'le_mrc_NetRegStateEvent'

Parameters
[in]addHandlerRef
le_result_t le_mrc_RemovePreferredOperator ( const char *  mcc,
const char *  mnc 
)

Remove a preferred operator by specifying the MCC/MNC.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
If one code is too long (max 3 digits), it is a fatal error, the function will not return.
Parameters
[in]mccMobile Country Code
[in]mncMobile Network Code
void le_mrc_RemoveRatChangeHandler ( le_mrc_RatChangeHandlerRef_t  addHandlerRef)

Remove handler function for EVENT 'le_mrc_RatChange'

Parameters
[in]addHandlerRef
le_result_t le_mrc_SetAutomaticRegisterMode ( void  )

Enable the automatic Selection Register mode.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
le_result_t le_mrc_SetBandPreferences ( le_mrc_BandBitMask_t  bandMask)

Set the 2G/3G Band preferences by using a bit mask.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[in]bandMaskBit mask for 2G/3G Band preferences.
le_result_t le_mrc_SetLteBandPreferences ( le_mrc_LteBandBitMask_t  bandMask)

Set the LTE Band preferences by using a bit mask.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[in]bandMaskBit mask for LTE Band preferences.
le_result_t le_mrc_SetManualRegisterMode ( const char *  mcc,
const char *  mnc 
)

Set the manual Selection Register mode with the MCC/MNC parameters.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[in]mccMobile Country Code
[in]mncMobile Network Code
le_result_t le_mrc_SetRadioPower ( le_onoff_t  power)

Set the power of the Radio Module.

Returns
LE_BAD_PARAMETER Bad power mode specified.
LE_FAULT Function failed.
LE_OK Function succeed.
Parameters
[in]powerThe power state.
le_result_t le_mrc_SetRatPreferences ( le_mrc_RatBitMask_t  ratMask)

Set the Radio Access Technology preferences by using a bit mask.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[in]ratMaskBit mask for the Radio Access Technology preferences.
le_result_t le_mrc_SetTdScdmaBandPreferences ( le_mrc_TdScdmaBandBitMask_t  bandMask)

Set the TD-SCDMA Band preferences by using a bit mask.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Parameters
[in]bandMaskBit mask for TD-SCDMA Band preferences.