Loading libs/hwui/renderthread/TimeLord.cpp +12 −6 Original line number Diff line number Diff line Loading @@ -15,22 +15,28 @@ */ #include "TimeLord.h" #include <limits> #include "FrameInfo.h" namespace android { namespace uirenderer { namespace renderthread { TimeLord::TimeLord() : mFrameIntervalNanos(milliseconds_to_nanoseconds(16)), mFrameTimeNanos(0), mFrameIntendedTimeNanos(0), mFrameVsyncId(-1), mFrameDeadline(std::numeric_limits<int64_t>::max()){} TimeLord::TimeLord() : mFrameIntervalNanos(milliseconds_to_nanoseconds(16)) , mFrameTimeNanos(0) , mFrameIntendedTimeNanos(0) , mFrameVsyncId(UiFrameInfoBuilder::INVALID_VSYNC_ID) , mFrameDeadline(std::numeric_limits<int64_t>::max()) {} bool TimeLord::vsyncReceived(nsecs_t vsync, nsecs_t intendedVsync, int64_t vsyncId, int64_t frameDeadline, nsecs_t frameInterval) { if (intendedVsync > mFrameIntendedTimeNanos) { mFrameIntendedTimeNanos = intendedVsync; mFrameVsyncId = vsyncId; // The intendedVsync might have been advanced to account for scheduling // jitter. Since we don't have a way to advance the vsync id we just // reset it. mFrameVsyncId = (vsyncId > mFrameVsyncId) ? vsyncId : UiFrameInfoBuilder::INVALID_VSYNC_ID; mFrameDeadline = frameDeadline; if (frameInterval > 0) { mFrameIntervalNanos = frameInterval; Loading Loading
libs/hwui/renderthread/TimeLord.cpp +12 −6 Original line number Diff line number Diff line Loading @@ -15,22 +15,28 @@ */ #include "TimeLord.h" #include <limits> #include "FrameInfo.h" namespace android { namespace uirenderer { namespace renderthread { TimeLord::TimeLord() : mFrameIntervalNanos(milliseconds_to_nanoseconds(16)), mFrameTimeNanos(0), mFrameIntendedTimeNanos(0), mFrameVsyncId(-1), mFrameDeadline(std::numeric_limits<int64_t>::max()){} TimeLord::TimeLord() : mFrameIntervalNanos(milliseconds_to_nanoseconds(16)) , mFrameTimeNanos(0) , mFrameIntendedTimeNanos(0) , mFrameVsyncId(UiFrameInfoBuilder::INVALID_VSYNC_ID) , mFrameDeadline(std::numeric_limits<int64_t>::max()) {} bool TimeLord::vsyncReceived(nsecs_t vsync, nsecs_t intendedVsync, int64_t vsyncId, int64_t frameDeadline, nsecs_t frameInterval) { if (intendedVsync > mFrameIntendedTimeNanos) { mFrameIntendedTimeNanos = intendedVsync; mFrameVsyncId = vsyncId; // The intendedVsync might have been advanced to account for scheduling // jitter. Since we don't have a way to advance the vsync id we just // reset it. mFrameVsyncId = (vsyncId > mFrameVsyncId) ? vsyncId : UiFrameInfoBuilder::INVALID_VSYNC_ID; mFrameDeadline = frameDeadline; if (frameInterval > 0) { mFrameIntervalNanos = frameInterval; Loading