diff options
Diffstat (limited to 'engine-ocean/External/glew/auto/EGL-Registry/extensions/HI/EGL_HI_clientpixmap.txt')
-rw-r--r-- | engine-ocean/External/glew/auto/EGL-Registry/extensions/HI/EGL_HI_clientpixmap.txt | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/engine-ocean/External/glew/auto/EGL-Registry/extensions/HI/EGL_HI_clientpixmap.txt b/engine-ocean/External/glew/auto/EGL-Registry/extensions/HI/EGL_HI_clientpixmap.txt new file mode 100644 index 0000000..5ca366d --- /dev/null +++ b/engine-ocean/External/glew/auto/EGL-Registry/extensions/HI/EGL_HI_clientpixmap.txt @@ -0,0 +1,144 @@ +Name + + HI_clientpixmap + +Name Strings + + EGL_HI_clientpixmap + +Contributors + + Guillaume Portier + +Contacts + + HI support. (support_renderion 'at' hicorp.co.jp) + +Status + + Shipping (Revision 3). + +Version + + Last Modified Date: June 7, 2010 + Revision 3 + +Number + + EGL Extension #24 + +Dependencies + + This extension is written against the wording of the EGL 1.4 + Specification. + +Overview + + The extension specified in this document provide a mechanism for + using memory allocated by the application as a color-buffer. + + +New Types + + EGLClientPixmapHI : specifies the width, height, stride, format + and memory pointer of the pixmap to be used by the function + eglCreatePixmapSurfaceHI to create the PixmapSurface. + + Members: + void* pData; + Pointer to a memory buffer allocated by the application + that will contain the result of the drawing operations. + It is up to the application to ensure that the buffer + size corresponds to iHeight * iStride * sizeof(pixel). + EGLint iWidth; + Width of the buffer in pixels. + EGLint iHeight; + Height of the buffer in pixels. The height of the buffer + can be negative; in that case the result of the + drawing operations will be vertically swapped. When + positive, pData will point at the bottom-left corner + of the image; when negative, to the top-left corner. + EGLint iStride; + Stride of the buffer, in pixels. It is important to note + that each row of the buffer must start on 32-bit + boundaries. + +New Procedures and Functions + + eglCreatePixmapSurfaceHI : creates an EGL ClientPixmap from + an EGLClientPixmapHI structure. eglCreatePixmapSurfaceHI usage + is identical to eglCreatePixmapSurface. In addition the ordering + of the color components in the color buffer can be specified by + the surface attribute described in the EGL_HI_colorformats + extension. + + In order to update the pointer to the data of the surface, the application + can call eglSurfaceAttrib with the EGL_CLIENT_PIXMAP_POINTER_HI attribute. + See below for an example. + +New Tokens + + None. + +Example + + + EGLClientPixmapHI pixmap; + EGLint attrib_list[] = { + EGL_RED_SIZE, 8, + EGL_GREEN_SIZE, 8, + EGL_BLUE_SIZE, 8, + EGL_ALPHA_SIZE, 8, + EGL_SURFACE_TYPE, EGL_PIXMAP_BIT, + // Specifying ARGB as a color format + EGL_COLOR_FORMAT_HI, EGL_COLOR_ARGB_HI, + EGL_NONE + }; + + // ‘access' being the memory to render into. + pixmap.pData = framebuffer.access; + pixmap.iWidht = framebuffer.width; + pixmap.iHeight = framebuffer.height; + pixmap.iStride = framebuffer.stride; + + + + //Get Config ARGB8 + eglChooseConfig(dpy, attrib_list, &config, 1, &num_config); + + // Create the pixmap + #ifdef EGL_EGLEXT_PROTOTYPES + + eglCreatePixmapSurfaceHI(eglDisplay, ppkConfig[0], &gHiPixmap); + + #else + + pfCreatePixmap = (PFNEGLCREATEPIXMAPSURFACEHIPROC) + eglGetProcAddress("eglCreatePixmapSurfaceHI"); + pfCreatePixmap(eglDisplay, ppkConfig[0], &gHiPixmap); + + #endif /* EGL_EGLEXT_PROTOTYPES */ + + + // Update the surface data pointer, from now we will render into the + // memory pointed by 'access2'. + eglSurfaceAttrib(eglDisplay, eglSurface, EGL_CLIENT_PIXMAP_POINTER_HI, + offscreen.access2); + +Issues + + None + + +Revision History + + June 7, 2010 (r3) + - Allow updating the pixmap data pointer using eglSurfaceAttrib with + the EGL_CLIENT_PIXMAP_POINTER_HI attribute. + + June 16, 2009 (r2) + - Split HI_clientpixmap into two different extensions: + - HI_colorformats + - HI_clientpixmap + + March 3, 2009 (r1) |