Index: cc/output/ca_layer_overlay.h |
diff --git a/cc/output/ca_layer_overlay.h b/cc/output/ca_layer_overlay.h |
index e64f0d97f4457bf18a6a20882ec9873731e80a94..9ea4a8e4be6c700477ed4a0ec6cbdc54f88e31b1 100644 |
--- a/cc/output/ca_layer_overlay.h |
+++ b/cc/output/ca_layer_overlay.h |
@@ -5,8 +5,10 @@ |
#ifndef CC_OUTPUT_CA_LAYER_OVERLAY_H_ |
#define CC_OUTPUT_CA_LAYER_OVERLAY_H_ |
+#include "base/memory/linked_ptr.h" |
#include "base/memory/ref_counted.h" |
#include "cc/quads/render_pass.h" |
+#include "cc/quads/render_pass_draw_quad.h" |
#include "third_party/skia/include/core/SkColor.h" |
#include "third_party/skia/include/core/SkMatrix44.h" |
#include "ui/gfx/geometry/rect_f.h" |
@@ -23,7 +25,7 @@ class CC_EXPORT CALayerOverlaySharedState |
: public base::RefCounted<CALayerOverlaySharedState> { |
public: |
CALayerOverlaySharedState() {} |
- |
+ CALayerOverlaySharedState& operator=(const CALayerOverlaySharedState& other); |
// Layers in a non-zero sorting context exist in the same 3D space and should |
// intersect. |
unsigned sorting_context_id = 0; |
@@ -66,6 +68,13 @@ class CC_EXPORT CALayerOverlay { |
// If valid, the renderer must copy the contents of the render pass into an |
// overlay resource to use as the contents. |
+ // If |rpdq| is present, then the renderer must use the new copy path. |
+ // GLRenderer draws filter effects and copies the result into an IOSurface. |
+ linked_ptr<RenderPassDrawQuad> rpdq; |
ccameron
2016/08/04 01:46:01
unique_ptr, or raw pointer. I'd prefer a raw ptr i
erikchen
2016/08/05 17:15:06
Done.
|
+ |
+ // If |render_pass_id| and |filter_effects| are present, then the renderer |
+ // must use the old copy path. The filters are serialized and passed to the CA |
+ // compositor, which uses CA to draw the filter effects. |
RenderPassId render_pass_id; |
ui::CARendererLayerParams::FilterEffects filter_effects; |
}; |