Add new _mesa_lookup_parameter_constant() to search for a GLfloat4 constant

in a parameter list.
Use it in _mesa_add_named_constant() and _mesa_add_unnamed_constant() to
avoid duplication of identical constants.
This commit is contained in:
Brian Paul
2006-11-15 23:19:52 +00:00
parent 408e01b939
commit 699a33ea77
2 changed files with 88 additions and 15 deletions

View File

@@ -249,19 +249,22 @@ _mesa_add_state_reference(struct gl_program_parameter_list *paramList,
const GLint *stateTokens);
extern GLfloat *
_mesa_lookup_parameter_value(struct gl_program_parameter_list *paramList,
_mesa_lookup_parameter_value(const struct gl_program_parameter_list *paramList,
GLsizei nameLen, const char *name);
extern GLint
_mesa_lookup_parameter_index(struct gl_program_parameter_list *paramList,
_mesa_lookup_parameter_index(const struct gl_program_parameter_list *paramList,
GLsizei nameLen, const char *name);
extern GLboolean
_mesa_lookup_parameter_constant(const struct gl_program_parameter_list *paramList,
const GLfloat v[], GLsizei vSize,
GLuint *posOut, GLuint *swizzleOut);
extern void
_mesa_load_state_parameters(GLcontext *ctx,
struct gl_program_parameter_list *paramList);
extern void
_mesa_print_instruction(const struct prog_instruction *inst);