summaryrefslogtreecommitdiffstats
path: root/libs/hwui/RenderState.h
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2014-10-31 23:00:44 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-10-31 23:00:44 +0000
commita51fba0bf037844bcb911e69e8af733e6d2cccf6 (patch)
tree1b6027c164bfebbb15618ae82233833a4c807397 /libs/hwui/RenderState.h
parent18163616c80aa30f4b7389838d8658812615080c (diff)
parenta8d83d639a5687b2ab5689db4ea61e2a6cce66f4 (diff)
downloadframeworks_base-a51fba0bf037844bcb911e69e8af733e6d2cccf6.zip
frameworks_base-a51fba0bf037844bcb911e69e8af733e6d2cccf6.tar.gz
frameworks_base-a51fba0bf037844bcb911e69e8af733e6d2cccf6.tar.bz2
am a8d83d63: Merge "Layer changes" into lmp-mr1-dev
* commit 'a8d83d639a5687b2ab5689db4ea61e2a6cce66f4': Layer changes
Diffstat (limited to 'libs/hwui/RenderState.h')
-rw-r--r--libs/hwui/RenderState.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/libs/hwui/RenderState.h b/libs/hwui/RenderState.h
index cbe7cfc..afeef95 100644
--- a/libs/hwui/RenderState.h
+++ b/libs/hwui/RenderState.h
@@ -53,16 +53,10 @@ public:
void debugOverdraw(bool enable, bool clear);
void registerLayer(const Layer* layer) {
- /*
- AutoMutex _lock(mLayerLock);
mActiveLayers.insert(layer);
- */
}
void unregisterLayer(const Layer* layer) {
- /*
- AutoMutex _lock(mLayerLock);
mActiveLayers.erase(layer);
- */
}
void registerCanvasContext(renderthread::CanvasContext* context) {
@@ -73,16 +67,24 @@ public:
mRegisteredContexts.erase(context);
}
+ void requireGLContext();
+
+ // TODO: This system is a little clunky feeling, this could use some
+ // more thinking...
+ void postDecStrong(VirtualLightRefBase* object);
+
private:
friend class renderthread::RenderThread;
friend class Caches;
void interruptForFunctorInvoke();
void resumeFromFunctorInvoke();
+ void assertOnGLThread();
- RenderState();
+ RenderState(renderthread::RenderThread& thread);
~RenderState();
+ renderthread::RenderThread& mRenderThread;
Caches* mCaches;
std::set<const Layer*> mActiveLayers;
std::set<renderthread::CanvasContext*> mRegisteredContexts;
@@ -90,7 +92,8 @@ private:
GLsizei mViewportWidth;
GLsizei mViewportHeight;
GLuint mFramebuffer;
- Mutex mLayerLock;
+
+ pthread_t mThreadId;
};
} /* namespace uirenderer */