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

Side by Side Diff: cc/quads/render_pass.h

Issue 2064833002: Implement DrawQuad StructTraits (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix move constructor Created 4 years, 6 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
« no previous file with comments | « cc/ipc/typemaps.gni ('k') | cc/quads/render_pass.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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_QUADS_RENDER_PASS_H_ 5 #ifndef CC_QUADS_RENDER_PASS_H_
6 #define CC_QUADS_RENDER_PASS_H_ 6 #define CC_QUADS_RENDER_PASS_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <unordered_map> 10 #include <unordered_map>
11 #include <utility> 11 #include <utility>
12 #include <vector> 12 #include <vector>
13 13
14 #include "base/callback.h" 14 #include "base/callback.h"
15 #include "base/hash.h" 15 #include "base/hash.h"
16 #include "base/macros.h" 16 #include "base/macros.h"
17 #include "cc/base/cc_export.h" 17 #include "cc/base/cc_export.h"
18 #include "cc/base/list_container.h" 18 #include "cc/base/list_container.h"
19 #include "cc/quads/draw_quad.h"
20 #include "cc/quads/largest_draw_quad.h"
19 #include "cc/quads/render_pass_id.h" 21 #include "cc/quads/render_pass_id.h"
20 #include "cc/surfaces/surface_id.h" 22 #include "cc/surfaces/surface_id.h"
21 #include "ui/gfx/geometry/rect.h" 23 #include "ui/gfx/geometry/rect.h"
22 #include "ui/gfx/geometry/rect_f.h" 24 #include "ui/gfx/geometry/rect_f.h"
23 #include "ui/gfx/transform.h" 25 #include "ui/gfx/transform.h"
24 26
25 namespace base { 27 namespace base {
26 namespace trace_event { 28 namespace trace_event {
27 class TracedValue; 29 class TracedValue;
28 } 30 }
29 class Value; 31 class Value;
30 } 32 }
31 33
32 namespace cc { 34 namespace cc {
33 35
34 class DrawQuad; 36 class DrawQuad;
35 class CopyOutputRequest; 37 class CopyOutputRequest;
36 class RenderPassDrawQuad; 38 class RenderPassDrawQuad;
37 class SharedQuadState; 39 class SharedQuadState;
38 40
39 // A list of DrawQuad objects, sorted internally in front-to-back order. 41 // A list of DrawQuad objects, sorted internally in front-to-back order.
40 class QuadList : public ListContainer<DrawQuad> { 42 class CC_EXPORT QuadList : public ListContainer<DrawQuad> {
41 public: 43 public:
44 QuadList();
42 explicit QuadList(size_t default_size_to_reserve); 45 explicit QuadList(size_t default_size_to_reserve);
43 46
44 typedef QuadList::ReverseIterator BackToFrontIterator; 47 typedef QuadList::ReverseIterator BackToFrontIterator;
45 typedef QuadList::ConstReverseIterator ConstBackToFrontIterator; 48 typedef QuadList::ConstReverseIterator ConstBackToFrontIterator;
46 49
47 inline BackToFrontIterator BackToFrontBegin() { return rbegin(); } 50 inline BackToFrontIterator BackToFrontBegin() { return rbegin(); }
48 inline BackToFrontIterator BackToFrontEnd() { return rend(); } 51 inline BackToFrontIterator BackToFrontEnd() { return rend(); }
49 inline ConstBackToFrontIterator BackToFrontBegin() const { return rbegin(); } 52 inline ConstBackToFrontIterator BackToFrontBegin() const { return rbegin(); }
50 inline ConstBackToFrontIterator BackToFrontEnd() const { return rend(); } 53 inline ConstBackToFrontIterator BackToFrontEnd() const { return rend(); }
51 }; 54 };
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 DISALLOW_COPY_AND_ASSIGN(RenderPass); 136 DISALLOW_COPY_AND_ASSIGN(RenderPass);
134 }; 137 };
135 138
136 using RenderPassList = std::vector<std::unique_ptr<RenderPass>>; 139 using RenderPassList = std::vector<std::unique_ptr<RenderPass>>;
137 using RenderPassIdHashMap = 140 using RenderPassIdHashMap =
138 std::unordered_map<RenderPassId, RenderPass*, RenderPassIdHash>; 141 std::unordered_map<RenderPassId, RenderPass*, RenderPassIdHash>;
139 142
140 } // namespace cc 143 } // namespace cc
141 144
142 #endif // CC_QUADS_RENDER_PASS_H_ 145 #endif // CC_QUADS_RENDER_PASS_H_
OLDNEW
« no previous file with comments | « cc/ipc/typemaps.gni ('k') | cc/quads/render_pass.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698