Lines Matching refs:shProg
315 write_xfb(struct blob *metadata, struct gl_shader_program *shProg)
317 struct gl_program *prog = shProg->last_vert_prog;
329 blob_write_uint32(metadata, shProg->TransformFeedback.BufferMode);
330 blob_write_bytes(metadata, shProg->TransformFeedback.BufferStride,
331 sizeof(shProg->TransformFeedback.BufferStride));
332 blob_write_uint32(metadata, shProg->TransformFeedback.NumVarying);
333 for (unsigned i = 0; i < shProg->TransformFeedback.NumVarying; i++)
334 blob_write_string(metadata, shProg->TransformFeedback.VaryingNames[i]);
358 read_xfb(struct blob_reader *metadata, struct gl_shader_program *shProg)
365 if (shProg->TransformFeedback.VaryingNames) {
366 for (unsigned i = 0; i < shProg->TransformFeedback.NumVarying; ++i)
367 free(shProg->TransformFeedback.VaryingNames[i]);
371 shProg->TransformFeedback.BufferMode = blob_read_uint32(metadata);
372 blob_copy_bytes(metadata, &shProg->TransformFeedback.BufferStride,
373 sizeof(shProg->TransformFeedback.BufferStride));
374 shProg->TransformFeedback.NumVarying = blob_read_uint32(metadata);
376 shProg->TransformFeedback.VaryingNames = (char **)
377 realloc(shProg->TransformFeedback.VaryingNames,
378 shProg->TransformFeedback.NumVarying * sizeof(GLchar *));
380 for (unsigned i = 0; i < shProg->TransformFeedback.NumVarying; i++)
381 shProg->TransformFeedback.VaryingNames[i] =
384 struct gl_program *prog = shProg->_LinkedShaders[xfb_stage]->Program;
389 shProg->last_vert_prog = prog;