Application requests to the GlEngine class. More...
#include <glgpsapi.h>
Public Member Functions | |
virtual | ~GlRequest (void) |
Define virtual destructor. | |
Methods to specify callback functions for receiving results of requests | |
virtual void | SetOnNmea (GlReqOnNmea cbOnNmea)=0 |
Called when NMEA sentence is available. | |
virtual void | SetOnResponse (GlReqOnResponse cbOnResponse)=0 |
Called when response is available. | |
virtual void | SetOnSIGMeasurement (GlReqOnMeas cbOnMeasurement)=0 |
Called when signal measurement is available. | |
virtual void | SetOnCntin (GlReqOnCntin cbOnCntin)=0 |
Called when CNTIN measurement is completed. | |
virtual void | SetOnTimer (GlReqOnTimer cbOnTimer)=0 |
Called when timer is expired. | |
virtual void | SetOnFactTest (GlReqOnFactTest cbOnFactTest)=0 |
Called when factory test information is updated. | |
virtual void | SetOnStop (GlReqOnStop cbOnStop)=0 |
Called when request is completed. | |
Miscellaneous methods | |
virtual void | StopAfter (long lMaxValidFixCount, long lMaxTotalFixCount, long lMaxTestDurationSec, short sMaxNbSyncinMeas=-1)=0 |
Optional stop criteria for periodic fixes ,-1 indicates infinity. | |
virtual void | SetGsvRate (short sGsvRate)=0 |
Set the output rate of $GPGSV messages. | |
virtual void | SetUserData (void *pUserData)=0 |
Set a pointer to the user data. | |
virtual void * | GetUserData ()=0 |
Obtain user data. | |
Static Public Member Functions | |
Methods that create an instance to a request object of a particular type | |
static GlRequest * | MakePosReqPeriodic (unsigned long ulPeriodMs, short sTimeOutSec, long lAccuracyMeters, GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Creates an instance of a periodic position measurement request to the GLL. | |
static GlRequest * | MakePosReqSingle (short sTimeOutSec, long lAccuracyMeters, unsigned short usMaxLocAgeSec, GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Create an instance of a single shot request to the GLL. | |
static GlRequest * | MakeMeasReqPeriodic (unsigned long ulPeriod, long lAccuracyMeters, bool bEnhanced, GlReqOnStart cbOnStart, GlReqOnMeas cbOnMeas, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE, bool bPreferCoarseTime=false) |
Create an instance of a periodic raw measurement request to the GLL. | |
static GlRequest * | MakeMeasReqSingle (short sTimeOutSec, long lAccuracyMeters, bool bEnhanced, GlReqOnStart cbOnStart, GlReqOnMeas cbOnMeas, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE, bool bPreferCoarseTime=false) |
Create an instance of a single shot raw measurement request to the GLL. | |
static GlRequest * | MakeCollectEph (GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Create an instance of a collect ephemeris request to the GLL This is designed to be created about every hour to maintain the unit in "hot start". | |
static GlRequest * | MakeFactTestReq (short sFactTestPRN, GL_FACT_TEST_ITEMS etTestItems, GL_FACT_TEST_MODE etTestMode, short sMaxDurationSec, short sAvgIntrvlSec, GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE, unsigned short usIntegrationTimeSec=10, unsigned short usNeglectIQSec=3) |
static GlRequest * | MakeFactTestReq (short sFactTestPRN, short sFactTestGloFCN, short sFactTestBdsPrn, GL_FACT_TEST_ITEMS etTestItems, GL_FACT_TEST_MODE etTestMode, short sMaxDurationSec, short sAvgIntrvlSec, GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE, unsigned short usIntegrationTimeSec=10, unsigned short usNeglectIQSec=3) |
static GlRequest * | MakeCntInReq (GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Request for frequency counter measurement. | |
static GlRequest * | MakeSyncInReq (short sTimeOutSec, GlReqOnSyncInReport cbOnSyncInReport, GlReqOnSyncInStatus cbOnSyncInStatus, GlReqOnSyncInLatched cbOnSyncInLatched, GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Request to perform precise time synchronization. | |
static GlRequest * | MakeTimerReq (unsigned long ulNumEvents, unsigned long ulPeriodMs, GlReqOnTimer cbOnTimer, GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Request a timer. | |
static GlRequest * | MakeAsstStatReq (GlReqOnStart cbOnStart, GlReqOnAsstStatus cbOnAsstStatus, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Request for the status of currently available assistance data. | |
static GlRequest * | MakeGetGpsDataReq (unsigned long ulReqDataMask, GlReqOnStart cbOnStart, GlReqOnGpsData cbOnGpsData, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Request for delivering available assistance data Nav and Alm data for other constellation than GPS is not supported for now. | |
static GlRequest * | MakeFreqScanReq (long lInitFreq, long lEndFreq, unsigned long ulFreqStep, unsigned long ulRBW, unsigned long ulVBW, unsigned long ulFlags, GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Request for a frequency scan test. | |
static GlRequest * | MakePlatformTestReq (const GL_PLATFORM_TEST_PARAM &otPARAMS, GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Request a platform test. | |
static GlRequest * | MakeGeofenceReq (native_double dLatitude, native_double dLongitude, native_double dRadius, GL_REQ_GEOFENCE_CODE eInitialState, unsigned int uiMonitorTransitions, int iNotificationResponsivenessMs, int iUknownTimerMs, GlReqOnStart cbOnStart, GlReqOnGeofenceEvent cbOnEvent, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Request for a geofence monitoring. | |
static GlRequest * | MakeBreadcrumbReq (GlReqOnStart cbOnStart, GlOnMemAlloc cbOnMemAlloc=GL_DFLT_MEM_ALLOC, GlOnMemFree cbOnMemFree=GL_DFLT_MEM_FREE) |
Request for breadcrumb (positions will be dumped if GlReqOnReponse callback is set using SetOnResponse method) |
Application requests to the GlEngine class.
static GlRequest* GlRequest::MakeAsstStatReq | ( | GlReqOnStart | cbOnStart, |
GlReqOnAsstStatus | cbOnAsstStatus, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Request for the status of currently available assistance data.
cbOnStart | - callback to be invoked when the request starts |
cbOnAsstStatus | - Callback when assistance status information is avaiable |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakeBreadcrumbReq | ( | GlReqOnStart | cbOnStart, |
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Request for breadcrumb (positions will be dumped if GlReqOnReponse callback is set using SetOnResponse method)
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
static GlRequest* GlRequest::MakeCntInReq | ( | GlReqOnStart | cbOnStart, |
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Request for frequency counter measurement.
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakeCollectEph | ( | GlReqOnStart | cbOnStart, |
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Create an instance of a collect ephemeris request to the GLL This is designed to be created about every hour to maintain the unit in "hot start".
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakeFactTestReq | ( | short | sFactTestPRN, |
GL_FACT_TEST_ITEMS | etTestItems, | ||
GL_FACT_TEST_MODE | etTestMode, | ||
short | sMaxDurationSec, | ||
short | sAvgIntrvlSec, | ||
GlReqOnStart | cbOnStart, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE , |
||
unsigned short | usIntegrationTimeSec = 10 , |
||
unsigned short | usNeglectIQSec = 3 |
||
) | [static] |
sFactTestPRN | - The GPS PRN ID configured in the simulator, |
etTestItems | - What to test ( see GL_FACT_TEST_ITEMS ) |
etTestMode | - Specifies if test needs to be run once or continously. |
sMaxDurationSec | - Maximum duration of the test. ( see GL_FACT_TEST_MODE) |
sAvgIntrvlSec | - Averaging interval in seconds |
cbOnStart | - callback to be invoked when testing starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakeFactTestReq | ( | short | sFactTestPRN, |
short | sFactTestGloFCN, | ||
short | sFactTestBdsPrn, | ||
GL_FACT_TEST_ITEMS | etTestItems, | ||
GL_FACT_TEST_MODE | etTestMode, | ||
short | sMaxDurationSec, | ||
short | sAvgIntrvlSec, | ||
GlReqOnStart | cbOnStart, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE , |
||
unsigned short | usIntegrationTimeSec = 10 , |
||
unsigned short | usNeglectIQSec = 3 |
||
) | [static] |
sFactTestPRN | - The GPS PRN ID configured in the simulator |
sFactTestGloFCN | - The GLONASS FCN ID configured in the simulator |
sFactTestBdsPrn | - The BDS PRN ID configured in the simulator |
etTestItems | - What to test (see GL_FACT_TEST_ITEMS) |
etTestMode | - Specifies if test needs to be run once or continously |
sMaxDurationSec | - Maximum duration of the test. (see GL_FACT_TEST_MODE) |
sAvgIntrvlSec | - Averaging interval in seconds |
cbOnStart | - callback invoked when testing starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakeFreqScanReq | ( | long | lInitFreq, |
long | lEndFreq, | ||
unsigned long | ulFreqStep, | ||
unsigned long | ulRBW, | ||
unsigned long | ulVBW, | ||
unsigned long | ulFlags, | ||
GlReqOnStart | cbOnStart, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Request for a frequency scan test.
lInitFreq | - Start frequency (Hz) of the scan, referenced to L1 (0 means 1575420000Hz for GPS band and 1602000000 Hz for GLONASS band) |
lEndFreq | - End frequency (Hz) of the scan, referenced to L1 |
ulRBW | - Resolution bandwidth |
ulVBW | - Video bandwidth |
ulFlags | - logical OR of FREQ_SCAN_*** flags above. |
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
static GlRequest* GlRequest::MakeGeofenceReq | ( | native_double | dLatitude, |
native_double | dLongitude, | ||
native_double | dRadius, | ||
GL_REQ_GEOFENCE_CODE | eInitialState, | ||
unsigned int | uiMonitorTransitions, | ||
int | iNotificationResponsivenessMs, | ||
int | iUknownTimerMs, | ||
GlReqOnStart | cbOnStart, | ||
GlReqOnGeofenceEvent | cbOnEvent, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Request for a geofence monitoring.
dLatitude | - Latitude of the fence |
dLongitude | - Longitude of the fence |
dRadius | - Radius of the fence |
cbOnStart | - callback to be invoked when the request starts |
cbOnEvent | - callback to be invoked when events occur |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
static GlRequest* GlRequest::MakeGetGpsDataReq | ( | unsigned long | ulReqDataMask, |
GlReqOnStart | cbOnStart, | ||
GlReqOnGpsData | cbOnGpsData, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Request for delivering available assistance data Nav and Alm data for other constellation than GPS is not supported for now.
ulReqDataMask | - Requested data Mask (see GL_GPS_DATA) |
cbOnGpsData | - Called when GLL information is available |
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakeMeasReqPeriodic | ( | unsigned long | ulPeriod, |
long | lAccuracyMeters, | ||
bool | bEnhanced, | ||
GlReqOnStart | cbOnStart, | ||
GlReqOnMeas | cbOnMeas, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE , |
||
bool | bPreferCoarseTime = false |
||
) | [static] |
Create an instance of a periodic raw measurement request to the GLL.
ulPeriod | - Desired periodic update rate |
lAccuracyMeters | - Desired accuracy for first period only (same as MeasReqSingle for 1st period only) |
bEnhanced | - MS-B assistance enhances MS-A measurements |
cbOnStart | - callback to be invoked when the request starts |
cbOnMeas | - callback function when measurement is available |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
bPreferCoarseTime | - Prefer coarse time |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakeMeasReqSingle | ( | short | sTimeOutSec, |
long | lAccuracyMeters, | ||
bool | bEnhanced, | ||
GlReqOnStart | cbOnStart, | ||
GlReqOnMeas | cbOnMeas, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE , |
||
bool | bPreferCoarseTime = false |
||
) | [static] |
Create an instance of a single shot raw measurement request to the GLL.
sTimeOutSec | - Desired response time |
lAccuracyMeters | - Desired accuracy for first period only (same as MeasReqSingle for 1st period only) |
lAccuracyMeters | - Desired accuracy for first period only (same as MeasReqSingle for 1st period only) |
bEnhanced | - MS-B assistance enhances MS-A measurements. |
cbOnMeas | - Callback function when measurement is available |
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
bPreferCoarseTime | - Prefer coarse time |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakePlatformTestReq | ( | const GL_PLATFORM_TEST_PARAM & | otPARAMS, |
GlReqOnStart | cbOnStart, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Request a platform test.
otPLATFORM_TEST | - The platform test parameters |
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Most typical use is SerialStressTest: otPARAMS.etPLATFORM_TEST is PLATFORM_TEST_SERIAL_STRESS
static GlRequest* GlRequest::MakePosReqPeriodic | ( | unsigned long | ulPeriodMs, |
short | sTimeOutSec, | ||
long | lAccuracyMeters, | ||
GlReqOnStart | cbOnStart, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Creates an instance of a periodic position measurement request to the GLL.
ulPeriodMs | - Desired periodic update rate |
sTimeOutSec | - Relax accuracy mask after sTimeOutSec with no fix |
lAccuracyMeters | - Desired accuracy for first period only (same as MeasReqSingle for 1st period only) |
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakePosReqSingle | ( | short | sTimeOutSec, |
long | lAccuracyMeters, | ||
unsigned short | usMaxLocAgeSec, | ||
GlReqOnStart | cbOnStart, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Create an instance of a single shot request to the GLL.
sTimeOutSec | - Desired response time |
lAccuracyMeters | - Desired accuracy |
usMaxLocAgeSec | - If the most recent computed position has age is smaller than usMaxLocAgeSec, then no new position will be computed and the most recent one will be returned |
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakeSyncInReq | ( | short | sTimeOutSec, |
GlReqOnSyncInReport | cbOnSyncInReport, | ||
GlReqOnSyncInStatus | cbOnSyncInStatus, | ||
GlReqOnSyncInLatched | cbOnSyncInLatched, | ||
GlReqOnStart | cbOnStart, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Request to perform precise time synchronization.
sTimeOutSec | - Request timeout in seconds, -1 for no timeout |
cbOnSyncInReport | - Callback for SYNCIN reports. |
cbOnSyncInStatus | - Callback for SYNCIN status. |
cbOnSyncInLatched | - Callback when SYNCIN is latched. |
cbOnStart | - Callback when SYNCIN is started. |
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
static GlRequest* GlRequest::MakeTimerReq | ( | unsigned long | ulNumEvents, |
unsigned long | ulPeriodMs, | ||
GlReqOnTimer | cbOnTimer, | ||
GlReqOnStart | cbOnStart, | ||
GlOnMemAlloc | cbOnMemAlloc = GL_DFLT_MEM_ALLOC , |
||
GlOnMemFree | cbOnMemFree = GL_DFLT_MEM_FREE |
||
) | [static] |
Request a timer.
ulNumEvents | - number of timer events |
ulPeriodMs | - Timeout period in milliseconds ulPeriodMs must not exceed GL_GLL_NOT_ACTIVE |
cbOnTimer | - Callback when timer expires |
cbOnStart | - callback to be invoked when the request starts |
cbOnMemAlloc | - callback to allocate memory |
cbOnMemFree | - callback to free memory |
Returns | pointer to the newly created request object. |
virtual void GlRequest::SetGsvRate | ( | short | sGsvRate | ) | [pure virtual] |
Set the output rate of $GPGSV messages.
sGsvRate | Number of seconds in between consecutive $GPGSV messages. Default value = 0, i.e. appropriate interval selected by GLL. |