Skip frames with no damage

Bug: 20464038
Change-Id: Iae3aa9baf1d03c3aa443a39373e2bbd4a3910fad
diff --git a/libs/hwui/FrameInfo.h b/libs/hwui/FrameInfo.h
index 65daf03..c8189b8 100644
--- a/libs/hwui/FrameInfo.h
+++ b/libs/hwui/FrameInfo.h
@@ -53,6 +53,7 @@
     kWindowLayoutChanged = 1 << 0,
     kRTAnimation = 1 << 1,
     kSurfaceCanvas = 1 << 2,
+    kSkippedFrame = 1 << 3,
 };
 MAKE_FLAGS_ENUM(FrameInfoFlags)
 
@@ -101,6 +102,10 @@
         set(FrameInfoIndex::kFrameCompleted) = systemTime(CLOCK_MONOTONIC);
     }
 
+    void addFlag(FrameInfoFlags flag) {
+        set(FrameInfoIndex::kFlags) |= static_cast<uint64_t>(flag);
+    }
+
     int64_t operator[](FrameInfoIndex index) const {
         if (index == FrameInfoIndex::kNumIndexes) return 0;
         return mFrameInfo[static_cast<int>(index)];