SF: VSyncReactor add hwvsync ingestion functions
Adds 3 more functions from the DispSync interface to VSyncReactor,
{begin,end}Resync (not needed), and addResyncSample.
Bug: 140303479
Test: 2 new units
Change-Id: I8b1cb6991f89ce7910a144c350f12ceda82ca129
diff --git a/services/surfaceflinger/Scheduler/VSyncReactor.h b/services/surfaceflinger/Scheduler/VSyncReactor.h
index 73a09f1..786ee98 100644
--- a/services/surfaceflinger/Scheduler/VSyncReactor.h
+++ b/services/surfaceflinger/Scheduler/VSyncReactor.h
@@ -43,6 +43,11 @@
void setPeriod(nsecs_t period);
nsecs_t getPeriod();
+ // TODO: (b/145626181) remove begin,endResync functions from DispSync i/f when possible.
+ void beginResync();
+ bool addResyncSample(nsecs_t timestamp, bool* periodFlushed);
+ void endResync();
+
private:
std::unique_ptr<Clock> const mClock;
std::unique_ptr<VSyncDispatch> const mDispatch;
@@ -52,6 +57,7 @@
std::mutex mMutex;
bool mIgnorePresentFences GUARDED_BY(mMutex) = false;
std::vector<std::shared_ptr<FenceTime>> mUnfiredFences GUARDED_BY(mMutex);
+ bool mPeriodChangeInProgress GUARDED_BY(mMutex) = false;
};
} // namespace android::scheduler