summaryrefslogtreecommitdiff
path: root/libs/hwui/FrameBuilder.h
diff options
context:
space:
mode:
author Chris Craik <ccraik@google.com> 2016-01-15 16:15:30 -0800
committer Chris Craik <ccraik@google.com> 2016-02-02 17:10:25 -0800
commit6e068c0182f6f85bccb855a647510724d1c65a13 (patch)
tree8ee074307867bfcdc9c8a708aa6ae03f1d9b7ecc /libs/hwui/FrameBuilder.h
parentd38308e4d0599836f9c5446ba9d6edbc0713c428 (diff)
Early kickoff of shadow tasks
bug:26562703 Change-Id: I7cdf18f2c662380bd31c7ffeefd5c3f569e5c1c6
Diffstat (limited to 'libs/hwui/FrameBuilder.h')
-rw-r--r--libs/hwui/FrameBuilder.h22
1 files changed, 18 insertions, 4 deletions
diff --git a/libs/hwui/FrameBuilder.h b/libs/hwui/FrameBuilder.h
index dea9934e9a1b..5df2e46078b8 100644
--- a/libs/hwui/FrameBuilder.h
+++ b/libs/hwui/FrameBuilder.h
@@ -55,14 +55,24 @@ class Rect;
*/
class FrameBuilder : public CanvasStateClient {
public:
+ struct LightGeometry {
+ Vector3 center;
+ float radius;
+ };
+
+ // TODO: remove
FrameBuilder(const LayerUpdateQueue& layers, const SkRect& clip,
uint32_t viewportWidth, uint32_t viewportHeight,
- const std::vector< sp<RenderNode> >& nodes, const Vector3& lightCenter);
+ const std::vector< sp<RenderNode> >& nodes,
+ const LightGeometry& lightGeometry,
+ Caches* caches)
+ : FrameBuilder(layers, clip, viewportWidth, viewportHeight, nodes, lightGeometry, Rect(), caches) {}
FrameBuilder(const LayerUpdateQueue& layers, const SkRect& clip,
uint32_t viewportWidth, uint32_t viewportHeight,
- const std::vector< sp<RenderNode> >& nodes, const Vector3& lightCenter,
- const Rect &contentDrawBounds);
+ const std::vector< sp<RenderNode> >& nodes,
+ const LightGeometry& lightGeometry,
+ const Rect &contentDrawBounds, Caches* caches);
virtual ~FrameBuilder() {}
@@ -215,7 +225,11 @@ private:
CanvasState mCanvasState;
- // contains ResolvedOps and Batches
+ Caches* mCaches = nullptr;
+
+ float mLightRadius;
+
+ // contains single-frame objects, such as BakedOpStates, LayerBuilders, Batches
LinearAllocator mAllocator;
};