'''OpenGL extension NV.transform_feedback

Automatically generated by the get_gl_extensions script, do not edit!
'''
from OpenGL import platform, constants, constant, arrays
from OpenGL import extensions
from OpenGL.GL import glget
import ctypes
EXTENSION_NAME = 'GL_NV_transform_feedback'
_DEPRECATED = False
GL_BACK_PRIMARY_COLOR_NV = constant.Constant( 'GL_BACK_PRIMARY_COLOR_NV', 0x8C77 )
GL_BACK_SECONDARY_COLOR_NV = constant.Constant( 'GL_BACK_SECONDARY_COLOR_NV', 0x8C78 )
GL_TEXTURE_COORD_NV = constant.Constant( 'GL_TEXTURE_COORD_NV', 0x8C79 )
GL_CLIP_DISTANCE_NV = constant.Constant( 'GL_CLIP_DISTANCE_NV', 0x8C7A )
GL_VERTEX_ID_NV = constant.Constant( 'GL_VERTEX_ID_NV', 0x8C7B )
GL_PRIMITIVE_ID_NV = constant.Constant( 'GL_PRIMITIVE_ID_NV', 0x8C7C )
GL_GENERIC_ATTRIB_NV = constant.Constant( 'GL_GENERIC_ATTRIB_NV', 0x8C7D )
GL_TRANSFORM_FEEDBACK_ATTRIBS_NV = constant.Constant( 'GL_TRANSFORM_FEEDBACK_ATTRIBS_NV', 0x8C7E )
GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV = constant.Constant( 'GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV', 0x8C7F )
glget.addGLGetConstant( GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV, (1,) )
GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV = constant.Constant( 'GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV', 0x8C80 )
GL_ACTIVE_VARYINGS_NV = constant.Constant( 'GL_ACTIVE_VARYINGS_NV', 0x8C81 )
GL_ACTIVE_VARYING_MAX_LENGTH_NV = constant.Constant( 'GL_ACTIVE_VARYING_MAX_LENGTH_NV', 0x8C82 )
GL_TRANSFORM_FEEDBACK_VARYINGS_NV = constant.Constant( 'GL_TRANSFORM_FEEDBACK_VARYINGS_NV', 0x8C83 )
GL_TRANSFORM_FEEDBACK_BUFFER_START_NV = constant.Constant( 'GL_TRANSFORM_FEEDBACK_BUFFER_START_NV', 0x8C84 )
GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV = constant.Constant( 'GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV', 0x8C85 )
GL_TRANSFORM_FEEDBACK_RECORD_NV = constant.Constant( 'GL_TRANSFORM_FEEDBACK_RECORD_NV', 0x8C86 )
GL_PRIMITIVES_GENERATED_NV = constant.Constant( 'GL_PRIMITIVES_GENERATED_NV', 0x8C87 )
GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV = constant.Constant( 'GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV', 0x8C88 )
GL_RASTERIZER_DISCARD_NV = constant.Constant( 'GL_RASTERIZER_DISCARD_NV', 0x8C89 )
GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_ATTRIBS_NV = constant.Constant( 'GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_ATTRIBS_NV', 0x8C8A )
GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV = constant.Constant( 'GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV', 0x8C8B )
GL_INTERLEAVED_ATTRIBS_NV = constant.Constant( 'GL_INTERLEAVED_ATTRIBS_NV', 0x8C8C )
GL_SEPARATE_ATTRIBS_NV = constant.Constant( 'GL_SEPARATE_ATTRIBS_NV', 0x8C8D )
GL_TRANSFORM_FEEDBACK_BUFFER_NV = constant.Constant( 'GL_TRANSFORM_FEEDBACK_BUFFER_NV', 0x8C8E )
GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV = constant.Constant( 'GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV', 0x8C8F )
glBeginTransformFeedbackNV = platform.createExtensionFunction( 
'glBeginTransformFeedbackNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(constants.GLenum,),
doc='glBeginTransformFeedbackNV(GLenum(primitiveMode)) -> None',
argNames=('primitiveMode',),
deprecated=_DEPRECATED,
)

glEndTransformFeedbackNV = platform.createExtensionFunction( 
'glEndTransformFeedbackNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(),
doc='glEndTransformFeedbackNV() -> None',
argNames=(),
deprecated=_DEPRECATED,
)

glTransformFeedbackAttribsNV = platform.createExtensionFunction( 
'glTransformFeedbackAttribsNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(constants.GLuint,arrays.GLintArray,constants.GLenum,),
doc='glTransformFeedbackAttribsNV(GLuint(count), GLintArray(attribs), GLenum(bufferMode)) -> None',
argNames=('count','attribs','bufferMode',),
deprecated=_DEPRECATED,
)

glBindBufferRangeNV = platform.createExtensionFunction( 
'glBindBufferRangeNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(constants.GLenum,constants.GLuint,constants.GLuint,constants.GLintptr,constants.GLsizeiptr,),
doc='glBindBufferRangeNV(GLenum(target), GLuint(index), GLuint(buffer), GLintptr(offset), GLsizeiptr(size)) -> None',
argNames=('target','index','buffer','offset','size',),
deprecated=_DEPRECATED,
)

glBindBufferOffsetNV = platform.createExtensionFunction( 
'glBindBufferOffsetNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(constants.GLenum,constants.GLuint,constants.GLuint,constants.GLintptr,),
doc='glBindBufferOffsetNV(GLenum(target), GLuint(index), GLuint(buffer), GLintptr(offset)) -> None',
argNames=('target','index','buffer','offset',),
deprecated=_DEPRECATED,
)

glBindBufferBaseNV = platform.createExtensionFunction( 
'glBindBufferBaseNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(constants.GLenum,constants.GLuint,constants.GLuint,),
doc='glBindBufferBaseNV(GLenum(target), GLuint(index), GLuint(buffer)) -> None',
argNames=('target','index','buffer',),
deprecated=_DEPRECATED,
)

glTransformFeedbackVaryingsNV = platform.createExtensionFunction( 
'glTransformFeedbackVaryingsNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(constants.GLuint,constants.GLsizei,ctypes.POINTER( ctypes.POINTER( constants.GLchar )),constants.GLenum,),
doc='glTransformFeedbackVaryingsNV(GLuint(program), GLsizei(count), POINTER( ctypes.POINTER( constants.GLchar ))(varyings), GLenum(bufferMode)) -> None',
argNames=('program','count','varyings','bufferMode',),
deprecated=_DEPRECATED,
)

glActiveVaryingNV = platform.createExtensionFunction( 
'glActiveVaryingNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(constants.GLuint,arrays.GLcharArray,),
doc='glActiveVaryingNV(GLuint(program), GLcharArray(name)) -> None',
argNames=('program','name',),
deprecated=_DEPRECATED,
)

glGetVaryingLocationNV = platform.createExtensionFunction( 
'glGetVaryingLocationNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=constants.GLint, 
argTypes=(constants.GLuint,arrays.GLcharArray,),
doc='glGetVaryingLocationNV(GLuint(program), GLcharArray(name)) -> constants.GLint',
argNames=('program','name',),
deprecated=_DEPRECATED,
)

glGetActiveVaryingNV = platform.createExtensionFunction( 
'glGetActiveVaryingNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(constants.GLuint,constants.GLuint,constants.GLsizei,arrays.GLsizeiArray,arrays.GLsizeiArray,arrays.GLuintArray,arrays.GLcharArray,),
doc='glGetActiveVaryingNV(GLuint(program), GLuint(index), GLsizei(bufSize), GLsizeiArray(length), GLsizeiArray(size), GLuintArray(type), GLcharArray(name)) -> None',
argNames=('program','index','bufSize','length','size','type','name',),
deprecated=_DEPRECATED,
)

glGetTransformFeedbackVaryingNV = platform.createExtensionFunction( 
'glGetTransformFeedbackVaryingNV',dll=platform.GL,
extension=EXTENSION_NAME,
resultType=None, 
argTypes=(constants.GLuint,constants.GLuint,arrays.GLintArray,),
doc='glGetTransformFeedbackVaryingNV(GLuint(program), GLuint(index), GLintArray(location)) -> None',
argNames=('program','index','location',),
deprecated=_DEPRECATED,
)


def glInitTransformFeedbackNV():
    '''Return boolean indicating whether this extension is available'''
    return extensions.hasGLExtension( EXTENSION_NAME )
