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 CCYUVVideoDrawQuad_h
6 #define CCYUVVideoDrawQuad_h
8 #include "CCDrawQuad.h"
9 #include "CCVideoLayerImpl.h"
10 #include <wtf/PassOwnPtr.h>
14 class CCYUVVideoDrawQuad
: public CCDrawQuad
{
15 WTF_MAKE_NONCOPYABLE(CCYUVVideoDrawQuad
);
17 static PassOwnPtr
<CCYUVVideoDrawQuad
> create(const CCSharedQuadState
*, const IntRect
&, const CCVideoLayerImpl::FramePlane
& yPlane
, const CCVideoLayerImpl::FramePlane
& uPlane
, const CCVideoLayerImpl::FramePlane
& vPlane
);
19 const CCVideoLayerImpl::FramePlane
& yPlane() const { return m_yPlane
; }
20 const CCVideoLayerImpl::FramePlane
& uPlane() const { return m_uPlane
; }
21 const CCVideoLayerImpl::FramePlane
& vPlane() const { return m_vPlane
; }
23 static const CCYUVVideoDrawQuad
* materialCast(const CCDrawQuad
*);
25 CCYUVVideoDrawQuad(const CCSharedQuadState
*, const IntRect
&, const CCVideoLayerImpl::FramePlane
& yPlane
, const CCVideoLayerImpl::FramePlane
& uPlane
, const CCVideoLayerImpl::FramePlane
& vPlane
);
27 CCVideoLayerImpl::FramePlane m_yPlane
;
28 CCVideoLayerImpl::FramePlane m_uPlane
;
29 CCVideoLayerImpl::FramePlane m_vPlane
;