Lines Matching defs:shProg
313 write_xfb(struct blob *metadata, struct gl_shader_program *shProg)
315 struct gl_program *prog = shProg->last_vert_prog;
327 blob_write_uint32(metadata, shProg->TransformFeedback.BufferMode);
328 blob_write_bytes(metadata, shProg->TransformFeedback.BufferStride,
329 sizeof(shProg->TransformFeedback.BufferStride));
330 blob_write_uint32(metadata, shProg->TransformFeedback.NumVarying);
331 for (unsigned i = 0; i < shProg->TransformFeedback.NumVarying; i++)
332 blob_write_string(metadata, shProg->TransformFeedback.VaryingNames[i]);
356 read_xfb(struct blob_reader *metadata, struct gl_shader_program *shProg)
363 if (shProg->TransformFeedback.VaryingNames) {
364 for (unsigned i = 0; i < shProg->TransformFeedback.NumVarying; ++i)
365 free(shProg->TransformFeedback.VaryingNames[i]);
369 shProg->TransformFeedback.BufferMode = blob_read_uint32(metadata);
370 blob_copy_bytes(metadata, &shProg->TransformFeedback.BufferStride,
371 sizeof(shProg->TransformFeedback.BufferStride));
372 shProg->TransformFeedback.NumVarying = blob_read_uint32(metadata);
374 shProg->TransformFeedback.VaryingNames = (char **)
375 realloc(shProg->TransformFeedback.VaryingNames,
376 shProg->TransformFeedback.NumVarying * sizeof(GLchar *));
378 for (unsigned i = 0; i < shProg->TransformFeedback.NumVarying; i++)
379 shProg->TransformFeedback.VaryingNames[i] =
382 struct gl_program *prog = shProg->_LinkedShaders[xfb_stage]->Program;
387 shProg->last_vert_prog = prog;