'''OpenGL extension EXT.sRGB

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

Overview (from the spec)
	
	The sRGB color space is based on typical (non-linear) response of the human
	eye.  It has been standardized by the International Electrotechnical 
	Commission (IEC) as IEC 61966-2-1.  The transfer function of sRGB roughly
	corresponds to a power function with a gamma of 2.2.
	
	FRAMEBUFFERS
	
	OpenGL assumes framebuffer color components are stored in a linear color
	space.  In particular, framebuffer blending is a linear operation.
	
	This extension adds a framebuffer capability for sRGB framebuffer update
	and blending.  When blending is disabled but the new sRGB updated mode is
	enabled (assume the framebuffer supports the capability), high-precision 
	linear color component values for red, green, and blue generated by
	fragment coloring are encoded for sRGB prior to being written into the
	framebuffer.  When blending is enabled along with the new sRGB update mode,
	red, green, and blue framebuffer color components are treated as sRGB
	values that are converted to linear color values, blended with the high-
	precision color values generated by fragment coloring, and then the blend
	result is encoded for sRGB just prior to being written into the 
	framebuffer.
	
	TEXTURES
	
	Conventional texture formats assume a linear color space.  So for a 
	conventional internal texture format such as GL_RGB8, the 256 discrete
	values for each 8-bit color component map linearly and uniformly to the
	[0,1] range.

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/EXT/sRGB.txt
'''
from OpenGL import platform, constant, arrays
from OpenGL import extensions, wrapper
import ctypes
from OpenGL.raw.GLES2 import _types, _glgets
from OpenGL.raw.GLES2.EXT.sRGB import *
from OpenGL.raw.GLES2.EXT.sRGB import _EXTENSION_NAME

def glInitSrgbEXT():
    '''Return boolean indicating whether this extension is available'''
    from OpenGL import extensions
    return extensions.hasGLExtension( _EXTENSION_NAME )


### END AUTOGENERATED SECTION