Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1072)

Side by Side Diff: cc/layers/delegated_renderer_layer_impl.h

Issue 23891003: cc: Be robust against invalid RenderPassDrawQuads. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CC_LAYERS_DELEGATED_RENDERER_LAYER_IMPL_H_ 5 #ifndef CC_LAYERS_DELEGATED_RENDERER_LAYER_IMPL_H_
6 #define CC_LAYERS_DELEGATED_RENDERER_LAYER_IMPL_H_ 6 #define CC_LAYERS_DELEGATED_RENDERER_LAYER_IMPL_H_
7 7
8 #include "base/containers/hash_tables.h" 8 #include "base/containers/hash_tables.h"
9 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
10 #include "cc/base/cc_export.h" 10 #include "cc/base/cc_export.h"
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 void CreateChildIdIfNeeded(); 64 void CreateChildIdIfNeeded();
65 void ClearChildId(); 65 void ClearChildId();
66 66
67 void AppendRainbowDebugBorder(QuadSink* quad_sink, 67 void AppendRainbowDebugBorder(QuadSink* quad_sink,
68 AppendQuadsData* append_quads_data); 68 AppendQuadsData* append_quads_data);
69 69
70 void SetRenderPasses( 70 void SetRenderPasses(
71 ScopedPtrVector<RenderPass>* render_passes_in_draw_order); 71 ScopedPtrVector<RenderPass>* render_passes_in_draw_order);
72 void ClearRenderPasses(); 72 void ClearRenderPasses();
73 73
74 RenderPass::Id ConvertDelegatedRenderPassId( 74 bool ConvertDelegatedRenderPassId(
75 RenderPass::Id delegated_render_pass_id) const; 75 RenderPass::Id delegated_render_pass_id,
76 RenderPass::Id* output_render_pass_id) const;
76 77
77 gfx::Transform DelegatedFrameToLayerSpaceTransform(gfx::Size frame_size) 78 gfx::Transform DelegatedFrameToLayerSpaceTransform(gfx::Size frame_size)
78 const; 79 const;
79 80
80 void AppendRenderPassQuads( 81 void AppendRenderPassQuads(
81 QuadSink* quad_sink, 82 QuadSink* quad_sink,
82 AppendQuadsData* append_quads_data, 83 AppendQuadsData* append_quads_data,
83 const RenderPass* delegated_render_pass, 84 const RenderPass* delegated_render_pass,
84 gfx::Size frame_size) const; 85 gfx::Size frame_size) const;
85 86
86 // LayerImpl overrides. 87 // LayerImpl overrides.
87 virtual const char* LayerTypeAsString() const OVERRIDE; 88 virtual const char* LayerTypeAsString() const OVERRIDE;
88 89
89 bool have_render_passes_to_push_; 90 bool have_render_passes_to_push_;
90 ScopedPtrVector<RenderPass> render_passes_in_draw_order_; 91 ScopedPtrVector<RenderPass> render_passes_in_draw_order_;
91 base::hash_map<RenderPass::Id, int> render_passes_index_by_id_; 92 base::hash_map<RenderPass::Id, int> render_passes_index_by_id_;
92 ResourceProvider::ResourceIdSet resources_; 93 ResourceProvider::ResourceIdSet resources_;
93 94
94 gfx::Size display_size_; 95 gfx::Size display_size_;
95 int child_id_; 96 int child_id_;
96 bool own_child_id_; 97 bool own_child_id_;
97 98
98 DISALLOW_COPY_AND_ASSIGN(DelegatedRendererLayerImpl); 99 DISALLOW_COPY_AND_ASSIGN(DelegatedRendererLayerImpl);
99 }; 100 };
100 101
101 } // namespace cc 102 } // namespace cc
102 103
103 #endif // CC_LAYERS_DELEGATED_RENDERER_LAYER_IMPL_H_ 104 #endif // CC_LAYERS_DELEGATED_RENDERER_LAYER_IMPL_H_
OLDNEW
« no previous file with comments | « no previous file | cc/layers/delegated_renderer_layer_impl.cc » ('j') | cc/layers/delegated_renderer_layer_impl.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698