summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/glamo/glamo_context.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/drivers/dri/glamo/glamo_context.c')
-rw-r--r--src/mesa/drivers/dri/glamo/glamo_context.c36
1 files changed, 35 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/glamo/glamo_context.c b/src/mesa/drivers/dri/glamo/glamo_context.c
index d4ea7f376b..42251470c0 100644
--- a/src/mesa/drivers/dri/glamo/glamo_context.c
+++ b/src/mesa/drivers/dri/glamo/glamo_context.c
@@ -37,6 +37,37 @@
#include "glamo_state.h"
+#define DRIVER_DATE "20090402"
+
+
+static const GLubyte *glamoGetString(GLcontext *ctx, GLenum name)
+{
+ static char buffer[128];
+
+ switch (name) {
+ case GL_VENDOR:
+ return (GLubyte *)"Thomas White";
+ case GL_RENDERER: {
+ driGetRendererString(buffer, "glamo", DRIVER_DATE, 0);
+ return (GLubyte *) buffer;
+ }
+ default:
+ return 0;
+ }
+}
+
+
+static void glamoBufferSize(GLframebuffer *buffer,
+ GLuint *width, GLuint *height)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ glamoContextPtr glamesa = GLAMO_CONTEXT(ctx);
+
+ *width = glamesa->driDrawable->w;
+ *height = glamesa->driDrawable->h;
+}
+
+
GLboolean glamoCreateContext(const __GLcontextModes *glVisual,
__DRIcontext *driContextPriv,
void *sharedContextPrivate)
@@ -68,6 +99,9 @@ GLboolean glamoCreateContext(const __GLcontextModes *glVisual,
glamoScreen = context->glamoScreen = (glamoScreenPtr)sPriv->private;
+ ctx->Driver.GetString = glamoGetString;
+ ctx->Driver.GetBufferSize = glamoBufferSize;
+
context->driContext = driContextPriv;
context->driScreen = sPriv;
context->driDrawable = NULL;
@@ -87,7 +121,7 @@ GLboolean glamoCreateContext(const __GLcontextModes *glVisual,
_swrast_allow_vertex_fog(ctx, GL_FALSE);
_tnl_allow_pixel_fog(ctx, GL_TRUE);
_tnl_allow_vertex_fog(ctx, GL_FALSE);
-
+
glamoInitStateFuncs(ctx);
return GL_TRUE;