From 5cc9d866d2d7aeb05f05dcaa1296e28a7caeed19 Mon Sep 17 00:00:00 2001 From: Tomasz Wasilczyk Date: Fri, 6 Jan 2017 14:19:11 -0800 Subject: Make metadata field mandatory for program info struct. Test: VTS, manual Change-Id: I532dbb0f3d9cb5194265c67fd1328bce55e43b9d --- broadcastradio/1.0/ITuner.hal | 4 +--- broadcastradio/1.0/default/Tuner.cpp | 19 +++++++------------ broadcastradio/1.0/default/Tuner.h | 3 +-- broadcastradio/1.0/default/Utils.cpp | 8 +++----- broadcastradio/1.0/default/Utils.h | 3 +-- .../vts/functional/broadcastradio_hidl_hal_test.cpp | 10 +++++----- 6 files changed, 18 insertions(+), 29 deletions(-) (limited to 'broadcastradio') diff --git a/broadcastradio/1.0/ITuner.hal b/broadcastradio/1.0/ITuner.hal index 5e2bffe38..ae4b2849a 100644 --- a/broadcastradio/1.0/ITuner.hal +++ b/broadcastradio/1.0/ITuner.hal @@ -103,11 +103,9 @@ interface ITuner { /* * Retrieve current station information. - * @param withMetadata True if Metadata should be returned, false otherwise. * @return result OK if scan successfully started * NOT_INITIALIZED if another error occurs * @return info Current program information. */ - getProgramInformation(bool withMetadata) - generates(Result result, ProgramInfo info); + getProgramInformation() generates(Result result, ProgramInfo info); }; diff --git a/broadcastradio/1.0/default/Tuner.cpp b/broadcastradio/1.0/default/Tuner.cpp index 27b298bc8..de631279c 100644 --- a/broadcastradio/1.0/default/Tuner.cpp +++ b/broadcastradio/1.0/default/Tuner.cpp @@ -46,7 +46,7 @@ void Tuner::onCallback(radio_hal_event_t *halEvent) mCallback->antennaStateChange(halEvent->on); break; case RADIO_EVENT_TUNED: - Utils::convertProgramInfoFromHal(&info, &halEvent->info, true); + Utils::convertProgramInfoFromHal(&info, &halEvent->info); mCallback->tuneComplete(Utils::convertHalResult(halEvent->status), info); break; case RADIO_EVENT_METADATA: { @@ -61,7 +61,7 @@ void Tuner::onCallback(radio_hal_event_t *halEvent) mCallback->trafficAnnouncement(halEvent->on); break; case RADIO_EVENT_AF_SWITCH: - Utils::convertProgramInfoFromHal(&info, &halEvent->info, true); + Utils::convertProgramInfoFromHal(&info, &halEvent->info); mCallback->afSwitch(info); break; case RADIO_EVENT_EA: @@ -164,7 +164,7 @@ Return Tuner::cancel() { return Utils::convertHalResult(rc); } -Return Tuner::getProgramInformation(bool withMetadata, getProgramInformation_cb _hidl_cb) { +Return Tuner::getProgramInformation(getProgramInformation_cb _hidl_cb) { int rc; radio_program_info_t halInfo; ProgramInfo info; @@ -174,18 +174,13 @@ Return Tuner::getProgramInformation(bool withMetadata, getProgramInformati rc = -ENODEV; goto exit; } - if (withMetadata) { - radio_metadata_allocate(&halInfo.metadata, 0, 0); - } else { - halInfo.metadata = NULL; - } + + radio_metadata_allocate(&halInfo.metadata, 0, 0); rc = mHalTuner->get_program_information(mHalTuner, &halInfo); if (rc == 0) { - Utils::convertProgramInfoFromHal(&info, &halInfo, withMetadata); - } - if (withMetadata) { - radio_metadata_deallocate(halInfo.metadata); + Utils::convertProgramInfoFromHal(&info, &halInfo); } + radio_metadata_deallocate(halInfo.metadata); exit: _hidl_cb(Utils::convertHalResult(rc), info); diff --git a/broadcastradio/1.0/default/Tuner.h b/broadcastradio/1.0/default/Tuner.h index a621d974f..bfdd4f493 100644 --- a/broadcastradio/1.0/default/Tuner.h +++ b/broadcastradio/1.0/default/Tuner.h @@ -40,8 +40,7 @@ struct Tuner : public ITuner { Return step(Direction direction, bool skipSubChannel) override; Return tune(uint32_t channel, uint32_t subChannel) override; Return cancel() override; - Return getProgramInformation(bool withMetadata, - getProgramInformation_cb _hidl_cb) override; + Return getProgramInformation(getProgramInformation_cb _hidl_cb) override; static void callback(radio_hal_event_t *halEvent, void *cookie); void onCallback(radio_hal_event_t *halEvent); diff --git a/broadcastradio/1.0/default/Utils.cpp b/broadcastradio/1.0/default/Utils.cpp index c2c2ff33a..aefeeb1f9 100644 --- a/broadcastradio/1.0/default/Utils.cpp +++ b/broadcastradio/1.0/default/Utils.cpp @@ -222,8 +222,7 @@ void Utils::convertBandConfigToHal( //static void Utils::convertProgramInfoFromHal(ProgramInfo *info, - radio_program_info_t *halInfo, - bool withMetadata) + radio_program_info_t *halInfo) { info->channel = halInfo->channel; info->subChannel = halInfo->sub_channel; @@ -231,9 +230,7 @@ void Utils::convertProgramInfoFromHal(ProgramInfo *info, info->stereo = halInfo->stereo; info->digital = halInfo->digital; info->signalStrength = halInfo->signal_strength; - if (withMetadata && halInfo->metadata != NULL) { - convertMetaDataFromHal(info->metadata, halInfo->metadata); - } + convertMetaDataFromHal(info->metadata, halInfo->metadata); } //static @@ -241,6 +238,7 @@ int Utils::convertMetaDataFromHal(hidl_vec& metadata, radio_metadata_t *halMetadata) { if (halMetadata == NULL) { + ALOGE("Invalid argument: halMetadata is NULL"); return 0; } diff --git a/broadcastradio/1.0/default/Utils.h b/broadcastradio/1.0/default/Utils.h index 25eb6eeba..4ef22a51f 100644 --- a/broadcastradio/1.0/default/Utils.h +++ b/broadcastradio/1.0/default/Utils.h @@ -36,8 +36,7 @@ public: static void convertBandConfigToHal(radio_hal_band_config_t *halConfig, const BandConfig *config); static void convertProgramInfoFromHal(ProgramInfo *info, - radio_program_info_t *halInfo, - bool withMetadata); + radio_program_info_t *halInfo); static int convertMetaDataFromHal(hidl_vec& metadata, radio_metadata_t *halMetadata); private: diff --git a/broadcastradio/1.0/vts/functional/broadcastradio_hidl_hal_test.cpp b/broadcastradio/1.0/vts/functional/broadcastradio_hidl_hal_test.cpp index 12bbb6b8c..bcbfbb7e2 100644 --- a/broadcastradio/1.0/vts/functional/broadcastradio_hidl_hal_test.cpp +++ b/broadcastradio/1.0/vts/functional/broadcastradio_hidl_hal_test.cpp @@ -434,11 +434,11 @@ TEST_F(BroadcastRadioHidlTest, TuneAndGetProgramInformationAndCancel) { ProgramInfo halInfo; Result halResult = Result::NOT_INITIALIZED; Return hidlReturn = mTuner->getProgramInformation( - false, [&](Result result, const ProgramInfo& info) { - halResult = result; - if (result == Result::OK) { - halInfo = info; - } + [&](Result result, const ProgramInfo& info) { + halResult = result; + if (result == Result::OK) { + halInfo = info; + } }); EXPECT_TRUE(hidlReturn.isOk()); EXPECT_EQ(Result::OK, halResult); -- cgit v1.2.3