• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* WARNING: This is auto-generated file. Do not modify, since changes will
2 * be lost! Modify the generating script instead.
3 *
4 * Generated from Khronos GL API description (gl.xml) revision 9d534f9312e56c72df763207e449c6719576fd54.
5 */
6
7void CallLogWrapper::glActiveShaderProgram (glw::GLuint pipeline, glw::GLuint program)
8{
9	if (m_enableLog)
10		m_log << TestLog::Message << "glActiveShaderProgram(" << pipeline << ", " << program << ");" << TestLog::EndMessage;
11	m_gl.activeShaderProgram(pipeline, program);
12}
13
14void CallLogWrapper::glActiveTexture (glw::GLenum texture)
15{
16	if (m_enableLog)
17		m_log << TestLog::Message << "glActiveTexture(" << getTextureUnitStr(texture) << ");" << TestLog::EndMessage;
18	m_gl.activeTexture(texture);
19}
20
21void CallLogWrapper::glAttachShader (glw::GLuint program, glw::GLuint shader)
22{
23	if (m_enableLog)
24		m_log << TestLog::Message << "glAttachShader(" << program << ", " << shader << ");" << TestLog::EndMessage;
25	m_gl.attachShader(program, shader);
26}
27
28void CallLogWrapper::glBeginConditionalRender (glw::GLuint id, glw::GLenum mode)
29{
30	if (m_enableLog)
31		m_log << TestLog::Message << "glBeginConditionalRender(" << id << ", " << toHex(mode) << ");" << TestLog::EndMessage;
32	m_gl.beginConditionalRender(id, mode);
33}
34
35void CallLogWrapper::glBeginQuery (glw::GLenum target, glw::GLuint id)
36{
37	if (m_enableLog)
38		m_log << TestLog::Message << "glBeginQuery(" << getQueryTargetStr(target) << ", " << id << ");" << TestLog::EndMessage;
39	m_gl.beginQuery(target, id);
40}
41
42void CallLogWrapper::glBeginQueryIndexed (glw::GLenum target, glw::GLuint index, glw::GLuint id)
43{
44	if (m_enableLog)
45		m_log << TestLog::Message << "glBeginQueryIndexed(" << toHex(target) << ", " << index << ", " << id << ");" << TestLog::EndMessage;
46	m_gl.beginQueryIndexed(target, index, id);
47}
48
49void CallLogWrapper::glBeginTransformFeedback (glw::GLenum primitiveMode)
50{
51	if (m_enableLog)
52		m_log << TestLog::Message << "glBeginTransformFeedback(" << getPrimitiveTypeStr(primitiveMode) << ");" << TestLog::EndMessage;
53	m_gl.beginTransformFeedback(primitiveMode);
54}
55
56void CallLogWrapper::glBindAttribLocation (glw::GLuint program, glw::GLuint index, const glw::GLchar *name)
57{
58	if (m_enableLog)
59		m_log << TestLog::Message << "glBindAttribLocation(" << program << ", " << index << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
60	m_gl.bindAttribLocation(program, index, name);
61}
62
63void CallLogWrapper::glBindBuffer (glw::GLenum target, glw::GLuint buffer)
64{
65	if (m_enableLog)
66		m_log << TestLog::Message << "glBindBuffer(" << getBufferTargetStr(target) << ", " << buffer << ");" << TestLog::EndMessage;
67	m_gl.bindBuffer(target, buffer);
68}
69
70void CallLogWrapper::glBindBufferBase (glw::GLenum target, glw::GLuint index, glw::GLuint buffer)
71{
72	if (m_enableLog)
73		m_log << TestLog::Message << "glBindBufferBase(" << getBufferTargetStr(target) << ", " << index << ", " << buffer << ");" << TestLog::EndMessage;
74	m_gl.bindBufferBase(target, index, buffer);
75}
76
77void CallLogWrapper::glBindBufferRange (glw::GLenum target, glw::GLuint index, glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size)
78{
79	if (m_enableLog)
80		m_log << TestLog::Message << "glBindBufferRange(" << getBufferTargetStr(target) << ", " << index << ", " << buffer << ", " << offset << ", " << size << ");" << TestLog::EndMessage;
81	m_gl.bindBufferRange(target, index, buffer, offset, size);
82}
83
84void CallLogWrapper::glBindBuffersBase (glw::GLenum target, glw::GLuint first, glw::GLsizei count, const glw::GLuint *buffers)
85{
86	if (m_enableLog)
87		m_log << TestLog::Message << "glBindBuffersBase(" << toHex(target) << ", " << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(buffers))) << ");" << TestLog::EndMessage;
88	m_gl.bindBuffersBase(target, first, count, buffers);
89}
90
91void CallLogWrapper::glBindBuffersRange (glw::GLenum target, glw::GLuint first, glw::GLsizei count, const glw::GLuint *buffers, const glw::GLintptr *offsets, const glw::GLsizeiptr *sizes)
92{
93	if (m_enableLog)
94		m_log << TestLog::Message << "glBindBuffersRange(" << toHex(target) << ", " << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(buffers))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(offsets))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(sizes))) << ");" << TestLog::EndMessage;
95	m_gl.bindBuffersRange(target, first, count, buffers, offsets, sizes);
96}
97
98void CallLogWrapper::glBindFragDataLocation (glw::GLuint program, glw::GLuint color, const glw::GLchar *name)
99{
100	if (m_enableLog)
101		m_log << TestLog::Message << "glBindFragDataLocation(" << program << ", " << color << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
102	m_gl.bindFragDataLocation(program, color, name);
103}
104
105void CallLogWrapper::glBindFragDataLocationIndexed (glw::GLuint program, glw::GLuint colorNumber, glw::GLuint index, const glw::GLchar *name)
106{
107	if (m_enableLog)
108		m_log << TestLog::Message << "glBindFragDataLocationIndexed(" << program << ", " << colorNumber << ", " << index << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
109	m_gl.bindFragDataLocationIndexed(program, colorNumber, index, name);
110}
111
112void CallLogWrapper::glBindFramebuffer (glw::GLenum target, glw::GLuint framebuffer)
113{
114	if (m_enableLog)
115		m_log << TestLog::Message << "glBindFramebuffer(" << getFramebufferTargetStr(target) << ", " << framebuffer << ");" << TestLog::EndMessage;
116	m_gl.bindFramebuffer(target, framebuffer);
117}
118
119void CallLogWrapper::glBindImageTexture (glw::GLuint unit, glw::GLuint texture, glw::GLint level, glw::GLboolean layered, glw::GLint layer, glw::GLenum access, glw::GLenum format)
120{
121	if (m_enableLog)
122		m_log << TestLog::Message << "glBindImageTexture(" << unit << ", " << texture << ", " << level << ", " << getBooleanStr(layered) << ", " << layer << ", " << getImageAccessStr(access) << ", " << getUncompressedTextureFormatStr(format) << ");" << TestLog::EndMessage;
123	m_gl.bindImageTexture(unit, texture, level, layered, layer, access, format);
124}
125
126void CallLogWrapper::glBindImageTextures (glw::GLuint first, glw::GLsizei count, const glw::GLuint *textures)
127{
128	if (m_enableLog)
129		m_log << TestLog::Message << "glBindImageTextures(" << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(textures))) << ");" << TestLog::EndMessage;
130	m_gl.bindImageTextures(first, count, textures);
131}
132
133void CallLogWrapper::glBindMultiTextureEXT (glw::GLenum texunit, glw::GLenum target, glw::GLuint texture)
134{
135	if (m_enableLog)
136		m_log << TestLog::Message << "glBindMultiTextureEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << texture << ");" << TestLog::EndMessage;
137	m_gl.bindMultiTextureEXT(texunit, target, texture);
138}
139
140void CallLogWrapper::glBindProgramPipeline (glw::GLuint pipeline)
141{
142	if (m_enableLog)
143		m_log << TestLog::Message << "glBindProgramPipeline(" << pipeline << ");" << TestLog::EndMessage;
144	m_gl.bindProgramPipeline(pipeline);
145}
146
147void CallLogWrapper::glBindRenderbuffer (glw::GLenum target, glw::GLuint renderbuffer)
148{
149	if (m_enableLog)
150		m_log << TestLog::Message << "glBindRenderbuffer(" << getFramebufferTargetStr(target) << ", " << renderbuffer << ");" << TestLog::EndMessage;
151	m_gl.bindRenderbuffer(target, renderbuffer);
152}
153
154void CallLogWrapper::glBindSampler (glw::GLuint unit, glw::GLuint sampler)
155{
156	if (m_enableLog)
157		m_log << TestLog::Message << "glBindSampler(" << unit << ", " << sampler << ");" << TestLog::EndMessage;
158	m_gl.bindSampler(unit, sampler);
159}
160
161void CallLogWrapper::glBindSamplers (glw::GLuint first, glw::GLsizei count, const glw::GLuint *samplers)
162{
163	if (m_enableLog)
164		m_log << TestLog::Message << "glBindSamplers(" << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(samplers))) << ");" << TestLog::EndMessage;
165	m_gl.bindSamplers(first, count, samplers);
166}
167
168void CallLogWrapper::glBindTexture (glw::GLenum target, glw::GLuint texture)
169{
170	if (m_enableLog)
171		m_log << TestLog::Message << "glBindTexture(" << getTextureTargetStr(target) << ", " << texture << ");" << TestLog::EndMessage;
172	m_gl.bindTexture(target, texture);
173}
174
175void CallLogWrapper::glBindTextureUnit (glw::GLuint unit, glw::GLuint texture)
176{
177	if (m_enableLog)
178		m_log << TestLog::Message << "glBindTextureUnit(" << unit << ", " << texture << ");" << TestLog::EndMessage;
179	m_gl.bindTextureUnit(unit, texture);
180}
181
182void CallLogWrapper::glBindTextures (glw::GLuint first, glw::GLsizei count, const glw::GLuint *textures)
183{
184	if (m_enableLog)
185		m_log << TestLog::Message << "glBindTextures(" << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(textures))) << ");" << TestLog::EndMessage;
186	m_gl.bindTextures(first, count, textures);
187}
188
189void CallLogWrapper::glBindTransformFeedback (glw::GLenum target, glw::GLuint id)
190{
191	if (m_enableLog)
192		m_log << TestLog::Message << "glBindTransformFeedback(" << getTransformFeedbackTargetStr(target) << ", " << id << ");" << TestLog::EndMessage;
193	m_gl.bindTransformFeedback(target, id);
194}
195
196void CallLogWrapper::glBindVertexArray (glw::GLuint array)
197{
198	if (m_enableLog)
199		m_log << TestLog::Message << "glBindVertexArray(" << array << ");" << TestLog::EndMessage;
200	m_gl.bindVertexArray(array);
201}
202
203void CallLogWrapper::glBindVertexBuffer (glw::GLuint bindingindex, glw::GLuint buffer, glw::GLintptr offset, glw::GLsizei stride)
204{
205	if (m_enableLog)
206		m_log << TestLog::Message << "glBindVertexBuffer(" << bindingindex << ", " << buffer << ", " << offset << ", " << stride << ");" << TestLog::EndMessage;
207	m_gl.bindVertexBuffer(bindingindex, buffer, offset, stride);
208}
209
210void CallLogWrapper::glBindVertexBuffers (glw::GLuint first, glw::GLsizei count, const glw::GLuint *buffers, const glw::GLintptr *offsets, const glw::GLsizei *strides)
211{
212	if (m_enableLog)
213		m_log << TestLog::Message << "glBindVertexBuffers(" << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(buffers))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(offsets))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(strides))) << ");" << TestLog::EndMessage;
214	m_gl.bindVertexBuffers(first, count, buffers, offsets, strides);
215}
216
217void CallLogWrapper::glBlendBarrier (void)
218{
219	if (m_enableLog)
220		m_log << TestLog::Message << "glBlendBarrier(" << ");" << TestLog::EndMessage;
221	m_gl.blendBarrier();
222}
223
224void CallLogWrapper::glBlendColor (glw::GLfloat red, glw::GLfloat green, glw::GLfloat blue, glw::GLfloat alpha)
225{
226	if (m_enableLog)
227		m_log << TestLog::Message << "glBlendColor(" << red << ", " << green << ", " << blue << ", " << alpha << ");" << TestLog::EndMessage;
228	m_gl.blendColor(red, green, blue, alpha);
229}
230
231void CallLogWrapper::glBlendEquation (glw::GLenum mode)
232{
233	if (m_enableLog)
234		m_log << TestLog::Message << "glBlendEquation(" << getBlendEquationStr(mode) << ");" << TestLog::EndMessage;
235	m_gl.blendEquation(mode);
236}
237
238void CallLogWrapper::glBlendEquationSeparate (glw::GLenum modeRGB, glw::GLenum modeAlpha)
239{
240	if (m_enableLog)
241		m_log << TestLog::Message << "glBlendEquationSeparate(" << getBlendEquationStr(modeRGB) << ", " << getBlendEquationStr(modeAlpha) << ");" << TestLog::EndMessage;
242	m_gl.blendEquationSeparate(modeRGB, modeAlpha);
243}
244
245void CallLogWrapper::glBlendEquationSeparatei (glw::GLuint buf, glw::GLenum modeRGB, glw::GLenum modeAlpha)
246{
247	if (m_enableLog)
248		m_log << TestLog::Message << "glBlendEquationSeparatei(" << buf << ", " << getBlendEquationStr(modeRGB) << ", " << getBlendEquationStr(modeAlpha) << ");" << TestLog::EndMessage;
249	m_gl.blendEquationSeparatei(buf, modeRGB, modeAlpha);
250}
251
252void CallLogWrapper::glBlendEquationi (glw::GLuint buf, glw::GLenum mode)
253{
254	if (m_enableLog)
255		m_log << TestLog::Message << "glBlendEquationi(" << buf << ", " << getBlendEquationStr(mode) << ");" << TestLog::EndMessage;
256	m_gl.blendEquationi(buf, mode);
257}
258
259void CallLogWrapper::glBlendFunc (glw::GLenum sfactor, glw::GLenum dfactor)
260{
261	if (m_enableLog)
262		m_log << TestLog::Message << "glBlendFunc(" << getBlendFactorStr(sfactor) << ", " << getBlendFactorStr(dfactor) << ");" << TestLog::EndMessage;
263	m_gl.blendFunc(sfactor, dfactor);
264}
265
266void CallLogWrapper::glBlendFuncSeparate (glw::GLenum sfactorRGB, glw::GLenum dfactorRGB, glw::GLenum sfactorAlpha, glw::GLenum dfactorAlpha)
267{
268	if (m_enableLog)
269		m_log << TestLog::Message << "glBlendFuncSeparate(" << getBlendFactorStr(sfactorRGB) << ", " << getBlendFactorStr(dfactorRGB) << ", " << getBlendFactorStr(sfactorAlpha) << ", " << getBlendFactorStr(dfactorAlpha) << ");" << TestLog::EndMessage;
270	m_gl.blendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
271}
272
273void CallLogWrapper::glBlendFuncSeparatei (glw::GLuint buf, glw::GLenum srcRGB, glw::GLenum dstRGB, glw::GLenum srcAlpha, glw::GLenum dstAlpha)
274{
275	if (m_enableLog)
276		m_log << TestLog::Message << "glBlendFuncSeparatei(" << buf << ", " << toHex(srcRGB) << ", " << toHex(dstRGB) << ", " << toHex(srcAlpha) << ", " << toHex(dstAlpha) << ");" << TestLog::EndMessage;
277	m_gl.blendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
278}
279
280void CallLogWrapper::glBlendFunci (glw::GLuint buf, glw::GLenum src, glw::GLenum dst)
281{
282	if (m_enableLog)
283		m_log << TestLog::Message << "glBlendFunci(" << buf << ", " << toHex(src) << ", " << toHex(dst) << ");" << TestLog::EndMessage;
284	m_gl.blendFunci(buf, src, dst);
285}
286
287void CallLogWrapper::glBlitFramebuffer (glw::GLint srcX0, glw::GLint srcY0, glw::GLint srcX1, glw::GLint srcY1, glw::GLint dstX0, glw::GLint dstY0, glw::GLint dstX1, glw::GLint dstY1, glw::GLbitfield mask, glw::GLenum filter)
288{
289	if (m_enableLog)
290		m_log << TestLog::Message << "glBlitFramebuffer(" << srcX0 << ", " << srcY0 << ", " << srcX1 << ", " << srcY1 << ", " << dstX0 << ", " << dstY0 << ", " << dstX1 << ", " << dstY1 << ", " << getBufferMaskStr(mask) << ", " << getTextureFilterStr(filter) << ");" << TestLog::EndMessage;
291	m_gl.blitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
292}
293
294void CallLogWrapper::glBlitNamedFramebuffer (glw::GLuint readFramebuffer, glw::GLuint drawFramebuffer, glw::GLint srcX0, glw::GLint srcY0, glw::GLint srcX1, glw::GLint srcY1, glw::GLint dstX0, glw::GLint dstY0, glw::GLint dstX1, glw::GLint dstY1, glw::GLbitfield mask, glw::GLenum filter)
295{
296	if (m_enableLog)
297		m_log << TestLog::Message << "glBlitNamedFramebuffer(" << readFramebuffer << ", " << drawFramebuffer << ", " << srcX0 << ", " << srcY0 << ", " << srcX1 << ", " << srcY1 << ", " << dstX0 << ", " << dstY0 << ", " << dstX1 << ", " << dstY1 << ", " << toHex(mask) << ", " << toHex(filter) << ");" << TestLog::EndMessage;
298	m_gl.blitNamedFramebuffer(readFramebuffer, drawFramebuffer, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
299}
300
301void CallLogWrapper::glBufferData (glw::GLenum target, glw::GLsizeiptr size, const void *data, glw::GLenum usage)
302{
303	if (m_enableLog)
304		m_log << TestLog::Message << "glBufferData(" << getBufferTargetStr(target) << ", " << size << ", " << data << ", " << getUsageStr(usage) << ");" << TestLog::EndMessage;
305	m_gl.bufferData(target, size, data, usage);
306}
307
308void CallLogWrapper::glBufferPageCommitmentARB (glw::GLenum target, glw::GLintptr offset, glw::GLsizeiptr size, glw::GLboolean commit)
309{
310	if (m_enableLog)
311		m_log << TestLog::Message << "glBufferPageCommitmentARB(" << toHex(target) << ", " << offset << ", " << size << ", " << getBooleanStr(commit) << ");" << TestLog::EndMessage;
312	m_gl.bufferPageCommitmentARB(target, offset, size, commit);
313}
314
315void CallLogWrapper::glBufferStorage (glw::GLenum target, glw::GLsizeiptr size, const void *data, glw::GLbitfield flags)
316{
317	if (m_enableLog)
318		m_log << TestLog::Message << "glBufferStorage(" << toHex(target) << ", " << size << ", " << data << ", " << toHex(flags) << ");" << TestLog::EndMessage;
319	m_gl.bufferStorage(target, size, data, flags);
320}
321
322void CallLogWrapper::glBufferSubData (glw::GLenum target, glw::GLintptr offset, glw::GLsizeiptr size, const void *data)
323{
324	if (m_enableLog)
325		m_log << TestLog::Message << "glBufferSubData(" << getBufferTargetStr(target) << ", " << offset << ", " << size << ", " << data << ");" << TestLog::EndMessage;
326	m_gl.bufferSubData(target, offset, size, data);
327}
328
329glw::GLenum CallLogWrapper::glCheckFramebufferStatus (glw::GLenum target)
330{
331	if (m_enableLog)
332		m_log << TestLog::Message << "glCheckFramebufferStatus(" << getFramebufferTargetStr(target) << ");" << TestLog::EndMessage;
333	glw::GLenum returnValue = m_gl.checkFramebufferStatus(target);
334	if (m_enableLog)
335		m_log << TestLog::Message << "// " << getFramebufferStatusStr(returnValue) << " returned" << TestLog::EndMessage;
336	return returnValue;
337}
338
339glw::GLenum CallLogWrapper::glCheckNamedFramebufferStatus (glw::GLuint framebuffer, glw::GLenum target)
340{
341	if (m_enableLog)
342		m_log << TestLog::Message << "glCheckNamedFramebufferStatus(" << framebuffer << ", " << toHex(target) << ");" << TestLog::EndMessage;
343	glw::GLenum returnValue = m_gl.checkNamedFramebufferStatus(framebuffer, target);
344	if (m_enableLog)
345		m_log << TestLog::Message << "// " << toHex(returnValue) << " returned" << TestLog::EndMessage;
346	return returnValue;
347}
348
349glw::GLenum CallLogWrapper::glCheckNamedFramebufferStatusEXT (glw::GLuint framebuffer, glw::GLenum target)
350{
351	if (m_enableLog)
352		m_log << TestLog::Message << "glCheckNamedFramebufferStatusEXT(" << framebuffer << ", " << toHex(target) << ");" << TestLog::EndMessage;
353	glw::GLenum returnValue = m_gl.checkNamedFramebufferStatusEXT(framebuffer, target);
354	if (m_enableLog)
355		m_log << TestLog::Message << "// " << toHex(returnValue) << " returned" << TestLog::EndMessage;
356	return returnValue;
357}
358
359void CallLogWrapper::glClampColor (glw::GLenum target, glw::GLenum clamp)
360{
361	if (m_enableLog)
362		m_log << TestLog::Message << "glClampColor(" << toHex(target) << ", " << toHex(clamp) << ");" << TestLog::EndMessage;
363	m_gl.clampColor(target, clamp);
364}
365
366void CallLogWrapper::glClear (glw::GLbitfield mask)
367{
368	if (m_enableLog)
369		m_log << TestLog::Message << "glClear(" << getBufferMaskStr(mask) << ");" << TestLog::EndMessage;
370	m_gl.clear(mask);
371}
372
373void CallLogWrapper::glClearBufferData (glw::GLenum target, glw::GLenum internalformat, glw::GLenum format, glw::GLenum type, const void *data)
374{
375	if (m_enableLog)
376		m_log << TestLog::Message << "glClearBufferData(" << toHex(target) << ", " << toHex(internalformat) << ", " << toHex(format) << ", " << toHex(type) << ", " << data << ");" << TestLog::EndMessage;
377	m_gl.clearBufferData(target, internalformat, format, type, data);
378}
379
380void CallLogWrapper::glClearBufferSubData (glw::GLenum target, glw::GLenum internalformat, glw::GLintptr offset, glw::GLsizeiptr size, glw::GLenum format, glw::GLenum type, const void *data)
381{
382	if (m_enableLog)
383		m_log << TestLog::Message << "glClearBufferSubData(" << toHex(target) << ", " << toHex(internalformat) << ", " << offset << ", " << size << ", " << toHex(format) << ", " << toHex(type) << ", " << data << ");" << TestLog::EndMessage;
384	m_gl.clearBufferSubData(target, internalformat, offset, size, format, type, data);
385}
386
387void CallLogWrapper::glClearBufferfi (glw::GLenum buffer, glw::GLint drawbuffer, glw::GLfloat depth, glw::GLint stencil)
388{
389	if (m_enableLog)
390		m_log << TestLog::Message << "glClearBufferfi(" << getBufferStr(buffer) << ", " << drawbuffer << ", " << depth << ", " << stencil << ");" << TestLog::EndMessage;
391	m_gl.clearBufferfi(buffer, drawbuffer, depth, stencil);
392}
393
394void CallLogWrapper::glClearBufferfv (glw::GLenum buffer, glw::GLint drawbuffer, const glw::GLfloat *value)
395{
396	if (m_enableLog)
397		m_log << TestLog::Message << "glClearBufferfv(" << getBufferStr(buffer) << ", " << drawbuffer << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
398	m_gl.clearBufferfv(buffer, drawbuffer, value);
399}
400
401void CallLogWrapper::glClearBufferiv (glw::GLenum buffer, glw::GLint drawbuffer, const glw::GLint *value)
402{
403	if (m_enableLog)
404		m_log << TestLog::Message << "glClearBufferiv(" << getBufferStr(buffer) << ", " << drawbuffer << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
405	m_gl.clearBufferiv(buffer, drawbuffer, value);
406}
407
408void CallLogWrapper::glClearBufferuiv (glw::GLenum buffer, glw::GLint drawbuffer, const glw::GLuint *value)
409{
410	if (m_enableLog)
411		m_log << TestLog::Message << "glClearBufferuiv(" << getBufferStr(buffer) << ", " << drawbuffer << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
412	m_gl.clearBufferuiv(buffer, drawbuffer, value);
413}
414
415void CallLogWrapper::glClearColor (glw::GLfloat red, glw::GLfloat green, glw::GLfloat blue, glw::GLfloat alpha)
416{
417	if (m_enableLog)
418		m_log << TestLog::Message << "glClearColor(" << red << ", " << green << ", " << blue << ", " << alpha << ");" << TestLog::EndMessage;
419	m_gl.clearColor(red, green, blue, alpha);
420}
421
422void CallLogWrapper::glClearDepth (glw::GLdouble depth)
423{
424	if (m_enableLog)
425		m_log << TestLog::Message << "glClearDepth(" << depth << ");" << TestLog::EndMessage;
426	m_gl.clearDepth(depth);
427}
428
429void CallLogWrapper::glClearDepthf (glw::GLfloat d)
430{
431	if (m_enableLog)
432		m_log << TestLog::Message << "glClearDepthf(" << d << ");" << TestLog::EndMessage;
433	m_gl.clearDepthf(d);
434}
435
436void CallLogWrapper::glClearNamedBufferData (glw::GLuint buffer, glw::GLenum internalformat, glw::GLenum format, glw::GLenum type, const void *data)
437{
438	if (m_enableLog)
439		m_log << TestLog::Message << "glClearNamedBufferData(" << buffer << ", " << toHex(internalformat) << ", " << toHex(format) << ", " << toHex(type) << ", " << data << ");" << TestLog::EndMessage;
440	m_gl.clearNamedBufferData(buffer, internalformat, format, type, data);
441}
442
443void CallLogWrapper::glClearNamedBufferDataEXT (glw::GLuint buffer, glw::GLenum internalformat, glw::GLenum format, glw::GLenum type, const void *data)
444{
445	if (m_enableLog)
446		m_log << TestLog::Message << "glClearNamedBufferDataEXT(" << buffer << ", " << toHex(internalformat) << ", " << toHex(format) << ", " << toHex(type) << ", " << data << ");" << TestLog::EndMessage;
447	m_gl.clearNamedBufferDataEXT(buffer, internalformat, format, type, data);
448}
449
450void CallLogWrapper::glClearNamedBufferSubData (glw::GLuint buffer, glw::GLenum internalformat, glw::GLintptr offset, glw::GLsizeiptr size, glw::GLenum format, glw::GLenum type, const void *data)
451{
452	if (m_enableLog)
453		m_log << TestLog::Message << "glClearNamedBufferSubData(" << buffer << ", " << toHex(internalformat) << ", " << offset << ", " << size << ", " << toHex(format) << ", " << toHex(type) << ", " << data << ");" << TestLog::EndMessage;
454	m_gl.clearNamedBufferSubData(buffer, internalformat, offset, size, format, type, data);
455}
456
457void CallLogWrapper::glClearNamedBufferSubDataEXT (glw::GLuint buffer, glw::GLenum internalformat, glw::GLsizeiptr offset, glw::GLsizeiptr size, glw::GLenum format, glw::GLenum type, const void *data)
458{
459	if (m_enableLog)
460		m_log << TestLog::Message << "glClearNamedBufferSubDataEXT(" << buffer << ", " << toHex(internalformat) << ", " << offset << ", " << size << ", " << toHex(format) << ", " << toHex(type) << ", " << data << ");" << TestLog::EndMessage;
461	m_gl.clearNamedBufferSubDataEXT(buffer, internalformat, offset, size, format, type, data);
462}
463
464void CallLogWrapper::glClearNamedFramebufferfi (glw::GLuint framebuffer, glw::GLenum buffer, glw::GLint drawbuffer, glw::GLfloat depth, glw::GLint stencil)
465{
466	if (m_enableLog)
467		m_log << TestLog::Message << "glClearNamedFramebufferfi(" << framebuffer << ", " << toHex(buffer) << ", " << drawbuffer << ", " << depth << ", " << stencil << ");" << TestLog::EndMessage;
468	m_gl.clearNamedFramebufferfi(framebuffer, buffer, drawbuffer, depth, stencil);
469}
470
471void CallLogWrapper::glClearNamedFramebufferfv (glw::GLuint framebuffer, glw::GLenum buffer, glw::GLint drawbuffer, const glw::GLfloat *value)
472{
473	if (m_enableLog)
474		m_log << TestLog::Message << "glClearNamedFramebufferfv(" << framebuffer << ", " << toHex(buffer) << ", " << drawbuffer << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
475	m_gl.clearNamedFramebufferfv(framebuffer, buffer, drawbuffer, value);
476}
477
478void CallLogWrapper::glClearNamedFramebufferiv (glw::GLuint framebuffer, glw::GLenum buffer, glw::GLint drawbuffer, const glw::GLint *value)
479{
480	if (m_enableLog)
481		m_log << TestLog::Message << "glClearNamedFramebufferiv(" << framebuffer << ", " << toHex(buffer) << ", " << drawbuffer << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
482	m_gl.clearNamedFramebufferiv(framebuffer, buffer, drawbuffer, value);
483}
484
485void CallLogWrapper::glClearNamedFramebufferuiv (glw::GLuint framebuffer, glw::GLenum buffer, glw::GLint drawbuffer, const glw::GLuint *value)
486{
487	if (m_enableLog)
488		m_log << TestLog::Message << "glClearNamedFramebufferuiv(" << framebuffer << ", " << toHex(buffer) << ", " << drawbuffer << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
489	m_gl.clearNamedFramebufferuiv(framebuffer, buffer, drawbuffer, value);
490}
491
492void CallLogWrapper::glClearStencil (glw::GLint s)
493{
494	if (m_enableLog)
495		m_log << TestLog::Message << "glClearStencil(" << s << ");" << TestLog::EndMessage;
496	m_gl.clearStencil(s);
497}
498
499void CallLogWrapper::glClearTexImage (glw::GLuint texture, glw::GLint level, glw::GLenum format, glw::GLenum type, const void *data)
500{
501	if (m_enableLog)
502		m_log << TestLog::Message << "glClearTexImage(" << texture << ", " << level << ", " << toHex(format) << ", " << toHex(type) << ", " << data << ");" << TestLog::EndMessage;
503	m_gl.clearTexImage(texture, level, format, type, data);
504}
505
506void CallLogWrapper::glClearTexSubImage (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, const void *data)
507{
508	if (m_enableLog)
509		m_log << TestLog::Message << "glClearTexSubImage(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << toHex(type) << ", " << data << ");" << TestLog::EndMessage;
510	m_gl.clearTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data);
511}
512
513void CallLogWrapper::glClientAttribDefaultEXT (glw::GLbitfield mask)
514{
515	if (m_enableLog)
516		m_log << TestLog::Message << "glClientAttribDefaultEXT(" << toHex(mask) << ");" << TestLog::EndMessage;
517	m_gl.clientAttribDefaultEXT(mask);
518}
519
520glw::GLenum CallLogWrapper::glClientWaitSync (glw::GLsync sync, glw::GLbitfield flags, glw::GLuint64 timeout)
521{
522	if (m_enableLog)
523		m_log << TestLog::Message << "glClientWaitSync(" << sync << ", " << toHex(flags) << ", " << timeout << ");" << TestLog::EndMessage;
524	glw::GLenum returnValue = m_gl.clientWaitSync(sync, flags, timeout);
525	if (m_enableLog)
526		m_log << TestLog::Message << "// " << toHex(returnValue) << " returned" << TestLog::EndMessage;
527	return returnValue;
528}
529
530void CallLogWrapper::glClipControl (glw::GLenum origin, glw::GLenum depth)
531{
532	if (m_enableLog)
533		m_log << TestLog::Message << "glClipControl(" << toHex(origin) << ", " << toHex(depth) << ");" << TestLog::EndMessage;
534	m_gl.clipControl(origin, depth);
535}
536
537void CallLogWrapper::glColorMask (glw::GLboolean red, glw::GLboolean green, glw::GLboolean blue, glw::GLboolean alpha)
538{
539	if (m_enableLog)
540		m_log << TestLog::Message << "glColorMask(" << getBooleanStr(red) << ", " << getBooleanStr(green) << ", " << getBooleanStr(blue) << ", " << getBooleanStr(alpha) << ");" << TestLog::EndMessage;
541	m_gl.colorMask(red, green, blue, alpha);
542}
543
544void CallLogWrapper::glColorMaski (glw::GLuint index, glw::GLboolean r, glw::GLboolean g, glw::GLboolean b, glw::GLboolean a)
545{
546	if (m_enableLog)
547		m_log << TestLog::Message << "glColorMaski(" << index << ", " << getBooleanStr(r) << ", " << getBooleanStr(g) << ", " << getBooleanStr(b) << ", " << getBooleanStr(a) << ");" << TestLog::EndMessage;
548	m_gl.colorMaski(index, r, g, b, a);
549}
550
551void CallLogWrapper::glCompileShader (glw::GLuint shader)
552{
553	if (m_enableLog)
554		m_log << TestLog::Message << "glCompileShader(" << shader << ");" << TestLog::EndMessage;
555	m_gl.compileShader(shader);
556}
557
558void CallLogWrapper::glCompressedMultiTexImage1DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLint border, glw::GLsizei imageSize, const void *bits)
559{
560	if (m_enableLog)
561		m_log << TestLog::Message << "glCompressedMultiTexImage1DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << border << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
562	m_gl.compressedMultiTexImage1DEXT(texunit, target, level, internalformat, width, border, imageSize, bits);
563}
564
565void CallLogWrapper::glCompressedMultiTexImage2DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLint border, glw::GLsizei imageSize, const void *bits)
566{
567	if (m_enableLog)
568		m_log << TestLog::Message << "glCompressedMultiTexImage2DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << border << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
569	m_gl.compressedMultiTexImage2DEXT(texunit, target, level, internalformat, width, height, border, imageSize, bits);
570}
571
572void CallLogWrapper::glCompressedMultiTexImage3DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLsizei imageSize, const void *bits)
573{
574	if (m_enableLog)
575		m_log << TestLog::Message << "glCompressedMultiTexImage3DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
576	m_gl.compressedMultiTexImage3DEXT(texunit, target, level, internalformat, width, height, depth, border, imageSize, bits);
577}
578
579void CallLogWrapper::glCompressedMultiTexSubImage1DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLsizei imageSize, const void *bits)
580{
581	if (m_enableLog)
582		m_log << TestLog::Message << "glCompressedMultiTexSubImage1DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << width << ", " << toHex(format) << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
583	m_gl.compressedMultiTexSubImage1DEXT(texunit, target, level, xoffset, width, format, imageSize, bits);
584}
585
586void CallLogWrapper::glCompressedMultiTexSubImage2DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLsizei imageSize, const void *bits)
587{
588	if (m_enableLog)
589		m_log << TestLog::Message << "glCompressedMultiTexSubImage2DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << width << ", " << height << ", " << toHex(format) << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
590	m_gl.compressedMultiTexSubImage2DEXT(texunit, target, level, xoffset, yoffset, width, height, format, imageSize, bits);
591}
592
593void CallLogWrapper::glCompressedMultiTexSubImage3DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLsizei imageSize, const void *bits)
594{
595	if (m_enableLog)
596		m_log << TestLog::Message << "glCompressedMultiTexSubImage3DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
597	m_gl.compressedMultiTexSubImage3DEXT(texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits);
598}
599
600void CallLogWrapper::glCompressedTexImage1D (glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLint border, glw::GLsizei imageSize, const void *data)
601{
602	if (m_enableLog)
603		m_log << TestLog::Message << "glCompressedTexImage1D(" << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << border << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
604	m_gl.compressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
605}
606
607void CallLogWrapper::glCompressedTexImage2D (glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLint border, glw::GLsizei imageSize, const void *data)
608{
609	if (m_enableLog)
610		m_log << TestLog::Message << "glCompressedTexImage2D(" << getTextureTargetStr(target) << ", " << level << ", " << getCompressedTextureFormatStr(internalformat) << ", " << width << ", " << height << ", " << border << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
611	m_gl.compressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
612}
613
614void CallLogWrapper::glCompressedTexImage3D (glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLsizei imageSize, const void *data)
615{
616	if (m_enableLog)
617		m_log << TestLog::Message << "glCompressedTexImage3D(" << getTextureTargetStr(target) << ", " << level << ", " << getCompressedTextureFormatStr(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
618	m_gl.compressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
619}
620
621void CallLogWrapper::glCompressedTexImage3DOES (glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLsizei imageSize, const void *data)
622{
623	if (m_enableLog)
624		m_log << TestLog::Message << "glCompressedTexImage3DOES(" << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
625	m_gl.compressedTexImage3DOES(target, level, internalformat, width, height, depth, border, imageSize, data);
626}
627
628void CallLogWrapper::glCompressedTexSubImage1D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLsizei imageSize, const void *data)
629{
630	if (m_enableLog)
631		m_log << TestLog::Message << "glCompressedTexSubImage1D(" << toHex(target) << ", " << level << ", " << xoffset << ", " << width << ", " << toHex(format) << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
632	m_gl.compressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
633}
634
635void CallLogWrapper::glCompressedTexSubImage2D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLsizei imageSize, const void *data)
636{
637	if (m_enableLog)
638		m_log << TestLog::Message << "glCompressedTexSubImage2D(" << getTextureTargetStr(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << width << ", " << height << ", " << getCompressedTextureFormatStr(format) << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
639	m_gl.compressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
640}
641
642void CallLogWrapper::glCompressedTexSubImage3D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLsizei imageSize, const void *data)
643{
644	if (m_enableLog)
645		m_log << TestLog::Message << "glCompressedTexSubImage3D(" << getTextureTargetStr(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << getCompressedTextureFormatStr(format) << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
646	m_gl.compressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
647}
648
649void CallLogWrapper::glCompressedTexSubImage3DOES (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLsizei imageSize, const void *data)
650{
651	if (m_enableLog)
652		m_log << TestLog::Message << "glCompressedTexSubImage3DOES(" << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
653	m_gl.compressedTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
654}
655
656void CallLogWrapper::glCompressedTextureImage1DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLint border, glw::GLsizei imageSize, const void *bits)
657{
658	if (m_enableLog)
659		m_log << TestLog::Message << "glCompressedTextureImage1DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << border << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
660	m_gl.compressedTextureImage1DEXT(texture, target, level, internalformat, width, border, imageSize, bits);
661}
662
663void CallLogWrapper::glCompressedTextureImage2DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLint border, glw::GLsizei imageSize, const void *bits)
664{
665	if (m_enableLog)
666		m_log << TestLog::Message << "glCompressedTextureImage2DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << border << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
667	m_gl.compressedTextureImage2DEXT(texture, target, level, internalformat, width, height, border, imageSize, bits);
668}
669
670void CallLogWrapper::glCompressedTextureImage3DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLsizei imageSize, const void *bits)
671{
672	if (m_enableLog)
673		m_log << TestLog::Message << "glCompressedTextureImage3DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
674	m_gl.compressedTextureImage3DEXT(texture, target, level, internalformat, width, height, depth, border, imageSize, bits);
675}
676
677void CallLogWrapper::glCompressedTextureSubImage1D (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLsizei imageSize, const void *data)
678{
679	if (m_enableLog)
680		m_log << TestLog::Message << "glCompressedTextureSubImage1D(" << texture << ", " << level << ", " << xoffset << ", " << width << ", " << toHex(format) << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
681	m_gl.compressedTextureSubImage1D(texture, level, xoffset, width, format, imageSize, data);
682}
683
684void CallLogWrapper::glCompressedTextureSubImage1DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLsizei imageSize, const void *bits)
685{
686	if (m_enableLog)
687		m_log << TestLog::Message << "glCompressedTextureSubImage1DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << width << ", " << toHex(format) << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
688	m_gl.compressedTextureSubImage1DEXT(texture, target, level, xoffset, width, format, imageSize, bits);
689}
690
691void CallLogWrapper::glCompressedTextureSubImage2D (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLsizei imageSize, const void *data)
692{
693	if (m_enableLog)
694		m_log << TestLog::Message << "glCompressedTextureSubImage2D(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << width << ", " << height << ", " << toHex(format) << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
695	m_gl.compressedTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, imageSize, data);
696}
697
698void CallLogWrapper::glCompressedTextureSubImage2DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLsizei imageSize, const void *bits)
699{
700	if (m_enableLog)
701		m_log << TestLog::Message << "glCompressedTextureSubImage2DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << width << ", " << height << ", " << toHex(format) << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
702	m_gl.compressedTextureSubImage2DEXT(texture, target, level, xoffset, yoffset, width, height, format, imageSize, bits);
703}
704
705void CallLogWrapper::glCompressedTextureSubImage3D (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLsizei imageSize, const void *data)
706{
707	if (m_enableLog)
708		m_log << TestLog::Message << "glCompressedTextureSubImage3D(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
709	m_gl.compressedTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
710}
711
712void CallLogWrapper::glCompressedTextureSubImage3DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLsizei imageSize, const void *bits)
713{
714	if (m_enableLog)
715		m_log << TestLog::Message << "glCompressedTextureSubImage3DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << imageSize << ", " << bits << ");" << TestLog::EndMessage;
716	m_gl.compressedTextureSubImage3DEXT(texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits);
717}
718
719void CallLogWrapper::glCopyBufferSubData (glw::GLenum readTarget, glw::GLenum writeTarget, glw::GLintptr readOffset, glw::GLintptr writeOffset, glw::GLsizeiptr size)
720{
721	if (m_enableLog)
722		m_log << TestLog::Message << "glCopyBufferSubData(" << toHex(readTarget) << ", " << toHex(writeTarget) << ", " << readOffset << ", " << writeOffset << ", " << size << ");" << TestLog::EndMessage;
723	m_gl.copyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
724}
725
726void CallLogWrapper::glCopyImageSubData (glw::GLuint srcName, glw::GLenum srcTarget, glw::GLint srcLevel, glw::GLint srcX, glw::GLint srcY, glw::GLint srcZ, glw::GLuint dstName, glw::GLenum dstTarget, glw::GLint dstLevel, glw::GLint dstX, glw::GLint dstY, glw::GLint dstZ, glw::GLsizei srcWidth, glw::GLsizei srcHeight, glw::GLsizei srcDepth)
727{
728	if (m_enableLog)
729		m_log << TestLog::Message << "glCopyImageSubData(" << srcName << ", " << toHex(srcTarget) << ", " << srcLevel << ", " << srcX << ", " << srcY << ", " << srcZ << ", " << dstName << ", " << toHex(dstTarget) << ", " << dstLevel << ", " << dstX << ", " << dstY << ", " << dstZ << ", " << srcWidth << ", " << srcHeight << ", " << srcDepth << ");" << TestLog::EndMessage;
730	m_gl.copyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
731}
732
733void CallLogWrapper::glCopyMultiTexImage1DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLint border)
734{
735	if (m_enableLog)
736		m_log << TestLog::Message << "glCopyMultiTexImage1DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << x << ", " << y << ", " << width << ", " << border << ");" << TestLog::EndMessage;
737	m_gl.copyMultiTexImage1DEXT(texunit, target, level, internalformat, x, y, width, border);
738}
739
740void CallLogWrapper::glCopyMultiTexImage2DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height, glw::GLint border)
741{
742	if (m_enableLog)
743		m_log << TestLog::Message << "glCopyMultiTexImage2DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << x << ", " << y << ", " << width << ", " << height << ", " << border << ");" << TestLog::EndMessage;
744	m_gl.copyMultiTexImage2DEXT(texunit, target, level, internalformat, x, y, width, height, border);
745}
746
747void CallLogWrapper::glCopyMultiTexSubImage1DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint x, glw::GLint y, glw::GLsizei width)
748{
749	if (m_enableLog)
750		m_log << TestLog::Message << "glCopyMultiTexSubImage1DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << x << ", " << y << ", " << width << ");" << TestLog::EndMessage;
751	m_gl.copyMultiTexSubImage1DEXT(texunit, target, level, xoffset, x, y, width);
752}
753
754void CallLogWrapper::glCopyMultiTexSubImage2DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
755{
756	if (m_enableLog)
757		m_log << TestLog::Message << "glCopyMultiTexSubImage2DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
758	m_gl.copyMultiTexSubImage2DEXT(texunit, target, level, xoffset, yoffset, x, y, width, height);
759}
760
761void CallLogWrapper::glCopyMultiTexSubImage3DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
762{
763	if (m_enableLog)
764		m_log << TestLog::Message << "glCopyMultiTexSubImage3DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
765	m_gl.copyMultiTexSubImage3DEXT(texunit, target, level, xoffset, yoffset, zoffset, x, y, width, height);
766}
767
768void CallLogWrapper::glCopyNamedBufferSubData (glw::GLuint readBuffer, glw::GLuint writeBuffer, glw::GLintptr readOffset, glw::GLintptr writeOffset, glw::GLsizeiptr size)
769{
770	if (m_enableLog)
771		m_log << TestLog::Message << "glCopyNamedBufferSubData(" << readBuffer << ", " << writeBuffer << ", " << readOffset << ", " << writeOffset << ", " << size << ");" << TestLog::EndMessage;
772	m_gl.copyNamedBufferSubData(readBuffer, writeBuffer, readOffset, writeOffset, size);
773}
774
775void CallLogWrapper::glCopyTexImage1D (glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLint border)
776{
777	if (m_enableLog)
778		m_log << TestLog::Message << "glCopyTexImage1D(" << getTextureTargetStr(target) << ", " << level << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << x << ", " << y << ", " << width << ", " << border << ");" << TestLog::EndMessage;
779	m_gl.copyTexImage1D(target, level, internalformat, x, y, width, border);
780}
781
782void CallLogWrapper::glCopyTexImage2D (glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height, glw::GLint border)
783{
784	if (m_enableLog)
785		m_log << TestLog::Message << "glCopyTexImage2D(" << getTextureTargetStr(target) << ", " << level << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << x << ", " << y << ", " << width << ", " << height << ", " << border << ");" << TestLog::EndMessage;
786	m_gl.copyTexImage2D(target, level, internalformat, x, y, width, height, border);
787}
788
789void CallLogWrapper::glCopyTexSubImage1D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint x, glw::GLint y, glw::GLsizei width)
790{
791	if (m_enableLog)
792		m_log << TestLog::Message << "glCopyTexSubImage1D(" << toHex(target) << ", " << level << ", " << xoffset << ", " << x << ", " << y << ", " << width << ");" << TestLog::EndMessage;
793	m_gl.copyTexSubImage1D(target, level, xoffset, x, y, width);
794}
795
796void CallLogWrapper::glCopyTexSubImage2D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
797{
798	if (m_enableLog)
799		m_log << TestLog::Message << "glCopyTexSubImage2D(" << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
800	m_gl.copyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
801}
802
803void CallLogWrapper::glCopyTexSubImage3D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
804{
805	if (m_enableLog)
806		m_log << TestLog::Message << "glCopyTexSubImage3D(" << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
807	m_gl.copyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
808}
809
810void CallLogWrapper::glCopyTexSubImage3DOES (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
811{
812	if (m_enableLog)
813		m_log << TestLog::Message << "glCopyTexSubImage3DOES(" << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
814	m_gl.copyTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, x, y, width, height);
815}
816
817void CallLogWrapper::glCopyTextureImage1DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLint border)
818{
819	if (m_enableLog)
820		m_log << TestLog::Message << "glCopyTextureImage1DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << x << ", " << y << ", " << width << ", " << border << ");" << TestLog::EndMessage;
821	m_gl.copyTextureImage1DEXT(texture, target, level, internalformat, x, y, width, border);
822}
823
824void CallLogWrapper::glCopyTextureImage2DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height, glw::GLint border)
825{
826	if (m_enableLog)
827		m_log << TestLog::Message << "glCopyTextureImage2DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << x << ", " << y << ", " << width << ", " << height << ", " << border << ");" << TestLog::EndMessage;
828	m_gl.copyTextureImage2DEXT(texture, target, level, internalformat, x, y, width, height, border);
829}
830
831void CallLogWrapper::glCopyTextureSubImage1D (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint x, glw::GLint y, glw::GLsizei width)
832{
833	if (m_enableLog)
834		m_log << TestLog::Message << "glCopyTextureSubImage1D(" << texture << ", " << level << ", " << xoffset << ", " << x << ", " << y << ", " << width << ");" << TestLog::EndMessage;
835	m_gl.copyTextureSubImage1D(texture, level, xoffset, x, y, width);
836}
837
838void CallLogWrapper::glCopyTextureSubImage1DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint x, glw::GLint y, glw::GLsizei width)
839{
840	if (m_enableLog)
841		m_log << TestLog::Message << "glCopyTextureSubImage1DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << x << ", " << y << ", " << width << ");" << TestLog::EndMessage;
842	m_gl.copyTextureSubImage1DEXT(texture, target, level, xoffset, x, y, width);
843}
844
845void CallLogWrapper::glCopyTextureSubImage2D (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
846{
847	if (m_enableLog)
848		m_log << TestLog::Message << "glCopyTextureSubImage2D(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
849	m_gl.copyTextureSubImage2D(texture, level, xoffset, yoffset, x, y, width, height);
850}
851
852void CallLogWrapper::glCopyTextureSubImage2DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
853{
854	if (m_enableLog)
855		m_log << TestLog::Message << "glCopyTextureSubImage2DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
856	m_gl.copyTextureSubImage2DEXT(texture, target, level, xoffset, yoffset, x, y, width, height);
857}
858
859void CallLogWrapper::glCopyTextureSubImage3D (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
860{
861	if (m_enableLog)
862		m_log << TestLog::Message << "glCopyTextureSubImage3D(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
863	m_gl.copyTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, x, y, width, height);
864}
865
866void CallLogWrapper::glCopyTextureSubImage3DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
867{
868	if (m_enableLog)
869		m_log << TestLog::Message << "glCopyTextureSubImage3DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
870	m_gl.copyTextureSubImage3DEXT(texture, target, level, xoffset, yoffset, zoffset, x, y, width, height);
871}
872
873void CallLogWrapper::glCreateBuffers (glw::GLsizei n, glw::GLuint *buffers)
874{
875	if (m_enableLog)
876		m_log << TestLog::Message << "glCreateBuffers(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(buffers))) << ");" << TestLog::EndMessage;
877	m_gl.createBuffers(n, buffers);
878}
879
880void CallLogWrapper::glCreateFramebuffers (glw::GLsizei n, glw::GLuint *framebuffers)
881{
882	if (m_enableLog)
883		m_log << TestLog::Message << "glCreateFramebuffers(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(framebuffers))) << ");" << TestLog::EndMessage;
884	m_gl.createFramebuffers(n, framebuffers);
885}
886
887glw::GLuint CallLogWrapper::glCreateProgram (void)
888{
889	if (m_enableLog)
890		m_log << TestLog::Message << "glCreateProgram(" << ");" << TestLog::EndMessage;
891	glw::GLuint returnValue = m_gl.createProgram();
892	if (m_enableLog)
893		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
894	return returnValue;
895}
896
897void CallLogWrapper::glCreateProgramPipelines (glw::GLsizei n, glw::GLuint *pipelines)
898{
899	if (m_enableLog)
900		m_log << TestLog::Message << "glCreateProgramPipelines(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(pipelines))) << ");" << TestLog::EndMessage;
901	m_gl.createProgramPipelines(n, pipelines);
902}
903
904void CallLogWrapper::glCreateQueries (glw::GLenum target, glw::GLsizei n, glw::GLuint *ids)
905{
906	if (m_enableLog)
907		m_log << TestLog::Message << "glCreateQueries(" << toHex(target) << ", " << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(ids))) << ");" << TestLog::EndMessage;
908	m_gl.createQueries(target, n, ids);
909}
910
911void CallLogWrapper::glCreateRenderbuffers (glw::GLsizei n, glw::GLuint *renderbuffers)
912{
913	if (m_enableLog)
914		m_log << TestLog::Message << "glCreateRenderbuffers(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(renderbuffers))) << ");" << TestLog::EndMessage;
915	m_gl.createRenderbuffers(n, renderbuffers);
916}
917
918void CallLogWrapper::glCreateSamplers (glw::GLsizei n, glw::GLuint *samplers)
919{
920	if (m_enableLog)
921		m_log << TestLog::Message << "glCreateSamplers(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(samplers))) << ");" << TestLog::EndMessage;
922	m_gl.createSamplers(n, samplers);
923}
924
925glw::GLuint CallLogWrapper::glCreateShader (glw::GLenum type)
926{
927	if (m_enableLog)
928		m_log << TestLog::Message << "glCreateShader(" << getShaderTypeStr(type) << ");" << TestLog::EndMessage;
929	glw::GLuint returnValue = m_gl.createShader(type);
930	if (m_enableLog)
931		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
932	return returnValue;
933}
934
935glw::GLuint CallLogWrapper::glCreateShaderProgramv (glw::GLenum type, glw::GLsizei count, const glw::GLchar *const*strings)
936{
937	if (m_enableLog)
938		m_log << TestLog::Message << "glCreateShaderProgramv(" << toHex(type) << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(strings))) << ");" << TestLog::EndMessage;
939	glw::GLuint returnValue = m_gl.createShaderProgramv(type, count, strings);
940	if (m_enableLog)
941		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
942	return returnValue;
943}
944
945void CallLogWrapper::glCreateTextures (glw::GLenum target, glw::GLsizei n, glw::GLuint *textures)
946{
947	if (m_enableLog)
948		m_log << TestLog::Message << "glCreateTextures(" << toHex(target) << ", " << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(textures))) << ");" << TestLog::EndMessage;
949	m_gl.createTextures(target, n, textures);
950}
951
952void CallLogWrapper::glCreateTransformFeedbacks (glw::GLsizei n, glw::GLuint *ids)
953{
954	if (m_enableLog)
955		m_log << TestLog::Message << "glCreateTransformFeedbacks(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(ids))) << ");" << TestLog::EndMessage;
956	m_gl.createTransformFeedbacks(n, ids);
957}
958
959void CallLogWrapper::glCreateVertexArrays (glw::GLsizei n, glw::GLuint *arrays)
960{
961	if (m_enableLog)
962		m_log << TestLog::Message << "glCreateVertexArrays(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(arrays))) << ");" << TestLog::EndMessage;
963	m_gl.createVertexArrays(n, arrays);
964}
965
966void CallLogWrapper::glCullFace (glw::GLenum mode)
967{
968	if (m_enableLog)
969		m_log << TestLog::Message << "glCullFace(" << getFaceStr(mode) << ");" << TestLog::EndMessage;
970	m_gl.cullFace(mode);
971}
972
973void CallLogWrapper::glDebugMessageCallback (glw::GLDEBUGPROC callback, const void *userParam)
974{
975	if (m_enableLog)
976		m_log << TestLog::Message << "glDebugMessageCallback(" << toHex(reinterpret_cast<deUintptr>(callback)) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(userParam))) << ");" << TestLog::EndMessage;
977	m_gl.debugMessageCallback(callback, userParam);
978}
979
980void CallLogWrapper::glDebugMessageControl (glw::GLenum source, glw::GLenum type, glw::GLenum severity, glw::GLsizei count, const glw::GLuint *ids, glw::GLboolean enabled)
981{
982	if (m_enableLog)
983		m_log << TestLog::Message << "glDebugMessageControl(" << getDebugMessageSourceStr(source) << ", " << getDebugMessageTypeStr(type) << ", " << getDebugMessageSeverityStr(severity) << ", " << count << ", " << getPointerStr(ids, (count)) << ", " << getBooleanStr(enabled) << ");" << TestLog::EndMessage;
984	m_gl.debugMessageControl(source, type, severity, count, ids, enabled);
985}
986
987void CallLogWrapper::glDebugMessageInsert (glw::GLenum source, glw::GLenum type, glw::GLuint id, glw::GLenum severity, glw::GLsizei length, const glw::GLchar *buf)
988{
989	if (m_enableLog)
990		m_log << TestLog::Message << "glDebugMessageInsert(" << getDebugMessageSourceStr(source) << ", " << getDebugMessageTypeStr(type) << ", " << id << ", " << getDebugMessageSeverityStr(severity) << ", " << length << ", " << getStringStr(buf) << ");" << TestLog::EndMessage;
991	m_gl.debugMessageInsert(source, type, id, severity, length, buf);
992}
993
994void CallLogWrapper::glDeleteBuffers (glw::GLsizei n, const glw::GLuint *buffers)
995{
996	if (m_enableLog)
997		m_log << TestLog::Message << "glDeleteBuffers(" << n << ", " << getPointerStr(buffers, n) << ");" << TestLog::EndMessage;
998	m_gl.deleteBuffers(n, buffers);
999}
1000
1001void CallLogWrapper::glDeleteFramebuffers (glw::GLsizei n, const glw::GLuint *framebuffers)
1002{
1003	if (m_enableLog)
1004		m_log << TestLog::Message << "glDeleteFramebuffers(" << n << ", " << getPointerStr(framebuffers, n) << ");" << TestLog::EndMessage;
1005	m_gl.deleteFramebuffers(n, framebuffers);
1006}
1007
1008void CallLogWrapper::glDeleteProgram (glw::GLuint program)
1009{
1010	if (m_enableLog)
1011		m_log << TestLog::Message << "glDeleteProgram(" << program << ");" << TestLog::EndMessage;
1012	m_gl.deleteProgram(program);
1013}
1014
1015void CallLogWrapper::glDeleteProgramPipelines (glw::GLsizei n, const glw::GLuint *pipelines)
1016{
1017	if (m_enableLog)
1018		m_log << TestLog::Message << "glDeleteProgramPipelines(" << n << ", " << getPointerStr(pipelines, n) << ");" << TestLog::EndMessage;
1019	m_gl.deleteProgramPipelines(n, pipelines);
1020}
1021
1022void CallLogWrapper::glDeleteQueries (glw::GLsizei n, const glw::GLuint *ids)
1023{
1024	if (m_enableLog)
1025		m_log << TestLog::Message << "glDeleteQueries(" << n << ", " << getPointerStr(ids, n) << ");" << TestLog::EndMessage;
1026	m_gl.deleteQueries(n, ids);
1027}
1028
1029void CallLogWrapper::glDeleteRenderbuffers (glw::GLsizei n, const glw::GLuint *renderbuffers)
1030{
1031	if (m_enableLog)
1032		m_log << TestLog::Message << "glDeleteRenderbuffers(" << n << ", " << getPointerStr(renderbuffers, n) << ");" << TestLog::EndMessage;
1033	m_gl.deleteRenderbuffers(n, renderbuffers);
1034}
1035
1036void CallLogWrapper::glDeleteSamplers (glw::GLsizei count, const glw::GLuint *samplers)
1037{
1038	if (m_enableLog)
1039		m_log << TestLog::Message << "glDeleteSamplers(" << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(samplers))) << ");" << TestLog::EndMessage;
1040	m_gl.deleteSamplers(count, samplers);
1041}
1042
1043void CallLogWrapper::glDeleteShader (glw::GLuint shader)
1044{
1045	if (m_enableLog)
1046		m_log << TestLog::Message << "glDeleteShader(" << shader << ");" << TestLog::EndMessage;
1047	m_gl.deleteShader(shader);
1048}
1049
1050void CallLogWrapper::glDeleteSync (glw::GLsync sync)
1051{
1052	if (m_enableLog)
1053		m_log << TestLog::Message << "glDeleteSync(" << sync << ");" << TestLog::EndMessage;
1054	m_gl.deleteSync(sync);
1055}
1056
1057void CallLogWrapper::glDeleteTextures (glw::GLsizei n, const glw::GLuint *textures)
1058{
1059	if (m_enableLog)
1060		m_log << TestLog::Message << "glDeleteTextures(" << n << ", " << getPointerStr(textures, n) << ");" << TestLog::EndMessage;
1061	m_gl.deleteTextures(n, textures);
1062}
1063
1064void CallLogWrapper::glDeleteTransformFeedbacks (glw::GLsizei n, const glw::GLuint *ids)
1065{
1066	if (m_enableLog)
1067		m_log << TestLog::Message << "glDeleteTransformFeedbacks(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(ids))) << ");" << TestLog::EndMessage;
1068	m_gl.deleteTransformFeedbacks(n, ids);
1069}
1070
1071void CallLogWrapper::glDeleteVertexArrays (glw::GLsizei n, const glw::GLuint *arrays)
1072{
1073	if (m_enableLog)
1074		m_log << TestLog::Message << "glDeleteVertexArrays(" << n << ", " << getPointerStr(arrays, n) << ");" << TestLog::EndMessage;
1075	m_gl.deleteVertexArrays(n, arrays);
1076}
1077
1078void CallLogWrapper::glDepthBoundsEXT (glw::GLclampd zmin, glw::GLclampd zmax)
1079{
1080	if (m_enableLog)
1081		m_log << TestLog::Message << "glDepthBoundsEXT(" << zmin << ", " << zmax << ");" << TestLog::EndMessage;
1082	m_gl.depthBoundsEXT(zmin, zmax);
1083}
1084
1085void CallLogWrapper::glDepthFunc (glw::GLenum func)
1086{
1087	if (m_enableLog)
1088		m_log << TestLog::Message << "glDepthFunc(" << getCompareFuncStr(func) << ");" << TestLog::EndMessage;
1089	m_gl.depthFunc(func);
1090}
1091
1092void CallLogWrapper::glDepthMask (glw::GLboolean flag)
1093{
1094	if (m_enableLog)
1095		m_log << TestLog::Message << "glDepthMask(" << getBooleanStr(flag) << ");" << TestLog::EndMessage;
1096	m_gl.depthMask(flag);
1097}
1098
1099void CallLogWrapper::glDepthRange (glw::GLdouble n, glw::GLdouble f)
1100{
1101	if (m_enableLog)
1102		m_log << TestLog::Message << "glDepthRange(" << n << ", " << f << ");" << TestLog::EndMessage;
1103	m_gl.depthRange(n, f);
1104}
1105
1106void CallLogWrapper::glDepthRangeArrayfvOES (glw::GLuint first, glw::GLsizei count, const glw::GLfloat *v)
1107{
1108	if (m_enableLog)
1109		m_log << TestLog::Message << "glDepthRangeArrayfvOES(" << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
1110	m_gl.depthRangeArrayfvOES(first, count, v);
1111}
1112
1113void CallLogWrapper::glDepthRangeArrayv (glw::GLuint first, glw::GLsizei count, const glw::GLdouble *v)
1114{
1115	if (m_enableLog)
1116		m_log << TestLog::Message << "glDepthRangeArrayv(" << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
1117	m_gl.depthRangeArrayv(first, count, v);
1118}
1119
1120void CallLogWrapper::glDepthRangeIndexed (glw::GLuint index, glw::GLdouble n, glw::GLdouble f)
1121{
1122	if (m_enableLog)
1123		m_log << TestLog::Message << "glDepthRangeIndexed(" << index << ", " << n << ", " << f << ");" << TestLog::EndMessage;
1124	m_gl.depthRangeIndexed(index, n, f);
1125}
1126
1127void CallLogWrapper::glDepthRangeIndexedfOES (glw::GLuint index, glw::GLfloat n, glw::GLfloat f)
1128{
1129	if (m_enableLog)
1130		m_log << TestLog::Message << "glDepthRangeIndexedfOES(" << index << ", " << n << ", " << f << ");" << TestLog::EndMessage;
1131	m_gl.depthRangeIndexedfOES(index, n, f);
1132}
1133
1134void CallLogWrapper::glDepthRangef (glw::GLfloat n, glw::GLfloat f)
1135{
1136	if (m_enableLog)
1137		m_log << TestLog::Message << "glDepthRangef(" << n << ", " << f << ");" << TestLog::EndMessage;
1138	m_gl.depthRangef(n, f);
1139}
1140
1141void CallLogWrapper::glDetachShader (glw::GLuint program, glw::GLuint shader)
1142{
1143	if (m_enableLog)
1144		m_log << TestLog::Message << "glDetachShader(" << program << ", " << shader << ");" << TestLog::EndMessage;
1145	m_gl.detachShader(program, shader);
1146}
1147
1148void CallLogWrapper::glDisable (glw::GLenum cap)
1149{
1150	if (m_enableLog)
1151		m_log << TestLog::Message << "glDisable(" << getEnableCapStr(cap) << ");" << TestLog::EndMessage;
1152	m_gl.disable(cap);
1153}
1154
1155void CallLogWrapper::glDisableClientStateIndexedEXT (glw::GLenum array, glw::GLuint index)
1156{
1157	if (m_enableLog)
1158		m_log << TestLog::Message << "glDisableClientStateIndexedEXT(" << toHex(array) << ", " << index << ");" << TestLog::EndMessage;
1159	m_gl.disableClientStateIndexedEXT(array, index);
1160}
1161
1162void CallLogWrapper::glDisableClientStateiEXT (glw::GLenum array, glw::GLuint index)
1163{
1164	if (m_enableLog)
1165		m_log << TestLog::Message << "glDisableClientStateiEXT(" << toHex(array) << ", " << index << ");" << TestLog::EndMessage;
1166	m_gl.disableClientStateiEXT(array, index);
1167}
1168
1169void CallLogWrapper::glDisableVertexArrayAttrib (glw::GLuint vaobj, glw::GLuint index)
1170{
1171	if (m_enableLog)
1172		m_log << TestLog::Message << "glDisableVertexArrayAttrib(" << vaobj << ", " << index << ");" << TestLog::EndMessage;
1173	m_gl.disableVertexArrayAttrib(vaobj, index);
1174}
1175
1176void CallLogWrapper::glDisableVertexArrayAttribEXT (glw::GLuint vaobj, glw::GLuint index)
1177{
1178	if (m_enableLog)
1179		m_log << TestLog::Message << "glDisableVertexArrayAttribEXT(" << vaobj << ", " << index << ");" << TestLog::EndMessage;
1180	m_gl.disableVertexArrayAttribEXT(vaobj, index);
1181}
1182
1183void CallLogWrapper::glDisableVertexArrayEXT (glw::GLuint vaobj, glw::GLenum array)
1184{
1185	if (m_enableLog)
1186		m_log << TestLog::Message << "glDisableVertexArrayEXT(" << vaobj << ", " << toHex(array) << ");" << TestLog::EndMessage;
1187	m_gl.disableVertexArrayEXT(vaobj, array);
1188}
1189
1190void CallLogWrapper::glDisableVertexAttribArray (glw::GLuint index)
1191{
1192	if (m_enableLog)
1193		m_log << TestLog::Message << "glDisableVertexAttribArray(" << index << ");" << TestLog::EndMessage;
1194	m_gl.disableVertexAttribArray(index);
1195}
1196
1197void CallLogWrapper::glDisablei (glw::GLenum target, glw::GLuint index)
1198{
1199	if (m_enableLog)
1200		m_log << TestLog::Message << "glDisablei(" << getIndexedEnableCapStr(target) << ", " << index << ");" << TestLog::EndMessage;
1201	m_gl.disablei(target, index);
1202}
1203
1204void CallLogWrapper::glDispatchCompute (glw::GLuint num_groups_x, glw::GLuint num_groups_y, glw::GLuint num_groups_z)
1205{
1206	if (m_enableLog)
1207		m_log << TestLog::Message << "glDispatchCompute(" << num_groups_x << ", " << num_groups_y << ", " << num_groups_z << ");" << TestLog::EndMessage;
1208	m_gl.dispatchCompute(num_groups_x, num_groups_y, num_groups_z);
1209}
1210
1211void CallLogWrapper::glDispatchComputeIndirect (glw::GLintptr indirect)
1212{
1213	if (m_enableLog)
1214		m_log << TestLog::Message << "glDispatchComputeIndirect(" << indirect << ");" << TestLog::EndMessage;
1215	m_gl.dispatchComputeIndirect(indirect);
1216}
1217
1218void CallLogWrapper::glDrawArrays (glw::GLenum mode, glw::GLint first, glw::GLsizei count)
1219{
1220	if (m_enableLog)
1221		m_log << TestLog::Message << "glDrawArrays(" << getPrimitiveTypeStr(mode) << ", " << first << ", " << count << ");" << TestLog::EndMessage;
1222	m_gl.drawArrays(mode, first, count);
1223}
1224
1225void CallLogWrapper::glDrawArraysIndirect (glw::GLenum mode, const void *indirect)
1226{
1227	if (m_enableLog)
1228		m_log << TestLog::Message << "glDrawArraysIndirect(" << getPrimitiveTypeStr(mode) << ", " << indirect << ");" << TestLog::EndMessage;
1229	m_gl.drawArraysIndirect(mode, indirect);
1230}
1231
1232void CallLogWrapper::glDrawArraysInstanced (glw::GLenum mode, glw::GLint first, glw::GLsizei count, glw::GLsizei instancecount)
1233{
1234	if (m_enableLog)
1235		m_log << TestLog::Message << "glDrawArraysInstanced(" << getPrimitiveTypeStr(mode) << ", " << first << ", " << count << ", " << instancecount << ");" << TestLog::EndMessage;
1236	m_gl.drawArraysInstanced(mode, first, count, instancecount);
1237}
1238
1239void CallLogWrapper::glDrawArraysInstancedBaseInstance (glw::GLenum mode, glw::GLint first, glw::GLsizei count, glw::GLsizei instancecount, glw::GLuint baseinstance)
1240{
1241	if (m_enableLog)
1242		m_log << TestLog::Message << "glDrawArraysInstancedBaseInstance(" << toHex(mode) << ", " << first << ", " << count << ", " << instancecount << ", " << baseinstance << ");" << TestLog::EndMessage;
1243	m_gl.drawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
1244}
1245
1246void CallLogWrapper::glDrawBuffer (glw::GLenum buf)
1247{
1248	if (m_enableLog)
1249		m_log << TestLog::Message << "glDrawBuffer(" << toHex(buf) << ");" << TestLog::EndMessage;
1250	m_gl.drawBuffer(buf);
1251}
1252
1253void CallLogWrapper::glDrawBuffers (glw::GLsizei n, const glw::GLenum *bufs)
1254{
1255	if (m_enableLog)
1256		m_log << TestLog::Message << "glDrawBuffers(" << n << ", " << getEnumPointerStr(bufs, n, getDrawReadBufferName) << ");" << TestLog::EndMessage;
1257	m_gl.drawBuffers(n, bufs);
1258}
1259
1260void CallLogWrapper::glDrawElements (glw::GLenum mode, glw::GLsizei count, glw::GLenum type, const void *indices)
1261{
1262	if (m_enableLog)
1263		m_log << TestLog::Message << "glDrawElements(" << getPrimitiveTypeStr(mode) << ", " << count << ", " << getTypeStr(type) << ", " << indices << ");" << TestLog::EndMessage;
1264	m_gl.drawElements(mode, count, type, indices);
1265}
1266
1267void CallLogWrapper::glDrawElementsBaseVertex (glw::GLenum mode, glw::GLsizei count, glw::GLenum type, const void *indices, glw::GLint basevertex)
1268{
1269	if (m_enableLog)
1270		m_log << TestLog::Message << "glDrawElementsBaseVertex(" << getPrimitiveTypeStr(mode) << ", " << count << ", " << getTypeStr(type) << ", " << indices << ", " << basevertex << ");" << TestLog::EndMessage;
1271	m_gl.drawElementsBaseVertex(mode, count, type, indices, basevertex);
1272}
1273
1274void CallLogWrapper::glDrawElementsIndirect (glw::GLenum mode, glw::GLenum type, const void *indirect)
1275{
1276	if (m_enableLog)
1277		m_log << TestLog::Message << "glDrawElementsIndirect(" << getPrimitiveTypeStr(mode) << ", " << getTypeStr(type) << ", " << indirect << ");" << TestLog::EndMessage;
1278	m_gl.drawElementsIndirect(mode, type, indirect);
1279}
1280
1281void CallLogWrapper::glDrawElementsInstanced (glw::GLenum mode, glw::GLsizei count, glw::GLenum type, const void *indices, glw::GLsizei instancecount)
1282{
1283	if (m_enableLog)
1284		m_log << TestLog::Message << "glDrawElementsInstanced(" << getPrimitiveTypeStr(mode) << ", " << count << ", " << getTypeStr(type) << ", " << indices << ", " << instancecount << ");" << TestLog::EndMessage;
1285	m_gl.drawElementsInstanced(mode, count, type, indices, instancecount);
1286}
1287
1288void CallLogWrapper::glDrawElementsInstancedBaseInstance (glw::GLenum mode, glw::GLsizei count, glw::GLenum type, const void *indices, glw::GLsizei instancecount, glw::GLuint baseinstance)
1289{
1290	if (m_enableLog)
1291		m_log << TestLog::Message << "glDrawElementsInstancedBaseInstance(" << toHex(mode) << ", " << count << ", " << toHex(type) << ", " << indices << ", " << instancecount << ", " << baseinstance << ");" << TestLog::EndMessage;
1292	m_gl.drawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
1293}
1294
1295void CallLogWrapper::glDrawElementsInstancedBaseVertex (glw::GLenum mode, glw::GLsizei count, glw::GLenum type, const void *indices, glw::GLsizei instancecount, glw::GLint basevertex)
1296{
1297	if (m_enableLog)
1298		m_log << TestLog::Message << "glDrawElementsInstancedBaseVertex(" << getPrimitiveTypeStr(mode) << ", " << count << ", " << getTypeStr(type) << ", " << indices << ", " << instancecount << ", " << basevertex << ");" << TestLog::EndMessage;
1299	m_gl.drawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
1300}
1301
1302void CallLogWrapper::glDrawElementsInstancedBaseVertexBaseInstance (glw::GLenum mode, glw::GLsizei count, glw::GLenum type, const void *indices, glw::GLsizei instancecount, glw::GLint basevertex, glw::GLuint baseinstance)
1303{
1304	if (m_enableLog)
1305		m_log << TestLog::Message << "glDrawElementsInstancedBaseVertexBaseInstance(" << toHex(mode) << ", " << count << ", " << toHex(type) << ", " << indices << ", " << instancecount << ", " << basevertex << ", " << baseinstance << ");" << TestLog::EndMessage;
1306	m_gl.drawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
1307}
1308
1309void CallLogWrapper::glDrawRangeElements (glw::GLenum mode, glw::GLuint start, glw::GLuint end, glw::GLsizei count, glw::GLenum type, const void *indices)
1310{
1311	if (m_enableLog)
1312		m_log << TestLog::Message << "glDrawRangeElements(" << getPrimitiveTypeStr(mode) << ", " << start << ", " << end << ", " << count << ", " << getTypeStr(type) << ", " << indices << ");" << TestLog::EndMessage;
1313	m_gl.drawRangeElements(mode, start, end, count, type, indices);
1314}
1315
1316void CallLogWrapper::glDrawRangeElementsBaseVertex (glw::GLenum mode, glw::GLuint start, glw::GLuint end, glw::GLsizei count, glw::GLenum type, const void *indices, glw::GLint basevertex)
1317{
1318	if (m_enableLog)
1319		m_log << TestLog::Message << "glDrawRangeElementsBaseVertex(" << getPrimitiveTypeStr(mode) << ", " << start << ", " << end << ", " << count << ", " << getTypeStr(type) << ", " << indices << ", " << basevertex << ");" << TestLog::EndMessage;
1320	m_gl.drawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
1321}
1322
1323void CallLogWrapper::glDrawTransformFeedback (glw::GLenum mode, glw::GLuint id)
1324{
1325	if (m_enableLog)
1326		m_log << TestLog::Message << "glDrawTransformFeedback(" << toHex(mode) << ", " << id << ");" << TestLog::EndMessage;
1327	m_gl.drawTransformFeedback(mode, id);
1328}
1329
1330void CallLogWrapper::glDrawTransformFeedbackInstanced (glw::GLenum mode, glw::GLuint id, glw::GLsizei instancecount)
1331{
1332	if (m_enableLog)
1333		m_log << TestLog::Message << "glDrawTransformFeedbackInstanced(" << toHex(mode) << ", " << id << ", " << instancecount << ");" << TestLog::EndMessage;
1334	m_gl.drawTransformFeedbackInstanced(mode, id, instancecount);
1335}
1336
1337void CallLogWrapper::glDrawTransformFeedbackStream (glw::GLenum mode, glw::GLuint id, glw::GLuint stream)
1338{
1339	if (m_enableLog)
1340		m_log << TestLog::Message << "glDrawTransformFeedbackStream(" << toHex(mode) << ", " << id << ", " << stream << ");" << TestLog::EndMessage;
1341	m_gl.drawTransformFeedbackStream(mode, id, stream);
1342}
1343
1344void CallLogWrapper::glDrawTransformFeedbackStreamInstanced (glw::GLenum mode, glw::GLuint id, glw::GLuint stream, glw::GLsizei instancecount)
1345{
1346	if (m_enableLog)
1347		m_log << TestLog::Message << "glDrawTransformFeedbackStreamInstanced(" << toHex(mode) << ", " << id << ", " << stream << ", " << instancecount << ");" << TestLog::EndMessage;
1348	m_gl.drawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
1349}
1350
1351void CallLogWrapper::glEGLImageTargetRenderbufferStorageOES (glw::GLenum target, glw::GLeglImageOES image)
1352{
1353	if (m_enableLog)
1354		m_log << TestLog::Message << "glEGLImageTargetRenderbufferStorageOES(" << toHex(target) << ", " << image << ");" << TestLog::EndMessage;
1355	m_gl.eglImageTargetRenderbufferStorageOES(target, image);
1356}
1357
1358void CallLogWrapper::glEGLImageTargetTexture2DOES (glw::GLenum target, glw::GLeglImageOES image)
1359{
1360	if (m_enableLog)
1361		m_log << TestLog::Message << "glEGLImageTargetTexture2DOES(" << toHex(target) << ", " << image << ");" << TestLog::EndMessage;
1362	m_gl.eglImageTargetTexture2DOES(target, image);
1363}
1364
1365void CallLogWrapper::glEnable (glw::GLenum cap)
1366{
1367	if (m_enableLog)
1368		m_log << TestLog::Message << "glEnable(" << getEnableCapStr(cap) << ");" << TestLog::EndMessage;
1369	m_gl.enable(cap);
1370}
1371
1372void CallLogWrapper::glEnableClientStateIndexedEXT (glw::GLenum array, glw::GLuint index)
1373{
1374	if (m_enableLog)
1375		m_log << TestLog::Message << "glEnableClientStateIndexedEXT(" << toHex(array) << ", " << index << ");" << TestLog::EndMessage;
1376	m_gl.enableClientStateIndexedEXT(array, index);
1377}
1378
1379void CallLogWrapper::glEnableClientStateiEXT (glw::GLenum array, glw::GLuint index)
1380{
1381	if (m_enableLog)
1382		m_log << TestLog::Message << "glEnableClientStateiEXT(" << toHex(array) << ", " << index << ");" << TestLog::EndMessage;
1383	m_gl.enableClientStateiEXT(array, index);
1384}
1385
1386void CallLogWrapper::glEnableVertexArrayAttrib (glw::GLuint vaobj, glw::GLuint index)
1387{
1388	if (m_enableLog)
1389		m_log << TestLog::Message << "glEnableVertexArrayAttrib(" << vaobj << ", " << index << ");" << TestLog::EndMessage;
1390	m_gl.enableVertexArrayAttrib(vaobj, index);
1391}
1392
1393void CallLogWrapper::glEnableVertexArrayAttribEXT (glw::GLuint vaobj, glw::GLuint index)
1394{
1395	if (m_enableLog)
1396		m_log << TestLog::Message << "glEnableVertexArrayAttribEXT(" << vaobj << ", " << index << ");" << TestLog::EndMessage;
1397	m_gl.enableVertexArrayAttribEXT(vaobj, index);
1398}
1399
1400void CallLogWrapper::glEnableVertexArrayEXT (glw::GLuint vaobj, glw::GLenum array)
1401{
1402	if (m_enableLog)
1403		m_log << TestLog::Message << "glEnableVertexArrayEXT(" << vaobj << ", " << toHex(array) << ");" << TestLog::EndMessage;
1404	m_gl.enableVertexArrayEXT(vaobj, array);
1405}
1406
1407void CallLogWrapper::glEnableVertexAttribArray (glw::GLuint index)
1408{
1409	if (m_enableLog)
1410		m_log << TestLog::Message << "glEnableVertexAttribArray(" << index << ");" << TestLog::EndMessage;
1411	m_gl.enableVertexAttribArray(index);
1412}
1413
1414void CallLogWrapper::glEnablei (glw::GLenum target, glw::GLuint index)
1415{
1416	if (m_enableLog)
1417		m_log << TestLog::Message << "glEnablei(" << getIndexedEnableCapStr(target) << ", " << index << ");" << TestLog::EndMessage;
1418	m_gl.enablei(target, index);
1419}
1420
1421void CallLogWrapper::glEndConditionalRender (void)
1422{
1423	if (m_enableLog)
1424		m_log << TestLog::Message << "glEndConditionalRender(" << ");" << TestLog::EndMessage;
1425	m_gl.endConditionalRender();
1426}
1427
1428void CallLogWrapper::glEndQuery (glw::GLenum target)
1429{
1430	if (m_enableLog)
1431		m_log << TestLog::Message << "glEndQuery(" << getQueryTargetStr(target) << ");" << TestLog::EndMessage;
1432	m_gl.endQuery(target);
1433}
1434
1435void CallLogWrapper::glEndQueryIndexed (glw::GLenum target, glw::GLuint index)
1436{
1437	if (m_enableLog)
1438		m_log << TestLog::Message << "glEndQueryIndexed(" << toHex(target) << ", " << index << ");" << TestLog::EndMessage;
1439	m_gl.endQueryIndexed(target, index);
1440}
1441
1442void CallLogWrapper::glEndTransformFeedback (void)
1443{
1444	if (m_enableLog)
1445		m_log << TestLog::Message << "glEndTransformFeedback(" << ");" << TestLog::EndMessage;
1446	m_gl.endTransformFeedback();
1447}
1448
1449glw::GLsync CallLogWrapper::glFenceSync (glw::GLenum condition, glw::GLbitfield flags)
1450{
1451	if (m_enableLog)
1452		m_log << TestLog::Message << "glFenceSync(" << toHex(condition) << ", " << toHex(flags) << ");" << TestLog::EndMessage;
1453	glw::GLsync returnValue = m_gl.fenceSync(condition, flags);
1454	if (m_enableLog)
1455		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
1456	return returnValue;
1457}
1458
1459void CallLogWrapper::glFinish (void)
1460{
1461	if (m_enableLog)
1462		m_log << TestLog::Message << "glFinish(" << ");" << TestLog::EndMessage;
1463	m_gl.finish();
1464}
1465
1466void CallLogWrapper::glFlush (void)
1467{
1468	if (m_enableLog)
1469		m_log << TestLog::Message << "glFlush(" << ");" << TestLog::EndMessage;
1470	m_gl.flush();
1471}
1472
1473void CallLogWrapper::glFlushMappedBufferRange (glw::GLenum target, glw::GLintptr offset, glw::GLsizeiptr length)
1474{
1475	if (m_enableLog)
1476		m_log << TestLog::Message << "glFlushMappedBufferRange(" << getBufferTargetStr(target) << ", " << offset << ", " << length << ");" << TestLog::EndMessage;
1477	m_gl.flushMappedBufferRange(target, offset, length);
1478}
1479
1480void CallLogWrapper::glFlushMappedNamedBufferRange (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr length)
1481{
1482	if (m_enableLog)
1483		m_log << TestLog::Message << "glFlushMappedNamedBufferRange(" << buffer << ", " << offset << ", " << length << ");" << TestLog::EndMessage;
1484	m_gl.flushMappedNamedBufferRange(buffer, offset, length);
1485}
1486
1487void CallLogWrapper::glFlushMappedNamedBufferRangeEXT (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr length)
1488{
1489	if (m_enableLog)
1490		m_log << TestLog::Message << "glFlushMappedNamedBufferRangeEXT(" << buffer << ", " << offset << ", " << length << ");" << TestLog::EndMessage;
1491	m_gl.flushMappedNamedBufferRangeEXT(buffer, offset, length);
1492}
1493
1494void CallLogWrapper::glFramebufferDrawBufferEXT (glw::GLuint framebuffer, glw::GLenum mode)
1495{
1496	if (m_enableLog)
1497		m_log << TestLog::Message << "glFramebufferDrawBufferEXT(" << framebuffer << ", " << toHex(mode) << ");" << TestLog::EndMessage;
1498	m_gl.framebufferDrawBufferEXT(framebuffer, mode);
1499}
1500
1501void CallLogWrapper::glFramebufferDrawBuffersEXT (glw::GLuint framebuffer, glw::GLsizei n, const glw::GLenum *bufs)
1502{
1503	if (m_enableLog)
1504		m_log << TestLog::Message << "glFramebufferDrawBuffersEXT(" << framebuffer << ", " << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(bufs))) << ");" << TestLog::EndMessage;
1505	m_gl.framebufferDrawBuffersEXT(framebuffer, n, bufs);
1506}
1507
1508void CallLogWrapper::glFramebufferParameteri (glw::GLenum target, glw::GLenum pname, glw::GLint param)
1509{
1510	if (m_enableLog)
1511		m_log << TestLog::Message << "glFramebufferParameteri(" << getFramebufferTargetStr(target) << ", " << getFramebufferParameterStr(pname) << ", " << param << ");" << TestLog::EndMessage;
1512	m_gl.framebufferParameteri(target, pname, param);
1513}
1514
1515void CallLogWrapper::glFramebufferReadBufferEXT (glw::GLuint framebuffer, glw::GLenum mode)
1516{
1517	if (m_enableLog)
1518		m_log << TestLog::Message << "glFramebufferReadBufferEXT(" << framebuffer << ", " << toHex(mode) << ");" << TestLog::EndMessage;
1519	m_gl.framebufferReadBufferEXT(framebuffer, mode);
1520}
1521
1522void CallLogWrapper::glFramebufferRenderbuffer (glw::GLenum target, glw::GLenum attachment, glw::GLenum renderbuffertarget, glw::GLuint renderbuffer)
1523{
1524	if (m_enableLog)
1525		m_log << TestLog::Message << "glFramebufferRenderbuffer(" << getFramebufferTargetStr(target) << ", " << getFramebufferAttachmentStr(attachment) << ", " << getFramebufferTargetStr(renderbuffertarget) << ", " << renderbuffer << ");" << TestLog::EndMessage;
1526	m_gl.framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
1527}
1528
1529void CallLogWrapper::glFramebufferTexture (glw::GLenum target, glw::GLenum attachment, glw::GLuint texture, glw::GLint level)
1530{
1531	if (m_enableLog)
1532		m_log << TestLog::Message << "glFramebufferTexture(" << getFramebufferTargetStr(target) << ", " << getFramebufferAttachmentStr(attachment) << ", " << texture << ", " << level << ");" << TestLog::EndMessage;
1533	m_gl.framebufferTexture(target, attachment, texture, level);
1534}
1535
1536void CallLogWrapper::glFramebufferTexture1D (glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level)
1537{
1538	if (m_enableLog)
1539		m_log << TestLog::Message << "glFramebufferTexture1D(" << toHex(target) << ", " << toHex(attachment) << ", " << toHex(textarget) << ", " << texture << ", " << level << ");" << TestLog::EndMessage;
1540	m_gl.framebufferTexture1D(target, attachment, textarget, texture, level);
1541}
1542
1543void CallLogWrapper::glFramebufferTexture2D (glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level)
1544{
1545	if (m_enableLog)
1546		m_log << TestLog::Message << "glFramebufferTexture2D(" << getFramebufferTargetStr(target) << ", " << getFramebufferAttachmentStr(attachment) << ", " << getTextureTargetStr(textarget) << ", " << texture << ", " << level << ");" << TestLog::EndMessage;
1547	m_gl.framebufferTexture2D(target, attachment, textarget, texture, level);
1548}
1549
1550void CallLogWrapper::glFramebufferTexture2DMultisampleEXT (glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level, glw::GLsizei samples)
1551{
1552	if (m_enableLog)
1553		m_log << TestLog::Message << "glFramebufferTexture2DMultisampleEXT(" << toHex(target) << ", " << toHex(attachment) << ", " << toHex(textarget) << ", " << texture << ", " << level << ", " << samples << ");" << TestLog::EndMessage;
1554	m_gl.framebufferTexture2DMultisampleEXT(target, attachment, textarget, texture, level, samples);
1555}
1556
1557void CallLogWrapper::glFramebufferTexture3D (glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level, glw::GLint zoffset)
1558{
1559	if (m_enableLog)
1560		m_log << TestLog::Message << "glFramebufferTexture3D(" << toHex(target) << ", " << toHex(attachment) << ", " << toHex(textarget) << ", " << texture << ", " << level << ", " << zoffset << ");" << TestLog::EndMessage;
1561	m_gl.framebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
1562}
1563
1564void CallLogWrapper::glFramebufferTexture3DOES (glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level, glw::GLint zoffset)
1565{
1566	if (m_enableLog)
1567		m_log << TestLog::Message << "glFramebufferTexture3DOES(" << toHex(target) << ", " << toHex(attachment) << ", " << toHex(textarget) << ", " << texture << ", " << level << ", " << zoffset << ");" << TestLog::EndMessage;
1568	m_gl.framebufferTexture3DOES(target, attachment, textarget, texture, level, zoffset);
1569}
1570
1571void CallLogWrapper::glFramebufferTextureLayer (glw::GLenum target, glw::GLenum attachment, glw::GLuint texture, glw::GLint level, glw::GLint layer)
1572{
1573	if (m_enableLog)
1574		m_log << TestLog::Message << "glFramebufferTextureLayer(" << getFramebufferTargetStr(target) << ", " << getFramebufferAttachmentStr(attachment) << ", " << texture << ", " << level << ", " << layer << ");" << TestLog::EndMessage;
1575	m_gl.framebufferTextureLayer(target, attachment, texture, level, layer);
1576}
1577
1578void CallLogWrapper::glFramebufferTextureMultisampleMultiviewOVR (glw::GLenum target, glw::GLenum attachment, glw::GLuint texture, glw::GLint level, glw::GLsizei samples, glw::GLint baseViewIndex, glw::GLsizei numViews)
1579{
1580	if (m_enableLog)
1581		m_log << TestLog::Message << "glFramebufferTextureMultisampleMultiviewOVR(" << toHex(target) << ", " << toHex(attachment) << ", " << texture << ", " << level << ", " << samples << ", " << baseViewIndex << ", " << numViews << ");" << TestLog::EndMessage;
1582	m_gl.framebufferTextureMultisampleMultiviewOVR(target, attachment, texture, level, samples, baseViewIndex, numViews);
1583}
1584
1585void CallLogWrapper::glFramebufferTextureMultiviewOVR (glw::GLenum target, glw::GLenum attachment, glw::GLuint texture, glw::GLint level, glw::GLint baseViewIndex, glw::GLsizei numViews)
1586{
1587	if (m_enableLog)
1588		m_log << TestLog::Message << "glFramebufferTextureMultiviewOVR(" << toHex(target) << ", " << toHex(attachment) << ", " << texture << ", " << level << ", " << baseViewIndex << ", " << numViews << ");" << TestLog::EndMessage;
1589	m_gl.framebufferTextureMultiviewOVR(target, attachment, texture, level, baseViewIndex, numViews);
1590}
1591
1592void CallLogWrapper::glFrontFace (glw::GLenum mode)
1593{
1594	if (m_enableLog)
1595		m_log << TestLog::Message << "glFrontFace(" << getWindingStr(mode) << ");" << TestLog::EndMessage;
1596	m_gl.frontFace(mode);
1597}
1598
1599void CallLogWrapper::glGenBuffers (glw::GLsizei n, glw::GLuint *buffers)
1600{
1601	if (m_enableLog)
1602		m_log << TestLog::Message << "glGenBuffers(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(buffers))) << ");" << TestLog::EndMessage;
1603	m_gl.genBuffers(n, buffers);
1604	if (m_enableLog)
1605		m_log << TestLog::Message << "// buffers = " << getPointerStr(buffers, n) << TestLog::EndMessage;
1606}
1607
1608void CallLogWrapper::glGenFramebuffers (glw::GLsizei n, glw::GLuint *framebuffers)
1609{
1610	if (m_enableLog)
1611		m_log << TestLog::Message << "glGenFramebuffers(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(framebuffers))) << ");" << TestLog::EndMessage;
1612	m_gl.genFramebuffers(n, framebuffers);
1613	if (m_enableLog)
1614		m_log << TestLog::Message << "// framebuffers = " << getPointerStr(framebuffers, n) << TestLog::EndMessage;
1615}
1616
1617void CallLogWrapper::glGenProgramPipelines (glw::GLsizei n, glw::GLuint *pipelines)
1618{
1619	if (m_enableLog)
1620		m_log << TestLog::Message << "glGenProgramPipelines(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(pipelines))) << ");" << TestLog::EndMessage;
1621	m_gl.genProgramPipelines(n, pipelines);
1622	if (m_enableLog)
1623		m_log << TestLog::Message << "// pipelines = " << getPointerStr(pipelines, n) << TestLog::EndMessage;
1624}
1625
1626void CallLogWrapper::glGenQueries (glw::GLsizei n, glw::GLuint *ids)
1627{
1628	if (m_enableLog)
1629		m_log << TestLog::Message << "glGenQueries(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(ids))) << ");" << TestLog::EndMessage;
1630	m_gl.genQueries(n, ids);
1631	if (m_enableLog)
1632		m_log << TestLog::Message << "// ids = " << getPointerStr(ids, n) << TestLog::EndMessage;
1633}
1634
1635void CallLogWrapper::glGenRenderbuffers (glw::GLsizei n, glw::GLuint *renderbuffers)
1636{
1637	if (m_enableLog)
1638		m_log << TestLog::Message << "glGenRenderbuffers(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(renderbuffers))) << ");" << TestLog::EndMessage;
1639	m_gl.genRenderbuffers(n, renderbuffers);
1640	if (m_enableLog)
1641		m_log << TestLog::Message << "// renderbuffers = " << getPointerStr(renderbuffers, n) << TestLog::EndMessage;
1642}
1643
1644void CallLogWrapper::glGenSamplers (glw::GLsizei count, glw::GLuint *samplers)
1645{
1646	if (m_enableLog)
1647		m_log << TestLog::Message << "glGenSamplers(" << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(samplers))) << ");" << TestLog::EndMessage;
1648	m_gl.genSamplers(count, samplers);
1649}
1650
1651void CallLogWrapper::glGenTextures (glw::GLsizei n, glw::GLuint *textures)
1652{
1653	if (m_enableLog)
1654		m_log << TestLog::Message << "glGenTextures(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(textures))) << ");" << TestLog::EndMessage;
1655	m_gl.genTextures(n, textures);
1656	if (m_enableLog)
1657		m_log << TestLog::Message << "// textures = " << getPointerStr(textures, n) << TestLog::EndMessage;
1658}
1659
1660void CallLogWrapper::glGenTransformFeedbacks (glw::GLsizei n, glw::GLuint *ids)
1661{
1662	if (m_enableLog)
1663		m_log << TestLog::Message << "glGenTransformFeedbacks(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(ids))) << ");" << TestLog::EndMessage;
1664	m_gl.genTransformFeedbacks(n, ids);
1665	if (m_enableLog)
1666		m_log << TestLog::Message << "// ids = " << getPointerStr(ids, n) << TestLog::EndMessage;
1667}
1668
1669void CallLogWrapper::glGenVertexArrays (glw::GLsizei n, glw::GLuint *arrays)
1670{
1671	if (m_enableLog)
1672		m_log << TestLog::Message << "glGenVertexArrays(" << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(arrays))) << ");" << TestLog::EndMessage;
1673	m_gl.genVertexArrays(n, arrays);
1674	if (m_enableLog)
1675		m_log << TestLog::Message << "// arrays = " << getPointerStr(arrays, n) << TestLog::EndMessage;
1676}
1677
1678void CallLogWrapper::glGenerateMipmap (glw::GLenum target)
1679{
1680	if (m_enableLog)
1681		m_log << TestLog::Message << "glGenerateMipmap(" << getTextureTargetStr(target) << ");" << TestLog::EndMessage;
1682	m_gl.generateMipmap(target);
1683}
1684
1685void CallLogWrapper::glGenerateMultiTexMipmapEXT (glw::GLenum texunit, glw::GLenum target)
1686{
1687	if (m_enableLog)
1688		m_log << TestLog::Message << "glGenerateMultiTexMipmapEXT(" << toHex(texunit) << ", " << toHex(target) << ");" << TestLog::EndMessage;
1689	m_gl.generateMultiTexMipmapEXT(texunit, target);
1690}
1691
1692void CallLogWrapper::glGenerateTextureMipmap (glw::GLuint texture)
1693{
1694	if (m_enableLog)
1695		m_log << TestLog::Message << "glGenerateTextureMipmap(" << texture << ");" << TestLog::EndMessage;
1696	m_gl.generateTextureMipmap(texture);
1697}
1698
1699void CallLogWrapper::glGenerateTextureMipmapEXT (glw::GLuint texture, glw::GLenum target)
1700{
1701	if (m_enableLog)
1702		m_log << TestLog::Message << "glGenerateTextureMipmapEXT(" << texture << ", " << toHex(target) << ");" << TestLog::EndMessage;
1703	m_gl.generateTextureMipmapEXT(texture, target);
1704}
1705
1706void CallLogWrapper::glGetActiveAtomicCounterBufferiv (glw::GLuint program, glw::GLuint bufferIndex, glw::GLenum pname, glw::GLint *params)
1707{
1708	if (m_enableLog)
1709		m_log << TestLog::Message << "glGetActiveAtomicCounterBufferiv(" << program << ", " << bufferIndex << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
1710	m_gl.getActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
1711}
1712
1713void CallLogWrapper::glGetActiveAttrib (glw::GLuint program, glw::GLuint index, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLint *size, glw::GLenum *type, glw::GLchar *name)
1714{
1715	if (m_enableLog)
1716		m_log << TestLog::Message << "glGetActiveAttrib(" << program << ", " << index << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(size))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(type))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(name))) << ");" << TestLog::EndMessage;
1717	m_gl.getActiveAttrib(program, index, bufSize, length, size, type, name);
1718}
1719
1720void CallLogWrapper::glGetActiveSubroutineName (glw::GLuint program, glw::GLenum shadertype, glw::GLuint index, glw::GLsizei bufsize, glw::GLsizei *length, glw::GLchar *name)
1721{
1722	if (m_enableLog)
1723		m_log << TestLog::Message << "glGetActiveSubroutineName(" << program << ", " << toHex(shadertype) << ", " << index << ", " << bufsize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(name))) << ");" << TestLog::EndMessage;
1724	m_gl.getActiveSubroutineName(program, shadertype, index, bufsize, length, name);
1725}
1726
1727void CallLogWrapper::glGetActiveSubroutineUniformName (glw::GLuint program, glw::GLenum shadertype, glw::GLuint index, glw::GLsizei bufsize, glw::GLsizei *length, glw::GLchar *name)
1728{
1729	if (m_enableLog)
1730		m_log << TestLog::Message << "glGetActiveSubroutineUniformName(" << program << ", " << toHex(shadertype) << ", " << index << ", " << bufsize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(name))) << ");" << TestLog::EndMessage;
1731	m_gl.getActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
1732}
1733
1734void CallLogWrapper::glGetActiveSubroutineUniformiv (glw::GLuint program, glw::GLenum shadertype, glw::GLuint index, glw::GLenum pname, glw::GLint *values)
1735{
1736	if (m_enableLog)
1737		m_log << TestLog::Message << "glGetActiveSubroutineUniformiv(" << program << ", " << toHex(shadertype) << ", " << index << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(values))) << ");" << TestLog::EndMessage;
1738	m_gl.getActiveSubroutineUniformiv(program, shadertype, index, pname, values);
1739}
1740
1741void CallLogWrapper::glGetActiveUniform (glw::GLuint program, glw::GLuint index, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLint *size, glw::GLenum *type, glw::GLchar *name)
1742{
1743	if (m_enableLog)
1744		m_log << TestLog::Message << "glGetActiveUniform(" << program << ", " << index << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(size))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(type))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(name))) << ");" << TestLog::EndMessage;
1745	m_gl.getActiveUniform(program, index, bufSize, length, size, type, name);
1746	if (m_enableLog)
1747	{
1748		m_log << TestLog::Message << "// length = " << getPointerStr(length, 1) << TestLog::EndMessage;
1749		m_log << TestLog::Message << "// size = " << getPointerStr(size, 1) << TestLog::EndMessage;
1750		m_log << TestLog::Message << "// type = " << getEnumPointerStr(type, 1, getShaderVarTypeName) << TestLog::EndMessage;
1751		m_log << TestLog::Message << "// name = " << getStringStr(name) << TestLog::EndMessage;
1752	}
1753}
1754
1755void CallLogWrapper::glGetActiveUniformBlockName (glw::GLuint program, glw::GLuint uniformBlockIndex, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLchar *uniformBlockName)
1756{
1757	if (m_enableLog)
1758		m_log << TestLog::Message << "glGetActiveUniformBlockName(" << program << ", " << uniformBlockIndex << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(uniformBlockName))) << ");" << TestLog::EndMessage;
1759	m_gl.getActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
1760}
1761
1762void CallLogWrapper::glGetActiveUniformBlockiv (glw::GLuint program, glw::GLuint uniformBlockIndex, glw::GLenum pname, glw::GLint *params)
1763{
1764	if (m_enableLog)
1765		m_log << TestLog::Message << "glGetActiveUniformBlockiv(" << program << ", " << uniformBlockIndex << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
1766	m_gl.getActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
1767}
1768
1769void CallLogWrapper::glGetActiveUniformName (glw::GLuint program, glw::GLuint uniformIndex, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLchar *uniformName)
1770{
1771	if (m_enableLog)
1772		m_log << TestLog::Message << "glGetActiveUniformName(" << program << ", " << uniformIndex << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(uniformName))) << ");" << TestLog::EndMessage;
1773	m_gl.getActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
1774}
1775
1776void CallLogWrapper::glGetActiveUniformsiv (glw::GLuint program, glw::GLsizei uniformCount, const glw::GLuint *uniformIndices, glw::GLenum pname, glw::GLint *params)
1777{
1778	if (m_enableLog)
1779		m_log << TestLog::Message << "glGetActiveUniformsiv(" << program << ", " << uniformCount << ", " << getPointerStr(uniformIndices, uniformCount) << ", " << getUniformParamStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
1780	m_gl.getActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
1781	if (m_enableLog)
1782		m_log << TestLog::Message << "// params = " << getPointerStr(params, uniformCount) << TestLog::EndMessage;
1783}
1784
1785void CallLogWrapper::glGetAttachedShaders (glw::GLuint program, glw::GLsizei maxCount, glw::GLsizei *count, glw::GLuint *shaders)
1786{
1787	if (m_enableLog)
1788		m_log << TestLog::Message << "glGetAttachedShaders(" << program << ", " << maxCount << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(count))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(shaders))) << ");" << TestLog::EndMessage;
1789	m_gl.getAttachedShaders(program, maxCount, count, shaders);
1790}
1791
1792glw::GLint CallLogWrapper::glGetAttribLocation (glw::GLuint program, const glw::GLchar *name)
1793{
1794	if (m_enableLog)
1795		m_log << TestLog::Message << "glGetAttribLocation(" << program << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
1796	glw::GLint returnValue = m_gl.getAttribLocation(program, name);
1797	if (m_enableLog)
1798		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
1799	return returnValue;
1800}
1801
1802void CallLogWrapper::glGetBooleani_v (glw::GLenum target, glw::GLuint index, glw::GLboolean *data)
1803{
1804	if (m_enableLog)
1805		m_log << TestLog::Message << "glGetBooleani_v(" << getGettableIndexedStateStr(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
1806	m_gl.getBooleani_v(target, index, data);
1807	if (m_enableLog)
1808		m_log << TestLog::Message << "// data = " << getBooleanPointerStr(data, getIndexedQueryNumArgsOut(target)) << TestLog::EndMessage;
1809}
1810
1811void CallLogWrapper::glGetBooleanv (glw::GLenum pname, glw::GLboolean *data)
1812{
1813	if (m_enableLog)
1814		m_log << TestLog::Message << "glGetBooleanv(" << getGettableStateStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
1815	m_gl.getBooleanv(pname, data);
1816	if (m_enableLog)
1817		m_log << TestLog::Message << "// data = " << getBooleanPointerStr(data, getBasicQueryNumArgsOut(pname)) << TestLog::EndMessage;
1818}
1819
1820void CallLogWrapper::glGetBufferParameteri64v (glw::GLenum target, glw::GLenum pname, glw::GLint64 *params)
1821{
1822	if (m_enableLog)
1823		m_log << TestLog::Message << "glGetBufferParameteri64v(" << getBufferTargetStr(target) << ", " << getBufferQueryStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
1824	m_gl.getBufferParameteri64v(target, pname, params);
1825}
1826
1827void CallLogWrapper::glGetBufferParameteriv (glw::GLenum target, glw::GLenum pname, glw::GLint *params)
1828{
1829	if (m_enableLog)
1830		m_log << TestLog::Message << "glGetBufferParameteriv(" << getBufferTargetStr(target) << ", " << getBufferQueryStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
1831	m_gl.getBufferParameteriv(target, pname, params);
1832}
1833
1834void CallLogWrapper::glGetBufferPointerv (glw::GLenum target, glw::GLenum pname, void **params)
1835{
1836	if (m_enableLog)
1837		m_log << TestLog::Message << "glGetBufferPointerv(" << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
1838	m_gl.getBufferPointerv(target, pname, params);
1839}
1840
1841void CallLogWrapper::glGetBufferSubData (glw::GLenum target, glw::GLintptr offset, glw::GLsizeiptr size, void *data)
1842{
1843	if (m_enableLog)
1844		m_log << TestLog::Message << "glGetBufferSubData(" << toHex(target) << ", " << offset << ", " << size << ", " << data << ");" << TestLog::EndMessage;
1845	m_gl.getBufferSubData(target, offset, size, data);
1846}
1847
1848void CallLogWrapper::glGetCompressedMultiTexImageEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint lod, void *img)
1849{
1850	if (m_enableLog)
1851		m_log << TestLog::Message << "glGetCompressedMultiTexImageEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << lod << ", " << img << ");" << TestLog::EndMessage;
1852	m_gl.getCompressedMultiTexImageEXT(texunit, target, lod, img);
1853}
1854
1855void CallLogWrapper::glGetCompressedTexImage (glw::GLenum target, glw::GLint level, void *img)
1856{
1857	if (m_enableLog)
1858		m_log << TestLog::Message << "glGetCompressedTexImage(" << toHex(target) << ", " << level << ", " << img << ");" << TestLog::EndMessage;
1859	m_gl.getCompressedTexImage(target, level, img);
1860}
1861
1862void CallLogWrapper::glGetCompressedTextureImage (glw::GLuint texture, glw::GLint level, glw::GLsizei bufSize, void *pixels)
1863{
1864	if (m_enableLog)
1865		m_log << TestLog::Message << "glGetCompressedTextureImage(" << texture << ", " << level << ", " << bufSize << ", " << pixels << ");" << TestLog::EndMessage;
1866	m_gl.getCompressedTextureImage(texture, level, bufSize, pixels);
1867}
1868
1869void CallLogWrapper::glGetCompressedTextureImageEXT (glw::GLuint texture, glw::GLenum target, glw::GLint lod, void *img)
1870{
1871	if (m_enableLog)
1872		m_log << TestLog::Message << "glGetCompressedTextureImageEXT(" << texture << ", " << toHex(target) << ", " << lod << ", " << img << ");" << TestLog::EndMessage;
1873	m_gl.getCompressedTextureImageEXT(texture, target, lod, img);
1874}
1875
1876void CallLogWrapper::glGetCompressedTextureSubImage (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLsizei bufSize, void *pixels)
1877{
1878	if (m_enableLog)
1879		m_log << TestLog::Message << "glGetCompressedTextureSubImage(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << bufSize << ", " << pixels << ");" << TestLog::EndMessage;
1880	m_gl.getCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels);
1881}
1882
1883glw::GLuint CallLogWrapper::glGetDebugMessageLog (glw::GLuint count, glw::GLsizei bufSize, glw::GLenum *sources, glw::GLenum *types, glw::GLuint *ids, glw::GLenum *severities, glw::GLsizei *lengths, glw::GLchar *messageLog)
1884{
1885	if (m_enableLog)
1886		m_log << TestLog::Message << "glGetDebugMessageLog(" << count << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(sources))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(types))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(ids))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(severities))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(lengths))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(messageLog))) << ");" << TestLog::EndMessage;
1887	glw::GLuint returnValue = m_gl.getDebugMessageLog(count, bufSize, sources, types, ids, severities, lengths, messageLog);
1888	if (m_enableLog)
1889		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
1890	return returnValue;
1891}
1892
1893void CallLogWrapper::glGetDoublei_v (glw::GLenum target, glw::GLuint index, glw::GLdouble *data)
1894{
1895	if (m_enableLog)
1896		m_log << TestLog::Message << "glGetDoublei_v(" << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
1897	m_gl.getDoublei_v(target, index, data);
1898}
1899
1900void CallLogWrapper::glGetDoublev (glw::GLenum pname, glw::GLdouble *data)
1901{
1902	if (m_enableLog)
1903		m_log << TestLog::Message << "glGetDoublev(" << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
1904	m_gl.getDoublev(pname, data);
1905}
1906
1907glw::GLenum CallLogWrapper::glGetError (void)
1908{
1909	if (m_enableLog)
1910		m_log << TestLog::Message << "glGetError(" << ");" << TestLog::EndMessage;
1911	glw::GLenum returnValue = m_gl.getError();
1912	if (m_enableLog)
1913		m_log << TestLog::Message << "// " << getErrorStr(returnValue) << " returned" << TestLog::EndMessage;
1914	return returnValue;
1915}
1916
1917void CallLogWrapper::glGetFloati_v (glw::GLenum target, glw::GLuint index, glw::GLfloat *data)
1918{
1919	if (m_enableLog)
1920		m_log << TestLog::Message << "glGetFloati_v(" << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
1921	m_gl.getFloati_v(target, index, data);
1922}
1923
1924void CallLogWrapper::glGetFloatv (glw::GLenum pname, glw::GLfloat *data)
1925{
1926	if (m_enableLog)
1927		m_log << TestLog::Message << "glGetFloatv(" << getGettableStateStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
1928	m_gl.getFloatv(pname, data);
1929	if (m_enableLog)
1930		m_log << TestLog::Message << "// data = " << getPointerStr(data, getBasicQueryNumArgsOut(pname)) << TestLog::EndMessage;
1931}
1932
1933glw::GLint CallLogWrapper::glGetFragDataIndex (glw::GLuint program, const glw::GLchar *name)
1934{
1935	if (m_enableLog)
1936		m_log << TestLog::Message << "glGetFragDataIndex(" << program << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
1937	glw::GLint returnValue = m_gl.getFragDataIndex(program, name);
1938	if (m_enableLog)
1939		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
1940	return returnValue;
1941}
1942
1943glw::GLint CallLogWrapper::glGetFragDataLocation (glw::GLuint program, const glw::GLchar *name)
1944{
1945	if (m_enableLog)
1946		m_log << TestLog::Message << "glGetFragDataLocation(" << program << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
1947	glw::GLint returnValue = m_gl.getFragDataLocation(program, name);
1948	if (m_enableLog)
1949		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
1950	return returnValue;
1951}
1952
1953void CallLogWrapper::glGetFramebufferAttachmentParameteriv (glw::GLenum target, glw::GLenum attachment, glw::GLenum pname, glw::GLint *params)
1954{
1955	if (m_enableLog)
1956		m_log << TestLog::Message << "glGetFramebufferAttachmentParameteriv(" << getFramebufferTargetStr(target) << ", " << getFramebufferAttachmentStr(attachment) << ", " << getFramebufferAttachmentParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
1957	m_gl.getFramebufferAttachmentParameteriv(target, attachment, pname, params);
1958	if (m_enableLog)
1959		m_log << TestLog::Message << "// params = " << getFramebufferAttachmentParameterValueStr(pname, params) << TestLog::EndMessage;
1960}
1961
1962void CallLogWrapper::glGetFramebufferParameteriv (glw::GLenum target, glw::GLenum pname, glw::GLint *params)
1963{
1964	if (m_enableLog)
1965		m_log << TestLog::Message << "glGetFramebufferParameteriv(" << getFramebufferTargetStr(target) << ", " << getFramebufferParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
1966	m_gl.getFramebufferParameteriv(target, pname, params);
1967	if (m_enableLog)
1968		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
1969}
1970
1971void CallLogWrapper::glGetFramebufferParameterivEXT (glw::GLuint framebuffer, glw::GLenum pname, glw::GLint *params)
1972{
1973	if (m_enableLog)
1974		m_log << TestLog::Message << "glGetFramebufferParameterivEXT(" << framebuffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
1975	m_gl.getFramebufferParameterivEXT(framebuffer, pname, params);
1976}
1977
1978glw::GLenum CallLogWrapper::glGetGraphicsResetStatus (void)
1979{
1980	if (m_enableLog)
1981		m_log << TestLog::Message << "glGetGraphicsResetStatus(" << ");" << TestLog::EndMessage;
1982	glw::GLenum returnValue = m_gl.getGraphicsResetStatus();
1983	if (m_enableLog)
1984		m_log << TestLog::Message << "// " << toHex(returnValue) << " returned" << TestLog::EndMessage;
1985	return returnValue;
1986}
1987
1988void CallLogWrapper::glGetInteger64i_v (glw::GLenum target, glw::GLuint index, glw::GLint64 *data)
1989{
1990	if (m_enableLog)
1991		m_log << TestLog::Message << "glGetInteger64i_v(" << getGettableIndexedStateStr(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
1992	m_gl.getInteger64i_v(target, index, data);
1993	if (m_enableLog)
1994		m_log << TestLog::Message << "// data = " << getPointerStr(data, getIndexedQueryNumArgsOut(target)) << TestLog::EndMessage;
1995}
1996
1997void CallLogWrapper::glGetInteger64v (glw::GLenum pname, glw::GLint64 *data)
1998{
1999	if (m_enableLog)
2000		m_log << TestLog::Message << "glGetInteger64v(" << getGettableStateStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
2001	m_gl.getInteger64v(pname, data);
2002	if (m_enableLog)
2003		m_log << TestLog::Message << "// data = " << getPointerStr(data, getBasicQueryNumArgsOut(pname)) << TestLog::EndMessage;
2004}
2005
2006void CallLogWrapper::glGetIntegeri_v (glw::GLenum target, glw::GLuint index, glw::GLint *data)
2007{
2008	if (m_enableLog)
2009		m_log << TestLog::Message << "glGetIntegeri_v(" << getGettableIndexedStateStr(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
2010	m_gl.getIntegeri_v(target, index, data);
2011	if (m_enableLog)
2012		m_log << TestLog::Message << "// data = " << getPointerStr(data, getIndexedQueryNumArgsOut(target)) << TestLog::EndMessage;
2013}
2014
2015void CallLogWrapper::glGetIntegerv (glw::GLenum pname, glw::GLint *data)
2016{
2017	if (m_enableLog)
2018		m_log << TestLog::Message << "glGetIntegerv(" << getGettableStateStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
2019	m_gl.getIntegerv(pname, data);
2020	if (m_enableLog)
2021		m_log << TestLog::Message << "// data = " << getPointerStr(data, getBasicQueryNumArgsOut(pname)) << TestLog::EndMessage;
2022}
2023
2024void CallLogWrapper::glGetInternalformatSampleivNV (glw::GLenum target, glw::GLenum internalformat, glw::GLsizei samples, glw::GLenum pname, glw::GLsizei bufSize, glw::GLint *params)
2025{
2026	if (m_enableLog)
2027		m_log << TestLog::Message << "glGetInternalformatSampleivNV(" << toHex(target) << ", " << toHex(internalformat) << ", " << samples << ", " << toHex(pname) << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2028	m_gl.getInternalformatSampleivNV(target, internalformat, samples, pname, bufSize, params);
2029}
2030
2031void CallLogWrapper::glGetInternalformati64v (glw::GLenum target, glw::GLenum internalformat, glw::GLenum pname, glw::GLsizei bufSize, glw::GLint64 *params)
2032{
2033	if (m_enableLog)
2034		m_log << TestLog::Message << "glGetInternalformati64v(" << toHex(target) << ", " << toHex(internalformat) << ", " << toHex(pname) << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2035	m_gl.getInternalformati64v(target, internalformat, pname, bufSize, params);
2036}
2037
2038void CallLogWrapper::glGetInternalformativ (glw::GLenum target, glw::GLenum internalformat, glw::GLenum pname, glw::GLsizei bufSize, glw::GLint *params)
2039{
2040	if (m_enableLog)
2041		m_log << TestLog::Message << "glGetInternalformativ(" << getInternalFormatTargetStr(target) << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << getInternalFormatParameterStr(pname) << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2042	m_gl.getInternalformativ(target, internalformat, pname, bufSize, params);
2043	if (m_enableLog)
2044		m_log << TestLog::Message << "// params = " << getPointerStr(params, bufSize) << TestLog::EndMessage;
2045}
2046
2047void CallLogWrapper::glGetMultiTexEnvfvEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLfloat *params)
2048{
2049	if (m_enableLog)
2050		m_log << TestLog::Message << "glGetMultiTexEnvfvEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2051	m_gl.getMultiTexEnvfvEXT(texunit, target, pname, params);
2052}
2053
2054void CallLogWrapper::glGetMultiTexEnvivEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2055{
2056	if (m_enableLog)
2057		m_log << TestLog::Message << "glGetMultiTexEnvivEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2058	m_gl.getMultiTexEnvivEXT(texunit, target, pname, params);
2059}
2060
2061void CallLogWrapper::glGetMultiTexGendvEXT (glw::GLenum texunit, glw::GLenum coord, glw::GLenum pname, glw::GLdouble *params)
2062{
2063	if (m_enableLog)
2064		m_log << TestLog::Message << "glGetMultiTexGendvEXT(" << toHex(texunit) << ", " << toHex(coord) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2065	m_gl.getMultiTexGendvEXT(texunit, coord, pname, params);
2066}
2067
2068void CallLogWrapper::glGetMultiTexGenfvEXT (glw::GLenum texunit, glw::GLenum coord, glw::GLenum pname, glw::GLfloat *params)
2069{
2070	if (m_enableLog)
2071		m_log << TestLog::Message << "glGetMultiTexGenfvEXT(" << toHex(texunit) << ", " << toHex(coord) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2072	m_gl.getMultiTexGenfvEXT(texunit, coord, pname, params);
2073}
2074
2075void CallLogWrapper::glGetMultiTexGenivEXT (glw::GLenum texunit, glw::GLenum coord, glw::GLenum pname, glw::GLint *params)
2076{
2077	if (m_enableLog)
2078		m_log << TestLog::Message << "glGetMultiTexGenivEXT(" << toHex(texunit) << ", " << toHex(coord) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2079	m_gl.getMultiTexGenivEXT(texunit, coord, pname, params);
2080}
2081
2082void CallLogWrapper::glGetMultiTexImageEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLenum format, glw::GLenum type, void *pixels)
2083{
2084	if (m_enableLog)
2085		m_log << TestLog::Message << "glGetMultiTexImageEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
2086	m_gl.getMultiTexImageEXT(texunit, target, level, format, type, pixels);
2087}
2088
2089void CallLogWrapper::glGetMultiTexLevelParameterfvEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLenum pname, glw::GLfloat *params)
2090{
2091	if (m_enableLog)
2092		m_log << TestLog::Message << "glGetMultiTexLevelParameterfvEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2093	m_gl.getMultiTexLevelParameterfvEXT(texunit, target, level, pname, params);
2094}
2095
2096void CallLogWrapper::glGetMultiTexLevelParameterivEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLenum pname, glw::GLint *params)
2097{
2098	if (m_enableLog)
2099		m_log << TestLog::Message << "glGetMultiTexLevelParameterivEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2100	m_gl.getMultiTexLevelParameterivEXT(texunit, target, level, pname, params);
2101}
2102
2103void CallLogWrapper::glGetMultiTexParameterIivEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2104{
2105	if (m_enableLog)
2106		m_log << TestLog::Message << "glGetMultiTexParameterIivEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2107	m_gl.getMultiTexParameterIivEXT(texunit, target, pname, params);
2108}
2109
2110void CallLogWrapper::glGetMultiTexParameterIuivEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLuint *params)
2111{
2112	if (m_enableLog)
2113		m_log << TestLog::Message << "glGetMultiTexParameterIuivEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2114	m_gl.getMultiTexParameterIuivEXT(texunit, target, pname, params);
2115}
2116
2117void CallLogWrapper::glGetMultiTexParameterfvEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLfloat *params)
2118{
2119	if (m_enableLog)
2120		m_log << TestLog::Message << "glGetMultiTexParameterfvEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2121	m_gl.getMultiTexParameterfvEXT(texunit, target, pname, params);
2122}
2123
2124void CallLogWrapper::glGetMultiTexParameterivEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2125{
2126	if (m_enableLog)
2127		m_log << TestLog::Message << "glGetMultiTexParameterivEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2128	m_gl.getMultiTexParameterivEXT(texunit, target, pname, params);
2129}
2130
2131void CallLogWrapper::glGetMultisamplefv (glw::GLenum pname, glw::GLuint index, glw::GLfloat *val)
2132{
2133	if (m_enableLog)
2134		m_log << TestLog::Message << "glGetMultisamplefv(" << getMultisampleParameterStr(pname) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(val))) << ");" << TestLog::EndMessage;
2135	m_gl.getMultisamplefv(pname, index, val);
2136	if (m_enableLog)
2137		m_log << TestLog::Message << "// val = " << getPointerStr(val, 2) << TestLog::EndMessage;
2138}
2139
2140void CallLogWrapper::glGetNamedBufferParameteri64v (glw::GLuint buffer, glw::GLenum pname, glw::GLint64 *params)
2141{
2142	if (m_enableLog)
2143		m_log << TestLog::Message << "glGetNamedBufferParameteri64v(" << buffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2144	m_gl.getNamedBufferParameteri64v(buffer, pname, params);
2145}
2146
2147void CallLogWrapper::glGetNamedBufferParameteriv (glw::GLuint buffer, glw::GLenum pname, glw::GLint *params)
2148{
2149	if (m_enableLog)
2150		m_log << TestLog::Message << "glGetNamedBufferParameteriv(" << buffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2151	m_gl.getNamedBufferParameteriv(buffer, pname, params);
2152}
2153
2154void CallLogWrapper::glGetNamedBufferParameterivEXT (glw::GLuint buffer, glw::GLenum pname, glw::GLint *params)
2155{
2156	if (m_enableLog)
2157		m_log << TestLog::Message << "glGetNamedBufferParameterivEXT(" << buffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2158	m_gl.getNamedBufferParameterivEXT(buffer, pname, params);
2159}
2160
2161void CallLogWrapper::glGetNamedBufferPointerv (glw::GLuint buffer, glw::GLenum pname, void **params)
2162{
2163	if (m_enableLog)
2164		m_log << TestLog::Message << "glGetNamedBufferPointerv(" << buffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2165	m_gl.getNamedBufferPointerv(buffer, pname, params);
2166}
2167
2168void CallLogWrapper::glGetNamedBufferPointervEXT (glw::GLuint buffer, glw::GLenum pname, void **params)
2169{
2170	if (m_enableLog)
2171		m_log << TestLog::Message << "glGetNamedBufferPointervEXT(" << buffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2172	m_gl.getNamedBufferPointervEXT(buffer, pname, params);
2173}
2174
2175void CallLogWrapper::glGetNamedBufferSubData (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size, void *data)
2176{
2177	if (m_enableLog)
2178		m_log << TestLog::Message << "glGetNamedBufferSubData(" << buffer << ", " << offset << ", " << size << ", " << data << ");" << TestLog::EndMessage;
2179	m_gl.getNamedBufferSubData(buffer, offset, size, data);
2180}
2181
2182void CallLogWrapper::glGetNamedBufferSubDataEXT (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size, void *data)
2183{
2184	if (m_enableLog)
2185		m_log << TestLog::Message << "glGetNamedBufferSubDataEXT(" << buffer << ", " << offset << ", " << size << ", " << data << ");" << TestLog::EndMessage;
2186	m_gl.getNamedBufferSubDataEXT(buffer, offset, size, data);
2187}
2188
2189void CallLogWrapper::glGetNamedFramebufferAttachmentParameteriv (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLenum pname, glw::GLint *params)
2190{
2191	if (m_enableLog)
2192		m_log << TestLog::Message << "glGetNamedFramebufferAttachmentParameteriv(" << framebuffer << ", " << toHex(attachment) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2193	m_gl.getNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, params);
2194}
2195
2196void CallLogWrapper::glGetNamedFramebufferAttachmentParameterivEXT (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLenum pname, glw::GLint *params)
2197{
2198	if (m_enableLog)
2199		m_log << TestLog::Message << "glGetNamedFramebufferAttachmentParameterivEXT(" << framebuffer << ", " << toHex(attachment) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2200	m_gl.getNamedFramebufferAttachmentParameterivEXT(framebuffer, attachment, pname, params);
2201}
2202
2203void CallLogWrapper::glGetNamedFramebufferParameteriv (glw::GLuint framebuffer, glw::GLenum pname, glw::GLint *param)
2204{
2205	if (m_enableLog)
2206		m_log << TestLog::Message << "glGetNamedFramebufferParameteriv(" << framebuffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2207	m_gl.getNamedFramebufferParameteriv(framebuffer, pname, param);
2208}
2209
2210void CallLogWrapper::glGetNamedFramebufferParameterivEXT (glw::GLuint framebuffer, glw::GLenum pname, glw::GLint *params)
2211{
2212	if (m_enableLog)
2213		m_log << TestLog::Message << "glGetNamedFramebufferParameterivEXT(" << framebuffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2214	m_gl.getNamedFramebufferParameterivEXT(framebuffer, pname, params);
2215}
2216
2217void CallLogWrapper::glGetNamedProgramLocalParameterIivEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLint *params)
2218{
2219	if (m_enableLog)
2220		m_log << TestLog::Message << "glGetNamedProgramLocalParameterIivEXT(" << program << ", " << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2221	m_gl.getNamedProgramLocalParameterIivEXT(program, target, index, params);
2222}
2223
2224void CallLogWrapper::glGetNamedProgramLocalParameterIuivEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLuint *params)
2225{
2226	if (m_enableLog)
2227		m_log << TestLog::Message << "glGetNamedProgramLocalParameterIuivEXT(" << program << ", " << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2228	m_gl.getNamedProgramLocalParameterIuivEXT(program, target, index, params);
2229}
2230
2231void CallLogWrapper::glGetNamedProgramLocalParameterdvEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLdouble *params)
2232{
2233	if (m_enableLog)
2234		m_log << TestLog::Message << "glGetNamedProgramLocalParameterdvEXT(" << program << ", " << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2235	m_gl.getNamedProgramLocalParameterdvEXT(program, target, index, params);
2236}
2237
2238void CallLogWrapper::glGetNamedProgramLocalParameterfvEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLfloat *params)
2239{
2240	if (m_enableLog)
2241		m_log << TestLog::Message << "glGetNamedProgramLocalParameterfvEXT(" << program << ", " << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2242	m_gl.getNamedProgramLocalParameterfvEXT(program, target, index, params);
2243}
2244
2245void CallLogWrapper::glGetNamedProgramStringEXT (glw::GLuint program, glw::GLenum target, glw::GLenum pname, void *string)
2246{
2247	if (m_enableLog)
2248		m_log << TestLog::Message << "glGetNamedProgramStringEXT(" << program << ", " << toHex(target) << ", " << toHex(pname) << ", " << string << ");" << TestLog::EndMessage;
2249	m_gl.getNamedProgramStringEXT(program, target, pname, string);
2250}
2251
2252void CallLogWrapper::glGetNamedProgramivEXT (glw::GLuint program, glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2253{
2254	if (m_enableLog)
2255		m_log << TestLog::Message << "glGetNamedProgramivEXT(" << program << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2256	m_gl.getNamedProgramivEXT(program, target, pname, params);
2257}
2258
2259void CallLogWrapper::glGetNamedRenderbufferParameteriv (glw::GLuint renderbuffer, glw::GLenum pname, glw::GLint *params)
2260{
2261	if (m_enableLog)
2262		m_log << TestLog::Message << "glGetNamedRenderbufferParameteriv(" << renderbuffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2263	m_gl.getNamedRenderbufferParameteriv(renderbuffer, pname, params);
2264}
2265
2266void CallLogWrapper::glGetNamedRenderbufferParameterivEXT (glw::GLuint renderbuffer, glw::GLenum pname, glw::GLint *params)
2267{
2268	if (m_enableLog)
2269		m_log << TestLog::Message << "glGetNamedRenderbufferParameterivEXT(" << renderbuffer << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2270	m_gl.getNamedRenderbufferParameterivEXT(renderbuffer, pname, params);
2271}
2272
2273void CallLogWrapper::glGetObjectLabel (glw::GLenum identifier, glw::GLuint name, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLchar *label)
2274{
2275	if (m_enableLog)
2276		m_log << TestLog::Message << "glGetObjectLabel(" << toHex(identifier) << ", " << name << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(label))) << ");" << TestLog::EndMessage;
2277	m_gl.getObjectLabel(identifier, name, bufSize, length, label);
2278}
2279
2280void CallLogWrapper::glGetObjectPtrLabel (const void *ptr, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLchar *label)
2281{
2282	if (m_enableLog)
2283		m_log << TestLog::Message << "glGetObjectPtrLabel(" << ptr << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(label))) << ");" << TestLog::EndMessage;
2284	m_gl.getObjectPtrLabel(ptr, bufSize, length, label);
2285}
2286
2287void CallLogWrapper::glGetPointerIndexedvEXT (glw::GLenum target, glw::GLuint index, void **data)
2288{
2289	if (m_enableLog)
2290		m_log << TestLog::Message << "glGetPointerIndexedvEXT(" << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(data))) << ");" << TestLog::EndMessage;
2291	m_gl.getPointerIndexedvEXT(target, index, data);
2292}
2293
2294void CallLogWrapper::glGetPointeri_vEXT (glw::GLenum pname, glw::GLuint index, void **params)
2295{
2296	if (m_enableLog)
2297		m_log << TestLog::Message << "glGetPointeri_vEXT(" << toHex(pname) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2298	m_gl.getPointeri_vEXT(pname, index, params);
2299}
2300
2301void CallLogWrapper::glGetPointerv (glw::GLenum pname, void **params)
2302{
2303	if (m_enableLog)
2304		m_log << TestLog::Message << "glGetPointerv(" << getPointerStateStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2305	m_gl.getPointerv(pname, params);
2306	if (m_enableLog)
2307		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2308}
2309
2310void CallLogWrapper::glGetProgramBinary (glw::GLuint program, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLenum *binaryFormat, void *binary)
2311{
2312	if (m_enableLog)
2313		m_log << TestLog::Message << "glGetProgramBinary(" << program << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(binaryFormat))) << ", " << binary << ");" << TestLog::EndMessage;
2314	m_gl.getProgramBinary(program, bufSize, length, binaryFormat, binary);
2315}
2316
2317void CallLogWrapper::glGetProgramInfoLog (glw::GLuint program, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLchar *infoLog)
2318{
2319	if (m_enableLog)
2320		m_log << TestLog::Message << "glGetProgramInfoLog(" << program << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(infoLog))) << ");" << TestLog::EndMessage;
2321	m_gl.getProgramInfoLog(program, bufSize, length, infoLog);
2322	if (m_enableLog)
2323		m_log << TestLog::Message << "// length = " << getPointerStr(length, 1) << TestLog::EndMessage;
2324}
2325
2326void CallLogWrapper::glGetProgramInterfaceiv (glw::GLuint program, glw::GLenum programInterface, glw::GLenum pname, glw::GLint *params)
2327{
2328	if (m_enableLog)
2329		m_log << TestLog::Message << "glGetProgramInterfaceiv(" << program << ", " << toHex(programInterface) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2330	m_gl.getProgramInterfaceiv(program, programInterface, pname, params);
2331}
2332
2333void CallLogWrapper::glGetProgramPipelineInfoLog (glw::GLuint pipeline, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLchar *infoLog)
2334{
2335	if (m_enableLog)
2336		m_log << TestLog::Message << "glGetProgramPipelineInfoLog(" << pipeline << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(infoLog))) << ");" << TestLog::EndMessage;
2337	m_gl.getProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
2338	if (m_enableLog)
2339		m_log << TestLog::Message << "// length = " << getPointerStr(length, 1) << TestLog::EndMessage;
2340}
2341
2342void CallLogWrapper::glGetProgramPipelineiv (glw::GLuint pipeline, glw::GLenum pname, glw::GLint *params)
2343{
2344	if (m_enableLog)
2345		m_log << TestLog::Message << "glGetProgramPipelineiv(" << pipeline << ", " << getPipelineParamStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2346	m_gl.getProgramPipelineiv(pipeline, pname, params);
2347	if (m_enableLog)
2348		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2349}
2350
2351glw::GLuint CallLogWrapper::glGetProgramResourceIndex (glw::GLuint program, glw::GLenum programInterface, const glw::GLchar *name)
2352{
2353	if (m_enableLog)
2354		m_log << TestLog::Message << "glGetProgramResourceIndex(" << program << ", " << getProgramInterfaceStr(programInterface) << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
2355	glw::GLuint returnValue = m_gl.getProgramResourceIndex(program, programInterface, name);
2356	if (m_enableLog)
2357		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
2358	return returnValue;
2359}
2360
2361glw::GLint CallLogWrapper::glGetProgramResourceLocation (glw::GLuint program, glw::GLenum programInterface, const glw::GLchar *name)
2362{
2363	if (m_enableLog)
2364		m_log << TestLog::Message << "glGetProgramResourceLocation(" << program << ", " << toHex(programInterface) << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
2365	glw::GLint returnValue = m_gl.getProgramResourceLocation(program, programInterface, name);
2366	if (m_enableLog)
2367		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
2368	return returnValue;
2369}
2370
2371glw::GLint CallLogWrapper::glGetProgramResourceLocationIndex (glw::GLuint program, glw::GLenum programInterface, const glw::GLchar *name)
2372{
2373	if (m_enableLog)
2374		m_log << TestLog::Message << "glGetProgramResourceLocationIndex(" << program << ", " << toHex(programInterface) << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
2375	glw::GLint returnValue = m_gl.getProgramResourceLocationIndex(program, programInterface, name);
2376	if (m_enableLog)
2377		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
2378	return returnValue;
2379}
2380
2381void CallLogWrapper::glGetProgramResourceName (glw::GLuint program, glw::GLenum programInterface, glw::GLuint index, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLchar *name)
2382{
2383	if (m_enableLog)
2384		m_log << TestLog::Message << "glGetProgramResourceName(" << program << ", " << toHex(programInterface) << ", " << index << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(name))) << ");" << TestLog::EndMessage;
2385	m_gl.getProgramResourceName(program, programInterface, index, bufSize, length, name);
2386}
2387
2388void CallLogWrapper::glGetProgramResourceiv (glw::GLuint program, glw::GLenum programInterface, glw::GLuint index, glw::GLsizei propCount, const glw::GLenum *props, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLint *params)
2389{
2390	if (m_enableLog)
2391		m_log << TestLog::Message << "glGetProgramResourceiv(" << program << ", " << getProgramInterfaceStr(programInterface) << ", " << index << ", " << propCount << ", " << getEnumPointerStr(props, propCount, getProgramResourcePropertyName) << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2392	m_gl.getProgramResourceiv(program, programInterface, index, propCount, props, bufSize, length, params);
2393	if (m_enableLog)
2394	{
2395		m_log << TestLog::Message << "// length = " << getPointerStr(length, 1) << TestLog::EndMessage;
2396		m_log << TestLog::Message << "// params = " << getPointerStr(params, ((length == DE_NULL) ? (bufSize) : ((bufSize < *length) ? (bufSize) : (*length)))) << TestLog::EndMessage;
2397	}
2398}
2399
2400void CallLogWrapper::glGetProgramStageiv (glw::GLuint program, glw::GLenum shadertype, glw::GLenum pname, glw::GLint *values)
2401{
2402	if (m_enableLog)
2403		m_log << TestLog::Message << "glGetProgramStageiv(" << program << ", " << toHex(shadertype) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(values))) << ");" << TestLog::EndMessage;
2404	m_gl.getProgramStageiv(program, shadertype, pname, values);
2405}
2406
2407void CallLogWrapper::glGetProgramiv (glw::GLuint program, glw::GLenum pname, glw::GLint *params)
2408{
2409	if (m_enableLog)
2410		m_log << TestLog::Message << "glGetProgramiv(" << program << ", " << getProgramParamStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2411	m_gl.getProgramiv(program, pname, params);
2412	if (m_enableLog)
2413		m_log << TestLog::Message << "// params = " << getPointerStr(params, getProgramQueryNumArgsOut(pname)) << TestLog::EndMessage;
2414}
2415
2416void CallLogWrapper::glGetQueryBufferObjecti64v (glw::GLuint id, glw::GLuint buffer, glw::GLenum pname, glw::GLintptr offset)
2417{
2418	if (m_enableLog)
2419		m_log << TestLog::Message << "glGetQueryBufferObjecti64v(" << id << ", " << buffer << ", " << toHex(pname) << ", " << offset << ");" << TestLog::EndMessage;
2420	m_gl.getQueryBufferObjecti64v(id, buffer, pname, offset);
2421}
2422
2423void CallLogWrapper::glGetQueryBufferObjectiv (glw::GLuint id, glw::GLuint buffer, glw::GLenum pname, glw::GLintptr offset)
2424{
2425	if (m_enableLog)
2426		m_log << TestLog::Message << "glGetQueryBufferObjectiv(" << id << ", " << buffer << ", " << toHex(pname) << ", " << offset << ");" << TestLog::EndMessage;
2427	m_gl.getQueryBufferObjectiv(id, buffer, pname, offset);
2428}
2429
2430void CallLogWrapper::glGetQueryBufferObjectui64v (glw::GLuint id, glw::GLuint buffer, glw::GLenum pname, glw::GLintptr offset)
2431{
2432	if (m_enableLog)
2433		m_log << TestLog::Message << "glGetQueryBufferObjectui64v(" << id << ", " << buffer << ", " << toHex(pname) << ", " << offset << ");" << TestLog::EndMessage;
2434	m_gl.getQueryBufferObjectui64v(id, buffer, pname, offset);
2435}
2436
2437void CallLogWrapper::glGetQueryBufferObjectuiv (glw::GLuint id, glw::GLuint buffer, glw::GLenum pname, glw::GLintptr offset)
2438{
2439	if (m_enableLog)
2440		m_log << TestLog::Message << "glGetQueryBufferObjectuiv(" << id << ", " << buffer << ", " << toHex(pname) << ", " << offset << ");" << TestLog::EndMessage;
2441	m_gl.getQueryBufferObjectuiv(id, buffer, pname, offset);
2442}
2443
2444void CallLogWrapper::glGetQueryIndexediv (glw::GLenum target, glw::GLuint index, glw::GLenum pname, glw::GLint *params)
2445{
2446	if (m_enableLog)
2447		m_log << TestLog::Message << "glGetQueryIndexediv(" << toHex(target) << ", " << index << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2448	m_gl.getQueryIndexediv(target, index, pname, params);
2449}
2450
2451void CallLogWrapper::glGetQueryObjecti64v (glw::GLuint id, glw::GLenum pname, glw::GLint64 *params)
2452{
2453	if (m_enableLog)
2454		m_log << TestLog::Message << "glGetQueryObjecti64v(" << id << ", " << getQueryObjectParamStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2455	m_gl.getQueryObjecti64v(id, pname, params);
2456	if (m_enableLog)
2457		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2458}
2459
2460void CallLogWrapper::glGetQueryObjectiv (glw::GLuint id, glw::GLenum pname, glw::GLint *params)
2461{
2462	if (m_enableLog)
2463		m_log << TestLog::Message << "glGetQueryObjectiv(" << id << ", " << getQueryObjectParamStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2464	m_gl.getQueryObjectiv(id, pname, params);
2465	if (m_enableLog)
2466		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2467}
2468
2469void CallLogWrapper::glGetQueryObjectui64v (glw::GLuint id, glw::GLenum pname, glw::GLuint64 *params)
2470{
2471	if (m_enableLog)
2472		m_log << TestLog::Message << "glGetQueryObjectui64v(" << id << ", " << getQueryObjectParamStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2473	m_gl.getQueryObjectui64v(id, pname, params);
2474	if (m_enableLog)
2475		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2476}
2477
2478void CallLogWrapper::glGetQueryObjectuiv (glw::GLuint id, glw::GLenum pname, glw::GLuint *params)
2479{
2480	if (m_enableLog)
2481		m_log << TestLog::Message << "glGetQueryObjectuiv(" << id << ", " << getQueryObjectParamStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2482	m_gl.getQueryObjectuiv(id, pname, params);
2483	if (m_enableLog)
2484		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2485}
2486
2487void CallLogWrapper::glGetQueryiv (glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2488{
2489	if (m_enableLog)
2490		m_log << TestLog::Message << "glGetQueryiv(" << getQueryTargetStr(target) << ", " << getQueryParamStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2491	m_gl.getQueryiv(target, pname, params);
2492	if (m_enableLog)
2493		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2494}
2495
2496void CallLogWrapper::glGetRenderbufferParameteriv (glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2497{
2498	if (m_enableLog)
2499		m_log << TestLog::Message << "glGetRenderbufferParameteriv(" << getFramebufferTargetStr(target) << ", " << getRenderbufferParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2500	m_gl.getRenderbufferParameteriv(target, pname, params);
2501}
2502
2503void CallLogWrapper::glGetSamplerParameterIiv (glw::GLuint sampler, glw::GLenum pname, glw::GLint *params)
2504{
2505	if (m_enableLog)
2506		m_log << TestLog::Message << "glGetSamplerParameterIiv(" << sampler << ", " << getTextureParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2507	m_gl.getSamplerParameterIiv(sampler, pname, params);
2508	if (m_enableLog)
2509		m_log << TestLog::Message << "// params = " << getPointerStr(params, getTextureParamQueryNumArgsOut(pname)) << TestLog::EndMessage;
2510}
2511
2512void CallLogWrapper::glGetSamplerParameterIuiv (glw::GLuint sampler, glw::GLenum pname, glw::GLuint *params)
2513{
2514	if (m_enableLog)
2515		m_log << TestLog::Message << "glGetSamplerParameterIuiv(" << sampler << ", " << getTextureParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2516	m_gl.getSamplerParameterIuiv(sampler, pname, params);
2517	if (m_enableLog)
2518		m_log << TestLog::Message << "// params = " << getPointerStr(params, getTextureParamQueryNumArgsOut(pname)) << TestLog::EndMessage;
2519}
2520
2521void CallLogWrapper::glGetSamplerParameterfv (glw::GLuint sampler, glw::GLenum pname, glw::GLfloat *params)
2522{
2523	if (m_enableLog)
2524		m_log << TestLog::Message << "glGetSamplerParameterfv(" << sampler << ", " << getTextureParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2525	m_gl.getSamplerParameterfv(sampler, pname, params);
2526	if (m_enableLog)
2527		m_log << TestLog::Message << "// params = " << getPointerStr(params, getTextureParamQueryNumArgsOut(pname)) << TestLog::EndMessage;
2528}
2529
2530void CallLogWrapper::glGetSamplerParameteriv (glw::GLuint sampler, glw::GLenum pname, glw::GLint *params)
2531{
2532	if (m_enableLog)
2533		m_log << TestLog::Message << "glGetSamplerParameteriv(" << sampler << ", " << getTextureParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2534	m_gl.getSamplerParameteriv(sampler, pname, params);
2535	if (m_enableLog)
2536		m_log << TestLog::Message << "// params = " << getPointerStr(params, getTextureParamQueryNumArgsOut(pname)) << TestLog::EndMessage;
2537}
2538
2539void CallLogWrapper::glGetShaderInfoLog (glw::GLuint shader, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLchar *infoLog)
2540{
2541	if (m_enableLog)
2542		m_log << TestLog::Message << "glGetShaderInfoLog(" << shader << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(infoLog))) << ");" << TestLog::EndMessage;
2543	m_gl.getShaderInfoLog(shader, bufSize, length, infoLog);
2544	if (m_enableLog)
2545		m_log << TestLog::Message << "// length = " << getPointerStr(length, 1) << TestLog::EndMessage;
2546}
2547
2548void CallLogWrapper::glGetShaderPrecisionFormat (glw::GLenum shadertype, glw::GLenum precisiontype, glw::GLint *range, glw::GLint *precision)
2549{
2550	if (m_enableLog)
2551		m_log << TestLog::Message << "glGetShaderPrecisionFormat(" << getShaderTypeStr(shadertype) << ", " << getPrecisionFormatTypeStr(precisiontype) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(range))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(precision))) << ");" << TestLog::EndMessage;
2552	m_gl.getShaderPrecisionFormat(shadertype, precisiontype, range, precision);
2553}
2554
2555void CallLogWrapper::glGetShaderSource (glw::GLuint shader, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLchar *source)
2556{
2557	if (m_enableLog)
2558		m_log << TestLog::Message << "glGetShaderSource(" << shader << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(source))) << ");" << TestLog::EndMessage;
2559	m_gl.getShaderSource(shader, bufSize, length, source);
2560}
2561
2562void CallLogWrapper::glGetShaderiv (glw::GLuint shader, glw::GLenum pname, glw::GLint *params)
2563{
2564	if (m_enableLog)
2565		m_log << TestLog::Message << "glGetShaderiv(" << shader << ", " << getShaderParamStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2566	m_gl.getShaderiv(shader, pname, params);
2567	if (m_enableLog)
2568		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2569}
2570
2571const glw::GLubyte * CallLogWrapper::glGetString (glw::GLenum name)
2572{
2573	if (m_enableLog)
2574		m_log << TestLog::Message << "glGetString(" << getGettableStringStr(name) << ");" << TestLog::EndMessage;
2575	const glw::GLubyte * returnValue = m_gl.getString(name);
2576	if (m_enableLog)
2577		m_log << TestLog::Message << "// " << getStringStr(returnValue) << " returned" << TestLog::EndMessage;
2578	return returnValue;
2579}
2580
2581const glw::GLubyte * CallLogWrapper::glGetStringi (glw::GLenum name, glw::GLuint index)
2582{
2583	if (m_enableLog)
2584		m_log << TestLog::Message << "glGetStringi(" << getGettableStringStr(name) << ", " << index << ");" << TestLog::EndMessage;
2585	const glw::GLubyte * returnValue = m_gl.getStringi(name, index);
2586	if (m_enableLog)
2587		m_log << TestLog::Message << "// " << getStringStr(returnValue) << " returned" << TestLog::EndMessage;
2588	return returnValue;
2589}
2590
2591glw::GLuint CallLogWrapper::glGetSubroutineIndex (glw::GLuint program, glw::GLenum shadertype, const glw::GLchar *name)
2592{
2593	if (m_enableLog)
2594		m_log << TestLog::Message << "glGetSubroutineIndex(" << program << ", " << toHex(shadertype) << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
2595	glw::GLuint returnValue = m_gl.getSubroutineIndex(program, shadertype, name);
2596	if (m_enableLog)
2597		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
2598	return returnValue;
2599}
2600
2601glw::GLint CallLogWrapper::glGetSubroutineUniformLocation (glw::GLuint program, glw::GLenum shadertype, const glw::GLchar *name)
2602{
2603	if (m_enableLog)
2604		m_log << TestLog::Message << "glGetSubroutineUniformLocation(" << program << ", " << toHex(shadertype) << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
2605	glw::GLint returnValue = m_gl.getSubroutineUniformLocation(program, shadertype, name);
2606	if (m_enableLog)
2607		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
2608	return returnValue;
2609}
2610
2611void CallLogWrapper::glGetSynciv (glw::GLsync sync, glw::GLenum pname, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLint *values)
2612{
2613	if (m_enableLog)
2614		m_log << TestLog::Message << "glGetSynciv(" << sync << ", " << toHex(pname) << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(values))) << ");" << TestLog::EndMessage;
2615	m_gl.getSynciv(sync, pname, bufSize, length, values);
2616}
2617
2618void CallLogWrapper::glGetTexImage (glw::GLenum target, glw::GLint level, glw::GLenum format, glw::GLenum type, void *pixels)
2619{
2620	if (m_enableLog)
2621		m_log << TestLog::Message << "glGetTexImage(" << toHex(target) << ", " << level << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
2622	m_gl.getTexImage(target, level, format, type, pixels);
2623}
2624
2625void CallLogWrapper::glGetTexLevelParameterfv (glw::GLenum target, glw::GLint level, glw::GLenum pname, glw::GLfloat *params)
2626{
2627	if (m_enableLog)
2628		m_log << TestLog::Message << "glGetTexLevelParameterfv(" << getTextureTargetStr(target) << ", " << level << ", " << getTextureLevelParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2629	m_gl.getTexLevelParameterfv(target, level, pname, params);
2630	if (m_enableLog)
2631		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2632}
2633
2634void CallLogWrapper::glGetTexLevelParameteriv (glw::GLenum target, glw::GLint level, glw::GLenum pname, glw::GLint *params)
2635{
2636	if (m_enableLog)
2637		m_log << TestLog::Message << "glGetTexLevelParameteriv(" << getTextureTargetStr(target) << ", " << level << ", " << getTextureLevelParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2638	m_gl.getTexLevelParameteriv(target, level, pname, params);
2639	if (m_enableLog)
2640		m_log << TestLog::Message << "// params = " << getPointerStr(params, 1) << TestLog::EndMessage;
2641}
2642
2643void CallLogWrapper::glGetTexParameterIiv (glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2644{
2645	if (m_enableLog)
2646		m_log << TestLog::Message << "glGetTexParameterIiv(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2647	m_gl.getTexParameterIiv(target, pname, params);
2648	if (m_enableLog)
2649		m_log << TestLog::Message << "// params = " << getPointerStr(params, getTextureParamQueryNumArgsOut(pname)) << TestLog::EndMessage;
2650}
2651
2652void CallLogWrapper::glGetTexParameterIuiv (glw::GLenum target, glw::GLenum pname, glw::GLuint *params)
2653{
2654	if (m_enableLog)
2655		m_log << TestLog::Message << "glGetTexParameterIuiv(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2656	m_gl.getTexParameterIuiv(target, pname, params);
2657	if (m_enableLog)
2658		m_log << TestLog::Message << "// params = " << getPointerStr(params, getTextureParamQueryNumArgsOut(pname)) << TestLog::EndMessage;
2659}
2660
2661void CallLogWrapper::glGetTexParameterfv (glw::GLenum target, glw::GLenum pname, glw::GLfloat *params)
2662{
2663	if (m_enableLog)
2664		m_log << TestLog::Message << "glGetTexParameterfv(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2665	m_gl.getTexParameterfv(target, pname, params);
2666	if (m_enableLog)
2667		m_log << TestLog::Message << "// params = " << getPointerStr(params, getTextureParamQueryNumArgsOut(pname)) << TestLog::EndMessage;
2668}
2669
2670void CallLogWrapper::glGetTexParameteriv (glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2671{
2672	if (m_enableLog)
2673		m_log << TestLog::Message << "glGetTexParameteriv(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2674	m_gl.getTexParameteriv(target, pname, params);
2675	if (m_enableLog)
2676		m_log << TestLog::Message << "// params = " << getPointerStr(params, getTextureParamQueryNumArgsOut(pname)) << TestLog::EndMessage;
2677}
2678
2679void CallLogWrapper::glGetTextureImage (glw::GLuint texture, glw::GLint level, glw::GLenum format, glw::GLenum type, glw::GLsizei bufSize, void *pixels)
2680{
2681	if (m_enableLog)
2682		m_log << TestLog::Message << "glGetTextureImage(" << texture << ", " << level << ", " << toHex(format) << ", " << toHex(type) << ", " << bufSize << ", " << pixels << ");" << TestLog::EndMessage;
2683	m_gl.getTextureImage(texture, level, format, type, bufSize, pixels);
2684}
2685
2686void CallLogWrapper::glGetTextureImageEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum format, glw::GLenum type, void *pixels)
2687{
2688	if (m_enableLog)
2689		m_log << TestLog::Message << "glGetTextureImageEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
2690	m_gl.getTextureImageEXT(texture, target, level, format, type, pixels);
2691}
2692
2693void CallLogWrapper::glGetTextureLevelParameterfv (glw::GLuint texture, glw::GLint level, glw::GLenum pname, glw::GLfloat *params)
2694{
2695	if (m_enableLog)
2696		m_log << TestLog::Message << "glGetTextureLevelParameterfv(" << texture << ", " << level << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2697	m_gl.getTextureLevelParameterfv(texture, level, pname, params);
2698}
2699
2700void CallLogWrapper::glGetTextureLevelParameterfvEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum pname, glw::GLfloat *params)
2701{
2702	if (m_enableLog)
2703		m_log << TestLog::Message << "glGetTextureLevelParameterfvEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2704	m_gl.getTextureLevelParameterfvEXT(texture, target, level, pname, params);
2705}
2706
2707void CallLogWrapper::glGetTextureLevelParameteriv (glw::GLuint texture, glw::GLint level, glw::GLenum pname, glw::GLint *params)
2708{
2709	if (m_enableLog)
2710		m_log << TestLog::Message << "glGetTextureLevelParameteriv(" << texture << ", " << level << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2711	m_gl.getTextureLevelParameteriv(texture, level, pname, params);
2712}
2713
2714void CallLogWrapper::glGetTextureLevelParameterivEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum pname, glw::GLint *params)
2715{
2716	if (m_enableLog)
2717		m_log << TestLog::Message << "glGetTextureLevelParameterivEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2718	m_gl.getTextureLevelParameterivEXT(texture, target, level, pname, params);
2719}
2720
2721void CallLogWrapper::glGetTextureParameterIiv (glw::GLuint texture, glw::GLenum pname, glw::GLint *params)
2722{
2723	if (m_enableLog)
2724		m_log << TestLog::Message << "glGetTextureParameterIiv(" << texture << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2725	m_gl.getTextureParameterIiv(texture, pname, params);
2726}
2727
2728void CallLogWrapper::glGetTextureParameterIivEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2729{
2730	if (m_enableLog)
2731		m_log << TestLog::Message << "glGetTextureParameterIivEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2732	m_gl.getTextureParameterIivEXT(texture, target, pname, params);
2733}
2734
2735void CallLogWrapper::glGetTextureParameterIuiv (glw::GLuint texture, glw::GLenum pname, glw::GLuint *params)
2736{
2737	if (m_enableLog)
2738		m_log << TestLog::Message << "glGetTextureParameterIuiv(" << texture << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2739	m_gl.getTextureParameterIuiv(texture, pname, params);
2740}
2741
2742void CallLogWrapper::glGetTextureParameterIuivEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, glw::GLuint *params)
2743{
2744	if (m_enableLog)
2745		m_log << TestLog::Message << "glGetTextureParameterIuivEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2746	m_gl.getTextureParameterIuivEXT(texture, target, pname, params);
2747}
2748
2749void CallLogWrapper::glGetTextureParameterfv (glw::GLuint texture, glw::GLenum pname, glw::GLfloat *params)
2750{
2751	if (m_enableLog)
2752		m_log << TestLog::Message << "glGetTextureParameterfv(" << texture << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2753	m_gl.getTextureParameterfv(texture, pname, params);
2754}
2755
2756void CallLogWrapper::glGetTextureParameterfvEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, glw::GLfloat *params)
2757{
2758	if (m_enableLog)
2759		m_log << TestLog::Message << "glGetTextureParameterfvEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2760	m_gl.getTextureParameterfvEXT(texture, target, pname, params);
2761}
2762
2763void CallLogWrapper::glGetTextureParameteriv (glw::GLuint texture, glw::GLenum pname, glw::GLint *params)
2764{
2765	if (m_enableLog)
2766		m_log << TestLog::Message << "glGetTextureParameteriv(" << texture << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2767	m_gl.getTextureParameteriv(texture, pname, params);
2768}
2769
2770void CallLogWrapper::glGetTextureParameterivEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, glw::GLint *params)
2771{
2772	if (m_enableLog)
2773		m_log << TestLog::Message << "glGetTextureParameterivEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2774	m_gl.getTextureParameterivEXT(texture, target, pname, params);
2775}
2776
2777void CallLogWrapper::glGetTextureSubImage (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, glw::GLsizei bufSize, void *pixels)
2778{
2779	if (m_enableLog)
2780		m_log << TestLog::Message << "glGetTextureSubImage(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << toHex(type) << ", " << bufSize << ", " << pixels << ");" << TestLog::EndMessage;
2781	m_gl.getTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels);
2782}
2783
2784void CallLogWrapper::glGetTransformFeedbackVarying (glw::GLuint program, glw::GLuint index, glw::GLsizei bufSize, glw::GLsizei *length, glw::GLsizei *size, glw::GLenum *type, glw::GLchar *name)
2785{
2786	if (m_enableLog)
2787		m_log << TestLog::Message << "glGetTransformFeedbackVarying(" << program << ", " << index << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(size))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(type))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(name))) << ");" << TestLog::EndMessage;
2788	m_gl.getTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
2789}
2790
2791void CallLogWrapper::glGetTransformFeedbacki64_v (glw::GLuint xfb, glw::GLenum pname, glw::GLuint index, glw::GLint64 *param)
2792{
2793	if (m_enableLog)
2794		m_log << TestLog::Message << "glGetTransformFeedbacki64_v(" << xfb << ", " << toHex(pname) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2795	m_gl.getTransformFeedbacki64_v(xfb, pname, index, param);
2796}
2797
2798void CallLogWrapper::glGetTransformFeedbacki_v (glw::GLuint xfb, glw::GLenum pname, glw::GLuint index, glw::GLint *param)
2799{
2800	if (m_enableLog)
2801		m_log << TestLog::Message << "glGetTransformFeedbacki_v(" << xfb << ", " << toHex(pname) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2802	m_gl.getTransformFeedbacki_v(xfb, pname, index, param);
2803}
2804
2805void CallLogWrapper::glGetTransformFeedbackiv (glw::GLuint xfb, glw::GLenum pname, glw::GLint *param)
2806{
2807	if (m_enableLog)
2808		m_log << TestLog::Message << "glGetTransformFeedbackiv(" << xfb << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2809	m_gl.getTransformFeedbackiv(xfb, pname, param);
2810}
2811
2812glw::GLuint CallLogWrapper::glGetUniformBlockIndex (glw::GLuint program, const glw::GLchar *uniformBlockName)
2813{
2814	if (m_enableLog)
2815		m_log << TestLog::Message << "glGetUniformBlockIndex(" << program << ", " << getStringStr(uniformBlockName) << ");" << TestLog::EndMessage;
2816	glw::GLuint returnValue = m_gl.getUniformBlockIndex(program, uniformBlockName);
2817	if (m_enableLog)
2818		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
2819	return returnValue;
2820}
2821
2822void CallLogWrapper::glGetUniformIndices (glw::GLuint program, glw::GLsizei uniformCount, const glw::GLchar *const*uniformNames, glw::GLuint *uniformIndices)
2823{
2824	if (m_enableLog)
2825		m_log << TestLog::Message << "glGetUniformIndices(" << program << ", " << uniformCount << ", " << getPointerStr(uniformNames, uniformCount) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(uniformIndices))) << ");" << TestLog::EndMessage;
2826	m_gl.getUniformIndices(program, uniformCount, uniformNames, uniformIndices);
2827	if (m_enableLog)
2828		m_log << TestLog::Message << "// uniformIndices = " << getPointerStr(uniformIndices, uniformCount) << TestLog::EndMessage;
2829}
2830
2831glw::GLint CallLogWrapper::glGetUniformLocation (glw::GLuint program, const glw::GLchar *name)
2832{
2833	if (m_enableLog)
2834		m_log << TestLog::Message << "glGetUniformLocation(" << program << ", " << getStringStr(name) << ");" << TestLog::EndMessage;
2835	glw::GLint returnValue = m_gl.getUniformLocation(program, name);
2836	if (m_enableLog)
2837		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
2838	return returnValue;
2839}
2840
2841void CallLogWrapper::glGetUniformSubroutineuiv (glw::GLenum shadertype, glw::GLint location, glw::GLuint *params)
2842{
2843	if (m_enableLog)
2844		m_log << TestLog::Message << "glGetUniformSubroutineuiv(" << toHex(shadertype) << ", " << location << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2845	m_gl.getUniformSubroutineuiv(shadertype, location, params);
2846}
2847
2848void CallLogWrapper::glGetUniformdv (glw::GLuint program, glw::GLint location, glw::GLdouble *params)
2849{
2850	if (m_enableLog)
2851		m_log << TestLog::Message << "glGetUniformdv(" << program << ", " << location << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2852	m_gl.getUniformdv(program, location, params);
2853}
2854
2855void CallLogWrapper::glGetUniformfv (glw::GLuint program, glw::GLint location, glw::GLfloat *params)
2856{
2857	if (m_enableLog)
2858		m_log << TestLog::Message << "glGetUniformfv(" << program << ", " << location << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2859	m_gl.getUniformfv(program, location, params);
2860}
2861
2862void CallLogWrapper::glGetUniformiv (glw::GLuint program, glw::GLint location, glw::GLint *params)
2863{
2864	if (m_enableLog)
2865		m_log << TestLog::Message << "glGetUniformiv(" << program << ", " << location << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2866	m_gl.getUniformiv(program, location, params);
2867}
2868
2869void CallLogWrapper::glGetUniformuiv (glw::GLuint program, glw::GLint location, glw::GLuint *params)
2870{
2871	if (m_enableLog)
2872		m_log << TestLog::Message << "glGetUniformuiv(" << program << ", " << location << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2873	m_gl.getUniformuiv(program, location, params);
2874}
2875
2876void CallLogWrapper::glGetVertexArrayIndexed64iv (glw::GLuint vaobj, glw::GLuint index, glw::GLenum pname, glw::GLint64 *param)
2877{
2878	if (m_enableLog)
2879		m_log << TestLog::Message << "glGetVertexArrayIndexed64iv(" << vaobj << ", " << index << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2880	m_gl.getVertexArrayIndexed64iv(vaobj, index, pname, param);
2881}
2882
2883void CallLogWrapper::glGetVertexArrayIndexediv (glw::GLuint vaobj, glw::GLuint index, glw::GLenum pname, glw::GLint *param)
2884{
2885	if (m_enableLog)
2886		m_log << TestLog::Message << "glGetVertexArrayIndexediv(" << vaobj << ", " << index << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2887	m_gl.getVertexArrayIndexediv(vaobj, index, pname, param);
2888}
2889
2890void CallLogWrapper::glGetVertexArrayIntegeri_vEXT (glw::GLuint vaobj, glw::GLuint index, glw::GLenum pname, glw::GLint *param)
2891{
2892	if (m_enableLog)
2893		m_log << TestLog::Message << "glGetVertexArrayIntegeri_vEXT(" << vaobj << ", " << index << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2894	m_gl.getVertexArrayIntegeri_vEXT(vaobj, index, pname, param);
2895}
2896
2897void CallLogWrapper::glGetVertexArrayIntegervEXT (glw::GLuint vaobj, glw::GLenum pname, glw::GLint *param)
2898{
2899	if (m_enableLog)
2900		m_log << TestLog::Message << "glGetVertexArrayIntegervEXT(" << vaobj << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2901	m_gl.getVertexArrayIntegervEXT(vaobj, pname, param);
2902}
2903
2904void CallLogWrapper::glGetVertexArrayPointeri_vEXT (glw::GLuint vaobj, glw::GLuint index, glw::GLenum pname, void **param)
2905{
2906	if (m_enableLog)
2907		m_log << TestLog::Message << "glGetVertexArrayPointeri_vEXT(" << vaobj << ", " << index << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2908	m_gl.getVertexArrayPointeri_vEXT(vaobj, index, pname, param);
2909}
2910
2911void CallLogWrapper::glGetVertexArrayPointervEXT (glw::GLuint vaobj, glw::GLenum pname, void **param)
2912{
2913	if (m_enableLog)
2914		m_log << TestLog::Message << "glGetVertexArrayPointervEXT(" << vaobj << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2915	m_gl.getVertexArrayPointervEXT(vaobj, pname, param);
2916}
2917
2918void CallLogWrapper::glGetVertexArrayiv (glw::GLuint vaobj, glw::GLenum pname, glw::GLint *param)
2919{
2920	if (m_enableLog)
2921		m_log << TestLog::Message << "glGetVertexArrayiv(" << vaobj << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
2922	m_gl.getVertexArrayiv(vaobj, pname, param);
2923}
2924
2925void CallLogWrapper::glGetVertexAttribIiv (glw::GLuint index, glw::GLenum pname, glw::GLint *params)
2926{
2927	if (m_enableLog)
2928		m_log << TestLog::Message << "glGetVertexAttribIiv(" << index << ", " << getVertexAttribParameterNameStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2929	m_gl.getVertexAttribIiv(index, pname, params);
2930	if (m_enableLog)
2931		m_log << TestLog::Message << "// params = " << getPointerStr(params, getAttributeQueryNumArgsOut(pname)) << TestLog::EndMessage;
2932}
2933
2934void CallLogWrapper::glGetVertexAttribIuiv (glw::GLuint index, glw::GLenum pname, glw::GLuint *params)
2935{
2936	if (m_enableLog)
2937		m_log << TestLog::Message << "glGetVertexAttribIuiv(" << index << ", " << getVertexAttribParameterNameStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2938	m_gl.getVertexAttribIuiv(index, pname, params);
2939	if (m_enableLog)
2940		m_log << TestLog::Message << "// params = " << getPointerStr(params, getAttributeQueryNumArgsOut(pname)) << TestLog::EndMessage;
2941}
2942
2943void CallLogWrapper::glGetVertexAttribLdv (glw::GLuint index, glw::GLenum pname, glw::GLdouble *params)
2944{
2945	if (m_enableLog)
2946		m_log << TestLog::Message << "glGetVertexAttribLdv(" << index << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2947	m_gl.getVertexAttribLdv(index, pname, params);
2948}
2949
2950void CallLogWrapper::glGetVertexAttribPointerv (glw::GLuint index, glw::GLenum pname, void **pointer)
2951{
2952	if (m_enableLog)
2953		m_log << TestLog::Message << "glGetVertexAttribPointerv(" << index << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(pointer))) << ");" << TestLog::EndMessage;
2954	m_gl.getVertexAttribPointerv(index, pname, pointer);
2955}
2956
2957void CallLogWrapper::glGetVertexAttribdv (glw::GLuint index, glw::GLenum pname, glw::GLdouble *params)
2958{
2959	if (m_enableLog)
2960		m_log << TestLog::Message << "glGetVertexAttribdv(" << index << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2961	m_gl.getVertexAttribdv(index, pname, params);
2962}
2963
2964void CallLogWrapper::glGetVertexAttribfv (glw::GLuint index, glw::GLenum pname, glw::GLfloat *params)
2965{
2966	if (m_enableLog)
2967		m_log << TestLog::Message << "glGetVertexAttribfv(" << index << ", " << getVertexAttribParameterNameStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2968	m_gl.getVertexAttribfv(index, pname, params);
2969	if (m_enableLog)
2970		m_log << TestLog::Message << "// params = " << getPointerStr(params, getAttributeQueryNumArgsOut(pname)) << TestLog::EndMessage;
2971}
2972
2973void CallLogWrapper::glGetVertexAttribiv (glw::GLuint index, glw::GLenum pname, glw::GLint *params)
2974{
2975	if (m_enableLog)
2976		m_log << TestLog::Message << "glGetVertexAttribiv(" << index << ", " << getVertexAttribParameterNameStr(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
2977	m_gl.getVertexAttribiv(index, pname, params);
2978	if (m_enableLog)
2979		m_log << TestLog::Message << "// params = " << getPointerStr(params, getAttributeQueryNumArgsOut(pname)) << TestLog::EndMessage;
2980}
2981
2982void CallLogWrapper::glGetnCompressedTexImage (glw::GLenum target, glw::GLint lod, glw::GLsizei bufSize, void *pixels)
2983{
2984	if (m_enableLog)
2985		m_log << TestLog::Message << "glGetnCompressedTexImage(" << toHex(target) << ", " << lod << ", " << bufSize << ", " << pixels << ");" << TestLog::EndMessage;
2986	m_gl.getnCompressedTexImage(target, lod, bufSize, pixels);
2987}
2988
2989void CallLogWrapper::glGetnTexImage (glw::GLenum target, glw::GLint level, glw::GLenum format, glw::GLenum type, glw::GLsizei bufSize, void *pixels)
2990{
2991	if (m_enableLog)
2992		m_log << TestLog::Message << "glGetnTexImage(" << toHex(target) << ", " << level << ", " << toHex(format) << ", " << toHex(type) << ", " << bufSize << ", " << pixels << ");" << TestLog::EndMessage;
2993	m_gl.getnTexImage(target, level, format, type, bufSize, pixels);
2994}
2995
2996void CallLogWrapper::glGetnUniformdv (glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLdouble *params)
2997{
2998	if (m_enableLog)
2999		m_log << TestLog::Message << "glGetnUniformdv(" << program << ", " << location << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3000	m_gl.getnUniformdv(program, location, bufSize, params);
3001}
3002
3003void CallLogWrapper::glGetnUniformfv (glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLfloat *params)
3004{
3005	if (m_enableLog)
3006		m_log << TestLog::Message << "glGetnUniformfv(" << program << ", " << location << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3007	m_gl.getnUniformfv(program, location, bufSize, params);
3008}
3009
3010void CallLogWrapper::glGetnUniformiv (glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLint *params)
3011{
3012	if (m_enableLog)
3013		m_log << TestLog::Message << "glGetnUniformiv(" << program << ", " << location << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3014	m_gl.getnUniformiv(program, location, bufSize, params);
3015}
3016
3017void CallLogWrapper::glGetnUniformuiv (glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLuint *params)
3018{
3019	if (m_enableLog)
3020		m_log << TestLog::Message << "glGetnUniformuiv(" << program << ", " << location << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3021	m_gl.getnUniformuiv(program, location, bufSize, params);
3022}
3023
3024void CallLogWrapper::glHint (glw::GLenum target, glw::GLenum mode)
3025{
3026	if (m_enableLog)
3027		m_log << TestLog::Message << "glHint(" << getHintStr(target) << ", " << getHintModeStr(mode) << ");" << TestLog::EndMessage;
3028	m_gl.hint(target, mode);
3029}
3030
3031void CallLogWrapper::glInsertEventMarkerEXT (glw::GLsizei length, const glw::GLchar *marker)
3032{
3033	if (m_enableLog)
3034		m_log << TestLog::Message << "glInsertEventMarkerEXT(" << length << ", " << getStringStr(marker) << ");" << TestLog::EndMessage;
3035	m_gl.insertEventMarkerEXT(length, marker);
3036}
3037
3038void CallLogWrapper::glInvalidateBufferData (glw::GLuint buffer)
3039{
3040	if (m_enableLog)
3041		m_log << TestLog::Message << "glInvalidateBufferData(" << buffer << ");" << TestLog::EndMessage;
3042	m_gl.invalidateBufferData(buffer);
3043}
3044
3045void CallLogWrapper::glInvalidateBufferSubData (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr length)
3046{
3047	if (m_enableLog)
3048		m_log << TestLog::Message << "glInvalidateBufferSubData(" << buffer << ", " << offset << ", " << length << ");" << TestLog::EndMessage;
3049	m_gl.invalidateBufferSubData(buffer, offset, length);
3050}
3051
3052void CallLogWrapper::glInvalidateFramebuffer (glw::GLenum target, glw::GLsizei numAttachments, const glw::GLenum *attachments)
3053{
3054	if (m_enableLog)
3055		m_log << TestLog::Message << "glInvalidateFramebuffer(" << getFramebufferTargetStr(target) << ", " << numAttachments << ", " << getEnumPointerStr(attachments, numAttachments, getInvalidateAttachmentName) << ");" << TestLog::EndMessage;
3056	m_gl.invalidateFramebuffer(target, numAttachments, attachments);
3057}
3058
3059void CallLogWrapper::glInvalidateNamedFramebufferData (glw::GLuint framebuffer, glw::GLsizei numAttachments, const glw::GLenum *attachments)
3060{
3061	if (m_enableLog)
3062		m_log << TestLog::Message << "glInvalidateNamedFramebufferData(" << framebuffer << ", " << numAttachments << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(attachments))) << ");" << TestLog::EndMessage;
3063	m_gl.invalidateNamedFramebufferData(framebuffer, numAttachments, attachments);
3064}
3065
3066void CallLogWrapper::glInvalidateNamedFramebufferSubData (glw::GLuint framebuffer, glw::GLsizei numAttachments, const glw::GLenum *attachments, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
3067{
3068	if (m_enableLog)
3069		m_log << TestLog::Message << "glInvalidateNamedFramebufferSubData(" << framebuffer << ", " << numAttachments << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(attachments))) << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
3070	m_gl.invalidateNamedFramebufferSubData(framebuffer, numAttachments, attachments, x, y, width, height);
3071}
3072
3073void CallLogWrapper::glInvalidateSubFramebuffer (glw::GLenum target, glw::GLsizei numAttachments, const glw::GLenum *attachments, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
3074{
3075	if (m_enableLog)
3076		m_log << TestLog::Message << "glInvalidateSubFramebuffer(" << getFramebufferTargetStr(target) << ", " << numAttachments << ", " << getEnumPointerStr(attachments, numAttachments, getInvalidateAttachmentName) << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
3077	m_gl.invalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
3078}
3079
3080void CallLogWrapper::glInvalidateTexImage (glw::GLuint texture, glw::GLint level)
3081{
3082	if (m_enableLog)
3083		m_log << TestLog::Message << "glInvalidateTexImage(" << texture << ", " << level << ");" << TestLog::EndMessage;
3084	m_gl.invalidateTexImage(texture, level);
3085}
3086
3087void CallLogWrapper::glInvalidateTexSubImage (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth)
3088{
3089	if (m_enableLog)
3090		m_log << TestLog::Message << "glInvalidateTexSubImage(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ");" << TestLog::EndMessage;
3091	m_gl.invalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);
3092}
3093
3094glw::GLboolean CallLogWrapper::glIsBuffer (glw::GLuint buffer)
3095{
3096	if (m_enableLog)
3097		m_log << TestLog::Message << "glIsBuffer(" << buffer << ");" << TestLog::EndMessage;
3098	glw::GLboolean returnValue = m_gl.isBuffer(buffer);
3099	if (m_enableLog)
3100		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3101	return returnValue;
3102}
3103
3104glw::GLboolean CallLogWrapper::glIsEnabled (glw::GLenum cap)
3105{
3106	if (m_enableLog)
3107		m_log << TestLog::Message << "glIsEnabled(" << getEnableCapStr(cap) << ");" << TestLog::EndMessage;
3108	glw::GLboolean returnValue = m_gl.isEnabled(cap);
3109	if (m_enableLog)
3110		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3111	return returnValue;
3112}
3113
3114glw::GLboolean CallLogWrapper::glIsEnabledi (glw::GLenum target, glw::GLuint index)
3115{
3116	if (m_enableLog)
3117		m_log << TestLog::Message << "glIsEnabledi(" << getIndexedEnableCapStr(target) << ", " << index << ");" << TestLog::EndMessage;
3118	glw::GLboolean returnValue = m_gl.isEnabledi(target, index);
3119	if (m_enableLog)
3120		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3121	return returnValue;
3122}
3123
3124glw::GLboolean CallLogWrapper::glIsFramebuffer (glw::GLuint framebuffer)
3125{
3126	if (m_enableLog)
3127		m_log << TestLog::Message << "glIsFramebuffer(" << framebuffer << ");" << TestLog::EndMessage;
3128	glw::GLboolean returnValue = m_gl.isFramebuffer(framebuffer);
3129	if (m_enableLog)
3130		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3131	return returnValue;
3132}
3133
3134glw::GLboolean CallLogWrapper::glIsProgram (glw::GLuint program)
3135{
3136	if (m_enableLog)
3137		m_log << TestLog::Message << "glIsProgram(" << program << ");" << TestLog::EndMessage;
3138	glw::GLboolean returnValue = m_gl.isProgram(program);
3139	if (m_enableLog)
3140		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3141	return returnValue;
3142}
3143
3144glw::GLboolean CallLogWrapper::glIsProgramPipeline (glw::GLuint pipeline)
3145{
3146	if (m_enableLog)
3147		m_log << TestLog::Message << "glIsProgramPipeline(" << pipeline << ");" << TestLog::EndMessage;
3148	glw::GLboolean returnValue = m_gl.isProgramPipeline(pipeline);
3149	if (m_enableLog)
3150		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3151	return returnValue;
3152}
3153
3154glw::GLboolean CallLogWrapper::glIsQuery (glw::GLuint id)
3155{
3156	if (m_enableLog)
3157		m_log << TestLog::Message << "glIsQuery(" << id << ");" << TestLog::EndMessage;
3158	glw::GLboolean returnValue = m_gl.isQuery(id);
3159	if (m_enableLog)
3160		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3161	return returnValue;
3162}
3163
3164glw::GLboolean CallLogWrapper::glIsRenderbuffer (glw::GLuint renderbuffer)
3165{
3166	if (m_enableLog)
3167		m_log << TestLog::Message << "glIsRenderbuffer(" << renderbuffer << ");" << TestLog::EndMessage;
3168	glw::GLboolean returnValue = m_gl.isRenderbuffer(renderbuffer);
3169	if (m_enableLog)
3170		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3171	return returnValue;
3172}
3173
3174glw::GLboolean CallLogWrapper::glIsSampler (glw::GLuint sampler)
3175{
3176	if (m_enableLog)
3177		m_log << TestLog::Message << "glIsSampler(" << sampler << ");" << TestLog::EndMessage;
3178	glw::GLboolean returnValue = m_gl.isSampler(sampler);
3179	if (m_enableLog)
3180		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3181	return returnValue;
3182}
3183
3184glw::GLboolean CallLogWrapper::glIsShader (glw::GLuint shader)
3185{
3186	if (m_enableLog)
3187		m_log << TestLog::Message << "glIsShader(" << shader << ");" << TestLog::EndMessage;
3188	glw::GLboolean returnValue = m_gl.isShader(shader);
3189	if (m_enableLog)
3190		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3191	return returnValue;
3192}
3193
3194glw::GLboolean CallLogWrapper::glIsSync (glw::GLsync sync)
3195{
3196	if (m_enableLog)
3197		m_log << TestLog::Message << "glIsSync(" << sync << ");" << TestLog::EndMessage;
3198	glw::GLboolean returnValue = m_gl.isSync(sync);
3199	if (m_enableLog)
3200		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3201	return returnValue;
3202}
3203
3204glw::GLboolean CallLogWrapper::glIsTexture (glw::GLuint texture)
3205{
3206	if (m_enableLog)
3207		m_log << TestLog::Message << "glIsTexture(" << texture << ");" << TestLog::EndMessage;
3208	glw::GLboolean returnValue = m_gl.isTexture(texture);
3209	if (m_enableLog)
3210		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3211	return returnValue;
3212}
3213
3214glw::GLboolean CallLogWrapper::glIsTransformFeedback (glw::GLuint id)
3215{
3216	if (m_enableLog)
3217		m_log << TestLog::Message << "glIsTransformFeedback(" << id << ");" << TestLog::EndMessage;
3218	glw::GLboolean returnValue = m_gl.isTransformFeedback(id);
3219	if (m_enableLog)
3220		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3221	return returnValue;
3222}
3223
3224glw::GLboolean CallLogWrapper::glIsVertexArray (glw::GLuint array)
3225{
3226	if (m_enableLog)
3227		m_log << TestLog::Message << "glIsVertexArray(" << array << ");" << TestLog::EndMessage;
3228	glw::GLboolean returnValue = m_gl.isVertexArray(array);
3229	if (m_enableLog)
3230		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
3231	return returnValue;
3232}
3233
3234void CallLogWrapper::glLineWidth (glw::GLfloat width)
3235{
3236	if (m_enableLog)
3237		m_log << TestLog::Message << "glLineWidth(" << width << ");" << TestLog::EndMessage;
3238	m_gl.lineWidth(width);
3239}
3240
3241void CallLogWrapper::glLinkProgram (glw::GLuint program)
3242{
3243	if (m_enableLog)
3244		m_log << TestLog::Message << "glLinkProgram(" << program << ");" << TestLog::EndMessage;
3245	m_gl.linkProgram(program);
3246}
3247
3248void CallLogWrapper::glLogicOp (glw::GLenum opcode)
3249{
3250	if (m_enableLog)
3251		m_log << TestLog::Message << "glLogicOp(" << toHex(opcode) << ");" << TestLog::EndMessage;
3252	m_gl.logicOp(opcode);
3253}
3254
3255void * CallLogWrapper::glMapBuffer (glw::GLenum target, glw::GLenum access)
3256{
3257	if (m_enableLog)
3258		m_log << TestLog::Message << "glMapBuffer(" << toHex(target) << ", " << toHex(access) << ");" << TestLog::EndMessage;
3259	void * returnValue = m_gl.mapBuffer(target, access);
3260	if (m_enableLog)
3261		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
3262	return returnValue;
3263}
3264
3265void * CallLogWrapper::glMapBufferRange (glw::GLenum target, glw::GLintptr offset, glw::GLsizeiptr length, glw::GLbitfield access)
3266{
3267	if (m_enableLog)
3268		m_log << TestLog::Message << "glMapBufferRange(" << getBufferTargetStr(target) << ", " << offset << ", " << length << ", " << getBufferMapFlagsStr(access) << ");" << TestLog::EndMessage;
3269	void * returnValue = m_gl.mapBufferRange(target, offset, length, access);
3270	if (m_enableLog)
3271		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
3272	return returnValue;
3273}
3274
3275void * CallLogWrapper::glMapNamedBuffer (glw::GLuint buffer, glw::GLenum access)
3276{
3277	if (m_enableLog)
3278		m_log << TestLog::Message << "glMapNamedBuffer(" << buffer << ", " << toHex(access) << ");" << TestLog::EndMessage;
3279	void * returnValue = m_gl.mapNamedBuffer(buffer, access);
3280	if (m_enableLog)
3281		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
3282	return returnValue;
3283}
3284
3285void * CallLogWrapper::glMapNamedBufferEXT (glw::GLuint buffer, glw::GLenum access)
3286{
3287	if (m_enableLog)
3288		m_log << TestLog::Message << "glMapNamedBufferEXT(" << buffer << ", " << toHex(access) << ");" << TestLog::EndMessage;
3289	void * returnValue = m_gl.mapNamedBufferEXT(buffer, access);
3290	if (m_enableLog)
3291		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
3292	return returnValue;
3293}
3294
3295void * CallLogWrapper::glMapNamedBufferRange (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr length, glw::GLbitfield access)
3296{
3297	if (m_enableLog)
3298		m_log << TestLog::Message << "glMapNamedBufferRange(" << buffer << ", " << offset << ", " << length << ", " << toHex(access) << ");" << TestLog::EndMessage;
3299	void * returnValue = m_gl.mapNamedBufferRange(buffer, offset, length, access);
3300	if (m_enableLog)
3301		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
3302	return returnValue;
3303}
3304
3305void * CallLogWrapper::glMapNamedBufferRangeEXT (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr length, glw::GLbitfield access)
3306{
3307	if (m_enableLog)
3308		m_log << TestLog::Message << "glMapNamedBufferRangeEXT(" << buffer << ", " << offset << ", " << length << ", " << toHex(access) << ");" << TestLog::EndMessage;
3309	void * returnValue = m_gl.mapNamedBufferRangeEXT(buffer, offset, length, access);
3310	if (m_enableLog)
3311		m_log << TestLog::Message << "// " << returnValue << " returned" << TestLog::EndMessage;
3312	return returnValue;
3313}
3314
3315void CallLogWrapper::glMatrixFrustumEXT (glw::GLenum mode, glw::GLdouble left, glw::GLdouble right, glw::GLdouble bottom, glw::GLdouble top, glw::GLdouble zNear, glw::GLdouble zFar)
3316{
3317	if (m_enableLog)
3318		m_log << TestLog::Message << "glMatrixFrustumEXT(" << toHex(mode) << ", " << left << ", " << right << ", " << bottom << ", " << top << ", " << zNear << ", " << zFar << ");" << TestLog::EndMessage;
3319	m_gl.matrixFrustumEXT(mode, left, right, bottom, top, zNear, zFar);
3320}
3321
3322void CallLogWrapper::glMatrixLoadIdentityEXT (glw::GLenum mode)
3323{
3324	if (m_enableLog)
3325		m_log << TestLog::Message << "glMatrixLoadIdentityEXT(" << toHex(mode) << ");" << TestLog::EndMessage;
3326	m_gl.matrixLoadIdentityEXT(mode);
3327}
3328
3329void CallLogWrapper::glMatrixLoadTransposedEXT (glw::GLenum mode, const glw::GLdouble *m)
3330{
3331	if (m_enableLog)
3332		m_log << TestLog::Message << "glMatrixLoadTransposedEXT(" << toHex(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(m))) << ");" << TestLog::EndMessage;
3333	m_gl.matrixLoadTransposedEXT(mode, m);
3334}
3335
3336void CallLogWrapper::glMatrixLoadTransposefEXT (glw::GLenum mode, const glw::GLfloat *m)
3337{
3338	if (m_enableLog)
3339		m_log << TestLog::Message << "glMatrixLoadTransposefEXT(" << toHex(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(m))) << ");" << TestLog::EndMessage;
3340	m_gl.matrixLoadTransposefEXT(mode, m);
3341}
3342
3343void CallLogWrapper::glMatrixLoaddEXT (glw::GLenum mode, const glw::GLdouble *m)
3344{
3345	if (m_enableLog)
3346		m_log << TestLog::Message << "glMatrixLoaddEXT(" << toHex(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(m))) << ");" << TestLog::EndMessage;
3347	m_gl.matrixLoaddEXT(mode, m);
3348}
3349
3350void CallLogWrapper::glMatrixLoadfEXT (glw::GLenum mode, const glw::GLfloat *m)
3351{
3352	if (m_enableLog)
3353		m_log << TestLog::Message << "glMatrixLoadfEXT(" << toHex(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(m))) << ");" << TestLog::EndMessage;
3354	m_gl.matrixLoadfEXT(mode, m);
3355}
3356
3357void CallLogWrapper::glMatrixMultTransposedEXT (glw::GLenum mode, const glw::GLdouble *m)
3358{
3359	if (m_enableLog)
3360		m_log << TestLog::Message << "glMatrixMultTransposedEXT(" << toHex(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(m))) << ");" << TestLog::EndMessage;
3361	m_gl.matrixMultTransposedEXT(mode, m);
3362}
3363
3364void CallLogWrapper::glMatrixMultTransposefEXT (glw::GLenum mode, const glw::GLfloat *m)
3365{
3366	if (m_enableLog)
3367		m_log << TestLog::Message << "glMatrixMultTransposefEXT(" << toHex(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(m))) << ");" << TestLog::EndMessage;
3368	m_gl.matrixMultTransposefEXT(mode, m);
3369}
3370
3371void CallLogWrapper::glMatrixMultdEXT (glw::GLenum mode, const glw::GLdouble *m)
3372{
3373	if (m_enableLog)
3374		m_log << TestLog::Message << "glMatrixMultdEXT(" << toHex(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(m))) << ");" << TestLog::EndMessage;
3375	m_gl.matrixMultdEXT(mode, m);
3376}
3377
3378void CallLogWrapper::glMatrixMultfEXT (glw::GLenum mode, const glw::GLfloat *m)
3379{
3380	if (m_enableLog)
3381		m_log << TestLog::Message << "glMatrixMultfEXT(" << toHex(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(m))) << ");" << TestLog::EndMessage;
3382	m_gl.matrixMultfEXT(mode, m);
3383}
3384
3385void CallLogWrapper::glMatrixOrthoEXT (glw::GLenum mode, glw::GLdouble left, glw::GLdouble right, glw::GLdouble bottom, glw::GLdouble top, glw::GLdouble zNear, glw::GLdouble zFar)
3386{
3387	if (m_enableLog)
3388		m_log << TestLog::Message << "glMatrixOrthoEXT(" << toHex(mode) << ", " << left << ", " << right << ", " << bottom << ", " << top << ", " << zNear << ", " << zFar << ");" << TestLog::EndMessage;
3389	m_gl.matrixOrthoEXT(mode, left, right, bottom, top, zNear, zFar);
3390}
3391
3392void CallLogWrapper::glMatrixPopEXT (glw::GLenum mode)
3393{
3394	if (m_enableLog)
3395		m_log << TestLog::Message << "glMatrixPopEXT(" << toHex(mode) << ");" << TestLog::EndMessage;
3396	m_gl.matrixPopEXT(mode);
3397}
3398
3399void CallLogWrapper::glMatrixPushEXT (glw::GLenum mode)
3400{
3401	if (m_enableLog)
3402		m_log << TestLog::Message << "glMatrixPushEXT(" << toHex(mode) << ");" << TestLog::EndMessage;
3403	m_gl.matrixPushEXT(mode);
3404}
3405
3406void CallLogWrapper::glMatrixRotatedEXT (glw::GLenum mode, glw::GLdouble angle, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z)
3407{
3408	if (m_enableLog)
3409		m_log << TestLog::Message << "glMatrixRotatedEXT(" << toHex(mode) << ", " << angle << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
3410	m_gl.matrixRotatedEXT(mode, angle, x, y, z);
3411}
3412
3413void CallLogWrapper::glMatrixRotatefEXT (glw::GLenum mode, glw::GLfloat angle, glw::GLfloat x, glw::GLfloat y, glw::GLfloat z)
3414{
3415	if (m_enableLog)
3416		m_log << TestLog::Message << "glMatrixRotatefEXT(" << toHex(mode) << ", " << angle << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
3417	m_gl.matrixRotatefEXT(mode, angle, x, y, z);
3418}
3419
3420void CallLogWrapper::glMatrixScaledEXT (glw::GLenum mode, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z)
3421{
3422	if (m_enableLog)
3423		m_log << TestLog::Message << "glMatrixScaledEXT(" << toHex(mode) << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
3424	m_gl.matrixScaledEXT(mode, x, y, z);
3425}
3426
3427void CallLogWrapper::glMatrixScalefEXT (glw::GLenum mode, glw::GLfloat x, glw::GLfloat y, glw::GLfloat z)
3428{
3429	if (m_enableLog)
3430		m_log << TestLog::Message << "glMatrixScalefEXT(" << toHex(mode) << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
3431	m_gl.matrixScalefEXT(mode, x, y, z);
3432}
3433
3434void CallLogWrapper::glMatrixTranslatedEXT (glw::GLenum mode, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z)
3435{
3436	if (m_enableLog)
3437		m_log << TestLog::Message << "glMatrixTranslatedEXT(" << toHex(mode) << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
3438	m_gl.matrixTranslatedEXT(mode, x, y, z);
3439}
3440
3441void CallLogWrapper::glMatrixTranslatefEXT (glw::GLenum mode, glw::GLfloat x, glw::GLfloat y, glw::GLfloat z)
3442{
3443	if (m_enableLog)
3444		m_log << TestLog::Message << "glMatrixTranslatefEXT(" << toHex(mode) << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
3445	m_gl.matrixTranslatefEXT(mode, x, y, z);
3446}
3447
3448void CallLogWrapper::glMaxShaderCompilerThreadsKHR (glw::GLuint count)
3449{
3450	if (m_enableLog)
3451		m_log << TestLog::Message << "glMaxShaderCompilerThreadsKHR(" << count << ");" << TestLog::EndMessage;
3452	m_gl.maxShaderCompilerThreadsKHR(count);
3453}
3454
3455void CallLogWrapper::glMemoryBarrier (glw::GLbitfield barriers)
3456{
3457	if (m_enableLog)
3458		m_log << TestLog::Message << "glMemoryBarrier(" << getMemoryBarrierFlagsStr(barriers) << ");" << TestLog::EndMessage;
3459	m_gl.memoryBarrier(barriers);
3460}
3461
3462void CallLogWrapper::glMemoryBarrierByRegion (glw::GLbitfield barriers)
3463{
3464	if (m_enableLog)
3465		m_log << TestLog::Message << "glMemoryBarrierByRegion(" << toHex(barriers) << ");" << TestLog::EndMessage;
3466	m_gl.memoryBarrierByRegion(barriers);
3467}
3468
3469void CallLogWrapper::glMinSampleShading (glw::GLfloat value)
3470{
3471	if (m_enableLog)
3472		m_log << TestLog::Message << "glMinSampleShading(" << value << ");" << TestLog::EndMessage;
3473	m_gl.minSampleShading(value);
3474}
3475
3476void CallLogWrapper::glMultiDrawArrays (glw::GLenum mode, const glw::GLint *first, const glw::GLsizei *count, glw::GLsizei drawcount)
3477{
3478	if (m_enableLog)
3479		m_log << TestLog::Message << "glMultiDrawArrays(" << getPrimitiveTypeStr(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(first))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(count))) << ", " << drawcount << ");" << TestLog::EndMessage;
3480	m_gl.multiDrawArrays(mode, first, count, drawcount);
3481}
3482
3483void CallLogWrapper::glMultiDrawArraysIndirect (glw::GLenum mode, const void *indirect, glw::GLsizei drawcount, glw::GLsizei stride)
3484{
3485	if (m_enableLog)
3486		m_log << TestLog::Message << "glMultiDrawArraysIndirect(" << toHex(mode) << ", " << indirect << ", " << drawcount << ", " << stride << ");" << TestLog::EndMessage;
3487	m_gl.multiDrawArraysIndirect(mode, indirect, drawcount, stride);
3488}
3489
3490void CallLogWrapper::glMultiDrawArraysIndirectCount (glw::GLenum mode, const void *indirect, glw::GLintptr drawcount, glw::GLsizei maxdrawcount, glw::GLsizei stride)
3491{
3492	if (m_enableLog)
3493		m_log << TestLog::Message << "glMultiDrawArraysIndirectCount(" << toHex(mode) << ", " << indirect << ", " << drawcount << ", " << maxdrawcount << ", " << stride << ");" << TestLog::EndMessage;
3494	m_gl.multiDrawArraysIndirectCount(mode, indirect, drawcount, maxdrawcount, stride);
3495}
3496
3497void CallLogWrapper::glMultiDrawElements (glw::GLenum mode, const glw::GLsizei *count, glw::GLenum type, const void *const*indices, glw::GLsizei drawcount)
3498{
3499	if (m_enableLog)
3500		m_log << TestLog::Message << "glMultiDrawElements(" << getPrimitiveTypeStr(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(count))) << ", " << getTypeStr(type) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(indices))) << ", " << drawcount << ");" << TestLog::EndMessage;
3501	m_gl.multiDrawElements(mode, count, type, indices, drawcount);
3502}
3503
3504void CallLogWrapper::glMultiDrawElementsBaseVertex (glw::GLenum mode, const glw::GLsizei *count, glw::GLenum type, const void *const*indices, glw::GLsizei drawcount, const glw::GLint *basevertex)
3505{
3506	if (m_enableLog)
3507		m_log << TestLog::Message << "glMultiDrawElementsBaseVertex(" << getPrimitiveTypeStr(mode) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(count))) << ", " << getTypeStr(type) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(indices))) << ", " << drawcount << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(basevertex))) << ");" << TestLog::EndMessage;
3508	m_gl.multiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
3509}
3510
3511void CallLogWrapper::glMultiDrawElementsIndirect (glw::GLenum mode, glw::GLenum type, const void *indirect, glw::GLsizei drawcount, glw::GLsizei stride)
3512{
3513	if (m_enableLog)
3514		m_log << TestLog::Message << "glMultiDrawElementsIndirect(" << toHex(mode) << ", " << toHex(type) << ", " << indirect << ", " << drawcount << ", " << stride << ");" << TestLog::EndMessage;
3515	m_gl.multiDrawElementsIndirect(mode, type, indirect, drawcount, stride);
3516}
3517
3518void CallLogWrapper::glMultiDrawElementsIndirectCount (glw::GLenum mode, glw::GLenum type, const void *indirect, glw::GLintptr drawcount, glw::GLsizei maxdrawcount, glw::GLsizei stride)
3519{
3520	if (m_enableLog)
3521		m_log << TestLog::Message << "glMultiDrawElementsIndirectCount(" << toHex(mode) << ", " << toHex(type) << ", " << indirect << ", " << drawcount << ", " << maxdrawcount << ", " << stride << ");" << TestLog::EndMessage;
3522	m_gl.multiDrawElementsIndirectCount(mode, type, indirect, drawcount, maxdrawcount, stride);
3523}
3524
3525void CallLogWrapper::glMultiTexBufferEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum internalformat, glw::GLuint buffer)
3526{
3527	if (m_enableLog)
3528		m_log << TestLog::Message << "glMultiTexBufferEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(internalformat) << ", " << buffer << ");" << TestLog::EndMessage;
3529	m_gl.multiTexBufferEXT(texunit, target, internalformat, buffer);
3530}
3531
3532void CallLogWrapper::glMultiTexCoordPointerEXT (glw::GLenum texunit, glw::GLint size, glw::GLenum type, glw::GLsizei stride, const void *pointer)
3533{
3534	if (m_enableLog)
3535		m_log << TestLog::Message << "glMultiTexCoordPointerEXT(" << toHex(texunit) << ", " << size << ", " << toHex(type) << ", " << stride << ", " << pointer << ");" << TestLog::EndMessage;
3536	m_gl.multiTexCoordPointerEXT(texunit, size, type, stride, pointer);
3537}
3538
3539void CallLogWrapper::glMultiTexEnvfEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLfloat param)
3540{
3541	if (m_enableLog)
3542		m_log << TestLog::Message << "glMultiTexEnvfEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
3543	m_gl.multiTexEnvfEXT(texunit, target, pname, param);
3544}
3545
3546void CallLogWrapper::glMultiTexEnvfvEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, const glw::GLfloat *params)
3547{
3548	if (m_enableLog)
3549		m_log << TestLog::Message << "glMultiTexEnvfvEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3550	m_gl.multiTexEnvfvEXT(texunit, target, pname, params);
3551}
3552
3553void CallLogWrapper::glMultiTexEnviEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLint param)
3554{
3555	if (m_enableLog)
3556		m_log << TestLog::Message << "glMultiTexEnviEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
3557	m_gl.multiTexEnviEXT(texunit, target, pname, param);
3558}
3559
3560void CallLogWrapper::glMultiTexEnvivEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, const glw::GLint *params)
3561{
3562	if (m_enableLog)
3563		m_log << TestLog::Message << "glMultiTexEnvivEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3564	m_gl.multiTexEnvivEXT(texunit, target, pname, params);
3565}
3566
3567void CallLogWrapper::glMultiTexGendEXT (glw::GLenum texunit, glw::GLenum coord, glw::GLenum pname, glw::GLdouble param)
3568{
3569	if (m_enableLog)
3570		m_log << TestLog::Message << "glMultiTexGendEXT(" << toHex(texunit) << ", " << toHex(coord) << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
3571	m_gl.multiTexGendEXT(texunit, coord, pname, param);
3572}
3573
3574void CallLogWrapper::glMultiTexGendvEXT (glw::GLenum texunit, glw::GLenum coord, glw::GLenum pname, const glw::GLdouble *params)
3575{
3576	if (m_enableLog)
3577		m_log << TestLog::Message << "glMultiTexGendvEXT(" << toHex(texunit) << ", " << toHex(coord) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3578	m_gl.multiTexGendvEXT(texunit, coord, pname, params);
3579}
3580
3581void CallLogWrapper::glMultiTexGenfEXT (glw::GLenum texunit, glw::GLenum coord, glw::GLenum pname, glw::GLfloat param)
3582{
3583	if (m_enableLog)
3584		m_log << TestLog::Message << "glMultiTexGenfEXT(" << toHex(texunit) << ", " << toHex(coord) << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
3585	m_gl.multiTexGenfEXT(texunit, coord, pname, param);
3586}
3587
3588void CallLogWrapper::glMultiTexGenfvEXT (glw::GLenum texunit, glw::GLenum coord, glw::GLenum pname, const glw::GLfloat *params)
3589{
3590	if (m_enableLog)
3591		m_log << TestLog::Message << "glMultiTexGenfvEXT(" << toHex(texunit) << ", " << toHex(coord) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3592	m_gl.multiTexGenfvEXT(texunit, coord, pname, params);
3593}
3594
3595void CallLogWrapper::glMultiTexGeniEXT (glw::GLenum texunit, glw::GLenum coord, glw::GLenum pname, glw::GLint param)
3596{
3597	if (m_enableLog)
3598		m_log << TestLog::Message << "glMultiTexGeniEXT(" << toHex(texunit) << ", " << toHex(coord) << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
3599	m_gl.multiTexGeniEXT(texunit, coord, pname, param);
3600}
3601
3602void CallLogWrapper::glMultiTexGenivEXT (glw::GLenum texunit, glw::GLenum coord, glw::GLenum pname, const glw::GLint *params)
3603{
3604	if (m_enableLog)
3605		m_log << TestLog::Message << "glMultiTexGenivEXT(" << toHex(texunit) << ", " << toHex(coord) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3606	m_gl.multiTexGenivEXT(texunit, coord, pname, params);
3607}
3608
3609void CallLogWrapper::glMultiTexImage1DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
3610{
3611	if (m_enableLog)
3612		m_log << TestLog::Message << "glMultiTexImage1DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << internalformat << ", " << width << ", " << border << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
3613	m_gl.multiTexImage1DEXT(texunit, target, level, internalformat, width, border, format, type, pixels);
3614}
3615
3616void CallLogWrapper::glMultiTexImage2DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
3617{
3618	if (m_enableLog)
3619		m_log << TestLog::Message << "glMultiTexImage2DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << internalformat << ", " << width << ", " << height << ", " << border << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
3620	m_gl.multiTexImage2DEXT(texunit, target, level, internalformat, width, height, border, format, type, pixels);
3621}
3622
3623void CallLogWrapper::glMultiTexImage3DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
3624{
3625	if (m_enableLog)
3626		m_log << TestLog::Message << "glMultiTexImage3DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << internalformat << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
3627	m_gl.multiTexImage3DEXT(texunit, target, level, internalformat, width, height, depth, border, format, type, pixels);
3628}
3629
3630void CallLogWrapper::glMultiTexParameterIivEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, const glw::GLint *params)
3631{
3632	if (m_enableLog)
3633		m_log << TestLog::Message << "glMultiTexParameterIivEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3634	m_gl.multiTexParameterIivEXT(texunit, target, pname, params);
3635}
3636
3637void CallLogWrapper::glMultiTexParameterIuivEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, const glw::GLuint *params)
3638{
3639	if (m_enableLog)
3640		m_log << TestLog::Message << "glMultiTexParameterIuivEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3641	m_gl.multiTexParameterIuivEXT(texunit, target, pname, params);
3642}
3643
3644void CallLogWrapper::glMultiTexParameterfEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLfloat param)
3645{
3646	if (m_enableLog)
3647		m_log << TestLog::Message << "glMultiTexParameterfEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
3648	m_gl.multiTexParameterfEXT(texunit, target, pname, param);
3649}
3650
3651void CallLogWrapper::glMultiTexParameterfvEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, const glw::GLfloat *params)
3652{
3653	if (m_enableLog)
3654		m_log << TestLog::Message << "glMultiTexParameterfvEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3655	m_gl.multiTexParameterfvEXT(texunit, target, pname, params);
3656}
3657
3658void CallLogWrapper::glMultiTexParameteriEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, glw::GLint param)
3659{
3660	if (m_enableLog)
3661		m_log << TestLog::Message << "glMultiTexParameteriEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
3662	m_gl.multiTexParameteriEXT(texunit, target, pname, param);
3663}
3664
3665void CallLogWrapper::glMultiTexParameterivEXT (glw::GLenum texunit, glw::GLenum target, glw::GLenum pname, const glw::GLint *params)
3666{
3667	if (m_enableLog)
3668		m_log << TestLog::Message << "glMultiTexParameterivEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3669	m_gl.multiTexParameterivEXT(texunit, target, pname, params);
3670}
3671
3672void CallLogWrapper::glMultiTexRenderbufferEXT (glw::GLenum texunit, glw::GLenum target, glw::GLuint renderbuffer)
3673{
3674	if (m_enableLog)
3675		m_log << TestLog::Message << "glMultiTexRenderbufferEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << renderbuffer << ");" << TestLog::EndMessage;
3676	m_gl.multiTexRenderbufferEXT(texunit, target, renderbuffer);
3677}
3678
3679void CallLogWrapper::glMultiTexSubImage1DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLenum type, const void *pixels)
3680{
3681	if (m_enableLog)
3682		m_log << TestLog::Message << "glMultiTexSubImage1DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << width << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
3683	m_gl.multiTexSubImage1DEXT(texunit, target, level, xoffset, width, format, type, pixels);
3684}
3685
3686void CallLogWrapper::glMultiTexSubImage2DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLenum type, const void *pixels)
3687{
3688	if (m_enableLog)
3689		m_log << TestLog::Message << "glMultiTexSubImage2DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << width << ", " << height << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
3690	m_gl.multiTexSubImage2DEXT(texunit, target, level, xoffset, yoffset, width, height, format, type, pixels);
3691}
3692
3693void CallLogWrapper::glMultiTexSubImage3DEXT (glw::GLenum texunit, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, const void *pixels)
3694{
3695	if (m_enableLog)
3696		m_log << TestLog::Message << "glMultiTexSubImage3DEXT(" << toHex(texunit) << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
3697	m_gl.multiTexSubImage3DEXT(texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
3698}
3699
3700void CallLogWrapper::glMulticastBarrierNV (void)
3701{
3702	if (m_enableLog)
3703		m_log << TestLog::Message << "glMulticastBarrierNV(" << ");" << TestLog::EndMessage;
3704	m_gl.multicastBarrierNV();
3705}
3706
3707void CallLogWrapper::glMulticastBlitFramebufferNV (glw::GLuint srcGpu, glw::GLuint dstGpu, glw::GLint srcX0, glw::GLint srcY0, glw::GLint srcX1, glw::GLint srcY1, glw::GLint dstX0, glw::GLint dstY0, glw::GLint dstX1, glw::GLint dstY1, glw::GLbitfield mask, glw::GLenum filter)
3708{
3709	if (m_enableLog)
3710		m_log << TestLog::Message << "glMulticastBlitFramebufferNV(" << srcGpu << ", " << dstGpu << ", " << srcX0 << ", " << srcY0 << ", " << srcX1 << ", " << srcY1 << ", " << dstX0 << ", " << dstY0 << ", " << dstX1 << ", " << dstY1 << ", " << toHex(mask) << ", " << toHex(filter) << ");" << TestLog::EndMessage;
3711	m_gl.multicastBlitFramebufferNV(srcGpu, dstGpu, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
3712}
3713
3714void CallLogWrapper::glMulticastBufferSubDataNV (glw::GLbitfield gpuMask, glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size, const void *data)
3715{
3716	if (m_enableLog)
3717		m_log << TestLog::Message << "glMulticastBufferSubDataNV(" << toHex(gpuMask) << ", " << buffer << ", " << offset << ", " << size << ", " << data << ");" << TestLog::EndMessage;
3718	m_gl.multicastBufferSubDataNV(gpuMask, buffer, offset, size, data);
3719}
3720
3721void CallLogWrapper::glMulticastCopyBufferSubDataNV (glw::GLuint readGpu, glw::GLbitfield writeGpuMask, glw::GLuint readBuffer, glw::GLuint writeBuffer, glw::GLintptr readOffset, glw::GLintptr writeOffset, glw::GLsizeiptr size)
3722{
3723	if (m_enableLog)
3724		m_log << TestLog::Message << "glMulticastCopyBufferSubDataNV(" << readGpu << ", " << toHex(writeGpuMask) << ", " << readBuffer << ", " << writeBuffer << ", " << readOffset << ", " << writeOffset << ", " << size << ");" << TestLog::EndMessage;
3725	m_gl.multicastCopyBufferSubDataNV(readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size);
3726}
3727
3728void CallLogWrapper::glMulticastCopyImageSubDataNV (glw::GLuint srcGpu, glw::GLbitfield dstGpuMask, glw::GLuint srcName, glw::GLenum srcTarget, glw::GLint srcLevel, glw::GLint srcX, glw::GLint srcY, glw::GLint srcZ, glw::GLuint dstName, glw::GLenum dstTarget, glw::GLint dstLevel, glw::GLint dstX, glw::GLint dstY, glw::GLint dstZ, glw::GLsizei srcWidth, glw::GLsizei srcHeight, glw::GLsizei srcDepth)
3729{
3730	if (m_enableLog)
3731		m_log << TestLog::Message << "glMulticastCopyImageSubDataNV(" << srcGpu << ", " << toHex(dstGpuMask) << ", " << srcName << ", " << toHex(srcTarget) << ", " << srcLevel << ", " << srcX << ", " << srcY << ", " << srcZ << ", " << dstName << ", " << toHex(dstTarget) << ", " << dstLevel << ", " << dstX << ", " << dstY << ", " << dstZ << ", " << srcWidth << ", " << srcHeight << ", " << srcDepth << ");" << TestLog::EndMessage;
3732	m_gl.multicastCopyImageSubDataNV(srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
3733}
3734
3735void CallLogWrapper::glMulticastFramebufferSampleLocationsfvNV (glw::GLuint gpu, glw::GLuint framebuffer, glw::GLuint start, glw::GLsizei count, const glw::GLfloat *v)
3736{
3737	if (m_enableLog)
3738		m_log << TestLog::Message << "glMulticastFramebufferSampleLocationsfvNV(" << gpu << ", " << framebuffer << ", " << start << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
3739	m_gl.multicastFramebufferSampleLocationsfvNV(gpu, framebuffer, start, count, v);
3740}
3741
3742void CallLogWrapper::glMulticastGetQueryObjecti64vNV (glw::GLuint gpu, glw::GLuint id, glw::GLenum pname, glw::GLint64 *params)
3743{
3744	if (m_enableLog)
3745		m_log << TestLog::Message << "glMulticastGetQueryObjecti64vNV(" << gpu << ", " << id << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3746	m_gl.multicastGetQueryObjecti64vNV(gpu, id, pname, params);
3747}
3748
3749void CallLogWrapper::glMulticastGetQueryObjectivNV (glw::GLuint gpu, glw::GLuint id, glw::GLenum pname, glw::GLint *params)
3750{
3751	if (m_enableLog)
3752		m_log << TestLog::Message << "glMulticastGetQueryObjectivNV(" << gpu << ", " << id << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3753	m_gl.multicastGetQueryObjectivNV(gpu, id, pname, params);
3754}
3755
3756void CallLogWrapper::glMulticastGetQueryObjectui64vNV (glw::GLuint gpu, glw::GLuint id, glw::GLenum pname, glw::GLuint64 *params)
3757{
3758	if (m_enableLog)
3759		m_log << TestLog::Message << "glMulticastGetQueryObjectui64vNV(" << gpu << ", " << id << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3760	m_gl.multicastGetQueryObjectui64vNV(gpu, id, pname, params);
3761}
3762
3763void CallLogWrapper::glMulticastGetQueryObjectuivNV (glw::GLuint gpu, glw::GLuint id, glw::GLenum pname, glw::GLuint *params)
3764{
3765	if (m_enableLog)
3766		m_log << TestLog::Message << "glMulticastGetQueryObjectuivNV(" << gpu << ", " << id << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3767	m_gl.multicastGetQueryObjectuivNV(gpu, id, pname, params);
3768}
3769
3770void CallLogWrapper::glMulticastWaitSyncNV (glw::GLuint signalGpu, glw::GLbitfield waitGpuMask)
3771{
3772	if (m_enableLog)
3773		m_log << TestLog::Message << "glMulticastWaitSyncNV(" << signalGpu << ", " << toHex(waitGpuMask) << ");" << TestLog::EndMessage;
3774	m_gl.multicastWaitSyncNV(signalGpu, waitGpuMask);
3775}
3776
3777void CallLogWrapper::glNamedBufferData (glw::GLuint buffer, glw::GLsizeiptr size, const void *data, glw::GLenum usage)
3778{
3779	if (m_enableLog)
3780		m_log << TestLog::Message << "glNamedBufferData(" << buffer << ", " << size << ", " << data << ", " << toHex(usage) << ");" << TestLog::EndMessage;
3781	m_gl.namedBufferData(buffer, size, data, usage);
3782}
3783
3784void CallLogWrapper::glNamedBufferDataEXT (glw::GLuint buffer, glw::GLsizeiptr size, const void *data, glw::GLenum usage)
3785{
3786	if (m_enableLog)
3787		m_log << TestLog::Message << "glNamedBufferDataEXT(" << buffer << ", " << size << ", " << data << ", " << toHex(usage) << ");" << TestLog::EndMessage;
3788	m_gl.namedBufferDataEXT(buffer, size, data, usage);
3789}
3790
3791void CallLogWrapper::glNamedBufferPageCommitmentARB (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size, glw::GLboolean commit)
3792{
3793	if (m_enableLog)
3794		m_log << TestLog::Message << "glNamedBufferPageCommitmentARB(" << buffer << ", " << offset << ", " << size << ", " << getBooleanStr(commit) << ");" << TestLog::EndMessage;
3795	m_gl.namedBufferPageCommitmentARB(buffer, offset, size, commit);
3796}
3797
3798void CallLogWrapper::glNamedBufferPageCommitmentEXT (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size, glw::GLboolean commit)
3799{
3800	if (m_enableLog)
3801		m_log << TestLog::Message << "glNamedBufferPageCommitmentEXT(" << buffer << ", " << offset << ", " << size << ", " << getBooleanStr(commit) << ");" << TestLog::EndMessage;
3802	m_gl.namedBufferPageCommitmentEXT(buffer, offset, size, commit);
3803}
3804
3805void CallLogWrapper::glNamedBufferStorage (glw::GLuint buffer, glw::GLsizeiptr size, const void *data, glw::GLbitfield flags)
3806{
3807	if (m_enableLog)
3808		m_log << TestLog::Message << "glNamedBufferStorage(" << buffer << ", " << size << ", " << data << ", " << toHex(flags) << ");" << TestLog::EndMessage;
3809	m_gl.namedBufferStorage(buffer, size, data, flags);
3810}
3811
3812void CallLogWrapper::glNamedBufferSubData (glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size, const void *data)
3813{
3814	if (m_enableLog)
3815		m_log << TestLog::Message << "glNamedBufferSubData(" << buffer << ", " << offset << ", " << size << ", " << data << ");" << TestLog::EndMessage;
3816	m_gl.namedBufferSubData(buffer, offset, size, data);
3817}
3818
3819void CallLogWrapper::glNamedCopyBufferSubDataEXT (glw::GLuint readBuffer, glw::GLuint writeBuffer, glw::GLintptr readOffset, glw::GLintptr writeOffset, glw::GLsizeiptr size)
3820{
3821	if (m_enableLog)
3822		m_log << TestLog::Message << "glNamedCopyBufferSubDataEXT(" << readBuffer << ", " << writeBuffer << ", " << readOffset << ", " << writeOffset << ", " << size << ");" << TestLog::EndMessage;
3823	m_gl.namedCopyBufferSubDataEXT(readBuffer, writeBuffer, readOffset, writeOffset, size);
3824}
3825
3826void CallLogWrapper::glNamedFramebufferDrawBuffer (glw::GLuint framebuffer, glw::GLenum buf)
3827{
3828	if (m_enableLog)
3829		m_log << TestLog::Message << "glNamedFramebufferDrawBuffer(" << framebuffer << ", " << toHex(buf) << ");" << TestLog::EndMessage;
3830	m_gl.namedFramebufferDrawBuffer(framebuffer, buf);
3831}
3832
3833void CallLogWrapper::glNamedFramebufferDrawBuffers (glw::GLuint framebuffer, glw::GLsizei n, const glw::GLenum *bufs)
3834{
3835	if (m_enableLog)
3836		m_log << TestLog::Message << "glNamedFramebufferDrawBuffers(" << framebuffer << ", " << n << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(bufs))) << ");" << TestLog::EndMessage;
3837	m_gl.namedFramebufferDrawBuffers(framebuffer, n, bufs);
3838}
3839
3840void CallLogWrapper::glNamedFramebufferParameteri (glw::GLuint framebuffer, glw::GLenum pname, glw::GLint param)
3841{
3842	if (m_enableLog)
3843		m_log << TestLog::Message << "glNamedFramebufferParameteri(" << framebuffer << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
3844	m_gl.namedFramebufferParameteri(framebuffer, pname, param);
3845}
3846
3847void CallLogWrapper::glNamedFramebufferParameteriEXT (glw::GLuint framebuffer, glw::GLenum pname, glw::GLint param)
3848{
3849	if (m_enableLog)
3850		m_log << TestLog::Message << "glNamedFramebufferParameteriEXT(" << framebuffer << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
3851	m_gl.namedFramebufferParameteriEXT(framebuffer, pname, param);
3852}
3853
3854void CallLogWrapper::glNamedFramebufferReadBuffer (glw::GLuint framebuffer, glw::GLenum src)
3855{
3856	if (m_enableLog)
3857		m_log << TestLog::Message << "glNamedFramebufferReadBuffer(" << framebuffer << ", " << toHex(src) << ");" << TestLog::EndMessage;
3858	m_gl.namedFramebufferReadBuffer(framebuffer, src);
3859}
3860
3861void CallLogWrapper::glNamedFramebufferRenderbuffer (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLenum renderbuffertarget, glw::GLuint renderbuffer)
3862{
3863	if (m_enableLog)
3864		m_log << TestLog::Message << "glNamedFramebufferRenderbuffer(" << framebuffer << ", " << toHex(attachment) << ", " << toHex(renderbuffertarget) << ", " << renderbuffer << ");" << TestLog::EndMessage;
3865	m_gl.namedFramebufferRenderbuffer(framebuffer, attachment, renderbuffertarget, renderbuffer);
3866}
3867
3868void CallLogWrapper::glNamedFramebufferRenderbufferEXT (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLenum renderbuffertarget, glw::GLuint renderbuffer)
3869{
3870	if (m_enableLog)
3871		m_log << TestLog::Message << "glNamedFramebufferRenderbufferEXT(" << framebuffer << ", " << toHex(attachment) << ", " << toHex(renderbuffertarget) << ", " << renderbuffer << ");" << TestLog::EndMessage;
3872	m_gl.namedFramebufferRenderbufferEXT(framebuffer, attachment, renderbuffertarget, renderbuffer);
3873}
3874
3875void CallLogWrapper::glNamedFramebufferTexture (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLuint texture, glw::GLint level)
3876{
3877	if (m_enableLog)
3878		m_log << TestLog::Message << "glNamedFramebufferTexture(" << framebuffer << ", " << toHex(attachment) << ", " << texture << ", " << level << ");" << TestLog::EndMessage;
3879	m_gl.namedFramebufferTexture(framebuffer, attachment, texture, level);
3880}
3881
3882void CallLogWrapper::glNamedFramebufferTexture1DEXT (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level)
3883{
3884	if (m_enableLog)
3885		m_log << TestLog::Message << "glNamedFramebufferTexture1DEXT(" << framebuffer << ", " << toHex(attachment) << ", " << toHex(textarget) << ", " << texture << ", " << level << ");" << TestLog::EndMessage;
3886	m_gl.namedFramebufferTexture1DEXT(framebuffer, attachment, textarget, texture, level);
3887}
3888
3889void CallLogWrapper::glNamedFramebufferTexture2DEXT (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level)
3890{
3891	if (m_enableLog)
3892		m_log << TestLog::Message << "glNamedFramebufferTexture2DEXT(" << framebuffer << ", " << toHex(attachment) << ", " << toHex(textarget) << ", " << texture << ", " << level << ");" << TestLog::EndMessage;
3893	m_gl.namedFramebufferTexture2DEXT(framebuffer, attachment, textarget, texture, level);
3894}
3895
3896void CallLogWrapper::glNamedFramebufferTexture3DEXT (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level, glw::GLint zoffset)
3897{
3898	if (m_enableLog)
3899		m_log << TestLog::Message << "glNamedFramebufferTexture3DEXT(" << framebuffer << ", " << toHex(attachment) << ", " << toHex(textarget) << ", " << texture << ", " << level << ", " << zoffset << ");" << TestLog::EndMessage;
3900	m_gl.namedFramebufferTexture3DEXT(framebuffer, attachment, textarget, texture, level, zoffset);
3901}
3902
3903void CallLogWrapper::glNamedFramebufferTextureEXT (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLuint texture, glw::GLint level)
3904{
3905	if (m_enableLog)
3906		m_log << TestLog::Message << "glNamedFramebufferTextureEXT(" << framebuffer << ", " << toHex(attachment) << ", " << texture << ", " << level << ");" << TestLog::EndMessage;
3907	m_gl.namedFramebufferTextureEXT(framebuffer, attachment, texture, level);
3908}
3909
3910void CallLogWrapper::glNamedFramebufferTextureFaceEXT (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLuint texture, glw::GLint level, glw::GLenum face)
3911{
3912	if (m_enableLog)
3913		m_log << TestLog::Message << "glNamedFramebufferTextureFaceEXT(" << framebuffer << ", " << toHex(attachment) << ", " << texture << ", " << level << ", " << toHex(face) << ");" << TestLog::EndMessage;
3914	m_gl.namedFramebufferTextureFaceEXT(framebuffer, attachment, texture, level, face);
3915}
3916
3917void CallLogWrapper::glNamedFramebufferTextureLayer (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLuint texture, glw::GLint level, glw::GLint layer)
3918{
3919	if (m_enableLog)
3920		m_log << TestLog::Message << "glNamedFramebufferTextureLayer(" << framebuffer << ", " << toHex(attachment) << ", " << texture << ", " << level << ", " << layer << ");" << TestLog::EndMessage;
3921	m_gl.namedFramebufferTextureLayer(framebuffer, attachment, texture, level, layer);
3922}
3923
3924void CallLogWrapper::glNamedFramebufferTextureLayerEXT (glw::GLuint framebuffer, glw::GLenum attachment, glw::GLuint texture, glw::GLint level, glw::GLint layer)
3925{
3926	if (m_enableLog)
3927		m_log << TestLog::Message << "glNamedFramebufferTextureLayerEXT(" << framebuffer << ", " << toHex(attachment) << ", " << texture << ", " << level << ", " << layer << ");" << TestLog::EndMessage;
3928	m_gl.namedFramebufferTextureLayerEXT(framebuffer, attachment, texture, level, layer);
3929}
3930
3931void CallLogWrapper::glNamedProgramLocalParameter4dEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z, glw::GLdouble w)
3932{
3933	if (m_enableLog)
3934		m_log << TestLog::Message << "glNamedProgramLocalParameter4dEXT(" << program << ", " << toHex(target) << ", " << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
3935	m_gl.namedProgramLocalParameter4dEXT(program, target, index, x, y, z, w);
3936}
3937
3938void CallLogWrapper::glNamedProgramLocalParameter4dvEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, const glw::GLdouble *params)
3939{
3940	if (m_enableLog)
3941		m_log << TestLog::Message << "glNamedProgramLocalParameter4dvEXT(" << program << ", " << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3942	m_gl.namedProgramLocalParameter4dvEXT(program, target, index, params);
3943}
3944
3945void CallLogWrapper::glNamedProgramLocalParameter4fEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLfloat x, glw::GLfloat y, glw::GLfloat z, glw::GLfloat w)
3946{
3947	if (m_enableLog)
3948		m_log << TestLog::Message << "glNamedProgramLocalParameter4fEXT(" << program << ", " << toHex(target) << ", " << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
3949	m_gl.namedProgramLocalParameter4fEXT(program, target, index, x, y, z, w);
3950}
3951
3952void CallLogWrapper::glNamedProgramLocalParameter4fvEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, const glw::GLfloat *params)
3953{
3954	if (m_enableLog)
3955		m_log << TestLog::Message << "glNamedProgramLocalParameter4fvEXT(" << program << ", " << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3956	m_gl.namedProgramLocalParameter4fvEXT(program, target, index, params);
3957}
3958
3959void CallLogWrapper::glNamedProgramLocalParameterI4iEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLint x, glw::GLint y, glw::GLint z, glw::GLint w)
3960{
3961	if (m_enableLog)
3962		m_log << TestLog::Message << "glNamedProgramLocalParameterI4iEXT(" << program << ", " << toHex(target) << ", " << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
3963	m_gl.namedProgramLocalParameterI4iEXT(program, target, index, x, y, z, w);
3964}
3965
3966void CallLogWrapper::glNamedProgramLocalParameterI4ivEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, const glw::GLint *params)
3967{
3968	if (m_enableLog)
3969		m_log << TestLog::Message << "glNamedProgramLocalParameterI4ivEXT(" << program << ", " << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3970	m_gl.namedProgramLocalParameterI4ivEXT(program, target, index, params);
3971}
3972
3973void CallLogWrapper::glNamedProgramLocalParameterI4uiEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLuint x, glw::GLuint y, glw::GLuint z, glw::GLuint w)
3974{
3975	if (m_enableLog)
3976		m_log << TestLog::Message << "glNamedProgramLocalParameterI4uiEXT(" << program << ", " << toHex(target) << ", " << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
3977	m_gl.namedProgramLocalParameterI4uiEXT(program, target, index, x, y, z, w);
3978}
3979
3980void CallLogWrapper::glNamedProgramLocalParameterI4uivEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, const glw::GLuint *params)
3981{
3982	if (m_enableLog)
3983		m_log << TestLog::Message << "glNamedProgramLocalParameterI4uivEXT(" << program << ", " << toHex(target) << ", " << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3984	m_gl.namedProgramLocalParameterI4uivEXT(program, target, index, params);
3985}
3986
3987void CallLogWrapper::glNamedProgramLocalParameters4fvEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLsizei count, const glw::GLfloat *params)
3988{
3989	if (m_enableLog)
3990		m_log << TestLog::Message << "glNamedProgramLocalParameters4fvEXT(" << program << ", " << toHex(target) << ", " << index << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3991	m_gl.namedProgramLocalParameters4fvEXT(program, target, index, count, params);
3992}
3993
3994void CallLogWrapper::glNamedProgramLocalParametersI4ivEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLsizei count, const glw::GLint *params)
3995{
3996	if (m_enableLog)
3997		m_log << TestLog::Message << "glNamedProgramLocalParametersI4ivEXT(" << program << ", " << toHex(target) << ", " << index << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
3998	m_gl.namedProgramLocalParametersI4ivEXT(program, target, index, count, params);
3999}
4000
4001void CallLogWrapper::glNamedProgramLocalParametersI4uivEXT (glw::GLuint program, glw::GLenum target, glw::GLuint index, glw::GLsizei count, const glw::GLuint *params)
4002{
4003	if (m_enableLog)
4004		m_log << TestLog::Message << "glNamedProgramLocalParametersI4uivEXT(" << program << ", " << toHex(target) << ", " << index << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
4005	m_gl.namedProgramLocalParametersI4uivEXT(program, target, index, count, params);
4006}
4007
4008void CallLogWrapper::glNamedProgramStringEXT (glw::GLuint program, glw::GLenum target, glw::GLenum format, glw::GLsizei len, const void *string)
4009{
4010	if (m_enableLog)
4011		m_log << TestLog::Message << "glNamedProgramStringEXT(" << program << ", " << toHex(target) << ", " << toHex(format) << ", " << len << ", " << string << ");" << TestLog::EndMessage;
4012	m_gl.namedProgramStringEXT(program, target, format, len, string);
4013}
4014
4015void CallLogWrapper::glNamedRenderbufferStorage (glw::GLuint renderbuffer, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
4016{
4017	if (m_enableLog)
4018		m_log << TestLog::Message << "glNamedRenderbufferStorage(" << renderbuffer << ", " << toHex(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4019	m_gl.namedRenderbufferStorage(renderbuffer, internalformat, width, height);
4020}
4021
4022void CallLogWrapper::glNamedRenderbufferStorageEXT (glw::GLuint renderbuffer, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
4023{
4024	if (m_enableLog)
4025		m_log << TestLog::Message << "glNamedRenderbufferStorageEXT(" << renderbuffer << ", " << toHex(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4026	m_gl.namedRenderbufferStorageEXT(renderbuffer, internalformat, width, height);
4027}
4028
4029void CallLogWrapper::glNamedRenderbufferStorageMultisample (glw::GLuint renderbuffer, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
4030{
4031	if (m_enableLog)
4032		m_log << TestLog::Message << "glNamedRenderbufferStorageMultisample(" << renderbuffer << ", " << samples << ", " << toHex(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4033	m_gl.namedRenderbufferStorageMultisample(renderbuffer, samples, internalformat, width, height);
4034}
4035
4036void CallLogWrapper::glNamedRenderbufferStorageMultisampleCoverageEXT (glw::GLuint renderbuffer, glw::GLsizei coverageSamples, glw::GLsizei colorSamples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
4037{
4038	if (m_enableLog)
4039		m_log << TestLog::Message << "glNamedRenderbufferStorageMultisampleCoverageEXT(" << renderbuffer << ", " << coverageSamples << ", " << colorSamples << ", " << toHex(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4040	m_gl.namedRenderbufferStorageMultisampleCoverageEXT(renderbuffer, coverageSamples, colorSamples, internalformat, width, height);
4041}
4042
4043void CallLogWrapper::glNamedRenderbufferStorageMultisampleEXT (glw::GLuint renderbuffer, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
4044{
4045	if (m_enableLog)
4046		m_log << TestLog::Message << "glNamedRenderbufferStorageMultisampleEXT(" << renderbuffer << ", " << samples << ", " << toHex(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4047	m_gl.namedRenderbufferStorageMultisampleEXT(renderbuffer, samples, internalformat, width, height);
4048}
4049
4050void CallLogWrapper::glObjectLabel (glw::GLenum identifier, glw::GLuint name, glw::GLsizei length, const glw::GLchar *label)
4051{
4052	if (m_enableLog)
4053		m_log << TestLog::Message << "glObjectLabel(" << toHex(identifier) << ", " << name << ", " << length << ", " << getStringStr(label) << ");" << TestLog::EndMessage;
4054	m_gl.objectLabel(identifier, name, length, label);
4055}
4056
4057void CallLogWrapper::glObjectPtrLabel (const void *ptr, glw::GLsizei length, const glw::GLchar *label)
4058{
4059	if (m_enableLog)
4060		m_log << TestLog::Message << "glObjectPtrLabel(" << ptr << ", " << length << ", " << getStringStr(label) << ");" << TestLog::EndMessage;
4061	m_gl.objectPtrLabel(ptr, length, label);
4062}
4063
4064void CallLogWrapper::glPatchParameterfv (glw::GLenum pname, const glw::GLfloat *values)
4065{
4066	if (m_enableLog)
4067		m_log << TestLog::Message << "glPatchParameterfv(" << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(values))) << ");" << TestLog::EndMessage;
4068	m_gl.patchParameterfv(pname, values);
4069}
4070
4071void CallLogWrapper::glPatchParameteri (glw::GLenum pname, glw::GLint value)
4072{
4073	if (m_enableLog)
4074		m_log << TestLog::Message << "glPatchParameteri(" << getPatchParamStr(pname) << ", " << value << ");" << TestLog::EndMessage;
4075	m_gl.patchParameteri(pname, value);
4076}
4077
4078void CallLogWrapper::glPauseTransformFeedback (void)
4079{
4080	if (m_enableLog)
4081		m_log << TestLog::Message << "glPauseTransformFeedback(" << ");" << TestLog::EndMessage;
4082	m_gl.pauseTransformFeedback();
4083}
4084
4085void CallLogWrapper::glPixelStoref (glw::GLenum pname, glw::GLfloat param)
4086{
4087	if (m_enableLog)
4088		m_log << TestLog::Message << "glPixelStoref(" << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
4089	m_gl.pixelStoref(pname, param);
4090}
4091
4092void CallLogWrapper::glPixelStorei (glw::GLenum pname, glw::GLint param)
4093{
4094	if (m_enableLog)
4095		m_log << TestLog::Message << "glPixelStorei(" << getPixelStoreParameterStr(pname) << ", " << param << ");" << TestLog::EndMessage;
4096	m_gl.pixelStorei(pname, param);
4097}
4098
4099void CallLogWrapper::glPointParameterf (glw::GLenum pname, glw::GLfloat param)
4100{
4101	if (m_enableLog)
4102		m_log << TestLog::Message << "glPointParameterf(" << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
4103	m_gl.pointParameterf(pname, param);
4104}
4105
4106void CallLogWrapper::glPointParameterfv (glw::GLenum pname, const glw::GLfloat *params)
4107{
4108	if (m_enableLog)
4109		m_log << TestLog::Message << "glPointParameterfv(" << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
4110	m_gl.pointParameterfv(pname, params);
4111}
4112
4113void CallLogWrapper::glPointParameteri (glw::GLenum pname, glw::GLint param)
4114{
4115	if (m_enableLog)
4116		m_log << TestLog::Message << "glPointParameteri(" << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
4117	m_gl.pointParameteri(pname, param);
4118}
4119
4120void CallLogWrapper::glPointParameteriv (glw::GLenum pname, const glw::GLint *params)
4121{
4122	if (m_enableLog)
4123		m_log << TestLog::Message << "glPointParameteriv(" << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
4124	m_gl.pointParameteriv(pname, params);
4125}
4126
4127void CallLogWrapper::glPointSize (glw::GLfloat size)
4128{
4129	if (m_enableLog)
4130		m_log << TestLog::Message << "glPointSize(" << size << ");" << TestLog::EndMessage;
4131	m_gl.pointSize(size);
4132}
4133
4134void CallLogWrapper::glPolygonMode (glw::GLenum face, glw::GLenum mode)
4135{
4136	if (m_enableLog)
4137		m_log << TestLog::Message << "glPolygonMode(" << toHex(face) << ", " << toHex(mode) << ");" << TestLog::EndMessage;
4138	m_gl.polygonMode(face, mode);
4139}
4140
4141void CallLogWrapper::glPolygonOffset (glw::GLfloat factor, glw::GLfloat units)
4142{
4143	if (m_enableLog)
4144		m_log << TestLog::Message << "glPolygonOffset(" << factor << ", " << units << ");" << TestLog::EndMessage;
4145	m_gl.polygonOffset(factor, units);
4146}
4147
4148void CallLogWrapper::glPolygonOffsetClamp (glw::GLfloat factor, glw::GLfloat units, glw::GLfloat clamp)
4149{
4150	if (m_enableLog)
4151		m_log << TestLog::Message << "glPolygonOffsetClamp(" << factor << ", " << units << ", " << clamp << ");" << TestLog::EndMessage;
4152	m_gl.polygonOffsetClamp(factor, units, clamp);
4153}
4154
4155void CallLogWrapper::glPopDebugGroup (void)
4156{
4157	if (m_enableLog)
4158		m_log << TestLog::Message << "glPopDebugGroup(" << ");" << TestLog::EndMessage;
4159	m_gl.popDebugGroup();
4160}
4161
4162void CallLogWrapper::glPopGroupMarkerEXT (void)
4163{
4164	if (m_enableLog)
4165		m_log << TestLog::Message << "glPopGroupMarkerEXT(" << ");" << TestLog::EndMessage;
4166	m_gl.popGroupMarkerEXT();
4167}
4168
4169void CallLogWrapper::glPrimitiveBoundingBox (glw::GLfloat minX, glw::GLfloat minY, glw::GLfloat minZ, glw::GLfloat minW, glw::GLfloat maxX, glw::GLfloat maxY, glw::GLfloat maxZ, glw::GLfloat maxW)
4170{
4171	if (m_enableLog)
4172		m_log << TestLog::Message << "glPrimitiveBoundingBox(" << minX << ", " << minY << ", " << minZ << ", " << minW << ", " << maxX << ", " << maxY << ", " << maxZ << ", " << maxW << ");" << TestLog::EndMessage;
4173	m_gl.primitiveBoundingBox(minX, minY, minZ, minW, maxX, maxY, maxZ, maxW);
4174}
4175
4176void CallLogWrapper::glPrimitiveRestartIndex (glw::GLuint index)
4177{
4178	if (m_enableLog)
4179		m_log << TestLog::Message << "glPrimitiveRestartIndex(" << index << ");" << TestLog::EndMessage;
4180	m_gl.primitiveRestartIndex(index);
4181}
4182
4183void CallLogWrapper::glProgramBinary (glw::GLuint program, glw::GLenum binaryFormat, const void *binary, glw::GLsizei length)
4184{
4185	if (m_enableLog)
4186		m_log << TestLog::Message << "glProgramBinary(" << program << ", " << toHex(binaryFormat) << ", " << binary << ", " << length << ");" << TestLog::EndMessage;
4187	m_gl.programBinary(program, binaryFormat, binary, length);
4188}
4189
4190void CallLogWrapper::glProgramParameteri (glw::GLuint program, glw::GLenum pname, glw::GLint value)
4191{
4192	if (m_enableLog)
4193		m_log << TestLog::Message << "glProgramParameteri(" << program << ", " << getProgramParamStr(pname) << ", " << value << ");" << TestLog::EndMessage;
4194	m_gl.programParameteri(program, pname, value);
4195}
4196
4197void CallLogWrapper::glProgramUniform1d (glw::GLuint program, glw::GLint location, glw::GLdouble v0)
4198{
4199	if (m_enableLog)
4200		m_log << TestLog::Message << "glProgramUniform1d(" << program << ", " << location << ", " << v0 << ");" << TestLog::EndMessage;
4201	m_gl.programUniform1d(program, location, v0);
4202}
4203
4204void CallLogWrapper::glProgramUniform1dEXT (glw::GLuint program, glw::GLint location, glw::GLdouble x)
4205{
4206	if (m_enableLog)
4207		m_log << TestLog::Message << "glProgramUniform1dEXT(" << program << ", " << location << ", " << x << ");" << TestLog::EndMessage;
4208	m_gl.programUniform1dEXT(program, location, x);
4209}
4210
4211void CallLogWrapper::glProgramUniform1dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
4212{
4213	if (m_enableLog)
4214		m_log << TestLog::Message << "glProgramUniform1dv(" << program << ", " << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4215	m_gl.programUniform1dv(program, location, count, value);
4216}
4217
4218void CallLogWrapper::glProgramUniform1dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
4219{
4220	if (m_enableLog)
4221		m_log << TestLog::Message << "glProgramUniform1dvEXT(" << program << ", " << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4222	m_gl.programUniform1dvEXT(program, location, count, value);
4223}
4224
4225void CallLogWrapper::glProgramUniform1f (glw::GLuint program, glw::GLint location, glw::GLfloat v0)
4226{
4227	if (m_enableLog)
4228		m_log << TestLog::Message << "glProgramUniform1f(" << program << ", " << location << ", " << v0 << ");" << TestLog::EndMessage;
4229	m_gl.programUniform1f(program, location, v0);
4230}
4231
4232void CallLogWrapper::glProgramUniform1fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLfloat *value)
4233{
4234	if (m_enableLog)
4235		m_log << TestLog::Message << "glProgramUniform1fv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 1)) << ");" << TestLog::EndMessage;
4236	m_gl.programUniform1fv(program, location, count, value);
4237}
4238
4239void CallLogWrapper::glProgramUniform1i (glw::GLuint program, glw::GLint location, glw::GLint v0)
4240{
4241	if (m_enableLog)
4242		m_log << TestLog::Message << "glProgramUniform1i(" << program << ", " << location << ", " << v0 << ");" << TestLog::EndMessage;
4243	m_gl.programUniform1i(program, location, v0);
4244}
4245
4246void CallLogWrapper::glProgramUniform1iv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLint *value)
4247{
4248	if (m_enableLog)
4249		m_log << TestLog::Message << "glProgramUniform1iv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 1)) << ");" << TestLog::EndMessage;
4250	m_gl.programUniform1iv(program, location, count, value);
4251}
4252
4253void CallLogWrapper::glProgramUniform1ui (glw::GLuint program, glw::GLint location, glw::GLuint v0)
4254{
4255	if (m_enableLog)
4256		m_log << TestLog::Message << "glProgramUniform1ui(" << program << ", " << location << ", " << v0 << ");" << TestLog::EndMessage;
4257	m_gl.programUniform1ui(program, location, v0);
4258}
4259
4260void CallLogWrapper::glProgramUniform1uiv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLuint *value)
4261{
4262	if (m_enableLog)
4263		m_log << TestLog::Message << "glProgramUniform1uiv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 1)) << ");" << TestLog::EndMessage;
4264	m_gl.programUniform1uiv(program, location, count, value);
4265}
4266
4267void CallLogWrapper::glProgramUniform2d (glw::GLuint program, glw::GLint location, glw::GLdouble v0, glw::GLdouble v1)
4268{
4269	if (m_enableLog)
4270		m_log << TestLog::Message << "glProgramUniform2d(" << program << ", " << location << ", " << v0 << ", " << v1 << ");" << TestLog::EndMessage;
4271	m_gl.programUniform2d(program, location, v0, v1);
4272}
4273
4274void CallLogWrapper::glProgramUniform2dEXT (glw::GLuint program, glw::GLint location, glw::GLdouble x, glw::GLdouble y)
4275{
4276	if (m_enableLog)
4277		m_log << TestLog::Message << "glProgramUniform2dEXT(" << program << ", " << location << ", " << x << ", " << y << ");" << TestLog::EndMessage;
4278	m_gl.programUniform2dEXT(program, location, x, y);
4279}
4280
4281void CallLogWrapper::glProgramUniform2dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
4282{
4283	if (m_enableLog)
4284		m_log << TestLog::Message << "glProgramUniform2dv(" << program << ", " << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4285	m_gl.programUniform2dv(program, location, count, value);
4286}
4287
4288void CallLogWrapper::glProgramUniform2dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
4289{
4290	if (m_enableLog)
4291		m_log << TestLog::Message << "glProgramUniform2dvEXT(" << program << ", " << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4292	m_gl.programUniform2dvEXT(program, location, count, value);
4293}
4294
4295void CallLogWrapper::glProgramUniform2f (glw::GLuint program, glw::GLint location, glw::GLfloat v0, glw::GLfloat v1)
4296{
4297	if (m_enableLog)
4298		m_log << TestLog::Message << "glProgramUniform2f(" << program << ", " << location << ", " << v0 << ", " << v1 << ");" << TestLog::EndMessage;
4299	m_gl.programUniform2f(program, location, v0, v1);
4300}
4301
4302void CallLogWrapper::glProgramUniform2fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLfloat *value)
4303{
4304	if (m_enableLog)
4305		m_log << TestLog::Message << "glProgramUniform2fv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 2)) << ");" << TestLog::EndMessage;
4306	m_gl.programUniform2fv(program, location, count, value);
4307}
4308
4309void CallLogWrapper::glProgramUniform2i (glw::GLuint program, glw::GLint location, glw::GLint v0, glw::GLint v1)
4310{
4311	if (m_enableLog)
4312		m_log << TestLog::Message << "glProgramUniform2i(" << program << ", " << location << ", " << v0 << ", " << v1 << ");" << TestLog::EndMessage;
4313	m_gl.programUniform2i(program, location, v0, v1);
4314}
4315
4316void CallLogWrapper::glProgramUniform2iv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLint *value)
4317{
4318	if (m_enableLog)
4319		m_log << TestLog::Message << "glProgramUniform2iv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 2)) << ");" << TestLog::EndMessage;
4320	m_gl.programUniform2iv(program, location, count, value);
4321}
4322
4323void CallLogWrapper::glProgramUniform2ui (glw::GLuint program, glw::GLint location, glw::GLuint v0, glw::GLuint v1)
4324{
4325	if (m_enableLog)
4326		m_log << TestLog::Message << "glProgramUniform2ui(" << program << ", " << location << ", " << v0 << ", " << v1 << ");" << TestLog::EndMessage;
4327	m_gl.programUniform2ui(program, location, v0, v1);
4328}
4329
4330void CallLogWrapper::glProgramUniform2uiv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLuint *value)
4331{
4332	if (m_enableLog)
4333		m_log << TestLog::Message << "glProgramUniform2uiv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 2)) << ");" << TestLog::EndMessage;
4334	m_gl.programUniform2uiv(program, location, count, value);
4335}
4336
4337void CallLogWrapper::glProgramUniform3d (glw::GLuint program, glw::GLint location, glw::GLdouble v0, glw::GLdouble v1, glw::GLdouble v2)
4338{
4339	if (m_enableLog)
4340		m_log << TestLog::Message << "glProgramUniform3d(" << program << ", " << location << ", " << v0 << ", " << v1 << ", " << v2 << ");" << TestLog::EndMessage;
4341	m_gl.programUniform3d(program, location, v0, v1, v2);
4342}
4343
4344void CallLogWrapper::glProgramUniform3dEXT (glw::GLuint program, glw::GLint location, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z)
4345{
4346	if (m_enableLog)
4347		m_log << TestLog::Message << "glProgramUniform3dEXT(" << program << ", " << location << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
4348	m_gl.programUniform3dEXT(program, location, x, y, z);
4349}
4350
4351void CallLogWrapper::glProgramUniform3dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
4352{
4353	if (m_enableLog)
4354		m_log << TestLog::Message << "glProgramUniform3dv(" << program << ", " << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4355	m_gl.programUniform3dv(program, location, count, value);
4356}
4357
4358void CallLogWrapper::glProgramUniform3dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
4359{
4360	if (m_enableLog)
4361		m_log << TestLog::Message << "glProgramUniform3dvEXT(" << program << ", " << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4362	m_gl.programUniform3dvEXT(program, location, count, value);
4363}
4364
4365void CallLogWrapper::glProgramUniform3f (glw::GLuint program, glw::GLint location, glw::GLfloat v0, glw::GLfloat v1, glw::GLfloat v2)
4366{
4367	if (m_enableLog)
4368		m_log << TestLog::Message << "glProgramUniform3f(" << program << ", " << location << ", " << v0 << ", " << v1 << ", " << v2 << ");" << TestLog::EndMessage;
4369	m_gl.programUniform3f(program, location, v0, v1, v2);
4370}
4371
4372void CallLogWrapper::glProgramUniform3fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLfloat *value)
4373{
4374	if (m_enableLog)
4375		m_log << TestLog::Message << "glProgramUniform3fv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 3)) << ");" << TestLog::EndMessage;
4376	m_gl.programUniform3fv(program, location, count, value);
4377}
4378
4379void CallLogWrapper::glProgramUniform3i (glw::GLuint program, glw::GLint location, glw::GLint v0, glw::GLint v1, glw::GLint v2)
4380{
4381	if (m_enableLog)
4382		m_log << TestLog::Message << "glProgramUniform3i(" << program << ", " << location << ", " << v0 << ", " << v1 << ", " << v2 << ");" << TestLog::EndMessage;
4383	m_gl.programUniform3i(program, location, v0, v1, v2);
4384}
4385
4386void CallLogWrapper::glProgramUniform3iv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLint *value)
4387{
4388	if (m_enableLog)
4389		m_log << TestLog::Message << "glProgramUniform3iv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 3)) << ");" << TestLog::EndMessage;
4390	m_gl.programUniform3iv(program, location, count, value);
4391}
4392
4393void CallLogWrapper::glProgramUniform3ui (glw::GLuint program, glw::GLint location, glw::GLuint v0, glw::GLuint v1, glw::GLuint v2)
4394{
4395	if (m_enableLog)
4396		m_log << TestLog::Message << "glProgramUniform3ui(" << program << ", " << location << ", " << v0 << ", " << v1 << ", " << v2 << ");" << TestLog::EndMessage;
4397	m_gl.programUniform3ui(program, location, v0, v1, v2);
4398}
4399
4400void CallLogWrapper::glProgramUniform3uiv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLuint *value)
4401{
4402	if (m_enableLog)
4403		m_log << TestLog::Message << "glProgramUniform3uiv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 3)) << ");" << TestLog::EndMessage;
4404	m_gl.programUniform3uiv(program, location, count, value);
4405}
4406
4407void CallLogWrapper::glProgramUniform4d (glw::GLuint program, glw::GLint location, glw::GLdouble v0, glw::GLdouble v1, glw::GLdouble v2, glw::GLdouble v3)
4408{
4409	if (m_enableLog)
4410		m_log << TestLog::Message << "glProgramUniform4d(" << program << ", " << location << ", " << v0 << ", " << v1 << ", " << v2 << ", " << v3 << ");" << TestLog::EndMessage;
4411	m_gl.programUniform4d(program, location, v0, v1, v2, v3);
4412}
4413
4414void CallLogWrapper::glProgramUniform4dEXT (glw::GLuint program, glw::GLint location, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z, glw::GLdouble w)
4415{
4416	if (m_enableLog)
4417		m_log << TestLog::Message << "glProgramUniform4dEXT(" << program << ", " << location << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
4418	m_gl.programUniform4dEXT(program, location, x, y, z, w);
4419}
4420
4421void CallLogWrapper::glProgramUniform4dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
4422{
4423	if (m_enableLog)
4424		m_log << TestLog::Message << "glProgramUniform4dv(" << program << ", " << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4425	m_gl.programUniform4dv(program, location, count, value);
4426}
4427
4428void CallLogWrapper::glProgramUniform4dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
4429{
4430	if (m_enableLog)
4431		m_log << TestLog::Message << "glProgramUniform4dvEXT(" << program << ", " << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4432	m_gl.programUniform4dvEXT(program, location, count, value);
4433}
4434
4435void CallLogWrapper::glProgramUniform4f (glw::GLuint program, glw::GLint location, glw::GLfloat v0, glw::GLfloat v1, glw::GLfloat v2, glw::GLfloat v3)
4436{
4437	if (m_enableLog)
4438		m_log << TestLog::Message << "glProgramUniform4f(" << program << ", " << location << ", " << v0 << ", " << v1 << ", " << v2 << ", " << v3 << ");" << TestLog::EndMessage;
4439	m_gl.programUniform4f(program, location, v0, v1, v2, v3);
4440}
4441
4442void CallLogWrapper::glProgramUniform4fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLfloat *value)
4443{
4444	if (m_enableLog)
4445		m_log << TestLog::Message << "glProgramUniform4fv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 4)) << ");" << TestLog::EndMessage;
4446	m_gl.programUniform4fv(program, location, count, value);
4447}
4448
4449void CallLogWrapper::glProgramUniform4i (glw::GLuint program, glw::GLint location, glw::GLint v0, glw::GLint v1, glw::GLint v2, glw::GLint v3)
4450{
4451	if (m_enableLog)
4452		m_log << TestLog::Message << "glProgramUniform4i(" << program << ", " << location << ", " << v0 << ", " << v1 << ", " << v2 << ", " << v3 << ");" << TestLog::EndMessage;
4453	m_gl.programUniform4i(program, location, v0, v1, v2, v3);
4454}
4455
4456void CallLogWrapper::glProgramUniform4iv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLint *value)
4457{
4458	if (m_enableLog)
4459		m_log << TestLog::Message << "glProgramUniform4iv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 4)) << ");" << TestLog::EndMessage;
4460	m_gl.programUniform4iv(program, location, count, value);
4461}
4462
4463void CallLogWrapper::glProgramUniform4ui (glw::GLuint program, glw::GLint location, glw::GLuint v0, glw::GLuint v1, glw::GLuint v2, glw::GLuint v3)
4464{
4465	if (m_enableLog)
4466		m_log << TestLog::Message << "glProgramUniform4ui(" << program << ", " << location << ", " << v0 << ", " << v1 << ", " << v2 << ", " << v3 << ");" << TestLog::EndMessage;
4467	m_gl.programUniform4ui(program, location, v0, v1, v2, v3);
4468}
4469
4470void CallLogWrapper::glProgramUniform4uiv (glw::GLuint program, glw::GLint location, glw::GLsizei count, const glw::GLuint *value)
4471{
4472	if (m_enableLog)
4473		m_log << TestLog::Message << "glProgramUniform4uiv(" << program << ", " << location << ", " << count << ", " << getPointerStr(value, (count * 4)) << ");" << TestLog::EndMessage;
4474	m_gl.programUniform4uiv(program, location, count, value);
4475}
4476
4477void CallLogWrapper::glProgramUniformMatrix2dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4478{
4479	if (m_enableLog)
4480		m_log << TestLog::Message << "glProgramUniformMatrix2dv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4481	m_gl.programUniformMatrix2dv(program, location, count, transpose, value);
4482}
4483
4484void CallLogWrapper::glProgramUniformMatrix2dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4485{
4486	if (m_enableLog)
4487		m_log << TestLog::Message << "glProgramUniformMatrix2dvEXT(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4488	m_gl.programUniformMatrix2dvEXT(program, location, count, transpose, value);
4489}
4490
4491void CallLogWrapper::glProgramUniformMatrix2fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
4492{
4493	if (m_enableLog)
4494		m_log << TestLog::Message << "glProgramUniformMatrix2fv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 2*2)) << ");" << TestLog::EndMessage;
4495	m_gl.programUniformMatrix2fv(program, location, count, transpose, value);
4496}
4497
4498void CallLogWrapper::glProgramUniformMatrix2x3dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4499{
4500	if (m_enableLog)
4501		m_log << TestLog::Message << "glProgramUniformMatrix2x3dv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4502	m_gl.programUniformMatrix2x3dv(program, location, count, transpose, value);
4503}
4504
4505void CallLogWrapper::glProgramUniformMatrix2x3dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4506{
4507	if (m_enableLog)
4508		m_log << TestLog::Message << "glProgramUniformMatrix2x3dvEXT(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4509	m_gl.programUniformMatrix2x3dvEXT(program, location, count, transpose, value);
4510}
4511
4512void CallLogWrapper::glProgramUniformMatrix2x3fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
4513{
4514	if (m_enableLog)
4515		m_log << TestLog::Message << "glProgramUniformMatrix2x3fv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 2*3)) << ");" << TestLog::EndMessage;
4516	m_gl.programUniformMatrix2x3fv(program, location, count, transpose, value);
4517}
4518
4519void CallLogWrapper::glProgramUniformMatrix2x4dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4520{
4521	if (m_enableLog)
4522		m_log << TestLog::Message << "glProgramUniformMatrix2x4dv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4523	m_gl.programUniformMatrix2x4dv(program, location, count, transpose, value);
4524}
4525
4526void CallLogWrapper::glProgramUniformMatrix2x4dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4527{
4528	if (m_enableLog)
4529		m_log << TestLog::Message << "glProgramUniformMatrix2x4dvEXT(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4530	m_gl.programUniformMatrix2x4dvEXT(program, location, count, transpose, value);
4531}
4532
4533void CallLogWrapper::glProgramUniformMatrix2x4fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
4534{
4535	if (m_enableLog)
4536		m_log << TestLog::Message << "glProgramUniformMatrix2x4fv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 2*4)) << ");" << TestLog::EndMessage;
4537	m_gl.programUniformMatrix2x4fv(program, location, count, transpose, value);
4538}
4539
4540void CallLogWrapper::glProgramUniformMatrix3dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4541{
4542	if (m_enableLog)
4543		m_log << TestLog::Message << "glProgramUniformMatrix3dv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4544	m_gl.programUniformMatrix3dv(program, location, count, transpose, value);
4545}
4546
4547void CallLogWrapper::glProgramUniformMatrix3dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4548{
4549	if (m_enableLog)
4550		m_log << TestLog::Message << "glProgramUniformMatrix3dvEXT(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4551	m_gl.programUniformMatrix3dvEXT(program, location, count, transpose, value);
4552}
4553
4554void CallLogWrapper::glProgramUniformMatrix3fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
4555{
4556	if (m_enableLog)
4557		m_log << TestLog::Message << "glProgramUniformMatrix3fv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 3*3)) << ");" << TestLog::EndMessage;
4558	m_gl.programUniformMatrix3fv(program, location, count, transpose, value);
4559}
4560
4561void CallLogWrapper::glProgramUniformMatrix3x2dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4562{
4563	if (m_enableLog)
4564		m_log << TestLog::Message << "glProgramUniformMatrix3x2dv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4565	m_gl.programUniformMatrix3x2dv(program, location, count, transpose, value);
4566}
4567
4568void CallLogWrapper::glProgramUniformMatrix3x2dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4569{
4570	if (m_enableLog)
4571		m_log << TestLog::Message << "glProgramUniformMatrix3x2dvEXT(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4572	m_gl.programUniformMatrix3x2dvEXT(program, location, count, transpose, value);
4573}
4574
4575void CallLogWrapper::glProgramUniformMatrix3x2fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
4576{
4577	if (m_enableLog)
4578		m_log << TestLog::Message << "glProgramUniformMatrix3x2fv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 3*2)) << ");" << TestLog::EndMessage;
4579	m_gl.programUniformMatrix3x2fv(program, location, count, transpose, value);
4580}
4581
4582void CallLogWrapper::glProgramUniformMatrix3x4dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4583{
4584	if (m_enableLog)
4585		m_log << TestLog::Message << "glProgramUniformMatrix3x4dv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4586	m_gl.programUniformMatrix3x4dv(program, location, count, transpose, value);
4587}
4588
4589void CallLogWrapper::glProgramUniformMatrix3x4dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4590{
4591	if (m_enableLog)
4592		m_log << TestLog::Message << "glProgramUniformMatrix3x4dvEXT(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4593	m_gl.programUniformMatrix3x4dvEXT(program, location, count, transpose, value);
4594}
4595
4596void CallLogWrapper::glProgramUniformMatrix3x4fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
4597{
4598	if (m_enableLog)
4599		m_log << TestLog::Message << "glProgramUniformMatrix3x4fv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 3*4)) << ");" << TestLog::EndMessage;
4600	m_gl.programUniformMatrix3x4fv(program, location, count, transpose, value);
4601}
4602
4603void CallLogWrapper::glProgramUniformMatrix4dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4604{
4605	if (m_enableLog)
4606		m_log << TestLog::Message << "glProgramUniformMatrix4dv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4607	m_gl.programUniformMatrix4dv(program, location, count, transpose, value);
4608}
4609
4610void CallLogWrapper::glProgramUniformMatrix4dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4611{
4612	if (m_enableLog)
4613		m_log << TestLog::Message << "glProgramUniformMatrix4dvEXT(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4614	m_gl.programUniformMatrix4dvEXT(program, location, count, transpose, value);
4615}
4616
4617void CallLogWrapper::glProgramUniformMatrix4fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
4618{
4619	if (m_enableLog)
4620		m_log << TestLog::Message << "glProgramUniformMatrix4fv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 4*4)) << ");" << TestLog::EndMessage;
4621	m_gl.programUniformMatrix4fv(program, location, count, transpose, value);
4622}
4623
4624void CallLogWrapper::glProgramUniformMatrix4x2dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4625{
4626	if (m_enableLog)
4627		m_log << TestLog::Message << "glProgramUniformMatrix4x2dv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4628	m_gl.programUniformMatrix4x2dv(program, location, count, transpose, value);
4629}
4630
4631void CallLogWrapper::glProgramUniformMatrix4x2dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4632{
4633	if (m_enableLog)
4634		m_log << TestLog::Message << "glProgramUniformMatrix4x2dvEXT(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4635	m_gl.programUniformMatrix4x2dvEXT(program, location, count, transpose, value);
4636}
4637
4638void CallLogWrapper::glProgramUniformMatrix4x2fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
4639{
4640	if (m_enableLog)
4641		m_log << TestLog::Message << "glProgramUniformMatrix4x2fv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 4*2)) << ");" << TestLog::EndMessage;
4642	m_gl.programUniformMatrix4x2fv(program, location, count, transpose, value);
4643}
4644
4645void CallLogWrapper::glProgramUniformMatrix4x3dv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4646{
4647	if (m_enableLog)
4648		m_log << TestLog::Message << "glProgramUniformMatrix4x3dv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4649	m_gl.programUniformMatrix4x3dv(program, location, count, transpose, value);
4650}
4651
4652void CallLogWrapper::glProgramUniformMatrix4x3dvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
4653{
4654	if (m_enableLog)
4655		m_log << TestLog::Message << "glProgramUniformMatrix4x3dvEXT(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
4656	m_gl.programUniformMatrix4x3dvEXT(program, location, count, transpose, value);
4657}
4658
4659void CallLogWrapper::glProgramUniformMatrix4x3fv (glw::GLuint program, glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
4660{
4661	if (m_enableLog)
4662		m_log << TestLog::Message << "glProgramUniformMatrix4x3fv(" << program << ", " << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 4*3)) << ");" << TestLog::EndMessage;
4663	m_gl.programUniformMatrix4x3fv(program, location, count, transpose, value);
4664}
4665
4666void CallLogWrapper::glProvokingVertex (glw::GLenum mode)
4667{
4668	if (m_enableLog)
4669		m_log << TestLog::Message << "glProvokingVertex(" << getProvokingVertexStr(mode) << ");" << TestLog::EndMessage;
4670	m_gl.provokingVertex(mode);
4671}
4672
4673void CallLogWrapper::glPushClientAttribDefaultEXT (glw::GLbitfield mask)
4674{
4675	if (m_enableLog)
4676		m_log << TestLog::Message << "glPushClientAttribDefaultEXT(" << toHex(mask) << ");" << TestLog::EndMessage;
4677	m_gl.pushClientAttribDefaultEXT(mask);
4678}
4679
4680void CallLogWrapper::glPushDebugGroup (glw::GLenum source, glw::GLuint id, glw::GLsizei length, const glw::GLchar *message)
4681{
4682	if (m_enableLog)
4683		m_log << TestLog::Message << "glPushDebugGroup(" << getDebugMessageSourceStr(source) << ", " << id << ", " << length << ", " << getStringStr(message) << ");" << TestLog::EndMessage;
4684	m_gl.pushDebugGroup(source, id, length, message);
4685}
4686
4687void CallLogWrapper::glPushGroupMarkerEXT (glw::GLsizei length, const glw::GLchar *marker)
4688{
4689	if (m_enableLog)
4690		m_log << TestLog::Message << "glPushGroupMarkerEXT(" << length << ", " << getStringStr(marker) << ");" << TestLog::EndMessage;
4691	m_gl.pushGroupMarkerEXT(length, marker);
4692}
4693
4694void CallLogWrapper::glQueryCounter (glw::GLuint id, glw::GLenum target)
4695{
4696	if (m_enableLog)
4697		m_log << TestLog::Message << "glQueryCounter(" << id << ", " << toHex(target) << ");" << TestLog::EndMessage;
4698	m_gl.queryCounter(id, target);
4699}
4700
4701void CallLogWrapper::glReadBuffer (glw::GLenum src)
4702{
4703	if (m_enableLog)
4704		m_log << TestLog::Message << "glReadBuffer(" << getDrawReadBufferStr(src) << ");" << TestLog::EndMessage;
4705	m_gl.readBuffer(src);
4706}
4707
4708void CallLogWrapper::glReadPixels (glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLenum type, void *pixels)
4709{
4710	if (m_enableLog)
4711		m_log << TestLog::Message << "glReadPixels(" << x << ", " << y << ", " << width << ", " << height << ", " << getUncompressedTextureFormatStr(format) << ", " << getTypeStr(type) << ", " << pixels << ");" << TestLog::EndMessage;
4712	m_gl.readPixels(x, y, width, height, format, type, pixels);
4713}
4714
4715void CallLogWrapper::glReadnPixels (glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLenum type, glw::GLsizei bufSize, void *data)
4716{
4717	if (m_enableLog)
4718		m_log << TestLog::Message << "glReadnPixels(" << x << ", " << y << ", " << width << ", " << height << ", " << toHex(format) << ", " << toHex(type) << ", " << bufSize << ", " << data << ");" << TestLog::EndMessage;
4719	m_gl.readnPixels(x, y, width, height, format, type, bufSize, data);
4720}
4721
4722void CallLogWrapper::glReleaseShaderCompiler (void)
4723{
4724	if (m_enableLog)
4725		m_log << TestLog::Message << "glReleaseShaderCompiler(" << ");" << TestLog::EndMessage;
4726	m_gl.releaseShaderCompiler();
4727}
4728
4729void CallLogWrapper::glRenderGpuMaskNV (glw::GLbitfield mask)
4730{
4731	if (m_enableLog)
4732		m_log << TestLog::Message << "glRenderGpuMaskNV(" << toHex(mask) << ");" << TestLog::EndMessage;
4733	m_gl.renderGpuMaskNV(mask);
4734}
4735
4736void CallLogWrapper::glRenderbufferStorage (glw::GLenum target, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
4737{
4738	if (m_enableLog)
4739		m_log << TestLog::Message << "glRenderbufferStorage(" << getFramebufferTargetStr(target) << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4740	m_gl.renderbufferStorage(target, internalformat, width, height);
4741}
4742
4743void CallLogWrapper::glRenderbufferStorageMultisample (glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
4744{
4745	if (m_enableLog)
4746		m_log << TestLog::Message << "glRenderbufferStorageMultisample(" << getFramebufferTargetStr(target) << ", " << samples << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4747	m_gl.renderbufferStorageMultisample(target, samples, internalformat, width, height);
4748}
4749
4750void CallLogWrapper::glRenderbufferStorageMultisampleEXT (glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
4751{
4752	if (m_enableLog)
4753		m_log << TestLog::Message << "glRenderbufferStorageMultisampleEXT(" << toHex(target) << ", " << samples << ", " << toHex(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4754	m_gl.renderbufferStorageMultisampleEXT(target, samples, internalformat, width, height);
4755}
4756
4757void CallLogWrapper::glResumeTransformFeedback (void)
4758{
4759	if (m_enableLog)
4760		m_log << TestLog::Message << "glResumeTransformFeedback(" << ");" << TestLog::EndMessage;
4761	m_gl.resumeTransformFeedback();
4762}
4763
4764void CallLogWrapper::glSampleCoverage (glw::GLfloat value, glw::GLboolean invert)
4765{
4766	if (m_enableLog)
4767		m_log << TestLog::Message << "glSampleCoverage(" << value << ", " << getBooleanStr(invert) << ");" << TestLog::EndMessage;
4768	m_gl.sampleCoverage(value, invert);
4769}
4770
4771void CallLogWrapper::glSampleMaski (glw::GLuint maskNumber, glw::GLbitfield mask)
4772{
4773	if (m_enableLog)
4774		m_log << TestLog::Message << "glSampleMaski(" << maskNumber << ", " << toHex(mask) << ");" << TestLog::EndMessage;
4775	m_gl.sampleMaski(maskNumber, mask);
4776}
4777
4778void CallLogWrapper::glSamplerParameterIiv (glw::GLuint sampler, glw::GLenum pname, const glw::GLint *param)
4779{
4780	if (m_enableLog)
4781		m_log << TestLog::Message << "glSamplerParameterIiv(" << sampler << ", " << getTextureParameterStr(pname) << ", " << getPointerStr(param, getTextureParamNumArgs(pname)) << ");" << TestLog::EndMessage;
4782	m_gl.samplerParameterIiv(sampler, pname, param);
4783}
4784
4785void CallLogWrapper::glSamplerParameterIuiv (glw::GLuint sampler, glw::GLenum pname, const glw::GLuint *param)
4786{
4787	if (m_enableLog)
4788		m_log << TestLog::Message << "glSamplerParameterIuiv(" << sampler << ", " << getTextureParameterStr(pname) << ", " << getPointerStr(param, getTextureParamNumArgs(pname)) << ");" << TestLog::EndMessage;
4789	m_gl.samplerParameterIuiv(sampler, pname, param);
4790}
4791
4792void CallLogWrapper::glSamplerParameterf (glw::GLuint sampler, glw::GLenum pname, glw::GLfloat param)
4793{
4794	if (m_enableLog)
4795		m_log << TestLog::Message << "glSamplerParameterf(" << sampler << ", " << getTextureParameterStr(pname) << ", " << param << ");" << TestLog::EndMessage;
4796	m_gl.samplerParameterf(sampler, pname, param);
4797}
4798
4799void CallLogWrapper::glSamplerParameterfv (glw::GLuint sampler, glw::GLenum pname, const glw::GLfloat *param)
4800{
4801	if (m_enableLog)
4802		m_log << TestLog::Message << "glSamplerParameterfv(" << sampler << ", " << getTextureParameterStr(pname) << ", " << getPointerStr(param, getTextureParamNumArgs(pname)) << ");" << TestLog::EndMessage;
4803	m_gl.samplerParameterfv(sampler, pname, param);
4804}
4805
4806void CallLogWrapper::glSamplerParameteri (glw::GLuint sampler, glw::GLenum pname, glw::GLint param)
4807{
4808	if (m_enableLog)
4809		m_log << TestLog::Message << "glSamplerParameteri(" << sampler << ", " << getTextureParameterStr(pname) << ", " << getTextureParameterValueStr(pname, param) << ");" << TestLog::EndMessage;
4810	m_gl.samplerParameteri(sampler, pname, param);
4811}
4812
4813void CallLogWrapper::glSamplerParameteriv (glw::GLuint sampler, glw::GLenum pname, const glw::GLint *param)
4814{
4815	if (m_enableLog)
4816		m_log << TestLog::Message << "glSamplerParameteriv(" << sampler << ", " << getTextureParameterStr(pname) << ", " << getPointerStr(param, getTextureParamNumArgs(pname)) << ");" << TestLog::EndMessage;
4817	m_gl.samplerParameteriv(sampler, pname, param);
4818}
4819
4820void CallLogWrapper::glScissor (glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
4821{
4822	if (m_enableLog)
4823		m_log << TestLog::Message << "glScissor(" << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4824	m_gl.scissor(x, y, width, height);
4825}
4826
4827void CallLogWrapper::glScissorArrayv (glw::GLuint first, glw::GLsizei count, const glw::GLint *v)
4828{
4829	if (m_enableLog)
4830		m_log << TestLog::Message << "glScissorArrayv(" << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
4831	m_gl.scissorArrayv(first, count, v);
4832}
4833
4834void CallLogWrapper::glScissorIndexed (glw::GLuint index, glw::GLint left, glw::GLint bottom, glw::GLsizei width, glw::GLsizei height)
4835{
4836	if (m_enableLog)
4837		m_log << TestLog::Message << "glScissorIndexed(" << index << ", " << left << ", " << bottom << ", " << width << ", " << height << ");" << TestLog::EndMessage;
4838	m_gl.scissorIndexed(index, left, bottom, width, height);
4839}
4840
4841void CallLogWrapper::glScissorIndexedv (glw::GLuint index, const glw::GLint *v)
4842{
4843	if (m_enableLog)
4844		m_log << TestLog::Message << "glScissorIndexedv(" << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
4845	m_gl.scissorIndexedv(index, v);
4846}
4847
4848void CallLogWrapper::glShaderBinary (glw::GLsizei count, const glw::GLuint *shaders, glw::GLenum binaryformat, const void *binary, glw::GLsizei length)
4849{
4850	if (m_enableLog)
4851		m_log << TestLog::Message << "glShaderBinary(" << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(shaders))) << ", " << toHex(binaryformat) << ", " << binary << ", " << length << ");" << TestLog::EndMessage;
4852	m_gl.shaderBinary(count, shaders, binaryformat, binary, length);
4853}
4854
4855void CallLogWrapper::glShaderSource (glw::GLuint shader, glw::GLsizei count, const glw::GLchar *const*string, const glw::GLint *length)
4856{
4857	if (m_enableLog)
4858		m_log << TestLog::Message << "glShaderSource(" << shader << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(string))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(length))) << ");" << TestLog::EndMessage;
4859	m_gl.shaderSource(shader, count, string, length);
4860}
4861
4862void CallLogWrapper::glShaderStorageBlockBinding (glw::GLuint program, glw::GLuint storageBlockIndex, glw::GLuint storageBlockBinding)
4863{
4864	if (m_enableLog)
4865		m_log << TestLog::Message << "glShaderStorageBlockBinding(" << program << ", " << storageBlockIndex << ", " << storageBlockBinding << ");" << TestLog::EndMessage;
4866	m_gl.shaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);
4867}
4868
4869void CallLogWrapper::glSpecializeShader (glw::GLuint shader, const glw::GLchar *pEntryPoint, glw::GLuint numSpecializationConstants, const glw::GLuint *pConstantIndex, const glw::GLuint *pConstantValue)
4870{
4871	if (m_enableLog)
4872		m_log << TestLog::Message << "glSpecializeShader(" << shader << ", " << getStringStr(pEntryPoint) << ", " << numSpecializationConstants << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(pConstantIndex))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(pConstantValue))) << ");" << TestLog::EndMessage;
4873	m_gl.specializeShader(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue);
4874}
4875
4876void CallLogWrapper::glStencilFunc (glw::GLenum func, glw::GLint ref, glw::GLuint mask)
4877{
4878	if (m_enableLog)
4879		m_log << TestLog::Message << "glStencilFunc(" << getCompareFuncStr(func) << ", " << ref << ", " << mask << ");" << TestLog::EndMessage;
4880	m_gl.stencilFunc(func, ref, mask);
4881}
4882
4883void CallLogWrapper::glStencilFuncSeparate (glw::GLenum face, glw::GLenum func, glw::GLint ref, glw::GLuint mask)
4884{
4885	if (m_enableLog)
4886		m_log << TestLog::Message << "glStencilFuncSeparate(" << getFaceStr(face) << ", " << getCompareFuncStr(func) << ", " << ref << ", " << mask << ");" << TestLog::EndMessage;
4887	m_gl.stencilFuncSeparate(face, func, ref, mask);
4888}
4889
4890void CallLogWrapper::glStencilMask (glw::GLuint mask)
4891{
4892	if (m_enableLog)
4893		m_log << TestLog::Message << "glStencilMask(" << mask << ");" << TestLog::EndMessage;
4894	m_gl.stencilMask(mask);
4895}
4896
4897void CallLogWrapper::glStencilMaskSeparate (glw::GLenum face, glw::GLuint mask)
4898{
4899	if (m_enableLog)
4900		m_log << TestLog::Message << "glStencilMaskSeparate(" << getFaceStr(face) << ", " << mask << ");" << TestLog::EndMessage;
4901	m_gl.stencilMaskSeparate(face, mask);
4902}
4903
4904void CallLogWrapper::glStencilOp (glw::GLenum fail, glw::GLenum zfail, glw::GLenum zpass)
4905{
4906	if (m_enableLog)
4907		m_log << TestLog::Message << "glStencilOp(" << getStencilOpStr(fail) << ", " << getStencilOpStr(zfail) << ", " << getStencilOpStr(zpass) << ");" << TestLog::EndMessage;
4908	m_gl.stencilOp(fail, zfail, zpass);
4909}
4910
4911void CallLogWrapper::glStencilOpSeparate (glw::GLenum face, glw::GLenum sfail, glw::GLenum dpfail, glw::GLenum dppass)
4912{
4913	if (m_enableLog)
4914		m_log << TestLog::Message << "glStencilOpSeparate(" << getFaceStr(face) << ", " << getStencilOpStr(sfail) << ", " << getStencilOpStr(dpfail) << ", " << getStencilOpStr(dppass) << ");" << TestLog::EndMessage;
4915	m_gl.stencilOpSeparate(face, sfail, dpfail, dppass);
4916}
4917
4918void CallLogWrapper::glTexBuffer (glw::GLenum target, glw::GLenum internalformat, glw::GLuint buffer)
4919{
4920	if (m_enableLog)
4921		m_log << TestLog::Message << "glTexBuffer(" << getBufferTargetStr(target) << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << buffer << ");" << TestLog::EndMessage;
4922	m_gl.texBuffer(target, internalformat, buffer);
4923}
4924
4925void CallLogWrapper::glTexBufferRange (glw::GLenum target, glw::GLenum internalformat, glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size)
4926{
4927	if (m_enableLog)
4928		m_log << TestLog::Message << "glTexBufferRange(" << getBufferTargetStr(target) << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << buffer << ", " << offset << ", " << size << ");" << TestLog::EndMessage;
4929	m_gl.texBufferRange(target, internalformat, buffer, offset, size);
4930}
4931
4932void CallLogWrapper::glTexImage1D (glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
4933{
4934	if (m_enableLog)
4935		m_log << TestLog::Message << "glTexImage1D(" << getTextureTargetStr(target) << ", " << level << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << width << ", " << border << ", " << getUncompressedTextureFormatStr(format) << ", " << getTypeStr(type) << ", " << pixels << ");" << TestLog::EndMessage;
4936	m_gl.texImage1D(target, level, internalformat, width, border, format, type, pixels);
4937}
4938
4939void CallLogWrapper::glTexImage2D (glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
4940{
4941	if (m_enableLog)
4942		m_log << TestLog::Message << "glTexImage2D(" << getTextureTargetStr(target) << ", " << level << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << width << ", " << height << ", " << border << ", " << getUncompressedTextureFormatStr(format) << ", " << getTypeStr(type) << ", " << pixels << ");" << TestLog::EndMessage;
4943	m_gl.texImage2D(target, level, internalformat, width, height, border, format, type, pixels);
4944}
4945
4946void CallLogWrapper::glTexImage2DMultisample (glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLboolean fixedsamplelocations)
4947{
4948	if (m_enableLog)
4949		m_log << TestLog::Message << "glTexImage2DMultisample(" << getTextureTargetStr(target) << ", " << samples << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << width << ", " << height << ", " << getBooleanStr(fixedsamplelocations) << ");" << TestLog::EndMessage;
4950	m_gl.texImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
4951}
4952
4953void CallLogWrapper::glTexImage3D (glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
4954{
4955	if (m_enableLog)
4956		m_log << TestLog::Message << "glTexImage3D(" << getTextureTargetStr(target) << ", " << level << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << getUncompressedTextureFormatStr(format) << ", " << getTypeStr(type) << ", " << pixels << ");" << TestLog::EndMessage;
4957	m_gl.texImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
4958}
4959
4960void CallLogWrapper::glTexImage3DMultisample (glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLboolean fixedsamplelocations)
4961{
4962	if (m_enableLog)
4963		m_log << TestLog::Message << "glTexImage3DMultisample(" << toHex(target) << ", " << samples << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << getBooleanStr(fixedsamplelocations) << ");" << TestLog::EndMessage;
4964	m_gl.texImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
4965}
4966
4967void CallLogWrapper::glTexImage3DOES (glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
4968{
4969	if (m_enableLog)
4970		m_log << TestLog::Message << "glTexImage3DOES(" << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
4971	m_gl.texImage3DOES(target, level, internalformat, width, height, depth, border, format, type, pixels);
4972}
4973
4974void CallLogWrapper::glTexPageCommitmentARB (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLboolean commit)
4975{
4976	if (m_enableLog)
4977		m_log << TestLog::Message << "glTexPageCommitmentARB(" << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << getBooleanStr(commit) << ");" << TestLog::EndMessage;
4978	m_gl.texPageCommitmentARB(target, level, xoffset, yoffset, zoffset, width, height, depth, commit);
4979}
4980
4981void CallLogWrapper::glTexParameterIiv (glw::GLenum target, glw::GLenum pname, const glw::GLint *params)
4982{
4983	if (m_enableLog)
4984		m_log << TestLog::Message << "glTexParameterIiv(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << getPointerStr(params, getTextureParamNumArgs(pname)) << ");" << TestLog::EndMessage;
4985	m_gl.texParameterIiv(target, pname, params);
4986}
4987
4988void CallLogWrapper::glTexParameterIuiv (glw::GLenum target, glw::GLenum pname, const glw::GLuint *params)
4989{
4990	if (m_enableLog)
4991		m_log << TestLog::Message << "glTexParameterIuiv(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << getPointerStr(params, getTextureParamNumArgs(pname)) << ");" << TestLog::EndMessage;
4992	m_gl.texParameterIuiv(target, pname, params);
4993}
4994
4995void CallLogWrapper::glTexParameterf (glw::GLenum target, glw::GLenum pname, glw::GLfloat param)
4996{
4997	if (m_enableLog)
4998		m_log << TestLog::Message << "glTexParameterf(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << param << ");" << TestLog::EndMessage;
4999	m_gl.texParameterf(target, pname, param);
5000}
5001
5002void CallLogWrapper::glTexParameterfv (glw::GLenum target, glw::GLenum pname, const glw::GLfloat *params)
5003{
5004	if (m_enableLog)
5005		m_log << TestLog::Message << "glTexParameterfv(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << getPointerStr(params, getTextureParamNumArgs(pname)) << ");" << TestLog::EndMessage;
5006	m_gl.texParameterfv(target, pname, params);
5007}
5008
5009void CallLogWrapper::glTexParameteri (glw::GLenum target, glw::GLenum pname, glw::GLint param)
5010{
5011	if (m_enableLog)
5012		m_log << TestLog::Message << "glTexParameteri(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << getTextureParameterValueStr(pname, param) << ");" << TestLog::EndMessage;
5013	m_gl.texParameteri(target, pname, param);
5014}
5015
5016void CallLogWrapper::glTexParameteriv (glw::GLenum target, glw::GLenum pname, const glw::GLint *params)
5017{
5018	if (m_enableLog)
5019		m_log << TestLog::Message << "glTexParameteriv(" << getTextureTargetStr(target) << ", " << getTextureParameterStr(pname) << ", " << getPointerStr(params, getTextureParamNumArgs(pname)) << ");" << TestLog::EndMessage;
5020	m_gl.texParameteriv(target, pname, params);
5021}
5022
5023void CallLogWrapper::glTexStorage1D (glw::GLenum target, glw::GLsizei levels, glw::GLenum internalformat, glw::GLsizei width)
5024{
5025	if (m_enableLog)
5026		m_log << TestLog::Message << "glTexStorage1D(" << toHex(target) << ", " << levels << ", " << toHex(internalformat) << ", " << width << ");" << TestLog::EndMessage;
5027	m_gl.texStorage1D(target, levels, internalformat, width);
5028}
5029
5030void CallLogWrapper::glTexStorage2D (glw::GLenum target, glw::GLsizei levels, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
5031{
5032	if (m_enableLog)
5033		m_log << TestLog::Message << "glTexStorage2D(" << getTextureTargetStr(target) << ", " << levels << ", " << getTextureFormatStr(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
5034	m_gl.texStorage2D(target, levels, internalformat, width, height);
5035}
5036
5037void CallLogWrapper::glTexStorage2DMultisample (glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLboolean fixedsamplelocations)
5038{
5039	if (m_enableLog)
5040		m_log << TestLog::Message << "glTexStorage2DMultisample(" << getTextureTargetStr(target) << ", " << samples << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << width << ", " << height << ", " << getBooleanStr(fixedsamplelocations) << ");" << TestLog::EndMessage;
5041	m_gl.texStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
5042}
5043
5044void CallLogWrapper::glTexStorage3D (glw::GLenum target, glw::GLsizei levels, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth)
5045{
5046	if (m_enableLog)
5047		m_log << TestLog::Message << "glTexStorage3D(" << getTextureTargetStr(target) << ", " << levels << ", " << getTextureFormatStr(internalformat) << ", " << width << ", " << height << ", " << depth << ");" << TestLog::EndMessage;
5048	m_gl.texStorage3D(target, levels, internalformat, width, height, depth);
5049}
5050
5051void CallLogWrapper::glTexStorage3DMultisample (glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLboolean fixedsamplelocations)
5052{
5053	if (m_enableLog)
5054		m_log << TestLog::Message << "glTexStorage3DMultisample(" << getTextureTargetStr(target) << ", " << samples << ", " << getUncompressedTextureFormatStr(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << getBooleanStr(fixedsamplelocations) << ");" << TestLog::EndMessage;
5055	m_gl.texStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
5056}
5057
5058void CallLogWrapper::glTexSubImage1D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLenum type, const void *pixels)
5059{
5060	if (m_enableLog)
5061		m_log << TestLog::Message << "glTexSubImage1D(" << getTextureTargetStr(target) << ", " << level << ", " << xoffset << ", " << width << ", " << getUncompressedTextureFormatStr(format) << ", " << getTypeStr(type) << ", " << pixels << ");" << TestLog::EndMessage;
5062	m_gl.texSubImage1D(target, level, xoffset, width, format, type, pixels);
5063}
5064
5065void CallLogWrapper::glTexSubImage2D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLenum type, const void *pixels)
5066{
5067	if (m_enableLog)
5068		m_log << TestLog::Message << "glTexSubImage2D(" << getTextureTargetStr(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << width << ", " << height << ", " << getUncompressedTextureFormatStr(format) << ", " << getTypeStr(type) << ", " << pixels << ");" << TestLog::EndMessage;
5069	m_gl.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
5070}
5071
5072void CallLogWrapper::glTexSubImage3D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, const void *pixels)
5073{
5074	if (m_enableLog)
5075		m_log << TestLog::Message << "glTexSubImage3D(" << getTextureTargetStr(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << getUncompressedTextureFormatStr(format) << ", " << getTypeStr(type) << ", " << pixels << ");" << TestLog::EndMessage;
5076	m_gl.texSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
5077}
5078
5079void CallLogWrapper::glTexSubImage3DOES (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, const void *pixels)
5080{
5081	if (m_enableLog)
5082		m_log << TestLog::Message << "glTexSubImage3DOES(" << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5083	m_gl.texSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
5084}
5085
5086void CallLogWrapper::glTextureBarrier (void)
5087{
5088	if (m_enableLog)
5089		m_log << TestLog::Message << "glTextureBarrier(" << ");" << TestLog::EndMessage;
5090	m_gl.textureBarrier();
5091}
5092
5093void CallLogWrapper::glTextureBuffer (glw::GLuint texture, glw::GLenum internalformat, glw::GLuint buffer)
5094{
5095	if (m_enableLog)
5096		m_log << TestLog::Message << "glTextureBuffer(" << texture << ", " << toHex(internalformat) << ", " << buffer << ");" << TestLog::EndMessage;
5097	m_gl.textureBuffer(texture, internalformat, buffer);
5098}
5099
5100void CallLogWrapper::glTextureBufferEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum internalformat, glw::GLuint buffer)
5101{
5102	if (m_enableLog)
5103		m_log << TestLog::Message << "glTextureBufferEXT(" << texture << ", " << toHex(target) << ", " << toHex(internalformat) << ", " << buffer << ");" << TestLog::EndMessage;
5104	m_gl.textureBufferEXT(texture, target, internalformat, buffer);
5105}
5106
5107void CallLogWrapper::glTextureBufferRange (glw::GLuint texture, glw::GLenum internalformat, glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size)
5108{
5109	if (m_enableLog)
5110		m_log << TestLog::Message << "glTextureBufferRange(" << texture << ", " << toHex(internalformat) << ", " << buffer << ", " << offset << ", " << size << ");" << TestLog::EndMessage;
5111	m_gl.textureBufferRange(texture, internalformat, buffer, offset, size);
5112}
5113
5114void CallLogWrapper::glTextureBufferRangeEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum internalformat, glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size)
5115{
5116	if (m_enableLog)
5117		m_log << TestLog::Message << "glTextureBufferRangeEXT(" << texture << ", " << toHex(target) << ", " << toHex(internalformat) << ", " << buffer << ", " << offset << ", " << size << ");" << TestLog::EndMessage;
5118	m_gl.textureBufferRangeEXT(texture, target, internalformat, buffer, offset, size);
5119}
5120
5121void CallLogWrapper::glTextureImage1DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
5122{
5123	if (m_enableLog)
5124		m_log << TestLog::Message << "glTextureImage1DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << internalformat << ", " << width << ", " << border << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5125	m_gl.textureImage1DEXT(texture, target, level, internalformat, width, border, format, type, pixels);
5126}
5127
5128void CallLogWrapper::glTextureImage2DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
5129{
5130	if (m_enableLog)
5131		m_log << TestLog::Message << "glTextureImage2DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << internalformat << ", " << width << ", " << height << ", " << border << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5132	m_gl.textureImage2DEXT(texture, target, level, internalformat, width, height, border, format, type, pixels);
5133}
5134
5135void CallLogWrapper::glTextureImage3DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
5136{
5137	if (m_enableLog)
5138		m_log << TestLog::Message << "glTextureImage3DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << internalformat << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5139	m_gl.textureImage3DEXT(texture, target, level, internalformat, width, height, depth, border, format, type, pixels);
5140}
5141
5142void CallLogWrapper::glTexturePageCommitmentEXT (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLboolean commit)
5143{
5144	if (m_enableLog)
5145		m_log << TestLog::Message << "glTexturePageCommitmentEXT(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << getBooleanStr(commit) << ");" << TestLog::EndMessage;
5146	m_gl.texturePageCommitmentEXT(texture, level, xoffset, yoffset, zoffset, width, height, depth, commit);
5147}
5148
5149void CallLogWrapper::glTextureParameterIiv (glw::GLuint texture, glw::GLenum pname, const glw::GLint *params)
5150{
5151	if (m_enableLog)
5152		m_log << TestLog::Message << "glTextureParameterIiv(" << texture << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
5153	m_gl.textureParameterIiv(texture, pname, params);
5154}
5155
5156void CallLogWrapper::glTextureParameterIivEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, const glw::GLint *params)
5157{
5158	if (m_enableLog)
5159		m_log << TestLog::Message << "glTextureParameterIivEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
5160	m_gl.textureParameterIivEXT(texture, target, pname, params);
5161}
5162
5163void CallLogWrapper::glTextureParameterIuiv (glw::GLuint texture, glw::GLenum pname, const glw::GLuint *params)
5164{
5165	if (m_enableLog)
5166		m_log << TestLog::Message << "glTextureParameterIuiv(" << texture << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
5167	m_gl.textureParameterIuiv(texture, pname, params);
5168}
5169
5170void CallLogWrapper::glTextureParameterIuivEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, const glw::GLuint *params)
5171{
5172	if (m_enableLog)
5173		m_log << TestLog::Message << "glTextureParameterIuivEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
5174	m_gl.textureParameterIuivEXT(texture, target, pname, params);
5175}
5176
5177void CallLogWrapper::glTextureParameterf (glw::GLuint texture, glw::GLenum pname, glw::GLfloat param)
5178{
5179	if (m_enableLog)
5180		m_log << TestLog::Message << "glTextureParameterf(" << texture << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
5181	m_gl.textureParameterf(texture, pname, param);
5182}
5183
5184void CallLogWrapper::glTextureParameterfEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, glw::GLfloat param)
5185{
5186	if (m_enableLog)
5187		m_log << TestLog::Message << "glTextureParameterfEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
5188	m_gl.textureParameterfEXT(texture, target, pname, param);
5189}
5190
5191void CallLogWrapper::glTextureParameterfv (glw::GLuint texture, glw::GLenum pname, const glw::GLfloat *param)
5192{
5193	if (m_enableLog)
5194		m_log << TestLog::Message << "glTextureParameterfv(" << texture << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
5195	m_gl.textureParameterfv(texture, pname, param);
5196}
5197
5198void CallLogWrapper::glTextureParameterfvEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, const glw::GLfloat *params)
5199{
5200	if (m_enableLog)
5201		m_log << TestLog::Message << "glTextureParameterfvEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
5202	m_gl.textureParameterfvEXT(texture, target, pname, params);
5203}
5204
5205void CallLogWrapper::glTextureParameteri (glw::GLuint texture, glw::GLenum pname, glw::GLint param)
5206{
5207	if (m_enableLog)
5208		m_log << TestLog::Message << "glTextureParameteri(" << texture << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
5209	m_gl.textureParameteri(texture, pname, param);
5210}
5211
5212void CallLogWrapper::glTextureParameteriEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, glw::GLint param)
5213{
5214	if (m_enableLog)
5215		m_log << TestLog::Message << "glTextureParameteriEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << param << ");" << TestLog::EndMessage;
5216	m_gl.textureParameteriEXT(texture, target, pname, param);
5217}
5218
5219void CallLogWrapper::glTextureParameteriv (glw::GLuint texture, glw::GLenum pname, const glw::GLint *param)
5220{
5221	if (m_enableLog)
5222		m_log << TestLog::Message << "glTextureParameteriv(" << texture << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(param))) << ");" << TestLog::EndMessage;
5223	m_gl.textureParameteriv(texture, pname, param);
5224}
5225
5226void CallLogWrapper::glTextureParameterivEXT (glw::GLuint texture, glw::GLenum target, glw::GLenum pname, const glw::GLint *params)
5227{
5228	if (m_enableLog)
5229		m_log << TestLog::Message << "glTextureParameterivEXT(" << texture << ", " << toHex(target) << ", " << toHex(pname) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
5230	m_gl.textureParameterivEXT(texture, target, pname, params);
5231}
5232
5233void CallLogWrapper::glTextureRenderbufferEXT (glw::GLuint texture, glw::GLenum target, glw::GLuint renderbuffer)
5234{
5235	if (m_enableLog)
5236		m_log << TestLog::Message << "glTextureRenderbufferEXT(" << texture << ", " << toHex(target) << ", " << renderbuffer << ");" << TestLog::EndMessage;
5237	m_gl.textureRenderbufferEXT(texture, target, renderbuffer);
5238}
5239
5240void CallLogWrapper::glTextureStorage1D (glw::GLuint texture, glw::GLsizei levels, glw::GLenum internalformat, glw::GLsizei width)
5241{
5242	if (m_enableLog)
5243		m_log << TestLog::Message << "glTextureStorage1D(" << texture << ", " << levels << ", " << toHex(internalformat) << ", " << width << ");" << TestLog::EndMessage;
5244	m_gl.textureStorage1D(texture, levels, internalformat, width);
5245}
5246
5247void CallLogWrapper::glTextureStorage1DEXT (glw::GLuint texture, glw::GLenum target, glw::GLsizei levels, glw::GLenum internalformat, glw::GLsizei width)
5248{
5249	if (m_enableLog)
5250		m_log << TestLog::Message << "glTextureStorage1DEXT(" << texture << ", " << toHex(target) << ", " << levels << ", " << toHex(internalformat) << ", " << width << ");" << TestLog::EndMessage;
5251	m_gl.textureStorage1DEXT(texture, target, levels, internalformat, width);
5252}
5253
5254void CallLogWrapper::glTextureStorage2D (glw::GLuint texture, glw::GLsizei levels, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
5255{
5256	if (m_enableLog)
5257		m_log << TestLog::Message << "glTextureStorage2D(" << texture << ", " << levels << ", " << toHex(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
5258	m_gl.textureStorage2D(texture, levels, internalformat, width, height);
5259}
5260
5261void CallLogWrapper::glTextureStorage2DEXT (glw::GLuint texture, glw::GLenum target, glw::GLsizei levels, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height)
5262{
5263	if (m_enableLog)
5264		m_log << TestLog::Message << "glTextureStorage2DEXT(" << texture << ", " << toHex(target) << ", " << levels << ", " << toHex(internalformat) << ", " << width << ", " << height << ");" << TestLog::EndMessage;
5265	m_gl.textureStorage2DEXT(texture, target, levels, internalformat, width, height);
5266}
5267
5268void CallLogWrapper::glTextureStorage2DMultisample (glw::GLuint texture, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLboolean fixedsamplelocations)
5269{
5270	if (m_enableLog)
5271		m_log << TestLog::Message << "glTextureStorage2DMultisample(" << texture << ", " << samples << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << getBooleanStr(fixedsamplelocations) << ");" << TestLog::EndMessage;
5272	m_gl.textureStorage2DMultisample(texture, samples, internalformat, width, height, fixedsamplelocations);
5273}
5274
5275void CallLogWrapper::glTextureStorage2DMultisampleEXT (glw::GLuint texture, glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLboolean fixedsamplelocations)
5276{
5277	if (m_enableLog)
5278		m_log << TestLog::Message << "glTextureStorage2DMultisampleEXT(" << texture << ", " << toHex(target) << ", " << samples << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << getBooleanStr(fixedsamplelocations) << ");" << TestLog::EndMessage;
5279	m_gl.textureStorage2DMultisampleEXT(texture, target, samples, internalformat, width, height, fixedsamplelocations);
5280}
5281
5282void CallLogWrapper::glTextureStorage3D (glw::GLuint texture, glw::GLsizei levels, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth)
5283{
5284	if (m_enableLog)
5285		m_log << TestLog::Message << "glTextureStorage3D(" << texture << ", " << levels << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ");" << TestLog::EndMessage;
5286	m_gl.textureStorage3D(texture, levels, internalformat, width, height, depth);
5287}
5288
5289void CallLogWrapper::glTextureStorage3DEXT (glw::GLuint texture, glw::GLenum target, glw::GLsizei levels, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth)
5290{
5291	if (m_enableLog)
5292		m_log << TestLog::Message << "glTextureStorage3DEXT(" << texture << ", " << toHex(target) << ", " << levels << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ");" << TestLog::EndMessage;
5293	m_gl.textureStorage3DEXT(texture, target, levels, internalformat, width, height, depth);
5294}
5295
5296void CallLogWrapper::glTextureStorage3DMultisample (glw::GLuint texture, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLboolean fixedsamplelocations)
5297{
5298	if (m_enableLog)
5299		m_log << TestLog::Message << "glTextureStorage3DMultisample(" << texture << ", " << samples << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << getBooleanStr(fixedsamplelocations) << ");" << TestLog::EndMessage;
5300	m_gl.textureStorage3DMultisample(texture, samples, internalformat, width, height, depth, fixedsamplelocations);
5301}
5302
5303void CallLogWrapper::glTextureStorage3DMultisampleEXT (glw::GLuint texture, glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLboolean fixedsamplelocations)
5304{
5305	if (m_enableLog)
5306		m_log << TestLog::Message << "glTextureStorage3DMultisampleEXT(" << texture << ", " << toHex(target) << ", " << samples << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << getBooleanStr(fixedsamplelocations) << ");" << TestLog::EndMessage;
5307	m_gl.textureStorage3DMultisampleEXT(texture, target, samples, internalformat, width, height, depth, fixedsamplelocations);
5308}
5309
5310void CallLogWrapper::glTextureSubImage1D (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLenum type, const void *pixels)
5311{
5312	if (m_enableLog)
5313		m_log << TestLog::Message << "glTextureSubImage1D(" << texture << ", " << level << ", " << xoffset << ", " << width << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5314	m_gl.textureSubImage1D(texture, level, xoffset, width, format, type, pixels);
5315}
5316
5317void CallLogWrapper::glTextureSubImage1DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLenum type, const void *pixels)
5318{
5319	if (m_enableLog)
5320		m_log << TestLog::Message << "glTextureSubImage1DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << width << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5321	m_gl.textureSubImage1DEXT(texture, target, level, xoffset, width, format, type, pixels);
5322}
5323
5324void CallLogWrapper::glTextureSubImage2D (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLenum type, const void *pixels)
5325{
5326	if (m_enableLog)
5327		m_log << TestLog::Message << "glTextureSubImage2D(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << width << ", " << height << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5328	m_gl.textureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, pixels);
5329}
5330
5331void CallLogWrapper::glTextureSubImage2DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLenum type, const void *pixels)
5332{
5333	if (m_enableLog)
5334		m_log << TestLog::Message << "glTextureSubImage2DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << width << ", " << height << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5335	m_gl.textureSubImage2DEXT(texture, target, level, xoffset, yoffset, width, height, format, type, pixels);
5336}
5337
5338void CallLogWrapper::glTextureSubImage3D (glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, const void *pixels)
5339{
5340	if (m_enableLog)
5341		m_log << TestLog::Message << "glTextureSubImage3D(" << texture << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5342	m_gl.textureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
5343}
5344
5345void CallLogWrapper::glTextureSubImage3DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, const void *pixels)
5346{
5347	if (m_enableLog)
5348		m_log << TestLog::Message << "glTextureSubImage3DEXT(" << texture << ", " << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
5349	m_gl.textureSubImage3DEXT(texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
5350}
5351
5352void CallLogWrapper::glTextureView (glw::GLuint texture, glw::GLenum target, glw::GLuint origtexture, glw::GLenum internalformat, glw::GLuint minlevel, glw::GLuint numlevels, glw::GLuint minlayer, glw::GLuint numlayers)
5353{
5354	if (m_enableLog)
5355		m_log << TestLog::Message << "glTextureView(" << texture << ", " << toHex(target) << ", " << origtexture << ", " << toHex(internalformat) << ", " << minlevel << ", " << numlevels << ", " << minlayer << ", " << numlayers << ");" << TestLog::EndMessage;
5356	m_gl.textureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
5357}
5358
5359void CallLogWrapper::glTransformFeedbackBufferBase (glw::GLuint xfb, glw::GLuint index, glw::GLuint buffer)
5360{
5361	if (m_enableLog)
5362		m_log << TestLog::Message << "glTransformFeedbackBufferBase(" << xfb << ", " << index << ", " << buffer << ");" << TestLog::EndMessage;
5363	m_gl.transformFeedbackBufferBase(xfb, index, buffer);
5364}
5365
5366void CallLogWrapper::glTransformFeedbackBufferRange (glw::GLuint xfb, glw::GLuint index, glw::GLuint buffer, glw::GLintptr offset, glw::GLsizeiptr size)
5367{
5368	if (m_enableLog)
5369		m_log << TestLog::Message << "glTransformFeedbackBufferRange(" << xfb << ", " << index << ", " << buffer << ", " << offset << ", " << size << ");" << TestLog::EndMessage;
5370	m_gl.transformFeedbackBufferRange(xfb, index, buffer, offset, size);
5371}
5372
5373void CallLogWrapper::glTransformFeedbackVaryings (glw::GLuint program, glw::GLsizei count, const glw::GLchar *const*varyings, glw::GLenum bufferMode)
5374{
5375	if (m_enableLog)
5376		m_log << TestLog::Message << "glTransformFeedbackVaryings(" << program << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(varyings))) << ", " << toHex(bufferMode) << ");" << TestLog::EndMessage;
5377	m_gl.transformFeedbackVaryings(program, count, varyings, bufferMode);
5378}
5379
5380void CallLogWrapper::glUniform1d (glw::GLint location, glw::GLdouble x)
5381{
5382	if (m_enableLog)
5383		m_log << TestLog::Message << "glUniform1d(" << location << ", " << x << ");" << TestLog::EndMessage;
5384	m_gl.uniform1d(location, x);
5385}
5386
5387void CallLogWrapper::glUniform1dv (glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
5388{
5389	if (m_enableLog)
5390		m_log << TestLog::Message << "glUniform1dv(" << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5391	m_gl.uniform1dv(location, count, value);
5392}
5393
5394void CallLogWrapper::glUniform1f (glw::GLint location, glw::GLfloat v0)
5395{
5396	if (m_enableLog)
5397		m_log << TestLog::Message << "glUniform1f(" << location << ", " << v0 << ");" << TestLog::EndMessage;
5398	m_gl.uniform1f(location, v0);
5399}
5400
5401void CallLogWrapper::glUniform1fv (glw::GLint location, glw::GLsizei count, const glw::GLfloat *value)
5402{
5403	if (m_enableLog)
5404		m_log << TestLog::Message << "glUniform1fv(" << location << ", " << count << ", " << getPointerStr(value, (count * 1)) << ");" << TestLog::EndMessage;
5405	m_gl.uniform1fv(location, count, value);
5406}
5407
5408void CallLogWrapper::glUniform1i (glw::GLint location, glw::GLint v0)
5409{
5410	if (m_enableLog)
5411		m_log << TestLog::Message << "glUniform1i(" << location << ", " << v0 << ");" << TestLog::EndMessage;
5412	m_gl.uniform1i(location, v0);
5413}
5414
5415void CallLogWrapper::glUniform1iv (glw::GLint location, glw::GLsizei count, const glw::GLint *value)
5416{
5417	if (m_enableLog)
5418		m_log << TestLog::Message << "glUniform1iv(" << location << ", " << count << ", " << getPointerStr(value, (count * 1)) << ");" << TestLog::EndMessage;
5419	m_gl.uniform1iv(location, count, value);
5420}
5421
5422void CallLogWrapper::glUniform1ui (glw::GLint location, glw::GLuint v0)
5423{
5424	if (m_enableLog)
5425		m_log << TestLog::Message << "glUniform1ui(" << location << ", " << v0 << ");" << TestLog::EndMessage;
5426	m_gl.uniform1ui(location, v0);
5427}
5428
5429void CallLogWrapper::glUniform1uiv (glw::GLint location, glw::GLsizei count, const glw::GLuint *value)
5430{
5431	if (m_enableLog)
5432		m_log << TestLog::Message << "glUniform1uiv(" << location << ", " << count << ", " << getPointerStr(value, (count * 1)) << ");" << TestLog::EndMessage;
5433	m_gl.uniform1uiv(location, count, value);
5434}
5435
5436void CallLogWrapper::glUniform2d (glw::GLint location, glw::GLdouble x, glw::GLdouble y)
5437{
5438	if (m_enableLog)
5439		m_log << TestLog::Message << "glUniform2d(" << location << ", " << x << ", " << y << ");" << TestLog::EndMessage;
5440	m_gl.uniform2d(location, x, y);
5441}
5442
5443void CallLogWrapper::glUniform2dv (glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
5444{
5445	if (m_enableLog)
5446		m_log << TestLog::Message << "glUniform2dv(" << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5447	m_gl.uniform2dv(location, count, value);
5448}
5449
5450void CallLogWrapper::glUniform2f (glw::GLint location, glw::GLfloat v0, glw::GLfloat v1)
5451{
5452	if (m_enableLog)
5453		m_log << TestLog::Message << "glUniform2f(" << location << ", " << v0 << ", " << v1 << ");" << TestLog::EndMessage;
5454	m_gl.uniform2f(location, v0, v1);
5455}
5456
5457void CallLogWrapper::glUniform2fv (glw::GLint location, glw::GLsizei count, const glw::GLfloat *value)
5458{
5459	if (m_enableLog)
5460		m_log << TestLog::Message << "glUniform2fv(" << location << ", " << count << ", " << getPointerStr(value, (count * 2)) << ");" << TestLog::EndMessage;
5461	m_gl.uniform2fv(location, count, value);
5462}
5463
5464void CallLogWrapper::glUniform2i (glw::GLint location, glw::GLint v0, glw::GLint v1)
5465{
5466	if (m_enableLog)
5467		m_log << TestLog::Message << "glUniform2i(" << location << ", " << v0 << ", " << v1 << ");" << TestLog::EndMessage;
5468	m_gl.uniform2i(location, v0, v1);
5469}
5470
5471void CallLogWrapper::glUniform2iv (glw::GLint location, glw::GLsizei count, const glw::GLint *value)
5472{
5473	if (m_enableLog)
5474		m_log << TestLog::Message << "glUniform2iv(" << location << ", " << count << ", " << getPointerStr(value, (count * 2)) << ");" << TestLog::EndMessage;
5475	m_gl.uniform2iv(location, count, value);
5476}
5477
5478void CallLogWrapper::glUniform2ui (glw::GLint location, glw::GLuint v0, glw::GLuint v1)
5479{
5480	if (m_enableLog)
5481		m_log << TestLog::Message << "glUniform2ui(" << location << ", " << v0 << ", " << v1 << ");" << TestLog::EndMessage;
5482	m_gl.uniform2ui(location, v0, v1);
5483}
5484
5485void CallLogWrapper::glUniform2uiv (glw::GLint location, glw::GLsizei count, const glw::GLuint *value)
5486{
5487	if (m_enableLog)
5488		m_log << TestLog::Message << "glUniform2uiv(" << location << ", " << count << ", " << getPointerStr(value, (count * 2)) << ");" << TestLog::EndMessage;
5489	m_gl.uniform2uiv(location, count, value);
5490}
5491
5492void CallLogWrapper::glUniform3d (glw::GLint location, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z)
5493{
5494	if (m_enableLog)
5495		m_log << TestLog::Message << "glUniform3d(" << location << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
5496	m_gl.uniform3d(location, x, y, z);
5497}
5498
5499void CallLogWrapper::glUniform3dv (glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
5500{
5501	if (m_enableLog)
5502		m_log << TestLog::Message << "glUniform3dv(" << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5503	m_gl.uniform3dv(location, count, value);
5504}
5505
5506void CallLogWrapper::glUniform3f (glw::GLint location, glw::GLfloat v0, glw::GLfloat v1, glw::GLfloat v2)
5507{
5508	if (m_enableLog)
5509		m_log << TestLog::Message << "glUniform3f(" << location << ", " << v0 << ", " << v1 << ", " << v2 << ");" << TestLog::EndMessage;
5510	m_gl.uniform3f(location, v0, v1, v2);
5511}
5512
5513void CallLogWrapper::glUniform3fv (glw::GLint location, glw::GLsizei count, const glw::GLfloat *value)
5514{
5515	if (m_enableLog)
5516		m_log << TestLog::Message << "glUniform3fv(" << location << ", " << count << ", " << getPointerStr(value, (count * 3)) << ");" << TestLog::EndMessage;
5517	m_gl.uniform3fv(location, count, value);
5518}
5519
5520void CallLogWrapper::glUniform3i (glw::GLint location, glw::GLint v0, glw::GLint v1, glw::GLint v2)
5521{
5522	if (m_enableLog)
5523		m_log << TestLog::Message << "glUniform3i(" << location << ", " << v0 << ", " << v1 << ", " << v2 << ");" << TestLog::EndMessage;
5524	m_gl.uniform3i(location, v0, v1, v2);
5525}
5526
5527void CallLogWrapper::glUniform3iv (glw::GLint location, glw::GLsizei count, const glw::GLint *value)
5528{
5529	if (m_enableLog)
5530		m_log << TestLog::Message << "glUniform3iv(" << location << ", " << count << ", " << getPointerStr(value, (count * 3)) << ");" << TestLog::EndMessage;
5531	m_gl.uniform3iv(location, count, value);
5532}
5533
5534void CallLogWrapper::glUniform3ui (glw::GLint location, glw::GLuint v0, glw::GLuint v1, glw::GLuint v2)
5535{
5536	if (m_enableLog)
5537		m_log << TestLog::Message << "glUniform3ui(" << location << ", " << v0 << ", " << v1 << ", " << v2 << ");" << TestLog::EndMessage;
5538	m_gl.uniform3ui(location, v0, v1, v2);
5539}
5540
5541void CallLogWrapper::glUniform3uiv (glw::GLint location, glw::GLsizei count, const glw::GLuint *value)
5542{
5543	if (m_enableLog)
5544		m_log << TestLog::Message << "glUniform3uiv(" << location << ", " << count << ", " << getPointerStr(value, (count * 3)) << ");" << TestLog::EndMessage;
5545	m_gl.uniform3uiv(location, count, value);
5546}
5547
5548void CallLogWrapper::glUniform4d (glw::GLint location, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z, glw::GLdouble w)
5549{
5550	if (m_enableLog)
5551		m_log << TestLog::Message << "glUniform4d(" << location << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
5552	m_gl.uniform4d(location, x, y, z, w);
5553}
5554
5555void CallLogWrapper::glUniform4dv (glw::GLint location, glw::GLsizei count, const glw::GLdouble *value)
5556{
5557	if (m_enableLog)
5558		m_log << TestLog::Message << "glUniform4dv(" << location << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5559	m_gl.uniform4dv(location, count, value);
5560}
5561
5562void CallLogWrapper::glUniform4f (glw::GLint location, glw::GLfloat v0, glw::GLfloat v1, glw::GLfloat v2, glw::GLfloat v3)
5563{
5564	if (m_enableLog)
5565		m_log << TestLog::Message << "glUniform4f(" << location << ", " << v0 << ", " << v1 << ", " << v2 << ", " << v3 << ");" << TestLog::EndMessage;
5566	m_gl.uniform4f(location, v0, v1, v2, v3);
5567}
5568
5569void CallLogWrapper::glUniform4fv (glw::GLint location, glw::GLsizei count, const glw::GLfloat *value)
5570{
5571	if (m_enableLog)
5572		m_log << TestLog::Message << "glUniform4fv(" << location << ", " << count << ", " << getPointerStr(value, (count * 4)) << ");" << TestLog::EndMessage;
5573	m_gl.uniform4fv(location, count, value);
5574}
5575
5576void CallLogWrapper::glUniform4i (glw::GLint location, glw::GLint v0, glw::GLint v1, glw::GLint v2, glw::GLint v3)
5577{
5578	if (m_enableLog)
5579		m_log << TestLog::Message << "glUniform4i(" << location << ", " << v0 << ", " << v1 << ", " << v2 << ", " << v3 << ");" << TestLog::EndMessage;
5580	m_gl.uniform4i(location, v0, v1, v2, v3);
5581}
5582
5583void CallLogWrapper::glUniform4iv (glw::GLint location, glw::GLsizei count, const glw::GLint *value)
5584{
5585	if (m_enableLog)
5586		m_log << TestLog::Message << "glUniform4iv(" << location << ", " << count << ", " << getPointerStr(value, (count * 4)) << ");" << TestLog::EndMessage;
5587	m_gl.uniform4iv(location, count, value);
5588}
5589
5590void CallLogWrapper::glUniform4ui (glw::GLint location, glw::GLuint v0, glw::GLuint v1, glw::GLuint v2, glw::GLuint v3)
5591{
5592	if (m_enableLog)
5593		m_log << TestLog::Message << "glUniform4ui(" << location << ", " << v0 << ", " << v1 << ", " << v2 << ", " << v3 << ");" << TestLog::EndMessage;
5594	m_gl.uniform4ui(location, v0, v1, v2, v3);
5595}
5596
5597void CallLogWrapper::glUniform4uiv (glw::GLint location, glw::GLsizei count, const glw::GLuint *value)
5598{
5599	if (m_enableLog)
5600		m_log << TestLog::Message << "glUniform4uiv(" << location << ", " << count << ", " << getPointerStr(value, (count * 4)) << ");" << TestLog::EndMessage;
5601	m_gl.uniform4uiv(location, count, value);
5602}
5603
5604void CallLogWrapper::glUniformBlockBinding (glw::GLuint program, glw::GLuint uniformBlockIndex, glw::GLuint uniformBlockBinding)
5605{
5606	if (m_enableLog)
5607		m_log << TestLog::Message << "glUniformBlockBinding(" << program << ", " << uniformBlockIndex << ", " << uniformBlockBinding << ");" << TestLog::EndMessage;
5608	m_gl.uniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
5609}
5610
5611void CallLogWrapper::glUniformMatrix2dv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
5612{
5613	if (m_enableLog)
5614		m_log << TestLog::Message << "glUniformMatrix2dv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5615	m_gl.uniformMatrix2dv(location, count, transpose, value);
5616}
5617
5618void CallLogWrapper::glUniformMatrix2fv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
5619{
5620	if (m_enableLog)
5621		m_log << TestLog::Message << "glUniformMatrix2fv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 2*2)) << ");" << TestLog::EndMessage;
5622	m_gl.uniformMatrix2fv(location, count, transpose, value);
5623}
5624
5625void CallLogWrapper::glUniformMatrix2x3dv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
5626{
5627	if (m_enableLog)
5628		m_log << TestLog::Message << "glUniformMatrix2x3dv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5629	m_gl.uniformMatrix2x3dv(location, count, transpose, value);
5630}
5631
5632void CallLogWrapper::glUniformMatrix2x3fv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
5633{
5634	if (m_enableLog)
5635		m_log << TestLog::Message << "glUniformMatrix2x3fv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 2*3)) << ");" << TestLog::EndMessage;
5636	m_gl.uniformMatrix2x3fv(location, count, transpose, value);
5637}
5638
5639void CallLogWrapper::glUniformMatrix2x4dv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
5640{
5641	if (m_enableLog)
5642		m_log << TestLog::Message << "glUniformMatrix2x4dv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5643	m_gl.uniformMatrix2x4dv(location, count, transpose, value);
5644}
5645
5646void CallLogWrapper::glUniformMatrix2x4fv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
5647{
5648	if (m_enableLog)
5649		m_log << TestLog::Message << "glUniformMatrix2x4fv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 2*4)) << ");" << TestLog::EndMessage;
5650	m_gl.uniformMatrix2x4fv(location, count, transpose, value);
5651}
5652
5653void CallLogWrapper::glUniformMatrix3dv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
5654{
5655	if (m_enableLog)
5656		m_log << TestLog::Message << "glUniformMatrix3dv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5657	m_gl.uniformMatrix3dv(location, count, transpose, value);
5658}
5659
5660void CallLogWrapper::glUniformMatrix3fv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
5661{
5662	if (m_enableLog)
5663		m_log << TestLog::Message << "glUniformMatrix3fv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 3*3)) << ");" << TestLog::EndMessage;
5664	m_gl.uniformMatrix3fv(location, count, transpose, value);
5665}
5666
5667void CallLogWrapper::glUniformMatrix3x2dv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
5668{
5669	if (m_enableLog)
5670		m_log << TestLog::Message << "glUniformMatrix3x2dv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5671	m_gl.uniformMatrix3x2dv(location, count, transpose, value);
5672}
5673
5674void CallLogWrapper::glUniformMatrix3x2fv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
5675{
5676	if (m_enableLog)
5677		m_log << TestLog::Message << "glUniformMatrix3x2fv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 3*2)) << ");" << TestLog::EndMessage;
5678	m_gl.uniformMatrix3x2fv(location, count, transpose, value);
5679}
5680
5681void CallLogWrapper::glUniformMatrix3x4dv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
5682{
5683	if (m_enableLog)
5684		m_log << TestLog::Message << "glUniformMatrix3x4dv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5685	m_gl.uniformMatrix3x4dv(location, count, transpose, value);
5686}
5687
5688void CallLogWrapper::glUniformMatrix3x4fv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
5689{
5690	if (m_enableLog)
5691		m_log << TestLog::Message << "glUniformMatrix3x4fv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 3*4)) << ");" << TestLog::EndMessage;
5692	m_gl.uniformMatrix3x4fv(location, count, transpose, value);
5693}
5694
5695void CallLogWrapper::glUniformMatrix4dv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
5696{
5697	if (m_enableLog)
5698		m_log << TestLog::Message << "glUniformMatrix4dv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5699	m_gl.uniformMatrix4dv(location, count, transpose, value);
5700}
5701
5702void CallLogWrapper::glUniformMatrix4fv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
5703{
5704	if (m_enableLog)
5705		m_log << TestLog::Message << "glUniformMatrix4fv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 4*4)) << ");" << TestLog::EndMessage;
5706	m_gl.uniformMatrix4fv(location, count, transpose, value);
5707}
5708
5709void CallLogWrapper::glUniformMatrix4x2dv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
5710{
5711	if (m_enableLog)
5712		m_log << TestLog::Message << "glUniformMatrix4x2dv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5713	m_gl.uniformMatrix4x2dv(location, count, transpose, value);
5714}
5715
5716void CallLogWrapper::glUniformMatrix4x2fv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
5717{
5718	if (m_enableLog)
5719		m_log << TestLog::Message << "glUniformMatrix4x2fv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 4*2)) << ");" << TestLog::EndMessage;
5720	m_gl.uniformMatrix4x2fv(location, count, transpose, value);
5721}
5722
5723void CallLogWrapper::glUniformMatrix4x3dv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLdouble *value)
5724{
5725	if (m_enableLog)
5726		m_log << TestLog::Message << "glUniformMatrix4x3dv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
5727	m_gl.uniformMatrix4x3dv(location, count, transpose, value);
5728}
5729
5730void CallLogWrapper::glUniformMatrix4x3fv (glw::GLint location, glw::GLsizei count, glw::GLboolean transpose, const glw::GLfloat *value)
5731{
5732	if (m_enableLog)
5733		m_log << TestLog::Message << "glUniformMatrix4x3fv(" << location << ", " << count << ", " << getBooleanStr(transpose) << ", " << getPointerStr(value, (count * 4*3)) << ");" << TestLog::EndMessage;
5734	m_gl.uniformMatrix4x3fv(location, count, transpose, value);
5735}
5736
5737void CallLogWrapper::glUniformSubroutinesuiv (glw::GLenum shadertype, glw::GLsizei count, const glw::GLuint *indices)
5738{
5739	if (m_enableLog)
5740		m_log << TestLog::Message << "glUniformSubroutinesuiv(" << toHex(shadertype) << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(indices))) << ");" << TestLog::EndMessage;
5741	m_gl.uniformSubroutinesuiv(shadertype, count, indices);
5742}
5743
5744glw::GLboolean CallLogWrapper::glUnmapBuffer (glw::GLenum target)
5745{
5746	if (m_enableLog)
5747		m_log << TestLog::Message << "glUnmapBuffer(" << getBufferTargetStr(target) << ");" << TestLog::EndMessage;
5748	glw::GLboolean returnValue = m_gl.unmapBuffer(target);
5749	if (m_enableLog)
5750		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
5751	return returnValue;
5752}
5753
5754glw::GLboolean CallLogWrapper::glUnmapNamedBuffer (glw::GLuint buffer)
5755{
5756	if (m_enableLog)
5757		m_log << TestLog::Message << "glUnmapNamedBuffer(" << buffer << ");" << TestLog::EndMessage;
5758	glw::GLboolean returnValue = m_gl.unmapNamedBuffer(buffer);
5759	if (m_enableLog)
5760		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
5761	return returnValue;
5762}
5763
5764glw::GLboolean CallLogWrapper::glUnmapNamedBufferEXT (glw::GLuint buffer)
5765{
5766	if (m_enableLog)
5767		m_log << TestLog::Message << "glUnmapNamedBufferEXT(" << buffer << ");" << TestLog::EndMessage;
5768	glw::GLboolean returnValue = m_gl.unmapNamedBufferEXT(buffer);
5769	if (m_enableLog)
5770		m_log << TestLog::Message << "// " << getBooleanStr(returnValue) << " returned" << TestLog::EndMessage;
5771	return returnValue;
5772}
5773
5774void CallLogWrapper::glUseProgram (glw::GLuint program)
5775{
5776	if (m_enableLog)
5777		m_log << TestLog::Message << "glUseProgram(" << program << ");" << TestLog::EndMessage;
5778	m_gl.useProgram(program);
5779}
5780
5781void CallLogWrapper::glUseProgramStages (glw::GLuint pipeline, glw::GLbitfield stages, glw::GLuint program)
5782{
5783	if (m_enableLog)
5784		m_log << TestLog::Message << "glUseProgramStages(" << pipeline << ", " << getShaderTypeMaskStr(stages) << ", " << program << ");" << TestLog::EndMessage;
5785	m_gl.useProgramStages(pipeline, stages, program);
5786}
5787
5788void CallLogWrapper::glValidateProgram (glw::GLuint program)
5789{
5790	if (m_enableLog)
5791		m_log << TestLog::Message << "glValidateProgram(" << program << ");" << TestLog::EndMessage;
5792	m_gl.validateProgram(program);
5793}
5794
5795void CallLogWrapper::glValidateProgramPipeline (glw::GLuint pipeline)
5796{
5797	if (m_enableLog)
5798		m_log << TestLog::Message << "glValidateProgramPipeline(" << pipeline << ");" << TestLog::EndMessage;
5799	m_gl.validateProgramPipeline(pipeline);
5800}
5801
5802void CallLogWrapper::glVertexArrayAttribBinding (glw::GLuint vaobj, glw::GLuint attribindex, glw::GLuint bindingindex)
5803{
5804	if (m_enableLog)
5805		m_log << TestLog::Message << "glVertexArrayAttribBinding(" << vaobj << ", " << attribindex << ", " << bindingindex << ");" << TestLog::EndMessage;
5806	m_gl.vertexArrayAttribBinding(vaobj, attribindex, bindingindex);
5807}
5808
5809void CallLogWrapper::glVertexArrayAttribFormat (glw::GLuint vaobj, glw::GLuint attribindex, glw::GLint size, glw::GLenum type, glw::GLboolean normalized, glw::GLuint relativeoffset)
5810{
5811	if (m_enableLog)
5812		m_log << TestLog::Message << "glVertexArrayAttribFormat(" << vaobj << ", " << attribindex << ", " << size << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << relativeoffset << ");" << TestLog::EndMessage;
5813	m_gl.vertexArrayAttribFormat(vaobj, attribindex, size, type, normalized, relativeoffset);
5814}
5815
5816void CallLogWrapper::glVertexArrayAttribIFormat (glw::GLuint vaobj, glw::GLuint attribindex, glw::GLint size, glw::GLenum type, glw::GLuint relativeoffset)
5817{
5818	if (m_enableLog)
5819		m_log << TestLog::Message << "glVertexArrayAttribIFormat(" << vaobj << ", " << attribindex << ", " << size << ", " << toHex(type) << ", " << relativeoffset << ");" << TestLog::EndMessage;
5820	m_gl.vertexArrayAttribIFormat(vaobj, attribindex, size, type, relativeoffset);
5821}
5822
5823void CallLogWrapper::glVertexArrayAttribLFormat (glw::GLuint vaobj, glw::GLuint attribindex, glw::GLint size, glw::GLenum type, glw::GLuint relativeoffset)
5824{
5825	if (m_enableLog)
5826		m_log << TestLog::Message << "glVertexArrayAttribLFormat(" << vaobj << ", " << attribindex << ", " << size << ", " << toHex(type) << ", " << relativeoffset << ");" << TestLog::EndMessage;
5827	m_gl.vertexArrayAttribLFormat(vaobj, attribindex, size, type, relativeoffset);
5828}
5829
5830void CallLogWrapper::glVertexArrayBindVertexBufferEXT (glw::GLuint vaobj, glw::GLuint bindingindex, glw::GLuint buffer, glw::GLintptr offset, glw::GLsizei stride)
5831{
5832	if (m_enableLog)
5833		m_log << TestLog::Message << "glVertexArrayBindVertexBufferEXT(" << vaobj << ", " << bindingindex << ", " << buffer << ", " << offset << ", " << stride << ");" << TestLog::EndMessage;
5834	m_gl.vertexArrayBindVertexBufferEXT(vaobj, bindingindex, buffer, offset, stride);
5835}
5836
5837void CallLogWrapper::glVertexArrayBindingDivisor (glw::GLuint vaobj, glw::GLuint bindingindex, glw::GLuint divisor)
5838{
5839	if (m_enableLog)
5840		m_log << TestLog::Message << "glVertexArrayBindingDivisor(" << vaobj << ", " << bindingindex << ", " << divisor << ");" << TestLog::EndMessage;
5841	m_gl.vertexArrayBindingDivisor(vaobj, bindingindex, divisor);
5842}
5843
5844void CallLogWrapper::glVertexArrayColorOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLint size, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5845{
5846	if (m_enableLog)
5847		m_log << TestLog::Message << "glVertexArrayColorOffsetEXT(" << vaobj << ", " << buffer << ", " << size << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5848	m_gl.vertexArrayColorOffsetEXT(vaobj, buffer, size, type, stride, offset);
5849}
5850
5851void CallLogWrapper::glVertexArrayEdgeFlagOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLsizei stride, glw::GLintptr offset)
5852{
5853	if (m_enableLog)
5854		m_log << TestLog::Message << "glVertexArrayEdgeFlagOffsetEXT(" << vaobj << ", " << buffer << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5855	m_gl.vertexArrayEdgeFlagOffsetEXT(vaobj, buffer, stride, offset);
5856}
5857
5858void CallLogWrapper::glVertexArrayElementBuffer (glw::GLuint vaobj, glw::GLuint buffer)
5859{
5860	if (m_enableLog)
5861		m_log << TestLog::Message << "glVertexArrayElementBuffer(" << vaobj << ", " << buffer << ");" << TestLog::EndMessage;
5862	m_gl.vertexArrayElementBuffer(vaobj, buffer);
5863}
5864
5865void CallLogWrapper::glVertexArrayFogCoordOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5866{
5867	if (m_enableLog)
5868		m_log << TestLog::Message << "glVertexArrayFogCoordOffsetEXT(" << vaobj << ", " << buffer << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5869	m_gl.vertexArrayFogCoordOffsetEXT(vaobj, buffer, type, stride, offset);
5870}
5871
5872void CallLogWrapper::glVertexArrayIndexOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5873{
5874	if (m_enableLog)
5875		m_log << TestLog::Message << "glVertexArrayIndexOffsetEXT(" << vaobj << ", " << buffer << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5876	m_gl.vertexArrayIndexOffsetEXT(vaobj, buffer, type, stride, offset);
5877}
5878
5879void CallLogWrapper::glVertexArrayMultiTexCoordOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLenum texunit, glw::GLint size, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5880{
5881	if (m_enableLog)
5882		m_log << TestLog::Message << "glVertexArrayMultiTexCoordOffsetEXT(" << vaobj << ", " << buffer << ", " << toHex(texunit) << ", " << size << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5883	m_gl.vertexArrayMultiTexCoordOffsetEXT(vaobj, buffer, texunit, size, type, stride, offset);
5884}
5885
5886void CallLogWrapper::glVertexArrayNormalOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5887{
5888	if (m_enableLog)
5889		m_log << TestLog::Message << "glVertexArrayNormalOffsetEXT(" << vaobj << ", " << buffer << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5890	m_gl.vertexArrayNormalOffsetEXT(vaobj, buffer, type, stride, offset);
5891}
5892
5893void CallLogWrapper::glVertexArraySecondaryColorOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLint size, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5894{
5895	if (m_enableLog)
5896		m_log << TestLog::Message << "glVertexArraySecondaryColorOffsetEXT(" << vaobj << ", " << buffer << ", " << size << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5897	m_gl.vertexArraySecondaryColorOffsetEXT(vaobj, buffer, size, type, stride, offset);
5898}
5899
5900void CallLogWrapper::glVertexArrayTexCoordOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLint size, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5901{
5902	if (m_enableLog)
5903		m_log << TestLog::Message << "glVertexArrayTexCoordOffsetEXT(" << vaobj << ", " << buffer << ", " << size << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5904	m_gl.vertexArrayTexCoordOffsetEXT(vaobj, buffer, size, type, stride, offset);
5905}
5906
5907void CallLogWrapper::glVertexArrayVertexAttribBindingEXT (glw::GLuint vaobj, glw::GLuint attribindex, glw::GLuint bindingindex)
5908{
5909	if (m_enableLog)
5910		m_log << TestLog::Message << "glVertexArrayVertexAttribBindingEXT(" << vaobj << ", " << attribindex << ", " << bindingindex << ");" << TestLog::EndMessage;
5911	m_gl.vertexArrayVertexAttribBindingEXT(vaobj, attribindex, bindingindex);
5912}
5913
5914void CallLogWrapper::glVertexArrayVertexAttribDivisorEXT (glw::GLuint vaobj, glw::GLuint index, glw::GLuint divisor)
5915{
5916	if (m_enableLog)
5917		m_log << TestLog::Message << "glVertexArrayVertexAttribDivisorEXT(" << vaobj << ", " << index << ", " << divisor << ");" << TestLog::EndMessage;
5918	m_gl.vertexArrayVertexAttribDivisorEXT(vaobj, index, divisor);
5919}
5920
5921void CallLogWrapper::glVertexArrayVertexAttribFormatEXT (glw::GLuint vaobj, glw::GLuint attribindex, glw::GLint size, glw::GLenum type, glw::GLboolean normalized, glw::GLuint relativeoffset)
5922{
5923	if (m_enableLog)
5924		m_log << TestLog::Message << "glVertexArrayVertexAttribFormatEXT(" << vaobj << ", " << attribindex << ", " << size << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << relativeoffset << ");" << TestLog::EndMessage;
5925	m_gl.vertexArrayVertexAttribFormatEXT(vaobj, attribindex, size, type, normalized, relativeoffset);
5926}
5927
5928void CallLogWrapper::glVertexArrayVertexAttribIFormatEXT (glw::GLuint vaobj, glw::GLuint attribindex, glw::GLint size, glw::GLenum type, glw::GLuint relativeoffset)
5929{
5930	if (m_enableLog)
5931		m_log << TestLog::Message << "glVertexArrayVertexAttribIFormatEXT(" << vaobj << ", " << attribindex << ", " << size << ", " << toHex(type) << ", " << relativeoffset << ");" << TestLog::EndMessage;
5932	m_gl.vertexArrayVertexAttribIFormatEXT(vaobj, attribindex, size, type, relativeoffset);
5933}
5934
5935void CallLogWrapper::glVertexArrayVertexAttribIOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLuint index, glw::GLint size, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5936{
5937	if (m_enableLog)
5938		m_log << TestLog::Message << "glVertexArrayVertexAttribIOffsetEXT(" << vaobj << ", " << buffer << ", " << index << ", " << size << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5939	m_gl.vertexArrayVertexAttribIOffsetEXT(vaobj, buffer, index, size, type, stride, offset);
5940}
5941
5942void CallLogWrapper::glVertexArrayVertexAttribLFormatEXT (glw::GLuint vaobj, glw::GLuint attribindex, glw::GLint size, glw::GLenum type, glw::GLuint relativeoffset)
5943{
5944	if (m_enableLog)
5945		m_log << TestLog::Message << "glVertexArrayVertexAttribLFormatEXT(" << vaobj << ", " << attribindex << ", " << size << ", " << toHex(type) << ", " << relativeoffset << ");" << TestLog::EndMessage;
5946	m_gl.vertexArrayVertexAttribLFormatEXT(vaobj, attribindex, size, type, relativeoffset);
5947}
5948
5949void CallLogWrapper::glVertexArrayVertexAttribLOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLuint index, glw::GLint size, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5950{
5951	if (m_enableLog)
5952		m_log << TestLog::Message << "glVertexArrayVertexAttribLOffsetEXT(" << vaobj << ", " << buffer << ", " << index << ", " << size << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5953	m_gl.vertexArrayVertexAttribLOffsetEXT(vaobj, buffer, index, size, type, stride, offset);
5954}
5955
5956void CallLogWrapper::glVertexArrayVertexAttribOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLuint index, glw::GLint size, glw::GLenum type, glw::GLboolean normalized, glw::GLsizei stride, glw::GLintptr offset)
5957{
5958	if (m_enableLog)
5959		m_log << TestLog::Message << "glVertexArrayVertexAttribOffsetEXT(" << vaobj << ", " << buffer << ", " << index << ", " << size << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5960	m_gl.vertexArrayVertexAttribOffsetEXT(vaobj, buffer, index, size, type, normalized, stride, offset);
5961}
5962
5963void CallLogWrapper::glVertexArrayVertexBindingDivisorEXT (glw::GLuint vaobj, glw::GLuint bindingindex, glw::GLuint divisor)
5964{
5965	if (m_enableLog)
5966		m_log << TestLog::Message << "glVertexArrayVertexBindingDivisorEXT(" << vaobj << ", " << bindingindex << ", " << divisor << ");" << TestLog::EndMessage;
5967	m_gl.vertexArrayVertexBindingDivisorEXT(vaobj, bindingindex, divisor);
5968}
5969
5970void CallLogWrapper::glVertexArrayVertexBuffer (glw::GLuint vaobj, glw::GLuint bindingindex, glw::GLuint buffer, glw::GLintptr offset, glw::GLsizei stride)
5971{
5972	if (m_enableLog)
5973		m_log << TestLog::Message << "glVertexArrayVertexBuffer(" << vaobj << ", " << bindingindex << ", " << buffer << ", " << offset << ", " << stride << ");" << TestLog::EndMessage;
5974	m_gl.vertexArrayVertexBuffer(vaobj, bindingindex, buffer, offset, stride);
5975}
5976
5977void CallLogWrapper::glVertexArrayVertexBuffers (glw::GLuint vaobj, glw::GLuint first, glw::GLsizei count, const glw::GLuint *buffers, const glw::GLintptr *offsets, const glw::GLsizei *strides)
5978{
5979	if (m_enableLog)
5980		m_log << TestLog::Message << "glVertexArrayVertexBuffers(" << vaobj << ", " << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(buffers))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(offsets))) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(strides))) << ");" << TestLog::EndMessage;
5981	m_gl.vertexArrayVertexBuffers(vaobj, first, count, buffers, offsets, strides);
5982}
5983
5984void CallLogWrapper::glVertexArrayVertexOffsetEXT (glw::GLuint vaobj, glw::GLuint buffer, glw::GLint size, glw::GLenum type, glw::GLsizei stride, glw::GLintptr offset)
5985{
5986	if (m_enableLog)
5987		m_log << TestLog::Message << "glVertexArrayVertexOffsetEXT(" << vaobj << ", " << buffer << ", " << size << ", " << toHex(type) << ", " << stride << ", " << offset << ");" << TestLog::EndMessage;
5988	m_gl.vertexArrayVertexOffsetEXT(vaobj, buffer, size, type, stride, offset);
5989}
5990
5991void CallLogWrapper::glVertexAttrib1d (glw::GLuint index, glw::GLdouble x)
5992{
5993	if (m_enableLog)
5994		m_log << TestLog::Message << "glVertexAttrib1d(" << index << ", " << x << ");" << TestLog::EndMessage;
5995	m_gl.vertexAttrib1d(index, x);
5996}
5997
5998void CallLogWrapper::glVertexAttrib1dv (glw::GLuint index, const glw::GLdouble *v)
5999{
6000	if (m_enableLog)
6001		m_log << TestLog::Message << "glVertexAttrib1dv(" << index << ", " << getPointerStr(v, 1) << ");" << TestLog::EndMessage;
6002	m_gl.vertexAttrib1dv(index, v);
6003}
6004
6005void CallLogWrapper::glVertexAttrib1f (glw::GLuint index, glw::GLfloat x)
6006{
6007	if (m_enableLog)
6008		m_log << TestLog::Message << "glVertexAttrib1f(" << index << ", " << x << ");" << TestLog::EndMessage;
6009	m_gl.vertexAttrib1f(index, x);
6010}
6011
6012void CallLogWrapper::glVertexAttrib1fv (glw::GLuint index, const glw::GLfloat *v)
6013{
6014	if (m_enableLog)
6015		m_log << TestLog::Message << "glVertexAttrib1fv(" << index << ", " << getPointerStr(v, 1) << ");" << TestLog::EndMessage;
6016	m_gl.vertexAttrib1fv(index, v);
6017}
6018
6019void CallLogWrapper::glVertexAttrib1s (glw::GLuint index, glw::GLshort x)
6020{
6021	if (m_enableLog)
6022		m_log << TestLog::Message << "glVertexAttrib1s(" << index << ", " << x << ");" << TestLog::EndMessage;
6023	m_gl.vertexAttrib1s(index, x);
6024}
6025
6026void CallLogWrapper::glVertexAttrib1sv (glw::GLuint index, const glw::GLshort *v)
6027{
6028	if (m_enableLog)
6029		m_log << TestLog::Message << "glVertexAttrib1sv(" << index << ", " << getPointerStr(v, 1) << ");" << TestLog::EndMessage;
6030	m_gl.vertexAttrib1sv(index, v);
6031}
6032
6033void CallLogWrapper::glVertexAttrib2d (glw::GLuint index, glw::GLdouble x, glw::GLdouble y)
6034{
6035	if (m_enableLog)
6036		m_log << TestLog::Message << "glVertexAttrib2d(" << index << ", " << x << ", " << y << ");" << TestLog::EndMessage;
6037	m_gl.vertexAttrib2d(index, x, y);
6038}
6039
6040void CallLogWrapper::glVertexAttrib2dv (glw::GLuint index, const glw::GLdouble *v)
6041{
6042	if (m_enableLog)
6043		m_log << TestLog::Message << "glVertexAttrib2dv(" << index << ", " << getPointerStr(v, 2) << ");" << TestLog::EndMessage;
6044	m_gl.vertexAttrib2dv(index, v);
6045}
6046
6047void CallLogWrapper::glVertexAttrib2f (glw::GLuint index, glw::GLfloat x, glw::GLfloat y)
6048{
6049	if (m_enableLog)
6050		m_log << TestLog::Message << "glVertexAttrib2f(" << index << ", " << x << ", " << y << ");" << TestLog::EndMessage;
6051	m_gl.vertexAttrib2f(index, x, y);
6052}
6053
6054void CallLogWrapper::glVertexAttrib2fv (glw::GLuint index, const glw::GLfloat *v)
6055{
6056	if (m_enableLog)
6057		m_log << TestLog::Message << "glVertexAttrib2fv(" << index << ", " << getPointerStr(v, 2) << ");" << TestLog::EndMessage;
6058	m_gl.vertexAttrib2fv(index, v);
6059}
6060
6061void CallLogWrapper::glVertexAttrib2s (glw::GLuint index, glw::GLshort x, glw::GLshort y)
6062{
6063	if (m_enableLog)
6064		m_log << TestLog::Message << "glVertexAttrib2s(" << index << ", " << x << ", " << y << ");" << TestLog::EndMessage;
6065	m_gl.vertexAttrib2s(index, x, y);
6066}
6067
6068void CallLogWrapper::glVertexAttrib2sv (glw::GLuint index, const glw::GLshort *v)
6069{
6070	if (m_enableLog)
6071		m_log << TestLog::Message << "glVertexAttrib2sv(" << index << ", " << getPointerStr(v, 2) << ");" << TestLog::EndMessage;
6072	m_gl.vertexAttrib2sv(index, v);
6073}
6074
6075void CallLogWrapper::glVertexAttrib3d (glw::GLuint index, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z)
6076{
6077	if (m_enableLog)
6078		m_log << TestLog::Message << "glVertexAttrib3d(" << index << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
6079	m_gl.vertexAttrib3d(index, x, y, z);
6080}
6081
6082void CallLogWrapper::glVertexAttrib3dv (glw::GLuint index, const glw::GLdouble *v)
6083{
6084	if (m_enableLog)
6085		m_log << TestLog::Message << "glVertexAttrib3dv(" << index << ", " << getPointerStr(v, 3) << ");" << TestLog::EndMessage;
6086	m_gl.vertexAttrib3dv(index, v);
6087}
6088
6089void CallLogWrapper::glVertexAttrib3f (glw::GLuint index, glw::GLfloat x, glw::GLfloat y, glw::GLfloat z)
6090{
6091	if (m_enableLog)
6092		m_log << TestLog::Message << "glVertexAttrib3f(" << index << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
6093	m_gl.vertexAttrib3f(index, x, y, z);
6094}
6095
6096void CallLogWrapper::glVertexAttrib3fv (glw::GLuint index, const glw::GLfloat *v)
6097{
6098	if (m_enableLog)
6099		m_log << TestLog::Message << "glVertexAttrib3fv(" << index << ", " << getPointerStr(v, 3) << ");" << TestLog::EndMessage;
6100	m_gl.vertexAttrib3fv(index, v);
6101}
6102
6103void CallLogWrapper::glVertexAttrib3s (glw::GLuint index, glw::GLshort x, glw::GLshort y, glw::GLshort z)
6104{
6105	if (m_enableLog)
6106		m_log << TestLog::Message << "glVertexAttrib3s(" << index << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
6107	m_gl.vertexAttrib3s(index, x, y, z);
6108}
6109
6110void CallLogWrapper::glVertexAttrib3sv (glw::GLuint index, const glw::GLshort *v)
6111{
6112	if (m_enableLog)
6113		m_log << TestLog::Message << "glVertexAttrib3sv(" << index << ", " << getPointerStr(v, 3) << ");" << TestLog::EndMessage;
6114	m_gl.vertexAttrib3sv(index, v);
6115}
6116
6117void CallLogWrapper::glVertexAttrib4Nbv (glw::GLuint index, const glw::GLbyte *v)
6118{
6119	if (m_enableLog)
6120		m_log << TestLog::Message << "glVertexAttrib4Nbv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6121	m_gl.vertexAttrib4Nbv(index, v);
6122}
6123
6124void CallLogWrapper::glVertexAttrib4Niv (glw::GLuint index, const glw::GLint *v)
6125{
6126	if (m_enableLog)
6127		m_log << TestLog::Message << "glVertexAttrib4Niv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6128	m_gl.vertexAttrib4Niv(index, v);
6129}
6130
6131void CallLogWrapper::glVertexAttrib4Nsv (glw::GLuint index, const glw::GLshort *v)
6132{
6133	if (m_enableLog)
6134		m_log << TestLog::Message << "glVertexAttrib4Nsv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6135	m_gl.vertexAttrib4Nsv(index, v);
6136}
6137
6138void CallLogWrapper::glVertexAttrib4Nub (glw::GLuint index, glw::GLubyte x, glw::GLubyte y, glw::GLubyte z, glw::GLubyte w)
6139{
6140	if (m_enableLog)
6141		m_log << TestLog::Message << "glVertexAttrib4Nub(" << index << ", " << toHex(x) << ", " << toHex(y) << ", " << toHex(z) << ", " << toHex(w) << ");" << TestLog::EndMessage;
6142	m_gl.vertexAttrib4Nub(index, x, y, z, w);
6143}
6144
6145void CallLogWrapper::glVertexAttrib4Nubv (glw::GLuint index, const glw::GLubyte *v)
6146{
6147	if (m_enableLog)
6148		m_log << TestLog::Message << "glVertexAttrib4Nubv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6149	m_gl.vertexAttrib4Nubv(index, v);
6150}
6151
6152void CallLogWrapper::glVertexAttrib4Nuiv (glw::GLuint index, const glw::GLuint *v)
6153{
6154	if (m_enableLog)
6155		m_log << TestLog::Message << "glVertexAttrib4Nuiv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6156	m_gl.vertexAttrib4Nuiv(index, v);
6157}
6158
6159void CallLogWrapper::glVertexAttrib4Nusv (glw::GLuint index, const glw::GLushort *v)
6160{
6161	if (m_enableLog)
6162		m_log << TestLog::Message << "glVertexAttrib4Nusv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6163	m_gl.vertexAttrib4Nusv(index, v);
6164}
6165
6166void CallLogWrapper::glVertexAttrib4bv (glw::GLuint index, const glw::GLbyte *v)
6167{
6168	if (m_enableLog)
6169		m_log << TestLog::Message << "glVertexAttrib4bv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6170	m_gl.vertexAttrib4bv(index, v);
6171}
6172
6173void CallLogWrapper::glVertexAttrib4d (glw::GLuint index, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z, glw::GLdouble w)
6174{
6175	if (m_enableLog)
6176		m_log << TestLog::Message << "glVertexAttrib4d(" << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
6177	m_gl.vertexAttrib4d(index, x, y, z, w);
6178}
6179
6180void CallLogWrapper::glVertexAttrib4dv (glw::GLuint index, const glw::GLdouble *v)
6181{
6182	if (m_enableLog)
6183		m_log << TestLog::Message << "glVertexAttrib4dv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6184	m_gl.vertexAttrib4dv(index, v);
6185}
6186
6187void CallLogWrapper::glVertexAttrib4f (glw::GLuint index, glw::GLfloat x, glw::GLfloat y, glw::GLfloat z, glw::GLfloat w)
6188{
6189	if (m_enableLog)
6190		m_log << TestLog::Message << "glVertexAttrib4f(" << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
6191	m_gl.vertexAttrib4f(index, x, y, z, w);
6192}
6193
6194void CallLogWrapper::glVertexAttrib4fv (glw::GLuint index, const glw::GLfloat *v)
6195{
6196	if (m_enableLog)
6197		m_log << TestLog::Message << "glVertexAttrib4fv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6198	m_gl.vertexAttrib4fv(index, v);
6199}
6200
6201void CallLogWrapper::glVertexAttrib4iv (glw::GLuint index, const glw::GLint *v)
6202{
6203	if (m_enableLog)
6204		m_log << TestLog::Message << "glVertexAttrib4iv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6205	m_gl.vertexAttrib4iv(index, v);
6206}
6207
6208void CallLogWrapper::glVertexAttrib4s (glw::GLuint index, glw::GLshort x, glw::GLshort y, glw::GLshort z, glw::GLshort w)
6209{
6210	if (m_enableLog)
6211		m_log << TestLog::Message << "glVertexAttrib4s(" << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
6212	m_gl.vertexAttrib4s(index, x, y, z, w);
6213}
6214
6215void CallLogWrapper::glVertexAttrib4sv (glw::GLuint index, const glw::GLshort *v)
6216{
6217	if (m_enableLog)
6218		m_log << TestLog::Message << "glVertexAttrib4sv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6219	m_gl.vertexAttrib4sv(index, v);
6220}
6221
6222void CallLogWrapper::glVertexAttrib4ubv (glw::GLuint index, const glw::GLubyte *v)
6223{
6224	if (m_enableLog)
6225		m_log << TestLog::Message << "glVertexAttrib4ubv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6226	m_gl.vertexAttrib4ubv(index, v);
6227}
6228
6229void CallLogWrapper::glVertexAttrib4uiv (glw::GLuint index, const glw::GLuint *v)
6230{
6231	if (m_enableLog)
6232		m_log << TestLog::Message << "glVertexAttrib4uiv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6233	m_gl.vertexAttrib4uiv(index, v);
6234}
6235
6236void CallLogWrapper::glVertexAttrib4usv (glw::GLuint index, const glw::GLushort *v)
6237{
6238	if (m_enableLog)
6239		m_log << TestLog::Message << "glVertexAttrib4usv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6240	m_gl.vertexAttrib4usv(index, v);
6241}
6242
6243void CallLogWrapper::glVertexAttribBinding (glw::GLuint attribindex, glw::GLuint bindingindex)
6244{
6245	if (m_enableLog)
6246		m_log << TestLog::Message << "glVertexAttribBinding(" << attribindex << ", " << bindingindex << ");" << TestLog::EndMessage;
6247	m_gl.vertexAttribBinding(attribindex, bindingindex);
6248}
6249
6250void CallLogWrapper::glVertexAttribDivisor (glw::GLuint index, glw::GLuint divisor)
6251{
6252	if (m_enableLog)
6253		m_log << TestLog::Message << "glVertexAttribDivisor(" << index << ", " << divisor << ");" << TestLog::EndMessage;
6254	m_gl.vertexAttribDivisor(index, divisor);
6255}
6256
6257void CallLogWrapper::glVertexAttribFormat (glw::GLuint attribindex, glw::GLint size, glw::GLenum type, glw::GLboolean normalized, glw::GLuint relativeoffset)
6258{
6259	if (m_enableLog)
6260		m_log << TestLog::Message << "glVertexAttribFormat(" << attribindex << ", " << size << ", " << getTypeStr(type) << ", " << getBooleanStr(normalized) << ", " << relativeoffset << ");" << TestLog::EndMessage;
6261	m_gl.vertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
6262}
6263
6264void CallLogWrapper::glVertexAttribI1i (glw::GLuint index, glw::GLint x)
6265{
6266	if (m_enableLog)
6267		m_log << TestLog::Message << "glVertexAttribI1i(" << index << ", " << x << ");" << TestLog::EndMessage;
6268	m_gl.vertexAttribI1i(index, x);
6269}
6270
6271void CallLogWrapper::glVertexAttribI1iv (glw::GLuint index, const glw::GLint *v)
6272{
6273	if (m_enableLog)
6274		m_log << TestLog::Message << "glVertexAttribI1iv(" << index << ", " << getPointerStr(v, 1) << ");" << TestLog::EndMessage;
6275	m_gl.vertexAttribI1iv(index, v);
6276}
6277
6278void CallLogWrapper::glVertexAttribI1ui (glw::GLuint index, glw::GLuint x)
6279{
6280	if (m_enableLog)
6281		m_log << TestLog::Message << "glVertexAttribI1ui(" << index << ", " << x << ");" << TestLog::EndMessage;
6282	m_gl.vertexAttribI1ui(index, x);
6283}
6284
6285void CallLogWrapper::glVertexAttribI1uiv (glw::GLuint index, const glw::GLuint *v)
6286{
6287	if (m_enableLog)
6288		m_log << TestLog::Message << "glVertexAttribI1uiv(" << index << ", " << getPointerStr(v, 1) << ");" << TestLog::EndMessage;
6289	m_gl.vertexAttribI1uiv(index, v);
6290}
6291
6292void CallLogWrapper::glVertexAttribI2i (glw::GLuint index, glw::GLint x, glw::GLint y)
6293{
6294	if (m_enableLog)
6295		m_log << TestLog::Message << "glVertexAttribI2i(" << index << ", " << x << ", " << y << ");" << TestLog::EndMessage;
6296	m_gl.vertexAttribI2i(index, x, y);
6297}
6298
6299void CallLogWrapper::glVertexAttribI2iv (glw::GLuint index, const glw::GLint *v)
6300{
6301	if (m_enableLog)
6302		m_log << TestLog::Message << "glVertexAttribI2iv(" << index << ", " << getPointerStr(v, 2) << ");" << TestLog::EndMessage;
6303	m_gl.vertexAttribI2iv(index, v);
6304}
6305
6306void CallLogWrapper::glVertexAttribI2ui (glw::GLuint index, glw::GLuint x, glw::GLuint y)
6307{
6308	if (m_enableLog)
6309		m_log << TestLog::Message << "glVertexAttribI2ui(" << index << ", " << x << ", " << y << ");" << TestLog::EndMessage;
6310	m_gl.vertexAttribI2ui(index, x, y);
6311}
6312
6313void CallLogWrapper::glVertexAttribI2uiv (glw::GLuint index, const glw::GLuint *v)
6314{
6315	if (m_enableLog)
6316		m_log << TestLog::Message << "glVertexAttribI2uiv(" << index << ", " << getPointerStr(v, 2) << ");" << TestLog::EndMessage;
6317	m_gl.vertexAttribI2uiv(index, v);
6318}
6319
6320void CallLogWrapper::glVertexAttribI3i (glw::GLuint index, glw::GLint x, glw::GLint y, glw::GLint z)
6321{
6322	if (m_enableLog)
6323		m_log << TestLog::Message << "glVertexAttribI3i(" << index << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
6324	m_gl.vertexAttribI3i(index, x, y, z);
6325}
6326
6327void CallLogWrapper::glVertexAttribI3iv (glw::GLuint index, const glw::GLint *v)
6328{
6329	if (m_enableLog)
6330		m_log << TestLog::Message << "glVertexAttribI3iv(" << index << ", " << getPointerStr(v, 3) << ");" << TestLog::EndMessage;
6331	m_gl.vertexAttribI3iv(index, v);
6332}
6333
6334void CallLogWrapper::glVertexAttribI3ui (glw::GLuint index, glw::GLuint x, glw::GLuint y, glw::GLuint z)
6335{
6336	if (m_enableLog)
6337		m_log << TestLog::Message << "glVertexAttribI3ui(" << index << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
6338	m_gl.vertexAttribI3ui(index, x, y, z);
6339}
6340
6341void CallLogWrapper::glVertexAttribI3uiv (glw::GLuint index, const glw::GLuint *v)
6342{
6343	if (m_enableLog)
6344		m_log << TestLog::Message << "glVertexAttribI3uiv(" << index << ", " << getPointerStr(v, 3) << ");" << TestLog::EndMessage;
6345	m_gl.vertexAttribI3uiv(index, v);
6346}
6347
6348void CallLogWrapper::glVertexAttribI4bv (glw::GLuint index, const glw::GLbyte *v)
6349{
6350	if (m_enableLog)
6351		m_log << TestLog::Message << "glVertexAttribI4bv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6352	m_gl.vertexAttribI4bv(index, v);
6353}
6354
6355void CallLogWrapper::glVertexAttribI4i (glw::GLuint index, glw::GLint x, glw::GLint y, glw::GLint z, glw::GLint w)
6356{
6357	if (m_enableLog)
6358		m_log << TestLog::Message << "glVertexAttribI4i(" << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
6359	m_gl.vertexAttribI4i(index, x, y, z, w);
6360}
6361
6362void CallLogWrapper::glVertexAttribI4iv (glw::GLuint index, const glw::GLint *v)
6363{
6364	if (m_enableLog)
6365		m_log << TestLog::Message << "glVertexAttribI4iv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6366	m_gl.vertexAttribI4iv(index, v);
6367}
6368
6369void CallLogWrapper::glVertexAttribI4sv (glw::GLuint index, const glw::GLshort *v)
6370{
6371	if (m_enableLog)
6372		m_log << TestLog::Message << "glVertexAttribI4sv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6373	m_gl.vertexAttribI4sv(index, v);
6374}
6375
6376void CallLogWrapper::glVertexAttribI4ubv (glw::GLuint index, const glw::GLubyte *v)
6377{
6378	if (m_enableLog)
6379		m_log << TestLog::Message << "glVertexAttribI4ubv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6380	m_gl.vertexAttribI4ubv(index, v);
6381}
6382
6383void CallLogWrapper::glVertexAttribI4ui (glw::GLuint index, glw::GLuint x, glw::GLuint y, glw::GLuint z, glw::GLuint w)
6384{
6385	if (m_enableLog)
6386		m_log << TestLog::Message << "glVertexAttribI4ui(" << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
6387	m_gl.vertexAttribI4ui(index, x, y, z, w);
6388}
6389
6390void CallLogWrapper::glVertexAttribI4uiv (glw::GLuint index, const glw::GLuint *v)
6391{
6392	if (m_enableLog)
6393		m_log << TestLog::Message << "glVertexAttribI4uiv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6394	m_gl.vertexAttribI4uiv(index, v);
6395}
6396
6397void CallLogWrapper::glVertexAttribI4usv (glw::GLuint index, const glw::GLushort *v)
6398{
6399	if (m_enableLog)
6400		m_log << TestLog::Message << "glVertexAttribI4usv(" << index << ", " << getPointerStr(v, 4) << ");" << TestLog::EndMessage;
6401	m_gl.vertexAttribI4usv(index, v);
6402}
6403
6404void CallLogWrapper::glVertexAttribIFormat (glw::GLuint attribindex, glw::GLint size, glw::GLenum type, glw::GLuint relativeoffset)
6405{
6406	if (m_enableLog)
6407		m_log << TestLog::Message << "glVertexAttribIFormat(" << attribindex << ", " << size << ", " << getTypeStr(type) << ", " << relativeoffset << ");" << TestLog::EndMessage;
6408	m_gl.vertexAttribIFormat(attribindex, size, type, relativeoffset);
6409}
6410
6411void CallLogWrapper::glVertexAttribIPointer (glw::GLuint index, glw::GLint size, glw::GLenum type, glw::GLsizei stride, const void *pointer)
6412{
6413	if (m_enableLog)
6414		m_log << TestLog::Message << "glVertexAttribIPointer(" << index << ", " << size << ", " << getTypeStr(type) << ", " << stride << ", " << pointer << ");" << TestLog::EndMessage;
6415	m_gl.vertexAttribIPointer(index, size, type, stride, pointer);
6416}
6417
6418void CallLogWrapper::glVertexAttribL1d (glw::GLuint index, glw::GLdouble x)
6419{
6420	if (m_enableLog)
6421		m_log << TestLog::Message << "glVertexAttribL1d(" << index << ", " << x << ");" << TestLog::EndMessage;
6422	m_gl.vertexAttribL1d(index, x);
6423}
6424
6425void CallLogWrapper::glVertexAttribL1dv (glw::GLuint index, const glw::GLdouble *v)
6426{
6427	if (m_enableLog)
6428		m_log << TestLog::Message << "glVertexAttribL1dv(" << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
6429	m_gl.vertexAttribL1dv(index, v);
6430}
6431
6432void CallLogWrapper::glVertexAttribL2d (glw::GLuint index, glw::GLdouble x, glw::GLdouble y)
6433{
6434	if (m_enableLog)
6435		m_log << TestLog::Message << "glVertexAttribL2d(" << index << ", " << x << ", " << y << ");" << TestLog::EndMessage;
6436	m_gl.vertexAttribL2d(index, x, y);
6437}
6438
6439void CallLogWrapper::glVertexAttribL2dv (glw::GLuint index, const glw::GLdouble *v)
6440{
6441	if (m_enableLog)
6442		m_log << TestLog::Message << "glVertexAttribL2dv(" << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
6443	m_gl.vertexAttribL2dv(index, v);
6444}
6445
6446void CallLogWrapper::glVertexAttribL3d (glw::GLuint index, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z)
6447{
6448	if (m_enableLog)
6449		m_log << TestLog::Message << "glVertexAttribL3d(" << index << ", " << x << ", " << y << ", " << z << ");" << TestLog::EndMessage;
6450	m_gl.vertexAttribL3d(index, x, y, z);
6451}
6452
6453void CallLogWrapper::glVertexAttribL3dv (glw::GLuint index, const glw::GLdouble *v)
6454{
6455	if (m_enableLog)
6456		m_log << TestLog::Message << "glVertexAttribL3dv(" << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
6457	m_gl.vertexAttribL3dv(index, v);
6458}
6459
6460void CallLogWrapper::glVertexAttribL4d (glw::GLuint index, glw::GLdouble x, glw::GLdouble y, glw::GLdouble z, glw::GLdouble w)
6461{
6462	if (m_enableLog)
6463		m_log << TestLog::Message << "glVertexAttribL4d(" << index << ", " << x << ", " << y << ", " << z << ", " << w << ");" << TestLog::EndMessage;
6464	m_gl.vertexAttribL4d(index, x, y, z, w);
6465}
6466
6467void CallLogWrapper::glVertexAttribL4dv (glw::GLuint index, const glw::GLdouble *v)
6468{
6469	if (m_enableLog)
6470		m_log << TestLog::Message << "glVertexAttribL4dv(" << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
6471	m_gl.vertexAttribL4dv(index, v);
6472}
6473
6474void CallLogWrapper::glVertexAttribLFormat (glw::GLuint attribindex, glw::GLint size, glw::GLenum type, glw::GLuint relativeoffset)
6475{
6476	if (m_enableLog)
6477		m_log << TestLog::Message << "glVertexAttribLFormat(" << attribindex << ", " << size << ", " << toHex(type) << ", " << relativeoffset << ");" << TestLog::EndMessage;
6478	m_gl.vertexAttribLFormat(attribindex, size, type, relativeoffset);
6479}
6480
6481void CallLogWrapper::glVertexAttribLPointer (glw::GLuint index, glw::GLint size, glw::GLenum type, glw::GLsizei stride, const void *pointer)
6482{
6483	if (m_enableLog)
6484		m_log << TestLog::Message << "glVertexAttribLPointer(" << index << ", " << size << ", " << toHex(type) << ", " << stride << ", " << pointer << ");" << TestLog::EndMessage;
6485	m_gl.vertexAttribLPointer(index, size, type, stride, pointer);
6486}
6487
6488void CallLogWrapper::glVertexAttribP1ui (glw::GLuint index, glw::GLenum type, glw::GLboolean normalized, glw::GLuint value)
6489{
6490	if (m_enableLog)
6491		m_log << TestLog::Message << "glVertexAttribP1ui(" << index << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << value << ");" << TestLog::EndMessage;
6492	m_gl.vertexAttribP1ui(index, type, normalized, value);
6493}
6494
6495void CallLogWrapper::glVertexAttribP1uiv (glw::GLuint index, glw::GLenum type, glw::GLboolean normalized, const glw::GLuint *value)
6496{
6497	if (m_enableLog)
6498		m_log << TestLog::Message << "glVertexAttribP1uiv(" << index << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
6499	m_gl.vertexAttribP1uiv(index, type, normalized, value);
6500}
6501
6502void CallLogWrapper::glVertexAttribP2ui (glw::GLuint index, glw::GLenum type, glw::GLboolean normalized, glw::GLuint value)
6503{
6504	if (m_enableLog)
6505		m_log << TestLog::Message << "glVertexAttribP2ui(" << index << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << value << ");" << TestLog::EndMessage;
6506	m_gl.vertexAttribP2ui(index, type, normalized, value);
6507}
6508
6509void CallLogWrapper::glVertexAttribP2uiv (glw::GLuint index, glw::GLenum type, glw::GLboolean normalized, const glw::GLuint *value)
6510{
6511	if (m_enableLog)
6512		m_log << TestLog::Message << "glVertexAttribP2uiv(" << index << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
6513	m_gl.vertexAttribP2uiv(index, type, normalized, value);
6514}
6515
6516void CallLogWrapper::glVertexAttribP3ui (glw::GLuint index, glw::GLenum type, glw::GLboolean normalized, glw::GLuint value)
6517{
6518	if (m_enableLog)
6519		m_log << TestLog::Message << "glVertexAttribP3ui(" << index << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << value << ");" << TestLog::EndMessage;
6520	m_gl.vertexAttribP3ui(index, type, normalized, value);
6521}
6522
6523void CallLogWrapper::glVertexAttribP3uiv (glw::GLuint index, glw::GLenum type, glw::GLboolean normalized, const glw::GLuint *value)
6524{
6525	if (m_enableLog)
6526		m_log << TestLog::Message << "glVertexAttribP3uiv(" << index << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
6527	m_gl.vertexAttribP3uiv(index, type, normalized, value);
6528}
6529
6530void CallLogWrapper::glVertexAttribP4ui (glw::GLuint index, glw::GLenum type, glw::GLboolean normalized, glw::GLuint value)
6531{
6532	if (m_enableLog)
6533		m_log << TestLog::Message << "glVertexAttribP4ui(" << index << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << value << ");" << TestLog::EndMessage;
6534	m_gl.vertexAttribP4ui(index, type, normalized, value);
6535}
6536
6537void CallLogWrapper::glVertexAttribP4uiv (glw::GLuint index, glw::GLenum type, glw::GLboolean normalized, const glw::GLuint *value)
6538{
6539	if (m_enableLog)
6540		m_log << TestLog::Message << "glVertexAttribP4uiv(" << index << ", " << toHex(type) << ", " << getBooleanStr(normalized) << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(value))) << ");" << TestLog::EndMessage;
6541	m_gl.vertexAttribP4uiv(index, type, normalized, value);
6542}
6543
6544void CallLogWrapper::glVertexAttribPointer (glw::GLuint index, glw::GLint size, glw::GLenum type, glw::GLboolean normalized, glw::GLsizei stride, const void *pointer)
6545{
6546	if (m_enableLog)
6547		m_log << TestLog::Message << "glVertexAttribPointer(" << index << ", " << size << ", " << getTypeStr(type) << ", " << getBooleanStr(normalized) << ", " << stride << ", " << pointer << ");" << TestLog::EndMessage;
6548	m_gl.vertexAttribPointer(index, size, type, normalized, stride, pointer);
6549}
6550
6551void CallLogWrapper::glVertexBindingDivisor (glw::GLuint bindingindex, glw::GLuint divisor)
6552{
6553	if (m_enableLog)
6554		m_log << TestLog::Message << "glVertexBindingDivisor(" << bindingindex << ", " << divisor << ");" << TestLog::EndMessage;
6555	m_gl.vertexBindingDivisor(bindingindex, divisor);
6556}
6557
6558void CallLogWrapper::glViewport (glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
6559{
6560	if (m_enableLog)
6561		m_log << TestLog::Message << "glViewport(" << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
6562	m_gl.viewport(x, y, width, height);
6563}
6564
6565void CallLogWrapper::glViewportArrayv (glw::GLuint first, glw::GLsizei count, const glw::GLfloat *v)
6566{
6567	if (m_enableLog)
6568		m_log << TestLog::Message << "glViewportArrayv(" << first << ", " << count << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
6569	m_gl.viewportArrayv(first, count, v);
6570}
6571
6572void CallLogWrapper::glViewportIndexedf (glw::GLuint index, glw::GLfloat x, glw::GLfloat y, glw::GLfloat w, glw::GLfloat h)
6573{
6574	if (m_enableLog)
6575		m_log << TestLog::Message << "glViewportIndexedf(" << index << ", " << x << ", " << y << ", " << w << ", " << h << ");" << TestLog::EndMessage;
6576	m_gl.viewportIndexedf(index, x, y, w, h);
6577}
6578
6579void CallLogWrapper::glViewportIndexedfv (glw::GLuint index, const glw::GLfloat *v)
6580{
6581	if (m_enableLog)
6582		m_log << TestLog::Message << "glViewportIndexedfv(" << index << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(v))) << ");" << TestLog::EndMessage;
6583	m_gl.viewportIndexedfv(index, v);
6584}
6585
6586void CallLogWrapper::glWaitSync (glw::GLsync sync, glw::GLbitfield flags, glw::GLuint64 timeout)
6587{
6588	if (m_enableLog)
6589		m_log << TestLog::Message << "glWaitSync(" << sync << ", " << toHex(flags) << ", " << timeout << ");" << TestLog::EndMessage;
6590	m_gl.waitSync(sync, flags, timeout);
6591}
6592