00001 00182 #ifndef LEGATO_MRC_INCLUDE_GUARD 00183 #define LEGATO_MRC_INCLUDE_GUARD 00184 00185 #include "legato.h" 00186 #include "le_mdm_defs.h" 00187 00188 00189 00190 //-------------------------------------------------------------------------------------------------- 00191 // APIs. 00192 //-------------------------------------------------------------------------------------------------- 00193 00194 //-------------------------------------------------------------------------------------------------- 00198 //-------------------------------------------------------------------------------------------------- 00199 typedef struct le_mrc_ScanInformation* le_mrc_ScanInformation_Ref_t; 00200 00201 //-------------------------------------------------------------------------------------------------- 00205 //-------------------------------------------------------------------------------------------------- 00206 typedef struct le_mrc_ScanInformationList* le_mrc_ScanInformation_ListRef_t; 00207 00208 //-------------------------------------------------------------------------------------------------- 00212 //-------------------------------------------------------------------------------------------------- 00213 typedef struct le_mrc_NetRegStateHandler* le_mrc_NetRegStateHandlerRef_t; 00214 00215 //-------------------------------------------------------------------------------------------------- 00222 //-------------------------------------------------------------------------------------------------- 00223 typedef void(*le_mrc_NetRegStateHandlerFunc_t) 00224 ( 00225 le_mrc_NetRegState_t state, 00226 void* contextPtr 00227 ); 00228 00229 //-------------------------------------------------------------------------------------------------- 00237 //-------------------------------------------------------------------------------------------------- 00238 le_mrc_NetRegStateHandlerRef_t le_mrc_AddNetRegStateHandler 00239 ( 00240 le_mrc_NetRegStateHandlerFunc_t handlerFuncPtr, 00241 void* contextPtr 00242 ); 00243 00244 //-------------------------------------------------------------------------------------------------- 00248 //-------------------------------------------------------------------------------------------------- 00249 void le_mrc_RemoveNetRegStateHandler 00250 ( 00251 le_mrc_NetRegStateHandlerRef_t handlerRef 00252 ); 00253 00254 //-------------------------------------------------------------------------------------------------- 00261 //-------------------------------------------------------------------------------------------------- 00262 le_result_t le_mrc_SetRadioPower 00263 ( 00264 le_onoff_t power 00265 ); 00266 00267 //-------------------------------------------------------------------------------------------------- 00277 //-------------------------------------------------------------------------------------------------- 00278 le_result_t le_mrc_GetRadioPower 00279 ( 00280 le_onoff_t* powerPtr 00281 ); 00282 00283 //-------------------------------------------------------------------------------------------------- 00293 //-------------------------------------------------------------------------------------------------- 00294 le_result_t le_mrc_GetNetRegState 00295 ( 00296 le_mrc_NetRegState_t* statePtr 00297 ); 00298 00299 //-------------------------------------------------------------------------------------------------- 00309 //-------------------------------------------------------------------------------------------------- 00310 le_result_t le_mrc_GetSignalQual 00311 ( 00312 uint32_t* qualityPtr 00313 00314 ); 00315 00316 00317 //-------------------------------------------------------------------------------------------------- 00329 //-------------------------------------------------------------------------------------------------- 00330 le_result_t le_mrc_GetHomeNetworkName 00331 ( 00332 char *nameStr, 00333 size_t nameStrSize 00334 ); 00335 00336 00337 //-------------------------------------------------------------------------------------------------- 00345 //-------------------------------------------------------------------------------------------------- 00346 le_result_t le_mrc_ConnectCellularNetwork 00347 ( 00348 const char *mccPtr, 00349 const char *mncPtr 00350 ); 00351 00352 00353 //-------------------------------------------------------------------------------------------------- 00360 //-------------------------------------------------------------------------------------------------- 00361 le_mrc_ScanInformation_ListRef_t le_mrc_PerformCellularNetworkScan 00362 ( 00363 le_mrc_Rat_t ratMask 00364 ); 00365 00366 00367 //-------------------------------------------------------------------------------------------------- 00378 //-------------------------------------------------------------------------------------------------- 00379 le_mrc_ScanInformation_Ref_t le_mrc_GetFirstCellularNetworkScan 00380 ( 00381 le_mrc_ScanInformation_ListRef_t scanInformationListRef 00382 ); 00383 00384 00385 //-------------------------------------------------------------------------------------------------- 00396 //-------------------------------------------------------------------------------------------------- 00397 le_mrc_ScanInformation_Ref_t le_mrc_GetNextCellularNetworkScan 00398 ( 00399 le_mrc_ScanInformation_ListRef_t scanInformationListRef 00400 ); 00401 00402 00403 //-------------------------------------------------------------------------------------------------- 00412 //-------------------------------------------------------------------------------------------------- 00413 void le_mrc_DeleteCellularNetworkScan 00414 ( 00415 le_mrc_ScanInformation_ListRef_t scanInformationListRef 00416 ); 00417 00418 00419 //-------------------------------------------------------------------------------------------------- 00432 //-------------------------------------------------------------------------------------------------- 00433 le_result_t le_mrc_GetCellularNetworkMccMnc 00434 ( 00435 le_mrc_ScanInformation_Ref_t scanInformationRef, 00436 char *mccPtr, 00437 size_t mccPtrSize, 00438 char *mncPtr, 00439 size_t mncPtrSize 00440 ); 00441 00442 00443 //-------------------------------------------------------------------------------------------------- 00456 //-------------------------------------------------------------------------------------------------- 00457 le_result_t le_mrc_GetCellularNetworkName 00458 ( 00459 le_mrc_ScanInformation_Ref_t scanInformationRef, 00460 char *namePtr, 00461 size_t nameSize 00462 ); 00463 00464 00465 //-------------------------------------------------------------------------------------------------- 00476 //-------------------------------------------------------------------------------------------------- 00477 bool le_mrc_IsCellularNetworkRatAvailable 00478 ( 00479 le_mrc_ScanInformation_Ref_t scanInformationRef, 00480 le_mrc_Rat_t rat 00481 ); 00482 00483 00484 //-------------------------------------------------------------------------------------------------- 00495 //-------------------------------------------------------------------------------------------------- 00496 bool le_mrc_IsCellularNetworkInUse 00497 ( 00498 le_mrc_ScanInformation_Ref_t scanInformationRef 00499 ); 00500 00501 00502 //-------------------------------------------------------------------------------------------------- 00513 //-------------------------------------------------------------------------------------------------- 00514 bool le_mrc_IsCellularNetworkAvailable 00515 ( 00516 le_mrc_ScanInformation_Ref_t scanInformationRef 00517 ); 00518 00519 00520 //-------------------------------------------------------------------------------------------------- 00531 //-------------------------------------------------------------------------------------------------- 00532 bool le_mrc_IsCellularNetworkHome 00533 ( 00534 le_mrc_ScanInformation_Ref_t scanInformationRef 00535 ); 00536 00537 00538 //-------------------------------------------------------------------------------------------------- 00549 //-------------------------------------------------------------------------------------------------- 00550 bool le_mrc_IsCellularNetworkForbidden 00551 ( 00552 le_mrc_ScanInformation_Ref_t scanInformationRef 00553 ); 00554 00555 00556 #endif // LEGATO_MRC_INCLUDE_GUARD