/OpenGL/GLES3/VERSION/GLES3_3_0.py

https://github.com/mcfletch/pyopengl · Python · 248 lines · 196 code · 3 blank · 49 comment · 0 complexity · 1da76476c1054d64329924189662b8cf MD5 · raw file

  1. '''OpenGL extension VERSION.GLES3_3_0
  2. This module customises the behaviour of the
  3. OpenGL.raw.GLES3.VERSION.GLES3_3_0 to provide a more
  4. Python-friendly API
  5. The official definition of this extension is available here:
  6. http://www.opengl.org/registry/specs/VERSION/GLES3_3_0.txt
  7. '''
  8. from OpenGL import platform, constant, arrays
  9. from OpenGL import extensions, wrapper
  10. import ctypes
  11. from OpenGL.raw.GLES3 import _types, _glgets
  12. from OpenGL.raw.GLES3.VERSION.GLES3_3_0 import *
  13. from OpenGL.raw.GLES3.VERSION.GLES3_3_0 import _EXTENSION_NAME
  14. def glInitGles330VERSION():
  15. '''Return boolean indicating whether this extension is available'''
  16. from OpenGL import extensions
  17. return extensions.hasGLExtension( _EXTENSION_NAME )
  18. # INPUT glDrawRangeElements.indices size not checked against 'count,type'
  19. glDrawRangeElements=wrapper.wrapper(glDrawRangeElements).setInputArraySize(
  20. 'indices', None
  21. )
  22. # INPUT glTexImage3D.pixels size not checked against 'format,type,width,height,depth'
  23. glTexImage3D=wrapper.wrapper(glTexImage3D).setInputArraySize(
  24. 'pixels', None
  25. )
  26. # INPUT glTexSubImage3D.pixels size not checked against 'format,type,width,height,depth'
  27. glTexSubImage3D=wrapper.wrapper(glTexSubImage3D).setInputArraySize(
  28. 'pixels', None
  29. )
  30. # INPUT glCompressedTexImage3D.data size not checked against imageSize
  31. glCompressedTexImage3D=wrapper.wrapper(glCompressedTexImage3D).setInputArraySize(
  32. 'data', None
  33. )
  34. # INPUT glCompressedTexSubImage3D.data size not checked against imageSize
  35. glCompressedTexSubImage3D=wrapper.wrapper(glCompressedTexSubImage3D).setInputArraySize(
  36. 'data', None
  37. )
  38. glGenQueries=wrapper.wrapper(glGenQueries).setOutput(
  39. 'ids',size=lambda x:(x,),pnameArg='n',orPassIn=True
  40. )
  41. # INPUT glDeleteQueries.ids size not checked against n
  42. glDeleteQueries=wrapper.wrapper(glDeleteQueries).setInputArraySize(
  43. 'ids', None
  44. )
  45. glGetQueryiv=wrapper.wrapper(glGetQueryiv).setOutput(
  46. 'params',size=_glgets._glget_size_mapping,pnameArg='pname',orPassIn=True
  47. )
  48. glGetQueryObjectuiv=wrapper.wrapper(glGetQueryObjectuiv).setOutput(
  49. 'params',size=_glgets._glget_size_mapping,pnameArg='pname',orPassIn=True
  50. )
  51. glGetBufferPointerv=wrapper.wrapper(glGetBufferPointerv).setOutput(
  52. 'params',size=(1,),orPassIn=True
  53. )
  54. # INPUT glDrawBuffers.bufs size not checked against n
  55. glDrawBuffers=wrapper.wrapper(glDrawBuffers).setInputArraySize(
  56. 'bufs', None
  57. )
  58. # INPUT glUniformMatrix2x3fv.value size not checked against count*6
  59. glUniformMatrix2x3fv=wrapper.wrapper(glUniformMatrix2x3fv).setInputArraySize(
  60. 'value', None
  61. )
  62. # INPUT glUniformMatrix3x2fv.value size not checked against count*6
  63. glUniformMatrix3x2fv=wrapper.wrapper(glUniformMatrix3x2fv).setInputArraySize(
  64. 'value', None
  65. )
  66. # INPUT glUniformMatrix2x4fv.value size not checked against count*8
  67. glUniformMatrix2x4fv=wrapper.wrapper(glUniformMatrix2x4fv).setInputArraySize(
  68. 'value', None
  69. )
  70. # INPUT glUniformMatrix4x2fv.value size not checked against count*8
  71. glUniformMatrix4x2fv=wrapper.wrapper(glUniformMatrix4x2fv).setInputArraySize(
  72. 'value', None
  73. )
  74. # INPUT glUniformMatrix3x4fv.value size not checked against count*12
  75. glUniformMatrix3x4fv=wrapper.wrapper(glUniformMatrix3x4fv).setInputArraySize(
  76. 'value', None
  77. )
  78. # INPUT glUniformMatrix4x3fv.value size not checked against count*12
  79. glUniformMatrix4x3fv=wrapper.wrapper(glUniformMatrix4x3fv).setInputArraySize(
  80. 'value', None
  81. )
  82. # INPUT glDeleteVertexArrays.arrays size not checked against n
  83. glDeleteVertexArrays=wrapper.wrapper(glDeleteVertexArrays).setInputArraySize(
  84. 'arrays', None
  85. )
  86. glGenVertexArrays=wrapper.wrapper(glGenVertexArrays).setOutput(
  87. 'arrays',size=lambda x:(x,),pnameArg='n',orPassIn=True
  88. )
  89. glGetIntegeri_v=wrapper.wrapper(glGetIntegeri_v).setOutput(
  90. 'data',size=_glgets._glget_size_mapping,pnameArg='target',orPassIn=True
  91. )
  92. # INPUT glTransformFeedbackVaryings.varyings size not checked against count
  93. glTransformFeedbackVaryings=wrapper.wrapper(glTransformFeedbackVaryings).setInputArraySize(
  94. 'varyings', None
  95. )
  96. glGetTransformFeedbackVarying=wrapper.wrapper(glGetTransformFeedbackVarying).setOutput(
  97. 'length',size=(1,),orPassIn=True
  98. ).setOutput(
  99. 'name',size=lambda x:(x,),pnameArg='bufSize',orPassIn=True
  100. ).setOutput(
  101. 'size',size=(1,),orPassIn=True
  102. ).setOutput(
  103. 'type',size=(1,),orPassIn=True
  104. )
  105. # INPUT glVertexAttribIPointer.pointer size not checked against 'size,type,stride'
  106. glVertexAttribIPointer=wrapper.wrapper(glVertexAttribIPointer).setInputArraySize(
  107. 'pointer', None
  108. )
  109. glGetVertexAttribIiv=wrapper.wrapper(glGetVertexAttribIiv).setOutput(
  110. 'params',size=(1,),orPassIn=True
  111. )
  112. glGetVertexAttribIuiv=wrapper.wrapper(glGetVertexAttribIuiv).setOutput(
  113. 'params',size=(1,),orPassIn=True
  114. )
  115. glVertexAttribI4iv=wrapper.wrapper(glVertexAttribI4iv).setInputArraySize(
  116. 'v', 4
  117. )
  118. glVertexAttribI4uiv=wrapper.wrapper(glVertexAttribI4uiv).setInputArraySize(
  119. 'v', 4
  120. )
  121. # OUTPUT glGetUniformuiv.params COMPSIZE(program, location)
  122. # INPUT glGetFragDataLocation.name size not checked against 'name'
  123. glGetFragDataLocation=wrapper.wrapper(glGetFragDataLocation).setInputArraySize(
  124. 'name', None
  125. )
  126. # INPUT glUniform1uiv.value size not checked against count
  127. glUniform1uiv=wrapper.wrapper(glUniform1uiv).setInputArraySize(
  128. 'value', None
  129. )
  130. # INPUT glUniform2uiv.value size not checked against count*2
  131. glUniform2uiv=wrapper.wrapper(glUniform2uiv).setInputArraySize(
  132. 'value', None
  133. )
  134. # INPUT glUniform3uiv.value size not checked against count*3
  135. glUniform3uiv=wrapper.wrapper(glUniform3uiv).setInputArraySize(
  136. 'value', None
  137. )
  138. # INPUT glUniform4uiv.value size not checked against count*4
  139. glUniform4uiv=wrapper.wrapper(glUniform4uiv).setInputArraySize(
  140. 'value', None
  141. )
  142. # INPUT glClearBufferiv.value size not checked against 'buffer'
  143. glClearBufferiv=wrapper.wrapper(glClearBufferiv).setInputArraySize(
  144. 'value', None
  145. )
  146. # INPUT glClearBufferuiv.value size not checked against 'buffer'
  147. glClearBufferuiv=wrapper.wrapper(glClearBufferuiv).setInputArraySize(
  148. 'value', None
  149. )
  150. # INPUT glClearBufferfv.value size not checked against 'buffer'
  151. glClearBufferfv=wrapper.wrapper(glClearBufferfv).setInputArraySize(
  152. 'value', None
  153. )
  154. # INPUT glGetUniformIndices.uniformNames size not checked against 'uniformCount'
  155. glGetUniformIndices=wrapper.wrapper(glGetUniformIndices).setOutput(
  156. 'uniformIndices',size=_glgets._glget_size_mapping,pnameArg='uniformCount',orPassIn=True
  157. ).setInputArraySize(
  158. 'uniformNames', None
  159. )
  160. # OUTPUT glGetActiveUniformsiv.params COMPSIZE(uniformCount, pname)
  161. # INPUT glGetActiveUniformsiv.uniformIndices size not checked against uniformCount
  162. glGetActiveUniformsiv=wrapper.wrapper(glGetActiveUniformsiv).setInputArraySize(
  163. 'uniformIndices', None
  164. )
  165. # INPUT glGetUniformBlockIndex.uniformBlockName size not checked against ''
  166. glGetUniformBlockIndex=wrapper.wrapper(glGetUniformBlockIndex).setInputArraySize(
  167. 'uniformBlockName', None
  168. )
  169. # OUTPUT glGetActiveUniformBlockiv.params COMPSIZE(program, uniformBlockIndex, pname)
  170. glGetActiveUniformBlockName=wrapper.wrapper(glGetActiveUniformBlockName).setOutput(
  171. 'length',size=(1,),orPassIn=True
  172. ).setOutput(
  173. 'uniformBlockName',size=lambda x:(x,),pnameArg='bufSize',orPassIn=True
  174. )
  175. # INPUT glDrawElementsInstanced.indices size not checked against 'count,type'
  176. glDrawElementsInstanced=wrapper.wrapper(glDrawElementsInstanced).setInputArraySize(
  177. 'indices', None
  178. )
  179. glGetInteger64v=wrapper.wrapper(glGetInteger64v).setOutput(
  180. 'data',size=_glgets._glget_size_mapping,pnameArg='pname',orPassIn=True
  181. )
  182. glGetSynciv=wrapper.wrapper(glGetSynciv).setOutput(
  183. 'length',size=(1,),orPassIn=True
  184. ).setOutput(
  185. 'values',size=lambda x:(x,),pnameArg='bufSize',orPassIn=True
  186. )
  187. glGetInteger64i_v=wrapper.wrapper(glGetInteger64i_v).setOutput(
  188. 'data',size=_glgets._glget_size_mapping,pnameArg='target',orPassIn=True
  189. )
  190. glGetBufferParameteri64v=wrapper.wrapper(glGetBufferParameteri64v).setOutput(
  191. 'params',size=_glgets._glget_size_mapping,pnameArg='pname',orPassIn=True
  192. )
  193. glGenSamplers=wrapper.wrapper(glGenSamplers).setOutput(
  194. 'samplers',size=lambda x:(x,),pnameArg='count',orPassIn=True
  195. )
  196. # INPUT glDeleteSamplers.samplers size not checked against count
  197. glDeleteSamplers=wrapper.wrapper(glDeleteSamplers).setInputArraySize(
  198. 'samplers', None
  199. )
  200. # INPUT glSamplerParameteriv.param size not checked against 'pname'
  201. glSamplerParameteriv=wrapper.wrapper(glSamplerParameteriv).setInputArraySize(
  202. 'param', None
  203. )
  204. # INPUT glSamplerParameterfv.param size not checked against 'pname'
  205. glSamplerParameterfv=wrapper.wrapper(glSamplerParameterfv).setInputArraySize(
  206. 'param', None
  207. )
  208. glGetSamplerParameteriv=wrapper.wrapper(glGetSamplerParameteriv).setOutput(
  209. 'params',size=_glgets._glget_size_mapping,pnameArg='pname',orPassIn=True
  210. )
  211. glGetSamplerParameterfv=wrapper.wrapper(glGetSamplerParameterfv).setOutput(
  212. 'params',size=_glgets._glget_size_mapping,pnameArg='pname',orPassIn=True
  213. )
  214. # INPUT glDeleteTransformFeedbacks.ids size not checked against n
  215. glDeleteTransformFeedbacks=wrapper.wrapper(glDeleteTransformFeedbacks).setInputArraySize(
  216. 'ids', None
  217. )
  218. glGenTransformFeedbacks=wrapper.wrapper(glGenTransformFeedbacks).setOutput(
  219. 'ids',size=lambda x:(x,),pnameArg='n',orPassIn=True
  220. )
  221. glGetProgramBinary=wrapper.wrapper(glGetProgramBinary).setOutput(
  222. 'binary',size=lambda x:(x,),pnameArg='bufSize',orPassIn=True
  223. ).setOutput(
  224. 'binaryFormat',size=(1,),orPassIn=True
  225. ).setOutput(
  226. 'length',size=(1,),orPassIn=True
  227. )
  228. # INPUT glProgramBinary.binary size not checked against length
  229. glProgramBinary=wrapper.wrapper(glProgramBinary).setInputArraySize(
  230. 'binary', None
  231. )
  232. # INPUT glInvalidateFramebuffer.attachments size not checked against numAttachments
  233. glInvalidateFramebuffer=wrapper.wrapper(glInvalidateFramebuffer).setInputArraySize(
  234. 'attachments', None
  235. )
  236. # INPUT glInvalidateSubFramebuffer.attachments size not checked against numAttachments
  237. glInvalidateSubFramebuffer=wrapper.wrapper(glInvalidateSubFramebuffer).setInputArraySize(
  238. 'attachments', None
  239. )
  240. glGetInternalformativ=wrapper.wrapper(glGetInternalformativ).setOutput(
  241. 'params',size=lambda x:(x,),pnameArg='bufSize',orPassIn=True
  242. )
  243. ### END AUTOGENERATED SECTION