Merge branch 'master' into gl4

This commit is contained in:
Stefanos A 2013-10-22 17:03:39 +02:00
commit 967a6514de
14 changed files with 39252 additions and 4469 deletions

View file

@ -341,11 +341,22 @@ namespace Bind
// Array overloads // Array overloads
foreach (Parameter p in _this.Parameters) foreach (Parameter p in _this.Parameters)
{ {
if (p.WrapperType == WrapperTypes.ArrayParameter && p.ElementCount != 1) if (p.WrapperType == WrapperTypes.ArrayParameter)
{ {
p.Reference = false; if (p.ElementCount != 1)
p.Array++; {
p.Pointer--; // Create a proper array
p.Reference = false;
p.Array++;
p.Pointer--;
}
else
{
// Create a reference
p.Reference = true;
p.Array--;
p.Pointer--;
}
} }
} }
f = new Function(_this); f = new Function(_this);
@ -373,7 +384,7 @@ namespace Bind
_this = func; _this = func;
// Pointer overloads // Pointer overloads
// Should be last to work around Intellisense bug, where // Should be last to work around an Intellisense bug, where
// array overloads are not reported if there is a pointer overload. // array overloads are not reported if there is a pointer overload.
foreach (Parameter p in _this.Parameters) foreach (Parameter p in _this.Parameters)
{ {

View file

@ -1,7 +1,6 @@
AccumOp,*,*, GLenum,*,* AccumOp,*,*, GLenum,*,*
AlphaFunction,*,*, GLenum,*,* AlphaFunction,*,*, GLenum,*,*
AttribMask,*,*, GLbitfield,*,* AttribMask,*,*, GLbitfield,*,*
BeginMode,*,*, GLenum,*,*
BinormalPointerTypeEXT,*,*, GLenum,*,* BinormalPointerTypeEXT,*,*, GLenum,*,*
BlendEquationMode,*,*, GLenum,*,* BlendEquationMode,*,*, GLenum,*,*
BlendEquationModeEXT,*,*, GLenum,*,* BlendEquationModeEXT,*,*, GLenum,*,*
@ -12,11 +11,12 @@ Boolean,*,*, GLboolean,*,*
BooleanPointer,*,*, GLboolean*,*,* BooleanPointer,*,*, GLboolean*,*,*
Char,*,*, GLchar,*,* Char,*,*, GLchar,*,*
CharPointer,*,*, GLchar*,*,* CharPointer,*,*, GLchar*,*,*
ConstCharPointer,*,*, GLchar* const,*,*
CheckedFloat32,*,*, GLfloat,*,* CheckedFloat32,*,*, GLfloat,*,*
CheckedInt32,*,*, GLint,*,* CheckedInt32,*,*, GLint,*,*
ClampColorTargetARB,*,*, GLenum,*,* ClampColorTargetARB,*,*, GLenum,*,*
ClampColorModeARB,*,*, GLenum,*,* ClampColorModeARB,*,*, GLenum,*,*
ClampedColorF,*,*, GLclampf,*,* ClampedFixed,*,*, GLfixed,*,*
ClampedFloat32,*,*, GLclampf,*,* ClampedFloat32,*,*, GLclampf,*,*
ClampedFloat64,*,*, GLclampd,*,* ClampedFloat64,*,*, GLclampd,*,*
ClampedStencilValue,*,*, GLint,*,* ClampedStencilValue,*,*, GLint,*,*
@ -52,8 +52,6 @@ CombinerScaleNV,*,*, GLenum,*,*
CombinerStageNV,*,*, GLenum,*,* CombinerStageNV,*,*, GLenum,*,*
CombinerVariableNV,*,*, GLenum,*,* CombinerVariableNV,*,*, GLenum,*,*
CompressedTextureARB,*,*, GLvoid,*,* CompressedTextureARB,*,*, GLvoid,*,*
ControlPointNV,*,*, GLvoid,*,*
ControlPointTypeNV,*,*, GLenum,*,*
ConvolutionParameter,*,*, GLenum,*,* ConvolutionParameter,*,*, GLenum,*,*
ConvolutionParameterEXT,*,*, GLenum,*,* ConvolutionParameterEXT,*,*, GLenum,*,*
ConvolutionTarget,*,*, GLenum,*,* ConvolutionTarget,*,*, GLenum,*,*
@ -84,6 +82,8 @@ Float32,*,*, GLfloat,*,*
Float32Pointer,*,*, GLfloat*,*,* Float32Pointer,*,*, GLfloat*,*,*
Float64,*,*, GLdouble,*,* Float64,*,*, GLdouble,*,*
Float64Pointer,*,*, GLdouble*,*,* Float64Pointer,*,*, GLdouble*,*,*
Fixed,*,*, GLfixed,*,*
ConstFixed,*,*, GLfixed,*,*
FogParameter,*,*, GLenum,*,* FogParameter,*,*, GLenum,*,*
FogPointerTypeEXT,*,*, GLenum,*,* FogPointerTypeEXT,*,*, GLenum,*,*
FogPointerTypeIBM,*,*, GLenum,*,* FogPointerTypeIBM,*,*, GLenum,*,*
@ -91,6 +91,7 @@ FragmentLightModelParameterSGIX,*,*,GLenum,*,*
FragmentLightNameSGIX,*,*, GLenum,*,* FragmentLightNameSGIX,*,*, GLenum,*,*
FragmentLightParameterSGIX,*,*, GLenum,*,* FragmentLightParameterSGIX,*,*, GLenum,*,*
FramebufferAttachment,*,*, GLenum,*,* FramebufferAttachment,*,*, GLenum,*,*
FramebufferStatus,*,*, GLenum,*,*
FramebufferTarget,*,*, GLenum,*,* FramebufferTarget,*,*, GLenum,*,*
FrontFaceDirection,*,*, GLenum,*,* FrontFaceDirection,*,*, GLenum,*,*
FunctionPointer,*,*, _GLfuncptr,*,* FunctionPointer,*,*, _GLfuncptr,*,*
@ -136,7 +137,6 @@ LogicOp,*,*, GLenum,*,*
MapAttribParameterNV,*,*, GLenum,*,* MapAttribParameterNV,*,*, GLenum,*,*
MapParameterNV,*,*, GLenum,*,* MapParameterNV,*,*, GLenum,*,*
MapTarget,*,*, GLenum,*,* MapTarget,*,*, GLenum,*,*
MapTargetNV,*,*, GLenum,*,*
MapTypeNV,*,*, GLenum,*,* MapTypeNV,*,*, GLenum,*,*
MaskedColorIndexValueF,*,*, GLfloat,*,* MaskedColorIndexValueF,*,*, GLfloat,*,*
MaskedColorIndexValueI,*,*, GLuint,*,* MaskedColorIndexValueI,*,*, GLuint,*,*
@ -145,16 +145,11 @@ MaterialFace,*,*, GLenum,*,*
MaterialParameter,*,*, GLenum,*,* MaterialParameter,*,*, GLenum,*,*
MatrixIndexPointerTypeARB,*,*, GLenum,*,* MatrixIndexPointerTypeARB,*,*, GLenum,*,*
MatrixMode,*,*, GLenum,*,* MatrixMode,*,*, GLenum,*,*
MatrixTransformNV,*,*, GLenum,*,*
MeshMode1,*,*, GLenum,*,* MeshMode1,*,*, GLenum,*,*
MeshMode2,*,*, GLenum,*,* MeshMode2,*,*, GLenum,*,*
MinmaxTarget,*,*, GLenum,*,* MinmaxTarget,*,*, GLenum,*,*
MinmaxTargetEXT,*,*, GLenum,*,* MinmaxTargetEXT,*,*, GLenum,*,*
NormalPointerType,*,*, GLenum,*,* NormalPointerType,*,*, GLenum,*,*
NurbsCallback,*,*, GLenum,*,*
NurbsObj,*,*, GLUnurbs*,*,*
NurbsProperty,*,*, GLenum,*,*
NurbsTrim,*,*, GLenum,*,*
OcclusionQueryParameterNameNV,*,*, GLenum,*,* OcclusionQueryParameterNameNV,*,*, GLenum,*,*
PixelCopyType,*,*, GLenum,*,* PixelCopyType,*,*, GLenum,*,*
PixelFormat,*,*, GLenum,*,* PixelFormat,*,*, GLenum,*,*
@ -169,21 +164,14 @@ PixelTransformTargetEXT,*,*, GLenum,*,*
PixelType,*,*, GLenum,*,* PixelType,*,*, GLenum,*,*
PointParameterNameARB,*,*, GLenum,*,* PointParameterNameARB,*,*, GLenum,*,*
PolygonMode,*,*, GLenum,*,* PolygonMode,*,*, GLenum,*,*
ProgramNV,*,*, GLuint,*,* PrimitiveType,*,*, GLenum,*,*
ProgramCharacterNV,*,*, GLubyte,*,* ProgramCharacterNV,*,*, GLubyte,*,*
ProgramParameterNV,*,*, GLenum,*,*
ProgramParameterPName,*,*, GLenum,*,* ProgramParameterPName,*,*, GLenum,*,*
QuadricCallback,*,*, GLenum,*,*
QuadricDrawStyle,*,*, GLenum,*,*
QuadricNormal,*,*, GLenum,*,*
QuadricObj,*,*, GLUquadric*,*,*
QuadricOrientation,*,*, GLenum,*,*
ReadBufferMode,*,*, GLenum,*,* ReadBufferMode,*,*, GLenum,*,*
RenderbufferTarget,*,*, GLenum,*,* RenderbufferTarget,*,*, GLenum,*,*
RenderingMode,*,*, GLenum,*,* RenderingMode,*,*, GLenum,*,*
ReplacementCodeSUN,*,*, GLuint,*,* ReplacementCodeSUN,*,*, GLuint,*,*
ReplacementCodeTypeSUN,*,*, GLenum,*,* ReplacementCodeTypeSUN,*,*, GLenum,*,*
SamplePassARB,*,*, GLenum,*,*
SamplePatternEXT,*,*, GLenum,*,* SamplePatternEXT,*,*, GLenum,*,*
SamplePatternSGIS,*,*, GLenum,*,* SamplePatternSGIS,*,*, GLenum,*,*
SecondaryColorPointerTypeIBM,*,*, GLenum,*,* SecondaryColorPointerTypeIBM,*,*, GLenum,*,*
@ -200,10 +188,6 @@ StencilValue,*,*, GLint,*,*
String,*,*, const GLubyte *,*,* String,*,*, const GLubyte *,*,*
StringName,*,*, GLenum,*,* StringName,*,*, GLenum,*,*
TangentPointerTypeEXT,*,*, GLenum,*,* TangentPointerTypeEXT,*,*, GLenum,*,*
TessCallback,*,*, GLenum,*,*
TessContour,*,*, GLenum,*,*
TessProperty,*,*, GLenum,*,*
TesselatorObj,*,*, GLUtesselator*,*,*
TexCoordPointerType,*,*, GLenum,*,* TexCoordPointerType,*,*, GLenum,*,*
Texture,*,*, GLuint,*,* Texture,*,*, GLuint,*,*
TextureComponentCount,*,*, GLint,*,* TextureComponentCount,*,*, GLint,*,*
@ -221,7 +205,6 @@ UInt32,*,*, GLuint,*,*
UInt8,*,*, GLubyte,*,* UInt8,*,*, GLubyte,*,*
VertexAttribEnum,*,*, GLenum,*,* VertexAttribEnum,*,*, GLenum,*,*
VertexAttribEnumNV,*,*, GLenum,*,* VertexAttribEnumNV,*,*, GLenum,*,*
VertexAttribPointerTypeNV,*,*, GLenum,*,*
VertexPointerType,*,*, GLenum,*,* VertexPointerType,*,*, GLenum,*,*
VertexWeightPointerTypeEXT,*,*, GLenum,*,* VertexWeightPointerTypeEXT,*,*, GLenum,*,*
Void,*,*, GLvoid,*,* Void,*,*, GLvoid,*,*
@ -231,7 +214,9 @@ WeightPointerTypeARB,*,*, GLenum,*,*
WinCoord,*,*, GLint,*,* WinCoord,*,*, GLint,*,*
void,*,*, *,*,* void,*,*, *,*,*
ArrayObjectPNameATI,*,*, GLenum,*,* ArrayObjectPNameATI,*,*, GLenum,*,*
ArrayObjectUsageATI,*,*, GLenum,*,*, ArrayObjectUsageATI,*,*, GLenum,*,*
ConstByte,*,*, GLbyte,*,*
ConstUByte,*,*, GLubyte,*,*
ConstFloat32,*,*, GLfloat,*,* ConstFloat32,*,*, GLfloat,*,*
ConstInt32,*,*, GLint,*,* ConstInt32,*,*, GLint,*,*
ConstUInt32,*,*, GLuint,*,* ConstUInt32,*,*, GLuint,*,*
@ -292,14 +277,13 @@ UInt64,*,*, GLuint64,*,*
handleARB,*,*, GLhandleARB,*,* handleARB,*,*, GLhandleARB,*,*
charARB,*,*, GLcharARB,*,* charARB,*,*, GLcharARB,*,*
charPointerARB,*,*, GLcharARB*,*,* charPointerARB,*,*, GLcharARB*,*,*
sync,*,*, GLsync,*,*, sync,*,*, GLsync,*,*
# EXT_timer_query # EXT_timer_query
Int64EXT,*,*, GLint64EXT,*,* Int64EXT,*,*, GLint64EXT,*,*
UInt64EXT,*,*, GLuint64EXT,*,* UInt64EXT,*,*, GLuint64EXT,*,*
# EXT_direct_state_access # EXT_direct_state_access
FramebufferAttachmentParameterName,*,*, GLenum,*,* FramebufferAttachmentParameterName,*,*, GLenum,*,*
Framebuffer,*,*, GLuint,*,* Framebuffer,*,*, GLuint,*,*
FramebufferStatus,*,*, GLenum,*,*
GetFramebufferParameter,*,*, GLenum,*,* GetFramebufferParameter,*,*, GLenum,*,*
Intptr,*,*, GLintptr,*,* Intptr,*,*, GLintptr,*,*
ProgramFormat,*,*, GLenum,*,* ProgramFormat,*,*, GLenum,*,*
@ -318,11 +302,57 @@ BufferAccessMask,*,*, GLbitfield,*,*
GetMultisamplePNameNV,*,*, GLenum,*,* GetMultisamplePNameNV,*,*, GLenum,*,*
SampleMaskNV,*,*, GLbitfield,*,* SampleMaskNV,*,*, GLbitfield,*,*
# ARB_debug_output # ARB_debug_output
GLDEBUGPROC,*,*, GLDEBUGPROC,*,*
# ARB_debug_output
GLDEBUGPROCARB,*,*, GLDEBUGPROCARB,*,* GLDEBUGPROCARB,*,*, GLDEBUGPROCARB,*,*
# AMD_debug_output # AMD_debug_output
GLDEBUGPROCAMD,*,*, GLDEBUGPROCAMD,*,* GLDEBUGPROCAMD,*,*, GLDEBUGPROCAMD,*,*
# NV_vdpau_interop # NV_vdpau_interop
vdpauSurfaceNV,*,*, GLvdpauSurfaceNV,*,*, vdpauSurfaceNV,*,*, GLvdpauSurfaceNV,*,*
# External API types # External API types
cl_context,*,*, struct _cl_context *,*,* cl_context,*,*, struct _cl_context *,*,*
cl_event,*,*, struct _cl_event *,*,* cl_event,*,*, struct _cl_event *,*,*
Path,*,*, GLuint,*,*
PathColor,*,*, GLenum,*,*
PathColorFormat,*,*, GLenum,*,*
PathCommand,*,*, GLubyte,*,*
PathCoordType,*,*, GLenum,*,*
PathCoverMode,*,*, GLenum,*,*
PathElementType,*,*, GLenum,*,*
PathElement,*,*, GLvoid,*,*
PathFillMode,*,*, GLenum,*,*
PathFontStyle,*,*, GLbitfield,*,*
PathFontTarget,*,*, GLenum,*,*
PathGenMode,*,*, GLenum,*,*
PathListMode,*,*, GLenum,*,*
PathMetricMask,*,*, GLbitfield,*,*
PathParameter,*,*, GLenum,*,*
PathStringFormat,*,*, GLenum,*,*
PathTransformType,*,*, GLenum,*,*
PathHandleMissingGlyphs,*,*, GLenum,*,*
# No longer used in gl.spec
# ClampedColorF,*,*, GLclampf,*,*
# ControlPointNV,*,*, GLvoid,*,*
# ControlPointTypeNV,*,*, GLenum,*,*
# MapTargetNV,*,*, GLenum,*,*
# MatrixTransformNV,*,*, GLenum,*,*
# ProgramNV,*,*, GLuint,*,*
# ProgramParameterNV,*,*, GLenum,*,*
# SamplePassARB,*,*, GLenum,*,*
# VertexAttribPointerTypeNV,*,*, GLenum,*,*
# Used only in glu.spec
# NurbsCallback,*,*, GLenum,*,*
# NurbsObj,*,*, GLUnurbs*,*,*
# NurbsProperty,*,*, GLenum,*,*
# NurbsTrim,*,*, GLenum,*,*
# QuadricCallback,*,*, GLenum,*,*
# QuadricDrawStyle,*,*, GLenum,*,*
# QuadricNormal,*,*, GLenum,*,*
# QuadricObj,*,*, GLUquadric*,*,*
# QuadricOrientation,*,*, GLenum,*,*
# TessCallback,*,*, GLenum,*,*
# TessContour,*,*, GLenum,*,*
# TessProperty,*,*, GLenum,*,*
# TesselatorObj,*,*, GLUtesselator*,*,*

View file

@ -282,13 +282,25 @@
<function name="BindBufferRange" extension="Core"> <function name="BindBufferRange" extension="Core">
<param name="target"> <param name="target">
<type>BufferTarget</type> <type>BufferRangeTarget</type>
</param> </param>
</function> </function>
<function name="BindBufferBase" extension="Core"> <function name="BindBufferBase" extension="Core">
<param name="target"> <param name="target">
<type>BufferTarget</type> <type>BufferRangeTarget</type>
</param>
</function>
<function name="BindBuffersRange" extension="Core">
<param name="target">
<type>BufferRangeTarget</type>
</param>
</function>
<function name="BindBuffersBase" extension="Core">
<param name="target">
<type>BufferRangeTarget</type>
</param> </param>
</function> </function>
@ -799,7 +811,7 @@
<!-- also found Arb and Ext flavors --> <!-- also found Arb and Ext flavors -->
<function name="ProgramParameteri" extension="Core"> <function name="ProgramParameteri" extension="Core">
<param name="pname"> <param name="pname">
<type>AssemblyProgramParameterArb</type> <type>ProgramParameterPName</type>
</param> </param>
</function> </function>
@ -835,6 +847,88 @@
<type>BinaryFormat</type> <type>BinaryFormat</type>
</param> </param>
</function> </function>
<!-- Version 4.2 -->
<function name="GetActiveAtomicCounterBuffer" extension="Core">
<param name="pname">
<type>AtomicCounterBufferParameter</type>
</param>
</function>
<function name="MemoryBarrier" extension="Core">
<param name="barriers">
<type>MemoryBarrierFlags</type>
</param>
</function>
<!-- Version 4.3 -->
<function name="ClearBufferData" extension="Core">
<param name="target">
<type>BufferTarget</type>
</param>
<param name="internalformat">
<type>PixelInternalFormat</type>
</param>
<param name="format">
<type>PixelFormat</type>
</param>
</function>
<function name="ClearBufferSubData" extension="Core">
<param name="target">
<type>BufferTarget</type>
</param>
<param name="internalformat">
<type>PixelInternalFormat</type>
</param>
<param name="format">
<type>PixelFormat</type>
</param>
</function>
<function name="GetProgramInterfaceiv" extension="Core">
<param name="programInterface">
<type>ProgramInterface</type>
</param>
<param name="pname">
<type>ProgramInterfaceParameter</type>
</param>
</function>
<function name="GetProgramResourceIndex" extension="Core">
<param name="programInterface">
<type>ProgramInterface</type>
</param>
</function>
<function name="GetProgramResourceName" extension="Core">
<param name="programInterface">
<type>ProgramInterface</type>
</param>
</function>
<function name="GetProgramResourceiv" extension="Core">
<param name="programInterface">
<type>ProgramInterface</type>
</param>
<param name="props">
<type>ProgramProperty</type>
</param>
</function>
<function name="GetProgramResourceLocation" extension="Core">
<param name="programInterface">
<type>ProgramInterface</type>
</param>
</function>
<function name="GetProgramResourceLocationIndex" extension="Core">
<param name="programInterface">
<type>ProgramInterface</type>
</param>
</function>
<!-- Arb --> <!-- Arb -->
@ -998,7 +1092,7 @@
<type>AssemblyProgramParameterArb</type> <type>AssemblyProgramParameterArb</type>
</param> </param>
</function> </function>
<function name="TangentPointer" extension="Ext"> <function name="TangentPointer" extension="Ext">
<param name="type"> <param name="type">
<type>NormalPointerType</type> <type>NormalPointerType</type>
@ -1183,6 +1277,44 @@
<type>VertexAttribParameterArb</type> <type>VertexAttribParameterArb</type>
</param> </param>
</function> </function>
<!-- Version 4.4 -->
<!-- Synchronization -->
<function name="FenceSync" extension="Core">
<param name="condition">
<type>SyncCondition</type>
</param>
</function>
<function name="ClientWaitSync" extension="Core">
<returns>WaitSyncStatus</returns>
<param name="flags">
<type>WaitSyncFlags</type>
</param>
</function>
<function name="WaitSync" extension="Core">
<returns>WaitSyncStatus</returns>
<param name="flags">
<type>WaitSyncFlags</type>
</param>
</function>
<function name="GetSynciv" extension="Core">
<param name="pname">
<type>SyncParameter</type>
</param>
</function>
<function name="BufferStorage" extension="Core">
<param name="target">
<type>BufferTarget</type>
</param>
<param name="flags">
<type>BufferStorageFlags</type>
</param>
</function>
</replace> </replace>
@ -1224,106 +1356,134 @@
<use enum="VERSION_4_0" token="UNIFORM_NAME_LENGTH" /> <use enum="VERSION_4_0" token="UNIFORM_NAME_LENGTH" />
</enum> </enum>
<enum name="ActiveUniformBlockParameter"> <enum name="ActiveUniformBlockParameter">
<use enum="ARB_uniform_buffer_object" token="UNIFORM_BLOCK_BINDING" /> <use enum="VERSION_3_1" token="UNIFORM_BLOCK_BINDING" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_BLOCK_DATA_SIZE" /> <use enum="VERSION_3_1" token="UNIFORM_BLOCK_DATA_SIZE" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_BLOCK_NAME_LENGTH" /> <use enum="VERSION_3_1" token="UNIFORM_BLOCK_NAME_LENGTH" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_BLOCK_ACTIVE_UNIFORMS" /> <use enum="VERSION_3_1" token="UNIFORM_BLOCK_ACTIVE_UNIFORMS" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES" /> <use enum="VERSION_3_1" token="UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER" /> <use enum="VERSION_3_1" token="UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER" /> <use enum="VERSION_3_1" token="UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER" /> <use enum="VERSION_3_1" token="UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER" />
<use enum="VERSION_4_0" token="UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER" /> <use enum="VERSION_4_0" token="UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER" />
<use enum="VERSION_4_0" token="UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER" /> <use enum="VERSION_4_0" token="UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER" />
<use enum="VERSION_4_3" token="UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER" />
</enum> </enum>
<enum name="ActiveUniformParameter"> <enum name="ActiveUniformParameter">
<use enum="ARB_uniform_buffer_object" token="UNIFORM_TYPE" /> <use enum="VERSION_3_1" token="UNIFORM_TYPE" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_SIZE" /> <use enum="VERSION_3_1" token="UNIFORM_SIZE" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_NAME_LENGTH" /> <use enum="VERSION_3_1" token="UNIFORM_NAME_LENGTH" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_BLOCK_INDEX" /> <use enum="VERSION_3_1" token="UNIFORM_BLOCK_INDEX" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_OFFSET" /> <use enum="VERSION_3_1" token="UNIFORM_OFFSET" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_ARRAY_STRIDE" /> <use enum="VERSION_3_1" token="UNIFORM_ARRAY_STRIDE" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_MATRIX_STRIDE" /> <use enum="VERSION_3_1" token="UNIFORM_MATRIX_STRIDE" />
<use enum="ARB_uniform_buffer_object" token="UNIFORM_IS_ROW_MAJOR" /> <use enum="VERSION_3_1" token="UNIFORM_IS_ROW_MAJOR" />
<use enum="VERSION_4_2" token="UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX" />
</enum> </enum>
<enum name="ActiveUniformType"> <enum name="ActiveUniformType">
<use enum="DataType" token="FLOAT" /> <use enum="VERSION_1_1" token="FLOAT" />
<use enum="DataType" token="INT" /> <use enum="VERSION_2_0" token="FLOAT_VEC2" />
<token name="BOOL" value="0x8B56" /> <use enum="VERSION_2_0" token="FLOAT_VEC3" />
<token name="BOOL_VEC2" value="0x8B57" /> <use enum="VERSION_2_0" token="FLOAT_VEC4" />
<token name="BOOL_VEC3" value="0x8B58" /> <use enum="VERSION_1_1" token="DOUBLE" />
<token name="BOOL_VEC4" value="0x8B59" />
<token name="FLOAT_MAT2" value="0x8B5A" />
<token name="FLOAT_MAT2x3" value="0x8B65" />
<token name="FLOAT_MAT2x4" value="0x8B66" />
<token name="FLOAT_MAT3" value="0x8B5B" />
<token name="FLOAT_MAT3x2" value="0x8B67" />
<token name="FLOAT_MAT3x4" value="0x8B68" />
<token name="FLOAT_MAT4" value="0x8B5C" />
<token name="FLOAT_MAT4x2" value="0x8B69" />
<token name="FLOAT_MAT4x3" value="0x8B6A" />
<token name="FLOAT_VEC2" value="0x8B50" />
<token name="FLOAT_VEC3" value="0x8B51" />
<token name="FLOAT_VEC4" value="0x8B52" />
<token name="INT_SAMPLER_1D" value="0x8DC9" />
<token name="INT_SAMPLER_1D_ARRAY" value="0x8DCE" />
<token name="INT_SAMPLER_2D" value="0x8DCA" />
<token name="INT_SAMPLER_2D_ARRAY" value="0x8DCF" />
<token name="INT_SAMPLER_2D_MULTISAMPLE" value="0x9109" />
<token name="INT_SAMPLER_2D_MULTISAMPLE_ARRAY" value="0x910C" />
<token name="INT_SAMPLER_2D_RECT" value="0x8DCD" />
<token name="INT_SAMPLER_3D" value="0x8DCB" />
<token name="INT_SAMPLER_BUFFER" value="0x8DD0" />
<token name="INT_SAMPLER_CUBE" value="0x8DCC" />
<token name="INT_VEC2" value="0x8B53" />
<token name="INT_VEC3" value="0x8B54" />
<token name="INT_VEC4" value="0x8B55" />
<token name="SAMPLER_1D" value="0x8B5D" />
<token name="SAMPLER_1D_ARRAY" value="0x8DC0" />
<token name="SAMPLER_1D_ARRAY_SHADOW" value="0x8DC3" />
<token name="SAMPLER_1D_SHADOW" value="0x8B61" />
<token name="SAMPLER_2D" value="0x8B5E" />
<token name="SAMPLER_2D_ARRAY" value="0x8DC1" />
<token name="SAMPLER_2D_ARRAY_SHADOW" value="0x8DC4" />
<token name="SAMPLER_2D_MULTISAMPLE" value="0x9108" />
<token name="SAMPLER_2D_MULTISAMPLE_ARRAY" value="0x910B" />
<token name="SAMPLER_2D_RECT" value="0x8B63" />
<token name="SAMPLER_2D_RECT_SHADOW" value="0x8B64" />
<token name="SAMPLER_2D_SHADOW" value="0x8B62" />
<token name="SAMPLER_3D" value="0x8B5F" />
<token name="SAMPLER_BUFFER" value="0x8DC2" />
<token name="SAMPLER_CUBE" value="0x8B60" />
<token name="SAMPLER_CUBE_SHADOW" value="0x8DC5" />
<use enum="DataType" token="UNSIGNED_INT" />
<token name="UNSIGNED_INT_SAMPLER_1D" value="0x8DD1" />
<token name="UNSIGNED_INT_SAMPLER_1D_ARRAY" value="0x8DD6" />
<token name="UNSIGNED_INT_SAMPLER_2D" value="0x8DD2" />
<token name="UNSIGNED_INT_SAMPLER_2D_ARRAY" value="0x8DD7" />
<token name="UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE" value="0x910A" />
<token name="UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY" value="0x910D" />
<token name="UNSIGNED_INT_SAMPLER_2D_RECT" value="0x8DD5" />
<token name="UNSIGNED_INT_SAMPLER_3D" value="0x8DD3" />
<token name="UNSIGNED_INT_SAMPLER_BUFFER" value="0x8DD8" />
<token name="UNSIGNED_INT_SAMPLER_CUBE" value="0x8DD4" />
<token name="UNSIGNED_INT_VEC2" value="0x8DC6" />
<token name="UNSIGNED_INT_VEC3" value="0x8DC7" />
<token name="UNSIGNED_INT_VEC4" value="0x8DC8" />
<use enum="VERSION_4_0" token="DOUBLE" />
<use enum="VERSION_4_0" token="DOUBLE_VEC2" /> <use enum="VERSION_4_0" token="DOUBLE_VEC2" />
<use enum="VERSION_4_0" token="DOUBLE_VEC3" /> <use enum="VERSION_4_0" token="DOUBLE_VEC3" />
<use enum="VERSION_4_0" token="DOUBLE_VEC4" /> <use enum="VERSION_4_0" token="DOUBLE_VEC4" />
<use enum="VERSION_4_0" token="DOUBLE_MAT2" /> <use enum="VERSION_1_1" token="INT" />
<use enum="VERSION_4_0" token="DOUBLE_MAT3" /> <use enum="VERSION_2_0" token="INT_VEC2" />
<use enum="VERSION_4_0" token="DOUBLE_MAT4" /> <use enum="VERSION_2_0" token="INT_VEC3" />
<use enum="VERSION_4_0" token="DOUBLE_MAT2x3" /> <use enum="VERSION_2_0" token="INT_VEC4" />
<use enum="VERSION_4_0" token="DOUBLE_MAT2x4" /> <use enum="VERSION_1_1" token="UNSIGNED_INT" />
<use enum="VERSION_4_0" token="DOUBLE_MAT3x2" /> <use enum="VERSION_3_0" token="UNSIGNED_INT_VEC2" />
<use enum="VERSION_4_0" token="DOUBLE_MAT3x4" /> <use enum="VERSION_3_0" token="UNSIGNED_INT_VEC3" />
<use enum="VERSION_4_0" token="DOUBLE_MAT4x2" /> <use enum="VERSION_3_0" token="UNSIGNED_INT_VEC4" />
<use enum="VERSION_4_0" token="DOUBLE_MAT4x3" /> <use enum="VERSION_1_1" token="BOOL" />
<use enum="VERSION_2_0" token="BOOL_VEC2" />
<use enum="VERSION_2_0" token="BOOL_VEC3" />
<use enum="VERSION_2_0" token="BOOL_VEC4" />
<use enum="VERSION_2_0" token="FLOAT_MAT2" />
<use enum="VERSION_2_0" token="FLOAT_MAT3" />
<use enum="VERSION_2_0" token="FLOAT_MAT4" />
<use enum="VERSION_2_1" token="FLOAT_MAT2x3" />
<use enum="VERSION_2_1" token="FLOAT_MAT2x4" />
<use enum="VERSION_2_1" token="FLOAT_MAT3x4" />
<use enum="VERSION_2_1" token="FLOAT_MAT4x2" />
<use enum="VERSION_2_1" token="FLOAT_MAT4x3" />
<use enum="VERSION_2_0" token="SAMPLER_1D" />
<use enum="VERSION_2_0" token="SAMPLER_2D" />
<use enum="VERSION_2_0" token="SAMPLER_3D" />
<use enum="VERSION_2_0" token="SAMPLER_CUBE" />
<use enum="VERSION_2_0" token="SAMPLER_1D_SHADOW" />
<use enum="VERSION_2_0" token="SAMPLER_2D_SHADOW" />
<use enum="VERSION_3_0" token="SAMPLER_1D_ARRAY" />
<use enum="VERSION_3_0" token="SAMPLER_2D_ARRAY" />
<use enum="VERSION_4_0" token="SAMPLER_CUBE_MAP_ARRAY" /> <use enum="VERSION_4_0" token="SAMPLER_CUBE_MAP_ARRAY" />
<use enum="VERSION_3_0" token="SAMPLER_1D_ARRAY_SHADOW" />
<use enum="VERSION_3_0" token="SAMPLER_2D_ARRAY_SHADOW" />
<use enum="VERSION_3_2" token="SAMPLER_2D_MULTISAMPLE" />
<use enum="VERSION_3_2" token="SAMPLER_2D_MULTISAMPLE_ARRAY" />
<use enum="VERSION_3_0" token="SAMPLER_CUBE_SHADOW" />
<use enum="VERSION_4_0" token="SAMPLER_CUBE_MAP_ARRAY_SHADOW" /> <use enum="VERSION_4_0" token="SAMPLER_CUBE_MAP_ARRAY_SHADOW" />
<use enum="VERSION_3_1" token="SAMPLER_BUFFER" />
<use enum="VERSION_3_1" token="SAMPLER_2D_RECT" />
<use enum="VERSION_3_1" token="SAMPLER_2D_RECT_SHADOW" />
<use enum="VERSION_3_0" token="INT_SAMPLER_1D" />
<use enum="VERSION_3_0" token="INT_SAMPLER_2D" />
<use enum="VERSION_3_0" token="INT_SAMPLER_3D" />
<use enum="VERSION_3_0" token="INT_SAMPLER_CUBE" />
<use enum="VERSION_3_0" token="INT_SAMPLER_1D_ARRAY" />
<use enum="VERSION_3_0" token="INT_SAMPLER_2D_ARRAY" />
<use enum="VERSION_4_0" token="INT_SAMPLER_CUBE_MAP_ARRAY" /> <use enum="VERSION_4_0" token="INT_SAMPLER_CUBE_MAP_ARRAY" />
<use enum="VERSION_3_2" token="INT_SAMPLER_2D_MULTISAMPLE" />
<use enum="VERSION_3_2" token="INT_SAMPLER_2D_MULTISAMPLE_ARRAY" />
<use enum="VERSION_3_1" token="INT_SAMPLER_BUFFER" />
<use enum="VERSION_3_1" token="INT_SAMPLER_2D_RECT" />
<use enum="VERSION_3_0" token="UNSIGNED_INT_SAMPLER_1D" />
<use enum="VERSION_3_0" token="UNSIGNED_INT_SAMPLER_2D" />
<use enum="VERSION_3_0" token="UNSIGNED_INT_SAMPLER_3D" />
<use enum="VERSION_3_0" token="UNSIGNED_INT_SAMPLER_CUBE" />
<use enum="VERSION_3_0" token="UNSIGNED_INT_SAMPLER_1D_ARRAY" />
<use enum="VERSION_3_0" token="UNSIGNED_INT_SAMPLER_2D_ARRAY" />
<use enum="VERSION_4_0" token="UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY" /> <use enum="VERSION_4_0" token="UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY" />
<use enum="VERSION_3_2" token="UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE" />
<use enum="VERSION_3_2" token="UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY" />
<use enum="VERSION_3_1" token="UNSIGNED_INT_SAMPLER_BUFFER" />
<use enum="VERSION_3_1" token="UNSIGNED_INT_SAMPLER_2D_RECT" />
<use enum="VERSION_4_2" token="IMAGE_1D" />
<use enum="VERSION_4_2" token="IMAGE_2D" />
<use enum="VERSION_4_2" token="IMAGE_3D" />
<use enum="VERSION_4_2" token="IMAGE_2D_RECT" />
<use enum="VERSION_4_2" token="IMAGE_CUBE" />
<use enum="VERSION_4_2" token="IMAGE_BUFFER" />
<use enum="VERSION_4_2" token="IMAGE_1D_ARRAY" />
<use enum="VERSION_4_2" token="IMAGE_2D_ARRAY" />
<use enum="VERSION_4_2" token="IMAGE_CUBE_MAP_ARRAY" />
<use enum="VERSION_4_2" token="IMAGE_2D_MULTISAMPLE" />
<use enum="VERSION_4_2" token="IMAGE_2D_MULTISAMPLE_ARRAY" />
<use enum="VERSION_4_2" token="INT_IMAGE_1D" />
<use enum="VERSION_4_2" token="INT_IMAGE_2D" />
<use enum="VERSION_4_2" token="INT_IMAGE_3D" />
<use enum="VERSION_4_2" token="INT_IMAGE_2D_RECT" />
<use enum="VERSION_4_2" token="INT_IMAGE_CUBE" />
<use enum="VERSION_4_2" token="INT_IMAGE_BUFFER" />
<use enum="VERSION_4_2" token="INT_IMAGE_1D_ARRAY" />
<use enum="VERSION_4_2" token="INT_IMAGE_2D_ARRAY" />
<use enum="VERSION_4_2" token="INT_IMAGE_CUBE_MAP_ARRAY" />
<use enum="VERSION_4_2" token="INT_IMAGE_CUBE_MAP_ARRAY" />
<use enum="VERSION_4_2" token="INT_IMAGE_2D_MULTISAMPLE" />
<use enum="VERSION_4_2" token="INT_IMAGE_2D_MULTISAMPLE_ARRAY" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_1D" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_2D" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_3D" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_2D_RECT" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_CUBE" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_BUFFER" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_1D_ARRAY" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_2D_ARRAY" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_2D_MULTISAMPLE" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY" />
<use enum="VERSION_4_2" token="UNSIGNED_INT_ATOMIC_COUNTER" />
</enum> </enum>
<enum name="ArrayCap"> <enum name="ArrayCap">
<use enum="GetPName" token="VERTEX_ARRAY" /> <use enum="GetPName" token="VERTEX_ARRAY" />
@ -1391,6 +1551,18 @@
<token name="FRAGMENT_PROGRAM" value="0x8804" /> <token name="FRAGMENT_PROGRAM" value="0x8804" />
<token name="VERTEX_PROGRAM" value="0x8620" /> <token name="VERTEX_PROGRAM" value="0x8620" />
</enum> </enum>
<enum name="AtomicCounterBufferParameter">
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER_BINDING" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER_DATA_SIZE" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER" />
<use enum="VERSION_4_3" token="ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER" />
</enum>
<enum name="AttribMask"> <enum name="AttribMask">
<token name="MULTISAMPLE_BIT" value="0x20000000" /> <token name="MULTISAMPLE_BIT" value="0x20000000" />
</enum> </enum>
@ -1400,6 +1572,16 @@
<use enum="BeginMode" token="Triangles" /> <use enum="BeginMode" token="Triangles" />
</enum> </enum>
<enum name="BeginMode"> <enum name="BeginMode">
<token name="LINE_LOOP" value="0x0002" />
<token name="LINE_STRIP" value="0x0003" />
<token name="LINES" value="0x0001" />
<token name="POINTS" value="0x0000" />
<token name="POLYGON" value="0x0009" />
<token name="QUAD_STRIP" value="0x0008" />
<token name="QUADS" value="0x0007" />
<token name="TRIANGLE_FAN" value="0x0006" />
<token name="TRIANGLE_STRIP" value="0x0005" />
<token name="TRIANGLES" value="0x0004" />
<token name="LINE_STRIP_ADJACENCY" value="0xB" /> <token name="LINE_STRIP_ADJACENCY" value="0xB" />
<token name="LINES_ADJACENCY" value="0xA" /> <token name="LINES_ADJACENCY" value="0xA" />
<token name="TRIANGLE_STRIP_ADJACENCY" value="0xD" /> <token name="TRIANGLE_STRIP_ADJACENCY" value="0xD" />
@ -1455,18 +1637,24 @@
<token name="WRITE_ONLY" value="0x88B9" /> <token name="WRITE_ONLY" value="0x88B9" />
</enum> </enum>
<enum name="BufferAccessMask"> <enum name="BufferAccessMask">
<use enum="ARB_map_buffer_range" token="MAP_READ_BIT" /> <use enum="VERSION_3_0" token="MAP_READ_BIT" />
<use enum="ARB_map_buffer_range" token="MAP_WRITE_BIT" /> <use enum="VERSION_3_0" token="MAP_WRITE_BIT" />
<use enum="ARB_map_buffer_range" token="MAP_INVALIDATE_RANGE_BIT" /> <use enum="VERSION_3_0" token="MAP_INVALIDATE_RANGE_BIT" />
<use enum="ARB_map_buffer_range" token="MAP_INVALIDATE_BUFFER_BIT" /> <use enum="VERSION_3_0" token="MAP_INVALIDATE_BUFFER_BIT" />
<use enum="ARB_map_buffer_range" token="MAP_FLUSH_EXPLICIT_BIT" /> <use enum="VERSION_3_0" token="MAP_FLUSH_EXPLICIT_BIT" />
<use enum="ARB_map_buffer_range" token="MAP_UNSYNCHRONIZED_BIT" /> <use enum="VERSION_3_0" token="MAP_UNSYNCHRONIZED_BIT" />
<use enum="VERSION_4_4" token="MASK_COHERENT_BIT" />
<use enum="VERSION_4_4" token="MASK_PERSISTENT_BIT" />
</enum> </enum>
<enum name="BufferParameterName"> <enum name="BufferParameterName">
<token name="BUFFER_ACCESS" value="0x88BB" /> <use enum="VERSION_1_5" token="BUFFER_SIZE" />
<token name="BUFFER_MAPPED" value="0x88BC" /> <use enum="VERSION_1_5" token="BUFFER_USAGE" />
<token name="BUFFER_SIZE" value="0x8764" /> <use enum="VERSION_1_5" token="BUFFER_ACCESS" />
<token name="BUFFER_USAGE" value="0x8765" /> <use enum="VERSION_1_5" token="BUFFER_MAPPED" />
<use enum="VERSION_3_0" token="BUFFER_ACCESS_FLAGS" />
<use enum="VERSION_3_0" token="BUFFER_MAP_OFFSET" />
<use enum="VERSION_3_0" token="BUFFER_MAP_LENGTH" />
<use enum="VERSION_4_4" token="BUFFER_IMMUTABLE_STORAGE" />
</enum> </enum>
<enum name="BufferParameterNameARB"> <enum name="BufferParameterNameARB">
<token name="BUFFER_ACCESS" value="0x88BB" /> <token name="BUFFER_ACCESS" value="0x88BB" />
@ -1480,6 +1668,14 @@
<enum name="BufferPointerNameARB"> <enum name="BufferPointerNameARB">
<token name="BUFFER_MAP_POINTER" value="0x88BD" /> <token name="BUFFER_MAP_POINTER" value="0x88BD" />
</enum> </enum>
<enum name="BufferStorageFlags">
<use enum="VERSION_3_0" token="MAP_READ_BIT" />
<use enum="VERSION_3_0" token="MAP_WRITE_BIT" />
<use enum="VERSION_4_4" token="CLIENT_STORAGE_BIT" />
<use enum="VERSION_4_4" token="DYNAMIC_STORAGE_BIT" />
<use enum="VERSION_4_4" token="MAP_COHERENT_BIT" />
<use enum="VERSION_4_4" token="MAP_PERSISTENT_BIT" />
</enum>
<enum name="BufferTarget"> <enum name="BufferTarget">
<use enum="ARB_copy_buffer" token="COPY_READ_BUFFER" /> <use enum="ARB_copy_buffer" token="COPY_READ_BUFFER" />
<use enum="ARB_copy_buffer" token="COPY_WRITE_BUFFER" /> <use enum="ARB_copy_buffer" token="COPY_WRITE_BUFFER" />
@ -1491,6 +1687,16 @@
<token name="TRANSFORM_FEEDBACK_BUFFER" value="0x8C8E" /> <token name="TRANSFORM_FEEDBACK_BUFFER" value="0x8C8E" />
<use enum="VERSION_3_1" token="TEXTURE_BUFFER" /> <use enum="VERSION_3_1" token="TEXTURE_BUFFER" />
<use enum="VERSION_4_0" token="DRAW_INDIRECT_BUFFER" /> <use enum="VERSION_4_0" token="DRAW_INDIRECT_BUFFER" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER" />
<use enum="VERSION_4_3" token="DISPATCH_INDIRECT_BUFFER" />
<use enum="VERSION_4_3" token="SHADER_STORAGE_BUFFER" />
<use enum="VERSION_4_4" token="QUERY_BUFFER" />
</enum>
<enum name="BufferRangeTarget">
<use token="ATOMIC_COUNTER_BUFFER" />
<use token="SHADER_STORAGE_BUFFER" />
<use token="UNIFORM_BUFFER" />
<use token="TRANSFORM_FEEDBACK_BUFFER" />
</enum> </enum>
<enum name="BufferTargetARB"> <enum name="BufferTargetARB">
<token name="ARRAY_BUFFER" value="0x8892" /> <token name="ARRAY_BUFFER" value="0x8892" />
@ -2001,7 +2207,7 @@
<use enum="VERSION_3_1" token="MAX_TEXTURE_BUFFER_SIZE" /> <use enum="VERSION_3_1" token="MAX_TEXTURE_BUFFER_SIZE" />
<use enum="VERSION_3_1" token="TEXTURE_BINDING_BUFFER" /> <use enum="VERSION_3_1" token="TEXTURE_BINDING_BUFFER" />
<use enum="VERSION_3_1" token="TEXTURE_BUFFER_DATA_STORE_BINDING" /> <use enum="VERSION_3_1" token="TEXTURE_BUFFER_DATA_STORE_BINDING" />
<use enum="VERSION_3_1" token="TEXTURE_BUFFER_FORMAT" /> <!--<use enum="VERSION_3_1" token="TEXTURE_BUFFER_FORMAT" /> Does not exist in core -->
<use enum="VERSION_3_2" token="MAX_FRAGMENT_INPUT_COMPONENTS" /> <use enum="VERSION_3_2" token="MAX_FRAGMENT_INPUT_COMPONENTS" />
<use enum="VERSION_3_2" token="MAX_GEOMETRY_INPUT_COMPONENTS" /> <use enum="VERSION_3_2" token="MAX_GEOMETRY_INPUT_COMPONENTS" />
<use enum="VERSION_3_2" token="MAX_GEOMETRY_OUTPUT_COMPONENTS" /> <use enum="VERSION_3_2" token="MAX_GEOMETRY_OUTPUT_COMPONENTS" />
@ -2037,10 +2243,10 @@
<use enum="VERSION_4_0" token="MAX_TESS_EVALUATION_INPUT_COMPONENTS" /> <use enum="VERSION_4_0" token="MAX_TESS_EVALUATION_INPUT_COMPONENTS" />
<use enum="VERSION_4_0" token="MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS" /> <use enum="VERSION_4_0" token="MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS" />
<use enum="VERSION_4_0" token="MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS" /> <use enum="VERSION_4_0" token="MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS" />
<use enum="VERSION_4_0" token="TEXTURE_CUBE_MAP_ARRAY_BINDING" /> <!--<use enum="VERSION_4_0" token="TEXTURE_CUBE_MAP_ARRAY_BINDING" /> Does not exist -->
<use enum="VERSION_4_0" token="MAX_PROGRAM_TEXTURE_GATHER_OFFSET" /> <use enum="VERSION_4_0" token="MAX_PROGRAM_TEXTURE_GATHER_OFFSET" />
<use enum="VERSION_4_0" token="MIN_PROGRAM_TEXTURE_GATHER_OFFSET" /> <use enum="VERSION_4_0" token="MIN_PROGRAM_TEXTURE_GATHER_OFFSET" />
<use enum="VERSION_4_0" token="MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS" /> <!--<use enum="VERSION_4_0" token="MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS" /> Does not exist -->
<use enum="VERSION_4_0" token="TRANSFORM_FEEDBACK_BUFFER_PAUSED" /> <use enum="VERSION_4_0" token="TRANSFORM_FEEDBACK_BUFFER_PAUSED" />
<use enum="VERSION_4_0" token="TRANSFORM_FEEDBACK_BUFFER_ACTIVE" /> <use enum="VERSION_4_0" token="TRANSFORM_FEEDBACK_BUFFER_ACTIVE" />
<use enum="VERSION_4_0" token="TRANSFORM_FEEDBACK_BINDING" /> <use enum="VERSION_4_0" token="TRANSFORM_FEEDBACK_BINDING" />
@ -2070,6 +2276,7 @@
<enum name="GetQueryObjectParam"> <enum name="GetQueryObjectParam">
<token name="QUERY_RESULT" value="0x8866" /> <token name="QUERY_RESULT" value="0x8866" />
<token name="QUERY_RESULT_AVAILABLE" value="0x8867" /> <token name="QUERY_RESULT_AVAILABLE" value="0x8867" />
<token name="QUERY_RESULT_NO_WAIT" value="0x9194" />
</enum> </enum>
<enum name="GetQueryParam"> <enum name="GetQueryParam">
<token name="CURRENT_QUERY" value="0x8865" /> <token name="CURRENT_QUERY" value="0x8865" />
@ -2175,6 +2382,24 @@
<token name="MATRIX8" value="0x88C8" /> <token name="MATRIX8" value="0x88C8" />
<token name="MATRIX9" value="0x88C9" /> <token name="MATRIX9" value="0x88C9" />
</enum> </enum>
<enum name="MemoryBarrierFlags">
<use enum="VERSION_4_2" token="ALL_BARRIER_BITS" />
<use enum="VERSION_4_2" token="VERTEX_ATTRIB_ARRAY_BARRIER_BIT" />
<use enum="VERSION_4_2" token="ELEMENT_ARRAY_BARRIER_BIT" />
<use enum="VERSION_4_2" token="UNIFORM_BARRIER_BIT" />
<use enum="VERSION_4_2" token="TEXTURE_FETCH_BARRIER_BIT" />
<use enum="VERSION_4_2" token="BUFFER_UPDATE_BARRIER_BIT" />
<use enum="VERSION_4_2" token="SHADER_IMAGE_ACCESS_BARRIER_BIT" />
<use enum="VERSION_4_2" token="COMMAND_BARRIER_BIT" />
<use enum="VERSION_4_2" token="PIXEL_BUFFER_BARRIER_BIT" />
<use enum="VERSION_4_2" token="TEXTURE_UPDATE_BARRIER_BIT" />
<use enum="VERSION_4_2" token="FRAMEBUFFER_BARRIER_BIT" />
<use enum="VERSION_4_2" token="TRANSFORM_FEEDBACK_BARRIER_BIT" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BARRIER_BIT" />
<use enum="VERSION_4_3" token="SHADER_STORAGE_BARRIER_BIT" />
<use enum="VERSION_4_4" token="CLIENT_MAPPED_BUFFER_BARRIER_BIT" />
<use enum="VERSION_4_4" token="QUERY_BUFFER_BARRIER_BIT" />
</enum>
<enum name="MinmaxTarget"> <enum name="MinmaxTarget">
<token name="MINMAX" value="0x802E" /> <token name="MINMAX" value="0x802E" />
</enum> </enum>
@ -2208,6 +2433,27 @@
<token name="RED_INTEGER" value="0x8D94" /> <token name="RED_INTEGER" value="0x8D94" />
<token name="RGB_INTEGER" value="0x8D98" /> <token name="RGB_INTEGER" value="0x8D98" />
<token name="RGBA_INTEGER" value="0x8D99" /> <token name="RGBA_INTEGER" value="0x8D99" />
<use enum="EXT_abgr" token="ABGR_EXT" />
<use enum="EXT_cmyka" token="CMYK_EXT" />
<use enum="EXT_cmyka" token="CMYKA_EXT" />
<use enum="SGIX_icc_texture" token="R5_G6_B5_ICC_SGIX" />
<use enum="SGIX_icc_texture" token="R5_G6_B5_A8_ICC_SGIX" />
<use enum="SGIX_icc_texture" token="ALPHA16_ICC_SGIX" />
<use enum="SGIX_icc_texture" token="LUMINANCE16_ICC_SGIX" />
<use enum="SGIX_icc_texture" token="LUMINANCE16_ALPHA8_ICC_SGIX" />
<use enum="SGIX_ycrcb" token="YCRCB_422_SGIX" />
<use enum="SGIX_ycrcb" token="YCRCB_444_SGIX" />
<token name="ALPHA" value="0x1906" />
<token name="BLUE" value="0x1905" />
<token name="COLOR_INDEX" value="0x1900" />
<token name="DEPTH_COMPONENT" value="0x1902" />
<token name="GREEN" value="0x1904" />
<token name="LUMINANCE" value="0x1909" />
<token name="LUMINANCE_ALPHA" value="0x190A" />
<token name="RED" value="0x1903" />
<token name="RGB" value="0x1907" />
<token name="RGBA" value="0x1908" />
<token name="STENCIL_INDEX" value="0x1901" />
</enum> </enum>
<enum name="PixelInternalFormat"> <enum name="PixelInternalFormat">
<use enum="PixelFormat" token="DEPTH_COMPONENT" /> <use enum="PixelFormat" token="DEPTH_COMPONENT" />
@ -2336,25 +2582,54 @@
<token name="LOWER_LEFT" value="0x8CA1" /> <token name="LOWER_LEFT" value="0x8CA1" />
<token name="UPPER_LEFT" value="0x8CA2" /> <token name="UPPER_LEFT" value="0x8CA2" />
</enum> </enum>
<enum name="ProgramInterface">
<use enum="VERSION_3_0" token="TRANSFORM_FEEDBACK_BUFFER" />
<use enum="VERSION_4_2" token="ATOMIC_COUNTER_BUFFER" />
<use enum="VERSION_4_3" token="BUFFER_VARIABLE" />
<use enum="VERSION_4_3" token="UNIFORM" />
<use enum="VERSION_4_3" token="UNIFORM_BLOCK" />
<use enum="VERSION_4_3" token="PROGRAM_INPUT" />
<use enum="VERSION_4_3" token="PROGRAM_OUTPUT" />
<use enum="VERSION_4_3" token="SHADER_STORAGE_BLOCK" />
<use enum="VERSION_4_3" token="GEOMETRY_SUBROUTINE" />
<use enum="VERSION_4_3" token="VERTEX_SUBROUTINE" />
<use enum="VERSION_4_3" token="TESS_CONTROL_SUBROUTINE" />
<use enum="VERSION_4_3" token="TESS_EVALUATION_SUBROUTINE" />
<use enum="VERSION_4_3" token="FRAGMENT_SUBROUTINE" />
<use enum="VERSION_4_3" token="COMPUTE_SUBROUTINE" />
<use enum="VERSION_4_3" token="TESS_CONTROL_SUBROUTINE_UNIFORM" />
<use enum="VERSION_4_3" token="TESS_EVALUATION_SUBROUTINE_UNIFORM" />
<use enum="VERSION_4_3" token="GEOMETRY_SUBROUTINE_UNIFORM" />
<use enum="VERSION_4_3" token="VERTEX_SUBROUTINE_UNIFORM" />
<use enum="VERSION_4_3" token="FRAGMENT_SUBROUTINE_UNIFORM" />
<use enum="VERSION_4_3" token="COMPUTE_SUBROUTINE_UNIFORM" />
<use enum="VERSION_4_3" token="TRANSFORM_FEEDBACK_VARYING" />
</enum>
<enum name="ProgramInterfaceParameter">
<use enum="VERSION_4_3" token="ACTIVE_RESOURCES" />
<use enum="VERSION_4_3" token="MAX_NAME_LENGTH" />
<use enum="VERSION_4_3" token="MAX_NUM_ACTIVE_VARIABLES" />
<use enum="VERSION_4_3" token="MAX_NUM_COMPATIBLE_SUBROUTINES" />
</enum>
<enum name="ProgramParameter"> <enum name="ProgramParameter">
<use enum="ARB_uniform_buffer_object" token="ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH" /> <use enum="VERSION_2_0" token="DELETE_STATUS" />
<use enum="ARB_uniform_buffer_object" token="ACTIVE_UNIFORM_BLOCKS" /> <use enum="VERSION_2_0" token="LINK_STATUS" />
<token name="ACTIVE_ATTRIBUTE_MAX_LENGTH" value="0x8B8A" /> <use enum="VERSION_2_0" token="VALIDATE_STATUS" />
<token name="ACTIVE_ATTRIBUTES" value="0x8B89" /> <use enum="VERSION_2_0" token="INFO_LOG_LENGTH" />
<token name="ACTIVE_UNIFORM_MAX_LENGTH" value="0x8B87" /> <use enum="VERSION_2_0" token="ATTACHED_SHADERS" />
<token name="ACTIVE_UNIFORMS" value="0x8B86" /> <use enum="VERSION_2_0" token="ACTIVE_ATTRIBUTES" />
<token name="ATTACHED_SHADERS" value="0x8B85" /> <use enum="VERSION_2_0" token="ACTIVE_ATTRIBUTE_MAX_LENGTH" />
<token name="DELETE_STATUS" value="0x8B80" /> <use enum="VERSION_2_0" token="ACTIVE_UNIFORMS" />
<token name="GEOMETRY_INPUT_TYPE" value="0x8DDB" /> <use enum="VERSION_2_0" token="ACTIVE_UNIFORM_MAX_LENGTH" />
<token name="GEOMETRY_OUTPUT_TYPE" value="0x8DDC" /> <use enum="VERSION_3_0" token="TRANSFORM_FEEDBACK_BUFFER_MODE" />
<token name="GEOMETRY_VERTICES_OUT" value="0x8DDA" /> <use enum="VERSION_3_0" token="TRANSFORM_FEEDBACK_VARYINGS" />
<token name="INFO_LOG_LENGTH" value="0x8B84" /> <use enum="VERSION_3_0" token="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH" />
<token name="LINK_STATUS" value="0x8B82" /> <use enum="VERSION_3_1" token="ACTIVE_UNIFORM_BLOCKS" />
<token name="TRANSFORM_FEEDBACK_BUFFER_MODE" value="0x8C7F" /> <use enum="VERSION_3_1" token="ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH" />
<token name="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH" value="0x8C76" /> <use enum="VERSION_3_2" token="GEOMETRY_VERTICES_OUT" />
<token name="TRANSFORM_FEEDBACK_VARYINGS" value="0x8C83" /> <use enum="VERSION_3_2" token="GEOMETRY_INPUT_TYPE" />
<token name="VALIDATE_STATUS" value="0x8B83" /> <use enum="VERSION_3_2" token="GEOMETRY_OUTPUT_TYPE" />
<use enum="VERSION_4_0" token="GEOMETRY_SHADER_INVOCATIONS" /> <use enum="VERSION_3_2" token="GEOMETRY_SHADER_INVOCATIONS" />
<use enum="VERSION_4_0" token="TESS_CONTROL_OUTPUT_VERTICES" /> <use enum="VERSION_4_0" token="TESS_CONTROL_OUTPUT_VERTICES" />
<use enum="VERSION_4_0" token="TESS_GEN_MODE" /> <use enum="VERSION_4_0" token="TESS_GEN_MODE" />
<use enum="VERSION_4_0" token="TESS_GEN_SPACING" /> <use enum="VERSION_4_0" token="TESS_GEN_SPACING" />
@ -2362,18 +2637,62 @@
<use enum="VERSION_4_0" token="TESS_GEN_POINT_MODE" /> <use enum="VERSION_4_0" token="TESS_GEN_POINT_MODE" />
<use enum="VERSION_4_1" token="PROGRAM_SEPARABLE" /> <use enum="VERSION_4_1" token="PROGRAM_SEPARABLE" />
<use enum="VERSION_4_1" token="PROGRAM_BINARY_RETRIEVABLE_HINT" /> <use enum="VERSION_4_1" token="PROGRAM_BINARY_RETRIEVABLE_HINT" />
<use enum="VERSION_4_1" token="PROGRAM_BINARY_LENGTH" /> <use enum="VERSION_4_2" token="ACTIVE_ATOMIC_COUNTER_BUFFERS" />
<use enum="VERSION_4_3" token="MAX_COMPUTE_WORK_GROUP_SIZE" />
</enum>
<enum name="ProgramParameterPName">
<use enum="VERSION_4_1" token="PROGRAM_SEPARABLE" />
<use enum="VERSION_4_1" token="PROGRAM_BINARY_RETRIEVABLE_HINT" />
</enum> </enum>
<enum name="ProgramPipelineParameter"> <enum name="ProgramPipelineParameter">
<use enum="VERSION_4_1" token="ACTIVE_PROGRAM" /> <use enum="VERSION_4_1" token="ACTIVE_PROGRAM" />
<use enum="VERSION_2_0" token="VALIDATE_STATUS" />
<use enum="VERSION_2_0" token="VERTEX_SHADER" />
<use enum="VERSION_2_0" token="FRAGMENT_SHADER" />
<use enum="VERSION_3_2" token="GEOMETRY_SHADER" />
<use enum="VERSION_4_2" token="TESS_CONTROL_SHADER" />
<use enum="VERSION_4_2" token="TESS_EVALUATION_SHADER" />
<use enum="VERSION_2_0" token="INFO_LOG_LENGTH" />
<use enum="VERSION_4_3" token="COMPUTE_SHADER" />
</enum>
<enum name="ProgramProperty">
<use enum="VERSION_4_3" token="ACTIVE_VARIABLES" />
<use enum="VERSION_4_3" token="BUFFER_BINDING" />
<use enum="VERSION_4_3" token="NUM_ACTIVE_VARIABLES" />
<use enum="VERSION_4_3" token="ARRAY_SIZE" />
<use enum="VERSION_4_3" token="ARRAY_STRIDE" />
<use enum="VERSION_4_3" token="BLOCK_INDEX" />
<use enum="VERSION_4_3" token="IS_ROW_MAJOR" />
<use enum="VERSION_4_3" token="MATRIX_STRIDE" />
<use enum="VERSION_4_3" token="ATOMIC_COUNTER_BUFFER_INDEX" />
<use enum="VERSION_4_3" token="BUFFER_DATA_SIZE" />
<use enum="VERSION_4_3" token="NUM_COMPATIBLE_SUBROUTINES" />
<use enum="VERSION_4_3" token="COMPATIBLE_SUBROUTINES" />
<use enum="VERSION_4_3" token="IS_PER_PATCH" />
<use enum="VERSION_4_3" token="LOCATION" />
<use enum="VERSION_4_4" token="LOCATION_COMPONENT" />
<use enum="VERSION_4_3" token="LOCATION_INDEX" />
<use enum="VERSION_4_3" token="NAME_LENGTH" />
<use enum="VERSION_4_3" token="OFFSET" />
<use enum="VERSION_4_3" token="REFERENCED_BY_VERTEX_SHADER" />
<use enum="VERSION_4_3" token="REFERENCED_BY_TESS_CONTROL_SHADER" />
<use enum="VERSION_4_3" token="REFERENCED_BY_TESS_EVALUATION_SHADER" />
<use enum="VERSION_4_3" token="REFERENCED_BY_GEOMETRY_SHADER" />
<use enum="VERSION_4_3" token="REFERENCED_BY_FRAGMENT_SHADER" />
<use enum="VERSION_4_4" token="TRANSFORM_FEEDBACK_BUFFER_INDEX" />
<use enum="VERSION_4_4" token="TRANSFORM_FEEDBACK_BUFFER_STRIDE" />
<use enum="VERSION_4_3" token="TOP_LEVEL_ARRAY_SIZE" />
<use enum="VERSION_4_3" token="TOP_LEVEL_ARRAY_STRIDE" />
<use enum="VERSION_4_3" token="TYPE" />
</enum> </enum>
<enum name="ProgramStageMask"> <enum name="ProgramStageMask">
<use enum="VERSION_4_1" token="ALL_SHADER_BITS" />
<use enum="VERSION_4_1" token="VERTEX_SHADER_BIT" /> <use enum="VERSION_4_1" token="VERTEX_SHADER_BIT" />
<use enum="VERSION_4_1" token="FRAGMENT_SHADER_BIT" /> <use enum="VERSION_4_1" token="FRAGMENT_SHADER_BIT" />
<use enum="VERSION_4_1" token="GEOMETRY_SHADER_BIT" /> <use enum="VERSION_4_1" token="GEOMETRY_SHADER_BIT" />
<use enum="VERSION_4_1" token="TESS_CONTROL_SHADER_BIT" /> <use enum="VERSION_4_1" token="TESS_CONTROL_SHADER_BIT" />
<use enum="VERSION_4_1" token="TESS_EVALUATION_SHADER_BIT" /> <use enum="VERSION_4_1" token="TESS_EVALUATION_SHADER_BIT" />
<use enum="VERSION_4_1" token="ALL_SHADER_BITS" /> <use enum="VERSION_4_4" token="COMPUTE_SHADER_BIT" />
</enum> </enum>
<enum name="ProgramStageParameter"> <enum name="ProgramStageParameter">
<use enum="VERSION_4_0" token="ACTIVE_SUBROUTINES" /> <use enum="VERSION_4_0" token="ACTIVE_SUBROUTINES" />
@ -2395,7 +2714,8 @@
<token name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN" value="0x8C88" /> <token name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN" value="0x8C88" />
<use enum="ARB_occlusion_query2" token="ANY_SAMPLES_PASSED" /> <use enum="ARB_occlusion_query2" token="ANY_SAMPLES_PASSED" />
<use enum="VERSION_3_3" token="TIME_ELAPSED" /> <use enum="VERSION_3_3" token="TIME_ELAPSED" />
<use enum="VERSION_3_3" token="TIMESTAMP" /> <use enum="VERSION_3_3" token="TIMESTAMP" /> <!-- only valid in GetQuery -->
<use enum="VERSION_4_3" token="ANY_SAMPLES_PASSED_CONSERVATIVE" />
</enum> </enum>
<enum name="ReadBufferMode"> <enum name="ReadBufferMode">
<use enum="ARB_framebuffer_object" token="COLOR_ATTACHMENT0" /> <use enum="ARB_framebuffer_object" token="COLOR_ATTACHMENT0" />
@ -2551,12 +2871,14 @@
<use enum="VERSION_4_1" token="HIGH_INT" /> <use enum="VERSION_4_1" token="HIGH_INT" />
</enum> </enum>
<enum name="ShaderType"> <enum name="ShaderType">
<token name="FRAGMENT_SHADER" value="0x8B30" /> <use enum="VERSION_2_0" token="FRAGMENT_SHADER" />
<token name="GEOMETRY_SHADER" value="0x8DD9" /> <use enum="VERSION_2_0" token="VERTEX_SHADER" />
<token name="GEOMETRY_SHADER_EXT" value="0x8DD9" /> <use enum="VERSION_3_2" token="GEOMETRY_SHADER" />
<token name="VERTEX_SHADER" value="0x8B31" /> <use enum="EXT_geometry_shader4" token="GEOMETRY_SHADER_EXT" /> <!-- for back compat -->
<use enum="VERSION_4_0" token="TESS_EVALUATION_SHADER" /> <use enum="VERSION_4_0" token="TESS_EVALUATION_SHADER" />
<use enum="VERSION_4_0" token="TESS_CONTROL_SHADER" /> </enum> <use enum="VERSION_4_0" token="TESS_CONTROL_SHADER" />
<use enum="VERSION_4_3" token="COMPUTE_SHADER" />
</enum>
<enum name="SizedInternalFormat"> <enum name="SizedInternalFormat">
<use enum="PixelInternalFormat" token="R8" /> <use enum="PixelInternalFormat" token="R8" />
<use enum="PixelInternalFormat" token="R16" /> <use enum="PixelInternalFormat" token="R16" />
@ -2602,6 +2924,25 @@
<use enum="StringName" token="EXTENSIONS" /> <use enum="StringName" token="EXTENSIONS" />
<token name="SHADING_LANGUAGE_VERSION" value="0x8B8C" /> <token name="SHADING_LANGUAGE_VERSION" value="0x8B8C" />
</enum> </enum>
<enum name="SyncCondition">
<use enum="VERSION_4_1" token="SYNC_GPU_COMMANDS_COMPLETE" />
</enum>
<enum name="WaitSyncFlags">
<token name="DEFAULT" value="0" />
<use enum="VERSION_4_1" token="SYNC_FLUSH_COMMANDS_BIT" />
</enum>
<enum name="WaitSyncStatus">
<use token="ALREADY_SIGNALED" />
<use token="TIMEOUT_EXPIRED" />
<use token="CONDITION_SATISFIED" />
<use token="WAIT_FAILED" />
</enum>
<enum name="SyncParameter">
<use token="OBJECT_TYPE" />
<use token="SYNC_STATUS" />
<use token="SYNC_CONDITION" />
<use token="SYNC_FLAGS" />
</enum>
<enum name="TexCoordPointerType"> <enum name="TexCoordPointerType">
<use enum="ARB_half_float_vertex" token="HALF_FLOAT" /> <use enum="ARB_half_float_vertex" token="HALF_FLOAT" />
<use enum="VERSION_3_3" token="UNSIGNED_INT_2_10_10_10_REV" /> <use enum="VERSION_3_3" token="UNSIGNED_INT_2_10_10_10_REV" />

File diff suppressed because it is too large Load diff

View file

@ -63,8 +63,9 @@ VoidPointer, void*
float, float float, float
int, int int, int
#void, * #void, *
GLDEBUGPROC, DebugProc
GLDEBUGPROCARB, DebugProcArb GLDEBUGPROCARB, DebugProcArb
GLDEBUGPROCAMD , DebugProcAmd GLDEBUGPROCAMD, DebugProcAmd
GLvdpauSurfaceNV, IntPtr GLvdpauSurfaceNV, IntPtr
# Glu types. # Glu types.

View file

@ -238,7 +238,8 @@ namespace Bind
// "(Const)VoidPointer" -> "void*" // "(Const)VoidPointer" -> "void*"
GLTypes.Add(words[0], "void*"); GLTypes.Add(words[0], "void*");
} }
else if (words[0] == "CharPointer" || words[0] == "charPointerARB") else if (words[0] == "CharPointer" || words[0] == "charPointerARB" ||
words[0] == "ConstCharPointer")
{ {
// The typematching logic cannot handle pointers to pointers, e.g. CharPointer* -> char** -> string* -> string[]. // The typematching logic cannot handle pointers to pointers, e.g. CharPointer* -> char** -> string* -> string[].
// Hence we give it a push. // Hence we give it a push.

View file

@ -42,6 +42,9 @@ namespace CHeaderToXML
enum ParserModes { None, Enum, Func }; enum ParserModes { None, Enum, Func };
ParserModes CurrentMode; ParserModes CurrentMode;
enum EntryModes { Core, Compatibility };
EntryModes CurrentEntryMode;
public override IEnumerable<XElement> Parse(string[] lines) public override IEnumerable<XElement> Parse(string[] lines)
{ {
XElement current = null; XElement current = null;
@ -64,6 +67,7 @@ namespace CHeaderToXML
new XAttribute("name", words[0])); new XAttribute("name", words[0]));
CurrentMode = ParserModes.Enum; CurrentMode = ParserModes.Enum;
CurrentEntryMode = EntryModes.Core;
} }
else if (line.StartsWith(words[0] + "(")) else if (line.StartsWith(words[0] + "("))
{ {
@ -77,6 +81,11 @@ namespace CHeaderToXML
new XAttribute("name", words[0]), new XAttribute("name", words[0]),
new XAttribute("extension", extension)); new XAttribute("extension", extension));
if (words[0].Contains("ShaderSource"))
{
System.Diagnostics.Debugger.Break();
}
CurrentMode = ParserModes.Func; CurrentMode = ParserModes.Func;
} }
else if (current != null) else if (current != null)
@ -90,12 +99,28 @@ namespace CHeaderToXML
current.Add(new XElement("use", current.Add(new XElement("use",
new XAttribute("enum", words[1]), new XAttribute("enum", words[1]),
new XAttribute("token", words[2]))); new XAttribute("token", words[2])));
//new XAttribute("profile", CurrentEntryMode == EntryModes.Compatibility ?
// "compatibility" : "core")));
} }
else if (words[1] == "=") else if (words[1] == "=")
{ {
current.Add(new XElement("token", current.Add(new XElement("token",
new XAttribute("name", words[0]), new XAttribute("name", words[0]),
new XAttribute("value", words[2]))); new XAttribute("value", words[2])));
//new XAttribute("profile", CurrentEntryMode == EntryModes.Compatibility ?
// "compatibility" : "core")));
}
else if (words[0] == "profile:")
{
//CurrentEntryMode = words[1] == "compatibility" ?
// EntryModes.Compatibility : EntryModes.Core;
}
else if (words[0].Contains("future_use"))
{
// This is a bug in the 4.3 specs. Unfortunately,
// Khronos is no longer accepting bug reports for
// the .spec files.
continue;
} }
else else
{ {

View file

@ -3,6 +3,12 @@
This is a simple tool to convert C headers to XML files. It works using simple pattern matching - it does not actually parse the header files. For this reason, it will work with only a few, specific header files: ES and CL at this point. This is a simple tool to convert C headers to XML files. It works using simple pattern matching - it does not actually parse the header files. For this reason, it will work with only a few, specific header files: ES and CL at this point.
[Example]
Convert.exe -p:gl -v:4.3 -t:spec -o:../../../Source/Bind/Specifications/GL2/signatures.xml https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/oldspecs/gl.spec https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/oldspecs/enum.spec https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/oldspecs/enumext.spec
The line above will download the latest .spec files from the public Khronos repository and update signatures.xml for the binding generator.
[Usage] [Usage]
Convert.exe -p:{PREFIX} -v:{VERSION} -t:{TYPE} -o:{OUT} {INPUT1} ... {INPUTn} Convert.exe -p:{PREFIX} -v:{VERSION} -t:{TYPE} -o:{OUT} {INPUT1} ... {INPUTn}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1322,7 +1322,7 @@ namespace OpenTK.Graphics.OpenGL
#region DrawElements #region DrawElements
public static void DrawElements(BeginMode mode, int count, DrawElementsType type, int offset) public static void DrawElements(PrimitiveType mode, int count, DrawElementsType type, int offset)
{ {
DrawElements(mode, count, type, new IntPtr(offset)); DrawElements(mode, count, type, new IntPtr(offset));
} }
@ -1457,13 +1457,75 @@ namespace OpenTK.Graphics.OpenGL
#region Obsolete #region Obsolete
[AutoGenerated(Category = "VERSION_1_0_DEPRECATED", Version = "1.0", EntryPoint = "glBegin")]
[Obsolete("Use BeginMode(PrimitiveType) instead")]
public static void Begin(OpenTK.Graphics.OpenGL.BeginMode mode)
{
Begin((PrimitiveType)mode);
}
[AutoGenerated(Category = "Version11Deprecated", Version = "1.1", EntryPoint = "glDisableClientState")] [AutoGenerated(Category = "Version11Deprecated", Version = "1.1", EntryPoint = "glDisableClientState")]
[Obsolete("Use DisableClientState(ArrayCap) instead.")] [Obsolete("Use DisableClientState(ArrayCap) instead")]
public static void DisableClientState(OpenTK.Graphics.OpenGL.EnableCap array) public static void DisableClientState(OpenTK.Graphics.OpenGL.EnableCap array)
{ {
DisableClientState((ArrayCap)array); DisableClientState((ArrayCap)array);
} }
[AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawArrays")]
[Obsolete("Use DrawArrays(PrimitiveType) instead")]
public static void DrawArrays(OpenTK.Graphics.OpenGL.BeginMode mode, Int32 first, Int32 count)
{
DrawArrays((PrimitiveType)mode, first, count);
}
[AutoGenerated(Category = "VERSION_3_1", Version = "3.1", EntryPoint = "glDrawArraysInstanced")]
[Obsolete("Use DrawArraysInstanced(PrimitiveType) instead")]
public static void DrawArraysInstanced(OpenTK.Graphics.OpenGL.BeginMode mode, Int32 first, Int32 count, Int32 primcount)
{
DrawArraysInstanced((PrimitiveType)mode, first, count, primcount);
}
[AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
[Obsolete("Use DrawElements(PrimitiveType) instead")]
public static void DrawElements(OpenTK.Graphics.OpenGL.BeginMode mode, Int32 count, OpenTK.Graphics.OpenGL.DrawElementsType type, IntPtr indices)
{
DrawElements((PrimitiveType)mode, count, type, indices);
}
[AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
[Obsolete("Use DrawElements(PrimitiveType) instead")]
public static void DrawElements<T3>(OpenTK.Graphics.OpenGL.BeginMode mode, Int32 count, OpenTK.Graphics.OpenGL.DrawElementsType type, [InAttribute, OutAttribute] T3[] indices)
where T3 : struct
{
DrawElements((PrimitiveType)mode, count, type, indices);
}
[AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
[Obsolete("Use DrawElements(PrimitiveType) instead")]
[CLSCompliant(false)]
public static void DrawElements<T3>(OpenTK.Graphics.OpenGL.BeginMode mode, Int32 count, OpenTK.Graphics.OpenGL.DrawElementsType type, [InAttribute, OutAttribute] T3[,] indices)
where T3 : struct
{
DrawElements((PrimitiveType)mode, count, type, indices);
}
[AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
[Obsolete("Use DrawElements(PrimitiveType) instead")]
[CLSCompliant(false)]
public static void DrawElements<T3>(OpenTK.Graphics.OpenGL.BeginMode mode, Int32 count, OpenTK.Graphics.OpenGL.DrawElementsType type, [InAttribute, OutAttribute] T3[,,] indices)
where T3 : struct
{
DrawElements((PrimitiveType)mode, count, type, indices);
}
[AutoGenerated(Category = "VERSION_1_1", Version = "1.1", EntryPoint = "glDrawElements")]
[Obsolete("Use DrawElements(PrimitiveType) instead")]
public static void DrawElements<T3>(OpenTK.Graphics.OpenGL.BeginMode mode, Int32 count, OpenTK.Graphics.OpenGL.DrawElementsType type, [InAttribute, OutAttribute] ref T3 indices)
where T3 : struct
{
DrawElements((PrimitiveType)mode, count, type, ref indices);
}
[AutoGenerated(Category = "Version11Deprecated", Version = "1.1", EntryPoint = "glEnableClientState")] [AutoGenerated(Category = "Version11Deprecated", Version = "1.1", EntryPoint = "glEnableClientState")]
[Obsolete("Use EnableClientState(ArrayCap) instead.")] [Obsolete("Use EnableClientState(ArrayCap) instead.")]
public static void EnableClientState(OpenTK.Graphics.OpenGL.EnableCap array) public static void EnableClientState(OpenTK.Graphics.OpenGL.EnableCap array)
@ -1517,8 +1579,36 @@ namespace OpenTK.Graphics.OpenGL
GetActiveUniforms(program, uniformCount, uniformIndices, (ActiveUniformParameter)pname, @params); GetActiveUniforms(program, uniformCount, uniformIndices, (ActiveUniformParameter)pname, @params);
} }
[AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawArrays")]
[Obsolete("Use MultiDrawArrays(PrimitiveType) instead")]
public static void MultiDrawArrays(OpenTK.Graphics.OpenGL.BeginMode mode, Int32[] first, Int32[] count, Int32 primcount)
{
MultiDrawArrays((PrimitiveType)mode, first, count, primcount);
}
[AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawArrays")]
[Obsolete("Use MultiDrawArrays(PrimitiveType) instead")]
public static void MultiDrawArrays(OpenTK.Graphics.OpenGL.BeginMode mode, ref Int32 first, ref Int32 count, Int32 primcount)
{
MultiDrawArrays((PrimitiveType)mode, ref first, ref count, primcount);
}
[AutoGenerated(Category = "VERSION_1_4", Version = "1.4", EntryPoint = "glMultiDrawArrays")]
[Obsolete("Use MultiDrawArrays(PrimitiveType) instead")]
unsafe public static void MultiDrawArrays(OpenTK.Graphics.OpenGL.BeginMode mode, Int32* first, Int32* count, Int32 primcount)
{
MultiDrawArrays((PrimitiveType)mode, first, count, primcount);
}
public static partial class Arb public static partial class Arb
{ {
[AutoGenerated(Category = "ARB_draw_instanced", Version = "2.0", EntryPoint = "glDrawArraysInstancedARB")]
[Obsolete("Use DrawArraysInstanced(PrimitiveType) instead.")]
public static void DrawArraysInstanced(OpenTK.Graphics.OpenGL.BeginMode mode, Int32 first, Int32 count, Int32 primcount)
{
DrawArraysInstanced((PrimitiveType)mode, first, count, primcount);
}
[AutoGenerated(Category = "ArbGeometryShader4", Version = "3.0", EntryPoint = "glProgramParameteriARB")] [AutoGenerated(Category = "ArbGeometryShader4", Version = "3.0", EntryPoint = "glProgramParameteriARB")]
[Obsolete("Use ProgramParameter(..., AssemblyProgramParameterArb, ...) instead.")] [Obsolete("Use ProgramParameter(..., AssemblyProgramParameterArb, ...) instead.")]
public static void ProgramParameter(Int32 program, ArbGeometryShader4 pname, Int32 value) public static void ProgramParameter(Int32 program, ArbGeometryShader4 pname, Int32 value)
@ -1570,4 +1660,8 @@ namespace OpenTK.Graphics.OpenGL
public delegate void DebugProcArb(int id, public delegate void DebugProcArb(int id,
ArbDebugOutput category, ArbDebugOutput severity, ArbDebugOutput category, ArbDebugOutput severity,
IntPtr length, string message, IntPtr userParam); IntPtr length, string message, IntPtr userParam);
public delegate void DebugProc(int id,
ArbDebugOutput category, ArbDebugOutput severity,
IntPtr length, string message, IntPtr userParam);
} }

View file

@ -1631,7 +1631,7 @@ namespace OpenTK.Platform.Windows
internal static readonly IntPtr MESSAGE_ONLY = new IntPtr(-3); internal static readonly IntPtr MESSAGE_ONLY = new IntPtr(-3);
internal static readonly IntPtr HKEY_LOCAL_MACHINE = new IntPtr(0x80000002); internal static readonly IntPtr HKEY_LOCAL_MACHINE = new IntPtr(unchecked((int)0x80000002));
} }
#endregion #endregion