| | '''OpenGL extension AMD.name_gen_delete |
| | |
| | This module customises the behaviour of the |
| | OpenGL.raw.GL.AMD.name_gen_delete to provide a more |
| | Python-friendly API |
| | |
| | Overview (from the spec) |
| | |
| | This extension simply creates 2 new entry-points that name generic |
| | creation and deletion of names. The intent is to go away from API |
| | functionality that provides a create/delete function for each specific |
| | object. |
| | |
| | For example: |
| | glGenTextures/glDeleteTextures/glIsTexture |
| | glGenBuffers/glDeleteBuffers/IsBuffer |
| | glGenFramebuffers/glDeleteFramebuffers/IsFramebuffer |
| | |
| | Instead, everything is created using one entry-point GenNamesAMD and |
| | everything is now deleted with another entry-point DeleteNamesAMD with |
| | the appropriate identifier set. In addition, everything can now be |
| | queried with IsNameAMD. |
| | |
| | This alleviates the problem we may eventually encounter where we have |
| | many Gen/Delete/Is functions where 3 might suffice. All that is needed |
| | in the new case is to add a valid identifier to the accepted parameters |
| | list. |
| | |
| | |
| | The official definition of this extension is available here: |
| | http://www.opengl.org/registry/specs/AMD/name_gen_delete.txt |
| | ''' |
| | from OpenGL import platform, constant, arrays |
| | from OpenGL import extensions, wrapper |
| | import ctypes |
| | from OpenGL.raw.GL import _types, _glgets |
| | from OpenGL.raw.GL.AMD.name_gen_delete import * |
| | from OpenGL.raw.GL.AMD.name_gen_delete import _EXTENSION_NAME |
| |
|
| | def glInitNameGenDeleteAMD(): |
| | '''Return boolean indicating whether this extension is available''' |
| | from OpenGL import extensions |
| | return extensions.hasGLExtension( _EXTENSION_NAME ) |
| |
|
| | glGenNamesAMD=wrapper.wrapper(glGenNamesAMD).setOutput( |
| | 'names',size=lambda x:(x,),pnameArg='num',orPassIn=True |
| | ) |
| | |
| | glDeleteNamesAMD=wrapper.wrapper(glDeleteNamesAMD).setInputArraySize( |
| | 'names', None |
| | ) |
| | |