Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2657)

Unified Diff: cc/ProgramBinding.cpp

Issue 11122003: [cc] Rename all cc/ filenames to Chromium style (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/ProgramBinding.h ('k') | cc/RateLimiter.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/ProgramBinding.cpp
diff --git a/cc/ProgramBinding.cpp b/cc/ProgramBinding.cpp
deleted file mode 100644
index 27d522609dd50b0d81cf1ac2d38fb9236a0a41bd..0000000000000000000000000000000000000000
--- a/cc/ProgramBinding.cpp
+++ /dev/null
@@ -1,147 +0,0 @@
-// Copyright 2011 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"
-
-#if USE(ACCELERATED_COMPOSITING)
-
-#include "ProgramBinding.h"
-
-#include "CCRendererGL.h" // For the GLC() macro.
-#include "GeometryBinding.h"
-#include "GraphicsContext3D.h"
-#include "TraceEvent.h"
-#include <public/WebGraphicsContext3D.h>
-
-using WebKit::WebGraphicsContext3D;
-
-namespace cc {
-
-ProgramBindingBase::ProgramBindingBase()
- : m_program(0)
- , m_vertexShaderId(0)
- , m_fragmentShaderId(0)
- , m_initialized(false)
-{
-}
-
-ProgramBindingBase::~ProgramBindingBase()
-{
- // If you hit these asserts, you initialized but forgot to call cleanup().
- ASSERT(!m_program);
- ASSERT(!m_vertexShaderId);
- ASSERT(!m_fragmentShaderId);
- ASSERT(!m_initialized);
-}
-
-static bool contextLost(WebGraphicsContext3D* context)
-{
- return (context->getGraphicsResetStatusARB() != GraphicsContext3D::NO_ERROR);
-}
-
-
-void ProgramBindingBase::init(WebGraphicsContext3D* context, const std::string& vertexShader, const std::string& fragmentShader)
-{
- TRACE_EVENT0("cc", "ProgramBindingBase::init");
- m_vertexShaderId = loadShader(context, GraphicsContext3D::VERTEX_SHADER, vertexShader);
- if (!m_vertexShaderId) {
- if (!contextLost(context))
- LOG_ERROR("Failed to create vertex shader");
- return;
- }
-
- m_fragmentShaderId = loadShader(context, GraphicsContext3D::FRAGMENT_SHADER, fragmentShader);
- if (!m_fragmentShaderId) {
- GLC(context, context->deleteShader(m_vertexShaderId));
- m_vertexShaderId = 0;
- if (!contextLost(context))
- LOG_ERROR("Failed to create fragment shader");
- return;
- }
-
- m_program = createShaderProgram(context, m_vertexShaderId, m_fragmentShaderId);
- ASSERT(m_program || contextLost(context));
-}
-
-void ProgramBindingBase::link(WebGraphicsContext3D* context)
-{
- GLC(context, context->linkProgram(m_program));
- cleanupShaders(context);
-#ifndef NDEBUG
- int linked = 0;
- GLC(context, context->getProgramiv(m_program, GraphicsContext3D::LINK_STATUS, &linked));
- if (!linked) {
- if (!contextLost(context))
- LOG_ERROR("Failed to link shader program");
- GLC(context, context->deleteProgram(m_program));
- return;
- }
-#endif
-}
-
-void ProgramBindingBase::cleanup(WebGraphicsContext3D* context)
-{
- m_initialized = false;
- if (!m_program)
- return;
-
- ASSERT(context);
- GLC(context, context->deleteProgram(m_program));
- m_program = 0;
-
- cleanupShaders(context);
-}
-
-unsigned ProgramBindingBase::loadShader(WebGraphicsContext3D* context, unsigned type, const std::string& shaderSource)
-{
- unsigned shader = context->createShader(type);
- if (!shader)
- return 0;
- GLC(context, context->shaderSource(shader, shaderSource.data()));
- GLC(context, context->compileShader(shader));
-#ifndef NDEBUG
- int compiled = 0;
- GLC(context, context->getShaderiv(shader, GraphicsContext3D::COMPILE_STATUS, &compiled));
- if (!compiled) {
- GLC(context, context->deleteShader(shader));
- return 0;
- }
-#endif
- return shader;
-}
-
-unsigned ProgramBindingBase::createShaderProgram(WebGraphicsContext3D* context, unsigned vertexShader, unsigned fragmentShader)
-{
- unsigned programObject = context->createProgram();
- if (!programObject) {
- if (!contextLost(context))
- LOG_ERROR("Failed to create shader program");
- return 0;
- }
-
- GLC(context, context->attachShader(programObject, vertexShader));
- GLC(context, context->attachShader(programObject, fragmentShader));
-
- // Bind the common attrib locations.
- GLC(context, context->bindAttribLocation(programObject, GeometryBinding::positionAttribLocation(), "a_position"));
- GLC(context, context->bindAttribLocation(programObject, GeometryBinding::texCoordAttribLocation(), "a_texCoord"));
-
- return programObject;
-}
-
-void ProgramBindingBase::cleanupShaders(WebGraphicsContext3D* context)
-{
- if (m_vertexShaderId) {
- GLC(context, context->deleteShader(m_vertexShaderId));
- m_vertexShaderId = 0;
- }
- if (m_fragmentShaderId) {
- GLC(context, context->deleteShader(m_fragmentShaderId));
- m_fragmentShaderId = 0;
- }
-}
-
-} // namespace cc
-
-#endif // USE(ACCELERATED_COMPOSITING)
« no previous file with comments | « cc/ProgramBinding.h ('k') | cc/RateLimiter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698