'''Autogenerated by get_gl_extensions script, do not edit!'''
from OpenGL import platform as _p, constants as _cs, arrays
from OpenGL.GL import glget
import ctypes
EXTENSION_NAME = 'GL_NV_vdpau_interop'
def _f( function ):
    return _p.createFunction( function,_p.GL,'GL_NV_vdpau_interop',False)
_p.unpack_constants( """GL_SURFACE_STATE_NV 0x86EB
GL_SURFACE_REGISTERED_NV 0x86FD
GL_SURFACE_MAPPED_NV 0x8700
GL_WRITE_DISCARD_NV 0x88BE""", globals())
@_f
@_p.types(None,ctypes.c_void_p,ctypes.c_void_p)
def glVDPAUInitNV(vdpDevice,getProcAddress):pass
@_f
@_p.types(None,)
def glVDPAUFiniNV():pass
@_f
@_p.types(_cs.GLvdpauSurfaceNV,ctypes.c_void_p,_cs.GLenum,_cs.GLsizei,arrays.GLuintArray)
def glVDPAURegisterVideoSurfaceNV(vdpSurface,target,numTextureNames,textureNames):pass
@_f
@_p.types(_cs.GLvdpauSurfaceNV,ctypes.c_void_p,_cs.GLenum,_cs.GLsizei,arrays.GLuintArray)
def glVDPAURegisterOutputSurfaceNV(vdpSurface,target,numTextureNames,textureNames):pass
@_f
@_p.types(None,_cs.GLvdpauSurfaceNV)
def glVDPAUIsSurfaceNV(surface):pass
@_f
@_p.types(None,_cs.GLvdpauSurfaceNV)
def glVDPAUUnregisterSurfaceNV(surface):pass
@_f
@_p.types(None,_cs.GLvdpauSurfaceNV,_cs.GLenum,_cs.GLsizei,arrays.GLsizeiArray,arrays.GLintArray)
def glVDPAUGetSurfaceivNV(surface,pname,bufSize,length,values):pass
@_f
@_p.types(None,_cs.GLvdpauSurfaceNV,_cs.GLenum)
def glVDPAUSurfaceAccessNV(surface,access):pass
@_f
@_p.types(None,_cs.GLsizei,ctypes.POINTER(_cs.GLvdpauSurfaceNV))
def glVDPAUMapSurfacesNV(numSurfaces,surfaces):pass
@_f
@_p.types(None,_cs.GLsizei,ctypes.POINTER(_cs.GLvdpauSurfaceNV))
def glVDPAUUnmapSurfacesNV(numSurface,surfaces):pass


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