fix build
[gltest.git] / glxbackend.h
index 3f24d48d74924b33a7a8e992c95647a70ecf334f..a16f970c1fb72398ff26589f954e5d700706b4c4 100644 (file)
@@ -1,6 +1,26 @@
+/* gltest - small OpenGL tearing test program
+ * Copyright (C) 2012-2013 Ralf Jung <post@ralfj.de>
+ *
+ * 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.
+ */
+
 #include "glwindow.h"
+#include "glutil.h"
 
 #include <GL/glx.h>
+#include <string>
 
 
 /** Make an X window fit for GL. You have to manage the X window yourself! */
@@ -24,10 +44,14 @@ public:
        virtual void setSwapInterval(int i) const;
 private:
        Display *display;
-       XVisualInfo *vi;
+       GLXFBConfig config;
        GLXContext context;
        Window window;
        
        PFNGLXSWAPINTERVALMESAPROC funSwapIntervalMesa;
        PFNGLXSWAPINTERVALEXTPROC funSwapIntervalExt;
+       PFNGLXCREATECONTEXTATTRIBSARBPROC funCreateContextAttribsARB;
+       
+       bool haveGLXExtension(const std::string &name);
+       T_proc resolveGLXFunction(const char *extension, const char *function);
 };