Enable large file support
[chromium-blink-merge.git] / cc / resources / software_rasterizer.h
blob6cb751f38b9e6b66dcff495465f8debe595b3a65
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.
5 #ifndef CC_RESOURCES_SOFTWARE_RASTERIZER_H_
6 #define CC_RESOURCES_SOFTWARE_RASTERIZER_H_
8 #include <vector>
10 #include "cc/base/cc_export.h"
11 #include "cc/resources/rasterizer.h"
13 namespace cc {
15 // This class only returns |PrepareTilesMode::RASTERIZE_PRIORITIZED_TILES| in
16 // |GetPrepareTilesMode()| to tell rasterize as scheduled tasks.
17 class CC_EXPORT SoftwareRasterizer : public Rasterizer {
18 public:
19 ~SoftwareRasterizer() override;
21 static scoped_ptr<SoftwareRasterizer> Create();
23 PrepareTilesMode GetPrepareTilesMode() override;
24 void RasterizeTiles(
25 const TileVector& tiles,
26 ResourcePool* resource_pool,
27 ResourceFormat resource_format,
28 const UpdateTileDrawInfoCallback& update_tile_draw_info) override;
30 private:
31 SoftwareRasterizer();
33 DISALLOW_COPY_AND_ASSIGN(SoftwareRasterizer);
36 } // namespace cc
38 #endif // CC_RESOURCES_SOFTWARE_RASTERIZER_H_