]> git.cworth.org Git - apitrace-tests/blobdiff - apps/gl/tri.c
Test single/double buffering.
[apitrace-tests] / apps / gl / tri.c
index ea3b595550f4193f3d8e56d4f2ea4ae48547f091..baff0246c2254e07ae90898ef54a5c488b9c46a9 100644 (file)
 static GLboolean doubleBuffer = GL_TRUE;
 static int win;
 
+static void parseArgs(int argc, char** argv)
+{
+   int i;
+
+   for (i = 1; i < argc; ++i) {
+      const char *arg = argv[i];
+      if (strcmp(arg, "-sb") == 0) {
+         doubleBuffer = GL_FALSE;
+      } else if (strcmp(arg, "-db") == 0) {
+         doubleBuffer = GL_TRUE;
+      } else {
+         fprintf(stderr, "error: unknown arg %s\n", arg);
+         exit(1);
+      }
+   }
+}
+
 static void Init(void)
 {
    glClearColor(0.3, 0.1, 0.3, 1.0);
@@ -75,7 +92,7 @@ static void Draw(void)
    if (doubleBuffer) {
       glutSwapBuffers();
    }
-   
+
    glutDestroyWindow(win);
 
    exit(0);
@@ -85,10 +102,11 @@ int main(int argc, char **argv)
 {
    GLenum type;
 
+   parseArgs(argc, argv);
+
    glutInit(&argc, argv);
 
-   glutInitWindowPosition(0, 0);
-   glutInitWindowSize( 250, 250);
+   glutInitWindowSize(250, 250);
 
    type = GLUT_RGB | GLUT_ALPHA;
    type |= (doubleBuffer) ? GLUT_DOUBLE : GLUT_SINGLE;