NOTE: This project has moved to http://gitorious.org/meego-graphics/glmemperf
[glmemperf] / blittest.cpp
diff --git a/blittest.cpp b/blittest.cpp
deleted file mode 100644 (file)
index a438ba8..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-/**
- * OpenGL ES 2.0 memory performance estimator
- * Copyright (C) 2009 Nokia
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * \author Sami Kyöstilä <sami.kyostila@nokia.com>
- *
- * Generic blitter
- */
-#include "blittest.h"
-#include "util.h"
-#include <sstream>
-
-const char *defaultVertSource = 
-    "precision mediump float;\n"
-    "attribute vec2 in_position;\n"
-    "attribute vec2 in_texcoord;\n"
-    "varying vec2 texcoord;\n"
-    "\n"
-    "void main()\n"
-    "{\n"
-    "  gl_Position = vec4(in_position, 0.0, 1.0);\n"
-    "  texcoord = in_texcoord;\n"
-    "}\n";
-
-const char *defaultFragSource = 
-    "precision mediump float;\n"
-    "varying vec2 texcoord;\n"
-    "uniform sampler2D texture;\n"
-    "\n"
-    "void main()\n"
-    "{\n"
-    "  gl_FragColor = texture2D(texture, texcoord);\n"
-    "}\n";
-
-BlitTest::BlitTest(int width, int height, 
-                   bool rotate, float texW, float texH,
-                   float quadW, float quadH):
-    m_width(width),
-    m_height(height),
-    m_texW(texW),
-    m_texH(texH),
-    m_quadW(quadW),
-    m_quadH(quadH),
-    m_rotate(rotate),
-    m_vertSource(defaultVertSource),
-    m_fragSource(defaultFragSource)
-{
-}
-
-BlitTest::BlitTest(GLenum format, GLenum type, int width, int height, const std::string& fileName,
-                   bool rotate, float texW, float texH,
-                   float quadW, float quadH):
-    m_format(format),
-    m_type(type),
-    m_width(width),
-    m_height(height),
-    m_texW(texW),
-    m_texH(texH),
-    m_quadW(quadW),
-    m_quadH(quadH),
-    m_rotate(rotate),
-    m_fileName(fileName),
-    m_vertSource(defaultVertSource),
-    m_fragSource(defaultFragSource)
-{
-    if (m_format >= 0x8c00)
-    {
-        m_type = m_format;
-    }
-}
-
-void BlitTest::teardown()
-{
-    glUseProgram(0);
-    glDisableVertexAttribArray(m_positionAttr);
-    glDisableVertexAttribArray(m_texcoordAttr);
-    glDeleteProgram(m_program);
-    // Disabled until driver segfault is fixed
-    //glDeleteTextures(1, &m_texture);
-}
-
-void BlitTest::prepare()
-{
-    initializeBlitter();
-    if (m_fileName.size())
-    {
-        if (m_format >= 0x8c00)
-        {
-            loadCompressedTexture(GL_TEXTURE_2D, 0, m_format, m_width, m_height, m_fileName);
-        }
-        else
-        {
-            loadRawTexture(GL_TEXTURE_2D, 0, m_format, m_width, m_height, m_format, m_type, m_fileName);
-        }
-    }
-    ASSERT_GL();
-}
-
-void BlitTest::operator()(int frame)
-{
-    float t = frame / 400.0f;
-
-    // Disable animation for now, since it interferes with the results due
-    // to lack of wrapping for NPOT textures
-    t = 0;
-
-    const GLfloat texcoords[] =
-    {
-         0 + t,       m_texH + t,
-         0 + t,       0 + t,
-         m_texW + t,  m_texH + t,
-         m_texW + t,  0 + t
-    };
-
-    const GLfloat texcoordsRotated[] =
-    {
-         m_texW + t,  0 + t,
-         0 + t,       0 + t,
-         m_texW + t,  m_texH + t,
-         0 + t,       m_texH + t
-    };
-
-    const GLfloat vertices[] =
-    {
-        -m_quadW, -m_quadH,
-        -m_quadW,  m_quadH,
-         m_quadW, -m_quadH,
-         m_quadW,  m_quadH
-    };
-
-    glVertexAttribPointer(m_positionAttr, 2, GL_FLOAT, GL_FALSE, 0, vertices);
-    glVertexAttribPointer(m_texcoordAttr, 2, GL_FLOAT, GL_FALSE, 0, m_rotate ? texcoordsRotated : texcoords);
-    glClear(GL_COLOR_BUFFER_BIT);
-    glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
-}
-
-std::string BlitTest::name() const
-{
-    std::stringstream s;
-
-    if (m_rotate)
-    {
-        s << "blit_tex_rot90_";
-    }
-    else
-    {
-        s << "blit_tex_";
-    }
-
-    s << textureFormatName(m_format, m_type);
-    s << "_" << m_width << "x" << m_height;
-
-    return s.str();
-}
-
-void BlitTest::initializeBlitter()
-{
-    m_program = createProgram(m_vertSource, m_fragSource);
-    glUseProgram(m_program);
-
-    glClearColor(.2, .4, .6, 1.0);
-
-    m_positionAttr = glGetAttribLocation(m_program, "in_position");
-    m_texcoordAttr = glGetAttribLocation(m_program, "in_texcoord");
-    assert(m_positionAttr >= 0);
-    assert(m_texcoordAttr >= 0);
-
-    glEnableVertexAttribArray(m_positionAttr);
-    glEnableVertexAttribArray(m_texcoordAttr);
-
-    m_textureUnif = glGetUniformLocation(m_program, "texture");
-    assert(m_textureUnif >= 0);
-    glUniform1i(m_textureUnif, 0);
-
-    glGenTextures(1, &m_texture);
-    glBindTexture(GL_TEXTURE_2D, m_texture);
-    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
-    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
-    ASSERT_GL();
-}