blob: c1322548492250673b41bf5a4858067be1cefc2c [file] [log] [blame]
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +01001// 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#include "cc/test/fake_tile_manager.h"
6
Torne (Richard Coles)90dce4d2013-05-29 14:40:03 +01007#include "cc/resources/raster_worker_pool.h"
8
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +01009namespace cc {
10
Torne (Richard Coles)868fa2f2013-06-11 10:57:03 +010011namespace {
12
13class FakeRasterWorkerPool : public RasterWorkerPool {
14 public:
15 FakeRasterWorkerPool() : RasterWorkerPool(NULL, 1) {}
16
17 virtual void ScheduleTasks(RasterTask::Queue* queue) OVERRIDE {}
Ben Murdocheb525c52013-07-10 11:40:50 +010018 virtual void OnRasterTasksFinished() OVERRIDE {}
19 virtual void OnRasterTasksRequiredForActivationFinished() OVERRIDE {}
Torne (Richard Coles)868fa2f2013-06-11 10:57:03 +010020};
21
22} // namespace
23
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010024FakeTileManager::FakeTileManager(TileManagerClient* client)
Torne (Richard Coles)90dce4d2013-05-29 14:40:03 +010025 : TileManager(client,
26 NULL,
Torne (Richard Coles)868fa2f2013-06-11 10:57:03 +010027 make_scoped_ptr<RasterWorkerPool>(new FakeRasterWorkerPool),
Torne (Richard Coles)90dce4d2013-05-29 14:40:03 +010028 1,
Torne (Richard Coles)7d4cd472013-06-19 11:58:07 +010029 NULL,
30 GL_RGBA) {}
Torne (Richard Coles)868fa2f2013-06-11 10:57:03 +010031
32FakeTileManager::FakeTileManager(TileManagerClient* client,
33 ResourceProvider* resource_provider)
34 : TileManager(client,
35 resource_provider,
36 make_scoped_ptr<RasterWorkerPool>(new FakeRasterWorkerPool),
37 1,
Torne (Richard Coles)7d4cd472013-06-19 11:58:07 +010038 NULL,
39 resource_provider->best_texture_format()) {}
Ben Murdocheb525c52013-07-10 11:40:50 +010040
Ben Murdoch7dbb3d52013-07-17 14:55:54 +010041FakeTileManager::~FakeTileManager() {}
42
43void FakeTileManager::AssignMemoryToTiles() {
44 tiles_for_raster.clear();
Ben Murdochbb1529c2013-08-08 10:24:53 +010045 all_tiles.Clear();
Ben Murdoch7dbb3d52013-07-17 14:55:54 +010046
Ben Murdochbb1529c2013-08-08 10:24:53 +010047 GetPrioritizedTileSet(&all_tiles);
48 AssignGpuMemoryToTiles(&all_tiles, &tiles_for_raster);
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010049}
Ben Murdocheb525c52013-07-10 11:40:50 +010050
51bool FakeTileManager::HasBeenAssignedMemory(Tile* tile) {
Ben Murdoch7dbb3d52013-07-17 14:55:54 +010052 return std::find(tiles_for_raster.begin(),
53 tiles_for_raster.end(),
54 tile) != tiles_for_raster.end();
Ben Murdocheb525c52013-07-10 11:40:50 +010055}
56
57} // namespace cc