GLAPI/glGetProgramPipeline: Difference between revisions

From OpenGL Wiki
Jump to navigation Jump to search
m Renaming category: 'API Reference 4' to 'Core API Reference'.
m Bot: Adding better formatting.
 
(5 intermediate revisions by 2 users not shown)
Line 9: Line 9:
== Function Definition ==
== Function Definition ==


   void '''glGetProgramPipelineiv'''(GLuint ''pipeline'', GLenum ''pname'', GLint *''params'');
   void '''glGetProgramPipelineiv'''(GLuint {{param|pipeline}}, GLenum {{param|pname}}, GLint *{{param|params}});


; pipeline
; pipeline
Line 16: Line 16:
: Specifies the name of the parameter to retrieve.
: Specifies the name of the parameter to retrieve.
; params
; params
: Specifies the address of a variable into which will be written the value or values of ''pname'' for ''pipeline''.
: Specifies the address of a variable into which will be written the value or values of {{param|pname}} for {{param|pipeline}}.


== Description ==
== Description ==


'''glGetProgramPipelineiv''' retrieves the value of a property of the program pipeline object ''pipeline''. ''pname'' specifies the name of the parameter whose value to retrieve. The value of the parameter is written to the variable whose address is given by ''params''.
'''glGetProgramPipelineiv''' retrieves the value of a property of the program pipeline object {{param|pipeline}}. {{param|pname}} specifies the name of the parameter whose value to retrieve. The value of the parameter is written to the variable whose address is given by {{param|params}}.


If ''pname'' is {{code|GL_ACTIVE_PROGRAM}}, the name of the active program object of the program pipeline object is returned in ''params''.
If {{param|pname}} is {{enum|GL_ACTIVE_PROGRAM}}, the name of the active program object of the program pipeline object is returned in {{param|params}}.


If ''pname'' is {{code|GL_VERTEX_SHADER}}, the name of the current program object for the vertex shader type of the program pipeline object is returned in ''params''.
If {{param|pname}} is {{enum|GL_VERTEX_SHADER}}, the name of the current program object for the vertex shader type of the program pipeline object is returned in {{param|params}}.


If ''pname'' is {{code|GL_TESS_CONTROL_SHADER}}, the name of the current program object for the tessellation control shader type of the program pipeline object is returned in ''params''.
If {{param|pname}} is {{enum|GL_TESS_CONTROL_SHADER}}, the name of the current program object for the tessellation control shader type of the program pipeline object is returned in {{param|params}}.


If ''pname'' is {{code|GL_TESS_EVALUATION_SHADER}}, the name of the current program object for the tessellation evaluation shader type of the program pipeline object is returned in ''params''.
If {{param|pname}} is {{enum|GL_TESS_EVALUATION_SHADER}}, the name of the current program object for the tessellation evaluation shader type of the program pipeline object is returned in {{param|params}}.


If ''pname'' is {{code|GL_GEOMETRY_SHADER}}, the name of the current program object for the geometry shader type of the program pipeline object is returned in ''params''.
If {{param|pname}} is {{enum|GL_GEOMETRY_SHADER}}, the name of the current program object for the geometry shader type of the program pipeline object is returned in {{param|params}}.


If ''pname'' is {{code|GL_FRAGMENT_SHADER}}, the name of the current program object for the fragment shader type of the program pipeline object is returned in ''params''.
If {{param|pname}} is {{enum|GL_FRAGMENT_SHADER}}, the name of the current program object for the fragment shader type of the program pipeline object is returned in {{param|params}}.


If ''pname'' is {{code|GL_INFO_LOG_LENGTH}}, the length of the info log, including the null terminator, is returned in ''params''. If there is no info log, zero is returned.
If {{param|pname}} is {{enum|GL_INFO_LOG_LENGTH}}, the length of the info log, including the null terminator, is returned in {{param|params}}. If there is no info log, zero is returned.


== Errors ==
== Errors ==


{{code|GL_INVALID_OPERATION}} is generated if ''pipeline'' is not zero or a name previously returned from a call to [[GLAPI/glGenProgramPipelines|glGenProgramPipelines]] or if such a name has been deleted by a call to [[GLAPI/glDeleteProgramPipelines|glDeleteProgramPipelines]].
{{enum|GL_INVALID_OPERATION}} is generated if {{param|pipeline}} is not zero or a name previously returned from a call to {{apifunc|glGenProgramPipelines}} or if such a name has been deleted by a call to {{apifunc|glDeleteProgramPipelines}}.


{{code|GL_INVALID_ENUM}} is generated if ''pname'' is not one of the accepted values.
{{enum|GL_INVALID_ENUM}} is generated if {{param|pname}} is not one of the accepted values.


== See Also ==
== See Also ==


[[GLAPI/glBindProgramPipeline|glBindProgramPipeline]], [[GLAPI/glDeleteProgramPipelines|glDeleteProgramPipelines]]
{{apifunc|glBindProgramPipeline}}, {{apifunc|glDeleteProgramPipelines}}, {{apifunc|glUseProgramStages}}, {{apifunc|glValidateProgramPipeline}}


== Copyright ==
== Copyright ==
Line 50: Line 50:
Copyright © 2010 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. [http://opencontent.org/openpub/ http://opencontent.org/openpub/].
Copyright © 2010 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. [http://opencontent.org/openpub/ http://opencontent.org/openpub/].


[[Category:GL 4 API Shader Program Creation|GetProgramPipeline]]
[[Category:Core API Reference|GetProgramPipeline]]
[[Category:Core API Reference|GetProgramPipeline]]
[[Category:Core API Ref Shader Program Creation|GetProgramPipeline]]
[[Category:Program Pipeline Object API State Functions|GetProgramPipeline]]

Latest revision as of 10:00, 15 August 2013

glGetProgramPipeline
Core in version 4.6
Core since version 4.1
Core ARB extension ARB_separate_shader_objects

glGetProgramPipeline: retrieve properties of a program pipeline object

Function Definition

 void glGetProgramPipelineiv(GLuint pipeline​, GLenum pname​, GLint *params​);
pipeline
Specifies the name of a program pipeline object whose parameter retrieve.
pname
Specifies the name of the parameter to retrieve.
params
Specifies the address of a variable into which will be written the value or values of pname​ for pipeline​.

Description

glGetProgramPipelineiv retrieves the value of a property of the program pipeline object pipeline​. pname​ specifies the name of the parameter whose value to retrieve. The value of the parameter is written to the variable whose address is given by params​.

If pname​ is GL_ACTIVE_PROGRAM, the name of the active program object of the program pipeline object is returned in params​.

If pname​ is GL_VERTEX_SHADER, the name of the current program object for the vertex shader type of the program pipeline object is returned in params​.

If pname​ is GL_TESS_CONTROL_SHADER, the name of the current program object for the tessellation control shader type of the program pipeline object is returned in params​.

If pname​ is GL_TESS_EVALUATION_SHADER, the name of the current program object for the tessellation evaluation shader type of the program pipeline object is returned in params​.

If pname​ is GL_GEOMETRY_SHADER, the name of the current program object for the geometry shader type of the program pipeline object is returned in params​.

If pname​ is GL_FRAGMENT_SHADER, the name of the current program object for the fragment shader type of the program pipeline object is returned in params​.

If pname​ is GL_INFO_LOG_LENGTH, the length of the info log, including the null terminator, is returned in params​. If there is no info log, zero is returned.

Errors

GL_INVALID_OPERATION is generated if pipeline​ is not zero or a name previously returned from a call to glGenProgramPipelines or if such a name has been deleted by a call to glDeleteProgramPipelines.

GL_INVALID_ENUM is generated if pname​ is not one of the accepted values.

See Also

glBindProgramPipeline, glDeleteProgramPipelines, glUseProgramStages, glValidateProgramPipeline

Copyright

Copyright © 2010 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.