// Generated Code - DO NOT EDIT !! // generated by 'emugen' #include #include #include "renderControl_client_context.h" #ifndef GL_TRUE extern "C" { GLint rcGetRendererVersion(); EGLint rcGetEGLVersion(EGLint* major, EGLint* minor); EGLint rcQueryEGLString(EGLenum name, void* buffer, EGLint bufferSize); EGLint rcGetGLString(EGLenum name, void* buffer, EGLint bufferSize); EGLint rcGetNumConfigs(uint32_t* numAttribs); EGLint rcGetConfigs(uint32_t bufSize, GLuint* buffer); EGLint rcChooseConfig(EGLint* attribs, uint32_t attribs_size, uint32_t* configs, uint32_t configs_size); EGLint rcGetFBParam(EGLint param); uint32_t rcCreateContext(uint32_t config, uint32_t share, uint32_t glVersion); void rcDestroyContext(uint32_t context); uint32_t rcCreateWindowSurface(uint32_t config, uint32_t width, uint32_t height); void rcDestroyWindowSurface(uint32_t windowSurface); uint32_t rcCreateColorBuffer(uint32_t width, uint32_t height, GLenum internalFormat); void rcOpenColorBuffer(uint32_t colorbuffer); void rcCloseColorBuffer(uint32_t colorbuffer); void rcSetWindowColorBuffer(uint32_t windowSurface, uint32_t colorBuffer); int rcFlushWindowColorBuffer(uint32_t windowSurface); EGLint rcMakeCurrent(uint32_t context, uint32_t drawSurf, uint32_t readSurf); void rcFBPost(uint32_t colorBuffer); void rcFBSetSwapInterval(EGLint interval); void rcBindTexture(uint32_t colorBuffer); void rcBindRenderbuffer(uint32_t colorBuffer); EGLint rcColorBufferCacheFlush(uint32_t colorbuffer, EGLint postCount, int forRead); void rcReadColorBuffer(uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels); int rcUpdateColorBuffer(uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels); int rcOpenColorBuffer2(uint32_t colorbuffer); uint32_t rcCreateClientImage(uint32_t context, EGLenum target, GLuint buffer); int rcDestroyClientImage(uint32_t image); void rcSelectChecksumCalculator(uint32_t newProtocol, uint32_t reserved); int rcGetNumDisplays(); int rcGetDisplayWidth(uint32_t displayId); int rcGetDisplayHeight(uint32_t displayId); int rcGetDisplayDpiX(uint32_t displayId); int rcGetDisplayDpiY(uint32_t displayId); int rcGetDisplayVsyncPeriod(uint32_t displayId); void rcPostLayer(const char* name, uint32_t colorBuffer, float alpha, int32_t sourceCropLeft, int32_t sourceCropTop, int32_t sourceCropRight, int32_t sourceCropBottom, int32_t displayFrameLeft, int32_t displayFrameTop, int32_t displayFrameRight, int32_t displayFrameBottom); void rcPostAllLayersDone(); }; #endif #ifndef GET_CONTEXT static renderControl_client_context_t::CONTEXT_ACCESSOR_TYPE *getCurrentContext = NULL; void renderControl_client_context_t::setContextAccessor(CONTEXT_ACCESSOR_TYPE *f) { getCurrentContext = f; } #define GET_CONTEXT renderControl_client_context_t * ctx = getCurrentContext() #endif GLint rcGetRendererVersion() { GET_CONTEXT; return ctx->rcGetRendererVersion(ctx); } EGLint rcGetEGLVersion(EGLint* major, EGLint* minor) { GET_CONTEXT; return ctx->rcGetEGLVersion(ctx, major, minor); } EGLint rcQueryEGLString(EGLenum name, void* buffer, EGLint bufferSize) { GET_CONTEXT; return ctx->rcQueryEGLString(ctx, name, buffer, bufferSize); } EGLint rcGetGLString(EGLenum name, void* buffer, EGLint bufferSize) { GET_CONTEXT; return ctx->rcGetGLString(ctx, name, buffer, bufferSize); } EGLint rcGetNumConfigs(uint32_t* numAttribs) { GET_CONTEXT; return ctx->rcGetNumConfigs(ctx, numAttribs); } EGLint rcGetConfigs(uint32_t bufSize, GLuint* buffer) { GET_CONTEXT; return ctx->rcGetConfigs(ctx, bufSize, buffer); } EGLint rcChooseConfig(EGLint* attribs, uint32_t attribs_size, uint32_t* configs, uint32_t configs_size) { GET_CONTEXT; return ctx->rcChooseConfig(ctx, attribs, attribs_size, configs, configs_size); } EGLint rcGetFBParam(EGLint param) { GET_CONTEXT; return ctx->rcGetFBParam(ctx, param); } uint32_t rcCreateContext(uint32_t config, uint32_t share, uint32_t glVersion) { GET_CONTEXT; return ctx->rcCreateContext(ctx, config, share, glVersion); } void rcDestroyContext(uint32_t context) { GET_CONTEXT; ctx->rcDestroyContext(ctx, context); } uint32_t rcCreateWindowSurface(uint32_t config, uint32_t width, uint32_t height) { GET_CONTEXT; return ctx->rcCreateWindowSurface(ctx, config, width, height); } void rcDestroyWindowSurface(uint32_t windowSurface) { GET_CONTEXT; ctx->rcDestroyWindowSurface(ctx, windowSurface); } uint32_t rcCreateColorBuffer(uint32_t width, uint32_t height, GLenum internalFormat) { GET_CONTEXT; return ctx->rcCreateColorBuffer(ctx, width, height, internalFormat); } void rcOpenColorBuffer(uint32_t colorbuffer) { GET_CONTEXT; ctx->rcOpenColorBuffer(ctx, colorbuffer); } void rcCloseColorBuffer(uint32_t colorbuffer) { GET_CONTEXT; ctx->rcCloseColorBuffer(ctx, colorbuffer); } void rcSetWindowColorBuffer(uint32_t windowSurface, uint32_t colorBuffer) { GET_CONTEXT; ctx->rcSetWindowColorBuffer(ctx, windowSurface, colorBuffer); } int rcFlushWindowColorBuffer(uint32_t windowSurface) { GET_CONTEXT; return ctx->rcFlushWindowColorBuffer(ctx, windowSurface); } EGLint rcMakeCurrent(uint32_t context, uint32_t drawSurf, uint32_t readSurf) { GET_CONTEXT; return ctx->rcMakeCurrent(ctx, context, drawSurf, readSurf); } void rcFBPost(uint32_t colorBuffer) { GET_CONTEXT; ctx->rcFBPost(ctx, colorBuffer); } void rcFBSetSwapInterval(EGLint interval) { GET_CONTEXT; ctx->rcFBSetSwapInterval(ctx, interval); } void rcBindTexture(uint32_t colorBuffer) { GET_CONTEXT; ctx->rcBindTexture(ctx, colorBuffer); } void rcBindRenderbuffer(uint32_t colorBuffer) { GET_CONTEXT; ctx->rcBindRenderbuffer(ctx, colorBuffer); } EGLint rcColorBufferCacheFlush(uint32_t colorbuffer, EGLint postCount, int forRead) { GET_CONTEXT; return ctx->rcColorBufferCacheFlush(ctx, colorbuffer, postCount, forRead); } void rcReadColorBuffer(uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels) { GET_CONTEXT; ctx->rcReadColorBuffer(ctx, colorbuffer, x, y, width, height, format, type, pixels); } int rcUpdateColorBuffer(uint32_t colorbuffer, GLint x, GLint y, GLint width, GLint height, GLenum format, GLenum type, void* pixels) { GET_CONTEXT; return ctx->rcUpdateColorBuffer(ctx, colorbuffer, x, y, width, height, format, type, pixels); } int rcOpenColorBuffer2(uint32_t colorbuffer) { GET_CONTEXT; return ctx->rcOpenColorBuffer2(ctx, colorbuffer); } uint32_t rcCreateClientImage(uint32_t context, EGLenum target, GLuint buffer) { GET_CONTEXT; return ctx->rcCreateClientImage(ctx, context, target, buffer); } int rcDestroyClientImage(uint32_t image) { GET_CONTEXT; return ctx->rcDestroyClientImage(ctx, image); } void rcSelectChecksumCalculator(uint32_t newProtocol, uint32_t reserved) { GET_CONTEXT; ctx->rcSelectChecksumCalculator(ctx, newProtocol, reserved); } int rcGetNumDisplays() { GET_CONTEXT; return ctx->rcGetNumDisplays(ctx); } int rcGetDisplayWidth(uint32_t displayId) { GET_CONTEXT; return ctx->rcGetDisplayWidth(ctx, displayId); } int rcGetDisplayHeight(uint32_t displayId) { GET_CONTEXT; return ctx->rcGetDisplayHeight(ctx, displayId); } int rcGetDisplayDpiX(uint32_t displayId) { GET_CONTEXT; return ctx->rcGetDisplayDpiX(ctx, displayId); } int rcGetDisplayDpiY(uint32_t displayId) { GET_CONTEXT; return ctx->rcGetDisplayDpiY(ctx, displayId); } int rcGetDisplayVsyncPeriod(uint32_t displayId) { GET_CONTEXT; return ctx->rcGetDisplayVsyncPeriod(ctx, displayId); } void rcPostLayer(const char* name, uint32_t colorBuffer, float alpha, int32_t sourceCropLeft, int32_t sourceCropTop, int32_t sourceCropRight, int32_t sourceCropBottom, int32_t displayFrameLeft, int32_t displayFrameTop, int32_t displayFrameRight, int32_t displayFrameBottom) { GET_CONTEXT; ctx->rcPostLayer(ctx, name, colorBuffer, alpha, sourceCropLeft, sourceCropTop, sourceCropRight, sourceCropBottom, displayFrameLeft, displayFrameTop, displayFrameRight, displayFrameBottom); } void rcPostAllLayersDone() { GET_CONTEXT; ctx->rcPostAllLayersDone(ctx); }