le_mrc_common.h File Reference

#include "legato.h"

Go to the source code of this file.

Data Structures

struct  le_mrc_NetRegRejectInd_t
 

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
 
#define LE_MRC_BITMASK_BAND_CLASS_0_A_SYSTEM   0x1
 
#define LE_MRC_BITMASK_BAND_CLASS_0_B_SYSTEM   0x2
 
#define LE_MRC_BITMASK_BAND_CLASS_1_ALL_BLOCKS   0x4
 
#define LE_MRC_BITMASK_BAND_CLASS_2_PLACEHOLDER   0x8
 
#define LE_MRC_BITMASK_BAND_CLASS_3_A_SYSTEM   0x10
 
#define LE_MRC_BITMASK_BAND_CLASS_4_ALL_BLOCKS   0x20
 
#define LE_MRC_BITMASK_BAND_CLASS_5_ALL_BLOCKS   0x40
 
#define LE_MRC_BITMASK_BAND_CLASS_6   0x80
 
#define LE_MRC_BITMASK_BAND_CLASS_7   0x100
 
#define LE_MRC_BITMASK_BAND_CLASS_8   0x200
 
#define LE_MRC_BITMASK_BAND_CLASS_9   0x400
 
#define LE_MRC_BITMASK_BAND_CLASS_10   0x800
 
#define LE_MRC_BITMASK_BAND_CLASS_11   0x1000
 
#define LE_MRC_BITMASK_BAND_CLASS_12   0x2000
 
#define LE_MRC_BITMASK_BAND_CLASS_14   0x4000
 
#define LE_MRC_BITMASK_BAND_CLASS_15   0x8000
 
#define LE_MRC_BITMASK_BAND_CLASS_16   0x10000
 
#define LE_MRC_BITMASK_BAND_CLASS_17   0x20000
 
#define LE_MRC_BITMASK_BAND_CLASS_18   0x40000
 
#define LE_MRC_BITMASK_BAND_CLASS_19   0x80000
 
#define LE_MRC_BITMASK_BAND_GSM_DCS_1800   0x100000
 
#define LE_MRC_BITMASK_BAND_EGSM_900   0x200000
 
#define LE_MRC_BITMASK_BAND_PRI_GSM_900   0x400000
 
#define LE_MRC_BITMASK_BAND_GSM_450   0x800000
 
#define LE_MRC_BITMASK_BAND_GSM_480   0x1000000
 
#define LE_MRC_BITMASK_BAND_GSM_750   0x2000000
 
#define LE_MRC_BITMASK_BAND_GSM_850   0x4000000
 
#define LE_MRC_BITMASK_BAND_GSMR_900   0x8000000
 
#define LE_MRC_BITMASK_BAND_GSM_PCS_1900   0x10000000
 
#define LE_MRC_BITMASK_BAND_WCDMA_EU_J_CH_IMT_2100   0x20000000
 
#define LE_MRC_BITMASK_BAND_WCDMA_US_PCS_1900   0x40000000
 
#define LE_MRC_BITMASK_BAND_WCDMA_EU_CH_DCS_1800   0x80000000
 
#define LE_MRC_BITMASK_BAND_WCDMA_US_1700   0x100000000
 
#define LE_MRC_BITMASK_BAND_WCDMA_US_850   0x200000000
 
#define LE_MRC_BITMASK_BAND_WCDMA_J_800   0x400000000
 
#define LE_MRC_BITMASK_BAND_WCDMA_EU_2600   0x800000000
 
#define LE_MRC_BITMASK_BAND_WCDMA_EU_J_900   0x1000000000
 
#define LE_MRC_BITMASK_BAND_WCDMA_J_1700   0x2000000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_1   0x1
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_2   0x2
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_3   0x4
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_4   0x8
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_5   0x10
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_6   0x20
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_7   0x40
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_8   0x80
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_9   0x100
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_10   0x200
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_11   0x400
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_12   0x800
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_13   0x1000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_14   0x2000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_17   0x4000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_18   0x8000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_19   0x10000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_20   0x20000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_21   0x40000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_24   0x80000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_25   0x100000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_26   0x200000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_28   0x400000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_33   0x800000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_34   0x1000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_35   0x2000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_36   0x4000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_37   0x8000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_38   0x10000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_39   0x20000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_40   0x40000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_41   0x80000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_42   0x100000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_43   0x200000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_66   0x400000000
 
#define LE_MRC_BITMASK_LTE_BAND_E_UTRA_OP_BAND_71   0x800000000
 
#define LE_MRC_BITMASK_TDSCDMA_BAND_A   0x1
 
#define LE_MRC_BITMASK_TDSCDMA_BAND_B   0x2
 
#define LE_MRC_BITMASK_TDSCDMA_BAND_C   0x4
 
#define LE_MRC_BITMASK_TDSCDMA_BAND_D   0x8
 
#define LE_MRC_BITMASK_TDSCDMA_BAND_E   0x10
 
#define LE_MRC_BITMASK_TDSCDMA_BAND_F   0x20
 
#define LE_MRC_BITMASK_RAT_GSM   0x1
 
#define LE_MRC_BITMASK_RAT_UMTS   0x2
 
#define LE_MRC_BITMASK_RAT_TDSCDMA   0x4
 
#define LE_MRC_BITMASK_RAT_LTE   0x8
 
#define LE_MRC_BITMASK_RAT_CDMA   0x10
 
#define LE_MRC_BITMASK_RAT_CATM1   0x20
 
#define LE_MRC_BITMASK_RAT_NB1   0x40
 
#define LE_MRC_BITMASK_RAT_ALL   0x80
 
#define LE_MRC_BITMASK_RAT_MAX   0x100
 

Typedefs

typedef uint64_t le_mrc_BandBitMask_t
 
typedef uint64_t le_mrc_LteBandBitMask_t
 
typedef uint32_t le_mrc_TdScdmaBandBitMask_t
 
typedef struct le_mrc_ScanInformation * le_mrc_ScanInformationRef_t
 
typedef struct le_mrc_ScanInformationList * le_mrc_ScanInformationListRef_t
 
typedef struct le_mrc_PciScanInformationList * le_mrc_PciScanInformationListRef_t
 
typedef struct le_mrc_PciScanInformation * le_mrc_PciScanInformationRef_t
 
typedef struct le_mrc_PlmnInformation * le_mrc_PlmnInformationRef_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_Metrics * le_mrc_MetricsRef_t
 
typedef uint32_t le_mrc_RatBitMask_t
 
typedef struct le_mrc_NetRegStateEventHandler * le_mrc_NetRegStateEventHandlerRef_t
 
typedef struct le_mrc_RatChangeHandler * le_mrc_RatChangeHandlerRef_t
 
typedef struct le_mrc_PacketSwitchedChangeHandler * le_mrc_PacketSwitchedChangeHandlerRef_t
 
typedef struct le_mrc_SignalStrengthChangeHandler * le_mrc_SignalStrengthChangeHandlerRef_t
 
typedef struct le_mrc_NetworkRejectHandler * le_mrc_NetworkRejectHandlerRef_t
 
typedef struct le_mrc_NetRegRejectHandler * le_mrc_NetRegRejectHandlerRef_t
 
typedef struct le_mrc_JammingDetectionEventHandler * le_mrc_JammingDetectionEventHandlerRef_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)
 
typedef void(* le_mrc_PacketSwitchedChangeHandlerFunc_t) (le_mrc_NetRegState_t state, void *contextPtr)
 
typedef void(* le_mrc_SignalStrengthChangeHandlerFunc_t) (int32_t ss, void *contextPtr)
 
typedef void(* le_mrc_CellularNetworkScanHandlerFunc_t) (le_mrc_ScanInformationListRef_t listRef, void *contextPtr)
 
typedef void(* le_mrc_PciNetworkScanHandlerFunc_t) (le_mrc_PciScanInformationListRef_t listRef, void *contextPtr)
 
typedef void(* le_mrc_ManualSelectionHandlerFunc_t) (le_result_t result, void *contextPtr)
 
typedef void(* le_mrc_NetworkRejectHandlerFunc_t) (const char *LE_NONNULL mcc, const char *LE_NONNULL mnc, le_mrc_Rat_t rat, void *contextPtr)
 
typedef void(* le_mrc_NetRegRejectHandlerFunc_t) (const le_mrc_NetRegRejectInd_t *LE_NONNULL networkRejectIndPtr, void *contextPtr)
 
typedef void(* le_mrc_JammingDetectionHandlerFunc_t) (le_mrc_JammingReport_t report, le_mrc_JammingStatus_t status, void *contextPtr)
 

Enumerations

enum  le_mrc_NetRegState_t {
  LE_MRC_REG_NONE = 0, LE_MRC_REG_HOME = 1, LE_MRC_REG_SEARCHING = 2, LE_MRC_REG_DENIED = 3,
  LE_MRC_REG_ROAMING = 4, LE_MRC_REG_UNKNOWN = 5
}
 
enum  le_mrc_Rat_t {
  LE_MRC_RAT_UNKNOWN = 0, LE_MRC_RAT_GSM = 1, LE_MRC_RAT_UMTS = 2, LE_MRC_RAT_TDSCDMA = 3,
  LE_MRC_RAT_LTE = 4, LE_MRC_RAT_CDMA = 5
}
 
enum  le_mrc_JammingReport_t { LE_MRC_JAMMING_REPORT_FINAL = 0, LE_MRC_JAMMING_REPORT_INTERMEDIATE = 1 }
 
enum  le_mrc_JammingStatus_t {
  LE_MRC_JAMMING_STATUS_UNKNOWN = 0, LE_MRC_JAMMING_STATUS_NULL = 1, LE_MRC_JAMMING_STATUS_LOW = 2, LE_MRC_JAMMING_STATUS_MEDIUM = 3,
  LE_MRC_JAMMING_STATUS_HIGH = 4, LE_MRC_JAMMING_STATUS_JAMMED = 5
}
 
enum  le_mrc_NetRejCause_t {
  LE_MRC_IMSI_UNKNOWN = 0, LE_MRC_ILLEGAL_MS = 1, LE_MRC_IMEI_NOT_ACCEPTED = 2, LE_MRC_ILLEGAL_ME = 3,
  LE_MRC_GPRS_NOT_ALLOWED = 4, LE_MRC_GPRS_NON_GPRS_NOT_ALLOWED = 5, LE_MRC_MS_IDENTITY_UNKNOWN = 6, LE_MRC_NETWORK_IMPLICIT_DETACH = 7,
  LE_MRC_PLMN_NOT_ALLOWED = 8, LE_MRC_LOCATION_NOT_ALLOWED = 9, LE_MRC_ROAMING_NOT_ALLOWED = 10, LE_MRC_GPRS_NOT_ALLOWED_PLMN = 11,
  LE_MRC_NO_SUITABLE_CELL = 12, LE_MRC_MSC_NOT_REACHABLE = 13, LE_MRC_NETWORK_FAILURE = 14, LE_MRC_MAC_FAILURE = 15,
  LE_MRC_SYNCH_FAILURE = 16, LE_MRC_CONGESTION = 17, LE_MRC_GSM_AUTH_FAILURE = 18, LE_MRC_CSG_NOT_AUTHORIZED = 19,
  LE_MRC_SMS_VIA_GPRS = 20, LE_MRC_No_PDP_ACTIVATED = 21, LE_MRC_RETRY_NEW_CELL = 22, LE_MRC_SEMANTICAL_INCORRECT = 23,
  LE_MRC_INVALID_INFORMATION = 24, LE_MRC_MESSAGE_TYPE_WRONG = 25, LE_MRC_MESSAGE_TYPE_NOT_COMPATIBLE = 26, LE_MRC_WRONG_IE = 27,
  LE_MRC_IE_ERROR = 28, LE_MRC_MESSAGE_NOT_COMPATIBLE = 29, LE_MRC_PROTOCOL_ERROR = 30
}
 
enum  le_mrc_NetRegDomain_t {
  LE_MRC_NO_SERVICE = 0, LE_MRC_CS = 1, LE_MRC_PS = 2, LE_MRC_CS_PS = 3,
  LE_MRC_LIMITED_SERVICE = 4
}
 

Detailed Description

Type definitions for le_mrc.