OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_TEST_PIXEL_TEST_OUTPUT_SURFACE_H_ | 5 #ifndef CC_TEST_PIXEL_TEST_OUTPUT_SURFACE_H_ |
6 #define CC_TEST_PIXEL_TEST_OUTPUT_SURFACE_H_ | 6 #define CC_TEST_PIXEL_TEST_OUTPUT_SURFACE_H_ |
7 | 7 |
8 #include "cc/output/output_surface.h" | 8 #include "cc/output/output_surface.h" |
9 | 9 |
10 namespace cc { | 10 namespace cc { |
11 | 11 |
12 class PixelTestOutputSurface : public OutputSurface { | 12 class PixelTestOutputSurface : public OutputSurface { |
13 public: | 13 public: |
14 explicit PixelTestOutputSurface( | 14 explicit PixelTestOutputSurface( |
15 scoped_refptr<ContextProvider> context_provider) | 15 scoped_refptr<ContextProvider> context_provider); |
16 : OutputSurface(context_provider) {} | |
17 explicit PixelTestOutputSurface( | 16 explicit PixelTestOutputSurface( |
18 scoped_ptr<cc::SoftwareOutputDevice> software_device) | 17 scoped_ptr<cc::SoftwareOutputDevice> software_device); |
19 : OutputSurface(software_device.Pass()) {} | |
20 | 18 |
21 virtual void Reshape(gfx::Size size, float scale_factor) OVERRIDE; | 19 virtual void Reshape(gfx::Size size, float scale_factor) OVERRIDE; |
| 20 virtual bool HasExternalStencilTest() const OVERRIDE; |
22 | 21 |
23 void set_surface_expansion_size(gfx::Size surface_expansion_size) { | 22 void set_surface_expansion_size(gfx::Size surface_expansion_size) { |
24 surface_expansion_size_ = surface_expansion_size; | 23 surface_expansion_size_ = surface_expansion_size; |
25 } | 24 } |
26 void set_viewport_offset(gfx::Vector2d viewport_offset) { | 25 void set_viewport_offset(gfx::Vector2d viewport_offset) { |
27 viewport_offset_ = viewport_offset; | 26 viewport_offset_ = viewport_offset; |
28 } | 27 } |
29 void set_device_clip(gfx::Rect device_clip) { | 28 void set_device_clip(gfx::Rect device_clip) { |
30 device_clip_ = device_clip; | 29 device_clip_ = device_clip; |
31 } | 30 } |
| 31 void set_has_external_stencil_test(bool has_test) { |
| 32 external_stencil_test_ = has_test; |
| 33 } |
32 | 34 |
33 private: | 35 private: |
34 gfx::Size surface_expansion_size_; | 36 gfx::Size surface_expansion_size_; |
35 gfx::Vector2d viewport_offset_; | 37 gfx::Vector2d viewport_offset_; |
36 gfx::Rect device_clip_; | 38 gfx::Rect device_clip_; |
| 39 bool external_stencil_test_; |
37 }; | 40 }; |
38 | 41 |
39 } // namespace cc | 42 } // namespace cc |
40 | 43 |
41 #endif // CC_TEST_PIXEL_TEST_OUTPUT_SURFACE_H_ | 44 #endif // CC_TEST_PIXEL_TEST_OUTPUT_SURFACE_H_ |
OLD | NEW |