diff options
Diffstat (limited to 'cc/io_surface_draw_quad.cc')
-rw-r--r-- | cc/io_surface_draw_quad.cc | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/cc/io_surface_draw_quad.cc b/cc/io_surface_draw_quad.cc new file mode 100644 index 0000000..5d50043 --- /dev/null +++ b/cc/io_surface_draw_quad.cc @@ -0,0 +1,30 @@ +// Copyright 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "config.h" + +#include "CCIOSurfaceDrawQuad.h" + +namespace cc { + +scoped_ptr<CCIOSurfaceDrawQuad> CCIOSurfaceDrawQuad::create(const CCSharedQuadState* sharedQuadState, const IntRect& quadRect, const IntSize& ioSurfaceSize, unsigned ioSurfaceTextureId, Orientation orientation) +{ + return make_scoped_ptr(new CCIOSurfaceDrawQuad(sharedQuadState, quadRect, ioSurfaceSize, ioSurfaceTextureId, orientation)); +} + +CCIOSurfaceDrawQuad::CCIOSurfaceDrawQuad(const CCSharedQuadState* sharedQuadState, const IntRect& quadRect, const IntSize& ioSurfaceSize, unsigned ioSurfaceTextureId, Orientation orientation) + : CCDrawQuad(sharedQuadState, CCDrawQuad::IOSurfaceContent, quadRect) + , m_ioSurfaceSize(ioSurfaceSize) + , m_ioSurfaceTextureId(ioSurfaceTextureId) + , m_orientation(orientation) +{ +} + +const CCIOSurfaceDrawQuad* CCIOSurfaceDrawQuad::materialCast(const CCDrawQuad* quad) +{ + ASSERT(quad->material() == CCDrawQuad::IOSurfaceContent); + return static_cast<const CCIOSurfaceDrawQuad*>(quad); +} + +} // namespace cc |