'''OpenGL extension MESA.framebuffer_flip_y

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

Overview (from the spec)
	
	This extension defines a new framebuffer parameter,
	GL_FRAMEBUFFER_FLIP_Y_MESA, that changes the behavior of the reads and
	writes to the framebuffer attachment points. When GL_FRAMEBUFFER_FLIP_Y_MESA
	is GL_TRUE, render commands and pixel transfer operations access the
	backing store of each attachment point with an y-inverted coordinate
	system. This y-inversion is relative to the coordinate system set when
	GL_FRAMEBUFFER_FLIP_Y_MESA is GL_FALSE.
	
	Access through TexSubImage2D and similar calls will notice the effect of
	the flip when they are not attached to framebuffer objects because
	GL_FRAMEBUFFER_FLIP_Y_MESA is associated with the framebuffer object and
	not the attachment points.

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/MESA/framebuffer_flip_y.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.MESA.framebuffer_flip_y import *
from OpenGL.raw.GL.MESA.framebuffer_flip_y import _EXTENSION_NAME

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

# INPUT glGetFramebufferParameterivMESA.params size not checked against 'pname'
glGetFramebufferParameterivMESA=wrapper.wrapper(glGetFramebufferParameterivMESA).setInputArraySize(
    'params', None
)
### END AUTOGENERATED SECTION