156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall// Generated Code - DO NOT EDIT !! 256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall// generated by 'emugen' 356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall#include <stdio.h> 456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall#include <stdlib.h> 556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall#include "renderControl_client_context.h" 656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall#ifndef GL_TRUE 856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallextern "C" { 956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GLint rcGetRendererVersion(); 1056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall EGLint rcGetEGLVersion(EGLint* major, EGLint* minor); 1156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall EGLint rcQueryEGLString(EGLenum name, void* buffer, EGLint bufferSize); 1256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall EGLint rcGetGLString(EGLenum name, void* buffer, EGLint bufferSize); 1356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall EGLint rcGetNumConfigs(uint32_t* numAttribs); 1456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall EGLint rcGetConfigs(uint32_t bufSize, GLuint* buffer); 1556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall EGLint rcChooseConfig(EGLint* attribs, uint32_t attribs_size, uint32_t* configs, uint32_t configs_size); 1656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall EGLint rcGetFBParam(EGLint param); 1756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall uint32_t rcCreateContext(uint32_t config, uint32_t share, uint32_t glVersion); 1856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcDestroyContext(uint32_t context); 1956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall uint32_t rcCreateWindowSurface(uint32_t config, uint32_t width, uint32_t height); 2056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcDestroyWindowSurface(uint32_t windowSurface); 2156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall uint32_t rcCreateColorBuffer(uint32_t width, uint32_t height, GLenum internalFormat); 2256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcOpenColorBuffer(uint32_t colorbuffer); 2356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcCloseColorBuffer(uint32_t colorbuffer); 2456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcSetWindowColorBuffer(uint32_t windowSurface, uint32_t colorBuffer); 2556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall int rcFlushWindowColorBuffer(uint32_t windowSurface); 2656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall EGLint rcMakeCurrent(uint32_t context, uint32_t drawSurf, uint32_t readSurf); 2756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcFBPost(uint32_t colorBuffer); 2856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcFBSetSwapInterval(EGLint interval); 2956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcBindTexture(uint32_t colorBuffer); 3056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcBindRenderbuffer(uint32_t colorBuffer); 3156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall EGLint rcColorBufferCacheFlush(uint32_t colorbuffer, EGLint postCount, int forRead); 3256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall void rcReadColorBuffer(uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels); 3356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall int rcUpdateColorBuffer(uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels); 3456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall}; 3556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 3656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall#endif 3756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall#ifndef GET_CONTEXT 3856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallstatic renderControl_client_context_t::CONTEXT_ACCESSOR_TYPE *getCurrentContext = NULL; 3956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid renderControl_client_context_t::setContextAccessor(CONTEXT_ACCESSOR_TYPE *f) { getCurrentContext = f; } 4056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall#define GET_CONTEXT renderControl_client_context_t * ctx = getCurrentContext() 4156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall#endif 4256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 4356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallGLint rcGetRendererVersion() 4456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 4556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 4656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcGetRendererVersion(ctx); 4756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 4856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 4956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallEGLint rcGetEGLVersion(EGLint* major, EGLint* minor) 5056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 5156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 5256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcGetEGLVersion(ctx, major, minor); 5356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 5456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 5556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallEGLint rcQueryEGLString(EGLenum name, void* buffer, EGLint bufferSize) 5656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 5756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 5856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcQueryEGLString(ctx, name, buffer, bufferSize); 5956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 6056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 6156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallEGLint rcGetGLString(EGLenum name, void* buffer, EGLint bufferSize) 6256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 6356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 6456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcGetGLString(ctx, name, buffer, bufferSize); 6556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 6656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 6756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallEGLint rcGetNumConfigs(uint32_t* numAttribs) 6856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 6956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 7056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcGetNumConfigs(ctx, numAttribs); 7156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 7256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 7356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallEGLint rcGetConfigs(uint32_t bufSize, GLuint* buffer) 7456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 7556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 7656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcGetConfigs(ctx, bufSize, buffer); 7756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 7856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 7956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallEGLint rcChooseConfig(EGLint* attribs, uint32_t attribs_size, uint32_t* configs, uint32_t configs_size) 8056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 8156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 8256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcChooseConfig(ctx, attribs, attribs_size, configs, configs_size); 8356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 8456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 8556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallEGLint rcGetFBParam(EGLint param) 8656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 8756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 8856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcGetFBParam(ctx, param); 8956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 9056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 9156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Halluint32_t rcCreateContext(uint32_t config, uint32_t share, uint32_t glVersion) 9256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 9356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 9456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcCreateContext(ctx, config, share, glVersion); 9556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 9656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 9756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcDestroyContext(uint32_t context) 9856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 9956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 10056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcDestroyContext(ctx, context); 10156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 10256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 10356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Halluint32_t rcCreateWindowSurface(uint32_t config, uint32_t width, uint32_t height) 10456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 10556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 10656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcCreateWindowSurface(ctx, config, width, height); 10756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 10856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 10956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcDestroyWindowSurface(uint32_t windowSurface) 11056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 11156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 11256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcDestroyWindowSurface(ctx, windowSurface); 11356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 11456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 11556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Halluint32_t rcCreateColorBuffer(uint32_t width, uint32_t height, GLenum internalFormat) 11656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 11756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 11856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcCreateColorBuffer(ctx, width, height, internalFormat); 11956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 12056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 12156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcOpenColorBuffer(uint32_t colorbuffer) 12256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 12356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 12456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcOpenColorBuffer(ctx, colorbuffer); 12556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 12656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 12756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcCloseColorBuffer(uint32_t colorbuffer) 12856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 12956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 13056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcCloseColorBuffer(ctx, colorbuffer); 13156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 13256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 13356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcSetWindowColorBuffer(uint32_t windowSurface, uint32_t colorBuffer) 13456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 13556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 13656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcSetWindowColorBuffer(ctx, windowSurface, colorBuffer); 13756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 13856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 13956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallint rcFlushWindowColorBuffer(uint32_t windowSurface) 14056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 14156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 14256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcFlushWindowColorBuffer(ctx, windowSurface); 14356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 14456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 14556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallEGLint rcMakeCurrent(uint32_t context, uint32_t drawSurf, uint32_t readSurf) 14656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 14756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 14856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcMakeCurrent(ctx, context, drawSurf, readSurf); 14956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 15056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 15156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcFBPost(uint32_t colorBuffer) 15256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 15356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 15456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcFBPost(ctx, colorBuffer); 15556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 15656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 15756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcFBSetSwapInterval(EGLint interval) 15856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 15956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 16056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcFBSetSwapInterval(ctx, interval); 16156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 16256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 16356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcBindTexture(uint32_t colorBuffer) 16456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 16556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 16656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcBindTexture(ctx, colorBuffer); 16756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 16856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 16956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcBindRenderbuffer(uint32_t colorBuffer) 17056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 17156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 17256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcBindRenderbuffer(ctx, colorBuffer); 17356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 17456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 17556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse HallEGLint rcColorBufferCacheFlush(uint32_t colorbuffer, EGLint postCount, int forRead) 17656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 17756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 17856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcColorBufferCacheFlush(ctx, colorbuffer, postCount, forRead); 17956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 18056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 18156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallvoid rcReadColorBuffer(uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels) 18256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 18356513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 18456513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall ctx->rcReadColorBuffer(ctx, colorbuffer, x, y, width, height, format, type, pixels); 18556513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 18656513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 18756513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hallint rcUpdateColorBuffer(uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels) 18856513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall{ 18956513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall GET_CONTEXT; 19056513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall return ctx->rcUpdateColorBuffer(ctx, colorbuffer, x, y, width, height, format, type, pixels); 19156513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall} 19256513f5ff4f3e851c5f0cb38dc8851d18616b3c0Jesse Hall 193