All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
pa_mrc.h
Go to the documentation of this file.
1 
25 #ifndef LEGATO_PARC_INCLUDE_GUARD
26 #define LEGATO_PARC_INCLUDE_GUARD
27 
28 #include "legato.h"
29 #include "interfaces.h"
30 
31 //--------------------------------------------------------------------------------------------------
32 // Symbol and Enum definitions.
33 //--------------------------------------------------------------------------------------------------
34 
35 //--------------------------------------------------------------------------------------------------
40 //--------------------------------------------------------------------------------------------------
41 typedef enum
42 {
47 }
51 
52 //--------------------------------------------------------------------------------------------------
57 //--------------------------------------------------------------------------------------------------
58 typedef struct pa_mrc_CellInfo
59 {
61  uint32_t index;
62  uint32_t id;
63  uint16_t lac;
64  int16_t rxLevel;
65 }
67 
68 //--------------------------------------------------------------------------------------------------
73 //--------------------------------------------------------------------------------------------------
74 typedef enum
75 {
78 }
80 
81 //--------------------------------------------------------------------------------------------------
86 //--------------------------------------------------------------------------------------------------
87 typedef struct
88 {
89  char mcc[LE_MRC_MCC_BYTES];
90  char mnc[LE_MRC_MNC_BYTES];
91 }
93 
94 //--------------------------------------------------------------------------------------------------
99 //--------------------------------------------------------------------------------------------------
100 typedef struct
101 {
105 }
107 
108 //--------------------------------------------------------------------------------------------------
113 //--------------------------------------------------------------------------------------------------
114 typedef struct
115 {
118  bool isInUse;
119  bool isAvailable;
120  bool isHome;
121  bool isForbidden;
123 }
125 
126 //--------------------------------------------------------------------------------------------------
132 //--------------------------------------------------------------------------------------------------
133 typedef void (*pa_mrc_NetworkRegHdlrFunc_t)
134 (
135  le_mrc_NetRegState_t* regStatePtr
136 );
137 
138 //--------------------------------------------------------------------------------------------------
144 //--------------------------------------------------------------------------------------------------
145 typedef void (*pa_mrc_RatChangeHdlrFunc_t)
146 (
147  le_mrc_Rat_t* ratPtr
148 );
149 
150 //--------------------------------------------------------------------------------------------------
151 // APIs.
152 //--------------------------------------------------------------------------------------------------
153 
154 //--------------------------------------------------------------------------------------------------
161 //--------------------------------------------------------------------------------------------------
163 (
164  le_onoff_t power
165 );
166 
167 //--------------------------------------------------------------------------------------------------
174 //--------------------------------------------------------------------------------------------------
176 (
177  le_onoff_t* powerPtr
178 );
179 
180 //--------------------------------------------------------------------------------------------------
188 //--------------------------------------------------------------------------------------------------
190 (
191  pa_mrc_RatChangeHdlrFunc_t handlerFuncPtr
192 );
193 
194 //--------------------------------------------------------------------------------------------------
200 //--------------------------------------------------------------------------------------------------
202 (
203  le_event_HandlerRef_t handlerRef
204 );
205 
206 //--------------------------------------------------------------------------------------------------
214 //--------------------------------------------------------------------------------------------------
216 (
217  pa_mrc_NetworkRegHdlrFunc_t regStateHandler
218 );
220 
221 //--------------------------------------------------------------------------------------------------
227 //--------------------------------------------------------------------------------------------------
229 (
230  le_event_HandlerRef_t handlerRef
231 );
232 
233 //--------------------------------------------------------------------------------------------------
241 //--------------------------------------------------------------------------------------------------
243 (
245 );
246 
247 //--------------------------------------------------------------------------------------------------
255 //--------------------------------------------------------------------------------------------------
257 (
258  pa_mrc_NetworkRegSetting_t* settingPtr
259 );
260 
261 //--------------------------------------------------------------------------------------------------
269 //--------------------------------------------------------------------------------------------------
271 (
272  le_mrc_NetRegState_t* statePtr
273 );
274 
275 //--------------------------------------------------------------------------------------------------
284 //--------------------------------------------------------------------------------------------------
286 (
287  int32_t* rssiPtr
288 );
289 
290 //--------------------------------------------------------------------------------------------------
299 //--------------------------------------------------------------------------------------------------
301 (
302  char *nameStr,
303  size_t nameStrSize
304 );
305 
306 //--------------------------------------------------------------------------------------------------
311 //--------------------------------------------------------------------------------------------------
313 (
314  le_dls_List_t *scanInformationListPtr
315 );
316 
317 //--------------------------------------------------------------------------------------------------
327 //--------------------------------------------------------------------------------------------------
329 (
330  le_mrc_Rat_t networkMask,
331  pa_mrc_ScanType_t scanType,
332  le_dls_List_t *scanInformationListPtr
333 );
334 
335 //--------------------------------------------------------------------------------------------------
344 //--------------------------------------------------------------------------------------------------
346 (
347  pa_mrc_ScanInformation_t *scanInformationPtr,
348  char *namePtr,
349  size_t nameSize
350 );
351 
352 //--------------------------------------------------------------------------------------------------
360 //--------------------------------------------------------------------------------------------------
362 (
363  le_dls_List_t *PreferredOperatorsListPtr,
364  char mcc[LE_MRC_MCC_BYTES],
365  char mnc[LE_MRC_MNC_BYTES],
366  le_mrc_Rat_t ratMask
367 );
368 
369 //--------------------------------------------------------------------------------------------------
374 //--------------------------------------------------------------------------------------------------
376 (
377  le_dls_List_t *PreferredOperatorsListPtr
378 );
379 
380 //--------------------------------------------------------------------------------------------------
388 //--------------------------------------------------------------------------------------------------
390 (
391  le_dls_List_t *PreferredOperatorsListPtr
392 );
393 
394 //--------------------------------------------------------------------------------------------------
401 //--------------------------------------------------------------------------------------------------
403 (
404  const char *mccPtr,
405  const char *mncPtr
406 );
407 
408 //--------------------------------------------------------------------------------------------------
416 //--------------------------------------------------------------------------------------------------
418 (
419  void
420 );
421 
422 //--------------------------------------------------------------------------------------------------
429 //--------------------------------------------------------------------------------------------------
431 (
432  le_mrc_Rat_t* ratPtr
433 );
434 
435 //--------------------------------------------------------------------------------------------------
442 //--------------------------------------------------------------------------------------------------
444 (
445  uint8_t rats
446 );
447 
448 //--------------------------------------------------------------------------------------------------
455 //--------------------------------------------------------------------------------------------------
457 (
458  uint64_t bands
459 );
460 
461 //--------------------------------------------------------------------------------------------------
468 //--------------------------------------------------------------------------------------------------
470 (
471  uint64_t bands
472 );
473 
474 //--------------------------------------------------------------------------------------------------
481 //--------------------------------------------------------------------------------------------------
483 (
484  uint8_t tdsCdmaBands
485 );
486 
487 //--------------------------------------------------------------------------------------------------
497 //--------------------------------------------------------------------------------------------------
499 (
500  le_dls_List_t* cellInfoListPtr
501 );
502 
503 //--------------------------------------------------------------------------------------------------
508 //--------------------------------------------------------------------------------------------------
510 (
511  le_dls_List_t *cellInfoListPtr
512 );
513 
514 #endif // LEGATO_PARC_INCLUDE_GUARD
le_result_t pa_mrc_GetHomeNetworkName(char *nameStr, size_t nameStrSize)
le_result_t pa_mrc_SetLteBandPreference(uint64_t bands)
uint16_t lac
The location area code.
Definition: pa_mrc.h:63
le_result_t pa_mrc_RegisterNetwork(const char *mccPtr, const char *mncPtr)
le_result_t pa_mrc_GetScanInformationName(pa_mrc_ScanInformation_t *scanInformationPtr, char *namePtr, size_t nameSize)
le_dls_Link_t link
link for the list
Definition: pa_mrc.h:104
uint32_t index
The cell number.
Definition: pa_mrc.h:61
le_result_t pa_mrc_GetNetworkRegConfig(pa_mrc_NetworkRegSetting_t *settingPtr)
le_result_t
Definition: le_basics.h:34
le_mrc_Rat_t rat
radio access technology
Definition: pa_mrc.h:117
le_result_t pa_mrc_SetAutomaticNetworkRegistration(void)
le_dls_Link_t link
link for the list
Definition: pa_mrc.h:122
bool isForbidden
forbidden status
Definition: pa_mrc.h:121
le_dls_Link_t link
Structure is part of a Doubly Linked List API.
Definition: pa_mrc.h:60
le_result_t pa_mrc_GetSignalQuality(int32_t *rssiPtr)
le_result_t pa_mrc_AddPreferredOperators(le_dls_List_t *PreferredOperatorsListPtr, char mcc[LE_MRC_MCC_BYTES], char mnc[LE_MRC_MNC_BYTES], le_mrc_Rat_t ratMask)
le_result_t pa_mrc_GetNetworkRegState(le_mrc_NetRegState_t *statePtr)
le_result_t pa_mrc_ConfigureNetworkReg(pa_mrc_NetworkRegSetting_t setting)
Definition: le_doublyLinkedList.h:221
void pa_mrc_RemoveRatChangeHandler(le_event_HandlerRef_t handlerRef)
le_result_t pa_mrc_SetBandPreference(uint64_t bands)
bool isInUse
network is in use
Definition: pa_mrc.h:118
le_result_t pa_mrc_SavePreferredOperators(le_dls_List_t *PreferredOperatorsListPtr)
pa_mrc_NetworkRegSetting_t
Definition: pa_mrc.h:41
Definition: pa_mrc.h:87
pa_mrc_MobileCode_t mobileCode
Mobile code.
Definition: pa_mrc.h:102
le_result_t pa_mrc_GetRadioPower(le_onoff_t *powerPtr)
le_mrc_Rat_t
Definition: le_mrc_interface.h:908
uint32_t id
The cell identifier.
Definition: pa_mrc.h:62
Enable network registration notification code.
Definition: pa_mrc.h:45
void pa_mrc_DeleteScanInformation(le_dls_List_t *scanInformationListPtr)
le_result_t pa_mrc_SetRatPreference(uint8_t rats)
int32_t pa_mrc_GetNeighborCellsInfo(le_dls_List_t *cellInfoListPtr)
Definition: pa_mrc.h:100
void(* pa_mrc_NetworkRegHdlrFunc_t)(le_mrc_NetRegState_t *regStatePtr)
Definition: pa_mrc.h:134
le_event_HandlerRef_t pa_mrc_SetRatChangeHandler(pa_mrc_RatChangeHdlrFunc_t handlerFuncPtr)
Definition: pa_mrc.h:46
le_result_t pa_mrc_RemoveNetworkRegHandler(le_event_HandlerRef_t handlerRef)
le_event_HandlerRef_t pa_mrc_AddNetworkRegHandler(pa_mrc_NetworkRegHdlrFunc_t regStateHandler)
le_result_t pa_mrc_PerformNetworkScan(le_mrc_Rat_t networkMask, pa_mrc_ScanType_t scanType, le_dls_List_t *scanInformationListPtr)
void pa_mrc_DeleteNeighborCellsInfo(le_dls_List_t *cellInfoListPtr)
struct le_event_Handler * le_event_HandlerRef_t
Definition: le_eventLoop.h:752
pa_mrc_MobileCode_t mobileCode
Mobile code.
Definition: pa_mrc.h:116
Scan PLMN.
Definition: pa_mrc.h:76
Definition: pa_mrc.h:114
int16_t rxLevel
The cell Rx level measurement.
Definition: pa_mrc.h:64
le_result_t pa_mrc_SetRadioPower(le_onoff_t power)
le_mrc_NetRegState_t
Definition: le_mrc_interface.h:880
pa_mrc_ScanType_t
Definition: pa_mrc.h:74
Definition: pa_mrc.h:43
Definition: pa_mrc.h:58
void(* pa_mrc_RatChangeHdlrFunc_t)(le_mrc_Rat_t *ratPtr)
Definition: pa_mrc.h:146
le_mrc_Rat_t ratMask
mask of network technology
Definition: pa_mrc.h:103
le_result_t pa_mrc_GetRadioAccessTechInUse(le_mrc_Rat_t *ratPtr)
le_result_t pa_mrc_SetTdScdmaBandPreference(uint8_t tdsCdmaBands)
bool isHome
home status
Definition: pa_mrc.h:120
bool isAvailable
network can be connected
Definition: pa_mrc.h:119
void pa_mrc_DeletePreferredOperators(le_dls_List_t *PreferredOperatorsListPtr)
Scan closed subscriber group.
Definition: pa_mrc.h:77
le_onoff_t
Definition: le_basics.h:64