15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef CC_TEST_FAKE_PROXY_H_ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define CC_TEST_FAKE_PROXY_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 8eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "base/single_thread_task_runner.h" 92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "cc/trees/layer_tree_host.h" 102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "cc/trees/proxy.h" 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace cc { 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class FakeProxy : public Proxy { 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) public: 16eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch FakeProxy() : Proxy(NULL), layer_tree_host_(NULL) {} 17eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch explicit FakeProxy( 18eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner) 19eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch : Proxy(impl_task_runner), 20c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) layer_tree_host_(NULL) {} 21c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 22c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) void SetLayerTreeHost(LayerTreeHost* host); 232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual void FinishAllRendering() OVERRIDE {} 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual bool IsStarted() const OVERRIDE; 26b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) virtual void SetLayerTreeHostClientReady() OVERRIDE {} 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual void SetVisible(bool visible) OVERRIDE {} 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual const RendererCapabilities& GetRendererCapabilities() const OVERRIDE; 292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual void SetNeedsAnimate() OVERRIDE {} 30558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch virtual void SetNeedsUpdateLayers() OVERRIDE {} 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual void SetNeedsCommit() OVERRIDE {} 325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) virtual void SetNeedsRedraw(const gfx::Rect& damage_rect) OVERRIDE {} 33424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) virtual void SetNextCommitWaitsForActivation() OVERRIDE {} 34a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) virtual void NotifyInputThrottledUntilCommit() OVERRIDE {} 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual void SetDeferCommits(bool defer_commits) OVERRIDE {} 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual void MainThreadHasStoppedFlinging() OVERRIDE {} 371e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) virtual bool BeginMainFrameRequested() const OVERRIDE; 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual bool CommitRequested() const OVERRIDE; 395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) virtual void Start() OVERRIDE {} 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual void Stop() OVERRIDE {} 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual void ForceSerializeOnSwapBuffers() OVERRIDE {} 422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual size_t MaxPartialTextureUpdates() const OVERRIDE; 43c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch virtual void SetDebugState(const LayerTreeDebugState& debug_state) OVERRIDE {} 442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual bool CommitPendingForTesting() OVERRIDE; 452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual scoped_ptr<base::Value> AsValue() const OVERRIDE; 462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) virtual RendererCapabilities& GetRendererCapabilities(); 482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) void SetMaxPartialTextureUpdates(size_t max); 492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) private: 512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) RendererCapabilities capabilities_; 522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) size_t max_partial_texture_updates_; 53c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) LayerTreeHost* layer_tree_host_; 545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace cc 575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // CC_TEST_FAKE_PROXY_H_ 59