1cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 2cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// found in the LICENSE file. 4cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 5cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#ifndef ANDROID_WEBVIEW_BROWSER_PARENT_OUTPUT_SURFACE_H_ 6cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#define ANDROID_WEBVIEW_BROWSER_PARENT_OUTPUT_SURFACE_H_ 7cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 8cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#include "cc/output/output_surface.h" 9cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 10cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)namespace android_webview { 11cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 12cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)class ParentOutputSurface : NON_EXPORTED_BASE(public cc::OutputSurface) { 13cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) public: 14cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) explicit ParentOutputSurface( 15cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) scoped_refptr<cc::ContextProvider> context_provider); 16cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) virtual ~ParentOutputSurface(); 17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) // OutputSurface overrides. 19cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) virtual void Reshape(const gfx::Size& size, float scale_factor) OVERRIDE {} 20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) virtual void SwapBuffers(cc::CompositorFrame* frame) OVERRIDE; 21f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) using cc::OutputSurface::SetExternalStencilTest; 22cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 23cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) void SetDrawConstraints(const gfx::Size& surface_size, const gfx::Rect& clip); 24cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 25cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) private: 26cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) DISALLOW_COPY_AND_ASSIGN(ParentOutputSurface); 27cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)}; 28cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 29cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)} // namespace android_webview 30cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 31cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#endif // ANDROID_WEBVIEW_BROWSER_PARENT_OUTPUT_SURFACE_H_ 32