@@ -565,7 +565,7 @@ def ConversionFunc(fromType, toType): | |||
return fromStr + "_TO_" + toStr | |||
def EmitGetFunction(stateVars, returnType): | |||
def EmitGetFunction(stateVars, returnType, API): | |||
"""Emit the code to implement glGetBooleanv, glGetIntegerv or glGetFloatv.""" | |||
assert (returnType == GLboolean or | |||
returnType == GLint or | |||
@@ -575,13 +575,13 @@ def EmitGetFunction(stateVars, returnType): | |||
strType = TypeStrings[returnType] | |||
# Capitalize first letter of return type | |||
if returnType == GLint: | |||
function = "_mesa_GetIntegerv" | |||
function = "_es%d_GetIntegerv" % API | |||
elif returnType == GLboolean: | |||
function = "_mesa_GetBooleanv" | |||
function = "_es%d_GetBooleanv" % API | |||
elif returnType == GLfloat: | |||
function = "_mesa_GetFloatv" | |||
function = "_es%d_GetFloatv" % API | |||
elif returnType == GLfixed: | |||
function = "_mesa_GetFixedv" | |||
function = "_es%d_GetFixedv" % API | |||
else: | |||
abort() | |||
@@ -773,20 +773,17 @@ static GLenum compressed_formats[] = { | |||
#define ARRAY_SIZE(A) (sizeof(A) / sizeof(A[0])) | |||
void GLAPIENTRY | |||
_mesa_GetFixedv( GLenum pname, GLfixed *params ); | |||
""" | |||
return | |||
def EmitAll(stateVars, API): | |||
EmitHeader() | |||
EmitGetFunction(stateVars, GLboolean) | |||
EmitGetFunction(stateVars, GLfloat) | |||
EmitGetFunction(stateVars, GLint) | |||
EmitGetFunction(stateVars, GLboolean, API) | |||
EmitGetFunction(stateVars, GLfloat, API) | |||
EmitGetFunction(stateVars, GLint, API) | |||
if API == 1: | |||
EmitGetFunction(stateVars, GLfixed) | |||
EmitGetFunction(stateVars, GLfixed, API) | |||
def main(args): |
@@ -3939,15 +3939,15 @@ | |||
<function name="PixelStorei" template="PixelStore" gltype="GLint"/> | |||
<function name="ReadPixels" template="ReadPixels"/> | |||
<function name="GetBooleanv" template="GetState" gltype="GLboolean"/> | |||
<function name="GetBooleanv" default_prefix="_es1_" template="GetState" gltype="GLboolean"/> | |||
<function name="GetClipPlanef" template="GetClipPlane" gltype="GLfloat"/> | |||
<function name="GetClipPlanex" template="GetClipPlane" gltype="GLfixed"/> | |||
<function name="GetError" template="GetError"/> | |||
<function name="GetFloatv" template="GetState" gltype="GLfloat"/> | |||
<function name="GetFixedv" template="GetState" gltype="GLfixed"/> | |||
<function name="GetIntegerv" template="GetState" gltype="GLint"/> | |||
<function name="GetFloatv" default_prefix="_es1_" template="GetState" gltype="GLfloat"/> | |||
<function name="GetFixedv" default_prefix="_es1_" template="GetState" gltype="GLfixed"/> | |||
<function name="GetIntegerv" default_prefix="_es1_" template="GetState" gltype="GLint"/> | |||
<function name="GetLightfv" template="GetLight" gltype="GLfloat"/> | |||
<function name="GetLightxv" template="GetLight" gltype="GLfixed"/> | |||
@@ -4173,10 +4173,10 @@ | |||
<function name="PixelStorei" template="PixelStore" gltype="GLint"/> | |||
<function name="ReadPixels" template="ReadPixels"/> | |||
<function name="GetBooleanv" template="GetState" gltype="GLboolean"/> | |||
<function name="GetBooleanv" default_prefix="_es2_" template="GetState" gltype="GLboolean"/> | |||
<function name="GetError" template="GetError"/> | |||
<function name="GetFloatv" template="GetState" gltype="GLfloat"/> | |||
<function name="GetIntegerv" template="GetState" gltype="GLint"/> | |||
<function name="GetFloatv" default_prefix="_es2_" template="GetState" gltype="GLfloat"/> | |||
<function name="GetIntegerv" default_prefix="_es2_" template="GetState" gltype="GLint"/> | |||
<function name="GetString" template="GetString"/> | |||
@@ -222,6 +222,13 @@ def Parameters(funcname): | |||
return params | |||
def FunctionPrefix(funcname): | |||
"""Return function specific prefix.""" | |||
func = __functions[funcname] | |||
return func.prefix | |||
def FindParamIndex(params, paramname): | |||
"""Find the index of a named parameter.""" | |||
for i in xrange(len(params)): |
@@ -293,6 +293,7 @@ for funcName in keys: | |||
passthroughFuncName = "" | |||
passthroughDeclarationString = "" | |||
passthroughCallString = "" | |||
prefixOverride = None | |||
variables = [] | |||
conversionCodeOutgoing = [] | |||
conversionCodeIncoming = [] | |||
@@ -311,6 +312,9 @@ for funcName in keys: | |||
funcPrefix = "_es_" | |||
aliasprefix = apiutil.AliasPrefix(funcName) | |||
alias = apiutil.ConversionFunction(funcName) | |||
prefixOverride = apiutil.FunctionPrefix(funcName) | |||
if prefixOverride != "_mesa_": | |||
aliasprefix = apiutil.FunctionPrefix(funcName) | |||
if not alias: | |||
# There may still be a Mesa alias for the function | |||
if apiutil.Alias(funcName): |
@@ -71,4 +71,27 @@ _mesa_GetStringi(GLenum name, GLuint index); | |||
extern GLenum GLAPIENTRY | |||
_mesa_GetError( void ); | |||
extern void GLAPIENTRY | |||
_es1_GetBooleanv( GLenum pname, GLboolean *params ); | |||
extern void GLAPIENTRY | |||
_es1_GetFloatv( GLenum pname, GLfloat *params ); | |||
extern void GLAPIENTRY | |||
_es1_GetIntegerv( GLenum pname, GLint *params ); | |||
extern void GLAPIENTRY | |||
_es1_GetFixedv( GLenum pname, GLfixed *params ); | |||
extern void GLAPIENTRY | |||
_es2_GetBooleanv( GLenum pname, GLboolean *params ); | |||
extern void GLAPIENTRY | |||
_es2_GetFloatv( GLenum pname, GLfloat *params ); | |||
extern void GLAPIENTRY | |||
_es2_GetIntegerv( GLenum pname, GLint *params ); | |||
#endif |