
    3j                         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SS9rg)a  OpenGL extension APPLE.texture_range

This module customises the behaviour of the 
OpenGL.raw.GL.APPLE.texture_range to provide a more 
Python-friendly API

Overview (from the spec)
        
        This extension provides a method to specify the range of client address
        space that may be used by a texture.  In general, the storage size of a
        texture may be easily determined by the texture's data type and geometry.
        However, driver optimizations may be realized if an extended address
        range is specified to encompass the storage of multiple textures, or to
        encompass potential future changes in the size of a texture.  A typical
        usage of this extension is to specify an identical address range for
        several textures in a particular working set that encompasses the storage
        of all the textures in the set.  This allows the driver to make a single
        memory mapping for all of the textures.
        
        Further, a mechanism is provided to allow the application to give the GL
        driver a hint regarding the storage requirements of the texture data.

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/APPLE/texture_range.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    W/home/wildlama/miniconda3/lib/python3.13/site-packages/OpenGL/GL/APPLE/texture_range.pyglInitTextureRangeAPPLEr   !   s    !$$o77    pointerparams)   T)sizeorPassIn)__doc__r   r   r   r   r   r   ctypesOpenGL.raw.GLr   r	   !OpenGL.raw.GL.APPLE.texture_ranger   r   glTextureRangeAPPLEsetInputArraySizeglGetTexParameterPointervAPPLE	setOutput r   r   <module>r!      sr   2 . - &  ) / =8 OO$78JJt   '/MNXX$  Y   r   