| // Copyright 2013 The Chromium Authors. All rights reserved. | 
 | // Use of this source code is governed by a BSD-style license that can be | 
 | // found in the LICENSE file. | 
 |  | 
 | #ifndef CC_TEST_PIXEL_TEST_OUTPUT_SURFACE_H_ | 
 | #define CC_TEST_PIXEL_TEST_OUTPUT_SURFACE_H_ | 
 |  | 
 | #include "cc/output/output_surface.h" | 
 |  | 
 | namespace cc { | 
 |  | 
 | class PixelTestOutputSurface : public OutputSurface { | 
 |  public: | 
 |   explicit PixelTestOutputSurface( | 
 |       scoped_refptr<ContextProvider> context_provider, | 
 |       scoped_refptr<ContextProvider> worker_context_provider, | 
 |       bool flipped_output_surface); | 
 |   explicit PixelTestOutputSurface( | 
 |       scoped_refptr<ContextProvider> context_provider, | 
 |       bool flipped_output_surface); | 
 |   explicit PixelTestOutputSurface( | 
 |       scoped_ptr<SoftwareOutputDevice> software_device); | 
 |  | 
 |   void Reshape(const gfx::Size& size, float scale_factor) override; | 
 |   bool HasExternalStencilTest() const override; | 
 |   void SwapBuffers(CompositorFrame* frame) override; | 
 |  | 
 |   void set_surface_expansion_size(const gfx::Size& surface_expansion_size) { | 
 |     surface_expansion_size_ = surface_expansion_size; | 
 |   } | 
 |   void set_has_external_stencil_test(bool has_test) { | 
 |     external_stencil_test_ = has_test; | 
 |   } | 
 |  | 
 |  private: | 
 |   gfx::Size surface_expansion_size_; | 
 |   bool external_stencil_test_; | 
 | }; | 
 |  | 
 | }  // namespace cc | 
 |  | 
 | #endif  // CC_TEST_PIXEL_TEST_OUTPUT_SURFACE_H_ |