| #define LOG_TAG "GnssConfiguration" |
| |
| #include "GnssConfiguration.h" |
| #include <log/log.h> |
| |
| namespace android { |
| namespace hardware { |
| namespace gnss { |
| namespace V1_1 { |
| namespace implementation { |
| |
| // Methods from ::android::hardware::gnss::V1_0::IGnssConfiguration follow. |
| Return<bool> GnssConfiguration::setSuplEs(bool) { |
| // TODO implement |
| return bool{}; |
| } |
| |
| Return<bool> GnssConfiguration::setSuplVersion(uint32_t) { |
| // TODO implement |
| return bool{}; |
| } |
| |
| Return<bool> GnssConfiguration::setSuplMode(hidl_bitfield<SuplMode>) { |
| // TODO implement |
| return bool{}; |
| } |
| |
| Return<bool> GnssConfiguration::setGpsLock(hidl_bitfield<GpsLock>) { |
| // TODO implement |
| return bool{}; |
| } |
| |
| Return<bool> GnssConfiguration::setLppProfile(hidl_bitfield<LppProfile>) { |
| // TODO implement |
| return bool{}; |
| } |
| |
| Return<bool> GnssConfiguration::setGlonassPositioningProtocol(hidl_bitfield<GlonassPosProtocol>) { |
| // TODO implement |
| return bool{}; |
| } |
| |
| Return<bool> GnssConfiguration::setEmergencySuplPdn(bool) { |
| // TODO implement |
| return bool{}; |
| } |
| |
| // Methods from ::android::hardware::gnss::V1_1::IGnssConfiguration follow. |
| Return<bool> GnssConfiguration::setBlacklist(const hidl_vec<BlacklistedSource>& sourceList) { |
| std::unique_lock<std::recursive_mutex> lock(mMutex); |
| mBlacklistedConstellationSet.clear(); |
| mBlacklistedSourceSet.clear(); |
| for (auto source : sourceList) { |
| if (source.svid == 0) { |
| // Wildcard blacklist, i.e., blacklist entire constellation. |
| mBlacklistedConstellationSet.insert(source.constellation); |
| } else { |
| mBlacklistedSourceSet.insert(source); |
| } |
| } |
| return true; |
| } |
| |
| Return<bool> GnssConfiguration::isBlacklisted(const GnssSvInfo& gnssSvInfo) const { |
| std::unique_lock<std::recursive_mutex> lock(mMutex); |
| if (mBlacklistedConstellationSet.find(gnssSvInfo.constellation) != |
| mBlacklistedConstellationSet.end()) { |
| return true; |
| } |
| BlacklistedSource source = {.constellation = gnssSvInfo.constellation, .svid = gnssSvInfo.svid}; |
| return (mBlacklistedSourceSet.find(source) != mBlacklistedSourceSet.end()); |
| } |
| |
| std::recursive_mutex& GnssConfiguration::getMutex() const { |
| return mMutex; |
| } |
| |
| // Methods from ::android::hidl::base::V1_0::IBase follow. |
| |
| } // namespace implementation |
| } // namespace V1_1 |
| } // namespace gnss |
| } // namespace hardware |
| } // namespace android |