diff options
author | weiliangc@chromium.org <weiliangc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-11 17:24:49 +0000 |
---|---|---|
committer | weiliangc@chromium.org <weiliangc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-11 17:24:49 +0000 |
commit | d70cc671b76bd197628c51d3dc0b764bf5263fcc (patch) | |
tree | f1a1ecca885964c40c06f965d0e9eaec5fe18f5c /cc/quads/draw_quad.cc | |
parent | f0bbcdc29da3d55178958982724a9a3bc45c2eec (diff) | |
download | chromium_src-d70cc671b76bd197628c51d3dc0b764bf5263fcc.zip chromium_src-d70cc671b76bd197628c51d3dc0b764bf5263fcc.tar.gz chromium_src-d70cc671b76bd197628c51d3dc0b764bf5263fcc.tar.bz2 |
Move Copy method from DrawQuad to RenderPass
In transition to let RenderPass take responsibility to allocate
DrawQuads, Copy method from DQ is moved to RP.
In drawquad_unittest, no RenderPass is present, thus it takes advantage
of default copy constructor.
Follow 368403003.
BUG=344962
Review URL: https://codereview.chromium.org/380893004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282640 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/quads/draw_quad.cc')
-rw-r--r-- | cc/quads/draw_quad.cc | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/cc/quads/draw_quad.cc b/cc/quads/draw_quad.cc index e2d6059..b669ad7 100644 --- a/cc/quads/draw_quad.cc +++ b/cc/quads/draw_quad.cc @@ -21,12 +21,6 @@ #include "cc/quads/yuv_video_draw_quad.h" #include "ui/gfx/quad_f.h" -namespace { -template<typename T> T* TypedCopy(const cc::DrawQuad* other) { - return new T(*T::MaterialCast(other)); -} -} // namespace - namespace cc { DrawQuad::DrawQuad() @@ -62,49 +56,6 @@ void DrawQuad::SetAll(const SharedQuadState* shared_quad_state, DrawQuad::~DrawQuad() { } -scoped_ptr<DrawQuad> DrawQuad::Copy( - const SharedQuadState* copied_shared_quad_state) const { - scoped_ptr<DrawQuad> copy_quad; - switch (material) { - case CHECKERBOARD: - copy_quad.reset(TypedCopy<CheckerboardDrawQuad>(this)); - break; - case DEBUG_BORDER: - copy_quad.reset(TypedCopy<DebugBorderDrawQuad>(this)); - break; - case IO_SURFACE_CONTENT: - copy_quad.reset(TypedCopy<IOSurfaceDrawQuad>(this)); - break; - case PICTURE_CONTENT: - copy_quad.reset(TypedCopy<PictureDrawQuad>(this)); - break; - case TEXTURE_CONTENT: - copy_quad.reset(TypedCopy<TextureDrawQuad>(this)); - break; - case SOLID_COLOR: - copy_quad.reset(TypedCopy<SolidColorDrawQuad>(this)); - break; - case TILED_CONTENT: - copy_quad.reset(TypedCopy<TileDrawQuad>(this)); - break; - case STREAM_VIDEO_CONTENT: - copy_quad.reset(TypedCopy<StreamVideoDrawQuad>(this)); - break; - case SURFACE_CONTENT: - copy_quad.reset(TypedCopy<SurfaceDrawQuad>(this)); - break; - case YUV_VIDEO_CONTENT: - copy_quad.reset(TypedCopy<YUVVideoDrawQuad>(this)); - break; - case RENDER_PASS: // RenderPass quads have their own copy() method. - case INVALID: - LOG(FATAL) << "Invalid DrawQuad material " << material; - break; - } - copy_quad->shared_quad_state = copied_shared_quad_state; - return copy_quad.Pass(); -} - scoped_ptr<base::Value> DrawQuad::AsValue() const { scoped_ptr<base::DictionaryValue> value(new base::DictionaryValue()); value->SetInteger("material", material); |