summaryrefslogtreecommitdiffstats
path: root/include/private/hwui
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2012-03-27 16:33:45 -0700
committerChris Craik <ccraik@google.com>2012-04-02 15:15:07 -0700
commit8f3b8e32993d190a26c70c839a63d8ce4c3b16d9 (patch)
tree8e49ffa8f5405f22b8bb12be9e5607ec6a0fc00a /include/private/hwui
parente6c966caa3aff3099e6fb00caefa10387f57b9c3 (diff)
downloadframeworks_base-8f3b8e32993d190a26c70c839a63d8ce4c3b16d9.zip
frameworks_base-8f3b8e32993d190a26c70c839a63d8ce4c3b16d9.tar.gz
frameworks_base-8f3b8e32993d190a26c70c839a63d8ce4c3b16d9.tar.bz2
Allow fine-grained control over functors execution
Adds non-drawing execution mode Change-Id: I82f92cf1b9a3b9ff2ca6d7427c4e02b73e04e6bf
Diffstat (limited to 'include/private/hwui')
-rw-r--r--include/private/hwui/DrawGlInfo.h17
1 files changed, 14 insertions, 3 deletions
diff --git a/include/private/hwui/DrawGlInfo.h b/include/private/hwui/DrawGlInfo.h
index abcf41d..8028bf3 100644
--- a/include/private/hwui/DrawGlInfo.h
+++ b/include/private/hwui/DrawGlInfo.h
@@ -44,20 +44,31 @@ struct DrawGlInfo {
float dirtyBottom;
/**
+ * Values used as the "what" parameter of the functor.
+ */
+ enum Mode {
+ // Indicates that the functor is called to perform a draw
+ kModeDraw,
+ // Indicates the the functor is called only to perform
+ // processing and that no draw should be attempted
+ kModeProcess
+ };
+
+ /**
* Values used by OpenGL functors to tell the framework
* what to do next.
*/
enum Status {
// The functor is done
- kStatusDone,
+ kStatusDone = 0x0,
// The functor is requesting a redraw (the clip rect
// used by the redraw is specified by DrawGlInfo.)
// The rest of the UI might redraw too.
- kStatusDraw,
+ kStatusDraw = 0x1,
// The functor needs to be invoked again but will
// not redraw. Only the functor is invoked again
// (unless another functor requests a redraw.)
- kStatusInvoke
+ kStatusInvoke = 0x2
};
}; // struct DrawGlInfo