SF: Adding tests to Scheduler class.
This is part of go/surface-flinger-scheduler project.
Test: SF tests pass.
Bug: 113612090
Change-Id: I3ef187d5b79f45c9e3962e1b2316f17b4813a2c7
diff --git a/services/surfaceflinger/Scheduler/Scheduler.h b/services/surfaceflinger/Scheduler/Scheduler.h
index caccd6f..8efbff4 100644
--- a/services/surfaceflinger/Scheduler/Scheduler.h
+++ b/services/surfaceflinger/Scheduler/Scheduler.h
@@ -52,7 +52,7 @@
};
Scheduler() = default;
- ~Scheduler() = default;
+ virtual ~Scheduler();
/** Creates an EventThread connection. */
sp<ConnectionHandle> createConnection(
@@ -77,6 +77,12 @@
// Offers ability to modify phase offset in the event thread.
void setPhaseOffset(const sp<ConnectionHandle>& handle, nsecs_t phaseOffset);
+protected:
+ virtual std::unique_ptr<EventThread> makeEventThread(
+ const char* connectionName, DispSync* dispSync, int64_t phaseOffsetNs,
+ impl::EventThread::ResyncWithRateLimitCallback resyncCallback,
+ impl::EventThread::InterceptVSyncsCallback interceptCallback);
+
private:
static std::atomic<int64_t> sNextId;
std::unordered_map<int64_t, std::unique_ptr<Connection>> mConnections;