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
3// found in the LICENSE file.
4
5#ifndef CC_TEST_FAKE_PROXY_H_
6#define CC_TEST_FAKE_PROXY_H_
7
8#include "base/single_thread_task_runner.h"
9#include "cc/trees/layer_tree_host.h"
10#include "cc/trees/proxy.h"
11
12namespace cc {
13
14class FakeProxy : public Proxy {
15 public:
16  FakeProxy() : Proxy(NULL, NULL), layer_tree_host_(NULL) {}
17  explicit FakeProxy(
18      scoped_refptr<base::SingleThreadTaskRunner> main_task_runner,
19      scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner)
20      : Proxy(main_task_runner, impl_task_runner), layer_tree_host_(NULL) {}
21
22  void SetLayerTreeHost(LayerTreeHost* host);
23
24  virtual void FinishAllRendering() OVERRIDE {}
25  virtual bool IsStarted() const OVERRIDE;
26  virtual void SetOutputSurface(scoped_ptr<OutputSurface>) OVERRIDE {}
27  virtual void SetLayerTreeHostClientReady() OVERRIDE {}
28  virtual void SetVisible(bool visible) OVERRIDE {}
29  virtual const RendererCapabilities& GetRendererCapabilities() const OVERRIDE;
30  virtual void SetNeedsAnimate() OVERRIDE {}
31  virtual void SetNeedsUpdateLayers() OVERRIDE {}
32  virtual void SetNeedsCommit() OVERRIDE {}
33  virtual void SetNeedsRedraw(const gfx::Rect& damage_rect) OVERRIDE {}
34  virtual void SetNextCommitWaitsForActivation() OVERRIDE {}
35  virtual void NotifyInputThrottledUntilCommit() OVERRIDE {}
36  virtual void SetDeferCommits(bool defer_commits) OVERRIDE {}
37  virtual void MainThreadHasStoppedFlinging() OVERRIDE {}
38  virtual bool BeginMainFrameRequested() const OVERRIDE;
39  virtual bool CommitRequested() const OVERRIDE;
40  virtual void Start() OVERRIDE {}
41  virtual void Stop() OVERRIDE {}
42  virtual void ForceSerializeOnSwapBuffers() OVERRIDE {}
43  virtual size_t MaxPartialTextureUpdates() const OVERRIDE;
44  virtual bool SupportsImplScrolling() const OVERRIDE;
45  virtual void SetDebugState(const LayerTreeDebugState& debug_state) OVERRIDE {}
46  virtual bool MainFrameWillHappenForTesting() OVERRIDE;
47  virtual void AsValueInto(base::debug::TracedValue* state) const OVERRIDE;
48
49  virtual RendererCapabilities& GetRendererCapabilities();
50  void SetMaxPartialTextureUpdates(size_t max);
51
52 private:
53  RendererCapabilities capabilities_;
54  size_t max_partial_texture_updates_;
55  LayerTreeHost* layer_tree_host_;
56};
57
58}  // namespace cc
59
60#endif  // CC_TEST_FAKE_PROXY_H_
61