OLD | NEW |
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_OUTPUT_OUTPUT_SURFACE_H_ | 5 #ifndef CC_OUTPUT_OUTPUT_SURFACE_H_ |
6 #define CC_OUTPUT_OUTPUT_SURFACE_H_ | 6 #define CC_OUTPUT_OUTPUT_SURFACE_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 bool draw_and_swap_full_viewport_every_frame; | 66 bool draw_and_swap_full_viewport_every_frame; |
67 // This doesn't handle the <webview> case, but once BeginFrame is | 67 // This doesn't handle the <webview> case, but once BeginFrame is |
68 // supported natively, we shouldn't need adjust_deadline_for_parent. | 68 // supported natively, we shouldn't need adjust_deadline_for_parent. |
69 bool adjust_deadline_for_parent; | 69 bool adjust_deadline_for_parent; |
70 }; | 70 }; |
71 | 71 |
72 const Capabilities& capabilities() const { | 72 const Capabilities& capabilities() const { |
73 return capabilities_; | 73 return capabilities_; |
74 } | 74 } |
75 | 75 |
| 76 virtual bool HasExternalStencilTest() const; |
| 77 |
76 // Obtain the 3d context or the software device associated with this output | 78 // Obtain the 3d context or the software device associated with this output |
77 // surface. Either of these may return a null pointer, but not both. | 79 // surface. Either of these may return a null pointer, but not both. |
78 // In the event of a lost context, the entire output surface should be | 80 // In the event of a lost context, the entire output surface should be |
79 // recreated. | 81 // recreated. |
80 scoped_refptr<ContextProvider> context_provider() const { | 82 scoped_refptr<ContextProvider> context_provider() const { |
81 return context_provider_.get(); | 83 return context_provider_.get(); |
82 } | 84 } |
83 SoftwareOutputDevice* software_device() const { | 85 SoftwareOutputDevice* software_device() const { |
84 return software_device_.get(); | 86 return software_device_.get(); |
85 } | 87 } |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 bool discard_backbuffer_when_not_visible); | 189 bool discard_backbuffer_when_not_visible); |
188 | 190 |
189 // This stores a BeginFrame that we couldn't process immediately, but might | 191 // This stores a BeginFrame that we couldn't process immediately, but might |
190 // process retroactively in the near future. | 192 // process retroactively in the near future. |
191 BeginFrameArgs skipped_begin_frame_args_; | 193 BeginFrameArgs skipped_begin_frame_args_; |
192 | 194 |
193 // check_for_retroactive_begin_frame_pending_ is used to avoid posting | 195 // check_for_retroactive_begin_frame_pending_ is used to avoid posting |
194 // redundant checks for a retroactive BeginFrame. | 196 // redundant checks for a retroactive BeginFrame. |
195 bool check_for_retroactive_begin_frame_pending_; | 197 bool check_for_retroactive_begin_frame_pending_; |
196 | 198 |
| 199 bool external_stencil_test_enabled_; |
| 200 |
197 DISALLOW_COPY_AND_ASSIGN(OutputSurface); | 201 DISALLOW_COPY_AND_ASSIGN(OutputSurface); |
198 }; | 202 }; |
199 | 203 |
200 } // namespace cc | 204 } // namespace cc |
201 | 205 |
202 #endif // CC_OUTPUT_OUTPUT_SURFACE_H_ | 206 #endif // CC_OUTPUT_OUTPUT_SURFACE_H_ |
OLD | NEW |