diff options
author | John Reck <jreck@google.com> | 2018-03-16 17:27:17 -0700 |
---|---|---|
committer | John Reck <jreck@google.com> | 2018-03-16 17:34:02 -0700 |
commit | 564284759f014c141cb8b8403b036833f50f49ef (patch) | |
tree | 3bef3a4db7c34d3b62d54f746c5da6854b2c35a0 /libs/hwui/renderthread/RenderThread.h | |
parent | 3912a7f54466f258c5b2597eebdb54cfe0f8281c (diff) |
Don't use IPC in isolateProcess
Fixes: 74395652
Test: hwuiunit passes in 'shell stop' state (pseudo-isolated process),
manually checked non-isolated processes still have working vsync
via systrace of RT animations demo
Change-Id: I630ea011dc7eb2efa265b25673d3304b3b2510d3
Diffstat (limited to 'libs/hwui/renderthread/RenderThread.h')
-rw-r--r-- | libs/hwui/renderthread/RenderThread.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/libs/hwui/renderthread/RenderThread.h b/libs/hwui/renderthread/RenderThread.h index 3aa548773b3b..689f518bad1b 100644 --- a/libs/hwui/renderthread/RenderThread.h +++ b/libs/hwui/renderthread/RenderThread.h @@ -39,7 +39,6 @@ namespace android { class Bitmap; -class DisplayEventReceiver; namespace uirenderer { @@ -63,6 +62,14 @@ protected: ~IFrameCallback() {} }; +struct VsyncSource { + virtual void requestNextVsync() = 0; + virtual nsecs_t latestVsyncEvent() = 0; + virtual ~VsyncSource() {} +}; + +class DummyVsyncSource; + class RenderThread : private ThreadBase { PREVENT_COPY_AND_ASSIGN(RenderThread); @@ -110,6 +117,7 @@ protected: private: friend class DispatchFrameCallbacks; friend class RenderProxy; + friend class DummyVsyncSource; friend class android::uirenderer::TestUtils; RenderThread(); @@ -127,7 +135,7 @@ private: DisplayInfo mDisplayInfo; - DisplayEventReceiver* mDisplayEventReceiver; + VsyncSource* mVsyncSource; bool mVsyncRequested; std::set<IFrameCallback*> mFrameCallbacks; // We defer the actual registration of these callbacks until |