summaryrefslogtreecommitdiff
path: root/src/egl/main/eglsurface.c
AgeCommit message (Collapse)Author
2010-10-23egl: Add reference count for resources.Chia-I Wu
This is a really simple mechanism. There is no atomicity and the caller is expected to hold the display lock.
2010-10-22egl: Move fallback routines to eglfallbacks.c.Chia-I Wu
We do not want them to be all over the places.
2010-10-14egl: Access config attributes directly.Chia-I Wu
Replace SET_CONFIG_ATTRIB/GET_CONFIG_ATTRIB by direct dereferences.
2010-07-31egl: Add checks for EGL_MESA_screen_surface.Chia-I Wu
This allows Mesa EGL to be compiled with eglext.h that does not define EGL_MESA_screen_surface.
2010-05-14egl: Implement EGL_NOK_texture_from_pixmapKristian Høgsberg
This extension allows a color buffer to be used for both rendering and texturing. EGL allows the use of color buffers of pbuffer drawables for texturing, this extension extends this to allow the use of color buffers of pixmaps too.
2010-01-31egl: Clean up surface attributes.Chia-I Wu
Add missing attributes and use correct types in _EGLSurface. Remove ifdef tests that serve no purpose. Update _eglQuerySurface and _eglSurfaceAttrib for missing queries and checks.
2010-01-31egl: Initialize display resources with their display.Chia-I Wu
Change _eglInitSurface, _eglInitContext, and _eglInitImage to take an _EGLDisplay instead of an _EGLDriver. This is a more natural form, and plus, the display encodes information such as the extensions supported that might be required for attribute list parsing.
2010-01-31egl: Refactor _eglInitSurface.Chia-I Wu
Refactor attribute list parsing code to _eglParseSurfaceAttribList.
2010-01-31egl: Remove code blocks that are commented out.Chia-I Wu
They are either unit tests or to demonstrate how functions are supposed to be used. The unit test is outdated and it should be better to take a look at any of the working drivers to see how a function is used.
2010-01-30egl: Clean up header inclusions.Chia-I Wu
Mainly to remove eglcurrent.h and egldisplay.h from eglglobals.h.
2010-01-28egl: Remove unnecessary headers.Vinson Lee
2010-01-25egl: Native types are renamed in EGL 1.3.Chia-I Wu
Rename Native*Type to EGLNative*Type.
2010-01-24egl: Make surfaces and contexts resources.Chia-I Wu
Turn _EGLSurface and _EGLContext into _EGLResource so that they can be managed uniformly.
2010-01-24egl: Move surface functions in egldisplay.[ch] to eglsurface.[ch]Chia-I Wu
Move functions to where they should be. There should be no real change here.
2009-10-15egl: Rework eglSwapInterval.Chia-I Wu
This adds error checking to eglSwapInterval and clamps the swap interval. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-18egl: Remove eglhash.c and eglhash.h.Chia-I Wu
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-18egl: Some per-driver data should be per-display.Chia-I Wu
Move some fields of _EGLDriver to _EGLDisplay. It also becomes unnecessary to pass _EGLDisplay to drivers when _eglMain is called. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-18egl: Overhaul driver API.Chia-I Wu
The motivation is so that drivers do not need to look up and check for bad display, context, and etc. It also becomes unnecessary for drivers to call the link functions. This commit makes eglapi.[ch] do the lookup and check. As a result, the driver API is overhauled, and almost all sources and drivers need update. The updates are mainly find and replace with human brains. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-03egl: Correct the default values of surface attributes.Chia-I Wu
EGL_TEXTURE_FORMAT and EGL_TEXTURE_TARGET should default to EGL_NO_TEXTURE. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-03egl: Replace IsBound by a pointer to the binding.Chia-I Wu
IsBound tells if a context or surface is current. What it does not tell is, to which thread a context is current, or to which context a surface is current. This commit replaces IsBound by a pointer to the binding thread or context. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-07-17egl: Remove redundant DeletePending flag.Chia-I Wu
A context or surface that is neither linked to a display nor current to a thread should be destroyed. Therefore, an unlinked context or surface implies a pending delete automatically. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-07-17egl: Use the link functions to manage resources.Chia-I Wu
This commit uses the newly introduced link functions to manage EGL contexts and surfaces. As a result of this, the API for drivers are changed. All drivers are updated for the change. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-07-17egl: Add funtions to link contexts and surfaces to displays.Chia-I Wu
EGL contexts and surfaces are resources of displays. They should be managed by displays. This commit adds a bunch of functions to egldisplay.c to help establish the links between contexts/surfaces and displays. How links are established is considered opaque outside display. Functions like _eglGetSurfaceHandle or _eglLookupSurface are therefore moved to egldisplay.c, with some small modifications. The idea is also extended to display. That is, displays need to link to themselves to be looked up. This commit only adds the functions. A commit to use them should follow. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-07-17egl: Support per-thread info.Chia-I Wu
This commit introduces a "current" system to manage per-thread info. It uses TLS, if GLX_USE_TLS is defined, or pthread, if PTHREADS is defined. If none of them are defined, it uses a dummy implementation that is just like before. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2008-09-01egl: additional error checking in _eglBind/ReleaseTexImage()Brian Paul
2008-06-20egl: implment EGL_LARGEST_PBUFFER queryBrian Paul
2008-05-30egl: fix width/height testsBrian Paul
2008-05-27added _eglGet*Handle() functionsBrian Paul
These are the inverse of the _eglLookup*() functions. Returns the public handle for a private surface/config/display/etc. Removes glapi.c's direct access of private fields.
2008-05-27fix typo: s/Contexts/Surfaces/Brian Paul
2008-05-27assorted changes to compile with new EGL 1.4 headers (untested)Brian Paul
2006-02-05fix typoBrian Paul
2006-01-30some initial EGL 1.2 workBrian Paul
2005-12-10Some initial per-thread support.Brian Paul
Rename eglShowSurfaceMESA to eglShowScreenSurfaceMESA.
2005-11-27Redo _eglInitSurface() so it can be used with all surface types.Brian Paul
Redo _eglInitContext() to do error checking, attribute list parsing, etc.
2005-11-23update some commentsBrian Paul
2005-05-17added _eglInitPbufferSurface()Brian Paul
2005-05-16Implement query of surface type.Jon Smirl
2005-04-22initial EGL codeBrian Paul