Use reference or pointer in tuner vts.
Bug: 188709323
Bug: 191825295
Test: VtsHalTvTunerV1_0TargetTest and VtsHalTvTunerV1_1TargetTest.
Change-Id: I93f2c9639033f8cb0f48de035e1c6ba488ea83e0
diff --git a/tv/tuner/1.0/vts/functional/FrontendTests.h b/tv/tuner/1.0/vts/functional/FrontendTests.h
index 33ff603..c789d94 100644
--- a/tv/tuner/1.0/vts/functional/FrontendTests.h
+++ b/tv/tuner/1.0/vts/functional/FrontendTests.h
@@ -103,7 +103,7 @@
void setService(sp<ITuner> tuner) {
mService = tuner;
- mDvrTests.setService(tuner);
+ getDvrTests()->setService(tuner);
getDefaultSoftwareFrontendPlaybackConfig(mDvrConfig);
}
@@ -124,8 +124,8 @@
void tuneTest(FrontendConfig frontendConf);
void scanTest(FrontendConfig frontend, FrontendScanType type);
- void setDvrTests(DvrTests dvrTests) { mDvrTests = dvrTests; }
- void setDemux(sp<IDemux> demux) { mDvrTests.setDemux(demux); }
+ void setDvrTests(DvrTests* dvrTests) { mExternalDvrTests = dvrTests; }
+ void setDemux(sp<IDemux> demux) { getDvrTests()->setDemux(demux); }
void setSoftwareFrontendDvrConfig(DvrConfig conf) { mDvrConfig = conf; }
protected:
@@ -147,11 +147,16 @@
dvrConfig.settings.playback(playbackSettings);
}
+ DvrTests* getDvrTests() {
+ return (mExternalDvrTests != nullptr ? mExternalDvrTests : &mDvrTests);
+ }
+
sp<IFrontend> mFrontend;
FrontendInfo mFrontendInfo;
sp<FrontendCallback> mFrontendCallback;
hidl_vec<FrontendId> mFeIds;
+ DvrTests* mExternalDvrTests = nullptr;
DvrTests mDvrTests;
bool mIsSoftwareFe = false;
DvrConfig mDvrConfig;