GPU workaround to simulate Out of Memory errors with large textures
[chromium-blink-merge.git] / cc / quads / tile_draw_quad.h
blobd7ef20a625a6848e6340623d2afbfa19354d9eac
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.
5 #ifndef CC_QUADS_TILE_DRAW_QUAD_H_
6 #define CC_QUADS_TILE_DRAW_QUAD_H_
8 #include "cc/quads/content_draw_quad_base.h"
10 namespace cc {
12 class CC_EXPORT TileDrawQuad : public ContentDrawQuadBase {
13 public:
14 TileDrawQuad();
15 ~TileDrawQuad() override;
17 void SetNew(const SharedQuadState* shared_quad_state,
18 const gfx::Rect& rect,
19 const gfx::Rect& opaque_rect,
20 const gfx::Rect& visible_rect,
21 unsigned resource_id,
22 const gfx::RectF& tex_coord_rect,
23 const gfx::Size& texture_size,
24 bool swizzle_contents,
25 bool nearest_neighbor);
27 void SetAll(const SharedQuadState* shared_quad_state,
28 const gfx::Rect& rect,
29 const gfx::Rect& opaque_rect,
30 const gfx::Rect& visible_rect,
31 bool needs_blending,
32 unsigned resource_id,
33 const gfx::RectF& tex_coord_rect,
34 const gfx::Size& texture_size,
35 bool swizzle_contents,
36 bool nearest_neighbor);
38 unsigned resource_id;
40 void IterateResources(const ResourceIteratorCallback& callback) override;
42 static const TileDrawQuad* MaterialCast(const DrawQuad*);
44 private:
45 void ExtendValue(base::trace_event::TracedValue* value) const override;
48 } // namespace cc
50 #endif // CC_QUADS_TILE_DRAW_QUAD_H_