ó
    š3jw  ã                   ó`   • 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g)	a  OpenGL extension APPLE.flush_buffer_range

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

Overview (from the spec)
        
        APPLE_flush_buffer_range expands the buffer object API to allow greater
        performance when a client application only needs to write to a sub-range
        of a buffer object. To that end, this extension introduces two new buffer
        object features: non-serialized buffer modification and explicit sub-range
        flushing for mapped buffer objects.
        
        OpenGL requires that commands occur in a FIFO manner meaning that any
        changes to buffer objects either block until the data has been processed by
        the OpenGL pipeline or else create extra copies to avoid such a block.  By
        providing a method to asynchronously modify buffer object data, an
        application is then able to manage the synchronization points themselves
        and modify ranges of data contained by a buffer object even though OpenGL
        might still be using other parts of it.
        
        This extension also provides a method for explicitly flushing ranges of a
        mapped buffer object so OpenGL does not have to assume that the entire
        range may have been modified.
        
        Affects ARB_vertex_buffer_object, ARB_pixel_buffer_object and OpenGL 1.5
        Buffer Objects.

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/APPLE/flush_buffer_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    Ú\/home/wildlama/miniconda3/lib/python3.13/site-packages/OpenGL/GL/APPLE/flush_buffer_range.pyÚglInitFlushBufferRangeAPPLEr   (   s   € å!Ø×$Ò$¤oÓ7Ð7ó    )Ú__doc__r   r   r   r   r   r   ÚctypesÚOpenGL.raw.GLr   r	   Ú&OpenGL.raw.GL.APPLE.flush_buffer_ranger   r   © r   r   Ú<module>r      s'   ðñ÷@ .Ñ -ß &Û ß )Ü 4Ý Bó8r   