packspu_getstring.c revision 6de1600bbfa624a754799e62d9f643c959496ccc
/* Copyright (c) 2001, Stanford University
* All rights reserved
*
* See the file LICENSE.txt for information on redistributing this software.
*/
#include "packspu.h"
#include "cr_packfunctions.h"
#include "state/cr_statefuncs.h"
#include "cr_string.h"
#include "packspu_proto.h"
#ifdef CR_OPENGL_VERSION_2_0
#endif
{
int writeback = 1;
else
packspuFlush( (void *) thread );
while (writeback)
crNetRecv();
}
static GLfloat
GetVersionString(void)
{
return version;
}
static const GLubyte *
GetExtensions(void)
{
int writeback = 1;
{
}
else
{
}
packspuFlush( (void *) thread );
while (writeback)
crNetRecv();
/* OK, we got the result from the server. Now we have to
* intersect is with the set of extensions that Chromium understands
* and tack on the Chromium-specific extensions.
*/
#ifdef CR_OPENGL_VERSION_2_0
/* @todo move to known extensions etc, for now just a hack.
*/
{
if (fversion>=2.f)
{
sprintf((char*)gpszExtensions, "%sGL_ARB_shading_language_100 GL_ARB_shader_objects GL_ARB_vertex_shader GL_ARB_fragment_shader", ext);
}
}
#else
#endif
return gpszExtensions;
}
#ifdef WINDOWS
static bool packspuRunningUnderWine(void)
{
}
#endif
{
switch(name)
{
case GL_EXTENSIONS:
return GetExtensions();
case GL_VERSION:
#ifdef WINDOWS
if (packspuRunningUnderWine())
{
return ctx->pszRealVersion;
}
else
#endif
{
float version = GetVersionString();
}
case GL_VENDOR:
#ifdef WINDOWS
if (packspuRunningUnderWine())
{
return ctx->pszRealVendor;
}
else
#endif
{
return crStateGetString(name);
}
case GL_RENDERER:
#ifdef WINDOWS
if (packspuRunningUnderWine())
{
return ctx->pszRealRenderer;
}
else
#endif
{
return crStateGetString(name);
}
#ifdef CR_OPENGL_VERSION_2_0
return gpszShadingVersion;
#endif
#ifdef GL_CR_real_vendor_strings
case GL_REAL_VENDOR:
return ctx->pszRealVendor;
case GL_REAL_VERSION:
return ctx->pszRealVersion;
case GL_REAL_RENDERER:
return ctx->pszRealRenderer;
#endif
default:
return crStateGetString(name);
}
}