Khronos Public Bugzilla
Bug 273 - Vector types in GL commands (with {} + "T" used)
Summary: Vector types in GL commands (with {} + "T" used)
Alias: None
Product: OpenGL
Classification: Unclassified
Component: API Specification (show other bugs)
Version: unspecified
Hardware: PC Windows
: P3 normal
Target Milestone: ---
Assignee: Jon Leech
QA Contact:
Depends on:
Reported: 2010-03-12 16:34 PST by Dan Bartlett
Modified: 2013-07-12 02:39 PDT (History)
0 users

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Dan Bartlett 2010-03-12 16:34:38 PST
In the OpenGL specs (eg. 4.0 core), commands with several type descriptors which therefore use {} + "T" are handled in different ways, some have "const T *XXX", others have "const T XXX".

A few examples:

void VertexAttrib{123}{sfd}v( uint index, const T values );
void Uniform{1234}{ifd}v( int location, sizei count, const T value );
void PointParameter{if}v( enum pname, const T params );
void SamplerParameterI{u ui}v( uint sampler, enum pname, const T *params );
void TexParameter{if}v( enum target, enum pname, const T *params );
void ClearBuffer{if ui}v( enum buffer, int drawbuffer, const T *value );

void GetTexParameter{if}v( enum target, enum value, T data );
void GetTexLevelParameter{if}v( enum target, int lod, enum value, T data );
void GetSamplerParameterI{i ui}v( uint sampler, enum pname, T *params );

I assume they should all be displayed in the "*XXX" form, although it does explain in the GL command syntax section that the "v" means that there is an array of the indicated type, so I guess that means it would be a pointer type.
Comment 1 Jon Leech 2013-07-12 02:39:59 PDT
Thanks - good catch, we had fixed some of these along the way but some
of the compatibility ARB_imaging queries as well as MultiTexCoord*v,
GetTexParameter{I}*v, GetTexLevelParameter*v, and
VertexAttrib4Nub needed fixing. These will show up in the next
public spec update.