Implement timeline in libandroid ASurfaceControl.
As part of choreographer project.
Bug: 198192003
Test: atest ASurfaceControlTest
Change-Id: I36fdeae1d2bc07fdbd487fc0a40324fe48baca09
diff --git a/native/android/surface_control.cpp b/native/android/surface_control.cpp
index ceba4d6..d3b7744 100644
--- a/native/android/surface_control.cpp
+++ b/native/android/surface_control.cpp
@@ -659,3 +659,11 @@
transaction->addTransactionCommittedCallback(callback, context);
}
+
+void ASurfaceTransaction_setFrameTimeline(ASurfaceTransaction* aSurfaceTransaction,
+ int64_t vsyncId) {
+ CHECK_NOT_NULL(aSurfaceTransaction);
+ // TODO(b/210043506): Get start time from platform.
+ ASurfaceTransaction_to_Transaction(aSurfaceTransaction)
+ ->setFrameTimelineInfo({.vsyncId = vsyncId, .startTimeNanos = 0});
+}