'''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_vertex_program'
def _f( function ):
    return _p.createFunction( function,_p.GL,'GL_NV_vertex_program',False)
_p.unpack_constants( """GL_VERTEX_PROGRAM_NV 0x8620
GL_VERTEX_STATE_PROGRAM_NV 0x8621
GL_ATTRIB_ARRAY_SIZE_NV 0x8623
GL_ATTRIB_ARRAY_STRIDE_NV 0x8624
GL_ATTRIB_ARRAY_TYPE_NV 0x8625
GL_CURRENT_ATTRIB_NV 0x8626
GL_PROGRAM_LENGTH_NV 0x8627
GL_PROGRAM_STRING_NV 0x8628
GL_MODELVIEW_PROJECTION_NV 0x8629
GL_IDENTITY_NV 0x862A
GL_INVERSE_NV 0x862B
GL_TRANSPOSE_NV 0x862C
GL_INVERSE_TRANSPOSE_NV 0x862D
GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E
GL_MAX_TRACK_MATRICES_NV 0x862F
GL_MATRIX0_NV 0x8630
GL_MATRIX1_NV 0x8631
GL_MATRIX2_NV 0x8632
GL_MATRIX3_NV 0x8633
GL_MATRIX4_NV 0x8634
GL_MATRIX5_NV 0x8635
GL_MATRIX6_NV 0x8636
GL_MATRIX7_NV 0x8637
GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640
GL_CURRENT_MATRIX_NV 0x8641
GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642
GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643
GL_PROGRAM_PARAMETER_NV 0x8644
GL_ATTRIB_ARRAY_POINTER_NV 0x8645
GL_PROGRAM_TARGET_NV 0x8646
GL_PROGRAM_RESIDENT_NV 0x8647
GL_TRACK_MATRIX_NV 0x8648
GL_TRACK_MATRIX_TRANSFORM_NV 0x8649
GL_VERTEX_PROGRAM_BINDING_NV 0x864A
GL_PROGRAM_ERROR_POSITION_NV 0x864B
GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650
GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651
GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652
GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653
GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654
GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655
GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656
GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657
GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658
GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659
GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A
GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B
GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C
GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D
GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E
GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F
GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660
GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661
GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662
GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663
GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664
GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665
GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666
GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667
GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668
GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669
GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A
GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B
GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C
GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D
GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E
GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F
GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670
GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671
GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672
GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673
GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674
GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675
GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676
GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677
GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678
GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679
GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A
GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B
GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C
GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D
GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E
GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F""", globals())
glget.addGLGetConstant( GL_VERTEX_PROGRAM_NV, (1,) )
glget.addGLGetConstant( GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV, (1,) )
glget.addGLGetConstant( GL_MAX_TRACK_MATRICES_NV, (1,) )
glget.addGLGetConstant( GL_CURRENT_MATRIX_STACK_DEPTH_NV, (1,) )
glget.addGLGetConstant( GL_CURRENT_MATRIX_NV, (4, 4) )
glget.addGLGetConstant( GL_VERTEX_PROGRAM_POINT_SIZE_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_PROGRAM_TWO_SIDE_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_PROGRAM_BINDING_NV, (1,) )
glget.addGLGetConstant( GL_PROGRAM_ERROR_POSITION_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY0_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY1_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY2_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY3_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY4_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY5_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY6_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY7_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY8_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY9_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY10_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY11_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY12_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY13_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY14_NV, (1,) )
glget.addGLGetConstant( GL_VERTEX_ATTRIB_ARRAY15_NV, (1,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB0_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB1_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB2_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB3_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB4_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB5_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB6_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB7_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB8_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB9_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB10_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB11_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB12_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB13_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB14_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP1_VERTEX_ATTRIB15_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB0_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB1_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB2_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB3_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB4_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB5_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB6_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB7_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB8_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB9_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB10_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB11_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB12_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB13_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB14_4_NV, (4,) )
glget.addGLGetConstant( GL_MAP2_VERTEX_ATTRIB15_4_NV, (4,) )
@_f
@_p.types(_cs.GLboolean,_cs.GLsizei,arrays.GLuintArray,arrays.GLbooleanArray)
def glAreProgramsResidentNV(n,programs,residences):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint)
def glBindProgramNV(target,id):pass
@_f
@_p.types(None,_cs.GLsizei,arrays.GLuintArray)
def glDeleteProgramsNV(n,programs):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,arrays.GLfloatArray)
def glExecuteProgramNV(target,id,params):pass
@_f
@_p.types(None,_cs.GLsizei,arrays.GLuintArray)
def glGenProgramsNV(n,programs):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,_cs.GLenum,arrays.GLdoubleArray)
def glGetProgramParameterdvNV(target,index,pname,params):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,_cs.GLenum,arrays.GLfloatArray)
def glGetProgramParameterfvNV(target,index,pname,params):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLenum,arrays.GLintArray)
def glGetProgramivNV(id,pname,params):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLenum,arrays.GLubyteArray)
def glGetProgramStringNV(id,pname,program):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,_cs.GLenum,arrays.GLintArray)
def glGetTrackMatrixivNV(target,address,pname,params):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLenum,arrays.GLdoubleArray)
def glGetVertexAttribdvNV(index,pname,params):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLenum,arrays.GLfloatArray)
def glGetVertexAttribfvNV(index,pname,params):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLenum,arrays.GLintArray)
def glGetVertexAttribivNV(index,pname,params):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLenum,arrays.GLvoidpArray)
def glGetVertexAttribPointervNV(index,pname,pointer):pass
@_f
@_p.types(_cs.GLboolean,_cs.GLuint)
def glIsProgramNV(id):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,_cs.GLsizei,arrays.GLubyteArray)
def glLoadProgramNV(target,id,len,program):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,_cs.GLdouble,_cs.GLdouble,_cs.GLdouble,_cs.GLdouble)
def glProgramParameter4dNV(target,index,x,y,z,w):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,arrays.GLdoubleArray)
def glProgramParameter4dvNV(target,index,v):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,_cs.GLfloat,_cs.GLfloat,_cs.GLfloat,_cs.GLfloat)
def glProgramParameter4fNV(target,index,x,y,z,w):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,arrays.GLfloatArray)
def glProgramParameter4fvNV(target,index,v):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,_cs.GLsizei,arrays.GLdoubleArray)
def glProgramParameters4dvNV(target,index,count,v):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,_cs.GLsizei,arrays.GLfloatArray)
def glProgramParameters4fvNV(target,index,count,v):pass
@_f
@_p.types(None,_cs.GLsizei,arrays.GLuintArray)
def glRequestResidentProgramsNV(n,programs):pass
@_f
@_p.types(None,_cs.GLenum,_cs.GLuint,_cs.GLenum,_cs.GLenum)
def glTrackMatrixNV(target,address,matrix,transform):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLint,_cs.GLenum,_cs.GLsizei,ctypes.c_void_p)
def glVertexAttribPointerNV(index,fsize,type,stride,pointer):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLdouble)
def glVertexAttrib1dNV(index,x):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLdoubleArray)
def glVertexAttrib1dvNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLfloat)
def glVertexAttrib1fNV(index,x):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLfloatArray)
def glVertexAttrib1fvNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLshort)
def glVertexAttrib1sNV(index,x):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLshortArray)
def glVertexAttrib1svNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLdouble,_cs.GLdouble)
def glVertexAttrib2dNV(index,x,y):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLdoubleArray)
def glVertexAttrib2dvNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLfloat,_cs.GLfloat)
def glVertexAttrib2fNV(index,x,y):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLfloatArray)
def glVertexAttrib2fvNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLshort,_cs.GLshort)
def glVertexAttrib2sNV(index,x,y):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLshortArray)
def glVertexAttrib2svNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLdouble,_cs.GLdouble,_cs.GLdouble)
def glVertexAttrib3dNV(index,x,y,z):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLdoubleArray)
def glVertexAttrib3dvNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLfloat,_cs.GLfloat,_cs.GLfloat)
def glVertexAttrib3fNV(index,x,y,z):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLfloatArray)
def glVertexAttrib3fvNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLshort,_cs.GLshort,_cs.GLshort)
def glVertexAttrib3sNV(index,x,y,z):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLshortArray)
def glVertexAttrib3svNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLdouble,_cs.GLdouble,_cs.GLdouble,_cs.GLdouble)
def glVertexAttrib4dNV(index,x,y,z,w):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLdoubleArray)
def glVertexAttrib4dvNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLfloat,_cs.GLfloat,_cs.GLfloat,_cs.GLfloat)
def glVertexAttrib4fNV(index,x,y,z,w):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLfloatArray)
def glVertexAttrib4fvNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLshort,_cs.GLshort,_cs.GLshort,_cs.GLshort)
def glVertexAttrib4sNV(index,x,y,z,w):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLshortArray)
def glVertexAttrib4svNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLubyte,_cs.GLubyte,_cs.GLubyte,_cs.GLubyte)
def glVertexAttrib4ubNV(index,x,y,z,w):pass
@_f
@_p.types(None,_cs.GLuint,arrays.GLubyteArray)
def glVertexAttrib4ubvNV(index,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLdoubleArray)
def glVertexAttribs1dvNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLfloatArray)
def glVertexAttribs1fvNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLshortArray)
def glVertexAttribs1svNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLdoubleArray)
def glVertexAttribs2dvNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLfloatArray)
def glVertexAttribs2fvNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLshortArray)
def glVertexAttribs2svNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLdoubleArray)
def glVertexAttribs3dvNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLfloatArray)
def glVertexAttribs3fvNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLshortArray)
def glVertexAttribs3svNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLdoubleArray)
def glVertexAttribs4dvNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLfloatArray)
def glVertexAttribs4fvNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLshortArray)
def glVertexAttribs4svNV(index,count,v):pass
@_f
@_p.types(None,_cs.GLuint,_cs.GLsizei,arrays.GLubyteArray)
def glVertexAttribs4ubvNV(index,count,v):pass


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