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
3 // found in the LICENSE file.
5 #ifndef CC_TEST_FAKE_OUTPUT_SURFACE_CLIENT_H_
6 #define CC_TEST_FAKE_OUTPUT_SURFACE_CLIENT_H_
8 #include "cc/output/managed_memory_policy.h"
9 #include "cc/output/output_surface_client.h"
15 class FakeOutputSurfaceClient
: public OutputSurfaceClient
{
17 FakeOutputSurfaceClient()
18 : output_surface_(NULL
),
20 deferred_initialize_called_(false),
21 did_lose_output_surface_called_(false),
24 explicit FakeOutputSurfaceClient(OutputSurface
* output_surface
)
25 : output_surface_(output_surface
),
27 deferred_initialize_called_(false),
28 did_lose_output_surface_called_(false),
31 void DeferredInitialize() override
;
32 void ReleaseGL() override
;
33 void CommitVSyncParameters(base::TimeTicks timebase
,
34 base::TimeDelta interval
) override
{}
35 void SetNeedsRedrawRect(const gfx::Rect
& damage_rect
) override
{}
36 void DidSwapBuffers() override
;
37 void DidSwapBuffersComplete() override
{}
38 void ReclaimResources(const CompositorFrameAck
* ack
) override
{}
39 void DidLoseOutputSurface() override
;
40 void SetExternalDrawConstraints(
41 const gfx::Transform
& transform
,
42 const gfx::Rect
& viewport
,
43 const gfx::Rect
& clip
,
44 const gfx::Rect
& viewport_rect_for_tile_priority
,
45 const gfx::Transform
& transform_for_tile_priority
,
46 bool resourceless_software_draw
) override
{}
47 void SetMemoryPolicy(const ManagedMemoryPolicy
& policy
) override
;
48 void SetTreeActivationCallback(const base::Closure
&) override
{}
50 int swap_count() { return swap_count_
; }
52 bool deferred_initialize_called() {
53 return deferred_initialize_called_
;
56 bool did_lose_output_surface_called() {
57 return did_lose_output_surface_called_
;
60 const ManagedMemoryPolicy
& memory_policy() const { return memory_policy_
; }
63 OutputSurface
* output_surface_
;
65 bool deferred_initialize_called_
;
66 bool did_lose_output_surface_called_
;
67 ManagedMemoryPolicy memory_policy_
;
72 #endif // CC_TEST_FAKE_OUTPUT_SURFACE_CLIENT_H_