summaryrefslogtreecommitdiff
path: root/cogl/winsys/cogl-winsys-egl-private.h
Commit message (Collapse)AuthorAgeFilesLines
* Move the EGL Android winsys out of cogl-winsys-eglNeil Roberts2011-12-131-5/+0
| | | | | | | | This moves all of the code specific to the Android platform out of cogl-winsys-egl. It is completely untested apart from that it compiles using a dummy android/native_window.h header. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* Move the EGL GDL winsys out of cogl-winsys-eglNeil Roberts2011-12-131-6/+7
| | | | | | | | This moves all of the code specific to the gdl winsys out of cogl-winsys-egl. It is completely untested apart from that it compiles. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* Move the EGL null winsys out of cogl-winsys-eglNeil Roberts2011-12-131-2/+1
| | | | | | | This moves all of the code specific to the null winsys out of cogl-winsys-egl. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* kms: Don't use egl_surface_width/heightNeil Roberts2011-12-131-2/+1
| | | | | | | | | | The egl_surface_width/height properties in CoglDisplayEGL were accidentally being conditionally defined depending on KMS support. They are not necessary because CoglDisplayKMS also already stores the width/height and this was just copied over to the EGL dipslay. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* winsys: Move Wayland-specific code out of the EGL winsysNeil Roberts2011-12-121-20/+0
| | | | | | All of the Wayland-specific code now lives in the EGL_WAYLAND winsys. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* winsys: Move X11/Xlib-specific code out of the EGL winsysNeil Roberts2011-12-121-20/+18
| | | | | | All of the X11/Xlib-specific code now lives in the EGL_X11 winsys. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* Remove CoglXlibDisplayNeil Roberts2011-12-121-2/+1
| | | | | | | | | | | | | CoglXlibDisplay just contained one member called dummy_xwin. This was not shared outside of the respective winsys's so I don't think it really makes sense to have a separate shared struct for it. It seems more like an implementation detail that is specific to the winsys because for example it may be that the EGL winsys could use the surfaceless extension and not bother with a dummy window. This will also make it easier to factor out the Xlib-specific data in CoglDisplayEGL to the platform data. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* cogl-xlib-renderer: Move private data to cogl_object_set_user_dataNeil Roberts2011-12-121-4/+0
| | | | | | | | | | | Previously the Xlib renderer data was meant to be the first member of whatever the winsys data is. This doesn't work well for the EGL winsys because it only needs the Xlib data if the X11 platform is used. The Xlib renderer data is now instead created on demand and connected to the object using cogl_object_set_user_data. There is a new function to get access to it. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* egl: Split out the KMS winsys as overrides of the EGL winsysNeil Roberts2011-12-091-9/+55
| | | | | | | | | | | | Instead of having #ifdefs to hook into the normal EGL winsys, the KMS winsys now overrides any winsys functions that it wants. Where the winsys wants to hook into a point within a function provided by the EGL winsys there is a EGL-platform vtable which gets set on the EGL renderer data during renderer_connect. The KMS-specific data on all of the structures is now allocated separately by the KMS winsys and is pointed to by a new 'platform' pointer in the EGL data. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* egl: Allow multiple EGL platformsNeil Roberts2011-12-081-12/+8
| | | | | | | | | | | | | The #ifdefs in cogl-winsys-egl have been changed so that they additionally check renderer->winsys_vtable->id for the corresponding winsys ID so that multiple EGL platforms can be enabled. The is a stop-gap solution until we can move all of the EGL platforms into their own winsys files with overrides of the EGL vtable. However with this approach we can move one platform at a time which will make it easier. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* kms: Check for the right surfaceless extension depending on driverNeil Roberts2011-12-081-1/+3
| | | | | | | | There are three separate EGL_KHR_surfaceless_* extensions depending on which GL API is being used so we should probably check the right one depending on which driver Cogl has selected. Reviewed-by: Robert Bragg <robert@linux.intel.com>
* build: Add missing include in cogl-winsys-egl-private.hTomeu Vizoso2011-12-061-0/+1
| | | | We were missing APIENTRY.
* build: include missing headers in cogl-winsys-egl-private.hRobert Bragg2011-11-281-0/+8
| | | | | | | | We were missing various platform header includes in cogl-winsys-egl-private.h when building support for non KMS egl platforms. Reviewed-by: Neil Roberts <neil@linux.intel.com>
* build: only include cogl-winsys-kms.h if KMS enabledRobert Bragg2011-11-281-0/+2
| | | | | | | Only include cogl-winsys-kms.h in cogl-winsys-egl-private.h if KMS support has been enabled. Reviewed-by: Neil Roberts <neil@linux.intel.com>
* kms: Check for EGL_KHR_surfaceless_opengl extensionRobert Bragg2011-11-281-1/+2
| | | | | | | | This adds a check for the EGL_KHR_surfaceless_opengl extension which we depend on for being able to MakeCurrent (NO_SURFACE) as well as create a context without and EGLConfig. Reviewed-by: Rob Bradford <rob@linux.intel.com>
* kms: move Cogl*EGL typedefs to cogl-winsys-egl-private.hRobert Bragg2011-11-281-0/+88
| | | | | | | So that the various internal Cogl*EGL typedefs can be available to cogl-winsys-kms.c this moves them into cogl-winsys-egl-private.h Reviewed-by: Rob Bradford <rob@linux.intel.com>
* Add _cogl_egl_texture_2d_new_from_image APIRobert Bragg2011-06-011-0/+46
This adds an internal texture_2d constructor that can wrap an EGLImage as a CoglTexture2D. The plan is to utilize this for texture-from-pixmap support with EGL as well as creating textures from wayland buffers.