• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Generated Code - DO NOT EDIT !!
2 // generated by 'emugen'
3 
4 
5 #include <string.h>
6 #include "gl2_opcodes.h"
7 
8 #include "gl2_enc.h"
9 
10 
11 #include <stdio.h>
enc_unsupported()12 static void enc_unsupported()
13 {
14 	ALOGE("Function is unsupported\n");
15 }
16 
glActiveTexture_enc(void * self,GLenum texture)17 void glActiveTexture_enc(void *self , GLenum texture)
18 {
19 
20 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
21 	IOStream *stream = ctx->m_stream;
22 
23 	 unsigned char *ptr;
24 	 const size_t packetSize = 8 + 4;
25 	ptr = stream->alloc(packetSize);
26 	int tmp = OP_glActiveTexture;memcpy(ptr, &tmp, 4); ptr += 4;
27 	memcpy(ptr, &packetSize, 4);  ptr += 4;
28 
29 		memcpy(ptr, &texture, 4); ptr += 4;
30 }
31 
glAttachShader_enc(void * self,GLuint program,GLuint shader)32 void glAttachShader_enc(void *self , GLuint program, GLuint shader)
33 {
34 
35 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
36 	IOStream *stream = ctx->m_stream;
37 
38 	 unsigned char *ptr;
39 	 const size_t packetSize = 8 + 4 + 4;
40 	ptr = stream->alloc(packetSize);
41 	int tmp = OP_glAttachShader;memcpy(ptr, &tmp, 4); ptr += 4;
42 	memcpy(ptr, &packetSize, 4);  ptr += 4;
43 
44 		memcpy(ptr, &program, 4); ptr += 4;
45 		memcpy(ptr, &shader, 4); ptr += 4;
46 }
47 
glBindAttribLocation_enc(void * self,GLuint program,GLuint index,const GLchar * name)48 void glBindAttribLocation_enc(void *self , GLuint program, GLuint index, const GLchar* name)
49 {
50 
51 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
52 	IOStream *stream = ctx->m_stream;
53 
54 	const unsigned int __size_name =  (strlen(name) + 1);
55 	 unsigned char *ptr;
56 	 const size_t packetSize = 8 + 4 + 4 + __size_name + 1*4;
57 	ptr = stream->alloc(packetSize);
58 	int tmp = OP_glBindAttribLocation;memcpy(ptr, &tmp, 4); ptr += 4;
59 	memcpy(ptr, &packetSize, 4);  ptr += 4;
60 
61 		memcpy(ptr, &program, 4); ptr += 4;
62 		memcpy(ptr, &index, 4); ptr += 4;
63 	*(unsigned int *)(ptr) = __size_name; ptr += 4;
64 	memcpy(ptr, name, __size_name);ptr += __size_name;
65 }
66 
glBindBuffer_enc(void * self,GLenum target,GLuint buffer)67 void glBindBuffer_enc(void *self , GLenum target, GLuint buffer)
68 {
69 
70 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
71 	IOStream *stream = ctx->m_stream;
72 
73 	 unsigned char *ptr;
74 	 const size_t packetSize = 8 + 4 + 4;
75 	ptr = stream->alloc(packetSize);
76 	int tmp = OP_glBindBuffer;memcpy(ptr, &tmp, 4); ptr += 4;
77 	memcpy(ptr, &packetSize, 4);  ptr += 4;
78 
79 		memcpy(ptr, &target, 4); ptr += 4;
80 		memcpy(ptr, &buffer, 4); ptr += 4;
81 }
82 
glBindFramebuffer_enc(void * self,GLenum target,GLuint framebuffer)83 void glBindFramebuffer_enc(void *self , GLenum target, GLuint framebuffer)
84 {
85 
86 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
87 	IOStream *stream = ctx->m_stream;
88 
89 	 unsigned char *ptr;
90 	 const size_t packetSize = 8 + 4 + 4;
91 	ptr = stream->alloc(packetSize);
92 	int tmp = OP_glBindFramebuffer;memcpy(ptr, &tmp, 4); ptr += 4;
93 	memcpy(ptr, &packetSize, 4);  ptr += 4;
94 
95 		memcpy(ptr, &target, 4); ptr += 4;
96 		memcpy(ptr, &framebuffer, 4); ptr += 4;
97 }
98 
glBindRenderbuffer_enc(void * self,GLenum target,GLuint renderbuffer)99 void glBindRenderbuffer_enc(void *self , GLenum target, GLuint renderbuffer)
100 {
101 
102 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
103 	IOStream *stream = ctx->m_stream;
104 
105 	 unsigned char *ptr;
106 	 const size_t packetSize = 8 + 4 + 4;
107 	ptr = stream->alloc(packetSize);
108 	int tmp = OP_glBindRenderbuffer;memcpy(ptr, &tmp, 4); ptr += 4;
109 	memcpy(ptr, &packetSize, 4);  ptr += 4;
110 
111 		memcpy(ptr, &target, 4); ptr += 4;
112 		memcpy(ptr, &renderbuffer, 4); ptr += 4;
113 }
114 
glBindTexture_enc(void * self,GLenum target,GLuint texture)115 void glBindTexture_enc(void *self , GLenum target, GLuint texture)
116 {
117 
118 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
119 	IOStream *stream = ctx->m_stream;
120 
121 	 unsigned char *ptr;
122 	 const size_t packetSize = 8 + 4 + 4;
123 	ptr = stream->alloc(packetSize);
124 	int tmp = OP_glBindTexture;memcpy(ptr, &tmp, 4); ptr += 4;
125 	memcpy(ptr, &packetSize, 4);  ptr += 4;
126 
127 		memcpy(ptr, &target, 4); ptr += 4;
128 		memcpy(ptr, &texture, 4); ptr += 4;
129 }
130 
glBlendColor_enc(void * self,GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)131 void glBlendColor_enc(void *self , GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
132 {
133 
134 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
135 	IOStream *stream = ctx->m_stream;
136 
137 	 unsigned char *ptr;
138 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
139 	ptr = stream->alloc(packetSize);
140 	int tmp = OP_glBlendColor;memcpy(ptr, &tmp, 4); ptr += 4;
141 	memcpy(ptr, &packetSize, 4);  ptr += 4;
142 
143 		memcpy(ptr, &red, 4); ptr += 4;
144 		memcpy(ptr, &green, 4); ptr += 4;
145 		memcpy(ptr, &blue, 4); ptr += 4;
146 		memcpy(ptr, &alpha, 4); ptr += 4;
147 }
148 
glBlendEquation_enc(void * self,GLenum mode)149 void glBlendEquation_enc(void *self , GLenum mode)
150 {
151 
152 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
153 	IOStream *stream = ctx->m_stream;
154 
155 	 unsigned char *ptr;
156 	 const size_t packetSize = 8 + 4;
157 	ptr = stream->alloc(packetSize);
158 	int tmp = OP_glBlendEquation;memcpy(ptr, &tmp, 4); ptr += 4;
159 	memcpy(ptr, &packetSize, 4);  ptr += 4;
160 
161 		memcpy(ptr, &mode, 4); ptr += 4;
162 }
163 
glBlendEquationSeparate_enc(void * self,GLenum modeRGB,GLenum modeAlpha)164 void glBlendEquationSeparate_enc(void *self , GLenum modeRGB, GLenum modeAlpha)
165 {
166 
167 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
168 	IOStream *stream = ctx->m_stream;
169 
170 	 unsigned char *ptr;
171 	 const size_t packetSize = 8 + 4 + 4;
172 	ptr = stream->alloc(packetSize);
173 	int tmp = OP_glBlendEquationSeparate;memcpy(ptr, &tmp, 4); ptr += 4;
174 	memcpy(ptr, &packetSize, 4);  ptr += 4;
175 
176 		memcpy(ptr, &modeRGB, 4); ptr += 4;
177 		memcpy(ptr, &modeAlpha, 4); ptr += 4;
178 }
179 
glBlendFunc_enc(void * self,GLenum sfactor,GLenum dfactor)180 void glBlendFunc_enc(void *self , GLenum sfactor, GLenum dfactor)
181 {
182 
183 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
184 	IOStream *stream = ctx->m_stream;
185 
186 	 unsigned char *ptr;
187 	 const size_t packetSize = 8 + 4 + 4;
188 	ptr = stream->alloc(packetSize);
189 	int tmp = OP_glBlendFunc;memcpy(ptr, &tmp, 4); ptr += 4;
190 	memcpy(ptr, &packetSize, 4);  ptr += 4;
191 
192 		memcpy(ptr, &sfactor, 4); ptr += 4;
193 		memcpy(ptr, &dfactor, 4); ptr += 4;
194 }
195 
glBlendFuncSeparate_enc(void * self,GLenum srcRGB,GLenum dstRGB,GLenum srcAlpha,GLenum dstAlpha)196 void glBlendFuncSeparate_enc(void *self , GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
197 {
198 
199 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
200 	IOStream *stream = ctx->m_stream;
201 
202 	 unsigned char *ptr;
203 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
204 	ptr = stream->alloc(packetSize);
205 	int tmp = OP_glBlendFuncSeparate;memcpy(ptr, &tmp, 4); ptr += 4;
206 	memcpy(ptr, &packetSize, 4);  ptr += 4;
207 
208 		memcpy(ptr, &srcRGB, 4); ptr += 4;
209 		memcpy(ptr, &dstRGB, 4); ptr += 4;
210 		memcpy(ptr, &srcAlpha, 4); ptr += 4;
211 		memcpy(ptr, &dstAlpha, 4); ptr += 4;
212 }
213 
glBufferData_enc(void * self,GLenum target,GLsizeiptr size,const GLvoid * data,GLenum usage)214 void glBufferData_enc(void *self , GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage)
215 {
216 
217 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
218 	IOStream *stream = ctx->m_stream;
219 
220 	const unsigned int __size_data = ((data != NULL) ?  size : 0);
221 	 unsigned char *ptr;
222 	 const size_t packetSize = 8 + 4 + 4 + __size_data + 4 + 1*4;
223 	ptr = stream->alloc(8 + 4 + 4);
224 	int tmp = OP_glBufferData;memcpy(ptr, &tmp, 4); ptr += 4;
225 	memcpy(ptr, &packetSize, 4);  ptr += 4;
226 
227 		memcpy(ptr, &target, 4); ptr += 4;
228 		memcpy(ptr, &size, 4); ptr += 4;
229 	stream->flush();
230 	stream->writeFully(&__size_data,4);
231 	if (data != NULL) stream->writeFully(data, __size_data);
232 	ptr = stream->alloc(4);
233 		memcpy(ptr, &usage, 4); ptr += 4;
234 }
235 
glBufferSubData_enc(void * self,GLenum target,GLintptr offset,GLsizeiptr size,const GLvoid * data)236 void glBufferSubData_enc(void *self , GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data)
237 {
238 
239 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
240 	IOStream *stream = ctx->m_stream;
241 
242 	const unsigned int __size_data =  size;
243 	 unsigned char *ptr;
244 	 const size_t packetSize = 8 + 4 + 4 + 4 + __size_data + 1*4;
245 	ptr = stream->alloc(8 + 4 + 4 + 4);
246 	int tmp = OP_glBufferSubData;memcpy(ptr, &tmp, 4); ptr += 4;
247 	memcpy(ptr, &packetSize, 4);  ptr += 4;
248 
249 		memcpy(ptr, &target, 4); ptr += 4;
250 		memcpy(ptr, &offset, 4); ptr += 4;
251 		memcpy(ptr, &size, 4); ptr += 4;
252 	stream->flush();
253 	stream->writeFully(&__size_data,4);
254 	stream->writeFully(data, __size_data);
255 }
256 
glCheckFramebufferStatus_enc(void * self,GLenum target)257 GLenum glCheckFramebufferStatus_enc(void *self , GLenum target)
258 {
259 
260 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
261 	IOStream *stream = ctx->m_stream;
262 
263 	 unsigned char *ptr;
264 	 const size_t packetSize = 8 + 4;
265 	ptr = stream->alloc(packetSize);
266 	int tmp = OP_glCheckFramebufferStatus;memcpy(ptr, &tmp, 4); ptr += 4;
267 	memcpy(ptr, &packetSize, 4);  ptr += 4;
268 
269 		memcpy(ptr, &target, 4); ptr += 4;
270 
271 	GLenum retval;
272 	stream->readback(&retval, 4);
273 	return retval;
274 }
275 
glClear_enc(void * self,GLbitfield mask)276 void glClear_enc(void *self , GLbitfield mask)
277 {
278 
279 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
280 	IOStream *stream = ctx->m_stream;
281 
282 	 unsigned char *ptr;
283 	 const size_t packetSize = 8 + 4;
284 	ptr = stream->alloc(packetSize);
285 	int tmp = OP_glClear;memcpy(ptr, &tmp, 4); ptr += 4;
286 	memcpy(ptr, &packetSize, 4);  ptr += 4;
287 
288 		memcpy(ptr, &mask, 4); ptr += 4;
289 }
290 
glClearColor_enc(void * self,GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)291 void glClearColor_enc(void *self , GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
292 {
293 
294 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
295 	IOStream *stream = ctx->m_stream;
296 
297 	 unsigned char *ptr;
298 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
299 	ptr = stream->alloc(packetSize);
300 	int tmp = OP_glClearColor;memcpy(ptr, &tmp, 4); ptr += 4;
301 	memcpy(ptr, &packetSize, 4);  ptr += 4;
302 
303 		memcpy(ptr, &red, 4); ptr += 4;
304 		memcpy(ptr, &green, 4); ptr += 4;
305 		memcpy(ptr, &blue, 4); ptr += 4;
306 		memcpy(ptr, &alpha, 4); ptr += 4;
307 }
308 
glClearDepthf_enc(void * self,GLclampf depth)309 void glClearDepthf_enc(void *self , GLclampf depth)
310 {
311 
312 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
313 	IOStream *stream = ctx->m_stream;
314 
315 	 unsigned char *ptr;
316 	 const size_t packetSize = 8 + 4;
317 	ptr = stream->alloc(packetSize);
318 	int tmp = OP_glClearDepthf;memcpy(ptr, &tmp, 4); ptr += 4;
319 	memcpy(ptr, &packetSize, 4);  ptr += 4;
320 
321 		memcpy(ptr, &depth, 4); ptr += 4;
322 }
323 
glClearStencil_enc(void * self,GLint s)324 void glClearStencil_enc(void *self , GLint s)
325 {
326 
327 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
328 	IOStream *stream = ctx->m_stream;
329 
330 	 unsigned char *ptr;
331 	 const size_t packetSize = 8 + 4;
332 	ptr = stream->alloc(packetSize);
333 	int tmp = OP_glClearStencil;memcpy(ptr, &tmp, 4); ptr += 4;
334 	memcpy(ptr, &packetSize, 4);  ptr += 4;
335 
336 		memcpy(ptr, &s, 4); ptr += 4;
337 }
338 
glColorMask_enc(void * self,GLboolean red,GLboolean green,GLboolean blue,GLboolean alpha)339 void glColorMask_enc(void *self , GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
340 {
341 
342 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
343 	IOStream *stream = ctx->m_stream;
344 
345 	 unsigned char *ptr;
346 	 const size_t packetSize = 8 + 1 + 1 + 1 + 1;
347 	ptr = stream->alloc(packetSize);
348 	int tmp = OP_glColorMask;memcpy(ptr, &tmp, 4); ptr += 4;
349 	memcpy(ptr, &packetSize, 4);  ptr += 4;
350 
351 		memcpy(ptr, &red, 1); ptr += 1;
352 		memcpy(ptr, &green, 1); ptr += 1;
353 		memcpy(ptr, &blue, 1); ptr += 1;
354 		memcpy(ptr, &alpha, 1); ptr += 1;
355 }
356 
glCompileShader_enc(void * self,GLuint shader)357 void glCompileShader_enc(void *self , GLuint shader)
358 {
359 
360 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
361 	IOStream *stream = ctx->m_stream;
362 
363 	 unsigned char *ptr;
364 	 const size_t packetSize = 8 + 4;
365 	ptr = stream->alloc(packetSize);
366 	int tmp = OP_glCompileShader;memcpy(ptr, &tmp, 4); ptr += 4;
367 	memcpy(ptr, &packetSize, 4);  ptr += 4;
368 
369 		memcpy(ptr, &shader, 4); ptr += 4;
370 }
371 
glCompressedTexImage2D_enc(void * self,GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLint border,GLsizei imageSize,const GLvoid * data)372 void glCompressedTexImage2D_enc(void *self , GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data)
373 {
374 
375 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
376 	IOStream *stream = ctx->m_stream;
377 
378 	const unsigned int __size_data = ((data != NULL) ?  imageSize : 0);
379 	 unsigned char *ptr;
380 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_data + 1*4;
381 	ptr = stream->alloc(8 + 4 + 4 + 4 + 4 + 4 + 4 + 4);
382 	int tmp = OP_glCompressedTexImage2D;memcpy(ptr, &tmp, 4); ptr += 4;
383 	memcpy(ptr, &packetSize, 4);  ptr += 4;
384 
385 		memcpy(ptr, &target, 4); ptr += 4;
386 		memcpy(ptr, &level, 4); ptr += 4;
387 		memcpy(ptr, &internalformat, 4); ptr += 4;
388 		memcpy(ptr, &width, 4); ptr += 4;
389 		memcpy(ptr, &height, 4); ptr += 4;
390 		memcpy(ptr, &border, 4); ptr += 4;
391 		memcpy(ptr, &imageSize, 4); ptr += 4;
392 	stream->flush();
393 	stream->writeFully(&__size_data,4);
394 	if (data != NULL) stream->writeFully(data, __size_data);
395 }
396 
glCompressedTexSubImage2D_enc(void * self,GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLsizei imageSize,const GLvoid * data)397 void glCompressedTexSubImage2D_enc(void *self , GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data)
398 {
399 
400 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
401 	IOStream *stream = ctx->m_stream;
402 
403 	const unsigned int __size_data =  imageSize;
404 	 unsigned char *ptr;
405 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_data + 1*4;
406 	ptr = stream->alloc(8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4);
407 	int tmp = OP_glCompressedTexSubImage2D;memcpy(ptr, &tmp, 4); ptr += 4;
408 	memcpy(ptr, &packetSize, 4);  ptr += 4;
409 
410 		memcpy(ptr, &target, 4); ptr += 4;
411 		memcpy(ptr, &level, 4); ptr += 4;
412 		memcpy(ptr, &xoffset, 4); ptr += 4;
413 		memcpy(ptr, &yoffset, 4); ptr += 4;
414 		memcpy(ptr, &width, 4); ptr += 4;
415 		memcpy(ptr, &height, 4); ptr += 4;
416 		memcpy(ptr, &format, 4); ptr += 4;
417 		memcpy(ptr, &imageSize, 4); ptr += 4;
418 	stream->flush();
419 	stream->writeFully(&__size_data,4);
420 	stream->writeFully(data, __size_data);
421 }
422 
glCopyTexImage2D_enc(void * self,GLenum target,GLint level,GLenum internalformat,GLint x,GLint y,GLsizei width,GLsizei height,GLint border)423 void glCopyTexImage2D_enc(void *self , GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
424 {
425 
426 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
427 	IOStream *stream = ctx->m_stream;
428 
429 	 unsigned char *ptr;
430 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4;
431 	ptr = stream->alloc(packetSize);
432 	int tmp = OP_glCopyTexImage2D;memcpy(ptr, &tmp, 4); ptr += 4;
433 	memcpy(ptr, &packetSize, 4);  ptr += 4;
434 
435 		memcpy(ptr, &target, 4); ptr += 4;
436 		memcpy(ptr, &level, 4); ptr += 4;
437 		memcpy(ptr, &internalformat, 4); ptr += 4;
438 		memcpy(ptr, &x, 4); ptr += 4;
439 		memcpy(ptr, &y, 4); ptr += 4;
440 		memcpy(ptr, &width, 4); ptr += 4;
441 		memcpy(ptr, &height, 4); ptr += 4;
442 		memcpy(ptr, &border, 4); ptr += 4;
443 }
444 
glCopyTexSubImage2D_enc(void * self,GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint x,GLint y,GLsizei width,GLsizei height)445 void glCopyTexSubImage2D_enc(void *self , GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
446 {
447 
448 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
449 	IOStream *stream = ctx->m_stream;
450 
451 	 unsigned char *ptr;
452 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4;
453 	ptr = stream->alloc(packetSize);
454 	int tmp = OP_glCopyTexSubImage2D;memcpy(ptr, &tmp, 4); ptr += 4;
455 	memcpy(ptr, &packetSize, 4);  ptr += 4;
456 
457 		memcpy(ptr, &target, 4); ptr += 4;
458 		memcpy(ptr, &level, 4); ptr += 4;
459 		memcpy(ptr, &xoffset, 4); ptr += 4;
460 		memcpy(ptr, &yoffset, 4); ptr += 4;
461 		memcpy(ptr, &x, 4); ptr += 4;
462 		memcpy(ptr, &y, 4); ptr += 4;
463 		memcpy(ptr, &width, 4); ptr += 4;
464 		memcpy(ptr, &height, 4); ptr += 4;
465 }
466 
glCreateProgram_enc(void * self)467 GLuint glCreateProgram_enc(void *self )
468 {
469 
470 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
471 	IOStream *stream = ctx->m_stream;
472 
473 	 unsigned char *ptr;
474 	 const size_t packetSize = 8 + 0;
475 	ptr = stream->alloc(packetSize);
476 	int tmp = OP_glCreateProgram;memcpy(ptr, &tmp, 4); ptr += 4;
477 	memcpy(ptr, &packetSize, 4);  ptr += 4;
478 
479 
480 	GLuint retval;
481 	stream->readback(&retval, 4);
482 	return retval;
483 }
484 
glCreateShader_enc(void * self,GLenum type)485 GLuint glCreateShader_enc(void *self , GLenum type)
486 {
487 
488 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
489 	IOStream *stream = ctx->m_stream;
490 
491 	 unsigned char *ptr;
492 	 const size_t packetSize = 8 + 4;
493 	ptr = stream->alloc(packetSize);
494 	int tmp = OP_glCreateShader;memcpy(ptr, &tmp, 4); ptr += 4;
495 	memcpy(ptr, &packetSize, 4);  ptr += 4;
496 
497 		memcpy(ptr, &type, 4); ptr += 4;
498 
499 	GLuint retval;
500 	stream->readback(&retval, 4);
501 	return retval;
502 }
503 
glCullFace_enc(void * self,GLenum mode)504 void glCullFace_enc(void *self , GLenum mode)
505 {
506 
507 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
508 	IOStream *stream = ctx->m_stream;
509 
510 	 unsigned char *ptr;
511 	 const size_t packetSize = 8 + 4;
512 	ptr = stream->alloc(packetSize);
513 	int tmp = OP_glCullFace;memcpy(ptr, &tmp, 4); ptr += 4;
514 	memcpy(ptr, &packetSize, 4);  ptr += 4;
515 
516 		memcpy(ptr, &mode, 4); ptr += 4;
517 }
518 
glDeleteBuffers_enc(void * self,GLsizei n,const GLuint * buffers)519 void glDeleteBuffers_enc(void *self , GLsizei n, const GLuint* buffers)
520 {
521 
522 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
523 	IOStream *stream = ctx->m_stream;
524 
525 	const unsigned int __size_buffers =  (n * sizeof(GLuint));
526 	 unsigned char *ptr;
527 	 const size_t packetSize = 8 + 4 + __size_buffers + 1*4;
528 	ptr = stream->alloc(packetSize);
529 	int tmp = OP_glDeleteBuffers;memcpy(ptr, &tmp, 4); ptr += 4;
530 	memcpy(ptr, &packetSize, 4);  ptr += 4;
531 
532 		memcpy(ptr, &n, 4); ptr += 4;
533 	*(unsigned int *)(ptr) = __size_buffers; ptr += 4;
534 	memcpy(ptr, buffers, __size_buffers);ptr += __size_buffers;
535 }
536 
glDeleteFramebuffers_enc(void * self,GLsizei n,const GLuint * framebuffers)537 void glDeleteFramebuffers_enc(void *self , GLsizei n, const GLuint* framebuffers)
538 {
539 
540 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
541 	IOStream *stream = ctx->m_stream;
542 
543 	const unsigned int __size_framebuffers =  (n * sizeof(GLuint));
544 	 unsigned char *ptr;
545 	 const size_t packetSize = 8 + 4 + __size_framebuffers + 1*4;
546 	ptr = stream->alloc(packetSize);
547 	int tmp = OP_glDeleteFramebuffers;memcpy(ptr, &tmp, 4); ptr += 4;
548 	memcpy(ptr, &packetSize, 4);  ptr += 4;
549 
550 		memcpy(ptr, &n, 4); ptr += 4;
551 	*(unsigned int *)(ptr) = __size_framebuffers; ptr += 4;
552 	memcpy(ptr, framebuffers, __size_framebuffers);ptr += __size_framebuffers;
553 }
554 
glDeleteProgram_enc(void * self,GLuint program)555 void glDeleteProgram_enc(void *self , GLuint program)
556 {
557 
558 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
559 	IOStream *stream = ctx->m_stream;
560 
561 	 unsigned char *ptr;
562 	 const size_t packetSize = 8 + 4;
563 	ptr = stream->alloc(packetSize);
564 	int tmp = OP_glDeleteProgram;memcpy(ptr, &tmp, 4); ptr += 4;
565 	memcpy(ptr, &packetSize, 4);  ptr += 4;
566 
567 		memcpy(ptr, &program, 4); ptr += 4;
568 }
569 
glDeleteRenderbuffers_enc(void * self,GLsizei n,const GLuint * renderbuffers)570 void glDeleteRenderbuffers_enc(void *self , GLsizei n, const GLuint* renderbuffers)
571 {
572 
573 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
574 	IOStream *stream = ctx->m_stream;
575 
576 	const unsigned int __size_renderbuffers =  (n * sizeof(GLuint));
577 	 unsigned char *ptr;
578 	 const size_t packetSize = 8 + 4 + __size_renderbuffers + 1*4;
579 	ptr = stream->alloc(packetSize);
580 	int tmp = OP_glDeleteRenderbuffers;memcpy(ptr, &tmp, 4); ptr += 4;
581 	memcpy(ptr, &packetSize, 4);  ptr += 4;
582 
583 		memcpy(ptr, &n, 4); ptr += 4;
584 	*(unsigned int *)(ptr) = __size_renderbuffers; ptr += 4;
585 	memcpy(ptr, renderbuffers, __size_renderbuffers);ptr += __size_renderbuffers;
586 }
587 
glDeleteShader_enc(void * self,GLuint shader)588 void glDeleteShader_enc(void *self , GLuint shader)
589 {
590 
591 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
592 	IOStream *stream = ctx->m_stream;
593 
594 	 unsigned char *ptr;
595 	 const size_t packetSize = 8 + 4;
596 	ptr = stream->alloc(packetSize);
597 	int tmp = OP_glDeleteShader;memcpy(ptr, &tmp, 4); ptr += 4;
598 	memcpy(ptr, &packetSize, 4);  ptr += 4;
599 
600 		memcpy(ptr, &shader, 4); ptr += 4;
601 }
602 
glDeleteTextures_enc(void * self,GLsizei n,const GLuint * textures)603 void glDeleteTextures_enc(void *self , GLsizei n, const GLuint* textures)
604 {
605 
606 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
607 	IOStream *stream = ctx->m_stream;
608 
609 	const unsigned int __size_textures =  (n * sizeof(GLuint));
610 	 unsigned char *ptr;
611 	 const size_t packetSize = 8 + 4 + __size_textures + 1*4;
612 	ptr = stream->alloc(packetSize);
613 	int tmp = OP_glDeleteTextures;memcpy(ptr, &tmp, 4); ptr += 4;
614 	memcpy(ptr, &packetSize, 4);  ptr += 4;
615 
616 		memcpy(ptr, &n, 4); ptr += 4;
617 	*(unsigned int *)(ptr) = __size_textures; ptr += 4;
618 	memcpy(ptr, textures, __size_textures);ptr += __size_textures;
619 }
620 
glDepthFunc_enc(void * self,GLenum func)621 void glDepthFunc_enc(void *self , GLenum func)
622 {
623 
624 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
625 	IOStream *stream = ctx->m_stream;
626 
627 	 unsigned char *ptr;
628 	 const size_t packetSize = 8 + 4;
629 	ptr = stream->alloc(packetSize);
630 	int tmp = OP_glDepthFunc;memcpy(ptr, &tmp, 4); ptr += 4;
631 	memcpy(ptr, &packetSize, 4);  ptr += 4;
632 
633 		memcpy(ptr, &func, 4); ptr += 4;
634 }
635 
glDepthMask_enc(void * self,GLboolean flag)636 void glDepthMask_enc(void *self , GLboolean flag)
637 {
638 
639 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
640 	IOStream *stream = ctx->m_stream;
641 
642 	 unsigned char *ptr;
643 	 const size_t packetSize = 8 + 1;
644 	ptr = stream->alloc(packetSize);
645 	int tmp = OP_glDepthMask;memcpy(ptr, &tmp, 4); ptr += 4;
646 	memcpy(ptr, &packetSize, 4);  ptr += 4;
647 
648 		memcpy(ptr, &flag, 1); ptr += 1;
649 }
650 
glDepthRangef_enc(void * self,GLclampf zNear,GLclampf zFar)651 void glDepthRangef_enc(void *self , GLclampf zNear, GLclampf zFar)
652 {
653 
654 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
655 	IOStream *stream = ctx->m_stream;
656 
657 	 unsigned char *ptr;
658 	 const size_t packetSize = 8 + 4 + 4;
659 	ptr = stream->alloc(packetSize);
660 	int tmp = OP_glDepthRangef;memcpy(ptr, &tmp, 4); ptr += 4;
661 	memcpy(ptr, &packetSize, 4);  ptr += 4;
662 
663 		memcpy(ptr, &zNear, 4); ptr += 4;
664 		memcpy(ptr, &zFar, 4); ptr += 4;
665 }
666 
glDetachShader_enc(void * self,GLuint program,GLuint shader)667 void glDetachShader_enc(void *self , GLuint program, GLuint shader)
668 {
669 
670 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
671 	IOStream *stream = ctx->m_stream;
672 
673 	 unsigned char *ptr;
674 	 const size_t packetSize = 8 + 4 + 4;
675 	ptr = stream->alloc(packetSize);
676 	int tmp = OP_glDetachShader;memcpy(ptr, &tmp, 4); ptr += 4;
677 	memcpy(ptr, &packetSize, 4);  ptr += 4;
678 
679 		memcpy(ptr, &program, 4); ptr += 4;
680 		memcpy(ptr, &shader, 4); ptr += 4;
681 }
682 
glDisable_enc(void * self,GLenum cap)683 void glDisable_enc(void *self , GLenum cap)
684 {
685 
686 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
687 	IOStream *stream = ctx->m_stream;
688 
689 	 unsigned char *ptr;
690 	 const size_t packetSize = 8 + 4;
691 	ptr = stream->alloc(packetSize);
692 	int tmp = OP_glDisable;memcpy(ptr, &tmp, 4); ptr += 4;
693 	memcpy(ptr, &packetSize, 4);  ptr += 4;
694 
695 		memcpy(ptr, &cap, 4); ptr += 4;
696 }
697 
glDisableVertexAttribArray_enc(void * self,GLuint index)698 void glDisableVertexAttribArray_enc(void *self , GLuint index)
699 {
700 
701 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
702 	IOStream *stream = ctx->m_stream;
703 
704 	 unsigned char *ptr;
705 	 const size_t packetSize = 8 + 4;
706 	ptr = stream->alloc(packetSize);
707 	int tmp = OP_glDisableVertexAttribArray;memcpy(ptr, &tmp, 4); ptr += 4;
708 	memcpy(ptr, &packetSize, 4);  ptr += 4;
709 
710 		memcpy(ptr, &index, 4); ptr += 4;
711 }
712 
glDrawArrays_enc(void * self,GLenum mode,GLint first,GLsizei count)713 void glDrawArrays_enc(void *self , GLenum mode, GLint first, GLsizei count)
714 {
715 
716 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
717 	IOStream *stream = ctx->m_stream;
718 
719 	 unsigned char *ptr;
720 	 const size_t packetSize = 8 + 4 + 4 + 4;
721 	ptr = stream->alloc(packetSize);
722 	int tmp = OP_glDrawArrays;memcpy(ptr, &tmp, 4); ptr += 4;
723 	memcpy(ptr, &packetSize, 4);  ptr += 4;
724 
725 		memcpy(ptr, &mode, 4); ptr += 4;
726 		memcpy(ptr, &first, 4); ptr += 4;
727 		memcpy(ptr, &count, 4); ptr += 4;
728 }
729 
glEnable_enc(void * self,GLenum cap)730 void glEnable_enc(void *self , GLenum cap)
731 {
732 
733 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
734 	IOStream *stream = ctx->m_stream;
735 
736 	 unsigned char *ptr;
737 	 const size_t packetSize = 8 + 4;
738 	ptr = stream->alloc(packetSize);
739 	int tmp = OP_glEnable;memcpy(ptr, &tmp, 4); ptr += 4;
740 	memcpy(ptr, &packetSize, 4);  ptr += 4;
741 
742 		memcpy(ptr, &cap, 4); ptr += 4;
743 }
744 
glEnableVertexAttribArray_enc(void * self,GLuint index)745 void glEnableVertexAttribArray_enc(void *self , GLuint index)
746 {
747 
748 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
749 	IOStream *stream = ctx->m_stream;
750 
751 	 unsigned char *ptr;
752 	 const size_t packetSize = 8 + 4;
753 	ptr = stream->alloc(packetSize);
754 	int tmp = OP_glEnableVertexAttribArray;memcpy(ptr, &tmp, 4); ptr += 4;
755 	memcpy(ptr, &packetSize, 4);  ptr += 4;
756 
757 		memcpy(ptr, &index, 4); ptr += 4;
758 }
759 
glFinish_enc(void * self)760 void glFinish_enc(void *self )
761 {
762 
763 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
764 	IOStream *stream = ctx->m_stream;
765 
766 	 unsigned char *ptr;
767 	 const size_t packetSize = 8 + 0;
768 	ptr = stream->alloc(packetSize);
769 	int tmp = OP_glFinish;memcpy(ptr, &tmp, 4); ptr += 4;
770 	memcpy(ptr, &packetSize, 4);  ptr += 4;
771 
772 }
773 
glFlush_enc(void * self)774 void glFlush_enc(void *self )
775 {
776 
777 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
778 	IOStream *stream = ctx->m_stream;
779 
780 	 unsigned char *ptr;
781 	 const size_t packetSize = 8 + 0;
782 	ptr = stream->alloc(packetSize);
783 	int tmp = OP_glFlush;memcpy(ptr, &tmp, 4); ptr += 4;
784 	memcpy(ptr, &packetSize, 4);  ptr += 4;
785 
786 }
787 
glFramebufferRenderbuffer_enc(void * self,GLenum target,GLenum attachment,GLenum renderbuffertarget,GLuint renderbuffer)788 void glFramebufferRenderbuffer_enc(void *self , GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
789 {
790 
791 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
792 	IOStream *stream = ctx->m_stream;
793 
794 	 unsigned char *ptr;
795 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
796 	ptr = stream->alloc(packetSize);
797 	int tmp = OP_glFramebufferRenderbuffer;memcpy(ptr, &tmp, 4); ptr += 4;
798 	memcpy(ptr, &packetSize, 4);  ptr += 4;
799 
800 		memcpy(ptr, &target, 4); ptr += 4;
801 		memcpy(ptr, &attachment, 4); ptr += 4;
802 		memcpy(ptr, &renderbuffertarget, 4); ptr += 4;
803 		memcpy(ptr, &renderbuffer, 4); ptr += 4;
804 }
805 
glFramebufferTexture2D_enc(void * self,GLenum target,GLenum attachment,GLenum textarget,GLuint texture,GLint level)806 void glFramebufferTexture2D_enc(void *self , GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
807 {
808 
809 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
810 	IOStream *stream = ctx->m_stream;
811 
812 	 unsigned char *ptr;
813 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4;
814 	ptr = stream->alloc(packetSize);
815 	int tmp = OP_glFramebufferTexture2D;memcpy(ptr, &tmp, 4); ptr += 4;
816 	memcpy(ptr, &packetSize, 4);  ptr += 4;
817 
818 		memcpy(ptr, &target, 4); ptr += 4;
819 		memcpy(ptr, &attachment, 4); ptr += 4;
820 		memcpy(ptr, &textarget, 4); ptr += 4;
821 		memcpy(ptr, &texture, 4); ptr += 4;
822 		memcpy(ptr, &level, 4); ptr += 4;
823 }
824 
glFrontFace_enc(void * self,GLenum mode)825 void glFrontFace_enc(void *self , GLenum mode)
826 {
827 
828 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
829 	IOStream *stream = ctx->m_stream;
830 
831 	 unsigned char *ptr;
832 	 const size_t packetSize = 8 + 4;
833 	ptr = stream->alloc(packetSize);
834 	int tmp = OP_glFrontFace;memcpy(ptr, &tmp, 4); ptr += 4;
835 	memcpy(ptr, &packetSize, 4);  ptr += 4;
836 
837 		memcpy(ptr, &mode, 4); ptr += 4;
838 }
839 
glGenBuffers_enc(void * self,GLsizei n,GLuint * buffers)840 void glGenBuffers_enc(void *self , GLsizei n, GLuint* buffers)
841 {
842 
843 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
844 	IOStream *stream = ctx->m_stream;
845 
846 	const unsigned int __size_buffers =  (n * sizeof(GLuint));
847 	 unsigned char *ptr;
848 	 const size_t packetSize = 8 + 4 + __size_buffers + 1*4;
849 	ptr = stream->alloc(packetSize);
850 	int tmp = OP_glGenBuffers;memcpy(ptr, &tmp, 4); ptr += 4;
851 	memcpy(ptr, &packetSize, 4);  ptr += 4;
852 
853 		memcpy(ptr, &n, 4); ptr += 4;
854 	*(unsigned int *)(ptr) = __size_buffers; ptr += 4;
855 	stream->readback(buffers, __size_buffers);
856 }
857 
glGenerateMipmap_enc(void * self,GLenum target)858 void glGenerateMipmap_enc(void *self , GLenum target)
859 {
860 
861 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
862 	IOStream *stream = ctx->m_stream;
863 
864 	 unsigned char *ptr;
865 	 const size_t packetSize = 8 + 4;
866 	ptr = stream->alloc(packetSize);
867 	int tmp = OP_glGenerateMipmap;memcpy(ptr, &tmp, 4); ptr += 4;
868 	memcpy(ptr, &packetSize, 4);  ptr += 4;
869 
870 		memcpy(ptr, &target, 4); ptr += 4;
871 }
872 
glGenFramebuffers_enc(void * self,GLsizei n,GLuint * framebuffers)873 void glGenFramebuffers_enc(void *self , GLsizei n, GLuint* framebuffers)
874 {
875 
876 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
877 	IOStream *stream = ctx->m_stream;
878 
879 	const unsigned int __size_framebuffers =  (n * sizeof(GLuint));
880 	 unsigned char *ptr;
881 	 const size_t packetSize = 8 + 4 + __size_framebuffers + 1*4;
882 	ptr = stream->alloc(packetSize);
883 	int tmp = OP_glGenFramebuffers;memcpy(ptr, &tmp, 4); ptr += 4;
884 	memcpy(ptr, &packetSize, 4);  ptr += 4;
885 
886 		memcpy(ptr, &n, 4); ptr += 4;
887 	*(unsigned int *)(ptr) = __size_framebuffers; ptr += 4;
888 	stream->readback(framebuffers, __size_framebuffers);
889 }
890 
glGenRenderbuffers_enc(void * self,GLsizei n,GLuint * renderbuffers)891 void glGenRenderbuffers_enc(void *self , GLsizei n, GLuint* renderbuffers)
892 {
893 
894 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
895 	IOStream *stream = ctx->m_stream;
896 
897 	const unsigned int __size_renderbuffers =  (n * sizeof(GLuint));
898 	 unsigned char *ptr;
899 	 const size_t packetSize = 8 + 4 + __size_renderbuffers + 1*4;
900 	ptr = stream->alloc(packetSize);
901 	int tmp = OP_glGenRenderbuffers;memcpy(ptr, &tmp, 4); ptr += 4;
902 	memcpy(ptr, &packetSize, 4);  ptr += 4;
903 
904 		memcpy(ptr, &n, 4); ptr += 4;
905 	*(unsigned int *)(ptr) = __size_renderbuffers; ptr += 4;
906 	stream->readback(renderbuffers, __size_renderbuffers);
907 }
908 
glGenTextures_enc(void * self,GLsizei n,GLuint * textures)909 void glGenTextures_enc(void *self , GLsizei n, GLuint* textures)
910 {
911 
912 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
913 	IOStream *stream = ctx->m_stream;
914 
915 	const unsigned int __size_textures =  (n * sizeof(GLuint));
916 	 unsigned char *ptr;
917 	 const size_t packetSize = 8 + 4 + __size_textures + 1*4;
918 	ptr = stream->alloc(packetSize);
919 	int tmp = OP_glGenTextures;memcpy(ptr, &tmp, 4); ptr += 4;
920 	memcpy(ptr, &packetSize, 4);  ptr += 4;
921 
922 		memcpy(ptr, &n, 4); ptr += 4;
923 	*(unsigned int *)(ptr) = __size_textures; ptr += 4;
924 	stream->readback(textures, __size_textures);
925 }
926 
glGetActiveAttrib_enc(void * self,GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,GLint * size,GLenum * type,GLchar * name)927 void glGetActiveAttrib_enc(void *self , GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
928 {
929 
930 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
931 	IOStream *stream = ctx->m_stream;
932 
933 	const unsigned int __size_length = ((length != NULL) ?  (sizeof(GLsizei)) : 0);
934 	const unsigned int __size_size =  (sizeof(GLint));
935 	const unsigned int __size_type =  (sizeof(GLenum));
936 	const unsigned int __size_name = ((name != NULL) ?  bufsize : 0);
937 	 unsigned char *ptr;
938 	 const size_t packetSize = 8 + 4 + 4 + 4 + __size_length + __size_size + __size_type + __size_name + 4*4;
939 	ptr = stream->alloc(packetSize);
940 	int tmp = OP_glGetActiveAttrib;memcpy(ptr, &tmp, 4); ptr += 4;
941 	memcpy(ptr, &packetSize, 4);  ptr += 4;
942 
943 		memcpy(ptr, &program, 4); ptr += 4;
944 		memcpy(ptr, &index, 4); ptr += 4;
945 		memcpy(ptr, &bufsize, 4); ptr += 4;
946 	*(unsigned int *)(ptr) = __size_length; ptr += 4;
947 	*(unsigned int *)(ptr) = __size_size; ptr += 4;
948 	*(unsigned int *)(ptr) = __size_type; ptr += 4;
949 	*(unsigned int *)(ptr) = __size_name; ptr += 4;
950 	if (length != NULL) stream->readback(length, __size_length);
951 	stream->readback(size, __size_size);
952 	stream->readback(type, __size_type);
953 	if (name != NULL) stream->readback(name, __size_name);
954 }
955 
glGetActiveUniform_enc(void * self,GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,GLint * size,GLenum * type,GLchar * name)956 void glGetActiveUniform_enc(void *self , GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
957 {
958 
959 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
960 	IOStream *stream = ctx->m_stream;
961 
962 	const unsigned int __size_length = ((length != NULL) ?  (sizeof(GLsizei)) : 0);
963 	const unsigned int __size_size =  (sizeof(GLint));
964 	const unsigned int __size_type =  (sizeof(GLenum));
965 	const unsigned int __size_name = ((name != NULL) ?  bufsize : 0);
966 	 unsigned char *ptr;
967 	 const size_t packetSize = 8 + 4 + 4 + 4 + __size_length + __size_size + __size_type + __size_name + 4*4;
968 	ptr = stream->alloc(packetSize);
969 	int tmp = OP_glGetActiveUniform;memcpy(ptr, &tmp, 4); ptr += 4;
970 	memcpy(ptr, &packetSize, 4);  ptr += 4;
971 
972 		memcpy(ptr, &program, 4); ptr += 4;
973 		memcpy(ptr, &index, 4); ptr += 4;
974 		memcpy(ptr, &bufsize, 4); ptr += 4;
975 	*(unsigned int *)(ptr) = __size_length; ptr += 4;
976 	*(unsigned int *)(ptr) = __size_size; ptr += 4;
977 	*(unsigned int *)(ptr) = __size_type; ptr += 4;
978 	*(unsigned int *)(ptr) = __size_name; ptr += 4;
979 	if (length != NULL) stream->readback(length, __size_length);
980 	stream->readback(size, __size_size);
981 	stream->readback(type, __size_type);
982 	if (name != NULL) stream->readback(name, __size_name);
983 }
984 
glGetAttachedShaders_enc(void * self,GLuint program,GLsizei maxcount,GLsizei * count,GLuint * shaders)985 void glGetAttachedShaders_enc(void *self , GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders)
986 {
987 
988 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
989 	IOStream *stream = ctx->m_stream;
990 
991 	const unsigned int __size_count = ((count != NULL) ?  (sizeof(GLsizei)) : 0);
992 	const unsigned int __size_shaders =  (maxcount*sizeof(GLuint));
993 	 unsigned char *ptr;
994 	 const size_t packetSize = 8 + 4 + 4 + __size_count + __size_shaders + 2*4;
995 	ptr = stream->alloc(packetSize);
996 	int tmp = OP_glGetAttachedShaders;memcpy(ptr, &tmp, 4); ptr += 4;
997 	memcpy(ptr, &packetSize, 4);  ptr += 4;
998 
999 		memcpy(ptr, &program, 4); ptr += 4;
1000 		memcpy(ptr, &maxcount, 4); ptr += 4;
1001 	*(unsigned int *)(ptr) = __size_count; ptr += 4;
1002 	*(unsigned int *)(ptr) = __size_shaders; ptr += 4;
1003 	if (count != NULL) stream->readback(count, __size_count);
1004 	stream->readback(shaders, __size_shaders);
1005 }
1006 
glGetAttribLocation_enc(void * self,GLuint program,const GLchar * name)1007 int glGetAttribLocation_enc(void *self , GLuint program, const GLchar* name)
1008 {
1009 
1010 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1011 	IOStream *stream = ctx->m_stream;
1012 
1013 	const unsigned int __size_name =  (strlen(name) + 1);
1014 	 unsigned char *ptr;
1015 	 const size_t packetSize = 8 + 4 + __size_name + 1*4;
1016 	ptr = stream->alloc(packetSize);
1017 	int tmp = OP_glGetAttribLocation;memcpy(ptr, &tmp, 4); ptr += 4;
1018 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1019 
1020 		memcpy(ptr, &program, 4); ptr += 4;
1021 	*(unsigned int *)(ptr) = __size_name; ptr += 4;
1022 	memcpy(ptr, name, __size_name);ptr += __size_name;
1023 
1024 	int retval;
1025 	stream->readback(&retval, 4);
1026 	return retval;
1027 }
1028 
glGetBooleanv_enc(void * self,GLenum pname,GLboolean * params)1029 void glGetBooleanv_enc(void *self , GLenum pname, GLboolean* params)
1030 {
1031 
1032 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1033 	IOStream *stream = ctx->m_stream;
1034 
1035 	const unsigned int __size_params =  (glUtilsParamSize(pname) * sizeof(GLboolean));
1036 	 unsigned char *ptr;
1037 	 const size_t packetSize = 8 + 4 + __size_params + 1*4;
1038 	ptr = stream->alloc(packetSize);
1039 	int tmp = OP_glGetBooleanv;memcpy(ptr, &tmp, 4); ptr += 4;
1040 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1041 
1042 		memcpy(ptr, &pname, 4); ptr += 4;
1043 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1044 	stream->readback(params, __size_params);
1045 }
1046 
glGetBufferParameteriv_enc(void * self,GLenum target,GLenum pname,GLint * params)1047 void glGetBufferParameteriv_enc(void *self , GLenum target, GLenum pname, GLint* params)
1048 {
1049 
1050 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1051 	IOStream *stream = ctx->m_stream;
1052 
1053 	const unsigned int __size_params =  (sizeof(GLint));
1054 	 unsigned char *ptr;
1055 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1056 	ptr = stream->alloc(packetSize);
1057 	int tmp = OP_glGetBufferParameteriv;memcpy(ptr, &tmp, 4); ptr += 4;
1058 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1059 
1060 		memcpy(ptr, &target, 4); ptr += 4;
1061 		memcpy(ptr, &pname, 4); ptr += 4;
1062 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1063 	stream->readback(params, __size_params);
1064 }
1065 
glGetError_enc(void * self)1066 GLenum glGetError_enc(void *self )
1067 {
1068 
1069 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1070 	IOStream *stream = ctx->m_stream;
1071 
1072 	 unsigned char *ptr;
1073 	 const size_t packetSize = 8 + 0;
1074 	ptr = stream->alloc(packetSize);
1075 	int tmp = OP_glGetError;memcpy(ptr, &tmp, 4); ptr += 4;
1076 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1077 
1078 
1079 	GLenum retval;
1080 	stream->readback(&retval, 4);
1081 	return retval;
1082 }
1083 
glGetFloatv_enc(void * self,GLenum pname,GLfloat * params)1084 void glGetFloatv_enc(void *self , GLenum pname, GLfloat* params)
1085 {
1086 
1087 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1088 	IOStream *stream = ctx->m_stream;
1089 
1090 	const unsigned int __size_params =  (glUtilsParamSize(pname) * sizeof(GLfloat));
1091 	 unsigned char *ptr;
1092 	 const size_t packetSize = 8 + 4 + __size_params + 1*4;
1093 	ptr = stream->alloc(packetSize);
1094 	int tmp = OP_glGetFloatv;memcpy(ptr, &tmp, 4); ptr += 4;
1095 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1096 
1097 		memcpy(ptr, &pname, 4); ptr += 4;
1098 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1099 	stream->readback(params, __size_params);
1100 }
1101 
glGetFramebufferAttachmentParameteriv_enc(void * self,GLenum target,GLenum attachment,GLenum pname,GLint * params)1102 void glGetFramebufferAttachmentParameteriv_enc(void *self , GLenum target, GLenum attachment, GLenum pname, GLint* params)
1103 {
1104 
1105 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1106 	IOStream *stream = ctx->m_stream;
1107 
1108 	const unsigned int __size_params =  (sizeof(GLint));
1109 	 unsigned char *ptr;
1110 	 const size_t packetSize = 8 + 4 + 4 + 4 + __size_params + 1*4;
1111 	ptr = stream->alloc(packetSize);
1112 	int tmp = OP_glGetFramebufferAttachmentParameteriv;memcpy(ptr, &tmp, 4); ptr += 4;
1113 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1114 
1115 		memcpy(ptr, &target, 4); ptr += 4;
1116 		memcpy(ptr, &attachment, 4); ptr += 4;
1117 		memcpy(ptr, &pname, 4); ptr += 4;
1118 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1119 	stream->readback(params, __size_params);
1120 }
1121 
glGetIntegerv_enc(void * self,GLenum pname,GLint * params)1122 void glGetIntegerv_enc(void *self , GLenum pname, GLint* params)
1123 {
1124 
1125 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1126 	IOStream *stream = ctx->m_stream;
1127 
1128 	const unsigned int __size_params =  (glUtilsParamSize(pname) * sizeof(GLint));
1129 	 unsigned char *ptr;
1130 	 const size_t packetSize = 8 + 4 + __size_params + 1*4;
1131 	ptr = stream->alloc(packetSize);
1132 	int tmp = OP_glGetIntegerv;memcpy(ptr, &tmp, 4); ptr += 4;
1133 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1134 
1135 		memcpy(ptr, &pname, 4); ptr += 4;
1136 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1137 	stream->readback(params, __size_params);
1138 }
1139 
glGetProgramiv_enc(void * self,GLuint program,GLenum pname,GLint * params)1140 void glGetProgramiv_enc(void *self , GLuint program, GLenum pname, GLint* params)
1141 {
1142 
1143 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1144 	IOStream *stream = ctx->m_stream;
1145 
1146 	const unsigned int __size_params =  sizeof(GLint);
1147 	 unsigned char *ptr;
1148 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1149 	ptr = stream->alloc(packetSize);
1150 	int tmp = OP_glGetProgramiv;memcpy(ptr, &tmp, 4); ptr += 4;
1151 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1152 
1153 		memcpy(ptr, &program, 4); ptr += 4;
1154 		memcpy(ptr, &pname, 4); ptr += 4;
1155 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1156 	stream->readback(params, __size_params);
1157 }
1158 
glGetProgramInfoLog_enc(void * self,GLuint program,GLsizei bufsize,GLsizei * length,GLchar * infolog)1159 void glGetProgramInfoLog_enc(void *self , GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog)
1160 {
1161 
1162 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1163 	IOStream *stream = ctx->m_stream;
1164 
1165 	const unsigned int __size_length = ((length != NULL) ?  (sizeof(GLsizei)) : 0);
1166 	const unsigned int __size_infolog =  bufsize;
1167 	 unsigned char *ptr;
1168 	 const size_t packetSize = 8 + 4 + 4 + __size_length + __size_infolog + 2*4;
1169 	ptr = stream->alloc(packetSize);
1170 	int tmp = OP_glGetProgramInfoLog;memcpy(ptr, &tmp, 4); ptr += 4;
1171 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1172 
1173 		memcpy(ptr, &program, 4); ptr += 4;
1174 		memcpy(ptr, &bufsize, 4); ptr += 4;
1175 	*(unsigned int *)(ptr) = __size_length; ptr += 4;
1176 	*(unsigned int *)(ptr) = __size_infolog; ptr += 4;
1177 	if (length != NULL) stream->readback(length, __size_length);
1178 	stream->readback(infolog, __size_infolog);
1179 }
1180 
glGetRenderbufferParameteriv_enc(void * self,GLenum target,GLenum pname,GLint * params)1181 void glGetRenderbufferParameteriv_enc(void *self , GLenum target, GLenum pname, GLint* params)
1182 {
1183 
1184 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1185 	IOStream *stream = ctx->m_stream;
1186 
1187 	const unsigned int __size_params =  sizeof(GLint);
1188 	 unsigned char *ptr;
1189 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1190 	ptr = stream->alloc(packetSize);
1191 	int tmp = OP_glGetRenderbufferParameteriv;memcpy(ptr, &tmp, 4); ptr += 4;
1192 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1193 
1194 		memcpy(ptr, &target, 4); ptr += 4;
1195 		memcpy(ptr, &pname, 4); ptr += 4;
1196 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1197 	stream->readback(params, __size_params);
1198 }
1199 
glGetShaderiv_enc(void * self,GLuint shader,GLenum pname,GLint * params)1200 void glGetShaderiv_enc(void *self , GLuint shader, GLenum pname, GLint* params)
1201 {
1202 
1203 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1204 	IOStream *stream = ctx->m_stream;
1205 
1206 	const unsigned int __size_params =  sizeof(GLint);
1207 	 unsigned char *ptr;
1208 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1209 	ptr = stream->alloc(packetSize);
1210 	int tmp = OP_glGetShaderiv;memcpy(ptr, &tmp, 4); ptr += 4;
1211 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1212 
1213 		memcpy(ptr, &shader, 4); ptr += 4;
1214 		memcpy(ptr, &pname, 4); ptr += 4;
1215 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1216 	stream->readback(params, __size_params);
1217 }
1218 
glGetShaderInfoLog_enc(void * self,GLuint shader,GLsizei bufsize,GLsizei * length,GLchar * infolog)1219 void glGetShaderInfoLog_enc(void *self , GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog)
1220 {
1221 
1222 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1223 	IOStream *stream = ctx->m_stream;
1224 
1225 	const unsigned int __size_length = ((length != NULL) ?  (sizeof(GLsizei)) : 0);
1226 	const unsigned int __size_infolog =  bufsize;
1227 	 unsigned char *ptr;
1228 	 const size_t packetSize = 8 + 4 + 4 + __size_length + __size_infolog + 2*4;
1229 	ptr = stream->alloc(packetSize);
1230 	int tmp = OP_glGetShaderInfoLog;memcpy(ptr, &tmp, 4); ptr += 4;
1231 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1232 
1233 		memcpy(ptr, &shader, 4); ptr += 4;
1234 		memcpy(ptr, &bufsize, 4); ptr += 4;
1235 	*(unsigned int *)(ptr) = __size_length; ptr += 4;
1236 	*(unsigned int *)(ptr) = __size_infolog; ptr += 4;
1237 	if (length != NULL) stream->readback(length, __size_length);
1238 	stream->readback(infolog, __size_infolog);
1239 }
1240 
glGetShaderPrecisionFormat_enc(void * self,GLenum shadertype,GLenum precisiontype,GLint * range,GLint * precision)1241 void glGetShaderPrecisionFormat_enc(void *self , GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision)
1242 {
1243 
1244 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1245 	IOStream *stream = ctx->m_stream;
1246 
1247 	const unsigned int __size_range =  (2 * sizeof(GLint));
1248 	const unsigned int __size_precision =  (sizeof(GLint));
1249 	 unsigned char *ptr;
1250 	 const size_t packetSize = 8 + 4 + 4 + __size_range + __size_precision + 2*4;
1251 	ptr = stream->alloc(packetSize);
1252 	int tmp = OP_glGetShaderPrecisionFormat;memcpy(ptr, &tmp, 4); ptr += 4;
1253 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1254 
1255 		memcpy(ptr, &shadertype, 4); ptr += 4;
1256 		memcpy(ptr, &precisiontype, 4); ptr += 4;
1257 	*(unsigned int *)(ptr) = __size_range; ptr += 4;
1258 	*(unsigned int *)(ptr) = __size_precision; ptr += 4;
1259 	stream->readback(range, __size_range);
1260 	stream->readback(precision, __size_precision);
1261 }
1262 
glGetShaderSource_enc(void * self,GLuint shader,GLsizei bufsize,GLsizei * length,GLchar * source)1263 void glGetShaderSource_enc(void *self , GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source)
1264 {
1265 
1266 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1267 	IOStream *stream = ctx->m_stream;
1268 
1269 	const unsigned int __size_length = ((length != NULL) ?  (sizeof(GLsizei)) : 0);
1270 	const unsigned int __size_source =  bufsize;
1271 	 unsigned char *ptr;
1272 	 const size_t packetSize = 8 + 4 + 4 + __size_length + __size_source + 2*4;
1273 	ptr = stream->alloc(packetSize);
1274 	int tmp = OP_glGetShaderSource;memcpy(ptr, &tmp, 4); ptr += 4;
1275 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1276 
1277 		memcpy(ptr, &shader, 4); ptr += 4;
1278 		memcpy(ptr, &bufsize, 4); ptr += 4;
1279 	*(unsigned int *)(ptr) = __size_length; ptr += 4;
1280 	*(unsigned int *)(ptr) = __size_source; ptr += 4;
1281 	if (length != NULL) stream->readback(length, __size_length);
1282 	stream->readback(source, __size_source);
1283 }
1284 
glGetTexParameterfv_enc(void * self,GLenum target,GLenum pname,GLfloat * params)1285 void glGetTexParameterfv_enc(void *self , GLenum target, GLenum pname, GLfloat* params)
1286 {
1287 
1288 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1289 	IOStream *stream = ctx->m_stream;
1290 
1291 	const unsigned int __size_params =  (glUtilsParamSize(pname) * sizeof(GLfloat));
1292 	 unsigned char *ptr;
1293 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1294 	ptr = stream->alloc(packetSize);
1295 	int tmp = OP_glGetTexParameterfv;memcpy(ptr, &tmp, 4); ptr += 4;
1296 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1297 
1298 		memcpy(ptr, &target, 4); ptr += 4;
1299 		memcpy(ptr, &pname, 4); ptr += 4;
1300 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1301 	stream->readback(params, __size_params);
1302 }
1303 
glGetTexParameteriv_enc(void * self,GLenum target,GLenum pname,GLint * params)1304 void glGetTexParameteriv_enc(void *self , GLenum target, GLenum pname, GLint* params)
1305 {
1306 
1307 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1308 	IOStream *stream = ctx->m_stream;
1309 
1310 	const unsigned int __size_params =  (glUtilsParamSize(pname) * sizeof(GLint));
1311 	 unsigned char *ptr;
1312 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1313 	ptr = stream->alloc(packetSize);
1314 	int tmp = OP_glGetTexParameteriv;memcpy(ptr, &tmp, 4); ptr += 4;
1315 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1316 
1317 		memcpy(ptr, &target, 4); ptr += 4;
1318 		memcpy(ptr, &pname, 4); ptr += 4;
1319 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1320 	stream->readback(params, __size_params);
1321 }
1322 
glGetUniformfv_enc(void * self,GLuint program,GLint location,GLfloat * params)1323 void glGetUniformfv_enc(void *self , GLuint program, GLint location, GLfloat* params)
1324 {
1325 
1326 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1327 	IOStream *stream = ctx->m_stream;
1328 
1329 	const unsigned int __size_params =  glSizeof(uniformType(self, program, location));
1330 	 unsigned char *ptr;
1331 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1332 	ptr = stream->alloc(packetSize);
1333 	int tmp = OP_glGetUniformfv;memcpy(ptr, &tmp, 4); ptr += 4;
1334 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1335 
1336 		memcpy(ptr, &program, 4); ptr += 4;
1337 		memcpy(ptr, &location, 4); ptr += 4;
1338 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1339 	stream->readback(params, __size_params);
1340 }
1341 
glGetUniformiv_enc(void * self,GLuint program,GLint location,GLint * params)1342 void glGetUniformiv_enc(void *self , GLuint program, GLint location, GLint* params)
1343 {
1344 
1345 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1346 	IOStream *stream = ctx->m_stream;
1347 
1348 	const unsigned int __size_params =  glSizeof(uniformType(self, program, location));
1349 	 unsigned char *ptr;
1350 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1351 	ptr = stream->alloc(packetSize);
1352 	int tmp = OP_glGetUniformiv;memcpy(ptr, &tmp, 4); ptr += 4;
1353 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1354 
1355 		memcpy(ptr, &program, 4); ptr += 4;
1356 		memcpy(ptr, &location, 4); ptr += 4;
1357 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1358 	stream->readback(params, __size_params);
1359 }
1360 
glGetUniformLocation_enc(void * self,GLuint program,const GLchar * name)1361 int glGetUniformLocation_enc(void *self , GLuint program, const GLchar* name)
1362 {
1363 
1364 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1365 	IOStream *stream = ctx->m_stream;
1366 
1367 	const unsigned int __size_name =  (strlen(name) + 1);
1368 	 unsigned char *ptr;
1369 	 const size_t packetSize = 8 + 4 + __size_name + 1*4;
1370 	ptr = stream->alloc(packetSize);
1371 	int tmp = OP_glGetUniformLocation;memcpy(ptr, &tmp, 4); ptr += 4;
1372 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1373 
1374 		memcpy(ptr, &program, 4); ptr += 4;
1375 	*(unsigned int *)(ptr) = __size_name; ptr += 4;
1376 	memcpy(ptr, name, __size_name);ptr += __size_name;
1377 
1378 	int retval;
1379 	stream->readback(&retval, 4);
1380 	return retval;
1381 }
1382 
glGetVertexAttribfv_enc(void * self,GLuint index,GLenum pname,GLfloat * params)1383 void glGetVertexAttribfv_enc(void *self , GLuint index, GLenum pname, GLfloat* params)
1384 {
1385 
1386 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1387 	IOStream *stream = ctx->m_stream;
1388 
1389 	const unsigned int __size_params =  (glUtilsParamSize(pname) * sizeof(GLfloat));
1390 	 unsigned char *ptr;
1391 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1392 	ptr = stream->alloc(packetSize);
1393 	int tmp = OP_glGetVertexAttribfv;memcpy(ptr, &tmp, 4); ptr += 4;
1394 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1395 
1396 		memcpy(ptr, &index, 4); ptr += 4;
1397 		memcpy(ptr, &pname, 4); ptr += 4;
1398 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1399 	stream->readback(params, __size_params);
1400 }
1401 
glGetVertexAttribiv_enc(void * self,GLuint index,GLenum pname,GLint * params)1402 void glGetVertexAttribiv_enc(void *self , GLuint index, GLenum pname, GLint* params)
1403 {
1404 
1405 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1406 	IOStream *stream = ctx->m_stream;
1407 
1408 	const unsigned int __size_params =  (glUtilsParamSize(pname) * sizeof(GLint));
1409 	 unsigned char *ptr;
1410 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1411 	ptr = stream->alloc(packetSize);
1412 	int tmp = OP_glGetVertexAttribiv;memcpy(ptr, &tmp, 4); ptr += 4;
1413 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1414 
1415 		memcpy(ptr, &index, 4); ptr += 4;
1416 		memcpy(ptr, &pname, 4); ptr += 4;
1417 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1418 	stream->readback(params, __size_params);
1419 }
1420 
glHint_enc(void * self,GLenum target,GLenum mode)1421 void glHint_enc(void *self , GLenum target, GLenum mode)
1422 {
1423 
1424 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1425 	IOStream *stream = ctx->m_stream;
1426 
1427 	 unsigned char *ptr;
1428 	 const size_t packetSize = 8 + 4 + 4;
1429 	ptr = stream->alloc(packetSize);
1430 	int tmp = OP_glHint;memcpy(ptr, &tmp, 4); ptr += 4;
1431 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1432 
1433 		memcpy(ptr, &target, 4); ptr += 4;
1434 		memcpy(ptr, &mode, 4); ptr += 4;
1435 }
1436 
glIsBuffer_enc(void * self,GLuint buffer)1437 GLboolean glIsBuffer_enc(void *self , GLuint buffer)
1438 {
1439 
1440 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1441 	IOStream *stream = ctx->m_stream;
1442 
1443 	 unsigned char *ptr;
1444 	 const size_t packetSize = 8 + 4;
1445 	ptr = stream->alloc(packetSize);
1446 	int tmp = OP_glIsBuffer;memcpy(ptr, &tmp, 4); ptr += 4;
1447 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1448 
1449 		memcpy(ptr, &buffer, 4); ptr += 4;
1450 
1451 	GLboolean retval;
1452 	stream->readback(&retval, 1);
1453 	return retval;
1454 }
1455 
glIsEnabled_enc(void * self,GLenum cap)1456 GLboolean glIsEnabled_enc(void *self , GLenum cap)
1457 {
1458 
1459 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1460 	IOStream *stream = ctx->m_stream;
1461 
1462 	 unsigned char *ptr;
1463 	 const size_t packetSize = 8 + 4;
1464 	ptr = stream->alloc(packetSize);
1465 	int tmp = OP_glIsEnabled;memcpy(ptr, &tmp, 4); ptr += 4;
1466 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1467 
1468 		memcpy(ptr, &cap, 4); ptr += 4;
1469 
1470 	GLboolean retval;
1471 	stream->readback(&retval, 1);
1472 	return retval;
1473 }
1474 
glIsFramebuffer_enc(void * self,GLuint framebuffer)1475 GLboolean glIsFramebuffer_enc(void *self , GLuint framebuffer)
1476 {
1477 
1478 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1479 	IOStream *stream = ctx->m_stream;
1480 
1481 	 unsigned char *ptr;
1482 	 const size_t packetSize = 8 + 4;
1483 	ptr = stream->alloc(packetSize);
1484 	int tmp = OP_glIsFramebuffer;memcpy(ptr, &tmp, 4); ptr += 4;
1485 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1486 
1487 		memcpy(ptr, &framebuffer, 4); ptr += 4;
1488 
1489 	GLboolean retval;
1490 	stream->readback(&retval, 1);
1491 	return retval;
1492 }
1493 
glIsProgram_enc(void * self,GLuint program)1494 GLboolean glIsProgram_enc(void *self , GLuint program)
1495 {
1496 
1497 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1498 	IOStream *stream = ctx->m_stream;
1499 
1500 	 unsigned char *ptr;
1501 	 const size_t packetSize = 8 + 4;
1502 	ptr = stream->alloc(packetSize);
1503 	int tmp = OP_glIsProgram;memcpy(ptr, &tmp, 4); ptr += 4;
1504 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1505 
1506 		memcpy(ptr, &program, 4); ptr += 4;
1507 
1508 	GLboolean retval;
1509 	stream->readback(&retval, 1);
1510 	return retval;
1511 }
1512 
glIsRenderbuffer_enc(void * self,GLuint renderbuffer)1513 GLboolean glIsRenderbuffer_enc(void *self , GLuint renderbuffer)
1514 {
1515 
1516 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1517 	IOStream *stream = ctx->m_stream;
1518 
1519 	 unsigned char *ptr;
1520 	 const size_t packetSize = 8 + 4;
1521 	ptr = stream->alloc(packetSize);
1522 	int tmp = OP_glIsRenderbuffer;memcpy(ptr, &tmp, 4); ptr += 4;
1523 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1524 
1525 		memcpy(ptr, &renderbuffer, 4); ptr += 4;
1526 
1527 	GLboolean retval;
1528 	stream->readback(&retval, 1);
1529 	return retval;
1530 }
1531 
glIsShader_enc(void * self,GLuint shader)1532 GLboolean glIsShader_enc(void *self , GLuint shader)
1533 {
1534 
1535 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1536 	IOStream *stream = ctx->m_stream;
1537 
1538 	 unsigned char *ptr;
1539 	 const size_t packetSize = 8 + 4;
1540 	ptr = stream->alloc(packetSize);
1541 	int tmp = OP_glIsShader;memcpy(ptr, &tmp, 4); ptr += 4;
1542 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1543 
1544 		memcpy(ptr, &shader, 4); ptr += 4;
1545 
1546 	GLboolean retval;
1547 	stream->readback(&retval, 1);
1548 	return retval;
1549 }
1550 
glIsTexture_enc(void * self,GLuint texture)1551 GLboolean glIsTexture_enc(void *self , GLuint texture)
1552 {
1553 
1554 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1555 	IOStream *stream = ctx->m_stream;
1556 
1557 	 unsigned char *ptr;
1558 	 const size_t packetSize = 8 + 4;
1559 	ptr = stream->alloc(packetSize);
1560 	int tmp = OP_glIsTexture;memcpy(ptr, &tmp, 4); ptr += 4;
1561 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1562 
1563 		memcpy(ptr, &texture, 4); ptr += 4;
1564 
1565 	GLboolean retval;
1566 	stream->readback(&retval, 1);
1567 	return retval;
1568 }
1569 
glLineWidth_enc(void * self,GLfloat width)1570 void glLineWidth_enc(void *self , GLfloat width)
1571 {
1572 
1573 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1574 	IOStream *stream = ctx->m_stream;
1575 
1576 	 unsigned char *ptr;
1577 	 const size_t packetSize = 8 + 4;
1578 	ptr = stream->alloc(packetSize);
1579 	int tmp = OP_glLineWidth;memcpy(ptr, &tmp, 4); ptr += 4;
1580 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1581 
1582 		memcpy(ptr, &width, 4); ptr += 4;
1583 }
1584 
glLinkProgram_enc(void * self,GLuint program)1585 void glLinkProgram_enc(void *self , GLuint program)
1586 {
1587 
1588 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1589 	IOStream *stream = ctx->m_stream;
1590 
1591 	 unsigned char *ptr;
1592 	 const size_t packetSize = 8 + 4;
1593 	ptr = stream->alloc(packetSize);
1594 	int tmp = OP_glLinkProgram;memcpy(ptr, &tmp, 4); ptr += 4;
1595 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1596 
1597 		memcpy(ptr, &program, 4); ptr += 4;
1598 }
1599 
glPixelStorei_enc(void * self,GLenum pname,GLint param)1600 void glPixelStorei_enc(void *self , GLenum pname, GLint param)
1601 {
1602 
1603 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1604 	IOStream *stream = ctx->m_stream;
1605 
1606 	 unsigned char *ptr;
1607 	 const size_t packetSize = 8 + 4 + 4;
1608 	ptr = stream->alloc(packetSize);
1609 	int tmp = OP_glPixelStorei;memcpy(ptr, &tmp, 4); ptr += 4;
1610 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1611 
1612 		memcpy(ptr, &pname, 4); ptr += 4;
1613 		memcpy(ptr, &param, 4); ptr += 4;
1614 }
1615 
glPolygonOffset_enc(void * self,GLfloat factor,GLfloat units)1616 void glPolygonOffset_enc(void *self , GLfloat factor, GLfloat units)
1617 {
1618 
1619 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1620 	IOStream *stream = ctx->m_stream;
1621 
1622 	 unsigned char *ptr;
1623 	 const size_t packetSize = 8 + 4 + 4;
1624 	ptr = stream->alloc(packetSize);
1625 	int tmp = OP_glPolygonOffset;memcpy(ptr, &tmp, 4); ptr += 4;
1626 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1627 
1628 		memcpy(ptr, &factor, 4); ptr += 4;
1629 		memcpy(ptr, &units, 4); ptr += 4;
1630 }
1631 
glReadPixels_enc(void * self,GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,GLvoid * pixels)1632 void glReadPixels_enc(void *self , GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels)
1633 {
1634 
1635 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1636 	IOStream *stream = ctx->m_stream;
1637 
1638 	const unsigned int __size_pixels =  pixelDataSize(self, width, height, format, type, 1);
1639 	 unsigned char *ptr;
1640 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + __size_pixels + 1*4;
1641 	ptr = stream->alloc(packetSize);
1642 	int tmp = OP_glReadPixels;memcpy(ptr, &tmp, 4); ptr += 4;
1643 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1644 
1645 		memcpy(ptr, &x, 4); ptr += 4;
1646 		memcpy(ptr, &y, 4); ptr += 4;
1647 		memcpy(ptr, &width, 4); ptr += 4;
1648 		memcpy(ptr, &height, 4); ptr += 4;
1649 		memcpy(ptr, &format, 4); ptr += 4;
1650 		memcpy(ptr, &type, 4); ptr += 4;
1651 	*(unsigned int *)(ptr) = __size_pixels; ptr += 4;
1652 	stream->readback(pixels, __size_pixels);
1653 }
1654 
glReleaseShaderCompiler_enc(void * self)1655 void glReleaseShaderCompiler_enc(void *self )
1656 {
1657 
1658 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1659 	IOStream *stream = ctx->m_stream;
1660 
1661 	 unsigned char *ptr;
1662 	 const size_t packetSize = 8 + 0;
1663 	ptr = stream->alloc(packetSize);
1664 	int tmp = OP_glReleaseShaderCompiler;memcpy(ptr, &tmp, 4); ptr += 4;
1665 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1666 
1667 }
1668 
glRenderbufferStorage_enc(void * self,GLenum target,GLenum internalformat,GLsizei width,GLsizei height)1669 void glRenderbufferStorage_enc(void *self , GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1670 {
1671 
1672 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1673 	IOStream *stream = ctx->m_stream;
1674 
1675 	 unsigned char *ptr;
1676 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
1677 	ptr = stream->alloc(packetSize);
1678 	int tmp = OP_glRenderbufferStorage;memcpy(ptr, &tmp, 4); ptr += 4;
1679 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1680 
1681 		memcpy(ptr, &target, 4); ptr += 4;
1682 		memcpy(ptr, &internalformat, 4); ptr += 4;
1683 		memcpy(ptr, &width, 4); ptr += 4;
1684 		memcpy(ptr, &height, 4); ptr += 4;
1685 }
1686 
glSampleCoverage_enc(void * self,GLclampf value,GLboolean invert)1687 void glSampleCoverage_enc(void *self , GLclampf value, GLboolean invert)
1688 {
1689 
1690 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1691 	IOStream *stream = ctx->m_stream;
1692 
1693 	 unsigned char *ptr;
1694 	 const size_t packetSize = 8 + 4 + 1;
1695 	ptr = stream->alloc(packetSize);
1696 	int tmp = OP_glSampleCoverage;memcpy(ptr, &tmp, 4); ptr += 4;
1697 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1698 
1699 		memcpy(ptr, &value, 4); ptr += 4;
1700 		memcpy(ptr, &invert, 1); ptr += 1;
1701 }
1702 
glScissor_enc(void * self,GLint x,GLint y,GLsizei width,GLsizei height)1703 void glScissor_enc(void *self , GLint x, GLint y, GLsizei width, GLsizei height)
1704 {
1705 
1706 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1707 	IOStream *stream = ctx->m_stream;
1708 
1709 	 unsigned char *ptr;
1710 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
1711 	ptr = stream->alloc(packetSize);
1712 	int tmp = OP_glScissor;memcpy(ptr, &tmp, 4); ptr += 4;
1713 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1714 
1715 		memcpy(ptr, &x, 4); ptr += 4;
1716 		memcpy(ptr, &y, 4); ptr += 4;
1717 		memcpy(ptr, &width, 4); ptr += 4;
1718 		memcpy(ptr, &height, 4); ptr += 4;
1719 }
1720 
glStencilFunc_enc(void * self,GLenum func,GLint ref,GLuint mask)1721 void glStencilFunc_enc(void *self , GLenum func, GLint ref, GLuint mask)
1722 {
1723 
1724 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1725 	IOStream *stream = ctx->m_stream;
1726 
1727 	 unsigned char *ptr;
1728 	 const size_t packetSize = 8 + 4 + 4 + 4;
1729 	ptr = stream->alloc(packetSize);
1730 	int tmp = OP_glStencilFunc;memcpy(ptr, &tmp, 4); ptr += 4;
1731 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1732 
1733 		memcpy(ptr, &func, 4); ptr += 4;
1734 		memcpy(ptr, &ref, 4); ptr += 4;
1735 		memcpy(ptr, &mask, 4); ptr += 4;
1736 }
1737 
glStencilFuncSeparate_enc(void * self,GLenum face,GLenum func,GLint ref,GLuint mask)1738 void glStencilFuncSeparate_enc(void *self , GLenum face, GLenum func, GLint ref, GLuint mask)
1739 {
1740 
1741 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1742 	IOStream *stream = ctx->m_stream;
1743 
1744 	 unsigned char *ptr;
1745 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
1746 	ptr = stream->alloc(packetSize);
1747 	int tmp = OP_glStencilFuncSeparate;memcpy(ptr, &tmp, 4); ptr += 4;
1748 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1749 
1750 		memcpy(ptr, &face, 4); ptr += 4;
1751 		memcpy(ptr, &func, 4); ptr += 4;
1752 		memcpy(ptr, &ref, 4); ptr += 4;
1753 		memcpy(ptr, &mask, 4); ptr += 4;
1754 }
1755 
glStencilMask_enc(void * self,GLuint mask)1756 void glStencilMask_enc(void *self , GLuint mask)
1757 {
1758 
1759 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1760 	IOStream *stream = ctx->m_stream;
1761 
1762 	 unsigned char *ptr;
1763 	 const size_t packetSize = 8 + 4;
1764 	ptr = stream->alloc(packetSize);
1765 	int tmp = OP_glStencilMask;memcpy(ptr, &tmp, 4); ptr += 4;
1766 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1767 
1768 		memcpy(ptr, &mask, 4); ptr += 4;
1769 }
1770 
glStencilMaskSeparate_enc(void * self,GLenum face,GLuint mask)1771 void glStencilMaskSeparate_enc(void *self , GLenum face, GLuint mask)
1772 {
1773 
1774 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1775 	IOStream *stream = ctx->m_stream;
1776 
1777 	 unsigned char *ptr;
1778 	 const size_t packetSize = 8 + 4 + 4;
1779 	ptr = stream->alloc(packetSize);
1780 	int tmp = OP_glStencilMaskSeparate;memcpy(ptr, &tmp, 4); ptr += 4;
1781 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1782 
1783 		memcpy(ptr, &face, 4); ptr += 4;
1784 		memcpy(ptr, &mask, 4); ptr += 4;
1785 }
1786 
glStencilOp_enc(void * self,GLenum fail,GLenum zfail,GLenum zpass)1787 void glStencilOp_enc(void *self , GLenum fail, GLenum zfail, GLenum zpass)
1788 {
1789 
1790 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1791 	IOStream *stream = ctx->m_stream;
1792 
1793 	 unsigned char *ptr;
1794 	 const size_t packetSize = 8 + 4 + 4 + 4;
1795 	ptr = stream->alloc(packetSize);
1796 	int tmp = OP_glStencilOp;memcpy(ptr, &tmp, 4); ptr += 4;
1797 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1798 
1799 		memcpy(ptr, &fail, 4); ptr += 4;
1800 		memcpy(ptr, &zfail, 4); ptr += 4;
1801 		memcpy(ptr, &zpass, 4); ptr += 4;
1802 }
1803 
glStencilOpSeparate_enc(void * self,GLenum face,GLenum fail,GLenum zfail,GLenum zpass)1804 void glStencilOpSeparate_enc(void *self , GLenum face, GLenum fail, GLenum zfail, GLenum zpass)
1805 {
1806 
1807 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1808 	IOStream *stream = ctx->m_stream;
1809 
1810 	 unsigned char *ptr;
1811 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
1812 	ptr = stream->alloc(packetSize);
1813 	int tmp = OP_glStencilOpSeparate;memcpy(ptr, &tmp, 4); ptr += 4;
1814 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1815 
1816 		memcpy(ptr, &face, 4); ptr += 4;
1817 		memcpy(ptr, &fail, 4); ptr += 4;
1818 		memcpy(ptr, &zfail, 4); ptr += 4;
1819 		memcpy(ptr, &zpass, 4); ptr += 4;
1820 }
1821 
glTexImage2D_enc(void * self,GLenum target,GLint level,GLint internalformat,GLsizei width,GLsizei height,GLint border,GLenum format,GLenum type,const GLvoid * pixels)1822 void glTexImage2D_enc(void *self , GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels)
1823 {
1824 
1825 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1826 	IOStream *stream = ctx->m_stream;
1827 
1828 	const unsigned int __size_pixels = ((pixels != NULL) ?  pixelDataSize(self, width, height, format, type, 0) : 0);
1829 	 unsigned char *ptr;
1830 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_pixels + 1*4;
1831 	ptr = stream->alloc(8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4);
1832 	int tmp = OP_glTexImage2D;memcpy(ptr, &tmp, 4); ptr += 4;
1833 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1834 
1835 		memcpy(ptr, &target, 4); ptr += 4;
1836 		memcpy(ptr, &level, 4); ptr += 4;
1837 		memcpy(ptr, &internalformat, 4); ptr += 4;
1838 		memcpy(ptr, &width, 4); ptr += 4;
1839 		memcpy(ptr, &height, 4); ptr += 4;
1840 		memcpy(ptr, &border, 4); ptr += 4;
1841 		memcpy(ptr, &format, 4); ptr += 4;
1842 		memcpy(ptr, &type, 4); ptr += 4;
1843 	stream->flush();
1844 	stream->writeFully(&__size_pixels,4);
1845 	if (pixels != NULL) stream->writeFully(pixels, __size_pixels);
1846 }
1847 
glTexParameterf_enc(void * self,GLenum target,GLenum pname,GLfloat param)1848 void glTexParameterf_enc(void *self , GLenum target, GLenum pname, GLfloat param)
1849 {
1850 
1851 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1852 	IOStream *stream = ctx->m_stream;
1853 
1854 	 unsigned char *ptr;
1855 	 const size_t packetSize = 8 + 4 + 4 + 4;
1856 	ptr = stream->alloc(packetSize);
1857 	int tmp = OP_glTexParameterf;memcpy(ptr, &tmp, 4); ptr += 4;
1858 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1859 
1860 		memcpy(ptr, &target, 4); ptr += 4;
1861 		memcpy(ptr, &pname, 4); ptr += 4;
1862 		memcpy(ptr, &param, 4); ptr += 4;
1863 }
1864 
glTexParameterfv_enc(void * self,GLenum target,GLenum pname,const GLfloat * params)1865 void glTexParameterfv_enc(void *self , GLenum target, GLenum pname, const GLfloat* params)
1866 {
1867 
1868 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1869 	IOStream *stream = ctx->m_stream;
1870 
1871 	const unsigned int __size_params =  (glUtilsParamSize(pname) * sizeof(GLfloat));
1872 	 unsigned char *ptr;
1873 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1874 	ptr = stream->alloc(packetSize);
1875 	int tmp = OP_glTexParameterfv;memcpy(ptr, &tmp, 4); ptr += 4;
1876 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1877 
1878 		memcpy(ptr, &target, 4); ptr += 4;
1879 		memcpy(ptr, &pname, 4); ptr += 4;
1880 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1881 	memcpy(ptr, params, __size_params);ptr += __size_params;
1882 }
1883 
glTexParameteri_enc(void * self,GLenum target,GLenum pname,GLint param)1884 void glTexParameteri_enc(void *self , GLenum target, GLenum pname, GLint param)
1885 {
1886 
1887 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1888 	IOStream *stream = ctx->m_stream;
1889 
1890 	 unsigned char *ptr;
1891 	 const size_t packetSize = 8 + 4 + 4 + 4;
1892 	ptr = stream->alloc(packetSize);
1893 	int tmp = OP_glTexParameteri;memcpy(ptr, &tmp, 4); ptr += 4;
1894 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1895 
1896 		memcpy(ptr, &target, 4); ptr += 4;
1897 		memcpy(ptr, &pname, 4); ptr += 4;
1898 		memcpy(ptr, &param, 4); ptr += 4;
1899 }
1900 
glTexParameteriv_enc(void * self,GLenum target,GLenum pname,const GLint * params)1901 void glTexParameteriv_enc(void *self , GLenum target, GLenum pname, const GLint* params)
1902 {
1903 
1904 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1905 	IOStream *stream = ctx->m_stream;
1906 
1907 	const unsigned int __size_params =  (glUtilsParamSize(pname) * sizeof(GLint));
1908 	 unsigned char *ptr;
1909 	 const size_t packetSize = 8 + 4 + 4 + __size_params + 1*4;
1910 	ptr = stream->alloc(packetSize);
1911 	int tmp = OP_glTexParameteriv;memcpy(ptr, &tmp, 4); ptr += 4;
1912 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1913 
1914 		memcpy(ptr, &target, 4); ptr += 4;
1915 		memcpy(ptr, &pname, 4); ptr += 4;
1916 	*(unsigned int *)(ptr) = __size_params; ptr += 4;
1917 	memcpy(ptr, params, __size_params);ptr += __size_params;
1918 }
1919 
glTexSubImage2D_enc(void * self,GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLenum type,const GLvoid * pixels)1920 void glTexSubImage2D_enc(void *self , GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels)
1921 {
1922 
1923 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1924 	IOStream *stream = ctx->m_stream;
1925 
1926 	const unsigned int __size_pixels = ((pixels != NULL) ?  pixelDataSize(self, width, height, format, type, 0) : 0);
1927 	 unsigned char *ptr;
1928 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_pixels + 1*4;
1929 	ptr = stream->alloc(8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4);
1930 	int tmp = OP_glTexSubImage2D;memcpy(ptr, &tmp, 4); ptr += 4;
1931 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1932 
1933 		memcpy(ptr, &target, 4); ptr += 4;
1934 		memcpy(ptr, &level, 4); ptr += 4;
1935 		memcpy(ptr, &xoffset, 4); ptr += 4;
1936 		memcpy(ptr, &yoffset, 4); ptr += 4;
1937 		memcpy(ptr, &width, 4); ptr += 4;
1938 		memcpy(ptr, &height, 4); ptr += 4;
1939 		memcpy(ptr, &format, 4); ptr += 4;
1940 		memcpy(ptr, &type, 4); ptr += 4;
1941 	stream->flush();
1942 	stream->writeFully(&__size_pixels,4);
1943 	if (pixels != NULL) stream->writeFully(pixels, __size_pixels);
1944 }
1945 
glUniform1f_enc(void * self,GLint location,GLfloat x)1946 void glUniform1f_enc(void *self , GLint location, GLfloat x)
1947 {
1948 
1949 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1950 	IOStream *stream = ctx->m_stream;
1951 
1952 	 unsigned char *ptr;
1953 	 const size_t packetSize = 8 + 4 + 4;
1954 	ptr = stream->alloc(packetSize);
1955 	int tmp = OP_glUniform1f;memcpy(ptr, &tmp, 4); ptr += 4;
1956 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1957 
1958 		memcpy(ptr, &location, 4); ptr += 4;
1959 		memcpy(ptr, &x, 4); ptr += 4;
1960 }
1961 
glUniform1fv_enc(void * self,GLint location,GLsizei count,const GLfloat * v)1962 void glUniform1fv_enc(void *self , GLint location, GLsizei count, const GLfloat* v)
1963 {
1964 
1965 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1966 	IOStream *stream = ctx->m_stream;
1967 
1968 	const unsigned int __size_v =  (count * sizeof(GLfloat));
1969 	 unsigned char *ptr;
1970 	 const size_t packetSize = 8 + 4 + 4 + __size_v + 1*4;
1971 	ptr = stream->alloc(packetSize);
1972 	int tmp = OP_glUniform1fv;memcpy(ptr, &tmp, 4); ptr += 4;
1973 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1974 
1975 		memcpy(ptr, &location, 4); ptr += 4;
1976 		memcpy(ptr, &count, 4); ptr += 4;
1977 	*(unsigned int *)(ptr) = __size_v; ptr += 4;
1978 	memcpy(ptr, v, __size_v);ptr += __size_v;
1979 }
1980 
glUniform1i_enc(void * self,GLint location,GLint x)1981 void glUniform1i_enc(void *self , GLint location, GLint x)
1982 {
1983 
1984 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
1985 	IOStream *stream = ctx->m_stream;
1986 
1987 	 unsigned char *ptr;
1988 	 const size_t packetSize = 8 + 4 + 4;
1989 	ptr = stream->alloc(packetSize);
1990 	int tmp = OP_glUniform1i;memcpy(ptr, &tmp, 4); ptr += 4;
1991 	memcpy(ptr, &packetSize, 4);  ptr += 4;
1992 
1993 		memcpy(ptr, &location, 4); ptr += 4;
1994 		memcpy(ptr, &x, 4); ptr += 4;
1995 }
1996 
glUniform1iv_enc(void * self,GLint location,GLsizei count,const GLint * v)1997 void glUniform1iv_enc(void *self , GLint location, GLsizei count, const GLint* v)
1998 {
1999 
2000 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2001 	IOStream *stream = ctx->m_stream;
2002 
2003 	const unsigned int __size_v =  (count * sizeof(GLint));
2004 	 unsigned char *ptr;
2005 	 const size_t packetSize = 8 + 4 + 4 + __size_v + 1*4;
2006 	ptr = stream->alloc(packetSize);
2007 	int tmp = OP_glUniform1iv;memcpy(ptr, &tmp, 4); ptr += 4;
2008 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2009 
2010 		memcpy(ptr, &location, 4); ptr += 4;
2011 		memcpy(ptr, &count, 4); ptr += 4;
2012 	*(unsigned int *)(ptr) = __size_v; ptr += 4;
2013 	memcpy(ptr, v, __size_v);ptr += __size_v;
2014 }
2015 
glUniform2f_enc(void * self,GLint location,GLfloat x,GLfloat y)2016 void glUniform2f_enc(void *self , GLint location, GLfloat x, GLfloat y)
2017 {
2018 
2019 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2020 	IOStream *stream = ctx->m_stream;
2021 
2022 	 unsigned char *ptr;
2023 	 const size_t packetSize = 8 + 4 + 4 + 4;
2024 	ptr = stream->alloc(packetSize);
2025 	int tmp = OP_glUniform2f;memcpy(ptr, &tmp, 4); ptr += 4;
2026 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2027 
2028 		memcpy(ptr, &location, 4); ptr += 4;
2029 		memcpy(ptr, &x, 4); ptr += 4;
2030 		memcpy(ptr, &y, 4); ptr += 4;
2031 }
2032 
glUniform2fv_enc(void * self,GLint location,GLsizei count,const GLfloat * v)2033 void glUniform2fv_enc(void *self , GLint location, GLsizei count, const GLfloat* v)
2034 {
2035 
2036 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2037 	IOStream *stream = ctx->m_stream;
2038 
2039 	const unsigned int __size_v =  (count * 2 * sizeof(GLfloat));
2040 	 unsigned char *ptr;
2041 	 const size_t packetSize = 8 + 4 + 4 + __size_v + 1*4;
2042 	ptr = stream->alloc(packetSize);
2043 	int tmp = OP_glUniform2fv;memcpy(ptr, &tmp, 4); ptr += 4;
2044 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2045 
2046 		memcpy(ptr, &location, 4); ptr += 4;
2047 		memcpy(ptr, &count, 4); ptr += 4;
2048 	*(unsigned int *)(ptr) = __size_v; ptr += 4;
2049 	memcpy(ptr, v, __size_v);ptr += __size_v;
2050 }
2051 
glUniform2i_enc(void * self,GLint location,GLint x,GLint y)2052 void glUniform2i_enc(void *self , GLint location, GLint x, GLint y)
2053 {
2054 
2055 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2056 	IOStream *stream = ctx->m_stream;
2057 
2058 	 unsigned char *ptr;
2059 	 const size_t packetSize = 8 + 4 + 4 + 4;
2060 	ptr = stream->alloc(packetSize);
2061 	int tmp = OP_glUniform2i;memcpy(ptr, &tmp, 4); ptr += 4;
2062 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2063 
2064 		memcpy(ptr, &location, 4); ptr += 4;
2065 		memcpy(ptr, &x, 4); ptr += 4;
2066 		memcpy(ptr, &y, 4); ptr += 4;
2067 }
2068 
glUniform2iv_enc(void * self,GLint location,GLsizei count,const GLint * v)2069 void glUniform2iv_enc(void *self , GLint location, GLsizei count, const GLint* v)
2070 {
2071 
2072 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2073 	IOStream *stream = ctx->m_stream;
2074 
2075 	const unsigned int __size_v =  (count * 2 * sizeof(GLint));
2076 	 unsigned char *ptr;
2077 	 const size_t packetSize = 8 + 4 + 4 + __size_v + 1*4;
2078 	ptr = stream->alloc(packetSize);
2079 	int tmp = OP_glUniform2iv;memcpy(ptr, &tmp, 4); ptr += 4;
2080 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2081 
2082 		memcpy(ptr, &location, 4); ptr += 4;
2083 		memcpy(ptr, &count, 4); ptr += 4;
2084 	*(unsigned int *)(ptr) = __size_v; ptr += 4;
2085 	memcpy(ptr, v, __size_v);ptr += __size_v;
2086 }
2087 
glUniform3f_enc(void * self,GLint location,GLfloat x,GLfloat y,GLfloat z)2088 void glUniform3f_enc(void *self , GLint location, GLfloat x, GLfloat y, GLfloat z)
2089 {
2090 
2091 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2092 	IOStream *stream = ctx->m_stream;
2093 
2094 	 unsigned char *ptr;
2095 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
2096 	ptr = stream->alloc(packetSize);
2097 	int tmp = OP_glUniform3f;memcpy(ptr, &tmp, 4); ptr += 4;
2098 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2099 
2100 		memcpy(ptr, &location, 4); ptr += 4;
2101 		memcpy(ptr, &x, 4); ptr += 4;
2102 		memcpy(ptr, &y, 4); ptr += 4;
2103 		memcpy(ptr, &z, 4); ptr += 4;
2104 }
2105 
glUniform3fv_enc(void * self,GLint location,GLsizei count,const GLfloat * v)2106 void glUniform3fv_enc(void *self , GLint location, GLsizei count, const GLfloat* v)
2107 {
2108 
2109 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2110 	IOStream *stream = ctx->m_stream;
2111 
2112 	const unsigned int __size_v =  (count * 3 * sizeof(GLfloat));
2113 	 unsigned char *ptr;
2114 	 const size_t packetSize = 8 + 4 + 4 + __size_v + 1*4;
2115 	ptr = stream->alloc(packetSize);
2116 	int tmp = OP_glUniform3fv;memcpy(ptr, &tmp, 4); ptr += 4;
2117 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2118 
2119 		memcpy(ptr, &location, 4); ptr += 4;
2120 		memcpy(ptr, &count, 4); ptr += 4;
2121 	*(unsigned int *)(ptr) = __size_v; ptr += 4;
2122 	memcpy(ptr, v, __size_v);ptr += __size_v;
2123 }
2124 
glUniform3i_enc(void * self,GLint location,GLint x,GLint y,GLint z)2125 void glUniform3i_enc(void *self , GLint location, GLint x, GLint y, GLint z)
2126 {
2127 
2128 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2129 	IOStream *stream = ctx->m_stream;
2130 
2131 	 unsigned char *ptr;
2132 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
2133 	ptr = stream->alloc(packetSize);
2134 	int tmp = OP_glUniform3i;memcpy(ptr, &tmp, 4); ptr += 4;
2135 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2136 
2137 		memcpy(ptr, &location, 4); ptr += 4;
2138 		memcpy(ptr, &x, 4); ptr += 4;
2139 		memcpy(ptr, &y, 4); ptr += 4;
2140 		memcpy(ptr, &z, 4); ptr += 4;
2141 }
2142 
glUniform3iv_enc(void * self,GLint location,GLsizei count,const GLint * v)2143 void glUniform3iv_enc(void *self , GLint location, GLsizei count, const GLint* v)
2144 {
2145 
2146 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2147 	IOStream *stream = ctx->m_stream;
2148 
2149 	const unsigned int __size_v =  (3 * count * sizeof(GLint));
2150 	 unsigned char *ptr;
2151 	 const size_t packetSize = 8 + 4 + 4 + __size_v + 1*4;
2152 	ptr = stream->alloc(packetSize);
2153 	int tmp = OP_glUniform3iv;memcpy(ptr, &tmp, 4); ptr += 4;
2154 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2155 
2156 		memcpy(ptr, &location, 4); ptr += 4;
2157 		memcpy(ptr, &count, 4); ptr += 4;
2158 	*(unsigned int *)(ptr) = __size_v; ptr += 4;
2159 	memcpy(ptr, v, __size_v);ptr += __size_v;
2160 }
2161 
glUniform4f_enc(void * self,GLint location,GLfloat x,GLfloat y,GLfloat z,GLfloat w)2162 void glUniform4f_enc(void *self , GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
2163 {
2164 
2165 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2166 	IOStream *stream = ctx->m_stream;
2167 
2168 	 unsigned char *ptr;
2169 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4;
2170 	ptr = stream->alloc(packetSize);
2171 	int tmp = OP_glUniform4f;memcpy(ptr, &tmp, 4); ptr += 4;
2172 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2173 
2174 		memcpy(ptr, &location, 4); ptr += 4;
2175 		memcpy(ptr, &x, 4); ptr += 4;
2176 		memcpy(ptr, &y, 4); ptr += 4;
2177 		memcpy(ptr, &z, 4); ptr += 4;
2178 		memcpy(ptr, &w, 4); ptr += 4;
2179 }
2180 
glUniform4fv_enc(void * self,GLint location,GLsizei count,const GLfloat * v)2181 void glUniform4fv_enc(void *self , GLint location, GLsizei count, const GLfloat* v)
2182 {
2183 
2184 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2185 	IOStream *stream = ctx->m_stream;
2186 
2187 	const unsigned int __size_v =  (4 * count * sizeof(GLfloat));
2188 	 unsigned char *ptr;
2189 	 const size_t packetSize = 8 + 4 + 4 + __size_v + 1*4;
2190 	ptr = stream->alloc(packetSize);
2191 	int tmp = OP_glUniform4fv;memcpy(ptr, &tmp, 4); ptr += 4;
2192 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2193 
2194 		memcpy(ptr, &location, 4); ptr += 4;
2195 		memcpy(ptr, &count, 4); ptr += 4;
2196 	*(unsigned int *)(ptr) = __size_v; ptr += 4;
2197 	memcpy(ptr, v, __size_v);ptr += __size_v;
2198 }
2199 
glUniform4i_enc(void * self,GLint location,GLint x,GLint y,GLint z,GLint w)2200 void glUniform4i_enc(void *self , GLint location, GLint x, GLint y, GLint z, GLint w)
2201 {
2202 
2203 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2204 	IOStream *stream = ctx->m_stream;
2205 
2206 	 unsigned char *ptr;
2207 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4;
2208 	ptr = stream->alloc(packetSize);
2209 	int tmp = OP_glUniform4i;memcpy(ptr, &tmp, 4); ptr += 4;
2210 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2211 
2212 		memcpy(ptr, &location, 4); ptr += 4;
2213 		memcpy(ptr, &x, 4); ptr += 4;
2214 		memcpy(ptr, &y, 4); ptr += 4;
2215 		memcpy(ptr, &z, 4); ptr += 4;
2216 		memcpy(ptr, &w, 4); ptr += 4;
2217 }
2218 
glUniform4iv_enc(void * self,GLint location,GLsizei count,const GLint * v)2219 void glUniform4iv_enc(void *self , GLint location, GLsizei count, const GLint* v)
2220 {
2221 
2222 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2223 	IOStream *stream = ctx->m_stream;
2224 
2225 	const unsigned int __size_v =  (4 * count * sizeof(GLint));
2226 	 unsigned char *ptr;
2227 	 const size_t packetSize = 8 + 4 + 4 + __size_v + 1*4;
2228 	ptr = stream->alloc(packetSize);
2229 	int tmp = OP_glUniform4iv;memcpy(ptr, &tmp, 4); ptr += 4;
2230 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2231 
2232 		memcpy(ptr, &location, 4); ptr += 4;
2233 		memcpy(ptr, &count, 4); ptr += 4;
2234 	*(unsigned int *)(ptr) = __size_v; ptr += 4;
2235 	memcpy(ptr, v, __size_v);ptr += __size_v;
2236 }
2237 
glUniformMatrix2fv_enc(void * self,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2238 void glUniformMatrix2fv_enc(void *self , GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2239 {
2240 
2241 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2242 	IOStream *stream = ctx->m_stream;
2243 
2244 	const unsigned int __size_value =  (count * 4 * sizeof(GLfloat));
2245 	 unsigned char *ptr;
2246 	 const size_t packetSize = 8 + 4 + 4 + 1 + __size_value + 1*4;
2247 	ptr = stream->alloc(packetSize);
2248 	int tmp = OP_glUniformMatrix2fv;memcpy(ptr, &tmp, 4); ptr += 4;
2249 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2250 
2251 		memcpy(ptr, &location, 4); ptr += 4;
2252 		memcpy(ptr, &count, 4); ptr += 4;
2253 		memcpy(ptr, &transpose, 1); ptr += 1;
2254 	*(unsigned int *)(ptr) = __size_value; ptr += 4;
2255 	memcpy(ptr, value, __size_value);ptr += __size_value;
2256 }
2257 
glUniformMatrix3fv_enc(void * self,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2258 void glUniformMatrix3fv_enc(void *self , GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2259 {
2260 
2261 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2262 	IOStream *stream = ctx->m_stream;
2263 
2264 	const unsigned int __size_value =  (count * 9 * sizeof(GLfloat));
2265 	 unsigned char *ptr;
2266 	 const size_t packetSize = 8 + 4 + 4 + 1 + __size_value + 1*4;
2267 	ptr = stream->alloc(packetSize);
2268 	int tmp = OP_glUniformMatrix3fv;memcpy(ptr, &tmp, 4); ptr += 4;
2269 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2270 
2271 		memcpy(ptr, &location, 4); ptr += 4;
2272 		memcpy(ptr, &count, 4); ptr += 4;
2273 		memcpy(ptr, &transpose, 1); ptr += 1;
2274 	*(unsigned int *)(ptr) = __size_value; ptr += 4;
2275 	memcpy(ptr, value, __size_value);ptr += __size_value;
2276 }
2277 
glUniformMatrix4fv_enc(void * self,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2278 void glUniformMatrix4fv_enc(void *self , GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2279 {
2280 
2281 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2282 	IOStream *stream = ctx->m_stream;
2283 
2284 	const unsigned int __size_value =  (count * 16 * sizeof(GLfloat));
2285 	 unsigned char *ptr;
2286 	 const size_t packetSize = 8 + 4 + 4 + 1 + __size_value + 1*4;
2287 	ptr = stream->alloc(packetSize);
2288 	int tmp = OP_glUniformMatrix4fv;memcpy(ptr, &tmp, 4); ptr += 4;
2289 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2290 
2291 		memcpy(ptr, &location, 4); ptr += 4;
2292 		memcpy(ptr, &count, 4); ptr += 4;
2293 		memcpy(ptr, &transpose, 1); ptr += 1;
2294 	*(unsigned int *)(ptr) = __size_value; ptr += 4;
2295 	memcpy(ptr, value, __size_value);ptr += __size_value;
2296 }
2297 
glUseProgram_enc(void * self,GLuint program)2298 void glUseProgram_enc(void *self , GLuint program)
2299 {
2300 
2301 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2302 	IOStream *stream = ctx->m_stream;
2303 
2304 	 unsigned char *ptr;
2305 	 const size_t packetSize = 8 + 4;
2306 	ptr = stream->alloc(packetSize);
2307 	int tmp = OP_glUseProgram;memcpy(ptr, &tmp, 4); ptr += 4;
2308 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2309 
2310 		memcpy(ptr, &program, 4); ptr += 4;
2311 }
2312 
glValidateProgram_enc(void * self,GLuint program)2313 void glValidateProgram_enc(void *self , GLuint program)
2314 {
2315 
2316 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2317 	IOStream *stream = ctx->m_stream;
2318 
2319 	 unsigned char *ptr;
2320 	 const size_t packetSize = 8 + 4;
2321 	ptr = stream->alloc(packetSize);
2322 	int tmp = OP_glValidateProgram;memcpy(ptr, &tmp, 4); ptr += 4;
2323 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2324 
2325 		memcpy(ptr, &program, 4); ptr += 4;
2326 }
2327 
glVertexAttrib1f_enc(void * self,GLuint indx,GLfloat x)2328 void glVertexAttrib1f_enc(void *self , GLuint indx, GLfloat x)
2329 {
2330 
2331 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2332 	IOStream *stream = ctx->m_stream;
2333 
2334 	 unsigned char *ptr;
2335 	 const size_t packetSize = 8 + 4 + 4;
2336 	ptr = stream->alloc(packetSize);
2337 	int tmp = OP_glVertexAttrib1f;memcpy(ptr, &tmp, 4); ptr += 4;
2338 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2339 
2340 		memcpy(ptr, &indx, 4); ptr += 4;
2341 		memcpy(ptr, &x, 4); ptr += 4;
2342 }
2343 
glVertexAttrib1fv_enc(void * self,GLuint indx,const GLfloat * values)2344 void glVertexAttrib1fv_enc(void *self , GLuint indx, const GLfloat* values)
2345 {
2346 
2347 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2348 	IOStream *stream = ctx->m_stream;
2349 
2350 	const unsigned int __size_values =  (sizeof(GLfloat));
2351 	 unsigned char *ptr;
2352 	 const size_t packetSize = 8 + 4 + __size_values + 1*4;
2353 	ptr = stream->alloc(packetSize);
2354 	int tmp = OP_glVertexAttrib1fv;memcpy(ptr, &tmp, 4); ptr += 4;
2355 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2356 
2357 		memcpy(ptr, &indx, 4); ptr += 4;
2358 	*(unsigned int *)(ptr) = __size_values; ptr += 4;
2359 	memcpy(ptr, values, __size_values);ptr += __size_values;
2360 }
2361 
glVertexAttrib2f_enc(void * self,GLuint indx,GLfloat x,GLfloat y)2362 void glVertexAttrib2f_enc(void *self , GLuint indx, GLfloat x, GLfloat y)
2363 {
2364 
2365 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2366 	IOStream *stream = ctx->m_stream;
2367 
2368 	 unsigned char *ptr;
2369 	 const size_t packetSize = 8 + 4 + 4 + 4;
2370 	ptr = stream->alloc(packetSize);
2371 	int tmp = OP_glVertexAttrib2f;memcpy(ptr, &tmp, 4); ptr += 4;
2372 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2373 
2374 		memcpy(ptr, &indx, 4); ptr += 4;
2375 		memcpy(ptr, &x, 4); ptr += 4;
2376 		memcpy(ptr, &y, 4); ptr += 4;
2377 }
2378 
glVertexAttrib2fv_enc(void * self,GLuint indx,const GLfloat * values)2379 void glVertexAttrib2fv_enc(void *self , GLuint indx, const GLfloat* values)
2380 {
2381 
2382 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2383 	IOStream *stream = ctx->m_stream;
2384 
2385 	const unsigned int __size_values =  (2 * sizeof(GLfloat));
2386 	 unsigned char *ptr;
2387 	 const size_t packetSize = 8 + 4 + __size_values + 1*4;
2388 	ptr = stream->alloc(packetSize);
2389 	int tmp = OP_glVertexAttrib2fv;memcpy(ptr, &tmp, 4); ptr += 4;
2390 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2391 
2392 		memcpy(ptr, &indx, 4); ptr += 4;
2393 	*(unsigned int *)(ptr) = __size_values; ptr += 4;
2394 	memcpy(ptr, values, __size_values);ptr += __size_values;
2395 }
2396 
glVertexAttrib3f_enc(void * self,GLuint indx,GLfloat x,GLfloat y,GLfloat z)2397 void glVertexAttrib3f_enc(void *self , GLuint indx, GLfloat x, GLfloat y, GLfloat z)
2398 {
2399 
2400 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2401 	IOStream *stream = ctx->m_stream;
2402 
2403 	 unsigned char *ptr;
2404 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
2405 	ptr = stream->alloc(packetSize);
2406 	int tmp = OP_glVertexAttrib3f;memcpy(ptr, &tmp, 4); ptr += 4;
2407 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2408 
2409 		memcpy(ptr, &indx, 4); ptr += 4;
2410 		memcpy(ptr, &x, 4); ptr += 4;
2411 		memcpy(ptr, &y, 4); ptr += 4;
2412 		memcpy(ptr, &z, 4); ptr += 4;
2413 }
2414 
glVertexAttrib3fv_enc(void * self,GLuint indx,const GLfloat * values)2415 void glVertexAttrib3fv_enc(void *self , GLuint indx, const GLfloat* values)
2416 {
2417 
2418 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2419 	IOStream *stream = ctx->m_stream;
2420 
2421 	const unsigned int __size_values =  (3 * sizeof(GLfloat));
2422 	 unsigned char *ptr;
2423 	 const size_t packetSize = 8 + 4 + __size_values + 1*4;
2424 	ptr = stream->alloc(packetSize);
2425 	int tmp = OP_glVertexAttrib3fv;memcpy(ptr, &tmp, 4); ptr += 4;
2426 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2427 
2428 		memcpy(ptr, &indx, 4); ptr += 4;
2429 	*(unsigned int *)(ptr) = __size_values; ptr += 4;
2430 	memcpy(ptr, values, __size_values);ptr += __size_values;
2431 }
2432 
glVertexAttrib4f_enc(void * self,GLuint indx,GLfloat x,GLfloat y,GLfloat z,GLfloat w)2433 void glVertexAttrib4f_enc(void *self , GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
2434 {
2435 
2436 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2437 	IOStream *stream = ctx->m_stream;
2438 
2439 	 unsigned char *ptr;
2440 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4;
2441 	ptr = stream->alloc(packetSize);
2442 	int tmp = OP_glVertexAttrib4f;memcpy(ptr, &tmp, 4); ptr += 4;
2443 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2444 
2445 		memcpy(ptr, &indx, 4); ptr += 4;
2446 		memcpy(ptr, &x, 4); ptr += 4;
2447 		memcpy(ptr, &y, 4); ptr += 4;
2448 		memcpy(ptr, &z, 4); ptr += 4;
2449 		memcpy(ptr, &w, 4); ptr += 4;
2450 }
2451 
glVertexAttrib4fv_enc(void * self,GLuint indx,const GLfloat * values)2452 void glVertexAttrib4fv_enc(void *self , GLuint indx, const GLfloat* values)
2453 {
2454 
2455 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2456 	IOStream *stream = ctx->m_stream;
2457 
2458 	const unsigned int __size_values =  (4 * sizeof(GLfloat));
2459 	 unsigned char *ptr;
2460 	 const size_t packetSize = 8 + 4 + __size_values + 1*4;
2461 	ptr = stream->alloc(packetSize);
2462 	int tmp = OP_glVertexAttrib4fv;memcpy(ptr, &tmp, 4); ptr += 4;
2463 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2464 
2465 		memcpy(ptr, &indx, 4); ptr += 4;
2466 	*(unsigned int *)(ptr) = __size_values; ptr += 4;
2467 	memcpy(ptr, values, __size_values);ptr += __size_values;
2468 }
2469 
glViewport_enc(void * self,GLint x,GLint y,GLsizei width,GLsizei height)2470 void glViewport_enc(void *self , GLint x, GLint y, GLsizei width, GLsizei height)
2471 {
2472 
2473 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2474 	IOStream *stream = ctx->m_stream;
2475 
2476 	 unsigned char *ptr;
2477 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
2478 	ptr = stream->alloc(packetSize);
2479 	int tmp = OP_glViewport;memcpy(ptr, &tmp, 4); ptr += 4;
2480 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2481 
2482 		memcpy(ptr, &x, 4); ptr += 4;
2483 		memcpy(ptr, &y, 4); ptr += 4;
2484 		memcpy(ptr, &width, 4); ptr += 4;
2485 		memcpy(ptr, &height, 4); ptr += 4;
2486 }
2487 
glEGLImageTargetTexture2DOES_enc(void * self,GLenum target,GLeglImageOES image)2488 void glEGLImageTargetTexture2DOES_enc(void *self , GLenum target, GLeglImageOES image)
2489 {
2490 
2491 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2492 	IOStream *stream = ctx->m_stream;
2493 
2494 	 unsigned char *ptr;
2495 	 const size_t packetSize = 8 + 4 + 4;
2496 	ptr = stream->alloc(packetSize);
2497 	int tmp = OP_glEGLImageTargetTexture2DOES;memcpy(ptr, &tmp, 4); ptr += 4;
2498 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2499 
2500 		memcpy(ptr, &target, 4); ptr += 4;
2501 		memcpy(ptr, &image, 4); ptr += 4;
2502 }
2503 
glEGLImageTargetRenderbufferStorageOES_enc(void * self,GLenum target,GLeglImageOES image)2504 void glEGLImageTargetRenderbufferStorageOES_enc(void *self , GLenum target, GLeglImageOES image)
2505 {
2506 
2507 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2508 	IOStream *stream = ctx->m_stream;
2509 
2510 	 unsigned char *ptr;
2511 	 const size_t packetSize = 8 + 4 + 4;
2512 	ptr = stream->alloc(packetSize);
2513 	int tmp = OP_glEGLImageTargetRenderbufferStorageOES;memcpy(ptr, &tmp, 4); ptr += 4;
2514 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2515 
2516 		memcpy(ptr, &target, 4); ptr += 4;
2517 		memcpy(ptr, &image, 4); ptr += 4;
2518 }
2519 
glUnmapBufferOES_enc(void * self,GLenum target)2520 GLboolean glUnmapBufferOES_enc(void *self , GLenum target)
2521 {
2522 
2523 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2524 	IOStream *stream = ctx->m_stream;
2525 
2526 	 unsigned char *ptr;
2527 	 const size_t packetSize = 8 + 4;
2528 	ptr = stream->alloc(packetSize);
2529 	int tmp = OP_glUnmapBufferOES;memcpy(ptr, &tmp, 4); ptr += 4;
2530 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2531 
2532 		memcpy(ptr, &target, 4); ptr += 4;
2533 
2534 	GLboolean retval;
2535 	stream->readback(&retval, 1);
2536 	return retval;
2537 }
2538 
glTexImage3DOES_enc(void * self,GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLenum format,GLenum type,const GLvoid * pixels)2539 void glTexImage3DOES_enc(void *self , GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels)
2540 {
2541 
2542 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2543 	IOStream *stream = ctx->m_stream;
2544 
2545 	const unsigned int __size_pixels = ((pixels != NULL) ?  pixelDataSize3D(self, width, height, depth, format, type, 0) : 0);
2546 	 unsigned char *ptr;
2547 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_pixels + 1*4;
2548 	ptr = stream->alloc(8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4);
2549 	int tmp = OP_glTexImage3DOES;memcpy(ptr, &tmp, 4); ptr += 4;
2550 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2551 
2552 		memcpy(ptr, &target, 4); ptr += 4;
2553 		memcpy(ptr, &level, 4); ptr += 4;
2554 		memcpy(ptr, &internalformat, 4); ptr += 4;
2555 		memcpy(ptr, &width, 4); ptr += 4;
2556 		memcpy(ptr, &height, 4); ptr += 4;
2557 		memcpy(ptr, &depth, 4); ptr += 4;
2558 		memcpy(ptr, &border, 4); ptr += 4;
2559 		memcpy(ptr, &format, 4); ptr += 4;
2560 		memcpy(ptr, &type, 4); ptr += 4;
2561 	stream->flush();
2562 	stream->writeFully(&__size_pixels,4);
2563 	if (pixels != NULL) stream->writeFully(pixels, __size_pixels);
2564 }
2565 
glTexSubImage3DOES_enc(void * self,GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLenum type,const GLvoid * pixels)2566 void glTexSubImage3DOES_enc(void *self , GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels)
2567 {
2568 
2569 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2570 	IOStream *stream = ctx->m_stream;
2571 
2572 	const unsigned int __size_pixels =  pixelDataSize3D(self, width, height, depth, format, type, 0);
2573 	 unsigned char *ptr;
2574 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_pixels + 1*4;
2575 	ptr = stream->alloc(8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4);
2576 	int tmp = OP_glTexSubImage3DOES;memcpy(ptr, &tmp, 4); ptr += 4;
2577 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2578 
2579 		memcpy(ptr, &target, 4); ptr += 4;
2580 		memcpy(ptr, &level, 4); ptr += 4;
2581 		memcpy(ptr, &xoffset, 4); ptr += 4;
2582 		memcpy(ptr, &yoffset, 4); ptr += 4;
2583 		memcpy(ptr, &zoffset, 4); ptr += 4;
2584 		memcpy(ptr, &width, 4); ptr += 4;
2585 		memcpy(ptr, &height, 4); ptr += 4;
2586 		memcpy(ptr, &depth, 4); ptr += 4;
2587 		memcpy(ptr, &format, 4); ptr += 4;
2588 		memcpy(ptr, &type, 4); ptr += 4;
2589 	stream->flush();
2590 	stream->writeFully(&__size_pixels,4);
2591 	stream->writeFully(pixels, __size_pixels);
2592 }
2593 
glCopyTexSubImage3DOES_enc(void * self,GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLint x,GLint y,GLsizei width,GLsizei height)2594 void glCopyTexSubImage3DOES_enc(void *self , GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
2595 {
2596 
2597 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2598 	IOStream *stream = ctx->m_stream;
2599 
2600 	 unsigned char *ptr;
2601 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4;
2602 	ptr = stream->alloc(packetSize);
2603 	int tmp = OP_glCopyTexSubImage3DOES;memcpy(ptr, &tmp, 4); ptr += 4;
2604 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2605 
2606 		memcpy(ptr, &target, 4); ptr += 4;
2607 		memcpy(ptr, &level, 4); ptr += 4;
2608 		memcpy(ptr, &xoffset, 4); ptr += 4;
2609 		memcpy(ptr, &yoffset, 4); ptr += 4;
2610 		memcpy(ptr, &zoffset, 4); ptr += 4;
2611 		memcpy(ptr, &x, 4); ptr += 4;
2612 		memcpy(ptr, &y, 4); ptr += 4;
2613 		memcpy(ptr, &width, 4); ptr += 4;
2614 		memcpy(ptr, &height, 4); ptr += 4;
2615 }
2616 
glCompressedTexImage3DOES_enc(void * self,GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLsizei imageSize,const GLvoid * data)2617 void glCompressedTexImage3DOES_enc(void *self , GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data)
2618 {
2619 
2620 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2621 	IOStream *stream = ctx->m_stream;
2622 
2623 	const unsigned int __size_data =  imageSize;
2624 	 unsigned char *ptr;
2625 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_data + 1*4;
2626 	ptr = stream->alloc(8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4);
2627 	int tmp = OP_glCompressedTexImage3DOES;memcpy(ptr, &tmp, 4); ptr += 4;
2628 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2629 
2630 		memcpy(ptr, &target, 4); ptr += 4;
2631 		memcpy(ptr, &level, 4); ptr += 4;
2632 		memcpy(ptr, &internalformat, 4); ptr += 4;
2633 		memcpy(ptr, &width, 4); ptr += 4;
2634 		memcpy(ptr, &height, 4); ptr += 4;
2635 		memcpy(ptr, &depth, 4); ptr += 4;
2636 		memcpy(ptr, &border, 4); ptr += 4;
2637 		memcpy(ptr, &imageSize, 4); ptr += 4;
2638 	stream->flush();
2639 	stream->writeFully(&__size_data,4);
2640 	stream->writeFully(data, __size_data);
2641 }
2642 
glCompressedTexSubImage3DOES_enc(void * self,GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLsizei imageSize,const GLvoid * data)2643 void glCompressedTexSubImage3DOES_enc(void *self , GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data)
2644 {
2645 
2646 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2647 	IOStream *stream = ctx->m_stream;
2648 
2649 	const unsigned int __size_data =  imageSize;
2650 	 unsigned char *ptr;
2651 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_data + 1*4;
2652 	ptr = stream->alloc(8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 4);
2653 	int tmp = OP_glCompressedTexSubImage3DOES;memcpy(ptr, &tmp, 4); ptr += 4;
2654 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2655 
2656 		memcpy(ptr, &target, 4); ptr += 4;
2657 		memcpy(ptr, &level, 4); ptr += 4;
2658 		memcpy(ptr, &xoffset, 4); ptr += 4;
2659 		memcpy(ptr, &yoffset, 4); ptr += 4;
2660 		memcpy(ptr, &zoffset, 4); ptr += 4;
2661 		memcpy(ptr, &width, 4); ptr += 4;
2662 		memcpy(ptr, &height, 4); ptr += 4;
2663 		memcpy(ptr, &depth, 4); ptr += 4;
2664 		memcpy(ptr, &format, 4); ptr += 4;
2665 		memcpy(ptr, &imageSize, 4); ptr += 4;
2666 	stream->flush();
2667 	stream->writeFully(&__size_data,4);
2668 	stream->writeFully(data, __size_data);
2669 }
2670 
glFramebufferTexture3DOES_enc(void * self,GLenum target,GLenum attachment,GLenum textarget,GLuint texture,GLint level,GLint zoffset)2671 void glFramebufferTexture3DOES_enc(void *self , GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
2672 {
2673 
2674 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2675 	IOStream *stream = ctx->m_stream;
2676 
2677 	 unsigned char *ptr;
2678 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4;
2679 	ptr = stream->alloc(packetSize);
2680 	int tmp = OP_glFramebufferTexture3DOES;memcpy(ptr, &tmp, 4); ptr += 4;
2681 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2682 
2683 		memcpy(ptr, &target, 4); ptr += 4;
2684 		memcpy(ptr, &attachment, 4); ptr += 4;
2685 		memcpy(ptr, &textarget, 4); ptr += 4;
2686 		memcpy(ptr, &texture, 4); ptr += 4;
2687 		memcpy(ptr, &level, 4); ptr += 4;
2688 		memcpy(ptr, &zoffset, 4); ptr += 4;
2689 }
2690 
glBindVertexArrayOES_enc(void * self,GLuint array)2691 void glBindVertexArrayOES_enc(void *self , GLuint array)
2692 {
2693 
2694 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2695 	IOStream *stream = ctx->m_stream;
2696 
2697 	 unsigned char *ptr;
2698 	 const size_t packetSize = 8 + 4;
2699 	ptr = stream->alloc(packetSize);
2700 	int tmp = OP_glBindVertexArrayOES;memcpy(ptr, &tmp, 4); ptr += 4;
2701 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2702 
2703 		memcpy(ptr, &array, 4); ptr += 4;
2704 }
2705 
glDeleteVertexArraysOES_enc(void * self,GLsizei n,const GLuint * arrays)2706 void glDeleteVertexArraysOES_enc(void *self , GLsizei n, const GLuint* arrays)
2707 {
2708 
2709 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2710 	IOStream *stream = ctx->m_stream;
2711 
2712 	const unsigned int __size_arrays =  (n * sizeof(GLuint));
2713 	 unsigned char *ptr;
2714 	 const size_t packetSize = 8 + 4 + __size_arrays + 1*4;
2715 	ptr = stream->alloc(packetSize);
2716 	int tmp = OP_glDeleteVertexArraysOES;memcpy(ptr, &tmp, 4); ptr += 4;
2717 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2718 
2719 		memcpy(ptr, &n, 4); ptr += 4;
2720 	*(unsigned int *)(ptr) = __size_arrays; ptr += 4;
2721 	memcpy(ptr, arrays, __size_arrays);ptr += __size_arrays;
2722 }
2723 
glGenVertexArraysOES_enc(void * self,GLsizei n,GLuint * arrays)2724 void glGenVertexArraysOES_enc(void *self , GLsizei n, GLuint* arrays)
2725 {
2726 
2727 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2728 	IOStream *stream = ctx->m_stream;
2729 
2730 	const unsigned int __size_arrays =  (n * sizeof(GLuint));
2731 	 unsigned char *ptr;
2732 	 const size_t packetSize = 8 + 4 + __size_arrays + 1*4;
2733 	ptr = stream->alloc(packetSize);
2734 	int tmp = OP_glGenVertexArraysOES;memcpy(ptr, &tmp, 4); ptr += 4;
2735 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2736 
2737 		memcpy(ptr, &n, 4); ptr += 4;
2738 	*(unsigned int *)(ptr) = __size_arrays; ptr += 4;
2739 	stream->readback(arrays, __size_arrays);
2740 }
2741 
glIsVertexArrayOES_enc(void * self,GLuint array)2742 GLboolean glIsVertexArrayOES_enc(void *self , GLuint array)
2743 {
2744 
2745 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2746 	IOStream *stream = ctx->m_stream;
2747 
2748 	 unsigned char *ptr;
2749 	 const size_t packetSize = 8 + 4;
2750 	ptr = stream->alloc(packetSize);
2751 	int tmp = OP_glIsVertexArrayOES;memcpy(ptr, &tmp, 4); ptr += 4;
2752 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2753 
2754 		memcpy(ptr, &array, 4); ptr += 4;
2755 
2756 	GLboolean retval;
2757 	stream->readback(&retval, 1);
2758 	return retval;
2759 }
2760 
glDiscardFramebufferEXT_enc(void * self,GLenum target,GLsizei numAttachments,const GLenum * attachments)2761 void glDiscardFramebufferEXT_enc(void *self , GLenum target, GLsizei numAttachments, const GLenum* attachments)
2762 {
2763 
2764 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2765 	IOStream *stream = ctx->m_stream;
2766 
2767 	const unsigned int __size_attachments =  (numAttachments * sizeof(GLenum));
2768 	 unsigned char *ptr;
2769 	 const size_t packetSize = 8 + 4 + 4 + __size_attachments + 1*4;
2770 	ptr = stream->alloc(packetSize);
2771 	int tmp = OP_glDiscardFramebufferEXT;memcpy(ptr, &tmp, 4); ptr += 4;
2772 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2773 
2774 		memcpy(ptr, &target, 4); ptr += 4;
2775 		memcpy(ptr, &numAttachments, 4); ptr += 4;
2776 	*(unsigned int *)(ptr) = __size_attachments; ptr += 4;
2777 	memcpy(ptr, attachments, __size_attachments);ptr += __size_attachments;
2778 }
2779 
glVertexAttribPointerData_enc(void * self,GLuint indx,GLint size,GLenum type,GLboolean normalized,GLsizei stride,void * data,GLuint datalen)2780 void glVertexAttribPointerData_enc(void *self , GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, void* data, GLuint datalen)
2781 {
2782 
2783 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2784 	IOStream *stream = ctx->m_stream;
2785 
2786 	const unsigned int __size_data =  datalen;
2787 	 unsigned char *ptr;
2788 	 const size_t packetSize = 8 + 4 + 4 + 4 + 1 + 4 + __size_data + 4 + 1*4;
2789 	ptr = stream->alloc(packetSize);
2790 	int tmp = OP_glVertexAttribPointerData;memcpy(ptr, &tmp, 4); ptr += 4;
2791 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2792 
2793 		memcpy(ptr, &indx, 4); ptr += 4;
2794 		memcpy(ptr, &size, 4); ptr += 4;
2795 		memcpy(ptr, &type, 4); ptr += 4;
2796 		memcpy(ptr, &normalized, 1); ptr += 1;
2797 		memcpy(ptr, &stride, 4); ptr += 4;
2798 	*(unsigned int *)(ptr) = __size_data; ptr += 4;
2799 	 glUtilsPackPointerData((unsigned char *)ptr, (unsigned char *)data, size, type, stride, datalen);ptr += __size_data;
2800 		memcpy(ptr, &datalen, 4); ptr += 4;
2801 }
2802 
glVertexAttribPointerOffset_enc(void * self,GLuint indx,GLint size,GLenum type,GLboolean normalized,GLsizei stride,GLuint offset)2803 void glVertexAttribPointerOffset_enc(void *self , GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint offset)
2804 {
2805 
2806 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2807 	IOStream *stream = ctx->m_stream;
2808 
2809 	 unsigned char *ptr;
2810 	 const size_t packetSize = 8 + 4 + 4 + 4 + 1 + 4 + 4;
2811 	ptr = stream->alloc(packetSize);
2812 	int tmp = OP_glVertexAttribPointerOffset;memcpy(ptr, &tmp, 4); ptr += 4;
2813 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2814 
2815 		memcpy(ptr, &indx, 4); ptr += 4;
2816 		memcpy(ptr, &size, 4); ptr += 4;
2817 		memcpy(ptr, &type, 4); ptr += 4;
2818 		memcpy(ptr, &normalized, 1); ptr += 1;
2819 		memcpy(ptr, &stride, 4); ptr += 4;
2820 		memcpy(ptr, &offset, 4); ptr += 4;
2821 }
2822 
glDrawElementsOffset_enc(void * self,GLenum mode,GLsizei count,GLenum type,GLuint offset)2823 void glDrawElementsOffset_enc(void *self , GLenum mode, GLsizei count, GLenum type, GLuint offset)
2824 {
2825 
2826 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2827 	IOStream *stream = ctx->m_stream;
2828 
2829 	 unsigned char *ptr;
2830 	 const size_t packetSize = 8 + 4 + 4 + 4 + 4;
2831 	ptr = stream->alloc(packetSize);
2832 	int tmp = OP_glDrawElementsOffset;memcpy(ptr, &tmp, 4); ptr += 4;
2833 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2834 
2835 		memcpy(ptr, &mode, 4); ptr += 4;
2836 		memcpy(ptr, &count, 4); ptr += 4;
2837 		memcpy(ptr, &type, 4); ptr += 4;
2838 		memcpy(ptr, &offset, 4); ptr += 4;
2839 }
2840 
glDrawElementsData_enc(void * self,GLenum mode,GLsizei count,GLenum type,void * data,GLuint datalen)2841 void glDrawElementsData_enc(void *self , GLenum mode, GLsizei count, GLenum type, void* data, GLuint datalen)
2842 {
2843 
2844 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2845 	IOStream *stream = ctx->m_stream;
2846 
2847 	const unsigned int __size_data =  datalen;
2848 	 unsigned char *ptr;
2849 	 const size_t packetSize = 8 + 4 + 4 + 4 + __size_data + 4 + 1*4;
2850 	ptr = stream->alloc(packetSize);
2851 	int tmp = OP_glDrawElementsData;memcpy(ptr, &tmp, 4); ptr += 4;
2852 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2853 
2854 		memcpy(ptr, &mode, 4); ptr += 4;
2855 		memcpy(ptr, &count, 4); ptr += 4;
2856 		memcpy(ptr, &type, 4); ptr += 4;
2857 	*(unsigned int *)(ptr) = __size_data; ptr += 4;
2858 	memcpy(ptr, data, __size_data);ptr += __size_data;
2859 		memcpy(ptr, &datalen, 4); ptr += 4;
2860 }
2861 
glGetCompressedTextureFormats_enc(void * self,int count,GLint * formats)2862 void glGetCompressedTextureFormats_enc(void *self , int count, GLint* formats)
2863 {
2864 
2865 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2866 	IOStream *stream = ctx->m_stream;
2867 
2868 	const unsigned int __size_formats =  (count * sizeof(GLint));
2869 	 unsigned char *ptr;
2870 	 const size_t packetSize = 8 + 4 + __size_formats + 1*4;
2871 	ptr = stream->alloc(packetSize);
2872 	int tmp = OP_glGetCompressedTextureFormats;memcpy(ptr, &tmp, 4); ptr += 4;
2873 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2874 
2875 		memcpy(ptr, &count, 4); ptr += 4;
2876 	*(unsigned int *)(ptr) = __size_formats; ptr += 4;
2877 	stream->readback(formats, __size_formats);
2878 }
2879 
glShaderString_enc(void * self,GLuint shader,const GLchar * string,GLsizei len)2880 void glShaderString_enc(void *self , GLuint shader, const GLchar* string, GLsizei len)
2881 {
2882 
2883 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2884 	IOStream *stream = ctx->m_stream;
2885 
2886 	const unsigned int __size_string =  len;
2887 	 unsigned char *ptr;
2888 	 const size_t packetSize = 8 + 4 + __size_string + 4 + 1*4;
2889 	ptr = stream->alloc(packetSize);
2890 	int tmp = OP_glShaderString;memcpy(ptr, &tmp, 4); ptr += 4;
2891 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2892 
2893 		memcpy(ptr, &shader, 4); ptr += 4;
2894 	*(unsigned int *)(ptr) = __size_string; ptr += 4;
2895 	memcpy(ptr, string, __size_string);ptr += __size_string;
2896 		memcpy(ptr, &len, 4); ptr += 4;
2897 }
2898 
glFinishRoundTrip_enc(void * self)2899 int glFinishRoundTrip_enc(void *self )
2900 {
2901 
2902 	gl2_encoder_context_t *ctx = (gl2_encoder_context_t *)self;
2903 	IOStream *stream = ctx->m_stream;
2904 
2905 	 unsigned char *ptr;
2906 	 const size_t packetSize = 8 + 0;
2907 	ptr = stream->alloc(packetSize);
2908 	int tmp = OP_glFinishRoundTrip;memcpy(ptr, &tmp, 4); ptr += 4;
2909 	memcpy(ptr, &packetSize, 4);  ptr += 4;
2910 
2911 
2912 	int retval;
2913 	stream->readback(&retval, 4);
2914 	return retval;
2915 }
2916 
gl2_encoder_context_t(IOStream * stream)2917 gl2_encoder_context_t::gl2_encoder_context_t(IOStream *stream)
2918 {
2919 	m_stream = stream;
2920 
2921 	set_glActiveTexture(glActiveTexture_enc);
2922 	set_glAttachShader(glAttachShader_enc);
2923 	set_glBindAttribLocation(glBindAttribLocation_enc);
2924 	set_glBindBuffer(glBindBuffer_enc);
2925 	set_glBindFramebuffer(glBindFramebuffer_enc);
2926 	set_glBindRenderbuffer(glBindRenderbuffer_enc);
2927 	set_glBindTexture(glBindTexture_enc);
2928 	set_glBlendColor(glBlendColor_enc);
2929 	set_glBlendEquation(glBlendEquation_enc);
2930 	set_glBlendEquationSeparate(glBlendEquationSeparate_enc);
2931 	set_glBlendFunc(glBlendFunc_enc);
2932 	set_glBlendFuncSeparate(glBlendFuncSeparate_enc);
2933 	set_glBufferData(glBufferData_enc);
2934 	set_glBufferSubData(glBufferSubData_enc);
2935 	set_glCheckFramebufferStatus(glCheckFramebufferStatus_enc);
2936 	set_glClear(glClear_enc);
2937 	set_glClearColor(glClearColor_enc);
2938 	set_glClearDepthf(glClearDepthf_enc);
2939 	set_glClearStencil(glClearStencil_enc);
2940 	set_glColorMask(glColorMask_enc);
2941 	set_glCompileShader(glCompileShader_enc);
2942 	set_glCompressedTexImage2D(glCompressedTexImage2D_enc);
2943 	set_glCompressedTexSubImage2D(glCompressedTexSubImage2D_enc);
2944 	set_glCopyTexImage2D(glCopyTexImage2D_enc);
2945 	set_glCopyTexSubImage2D(glCopyTexSubImage2D_enc);
2946 	set_glCreateProgram(glCreateProgram_enc);
2947 	set_glCreateShader(glCreateShader_enc);
2948 	set_glCullFace(glCullFace_enc);
2949 	set_glDeleteBuffers(glDeleteBuffers_enc);
2950 	set_glDeleteFramebuffers(glDeleteFramebuffers_enc);
2951 	set_glDeleteProgram(glDeleteProgram_enc);
2952 	set_glDeleteRenderbuffers(glDeleteRenderbuffers_enc);
2953 	set_glDeleteShader(glDeleteShader_enc);
2954 	set_glDeleteTextures(glDeleteTextures_enc);
2955 	set_glDepthFunc(glDepthFunc_enc);
2956 	set_glDepthMask(glDepthMask_enc);
2957 	set_glDepthRangef(glDepthRangef_enc);
2958 	set_glDetachShader(glDetachShader_enc);
2959 	set_glDisable(glDisable_enc);
2960 	set_glDisableVertexAttribArray(glDisableVertexAttribArray_enc);
2961 	set_glDrawArrays(glDrawArrays_enc);
2962 	set_glDrawElements((glDrawElements_client_proc_t)(enc_unsupported));
2963 	set_glEnable(glEnable_enc);
2964 	set_glEnableVertexAttribArray(glEnableVertexAttribArray_enc);
2965 	set_glFinish(glFinish_enc);
2966 	set_glFlush(glFlush_enc);
2967 	set_glFramebufferRenderbuffer(glFramebufferRenderbuffer_enc);
2968 	set_glFramebufferTexture2D(glFramebufferTexture2D_enc);
2969 	set_glFrontFace(glFrontFace_enc);
2970 	set_glGenBuffers(glGenBuffers_enc);
2971 	set_glGenerateMipmap(glGenerateMipmap_enc);
2972 	set_glGenFramebuffers(glGenFramebuffers_enc);
2973 	set_glGenRenderbuffers(glGenRenderbuffers_enc);
2974 	set_glGenTextures(glGenTextures_enc);
2975 	set_glGetActiveAttrib(glGetActiveAttrib_enc);
2976 	set_glGetActiveUniform(glGetActiveUniform_enc);
2977 	set_glGetAttachedShaders(glGetAttachedShaders_enc);
2978 	set_glGetAttribLocation(glGetAttribLocation_enc);
2979 	set_glGetBooleanv(glGetBooleanv_enc);
2980 	set_glGetBufferParameteriv(glGetBufferParameteriv_enc);
2981 	set_glGetError(glGetError_enc);
2982 	set_glGetFloatv(glGetFloatv_enc);
2983 	set_glGetFramebufferAttachmentParameteriv(glGetFramebufferAttachmentParameteriv_enc);
2984 	set_glGetIntegerv(glGetIntegerv_enc);
2985 	set_glGetProgramiv(glGetProgramiv_enc);
2986 	set_glGetProgramInfoLog(glGetProgramInfoLog_enc);
2987 	set_glGetRenderbufferParameteriv(glGetRenderbufferParameteriv_enc);
2988 	set_glGetShaderiv(glGetShaderiv_enc);
2989 	set_glGetShaderInfoLog(glGetShaderInfoLog_enc);
2990 	set_glGetShaderPrecisionFormat(glGetShaderPrecisionFormat_enc);
2991 	set_glGetShaderSource(glGetShaderSource_enc);
2992 	set_glGetString((glGetString_client_proc_t)(enc_unsupported));
2993 	set_glGetTexParameterfv(glGetTexParameterfv_enc);
2994 	set_glGetTexParameteriv(glGetTexParameteriv_enc);
2995 	set_glGetUniformfv(glGetUniformfv_enc);
2996 	set_glGetUniformiv(glGetUniformiv_enc);
2997 	set_glGetUniformLocation(glGetUniformLocation_enc);
2998 	set_glGetVertexAttribfv(glGetVertexAttribfv_enc);
2999 	set_glGetVertexAttribiv(glGetVertexAttribiv_enc);
3000 	set_glGetVertexAttribPointerv((glGetVertexAttribPointerv_client_proc_t)(enc_unsupported));
3001 	set_glHint(glHint_enc);
3002 	set_glIsBuffer(glIsBuffer_enc);
3003 	set_glIsEnabled(glIsEnabled_enc);
3004 	set_glIsFramebuffer(glIsFramebuffer_enc);
3005 	set_glIsProgram(glIsProgram_enc);
3006 	set_glIsRenderbuffer(glIsRenderbuffer_enc);
3007 	set_glIsShader(glIsShader_enc);
3008 	set_glIsTexture(glIsTexture_enc);
3009 	set_glLineWidth(glLineWidth_enc);
3010 	set_glLinkProgram(glLinkProgram_enc);
3011 	set_glPixelStorei(glPixelStorei_enc);
3012 	set_glPolygonOffset(glPolygonOffset_enc);
3013 	set_glReadPixels(glReadPixels_enc);
3014 	set_glReleaseShaderCompiler(glReleaseShaderCompiler_enc);
3015 	set_glRenderbufferStorage(glRenderbufferStorage_enc);
3016 	set_glSampleCoverage(glSampleCoverage_enc);
3017 	set_glScissor(glScissor_enc);
3018 	set_glShaderBinary((glShaderBinary_client_proc_t)(enc_unsupported));
3019 	set_glShaderSource((glShaderSource_client_proc_t)(enc_unsupported));
3020 	set_glStencilFunc(glStencilFunc_enc);
3021 	set_glStencilFuncSeparate(glStencilFuncSeparate_enc);
3022 	set_glStencilMask(glStencilMask_enc);
3023 	set_glStencilMaskSeparate(glStencilMaskSeparate_enc);
3024 	set_glStencilOp(glStencilOp_enc);
3025 	set_glStencilOpSeparate(glStencilOpSeparate_enc);
3026 	set_glTexImage2D(glTexImage2D_enc);
3027 	set_glTexParameterf(glTexParameterf_enc);
3028 	set_glTexParameterfv(glTexParameterfv_enc);
3029 	set_glTexParameteri(glTexParameteri_enc);
3030 	set_glTexParameteriv(glTexParameteriv_enc);
3031 	set_glTexSubImage2D(glTexSubImage2D_enc);
3032 	set_glUniform1f(glUniform1f_enc);
3033 	set_glUniform1fv(glUniform1fv_enc);
3034 	set_glUniform1i(glUniform1i_enc);
3035 	set_glUniform1iv(glUniform1iv_enc);
3036 	set_glUniform2f(glUniform2f_enc);
3037 	set_glUniform2fv(glUniform2fv_enc);
3038 	set_glUniform2i(glUniform2i_enc);
3039 	set_glUniform2iv(glUniform2iv_enc);
3040 	set_glUniform3f(glUniform3f_enc);
3041 	set_glUniform3fv(glUniform3fv_enc);
3042 	set_glUniform3i(glUniform3i_enc);
3043 	set_glUniform3iv(glUniform3iv_enc);
3044 	set_glUniform4f(glUniform4f_enc);
3045 	set_glUniform4fv(glUniform4fv_enc);
3046 	set_glUniform4i(glUniform4i_enc);
3047 	set_glUniform4iv(glUniform4iv_enc);
3048 	set_glUniformMatrix2fv(glUniformMatrix2fv_enc);
3049 	set_glUniformMatrix3fv(glUniformMatrix3fv_enc);
3050 	set_glUniformMatrix4fv(glUniformMatrix4fv_enc);
3051 	set_glUseProgram(glUseProgram_enc);
3052 	set_glValidateProgram(glValidateProgram_enc);
3053 	set_glVertexAttrib1f(glVertexAttrib1f_enc);
3054 	set_glVertexAttrib1fv(glVertexAttrib1fv_enc);
3055 	set_glVertexAttrib2f(glVertexAttrib2f_enc);
3056 	set_glVertexAttrib2fv(glVertexAttrib2fv_enc);
3057 	set_glVertexAttrib3f(glVertexAttrib3f_enc);
3058 	set_glVertexAttrib3fv(glVertexAttrib3fv_enc);
3059 	set_glVertexAttrib4f(glVertexAttrib4f_enc);
3060 	set_glVertexAttrib4fv(glVertexAttrib4fv_enc);
3061 	set_glVertexAttribPointer((glVertexAttribPointer_client_proc_t)(enc_unsupported));
3062 	set_glViewport(glViewport_enc);
3063 	set_glEGLImageTargetTexture2DOES(glEGLImageTargetTexture2DOES_enc);
3064 	set_glEGLImageTargetRenderbufferStorageOES(glEGLImageTargetRenderbufferStorageOES_enc);
3065 	set_glGetProgramBinaryOES((glGetProgramBinaryOES_client_proc_t)(enc_unsupported));
3066 	set_glProgramBinaryOES((glProgramBinaryOES_client_proc_t)(enc_unsupported));
3067 	set_glMapBufferOES((glMapBufferOES_client_proc_t)(enc_unsupported));
3068 	set_glUnmapBufferOES(glUnmapBufferOES_enc);
3069 	set_glTexImage3DOES(glTexImage3DOES_enc);
3070 	set_glTexSubImage3DOES(glTexSubImage3DOES_enc);
3071 	set_glCopyTexSubImage3DOES(glCopyTexSubImage3DOES_enc);
3072 	set_glCompressedTexImage3DOES(glCompressedTexImage3DOES_enc);
3073 	set_glCompressedTexSubImage3DOES(glCompressedTexSubImage3DOES_enc);
3074 	set_glFramebufferTexture3DOES(glFramebufferTexture3DOES_enc);
3075 	set_glBindVertexArrayOES(glBindVertexArrayOES_enc);
3076 	set_glDeleteVertexArraysOES(glDeleteVertexArraysOES_enc);
3077 	set_glGenVertexArraysOES(glGenVertexArraysOES_enc);
3078 	set_glIsVertexArrayOES(glIsVertexArrayOES_enc);
3079 	set_glDiscardFramebufferEXT(glDiscardFramebufferEXT_enc);
3080 	set_glMultiDrawArraysEXT((glMultiDrawArraysEXT_client_proc_t)(enc_unsupported));
3081 	set_glMultiDrawElementsEXT((glMultiDrawElementsEXT_client_proc_t)(enc_unsupported));
3082 	set_glGetPerfMonitorGroupsAMD((glGetPerfMonitorGroupsAMD_client_proc_t)(enc_unsupported));
3083 	set_glGetPerfMonitorCountersAMD((glGetPerfMonitorCountersAMD_client_proc_t)(enc_unsupported));
3084 	set_glGetPerfMonitorGroupStringAMD((glGetPerfMonitorGroupStringAMD_client_proc_t)(enc_unsupported));
3085 	set_glGetPerfMonitorCounterStringAMD((glGetPerfMonitorCounterStringAMD_client_proc_t)(enc_unsupported));
3086 	set_glGetPerfMonitorCounterInfoAMD((glGetPerfMonitorCounterInfoAMD_client_proc_t)(enc_unsupported));
3087 	set_glGenPerfMonitorsAMD((glGenPerfMonitorsAMD_client_proc_t)(enc_unsupported));
3088 	set_glDeletePerfMonitorsAMD((glDeletePerfMonitorsAMD_client_proc_t)(enc_unsupported));
3089 	set_glSelectPerfMonitorCountersAMD((glSelectPerfMonitorCountersAMD_client_proc_t)(enc_unsupported));
3090 	set_glBeginPerfMonitorAMD((glBeginPerfMonitorAMD_client_proc_t)(enc_unsupported));
3091 	set_glEndPerfMonitorAMD((glEndPerfMonitorAMD_client_proc_t)(enc_unsupported));
3092 	set_glGetPerfMonitorCounterDataAMD((glGetPerfMonitorCounterDataAMD_client_proc_t)(enc_unsupported));
3093 	set_glRenderbufferStorageMultisampleIMG((glRenderbufferStorageMultisampleIMG_client_proc_t)(enc_unsupported));
3094 	set_glFramebufferTexture2DMultisampleIMG((glFramebufferTexture2DMultisampleIMG_client_proc_t)(enc_unsupported));
3095 	set_glDeleteFencesNV((glDeleteFencesNV_client_proc_t)(enc_unsupported));
3096 	set_glGenFencesNV((glGenFencesNV_client_proc_t)(enc_unsupported));
3097 	set_glIsFenceNV((glIsFenceNV_client_proc_t)(enc_unsupported));
3098 	set_glTestFenceNV((glTestFenceNV_client_proc_t)(enc_unsupported));
3099 	set_glGetFenceivNV((glGetFenceivNV_client_proc_t)(enc_unsupported));
3100 	set_glFinishFenceNV((glFinishFenceNV_client_proc_t)(enc_unsupported));
3101 	set_glSetFenceNV((glSetFenceNV_client_proc_t)(enc_unsupported));
3102 	set_glCoverageMaskNV((glCoverageMaskNV_client_proc_t)(enc_unsupported));
3103 	set_glCoverageOperationNV((glCoverageOperationNV_client_proc_t)(enc_unsupported));
3104 	set_glGetDriverControlsQCOM((glGetDriverControlsQCOM_client_proc_t)(enc_unsupported));
3105 	set_glGetDriverControlStringQCOM((glGetDriverControlStringQCOM_client_proc_t)(enc_unsupported));
3106 	set_glEnableDriverControlQCOM((glEnableDriverControlQCOM_client_proc_t)(enc_unsupported));
3107 	set_glDisableDriverControlQCOM((glDisableDriverControlQCOM_client_proc_t)(enc_unsupported));
3108 	set_glExtGetTexturesQCOM((glExtGetTexturesQCOM_client_proc_t)(enc_unsupported));
3109 	set_glExtGetBuffersQCOM((glExtGetBuffersQCOM_client_proc_t)(enc_unsupported));
3110 	set_glExtGetRenderbuffersQCOM((glExtGetRenderbuffersQCOM_client_proc_t)(enc_unsupported));
3111 	set_glExtGetFramebuffersQCOM((glExtGetFramebuffersQCOM_client_proc_t)(enc_unsupported));
3112 	set_glExtGetTexLevelParameterivQCOM((glExtGetTexLevelParameterivQCOM_client_proc_t)(enc_unsupported));
3113 	set_glExtTexObjectStateOverrideiQCOM((glExtTexObjectStateOverrideiQCOM_client_proc_t)(enc_unsupported));
3114 	set_glExtGetTexSubImageQCOM((glExtGetTexSubImageQCOM_client_proc_t)(enc_unsupported));
3115 	set_glExtGetBufferPointervQCOM((glExtGetBufferPointervQCOM_client_proc_t)(enc_unsupported));
3116 	set_glExtGetShadersQCOM((glExtGetShadersQCOM_client_proc_t)(enc_unsupported));
3117 	set_glExtGetProgramsQCOM((glExtGetProgramsQCOM_client_proc_t)(enc_unsupported));
3118 	set_glExtIsProgramBinaryQCOM((glExtIsProgramBinaryQCOM_client_proc_t)(enc_unsupported));
3119 	set_glExtGetProgramBinarySourceQCOM((glExtGetProgramBinarySourceQCOM_client_proc_t)(enc_unsupported));
3120 	set_glStartTilingQCOM((glStartTilingQCOM_client_proc_t)(enc_unsupported));
3121 	set_glEndTilingQCOM((glEndTilingQCOM_client_proc_t)(enc_unsupported));
3122 	set_glVertexAttribPointerData(glVertexAttribPointerData_enc);
3123 	set_glVertexAttribPointerOffset(glVertexAttribPointerOffset_enc);
3124 	set_glDrawElementsOffset(glDrawElementsOffset_enc);
3125 	set_glDrawElementsData(glDrawElementsData_enc);
3126 	set_glGetCompressedTextureFormats(glGetCompressedTextureFormats_enc);
3127 	set_glShaderString(glShaderString_enc);
3128 	set_glFinishRoundTrip(glFinishRoundTrip_enc);
3129 }
3130 
3131