Mesa (master): mesa: entrypoints for GL 3.1 primitive restart

Brian Paul brianp at kemper.freedesktop.org
Fri Jul 2 02:04:53 UTC 2010


Module: Mesa
Branch: master
Commit: 120a9f46cd7cbe93f863a2fd6bdfe0cc5229f79f
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=120a9f46cd7cbe93f863a2fd6bdfe0cc5229f79f

Author: Brian Paul <brianp at vmware.com>
Date:   Thu Jul  1 16:04:46 2010 -0600

mesa: entrypoints for GL 3.1 primitive restart

---

 src/mesa/SConscript     |    1 +
 src/mesa/main/restart.c |   68 +++++++++++++++++++++++++++++++++++++++++++++++
 src/mesa/main/restart.h |   40 +++++++++++++++++++++++++++
 src/mesa/sources.mak    |    1 +
 4 files changed, 110 insertions(+), 0 deletions(-)

diff --git a/src/mesa/SConscript b/src/mesa/SConscript
index 79e9b45..62e96ad 100644
--- a/src/mesa/SConscript
+++ b/src/mesa/SConscript
@@ -85,6 +85,7 @@ if env['platform'] != 'winddk':
 		'main/readpix.c',
 		'main/remap.c',
 		'main/renderbuffer.c',
+		'main/restart.c',
 		'main/scissor.c',
 		'main/shaderapi.c',
 		'main/shaderobj.c',
diff --git a/src/mesa/main/restart.c b/src/mesa/main/restart.c
new file mode 100644
index 0000000..ff36649
--- /dev/null
+++ b/src/mesa/main/restart.c
@@ -0,0 +1,68 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  7.9
+ *
+ * Copyright (C) 2010  VMware, Inc.  All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+
+#include "glheader.h"
+#include "imports.h"
+#include "context.h"
+#include "restart.h"
+
+
+/**
+ */
+void GLAPIENTRY
+_mesa_PrimitiveRestart(void)
+{
+   GET_CURRENT_CONTEXT(ctx);
+
+   if (ctx->VersionMajor * 10 + ctx->VersionMinor < 31) {
+      _mesa_error(ctx, GL_INVALID_OPERATION, "glPrimitiveRestart()");
+      return;
+   }
+
+   /* XXX call into vbo module */
+}
+
+
+
+/**
+ */
+void GLAPIENTRY
+_mesa_PrimitiveRestartIndex(GLuint index)
+{
+   GET_CURRENT_CONTEXT(ctx);
+
+   if (ctx->VersionMajor * 10 + ctx->VersionMinor < 31) {
+      _mesa_error(ctx, GL_INVALID_OPERATION, "glPrimitiveRestartIndex()");
+      return;
+   }
+
+   ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
+
+   FLUSH_VERTICES(ctx, _NEW_TRANSFORM);
+
+   ctx->Array.RestartIndex = index;
+}
diff --git a/src/mesa/main/restart.h b/src/mesa/main/restart.h
new file mode 100644
index 0000000..931cd70
--- /dev/null
+++ b/src/mesa/main/restart.h
@@ -0,0 +1,40 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  7.9
+ *
+ * Copyright (C) 2010  VMware, Inc.  All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+
+#ifndef RESTART_H
+#define RESTART_H
+
+
+extern void GLAPIENTRY
+_mesa_PrimitiveRestart(void);
+
+
+extern void GLAPIENTRY
+_mesa_PrimitiveRestartIndex(GLuint index);
+
+
+#endif
diff --git a/src/mesa/sources.mak b/src/mesa/sources.mak
index f01b60c..80dca3c 100644
--- a/src/mesa/sources.mak
+++ b/src/mesa/sources.mak
@@ -68,6 +68,7 @@ MAIN_SOURCES = \
 	main/readpix.c \
 	main/remap.c \
 	main/renderbuffer.c \
+	main/restart.c \
 	main/scissor.c \
 	main/shaderapi.c \
 	main/shaderobj.c \




More information about the mesa-commit mailing list