Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / cc / test / fake_tile_manager.h
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_TILE_MANAGER_H_
6 #define  CC_TEST_FAKE_TILE_MANAGER_H_
7
8 #include <set>
9 #include <vector>
10
11 #include "cc/resources/tile_manager.h"
12
13 namespace cc {
14
15 class FakeTileManager : public TileManager {
16  public:
17   explicit FakeTileManager(TileManagerClient* client);
18   FakeTileManager(TileManagerClient* client,
19                   ResourceProvider* resource_provider);
20   FakeTileManager(TileManagerClient* client,
21                   ResourceProvider* resource_provider,
22                   bool allow_on_demand_raster);
23   FakeTileManager(TileManagerClient* client,
24                   ResourceProvider* resource_provider,
25                   size_t raster_task_limit_bytes);
26   virtual ~FakeTileManager();
27
28   bool HasBeenAssignedMemory(Tile* tile);
29   void AssignMemoryToTiles(
30       const GlobalStateThatImpactsTilePriority& state);
31
32   void DidFinishRunningTasksForTesting();
33
34   virtual void Release(Tile* tile) OVERRIDE;
35
36   std::vector<Tile*> tiles_for_raster;
37   PrioritizedTileSet all_tiles;
38 };
39
40 }  // namespace cc
41
42 #endif  // CC_TEST_FAKE_TILE_MANAGER_H_