Lines Matching defs:pipeline

30  * Implementation of pipeline object related API functions. Based on
56 * Delete a pipeline object.
75 * Allocate and initialize a new pipeline object.
92 * Initialize pipeline object state for given context.
108 * Callback for deleting a pipeline object. Called by _mesa_HashDeleteAll().
120 * Free pipeline state for given context.
134 * Look up the pipeline object for the given ID.
137 * Either a pointer to the pipeline object with the specified ID or \c NULL for
152 * Add the given pipeline object to the pipeline object pool.
163 * Remove the given pipeline object from the pipeline object pool.
164 * Do not deallocate the pipeline object though.
187 /* Unreference the old pipeline object */
202 /* reference new pipeline object */
236 * stages, it is as if the pipeline object has no programmable stage
264 _mesa_UseProgramStages_no_error(GLuint pipeline, GLbitfield stages,
270 _mesa_lookup_pipeline_object(ctx, pipeline);
285 * Bound program to severals stages of the pipeline
288 _mesa_UseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
292 struct gl_pipeline_object *pipe = _mesa_lookup_pipeline_object(ctx, pipeline);
298 pipeline, stages, program);
301 _mesa_error(ctx, GL_INVALID_OPERATION, "glUseProgramStages(pipeline)");
336 * - by UseProgramStages if the program pipeline object it refers
360 * shader stages in the pipeline program pipeline object are not
381 active_shader_program(struct gl_context *ctx, GLuint pipeline, GLuint program,
385 struct gl_pipeline_object *pipe = _mesa_lookup_pipeline_object(ctx, pipeline);
399 _mesa_error(ctx, GL_INVALID_OPERATION, "glActiveShaderProgram(pipeline)");
420 _mesa_ActiveShaderProgram_no_error(GLuint pipeline, GLuint program)
423 active_shader_program(ctx, pipeline, program, true);
427 * Use the named shader program for subsequent glUniform calls (if pipeline
431 _mesa_ActiveShaderProgram(GLuint pipeline, GLuint program)
436 _mesa_debug(ctx, "glActiveShaderProgram(%u, %u)\n", pipeline, program);
438 active_shader_program(ctx, pipeline, program, false);
442 bind_program_pipeline(struct gl_context *ctx, GLuint pipeline, bool no_error)
447 _mesa_debug(ctx, "glBindProgramPipeline(%u)\n", pipeline);
449 /* Rebinding the same pipeline object: no change.
451 if (ctx->_Shader->Name == pipeline)
470 /* Get pointer to new pipeline object (newObj)
472 if (pipeline) {
473 /* non-default pipeline object */
474 newObj = _mesa_lookup_pipeline_object(ctx, pipeline);
491 _mesa_BindProgramPipeline_no_error(GLuint pipeline)
494 bind_program_pipeline(ctx, pipeline, true);
498 * Make program of the pipeline current
501 _mesa_BindProgramPipeline(GLuint pipeline)
504 bind_program_pipeline(ctx, pipeline, false);
512 /* First bind the Pipeline to pipeline binding point */
519 * there is a bound program pipeline object (see section 2.11.4), the
520 * program bound to the appropriate stage of the pipeline object is
527 /* Bound the pipeline to the current program and
528 * restore the pipeline state
532 /* Unbind the pipeline */
551 * Delete a set of pipeline objects.
553 * \param n Number of pipeline objects to delete.
554 * \param ids pipeline of \c n pipeline object IDs.
577 /* If the pipeline object is currently bound, the spec says "If an
579 * object reverts to zero and no program pipeline object becomes
589 /* Unreference the pipeline object.
598 * Generate a set of unique pipeline object IDs and store them in \c pipelines.
600 * \param pipelines pipeline of \c n locations to store the IDs.
683 * Determine if ID is the name of an pipeline object.
685 * \param id ID of the potential pipeline object.
686 * \return \c GL_TRUE if \c id is the name of a pipeline object,
690 _mesa_IsProgramPipeline(GLuint pipeline)
695 _mesa_debug(ctx, "glIsProgramPipeline(%u)\n", pipeline);
697 struct gl_pipeline_object *obj = _mesa_lookup_pipeline_object(ctx, pipeline);
705 * glGetProgramPipelineiv() - get pipeline shader state.
708 _mesa_GetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
711 struct gl_pipeline_object *pipe = _mesa_lookup_pipeline_object(ctx, pipeline);
715 pipeline, pname, params);
724 "glGetProgramPipelineiv(pipeline)");
786 * specified pipeline.
941 * there is a current program pipeline object, and the current
943 * applied to the pipeline object via UseProgramStages with the
966 * there is a current program pipeline object, and that object is
1003 * detected without the complete program pipeline. Mismatched interfaces,
1016 * * The current program pipeline object contains a shader interface
1033 "glValidateProgramPipeline: pipeline %u does not meet "
1044 * Check compatibility of pipeline's program
1047 _mesa_ValidateProgramPipeline(GLuint pipeline)
1052 _mesa_debug(ctx, "glValidateProgramPipeline(%u)\n", pipeline);
1054 struct gl_pipeline_object *pipe = _mesa_lookup_pipeline_object(ctx, pipeline);
1058 "glValidateProgramPipeline(pipeline)");
1067 _mesa_GetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize,
1074 pipeline, bufSize, length, infoLog);
1076 struct gl_pipeline_object *pipe = _mesa_lookup_pipeline_object(ctx, pipeline);
1080 "glGetProgramPipelineInfoLog(pipeline)");