summaryrefslogtreecommitdiffstats
path: root/libdimensionxx/gl.cpp
diff options
context:
space:
mode:
authorTavian Barnes <tavianator@gmail.com>2009-10-04 19:04:59 +0000
committerTavian Barnes <tavianator@gmail.com>2009-10-04 19:04:59 +0000
commitc35d5af1c2845ad072525e69f3f7be01994bcc2f (patch)
treec4bc69e26814cc32332340faf29a3e09a6bd1eb5 /libdimensionxx/gl.cpp
parentf8bd4dda645fda617bf37e180d35e4ef82c88e40 (diff)
downloaddimension-c35d5af1c2845ad072525e69f3f7be01994bcc2f.tar.xz
Purge test suite and C++ wrapper - for now.
Diffstat (limited to 'libdimensionxx/gl.cpp')
-rw-r--r--libdimensionxx/gl.cpp75
1 files changed, 0 insertions, 75 deletions
diff --git a/libdimensionxx/gl.cpp b/libdimensionxx/gl.cpp
deleted file mode 100644
index 7d0c0a3..0000000
--- a/libdimensionxx/gl.cpp
+++ /dev/null
@@ -1,75 +0,0 @@
-/*************************************************************************
- * Copyright (C) 2009 Tavian Barnes <tavianator@gmail.com> *
- * *
- * This file is part of The Dimension Library. *
- * *
- * The Dimension Library is free software; you can redistribute it and/ *
- * or modify it under the terms of the GNU Lesser General Public License *
- * as published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version. *
- * *
- * The Dimension Library 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 *
- * Lesser General Public License for more details. *
- * *
- * You should have received a copy of the GNU Lesser General Public *
- * License along with this program. If not, see *
- * <http://www.gnu.org/licenses/>. *
- *************************************************************************/
-
-#include "dimensionxx.hpp"
-#include <cstdio>
-
-namespace Dimension
-{
- GL_Writer::GL_Writer(Canvas& canvas)
- : m_canvas(&canvas), m_written(false)
- {
- // Optimize the canvas for GL writeing
- dmnsn_gl_optimize_canvas(m_canvas->dmnsn());
- }
-
- // Draw the canvas if it hasn't been writen yet
- GL_Writer::~GL_Writer()
- {
- if (!m_written) {
- try {
- write();
- } catch (...) {
- dmnsn_error(SEVERITY_MEDIUM,
- "Drawing canvas to GL failed in GL_Writer destructor.");
- }
- }
- }
-
- // Draw the canvas to the current openGL buffer
- void GL_Writer::write()
- {
- // Draw to the GL buffer
- if (dmnsn_gl_write_canvas(m_canvas->dmnsn()) != 0) {
- // The writeing operation failed
- throw Dimension_Error("Drawing canvas to GL failed.");
- }
-
- m_written = true; // Don't write again in destructor
- }
-
- // No-op
- GL_Reader::GL_Reader() { }
-
- // Read a canvas from a GL buffer
- Canvas
- GL_Reader::read(unsigned int x0, unsigned int y0,
- unsigned int width, unsigned int height)
- {
- // Read the canvas from the GL buffer
- dmnsn_canvas* canvas = dmnsn_gl_read_canvas(x0, y0, width, height);
- if (!canvas) {
- // The read operation failed
- throw Dimension_Error("Reading canvas from GL failed.");
- }
-
- return Canvas(canvas);
- }
-}