]> git.tdb.fi Git - libs/gl.git/commitdiff
Move transform functions to matrix.h
authorMikko Rasa <tdb@tdb.fi>
Sun, 2 Nov 2008 21:18:56 +0000 (21:18 +0000)
committerMikko Rasa <tdb@tdb.fi>
Sun, 2 Nov 2008 21:18:56 +0000 (21:18 +0000)
Add RAII version of push_matrix

source/matrix.cpp
source/matrix.h
source/transform.cpp [deleted file]
source/transform.h

index 7a91078621e647d293af0628d06044c95e719fcd..7841218011935f115c4a7dfbeb7e340ea6ae1a5c 100644 (file)
@@ -40,5 +40,25 @@ void pop_matrix()
        glPopMatrix();
 }
 
+void translate(float x, float y, float z)
+{
+       glTranslatef(x, y, z);
+}
+
+void rotate(float a, float x, float y, float z)
+{
+       glRotatef(a, x, y, z);
+}
+
+void scale(float x, float y, float z)
+{
+       glScalef(x, y, z);
+}
+
+void scale_uniform(float s)
+{
+       scale(s, s, s);
+}
+
 } // namespace GL
 } // namespace Msp
index fe67ad7e4bf749693eedae982a2cbb0d10b40884..13de6c8f4542030eb22e35647c443e6e473640fb 100644 (file)
@@ -27,6 +27,18 @@ void mult_matrix(const double *);
 void push_matrix();
 void pop_matrix();
 
+/// RAII object - pushes matrix when constructed and pops when destroyed
+struct PushMatrix
+{
+       PushMatrix() { push_matrix(); }
+       ~PushMatrix() { pop_matrix(); }
+};
+
+void translate(float, float, float);
+void rotate(float, float, float, float);
+void scale(float, float, float);
+void scale_uniform(float);
+
 } // namespace GL
 } // namespace Msp
 
diff --git a/source/transform.cpp b/source/transform.cpp
deleted file mode 100644 (file)
index 98932b8..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/* $Id$
-
-This file is part of libmspgl
-Copyright © 2007  Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
-#include "gl.h"
-#include "transform.h"
-
-namespace Msp {
-namespace GL {
-
-void translate(float x, float y, float z)
-{
-       glTranslatef(x, y, z);
-}
-
-void rotate(float a, float x, float y, float z)
-{
-       glRotatef(a, x, y, z);
-}
-
-void scale(float x, float y, float z)
-{
-       glScalef(x, y, z);
-}
-
-void scale_uniform(float s)
-{
-       scale(s, s, s);
-}
-
-} // namespace GL
-} // namespace Msp
index 35dc56310ff8ec139b1d133a1efa3ef208a065e1..83f190b3c95af7d4fc928e5eac647ce31a679762 100644 (file)
@@ -5,18 +5,4 @@ Copyright © 2007  Mikko Rasa, Mikkosoft Productions
 Distributed under the LGPL
 */
 
-#ifndef MSP_GL_TRANSFORM_H_
-#define MSP_GL_TRANSFORM_H_
-
-namespace Msp {
-namespace GL {
-
-void translate(float, float, float);
-void rotate(float, float, float, float);
-void scale(float, float, float);
-void scale_uniform(float);
-
-} // namespace GL
-} // namespace Msp
-
-#endif
+#include "matrix.h"