ó
    š3jg
  ã                   óè   • S r SSKJrJrJr  SSKJrJr  SSKrSSKJ	r	J
r
  SSK7  SSKJr  S r\R                  " \5      R                  S	S5      r\R                  " \5      R                  S	S5      rg)
aî  OpenGL extension EXT.clear_texture

This module customises the behaviour of the 
OpenGL.raw.GLES2.EXT.clear_texture to provide a more 
Python-friendly API

Overview (from the spec)
        
        Texture objects are fundamental to the operation of OpenGL. They are
        used as a source for texture sampling and destination for rendering
        as well as being accessed in shaders for image load/store operations
        It is also possible to invalidate the contents of a texture. It is
        currently only possible to set texture image data to known values by
        uploading some or all of a image array from application memory or by
        attaching it to a framebuffer object and using the Clear or ClearBuffer
        commands.
        
        Both uploading initial texture data and clearing by attaching to a
        framebuffer have potential disadvantages when one simply wants to
        initialize texture data to a known value. Uploading initial data
        requires the application to allocate a (potentially large) chunk
        of memory and transferring that to the GL.  This can be a costly
        operation both in terms of memory bandwidth and power usage.
        Alternatively, attaching a texture level to a framebuffer to clear it
        may not be possible if the texture format isn't supported for
        rendering, or even if it is, attaching the image to a framebuffer object
        may cause the texture to be allocated in certain types of memory, which
        it may otherwise not need to be placed in.
        
        This extension solves these problems by providing a mechanism whereby
        the contents of a texture image array can be set to known values by
        using the ClearTexImageEXT or ClearTexSubImageEXT commands.  These commands
        can also be useful for initializing an image that will be used for
        atomic shader operations.

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/EXT/clear_texture.txt
é    )ÚplatformÚconstantÚarrays)Ú
extensionsÚwrapperN)Ú_typesÚ_glgets)Ú*)Ú_EXTENSION_NAMEc                  ó:   • SSK Jn   U R                  " [        5      $ )z=Return boolean indicating whether this extension is availabler   ©r   )ÚOpenGLr   ÚhasGLExtensionr   r   s    ÚX/home/wildlama/miniconda3/lib/python3.13/site-packages/OpenGL/GLES2/EXT/clear_texture.pyÚglInitClearTextureEXTr   .   s   € å!Ø×$Ò$¤oÓ7Ð7ó    Údata)Ú__doc__r   r   r   r   r   r   ÚctypesÚOpenGL.raw.GLES2r   r	   Ú"OpenGL.raw.GLES2.EXT.clear_texturer   r   ÚglClearTexImageEXTÚsetInputArraySizeÚglClearTexSubImageEXT© r   r   Ú<module>r      sk   ðñ%÷L .Ñ -ß &Û ß ,Ü 0Ý >ò8ð —?’?Ð#5Ó6×HÑHØ
ˆDóÐ ð —o’oÐ&;Ó<×NÑNØ
ˆDóÑ r   