1 // Generated Code - DO NOT EDIT !!
2 // generated by 'emugen'
3
4
5 #include <string.h>
6 #include "renderControl_opcodes.h"
7
8 #include "renderControl_enc.h"
9
10
11 #include <stdio.h>
enc_unsupported()12 static void enc_unsupported()
13 {
14 ALOGE("Function is unsupported\n");
15 }
16
rcGetRendererVersion_enc(void * self)17 GLint rcGetRendererVersion_enc(void *self )
18 {
19
20 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
21 IOStream *stream = ctx->m_stream;
22
23 unsigned char *ptr;
24 const size_t packetSize = 8;
25 ptr = stream->alloc(packetSize);
26 int tmp = OP_rcGetRendererVersion;memcpy(ptr, &tmp, 4); ptr += 4;
27 memcpy(ptr, &packetSize, 4); ptr += 4;
28
29
30 GLint retval;
31 stream->readback(&retval, 4);
32 return retval;
33 }
34
rcGetEGLVersion_enc(void * self,EGLint * major,EGLint * minor)35 EGLint rcGetEGLVersion_enc(void *self , EGLint* major, EGLint* minor)
36 {
37
38 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
39 IOStream *stream = ctx->m_stream;
40
41 const unsigned int __size_major = sizeof(EGLint);
42 const unsigned int __size_minor = sizeof(EGLint);
43 unsigned char *ptr;
44 const size_t packetSize = 8 + __size_major + __size_minor + 2*4;
45 ptr = stream->alloc(packetSize);
46 int tmp = OP_rcGetEGLVersion;memcpy(ptr, &tmp, 4); ptr += 4;
47 memcpy(ptr, &packetSize, 4); ptr += 4;
48
49 *(unsigned int *)(ptr) = __size_major; ptr += 4;
50 *(unsigned int *)(ptr) = __size_minor; ptr += 4;
51 stream->readback(major, __size_major);
52 stream->readback(minor, __size_minor);
53
54 EGLint retval;
55 stream->readback(&retval, 4);
56 return retval;
57 }
58
rcQueryEGLString_enc(void * self,EGLenum name,void * buffer,EGLint bufferSize)59 EGLint rcQueryEGLString_enc(void *self , EGLenum name, void* buffer, EGLint bufferSize)
60 {
61
62 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
63 IOStream *stream = ctx->m_stream;
64
65 const unsigned int __size_buffer = bufferSize;
66 unsigned char *ptr;
67 const size_t packetSize = 8 + 4 + __size_buffer + 4 + 1*4;
68 ptr = stream->alloc(packetSize);
69 int tmp = OP_rcQueryEGLString;memcpy(ptr, &tmp, 4); ptr += 4;
70 memcpy(ptr, &packetSize, 4); ptr += 4;
71
72 memcpy(ptr, &name, 4); ptr += 4;
73 *(unsigned int *)(ptr) = __size_buffer; ptr += 4;
74 memcpy(ptr, &bufferSize, 4); ptr += 4;
75 stream->readback(buffer, __size_buffer);
76
77 EGLint retval;
78 stream->readback(&retval, 4);
79 return retval;
80 }
81
rcGetGLString_enc(void * self,EGLenum name,void * buffer,EGLint bufferSize)82 EGLint rcGetGLString_enc(void *self , EGLenum name, void* buffer, EGLint bufferSize)
83 {
84
85 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
86 IOStream *stream = ctx->m_stream;
87
88 const unsigned int __size_buffer = bufferSize;
89 unsigned char *ptr;
90 const size_t packetSize = 8 + 4 + __size_buffer + 4 + 1*4;
91 ptr = stream->alloc(packetSize);
92 int tmp = OP_rcGetGLString;memcpy(ptr, &tmp, 4); ptr += 4;
93 memcpy(ptr, &packetSize, 4); ptr += 4;
94
95 memcpy(ptr, &name, 4); ptr += 4;
96 *(unsigned int *)(ptr) = __size_buffer; ptr += 4;
97 memcpy(ptr, &bufferSize, 4); ptr += 4;
98 stream->readback(buffer, __size_buffer);
99
100 EGLint retval;
101 stream->readback(&retval, 4);
102 return retval;
103 }
104
rcGetNumConfigs_enc(void * self,uint32_t * numAttribs)105 EGLint rcGetNumConfigs_enc(void *self , uint32_t* numAttribs)
106 {
107
108 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
109 IOStream *stream = ctx->m_stream;
110
111 const unsigned int __size_numAttribs = sizeof(uint32_t);
112 unsigned char *ptr;
113 const size_t packetSize = 8 + __size_numAttribs + 1*4;
114 ptr = stream->alloc(packetSize);
115 int tmp = OP_rcGetNumConfigs;memcpy(ptr, &tmp, 4); ptr += 4;
116 memcpy(ptr, &packetSize, 4); ptr += 4;
117
118 *(unsigned int *)(ptr) = __size_numAttribs; ptr += 4;
119 stream->readback(numAttribs, __size_numAttribs);
120
121 EGLint retval;
122 stream->readback(&retval, 4);
123 return retval;
124 }
125
rcGetConfigs_enc(void * self,uint32_t bufSize,GLuint * buffer)126 EGLint rcGetConfigs_enc(void *self , uint32_t bufSize, GLuint* buffer)
127 {
128
129 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
130 IOStream *stream = ctx->m_stream;
131
132 const unsigned int __size_buffer = bufSize;
133 unsigned char *ptr;
134 const size_t packetSize = 8 + 4 + __size_buffer + 1*4;
135 ptr = stream->alloc(packetSize);
136 int tmp = OP_rcGetConfigs;memcpy(ptr, &tmp, 4); ptr += 4;
137 memcpy(ptr, &packetSize, 4); ptr += 4;
138
139 memcpy(ptr, &bufSize, 4); ptr += 4;
140 *(unsigned int *)(ptr) = __size_buffer; ptr += 4;
141 stream->readback(buffer, __size_buffer);
142
143 EGLint retval;
144 stream->readback(&retval, 4);
145 return retval;
146 }
147
rcChooseConfig_enc(void * self,EGLint * attribs,uint32_t attribs_size,uint32_t * configs,uint32_t configs_size)148 EGLint rcChooseConfig_enc(void *self , EGLint* attribs, uint32_t attribs_size, uint32_t* configs, uint32_t configs_size)
149 {
150
151 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
152 IOStream *stream = ctx->m_stream;
153
154 const unsigned int __size_attribs = attribs_size;
155 const unsigned int __size_configs = ((configs != NULL) ? configs_size*sizeof(uint32_t) : 0);
156 unsigned char *ptr;
157 const size_t packetSize = 8 + __size_attribs + 4 + __size_configs + 4 + 2*4;
158 ptr = stream->alloc(packetSize);
159 int tmp = OP_rcChooseConfig;memcpy(ptr, &tmp, 4); ptr += 4;
160 memcpy(ptr, &packetSize, 4); ptr += 4;
161
162 *(unsigned int *)(ptr) = __size_attribs; ptr += 4;
163 memcpy(ptr, attribs, __size_attribs);ptr += __size_attribs;
164 memcpy(ptr, &attribs_size, 4); ptr += 4;
165 *(unsigned int *)(ptr) = __size_configs; ptr += 4;
166 memcpy(ptr, &configs_size, 4); ptr += 4;
167 if (configs != NULL) stream->readback(configs, __size_configs);
168
169 EGLint retval;
170 stream->readback(&retval, 4);
171 return retval;
172 }
173
rcGetFBParam_enc(void * self,EGLint param)174 EGLint rcGetFBParam_enc(void *self , EGLint param)
175 {
176
177 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
178 IOStream *stream = ctx->m_stream;
179
180 unsigned char *ptr;
181 const size_t packetSize = 8 + 4;
182 ptr = stream->alloc(packetSize);
183 int tmp = OP_rcGetFBParam;memcpy(ptr, &tmp, 4); ptr += 4;
184 memcpy(ptr, &packetSize, 4); ptr += 4;
185
186 memcpy(ptr, ¶m, 4); ptr += 4;
187
188 EGLint retval;
189 stream->readback(&retval, 4);
190 return retval;
191 }
192
rcCreateContext_enc(void * self,uint32_t config,uint32_t share,uint32_t glVersion)193 uint32_t rcCreateContext_enc(void *self , uint32_t config, uint32_t share, uint32_t glVersion)
194 {
195
196 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
197 IOStream *stream = ctx->m_stream;
198
199 unsigned char *ptr;
200 const size_t packetSize = 8 + 4 + 4 + 4;
201 ptr = stream->alloc(packetSize);
202 int tmp = OP_rcCreateContext;memcpy(ptr, &tmp, 4); ptr += 4;
203 memcpy(ptr, &packetSize, 4); ptr += 4;
204
205 memcpy(ptr, &config, 4); ptr += 4;
206 memcpy(ptr, &share, 4); ptr += 4;
207 memcpy(ptr, &glVersion, 4); ptr += 4;
208
209 uint32_t retval;
210 stream->readback(&retval, 4);
211 return retval;
212 }
213
rcDestroyContext_enc(void * self,uint32_t context)214 void rcDestroyContext_enc(void *self , uint32_t context)
215 {
216
217 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
218 IOStream *stream = ctx->m_stream;
219
220 unsigned char *ptr;
221 const size_t packetSize = 8 + 4;
222 ptr = stream->alloc(packetSize);
223 int tmp = OP_rcDestroyContext;memcpy(ptr, &tmp, 4); ptr += 4;
224 memcpy(ptr, &packetSize, 4); ptr += 4;
225
226 memcpy(ptr, &context, 4); ptr += 4;
227 }
228
rcCreateWindowSurface_enc(void * self,uint32_t config,uint32_t width,uint32_t height)229 uint32_t rcCreateWindowSurface_enc(void *self , uint32_t config, uint32_t width, uint32_t height)
230 {
231
232 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
233 IOStream *stream = ctx->m_stream;
234
235 unsigned char *ptr;
236 const size_t packetSize = 8 + 4 + 4 + 4;
237 ptr = stream->alloc(packetSize);
238 int tmp = OP_rcCreateWindowSurface;memcpy(ptr, &tmp, 4); ptr += 4;
239 memcpy(ptr, &packetSize, 4); ptr += 4;
240
241 memcpy(ptr, &config, 4); ptr += 4;
242 memcpy(ptr, &width, 4); ptr += 4;
243 memcpy(ptr, &height, 4); ptr += 4;
244
245 uint32_t retval;
246 stream->readback(&retval, 4);
247 return retval;
248 }
249
rcDestroyWindowSurface_enc(void * self,uint32_t windowSurface)250 void rcDestroyWindowSurface_enc(void *self , uint32_t windowSurface)
251 {
252
253 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
254 IOStream *stream = ctx->m_stream;
255
256 unsigned char *ptr;
257 const size_t packetSize = 8 + 4;
258 ptr = stream->alloc(packetSize);
259 int tmp = OP_rcDestroyWindowSurface;memcpy(ptr, &tmp, 4); ptr += 4;
260 memcpy(ptr, &packetSize, 4); ptr += 4;
261
262 memcpy(ptr, &windowSurface, 4); ptr += 4;
263 }
264
rcCreateColorBuffer_enc(void * self,uint32_t width,uint32_t height,GLenum internalFormat)265 uint32_t rcCreateColorBuffer_enc(void *self , uint32_t width, uint32_t height, GLenum internalFormat)
266 {
267
268 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
269 IOStream *stream = ctx->m_stream;
270
271 unsigned char *ptr;
272 const size_t packetSize = 8 + 4 + 4 + 4;
273 ptr = stream->alloc(packetSize);
274 int tmp = OP_rcCreateColorBuffer;memcpy(ptr, &tmp, 4); ptr += 4;
275 memcpy(ptr, &packetSize, 4); ptr += 4;
276
277 memcpy(ptr, &width, 4); ptr += 4;
278 memcpy(ptr, &height, 4); ptr += 4;
279 memcpy(ptr, &internalFormat, 4); ptr += 4;
280
281 uint32_t retval;
282 stream->readback(&retval, 4);
283 return retval;
284 }
285
rcOpenColorBuffer_enc(void * self,uint32_t colorbuffer)286 void rcOpenColorBuffer_enc(void *self , uint32_t colorbuffer)
287 {
288
289 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
290 IOStream *stream = ctx->m_stream;
291
292 unsigned char *ptr;
293 const size_t packetSize = 8 + 4;
294 ptr = stream->alloc(packetSize);
295 int tmp = OP_rcOpenColorBuffer;memcpy(ptr, &tmp, 4); ptr += 4;
296 memcpy(ptr, &packetSize, 4); ptr += 4;
297
298 memcpy(ptr, &colorbuffer, 4); ptr += 4;
299 }
300
rcCloseColorBuffer_enc(void * self,uint32_t colorbuffer)301 void rcCloseColorBuffer_enc(void *self , uint32_t colorbuffer)
302 {
303
304 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
305 IOStream *stream = ctx->m_stream;
306
307 unsigned char *ptr;
308 const size_t packetSize = 8 + 4;
309 ptr = stream->alloc(packetSize);
310 int tmp = OP_rcCloseColorBuffer;memcpy(ptr, &tmp, 4); ptr += 4;
311 memcpy(ptr, &packetSize, 4); ptr += 4;
312
313 memcpy(ptr, &colorbuffer, 4); ptr += 4;
314
315 stream->flush();
316 }
317
rcSetWindowColorBuffer_enc(void * self,uint32_t windowSurface,uint32_t colorBuffer)318 void rcSetWindowColorBuffer_enc(void *self , uint32_t windowSurface, uint32_t colorBuffer)
319 {
320
321 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
322 IOStream *stream = ctx->m_stream;
323
324 unsigned char *ptr;
325 const size_t packetSize = 8 + 4 + 4;
326 ptr = stream->alloc(packetSize);
327 int tmp = OP_rcSetWindowColorBuffer;memcpy(ptr, &tmp, 4); ptr += 4;
328 memcpy(ptr, &packetSize, 4); ptr += 4;
329
330 memcpy(ptr, &windowSurface, 4); ptr += 4;
331 memcpy(ptr, &colorBuffer, 4); ptr += 4;
332 }
333
rcFlushWindowColorBuffer_enc(void * self,uint32_t windowSurface)334 int rcFlushWindowColorBuffer_enc(void *self , uint32_t windowSurface)
335 {
336
337 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
338 IOStream *stream = ctx->m_stream;
339
340 unsigned char *ptr;
341 const size_t packetSize = 8 + 4;
342 ptr = stream->alloc(packetSize);
343 int tmp = OP_rcFlushWindowColorBuffer;memcpy(ptr, &tmp, 4); ptr += 4;
344 memcpy(ptr, &packetSize, 4); ptr += 4;
345
346 memcpy(ptr, &windowSurface, 4); ptr += 4;
347
348 int retval;
349 stream->readback(&retval, 4);
350 return retval;
351 }
352
rcMakeCurrent_enc(void * self,uint32_t context,uint32_t drawSurf,uint32_t readSurf)353 EGLint rcMakeCurrent_enc(void *self , uint32_t context, uint32_t drawSurf, uint32_t readSurf)
354 {
355
356 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
357 IOStream *stream = ctx->m_stream;
358
359 unsigned char *ptr;
360 const size_t packetSize = 8 + 4 + 4 + 4;
361 ptr = stream->alloc(packetSize);
362 int tmp = OP_rcMakeCurrent;memcpy(ptr, &tmp, 4); ptr += 4;
363 memcpy(ptr, &packetSize, 4); ptr += 4;
364
365 memcpy(ptr, &context, 4); ptr += 4;
366 memcpy(ptr, &drawSurf, 4); ptr += 4;
367 memcpy(ptr, &readSurf, 4); ptr += 4;
368
369 EGLint retval;
370 stream->readback(&retval, 4);
371 return retval;
372 }
373
rcFBPost_enc(void * self,uint32_t colorBuffer)374 void rcFBPost_enc(void *self , uint32_t colorBuffer)
375 {
376
377 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
378 IOStream *stream = ctx->m_stream;
379
380 unsigned char *ptr;
381 const size_t packetSize = 8 + 4;
382 ptr = stream->alloc(packetSize);
383 int tmp = OP_rcFBPost;memcpy(ptr, &tmp, 4); ptr += 4;
384 memcpy(ptr, &packetSize, 4); ptr += 4;
385
386 memcpy(ptr, &colorBuffer, 4); ptr += 4;
387 }
388
rcFBSetSwapInterval_enc(void * self,EGLint interval)389 void rcFBSetSwapInterval_enc(void *self , EGLint interval)
390 {
391
392 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
393 IOStream *stream = ctx->m_stream;
394
395 unsigned char *ptr;
396 const size_t packetSize = 8 + 4;
397 ptr = stream->alloc(packetSize);
398 int tmp = OP_rcFBSetSwapInterval;memcpy(ptr, &tmp, 4); ptr += 4;
399 memcpy(ptr, &packetSize, 4); ptr += 4;
400
401 memcpy(ptr, &interval, 4); ptr += 4;
402 }
403
rcBindTexture_enc(void * self,uint32_t colorBuffer)404 void rcBindTexture_enc(void *self , uint32_t colorBuffer)
405 {
406
407 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
408 IOStream *stream = ctx->m_stream;
409
410 unsigned char *ptr;
411 const size_t packetSize = 8 + 4;
412 ptr = stream->alloc(packetSize);
413 int tmp = OP_rcBindTexture;memcpy(ptr, &tmp, 4); ptr += 4;
414 memcpy(ptr, &packetSize, 4); ptr += 4;
415
416 memcpy(ptr, &colorBuffer, 4); ptr += 4;
417 }
418
rcBindRenderbuffer_enc(void * self,uint32_t colorBuffer)419 void rcBindRenderbuffer_enc(void *self , uint32_t colorBuffer)
420 {
421
422 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
423 IOStream *stream = ctx->m_stream;
424
425 unsigned char *ptr;
426 const size_t packetSize = 8 + 4;
427 ptr = stream->alloc(packetSize);
428 int tmp = OP_rcBindRenderbuffer;memcpy(ptr, &tmp, 4); ptr += 4;
429 memcpy(ptr, &packetSize, 4); ptr += 4;
430
431 memcpy(ptr, &colorBuffer, 4); ptr += 4;
432 }
433
rcColorBufferCacheFlush_enc(void * self,uint32_t colorbuffer,EGLint postCount,int forRead)434 EGLint rcColorBufferCacheFlush_enc(void *self , uint32_t colorbuffer, EGLint postCount, int forRead)
435 {
436
437 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
438 IOStream *stream = ctx->m_stream;
439
440 unsigned char *ptr;
441 const size_t packetSize = 8 + 4 + 4 + 4;
442 ptr = stream->alloc(packetSize);
443 int tmp = OP_rcColorBufferCacheFlush;memcpy(ptr, &tmp, 4); ptr += 4;
444 memcpy(ptr, &packetSize, 4); ptr += 4;
445
446 memcpy(ptr, &colorbuffer, 4); ptr += 4;
447 memcpy(ptr, &postCount, 4); ptr += 4;
448 memcpy(ptr, &forRead, 4); ptr += 4;
449
450 EGLint retval;
451 stream->readback(&retval, 4);
452 return retval;
453 }
454
rcReadColorBuffer_enc(void * self,uint32_t colorbuffer,GLint x,GLint y,GLint width,GLint height,GLenum format,GLenum type,void * pixels)455 void rcReadColorBuffer_enc(void *self , uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels)
456 {
457
458 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
459 IOStream *stream = ctx->m_stream;
460
461 const unsigned int __size_pixels = (((glUtilsPixelBitSize(format, type) * width) >> 3) * height);
462 unsigned char *ptr;
463 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_pixels + 1*4;
464 ptr = stream->alloc(packetSize);
465 int tmp = OP_rcReadColorBuffer;memcpy(ptr, &tmp, 4); ptr += 4;
466 memcpy(ptr, &packetSize, 4); ptr += 4;
467
468 memcpy(ptr, &colorbuffer, 4); ptr += 4;
469 memcpy(ptr, &x, 4); ptr += 4;
470 memcpy(ptr, &y, 4); ptr += 4;
471 memcpy(ptr, &width, 4); ptr += 4;
472 memcpy(ptr, &height, 4); ptr += 4;
473 memcpy(ptr, &format, 4); ptr += 4;
474 memcpy(ptr, &type, 4); ptr += 4;
475 *(unsigned int *)(ptr) = __size_pixels; ptr += 4;
476 stream->readback(pixels, __size_pixels);
477 }
478
rcUpdateColorBuffer_enc(void * self,uint32_t colorbuffer,GLint x,GLint y,GLint width,GLint height,GLenum format,GLenum type,void * pixels)479 int rcUpdateColorBuffer_enc(void *self , uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels)
480 {
481
482 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
483 IOStream *stream = ctx->m_stream;
484
485 const unsigned int __size_pixels = (((glUtilsPixelBitSize(format, type) * width) >> 3) * height);
486 unsigned char *ptr;
487 const size_t packetSize = 8 + 4 + 4 + 4 + 4 + 4 + 4 + 4 + __size_pixels + 1*4;
488 ptr = stream->alloc(8 + 4 + 4 + 4 + 4 + 4 + 4 + 4);
489 int tmp = OP_rcUpdateColorBuffer;memcpy(ptr, &tmp, 4); ptr += 4;
490 memcpy(ptr, &packetSize, 4); ptr += 4;
491
492 memcpy(ptr, &colorbuffer, 4); ptr += 4;
493 memcpy(ptr, &x, 4); ptr += 4;
494 memcpy(ptr, &y, 4); ptr += 4;
495 memcpy(ptr, &width, 4); ptr += 4;
496 memcpy(ptr, &height, 4); ptr += 4;
497 memcpy(ptr, &format, 4); ptr += 4;
498 memcpy(ptr, &type, 4); ptr += 4;
499 stream->flush();
500 stream->writeFully(&__size_pixels,4);
501 stream->writeFully(pixels, __size_pixels);
502
503 int retval;
504 stream->readback(&retval, 4);
505 return retval;
506 }
507
rcOpenColorBuffer2_enc(void * self,uint32_t colorbuffer)508 int rcOpenColorBuffer2_enc(void *self , uint32_t colorbuffer)
509 {
510
511 renderControl_encoder_context_t *ctx = (renderControl_encoder_context_t *)self;
512 IOStream *stream = ctx->m_stream;
513
514 unsigned char *ptr;
515 const size_t packetSize = 8 + 4;
516 ptr = stream->alloc(packetSize);
517 int tmp = OP_rcOpenColorBuffer2;memcpy(ptr, &tmp, 4); ptr += 4;
518 memcpy(ptr, &packetSize, 4); ptr += 4;
519
520 memcpy(ptr, &colorbuffer, 4); ptr += 4;
521
522 int retval;
523 stream->readback(&retval, 4);
524 return retval;
525 }
526
renderControl_encoder_context_t(IOStream * stream)527 renderControl_encoder_context_t::renderControl_encoder_context_t(IOStream *stream)
528 {
529 m_stream = stream;
530
531 set_rcGetRendererVersion(rcGetRendererVersion_enc);
532 set_rcGetEGLVersion(rcGetEGLVersion_enc);
533 set_rcQueryEGLString(rcQueryEGLString_enc);
534 set_rcGetGLString(rcGetGLString_enc);
535 set_rcGetNumConfigs(rcGetNumConfigs_enc);
536 set_rcGetConfigs(rcGetConfigs_enc);
537 set_rcChooseConfig(rcChooseConfig_enc);
538 set_rcGetFBParam(rcGetFBParam_enc);
539 set_rcCreateContext(rcCreateContext_enc);
540 set_rcDestroyContext(rcDestroyContext_enc);
541 set_rcCreateWindowSurface(rcCreateWindowSurface_enc);
542 set_rcDestroyWindowSurface(rcDestroyWindowSurface_enc);
543 set_rcCreateColorBuffer(rcCreateColorBuffer_enc);
544 set_rcOpenColorBuffer(rcOpenColorBuffer_enc);
545 set_rcCloseColorBuffer(rcCloseColorBuffer_enc);
546 set_rcSetWindowColorBuffer(rcSetWindowColorBuffer_enc);
547 set_rcFlushWindowColorBuffer(rcFlushWindowColorBuffer_enc);
548 set_rcMakeCurrent(rcMakeCurrent_enc);
549 set_rcFBPost(rcFBPost_enc);
550 set_rcFBSetSwapInterval(rcFBSetSwapInterval_enc);
551 set_rcBindTexture(rcBindTexture_enc);
552 set_rcBindRenderbuffer(rcBindRenderbuffer_enc);
553 set_rcColorBufferCacheFlush(rcColorBufferCacheFlush_enc);
554 set_rcReadColorBuffer(rcReadColorBuffer_enc);
555 set_rcUpdateColorBuffer(rcUpdateColorBuffer_enc);
556 set_rcOpenColorBuffer2(rcOpenColorBuffer2_enc);
557 }
558
559