Merge "Fix failure in CTS testcase GnssStatusTest"
This commit is contained in:
commit
558a20a01f
1 changed files with 39 additions and 26 deletions
|
@ -1978,27 +1978,41 @@ GnssAdapter::reportSvEvent(const GnssSvNotification& svNotify,
|
||||||
void
|
void
|
||||||
GnssAdapter::reportSv(GnssSvNotification& svNotify)
|
GnssAdapter::reportSv(GnssSvNotification& svNotify)
|
||||||
{
|
{
|
||||||
if (mGnssSvIdUsedInPosAvail) {
|
|
||||||
int numSv = svNotify.count;
|
int numSv = svNotify.count;
|
||||||
int16_t gnssSvId = 0;
|
int16_t gnssSvId = 0;
|
||||||
uint64_t svUsedIdMask = 0;
|
uint64_t svUsedIdMask = 0;
|
||||||
for (int i=0; i < numSv; i++) {
|
for (int i=0; i < numSv; i++) {
|
||||||
|
svUsedIdMask = 0;
|
||||||
gnssSvId = svNotify.gnssSvs[i].svId;
|
gnssSvId = svNotify.gnssSvs[i].svId;
|
||||||
switch (svNotify.gnssSvs[i].type) {
|
switch (svNotify.gnssSvs[i].type) {
|
||||||
case GNSS_SV_TYPE_GPS:
|
case GNSS_SV_TYPE_GPS:
|
||||||
|
if (mGnssSvIdUsedInPosAvail) {
|
||||||
svUsedIdMask = mGnssSvIdUsedInPosition.gps_sv_used_ids_mask;
|
svUsedIdMask = mGnssSvIdUsedInPosition.gps_sv_used_ids_mask;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case GNSS_SV_TYPE_GLONASS:
|
case GNSS_SV_TYPE_GLONASS:
|
||||||
|
if (mGnssSvIdUsedInPosAvail) {
|
||||||
svUsedIdMask = mGnssSvIdUsedInPosition.glo_sv_used_ids_mask;
|
svUsedIdMask = mGnssSvIdUsedInPosition.glo_sv_used_ids_mask;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case GNSS_SV_TYPE_BEIDOU:
|
case GNSS_SV_TYPE_BEIDOU:
|
||||||
|
if (mGnssSvIdUsedInPosAvail) {
|
||||||
svUsedIdMask = mGnssSvIdUsedInPosition.bds_sv_used_ids_mask;
|
svUsedIdMask = mGnssSvIdUsedInPosition.bds_sv_used_ids_mask;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case GNSS_SV_TYPE_GALILEO:
|
case GNSS_SV_TYPE_GALILEO:
|
||||||
|
if (mGnssSvIdUsedInPosAvail) {
|
||||||
svUsedIdMask = mGnssSvIdUsedInPosition.gal_sv_used_ids_mask;
|
svUsedIdMask = mGnssSvIdUsedInPosition.gal_sv_used_ids_mask;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case GNSS_SV_TYPE_QZSS:
|
case GNSS_SV_TYPE_QZSS:
|
||||||
|
if (mGnssSvIdUsedInPosAvail) {
|
||||||
svUsedIdMask = mGnssSvIdUsedInPosition.qzss_sv_used_ids_mask;
|
svUsedIdMask = mGnssSvIdUsedInPosition.qzss_sv_used_ids_mask;
|
||||||
|
}
|
||||||
|
// QZSS SV id's need to reported as it is to framework, since
|
||||||
|
// framework expects it as it is. See GnssStatus.java.
|
||||||
|
// SV id passed to here by LocApi is 1-based.
|
||||||
|
svNotify.gnssSvs[i].svId += (QZSS_SV_PRN_MIN - 1);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
svUsedIdMask = 0;
|
svUsedIdMask = 0;
|
||||||
|
@ -2011,7 +2025,6 @@ GnssAdapter::reportSv(GnssSvNotification& svNotify)
|
||||||
svNotify.gnssSvs[i].gnssSvOptionsMask |= GNSS_SV_OPTIONS_USED_IN_FIX_BIT;
|
svNotify.gnssSvs[i].gnssSvOptionsMask |= GNSS_SV_OPTIONS_USED_IN_FIX_BIT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
for (auto it=mClientData.begin(); it != mClientData.end(); ++it) {
|
for (auto it=mClientData.begin(); it != mClientData.end(); ++it) {
|
||||||
if (nullptr != it->second.gnssSvCb) {
|
if (nullptr != it->second.gnssSvCb) {
|
||||||
|
|
Loading…
Reference in a new issue