Home | History | Annotate | Download | only in program

Lines Matching refs:paramList

79 _mesa_free_parameter_list(struct gl_program_parameter_list *paramList)
82 for (i = 0; i < paramList->NumParameters; i++) {
83 if (paramList->Parameters[i].Name)
84 free((void *) paramList->Parameters[i].Name);
86 free(paramList->Parameters);
87 if (paramList->ParameterValues)
88 _mesa_align_free(paramList->ParameterValues);
89 free(paramList);
99 * \param paramList the list to add the parameter to
109 _mesa_add_parameter(struct gl_program_parameter_list *paramList,
116 const GLuint oldNum = paramList->NumParameters;
121 if (oldNum + sz4 > paramList->Size) {
123 paramList->Size = paramList->Size + 4 * sz4;
126 paramList->Parameters = (struct gl_program_parameter *)
127 _mesa_realloc(paramList->Parameters,
129 paramList->Size * sizeof(struct gl_program_parameter));
131 paramList->ParameterValues = (gl_constant_value (*)[4])
132 _mesa_align_realloc(paramList->ParameterValues, /* old buf */
134 paramList->Size*4*sizeof(gl_constant_value),/*new*/
138 if (!paramList->Parameters ||
139 !paramList->ParameterValues) {
141 paramList->NumParameters = 0;
142 paramList->Size = 0;
148 paramList->NumParameters = oldNum + sz4;
150 memset(&paramList->Parameters[oldNum], 0,
154 struct gl_program_parameter *p = paramList->Parameters + oldNum + i;
161 COPY_4V(paramList->ParameterValues[oldNum + i], values);
168 paramList->ParameterValues[oldNum + i][j].f = 0;
175 paramList->Parameters[oldNum].StateIndexes[i] = state[i];
188 _mesa_add_named_parameter(struct gl_program_parameter_list *paramList,
191 return _mesa_add_parameter(paramList, PROGRAM_NAMED_PARAM, name,
202 * \param paramList the parameter list
208 _mesa_add_named_constant(struct gl_program_parameter_list *paramList,
214 for (pos = 0; pos < (GLint)paramList->NumParameters; pos++) {
215 const gl_constant_value *pvals = paramList->ParameterValues[pos];
220 strcmp(paramList->Parameters[pos].Name, name) == 0) {
226 return _mesa_add_parameter(paramList, PROGRAM_CONSTANT, name,
238 * \param paramList the parameter list
244 _mesa_add_typed_unnamed_constant(struct gl_program_parameter_list *paramList,
253 _mesa_lookup_parameter_constant(paramList, values,
263 for (pos = 0; pos < (GLint) paramList->NumParameters; pos++) {
264 struct gl_program_parameter *p = paramList->Parameters + pos;
267 gl_constant_value *pVal = paramList->ParameterValues[pos];
278 pos = _mesa_add_parameter(paramList, PROGRAM_CONSTANT, NULL,
296 * \param paramList the parameter list
303 _mesa_add_unnamed_constant(struct gl_program_parameter_list *paramList,
307 return _mesa_add_typed_unnamed_constant(paramList, values, size, GL_NONE,
315 _mesa_add_varying(struct gl_program_parameter_list *paramList,
319 GLint i = _mesa_lookup_parameter_index(paramList, -1, name);
320 if (i >= 0 && paramList->Parameters[i].Type == PROGRAM_VARYING) {
326 i = _mesa_add_parameter(paramList, PROGRAM_VARYING, name,
339 _mesa_add_attribute(struct gl_program_parameter_list *paramList,
342 GLint i = _mesa_lookup_parameter_index(paramList, -1, name);
347 paramList->Parameters[i].StateIndexes[0] = attrib;
355 i = _mesa_add_parameter(paramList, PROGRAM_INPUT, name,
391 * \param paramList the parameter list
396 _mesa_add_state_reference(struct gl_program_parameter_list *paramList,
404 for (index = 0; index < (GLint) paramList->NumParameters; index++) {
405 if (!memcmp(paramList->Parameters[index].StateIndexes,
412 index = _mesa_add_parameter(paramList, PROGRAM_STATE_VAR, name,
415 paramList->StateFlags |= _mesa_program_state_flags(stateTokens);
429 _mesa_lookup_parameter_value(const struct gl_program_parameter_list *paramList,
432 GLint i = _mesa_lookup_parameter_index(paramList, nameLen, name);
436 return paramList->ParameterValues[i];
442 * \param paramList the parameter list to search
449 _mesa_lookup_parameter_index(const struct gl_program_parameter_list *paramList,
454 if (!paramList)
459 for (i = 0; i < (GLint) paramList->NumParameters; i++) {
460 if (paramList->Parameters[i].Name &&
461 strcmp(paramList->Parameters[i].Name, name) == 0)
467 for (i = 0; i < (GLint) paramList->NumParameters; i++) {
468 if (paramList->Parameters[i].Name &&
469 strncmp(paramList->Parameters[i].Name, name, nameLen) == 0
470 && strlen(paramList->Parameters[i].Name) == (size_t)nameLen)