Broadcom LBS API to RIL. More...
#include "gllbs_types.h"
Classes | |
struct | GlLbsRilCellInfoList |
Data structure for serving cell list. More... | |
struct | GlLbsRilMeasurementsInfo |
Data structure for NMR and MRL reports. More... | |
struct | GlLbsRilNotifyData |
notifications data type More... | |
struct | GlLbsRilCallbacks |
Structure for RIL HAL callbacks. More... | |
Typedefs | |
typedef struct GlLbsRilCellInfoList | GlLbsRilCellInfoList |
Data structure for serving cell list. | |
typedef struct GlLbsRilMeasurementsInfo | GlLbsRilMeasurementsInfo |
Data structure for NMR and MRL reports. | |
typedef enum GLLBS_RIL_DATA_CODE | GLLBS_RIL_DATA_CODE |
RIL messages codes. | |
typedef struct GlLbsRilNotifyData | GlLbsRilNotifyData |
notifications data type | |
typedef void(* | GlLbsRilReqDataCb )(GLLBS_RIL_DATA_CODE dataCode) |
Request data from Radio Layer Interface (RIL) | |
typedef struct GlLbsRilCallbacks | GlLbsRilCallbacks |
Structure for RIL HAL callbacks. | |
Enumerations | |
enum | GLLBS_RIL_DATA_CODE { GLLBS_RIL_CELL_ID, GLLBS_RIL_CELL_ID_EXT, GLLBS_RIL_NMR_MRL, GLLBS_RIL_NMR_MRL_PERIODIC, GLLBS_RIL_NMR_MRL_PERIODIC_STOP, GLLBS_RIL_TIME } |
RIL messages codes. More... | |
Functions | |
GLLBS_ERRORS | GlLbsRilInit (const GlLbsRilCallbacks *cb) |
Initialize LBS interface to RIL HAL. | |
void | GlLbsRilNotify (const GlLbsRilNotifyData *data) |
HAL direct calls to LBS. |
Broadcom LBS API to RIL.
Copyright (c) 2009 by Broadcom Corp. All Rights Reserved.
The information contained herein is confidential property of Broadcom. The use, copying, transfer or disclosure of such information is prohibited except by express written agreement with Broadcom.
Using notes:
1. During main initialization "GlLbsRilInit" function must be called to specify function which can be used by LBS core library
example:
GlLbsRilCallbacks cb; cb.cbLbsRilDataReq = MyRilDataReq; GlLbsRilInit(&cb);
2. Single request example:
LBS Core will call "MyRilDataReq" HAL function specified by cbLbsRilDataReq variable
example implementation of "MyRilDataReq" void MyRilDataReq(GLLBS_RIL_DATA_CODE dataCode) { switch(dataCode) { case GLLBS_RIL_CELL_ID: Add implementation break; case GLLBS_RIL_CELL_ID_EXT: Add implementation break; case GLLBS_RIL_NMR_MRL: Add implementation break; case GLLBS_RIL_NMR_MRL_PERIODIC: Add implementation break; case GLLBS_RIL_NMR_MRL_PERIODIC_STOP: Add implementation break; case GLLBS_RIL_TIME: Add implementation break; } }
Then RIL can synchronously (from MyRilDataReq) or asynchronously call "GlLbsRilNotify" function and provide requested data
NOTE !!! NOTE !!! NOTE !!! NOTE !!! NOTE !!! All LBS functions must be called from the same GPS thread !!
typedef void(* GlLbsRilReqDataCb)(GLLBS_RIL_DATA_CODE dataCode) |
Request data from Radio Layer Interface (RIL)
dataCode | - type of the requested data. |
enum GLLBS_RIL_DATA_CODE |
RIL messages codes.
GLLBS_ERRORS GlLbsRilInit | ( | const GlLbsRilCallbacks * | cb | ) |
Initialize LBS interface to RIL HAL.
cb | - pointer to the structure for RIL HAL callbacks. |
void GlLbsRilNotify | ( | const GlLbsRilNotifyData * | data | ) |
HAL direct calls to LBS.
Notification with the data from RIL. Called as the result of processing cbRILDataReq.
data | - pointer to the data buffer. |