OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CCDirectRenderer_h | 5 #ifndef CCDirectRenderer_h |
6 #define CCDirectRenderer_h | 6 #define CCDirectRenderer_h |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "cc/renderer.h" | 9 #include "cc/renderer.h" |
10 #include "cc/resource_provider.h" | 10 #include "cc/resource_provider.h" |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 , m_isComplete(false) | 63 , m_isComplete(false) |
64 { | 64 { |
65 } | 65 } |
66 | 66 |
67 private: | 67 private: |
68 bool m_isComplete; | 68 bool m_isComplete; |
69 | 69 |
70 DISALLOW_COPY_AND_ASSIGN(CachedTexture); | 70 DISALLOW_COPY_AND_ASSIGN(CachedTexture); |
71 }; | 71 }; |
72 | 72 |
73 static FloatRect quadVertexRect(); | 73 static gfx::RectF quadVertexRect(); |
74 static void quadRectTransform(WebKit::WebTransformationMatrix* quadRectTrans
form, const WebKit::WebTransformationMatrix& quadTransform, const gfx::RectF& qu
adRect); | 74 static void quadRectTransform(WebKit::WebTransformationMatrix* quadRectTrans
form, const WebKit::WebTransformationMatrix& quadTransform, const gfx::RectF& qu
adRect); |
75 static void initializeMatrices(DrawingFrame&, const gfx::Rect& drawRect, boo
l flipY); | 75 static void initializeMatrices(DrawingFrame&, const gfx::Rect& drawRect, boo
l flipY); |
76 static gfx::Rect moveScissorToWindowSpace(const DrawingFrame&, gfx::RectF sc
issorRect); | 76 static gfx::Rect moveScissorToWindowSpace(const DrawingFrame&, gfx::RectF sc
issorRect); |
77 | 77 |
78 bool haveCachedResources(RenderPass::Id) const; | 78 bool haveCachedResources(RenderPass::Id) const; |
79 static IntSize renderPassTextureSize(const RenderPass*); | 79 static gfx::Size renderPassTextureSize(const RenderPass*); |
80 static GLenum renderPassTextureFormat(const RenderPass*); | 80 static GLenum renderPassTextureFormat(const RenderPass*); |
81 | 81 |
82 void drawRenderPass(DrawingFrame&, const RenderPass*); | 82 void drawRenderPass(DrawingFrame&, const RenderPass*); |
83 bool useRenderPass(DrawingFrame&, const RenderPass*); | 83 bool useRenderPass(DrawingFrame&, const RenderPass*); |
84 | 84 |
85 virtual void bindFramebufferToOutputSurface(DrawingFrame&) = 0; | 85 virtual void bindFramebufferToOutputSurface(DrawingFrame&) = 0; |
86 virtual bool bindFramebufferToTexture(DrawingFrame&, const ScopedTexture*, c
onst gfx::Rect& framebufferRect) = 0; | 86 virtual bool bindFramebufferToTexture(DrawingFrame&, const ScopedTexture*, c
onst gfx::Rect& framebufferRect) = 0; |
87 virtual void setDrawViewportSize(const gfx::Size&) = 0; | 87 virtual void setDrawViewportSize(const gfx::Size&) = 0; |
88 virtual void enableScissorTestRect(const gfx::Rect& scissorRect) = 0; | 88 virtual void enableScissorTestRect(const gfx::Rect& scissorRect) = 0; |
89 virtual void disableScissorTest() = 0; | 89 virtual void disableScissorTest() = 0; |
90 virtual void clearFramebuffer(DrawingFrame&) = 0; | 90 virtual void clearFramebuffer(DrawingFrame&) = 0; |
91 virtual void drawQuad(DrawingFrame&, const DrawQuad*) = 0; | 91 virtual void drawQuad(DrawingFrame&, const DrawQuad*) = 0; |
92 virtual void beginDrawingFrame(DrawingFrame&) = 0; | 92 virtual void beginDrawingFrame(DrawingFrame&) = 0; |
93 virtual void finishDrawingFrame(DrawingFrame&) = 0; | 93 virtual void finishDrawingFrame(DrawingFrame&) = 0; |
94 virtual bool flippedFramebuffer() const = 0; | 94 virtual bool flippedFramebuffer() const = 0; |
95 | 95 |
96 ScopedPtrHashMap<RenderPass::Id, CachedTexture> m_renderPassTextures; | 96 ScopedPtrHashMap<RenderPass::Id, CachedTexture> m_renderPassTextures; |
97 ResourceProvider* m_resourceProvider; | 97 ResourceProvider* m_resourceProvider; |
98 | 98 |
99 private: | 99 private: |
100 DISALLOW_COPY_AND_ASSIGN(DirectRenderer); | 100 DISALLOW_COPY_AND_ASSIGN(DirectRenderer); |
101 }; | 101 }; |
102 | 102 |
103 } // namespace cc | 103 } // namespace cc |
104 | 104 |
105 #endif // CCDirectRenderer_h | 105 #endif // CCDirectRenderer_h |
OLD | NEW |