jexzeb's picture
Upload folder using huggingface_hub
b6068b4
'''OpenGL extension SGIX.pixel_tiles
This module customises the behaviour of the
OpenGL.raw.GL.SGIX.pixel_tiles to provide a more
Python-friendly API
Overview (from the spec)
This extension deals with the interaction of existing GL functions that
read pixels from memory, applications that use grids of tiles of pixels,
and convolution.
Applications that deal with large multi-dimensional images sometimes
break the image into a grid of rectangular tiles of pixels. Such an
approach can help control memory use and expedite roaming through an
image that is large with respect to the available memory.
GL functions that cause pixels to be read from memory (e.g., DrawPixels
and TexImage2D) assume the pixels are stored as a single series of rows
of pixels. The grid of tiles is essentially a sequence of the structures
that the pixel reading functions assume. When an application that uses
tiling uses a GL function such as DrawPixels, it must iterate
through the tiles, either coalescing the tiles into a single tile in
preparation for a single GL call or calling the GL function for each tile.
The convolution operation imposes strict ordering on the way pixels
in a subimage that crosses tile boundaries must be transferred: the rows
of pixels transferred must span the entire subimage. Applications
that use tiles of pixels and convolution must copy the subimage to be
transferred from the grid of tiles to a contiguous region, then pass the
now-contiguous rows of pixels to the convolution function. If the
coalescing of tiles is not needed for some other reason or is not a
side effect of some necessary operation, it is just redundant movement
of the pixels.
This extension seeks to eliminate the extra copy of data by extending the
existing GL functions to accept, as a source of pixels in memory, a
grid of tiles of pixels in addition to the current sequence of rows
of pixels.
The official definition of this extension is available here:
http://www.opengl.org/registry/specs/SGIX/pixel_tiles.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.SGIX.pixel_tiles import *
from OpenGL.raw.GL.SGIX.pixel_tiles import _EXTENSION_NAME
def glInitPixelTilesSGIX():
'''Return boolean indicating whether this extension is available'''
from OpenGL import extensions
return extensions.hasGLExtension( _EXTENSION_NAME )
### END AUTOGENERATED SECTION