New commits:
http://git.directfb.org/?p=core/DirectFB.git;a=commit;h=aa109252b69e5b54c876bb468c689e0dc7b9ab38
commit aa109252b69e5b54c876bb468c689e0dc7b9ab38
Author: Denis Oliver Kropp <[email protected]>
Date: Thu Mar 20 22:25:25 2014 +0100
API/EGL: Extensions and changes to implementation, fixes
Add DFBSurfaceAllocationOps for allocation management.
Add check for GBM to configure script.
Add DSEVT_CONFIG and DSEVT_FRAME events.
Add DFBSurfaceAccessorID (and add to DFBGraphicsEngineCapabilities).
Add experimental GBM display support (e.g. running compositor-drm of
Weston).
Add GBM/DRM (Mesa) based EGL implementation.
Add option 'drmkms-no-resources' to allow headless DRM usage (like render
nodes).
EGL United / Graphics Core
- Use CoreSurface object directly at core API (keep IDirectFBSurface at EGL
level)
Add gles2 (stubs) library. To be used for linking applications etc. Later
may be extended for multiplexing :)
Add CoreDFB::GetSurfaceBuffer().
Add CoreSurface::GetBuffers() to retrieve current buffer IDs for flipping
chain (changes after reconfig).
Add CoreSurface::GetOrAllocate() to add or retrieve the allocation of a
surface buffer based on a string used as key for
classification and negotiation with the pools.
Add surface client for WM per window. Should replace dfb_window_repaint().
Simplify IDirectFBSurface, i.e. diversion in Flip/Stereo() for window/layer
no longer needed.
Cache allocations in IDirectFBSurface::Lock() as an optimisation, update on
DSEVT_CONFIG event.
Fix missing surface flip count usage in layer region code.
Experimental code changes in X11 system module, to be finished, e.g.
optimised display of OpenGL rendered content.
Move locking from Renderer to Engine.
Make dfb_surface_get_buffer3 return older frames via hash table, e.g. after
resize (with older flip count as index).
Deprecate CSNF_DISPLAY notification!
Cleanup surface client and flip counting.
Other internal changes.
Makefile.am | 2 +-
configure.in | 22 +
include/directfb.h | 46 +-
include/directfb_graphics.h | 2 +
lib/direct/Base.h | 149 +++--
lib/direct/Type.h | 38 +-
lib/egl/DIRECTFB_GetConfigAttribs.cpp | 16 +-
lib/egl/EGLCoreWayland/EGLDisplayGBM.cpp | 319 +++++++++
lib/egl/EGLCoreWayland/EGLDisplayWayland.cpp | 202 +++---
lib/egl/EGLCoreWayland/EGLDisplayWayland.h | 21 +-
lib/egl/KHR_image.cpp | 371 +++++++++++
lib/egl/KHR_image.h | 194 ++++++
lib/egl/Makefile.am | 70 +-
lib/egl/api.cpp | 743 ---------------------
lib/egl/config.cpp | 92 ---
lib/egl/context.cpp | 233 -------
lib/egl/core.cpp | 338 ----------
lib/egl/dfbegl.cpp | 771 ++++++++++++++++++++++
lib/egl/dfbegl.h | 632 +-----------------
lib/egl/egl.pc.in | 2 +-
lib/egl/egl_config.cpp | 97 +++
lib/egl/egl_config.h | 97 +++
lib/egl/egl_context.cpp | 251 +++++++
lib/egl/egl_context.h | 139 ++++
lib/egl/egl_core.cpp | 336 ++++++++++
lib/egl/egl_core.h | 217 +++++++
lib/egl/egl_display.cpp | 661 +++++++++++++++++++
lib/egl/egl_display.h | 188 ++++++
lib/egl/egl_library.cpp | 251 +++++++
lib/egl/egl_library.h | 185 ++++++
lib/egl/egl_option.cpp | 92 +++
lib/egl/egl_option.h | 97 +++
lib/egl/egl_result.h | 52 --
lib/egl/egl_surface.cpp | 240 +++++++
lib/egl/egl_surface.h | 123 ++++
lib/egl/egl_tls.cpp | 121 ++++
lib/egl/egl_tls.h | 120 ++++
lib/egl/egl_util.cpp | 290 +++++++++
lib/egl/egl_util.h | 107 +++
lib/egl/image.cpp | 363 -----------
lib/egl/image.h | 188 ------
lib/egl/library.cpp | 244 -------
lib/egl/option.cpp | 86 ---
lib/egl/surface.cpp | 245 -------
lib/egl/tls.cpp | 95 ---
lib/egl/util.cpp | 290 ---------
lib/gles2/.gitignore | 4 +
lib/gles2/CMakeLists.txt | 100 +++
lib/gles2/Makefile.am | 98 +++
lib/gles2/api.cpp | 57 ++
lib/gles2/build.h.in | 33 +
lib/gles2/dfbgles2.h | 862 +++++++++++++++++++++++++
lib/gles2/dfbgles2.pc.in | 11 +
lib/gles2/gles2.pc.in | 11 +
lib/gles2/gles2_api.cpp | 777 ++++++++++++++++++++++
lib/gles2/gles2_result.h | 39 ++
lib/wayland-dfb/wayland-dfb-client-protocol.h | 31 +-
lib/wayland-dfb/wayland-dfb-protocol.c | 10 +-
lib/wayland-dfb/wayland-dfb-server-protocol.h | 14 +-
lib/wayland-dfb/wayland-dfb.cpp | 101 ++-
lib/wayland-dfb/wayland-dfb.h | 100 ++-
lib/wayland-dfb/wayland-dfb.xml | 8 -
rules/libs_deps.make | 3 +
src/core/CoreDFB.flux | 18 +
src/core/CoreDFB_includes.h | 1 +
src/core/CoreDFB_real.cpp | 45 ++
src/core/CoreGraphicsStateClient.cpp | 25 +-
src/core/CoreGraphicsState_real.cpp | 10 +-
src/core/CoreSurface.flux | 143 +++-
src/core/CoreSurfaceAllocation_real.cpp | 47 +-
src/core/CoreSurfaceClient_real.cpp | 20 +-
src/core/CoreSurface_real.cpp | 210 ++++++
src/core/Graphics.cpp | 236 +++++--
src/core/Graphics.h | 181 +++++-
src/core/Renderer.cpp | 364 ++++++-----
src/core/Renderer.h | 85 +--
src/core/coretypes.h | 13 +-
src/core/layer_region.c | 86 +--
src/core/layers_internal.h | 20 +-
src/core/surface.c | 186 +++++-
src/core/surface.h | 37 +-
src/core/surface_buffer.c | 14 +-
src/core/surface_buffer.h | 7 +-
src/core/surface_client.c | 11 +-
src/core/surface_core.c | 6 +-
src/core/surface_pool.c | 47 ++
src/core/surface_pool.h | 5 +
src/core/windows.c | 76 ++-
src/core/windows_internal.h | 4 +
src/display/idirectfbsurface.c | 176 ++++-
src/display/idirectfbsurface.h | 19 +-
src/display/idirectfbsurface_layer.c | 176 -----
src/display/idirectfbsurface_window.c | 174 +----
src/gfx/generic/GenefxEngine.cpp | 11 +-
systems/drmkms/DFBGBM.h | 253 ++++++++
systems/drmkms/DRMEGLImpl.cpp | 851 ++++++++++++++++++++++++
systems/drmkms/DRMEGLImpl.h | 205 ++++++
systems/drmkms/Makefile.am | 42 +-
systems/drmkms/drmkms_layer.c | 46 +-
systems/drmkms/drmkms_screen.c | 384 ++++++-----
systems/drmkms/drmkms_surface_pool.c | 332 +++++++---
systems/drmkms/drmkms_system.c | 44 +-
systems/drmkms/drmkms_system.h | 4 +-
systems/x11/EGLDisplayX11.cpp | 67 +-
systems/x11/EGLDisplayX11.h | 2 +-
systems/x11/Makefile.am | 3 +-
systems/x11/X11EGLImpl.cpp | 582 ++++++++++-------
systems/x11/X11EGLImpl.h | 70 +-
systems/x11/primary.c | 345 +++++++---
systems/x11/x11.c | 1 +
systems/x11/x11.h | 5 +-
systems/x11/x11_surface_pool.c | 19 +-
systems/x11/x11_window_pool.c | 47 +-
systems/x11/x11input.c | 9 +-
systems/x11/xwindow.c | 2 +-
tests/Makefile.am | 18 +-
tests/coretest_task.cpp | 4 +-
tests/coretest_task_fillrect.cpp | 4 +-
wm/default/default.c | 2 +-
wm/sawman/sawman_wm.c | 2 +-
120 files changed, 12090 insertions(+), 5403 deletions(-)
_______________________________________________
directfb-cvs mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-cvs