OLD | NEW |
| (Empty) |
1 // Copyright 2015 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/resources/raster_tile_priority_queue.h" | |
6 | |
7 #include "cc/resources/raster_tile_priority_queue_all.h" | |
8 #include "cc/resources/raster_tile_priority_queue_required.h" | |
9 | |
10 namespace cc { | |
11 | |
12 // static | |
13 scoped_ptr<RasterTilePriorityQueue> RasterTilePriorityQueue::Create( | |
14 const std::vector<PictureLayerImpl*>& active_layers, | |
15 const std::vector<PictureLayerImpl*>& pending_layers, | |
16 TreePriority tree_priority, | |
17 Type type) { | |
18 switch (type) { | |
19 case Type::ALL: { | |
20 scoped_ptr<RasterTilePriorityQueueAll> queue( | |
21 new RasterTilePriorityQueueAll); | |
22 queue->Build(active_layers, pending_layers, tree_priority); | |
23 return queue.Pass(); | |
24 } | |
25 case Type::REQUIRED_FOR_ACTIVATION: | |
26 case Type::REQUIRED_FOR_DRAW: { | |
27 scoped_ptr<RasterTilePriorityQueueRequired> queue( | |
28 new RasterTilePriorityQueueRequired); | |
29 queue->Build(active_layers, pending_layers, type); | |
30 return queue.Pass(); | |
31 } | |
32 } | |
33 NOTREACHED(); | |
34 return nullptr; | |
35 } | |
36 | |
37 } // namespace cc | |
OLD | NEW |