Skip to content

Commit d2e552e

Browse files
committed
Added support for ARB_separate_shader_objects.
1 parent 2860c7c commit d2e552e

File tree

4 files changed

+193
-34
lines changed

4 files changed

+193
-34
lines changed

OpenGLRaw.cabal

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ library
8080
Graphics.Rendering.OpenGL.Raw.ARB.QueryBufferObject,
8181
Graphics.Rendering.OpenGL.Raw.ARB.SampleShading,
8282
Graphics.Rendering.OpenGL.Raw.ARB.SeamlessCubeMap,
83+
Graphics.Rendering.OpenGL.Raw.ARB.SeparateShaderObjects,
8384
Graphics.Rendering.OpenGL.Raw.ARB.ShaderAtomicCounters,
8485
Graphics.Rendering.OpenGL.Raw.ARB.ShaderObjects,
8586
Graphics.Rendering.OpenGL.Raw.ARB.ShaderStorageBufferObject,

src/Graphics/Rendering/OpenGL/Raw/ARB.hs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ module Graphics.Rendering.OpenGL.Raw.ARB (
9090
module Graphics.Rendering.OpenGL.Raw.ARB.TransformFeedback3, -- #94
9191
module Graphics.Rendering.OpenGL.Raw.ARB.ES2Compatibility, -- #95
9292
module Graphics.Rendering.OpenGL.Raw.ARB.GetProgramBinary, -- #96
93+
module Graphics.Rendering.OpenGL.Raw.ARB.SeparateShaderObjects, -- #97
9394
module Graphics.Rendering.OpenGL.Raw.ARB.ShaderAtomicCounters, -- #114
9495
module Graphics.Rendering.OpenGL.Raw.ARB.ComputeShader, -- #122
9596
module Graphics.Rendering.OpenGL.Raw.ARB.ES3Compatibility, -- #127
@@ -169,6 +170,7 @@ import Graphics.Rendering.OpenGL.Raw.ARB.TessellationShader
169170
import Graphics.Rendering.OpenGL.Raw.ARB.TransformFeedback3
170171
import Graphics.Rendering.OpenGL.Raw.ARB.ES2Compatibility
171172
import Graphics.Rendering.OpenGL.Raw.ARB.GetProgramBinary
173+
import Graphics.Rendering.OpenGL.Raw.ARB.SeparateShaderObjects
172174
import Graphics.Rendering.OpenGL.Raw.ARB.ShaderAtomicCounters
173175
import Graphics.Rendering.OpenGL.Raw.ARB.ComputeShader
174176
import Graphics.Rendering.OpenGL.Raw.ARB.ES3Compatibility
Lines changed: 188 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,188 @@
1+
{-# LANGUAGE ForeignFunctionInterface, CPP #-}
2+
--------------------------------------------------------------------------------
3+
-- |
4+
-- Module : Graphics.Rendering.OpenGL.Raw.ARB.SeparateShaderObjects
5+
-- Copyright : (c) Sven Panne 2013
6+
-- License : BSD3
7+
--
8+
-- Maintainer : Sven Panne <[email protected]>
9+
-- Stability : stable
10+
-- Portability : portable
11+
--
12+
-- All raw functions and tokens from the separate_shader_objects, see
13+
-- <http://www.opengl.org/registry/specs/ARB/separate_shader_objects.txt>.
14+
--
15+
--------------------------------------------------------------------------------
16+
17+
module Graphics.Rendering.OpenGL.Raw.ARB.SeparateShaderObjects (
18+
-- * Functions
19+
glUseProgramStages,
20+
glActiveShaderProgram,
21+
glCreateShaderProgramv,
22+
glBindProgramPipeline,
23+
glDeleteProgramPipelines,
24+
glGenProgramPipelines,
25+
glIsProgramPipeline,
26+
glGetProgramPipelineiv,
27+
glProgramUniform1i,
28+
glProgramUniform1iv,
29+
glProgramUniform1f,
30+
glProgramUniform1fv,
31+
glProgramUniform1d,
32+
glProgramUniform1dv,
33+
glProgramUniform1ui,
34+
glProgramUniform1uiv,
35+
glProgramUniform2i,
36+
glProgramUniform2iv,
37+
glProgramUniform2f,
38+
glProgramUniform2fv,
39+
glProgramUniform2d,
40+
glProgramUniform2dv,
41+
glProgramUniform2ui,
42+
glProgramUniform2uiv,
43+
glProgramUniform3i,
44+
glProgramUniform3iv,
45+
glProgramUniform3f,
46+
glProgramUniform3fv,
47+
glProgramUniform3d,
48+
glProgramUniform3dv,
49+
glProgramUniform3ui,
50+
glProgramUniform3uiv,
51+
glProgramUniform4i,
52+
glProgramUniform4iv,
53+
glProgramUniform4f,
54+
glProgramUniform4fv,
55+
glProgramUniform4d,
56+
glProgramUniform4dv,
57+
glProgramUniform4ui,
58+
glProgramUniform4uiv,
59+
glProgramUniformMatrix2fv,
60+
glProgramUniformMatrix3fv,
61+
glProgramUniformMatrix4fv,
62+
glProgramUniformMatrix2dv,
63+
glProgramUniformMatrix3dv,
64+
glProgramUniformMatrix4dv,
65+
glProgramUniformMatrix2x3fv,
66+
glProgramUniformMatrix3x2fv,
67+
glProgramUniformMatrix2x4fv,
68+
glProgramUniformMatrix4x2fv,
69+
glProgramUniformMatrix3x4fv,
70+
glProgramUniformMatrix4x3fv,
71+
glProgramUniformMatrix2x3dv,
72+
glProgramUniformMatrix3x2dv,
73+
glProgramUniformMatrix2x4dv,
74+
glProgramUniformMatrix4x2dv,
75+
glProgramUniformMatrix3x4dv,
76+
glProgramUniformMatrix4x3dv,
77+
glValidateProgramPipeline,
78+
glGetProgramPipelineInfoLog,
79+
80+
-- * Tokens
81+
gl_VERTEX_SHADER_BIT,
82+
gl_FRAGMENT_SHADER_BIT,
83+
gl_GEOMETRY_SHADER_BIT,
84+
gl_TESS_CONTROL_SHADER_BIT,
85+
gl_TESS_EVALUATION_SHADER_BIT,
86+
gl_ALL_SHADER_BITS,
87+
gl_PROGRAM_SEPARABLE,
88+
gl_ACTIVE_PROGRAM,
89+
gl_PROGRAM_PIPELINE_BINDING
90+
) where
91+
92+
import Foreign.C.Types
93+
import Foreign.Ptr
94+
import Graphics.Rendering.OpenGL.Raw.Extensions
95+
import Graphics.Rendering.OpenGL.Raw.Core31.Types
96+
97+
#include "HsOpenGLRaw.h"
98+
99+
extensionNameString :: String
100+
extensionNameString = "GL_separate_shader_objects"
101+
102+
EXTENSION_ENTRY(glUseProgramStages,GLuint -> GLbitfield -> GLuint -> IO ())
103+
EXTENSION_ENTRY(glActiveShaderProgram,GLuint -> GLuint -> IO ())
104+
EXTENSION_ENTRY(glCreateShaderProgramv,GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
105+
EXTENSION_ENTRY(glBindProgramPipeline,GLuint -> IO ())
106+
EXTENSION_ENTRY(glDeleteProgramPipelines,GLsizei -> Ptr GLuint -> IO ())
107+
EXTENSION_ENTRY(glGenProgramPipelines,GLsizei -> Ptr GLuint -> IO ())
108+
EXTENSION_ENTRY(glIsProgramPipeline,GLuint -> IO GLboolean)
109+
EXTENSION_ENTRY(glGetProgramPipelineiv,GLuint -> GLenum -> Ptr GLint -> IO ())
110+
EXTENSION_ENTRY(glProgramUniform1i,GLuint -> GLint -> GLint -> IO ())
111+
EXTENSION_ENTRY(glProgramUniform1iv,GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
112+
EXTENSION_ENTRY(glProgramUniform1f,GLuint -> GLint -> GLfloat -> IO ())
113+
EXTENSION_ENTRY(glProgramUniform1fv,GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
114+
EXTENSION_ENTRY(glProgramUniform1d,GLuint -> GLint -> GLdouble -> IO ())
115+
EXTENSION_ENTRY(glProgramUniform1dv,GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
116+
EXTENSION_ENTRY(glProgramUniform1ui,GLuint -> GLint -> GLuint -> IO ())
117+
EXTENSION_ENTRY(glProgramUniform1uiv,GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
118+
EXTENSION_ENTRY(glProgramUniform2i,GLuint -> GLint -> GLint -> GLint -> IO ())
119+
EXTENSION_ENTRY(glProgramUniform2iv,GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
120+
EXTENSION_ENTRY(glProgramUniform2f,GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
121+
EXTENSION_ENTRY(glProgramUniform2fv,GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
122+
EXTENSION_ENTRY(glProgramUniform2d,GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
123+
EXTENSION_ENTRY(glProgramUniform2dv,GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
124+
EXTENSION_ENTRY(glProgramUniform2ui,GLuint -> GLint -> GLuint -> GLuint -> IO ())
125+
EXTENSION_ENTRY(glProgramUniform2uiv,GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
126+
EXTENSION_ENTRY(glProgramUniform3i,GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
127+
EXTENSION_ENTRY(glProgramUniform3iv,GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
128+
EXTENSION_ENTRY(glProgramUniform3f,GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
129+
EXTENSION_ENTRY(glProgramUniform3fv,GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
130+
EXTENSION_ENTRY(glProgramUniform3d,GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
131+
EXTENSION_ENTRY(glProgramUniform3dv,GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
132+
EXTENSION_ENTRY(glProgramUniform3ui,GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
133+
EXTENSION_ENTRY(glProgramUniform3uiv,GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
134+
EXTENSION_ENTRY(glProgramUniform4i,GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
135+
EXTENSION_ENTRY(glProgramUniform4iv,GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
136+
EXTENSION_ENTRY(glProgramUniform4f,GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
137+
EXTENSION_ENTRY(glProgramUniform4fv,GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
138+
EXTENSION_ENTRY(glProgramUniform4d,GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
139+
EXTENSION_ENTRY(glProgramUniform4dv,GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
140+
EXTENSION_ENTRY(glProgramUniform4ui,GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
141+
EXTENSION_ENTRY(glProgramUniform4uiv,GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
142+
EXTENSION_ENTRY(glProgramUniformMatrix2fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
143+
EXTENSION_ENTRY(glProgramUniformMatrix3fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
144+
EXTENSION_ENTRY(glProgramUniformMatrix4fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
145+
EXTENSION_ENTRY(glProgramUniformMatrix2dv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
146+
EXTENSION_ENTRY(glProgramUniformMatrix3dv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
147+
EXTENSION_ENTRY(glProgramUniformMatrix4dv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
148+
EXTENSION_ENTRY(glProgramUniformMatrix2x3fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
149+
EXTENSION_ENTRY(glProgramUniformMatrix3x2fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
150+
EXTENSION_ENTRY(glProgramUniformMatrix2x4fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
151+
EXTENSION_ENTRY(glProgramUniformMatrix4x2fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
152+
EXTENSION_ENTRY(glProgramUniformMatrix3x4fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
153+
EXTENSION_ENTRY(glProgramUniformMatrix4x3fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
154+
EXTENSION_ENTRY(glProgramUniformMatrix2x3dv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
155+
EXTENSION_ENTRY(glProgramUniformMatrix3x2dv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
156+
EXTENSION_ENTRY(glProgramUniformMatrix2x4dv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
157+
EXTENSION_ENTRY(glProgramUniformMatrix4x2dv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
158+
EXTENSION_ENTRY(glProgramUniformMatrix3x4dv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
159+
EXTENSION_ENTRY(glProgramUniformMatrix4x3dv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
160+
EXTENSION_ENTRY(glValidateProgramPipeline,GLuint -> IO ())
161+
EXTENSION_ENTRY(glGetProgramPipelineInfoLog,GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
162+
163+
gl_VERTEX_SHADER_BIT :: GLbitfield
164+
gl_VERTEX_SHADER_BIT = 0x00000001
165+
166+
gl_FRAGMENT_SHADER_BIT :: GLbitfield
167+
gl_FRAGMENT_SHADER_BIT = 0x00000002
168+
169+
gl_GEOMETRY_SHADER_BIT :: GLbitfield
170+
gl_GEOMETRY_SHADER_BIT = 0x00000004
171+
172+
gl_TESS_CONTROL_SHADER_BIT :: GLbitfield
173+
gl_TESS_CONTROL_SHADER_BIT = 0x00000008
174+
175+
gl_TESS_EVALUATION_SHADER_BIT :: GLbitfield
176+
gl_TESS_EVALUATION_SHADER_BIT = 0x00000010
177+
178+
gl_ALL_SHADER_BITS :: GLbitfield
179+
gl_ALL_SHADER_BITS = 0xFFFFFFFF
180+
181+
gl_PROGRAM_SEPARABLE :: GLenum
182+
gl_PROGRAM_SEPARABLE = 0x8258
183+
184+
gl_ACTIVE_PROGRAM :: GLenum
185+
gl_ACTIVE_PROGRAM = 0x8259
186+
187+
gl_PROGRAM_PIPELINE_BINDING :: GLenum
188+
gl_PROGRAM_PIPELINE_BINDING = 0x825A

src/Graphics/Rendering/OpenGL/Raw/EXT/DirectStateAccess.hs

Lines changed: 2 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -214,8 +214,9 @@ module Graphics.Rendering.OpenGL.Raw.EXT.DirectStateAccess (
214214
gl_PROGRAM_MATRIX_STACK_DEPTH
215215
) where
216216

217-
import Foreign.Ptr
218217
import Foreign.C.Types
218+
import Foreign.Ptr
219+
import Graphics.Rendering.OpenGL.Raw.ARB.SeparateShaderObjects
219220
import Graphics.Rendering.OpenGL.Raw.Core31.Types
220221
import Graphics.Rendering.OpenGL.Raw.Extensions
221222

@@ -342,31 +343,6 @@ EXTENSION_ENTRY(glUnmapNamedBuffer,GLuint -> IO GLboolean)
342343
EXTENSION_ENTRY(glGetNamedBufferParameteriv,GLuint -> GLenum -> Ptr GLint -> IO ())
343344
EXTENSION_ENTRY(glGetNamedBufferPointerv,GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
344345
EXTENSION_ENTRY(glGetNamedBufferSubData,GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
345-
EXTENSION_ENTRY(glProgramUniform1f,GLuint -> GLint -> GLfloat -> IO ())
346-
EXTENSION_ENTRY(glProgramUniform2f,GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
347-
EXTENSION_ENTRY(glProgramUniform3f,GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
348-
EXTENSION_ENTRY(glProgramUniform4f,GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
349-
EXTENSION_ENTRY(glProgramUniform1i,GLuint -> GLint -> GLint -> IO ())
350-
EXTENSION_ENTRY(glProgramUniform2i,GLuint -> GLint -> GLint -> GLint -> IO ())
351-
EXTENSION_ENTRY(glProgramUniform3i,GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
352-
EXTENSION_ENTRY(glProgramUniform4i,GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
353-
EXTENSION_ENTRY(glProgramUniform1fv,GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
354-
EXTENSION_ENTRY(glProgramUniform2fv,GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
355-
EXTENSION_ENTRY(glProgramUniform3fv,GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
356-
EXTENSION_ENTRY(glProgramUniform4fv,GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
357-
EXTENSION_ENTRY(glProgramUniform1iv,GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
358-
EXTENSION_ENTRY(glProgramUniform2iv,GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
359-
EXTENSION_ENTRY(glProgramUniform3iv,GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
360-
EXTENSION_ENTRY(glProgramUniform4iv,GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
361-
EXTENSION_ENTRY(glProgramUniformMatrix2fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
362-
EXTENSION_ENTRY(glProgramUniformMatrix3fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
363-
EXTENSION_ENTRY(glProgramUniformMatrix4fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
364-
EXTENSION_ENTRY(glProgramUniformMatrix2x3fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
365-
EXTENSION_ENTRY(glProgramUniformMatrix3x2fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
366-
EXTENSION_ENTRY(glProgramUniformMatrix2x4fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
367-
EXTENSION_ENTRY(glProgramUniformMatrix4x2fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
368-
EXTENSION_ENTRY(glProgramUniformMatrix3x4fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
369-
EXTENSION_ENTRY(glProgramUniformMatrix4x3fv,GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
370346
EXTENSION_ENTRY(glTextureBuffer,GLuint -> GLenum -> GLenum -> GLuint -> IO ())
371347
EXTENSION_ENTRY(glMultiTexBuffer,GLenum -> GLenum -> GLenum -> GLuint -> IO ())
372348
EXTENSION_ENTRY(glTextureParameterIiv,GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
@@ -377,14 +353,6 @@ EXTENSION_ENTRY(glMultiTexParameterIiv,GLenum -> GLenum -> GLenum -> Ptr GLint -
377353
EXTENSION_ENTRY(glMultiTexParameterIuiv,GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
378354
EXTENSION_ENTRY(glGetMultiTexParameterIiv,GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
379355
EXTENSION_ENTRY(glGetMultiTexParameterIuiv,GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
380-
EXTENSION_ENTRY(glProgramUniform1ui,GLuint -> GLint -> GLuint -> IO ())
381-
EXTENSION_ENTRY(glProgramUniform2ui,GLuint -> GLint -> GLuint -> GLuint -> IO ())
382-
EXTENSION_ENTRY(glProgramUniform3ui,GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
383-
EXTENSION_ENTRY(glProgramUniform4ui,GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
384-
EXTENSION_ENTRY(glProgramUniform1uiv,GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
385-
EXTENSION_ENTRY(glProgramUniform2uiv,GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
386-
EXTENSION_ENTRY(glProgramUniform3uiv,GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
387-
EXTENSION_ENTRY(glProgramUniform4uiv,GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
388356
EXTENSION_ENTRY(glNamedProgramLocalParameters4fv,GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
389357
EXTENSION_ENTRY(glNamedProgramLocalParameterI4i,GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
390358
EXTENSION_ENTRY(glNamedProgramLocalParameterI4iv,GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())

0 commit comments

Comments
 (0)