SurfaceFlinger: Make LayerHistory virtual class
This is a base CL for refresh rate selection algorithm enhancements
by allowing a different implementation of LayerHistory which will be
controlled by a switch.
Test: watch 24fps video and observe refresh rate at 60Hz
Bug: 147516364
Change-Id: Ifd12f6683bc96cd5aba04a8960b9235729820b49
diff --git a/services/surfaceflinger/Scheduler/Scheduler.h b/services/surfaceflinger/Scheduler/Scheduler.h
index 2cdb757..c6430c3 100644
--- a/services/surfaceflinger/Scheduler/Scheduler.h
+++ b/services/surfaceflinger/Scheduler/Scheduler.h
@@ -193,7 +193,7 @@
std::unique_ptr<EventControlThread> mEventControlThread;
// Used to choose refresh rate if content detection is enabled.
- std::optional<scheduler::LayerHistory> mLayerHistory;
+ std::unique_ptr<scheduler::LayerHistory> mLayerHistory;
// Whether to use idle timer callbacks that support the kernel timer.
const bool mSupportKernelTimer;