cairo/boilerplate
Chris Wilson c3f2db4f73 [drm] Add an accelerated image surface.
Use the DRM interface to h/w accelerate composition on image surfaces.
The purpose of the backend is simply to explore what such a hardware
interface might look like and what benefits we might expect.  The
use case that might justify writing such custom backends are embedded
devices running a drm compositor like wayland - which would, for example,
allow one to write applications that seamlessly integrated accelerated,
dynamic, high quality 2D graphics using Cairo with advanced interaction
(e.g. smooth animations in the UI) driven by a clutter framework...

In this first step we introduce the fundamental wrapping of GEM for intel
and radeon chipsets, and, for comparison, gallium. No acceleration, all
we do is use buffer objects (that is use the kernel memory manager) to
allocate images and simply use the fallback mechanism. This provides a
suitable base to start writing chip specific drivers.
2009-07-23 16:18:42 +01:00
..
.gitignore [boilerplate] Add make-...-constructors to .gitignore 2009-07-14 19:11:56 +01:00
cairo-boilerplate-beos.cpp [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-directfb.c [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-drm.c [drm] Add an accelerated image surface. 2009-07-23 16:18:42 +01:00
cairo-boilerplate-getopt.c [test] Preparatory work for running under memfault. 2008-08-13 21:54:59 +01:00
cairo-boilerplate-getopt.h [cairo-boilerplate] Silence compiler warning. 2008-06-13 21:34:43 +01:00
cairo-boilerplate-gl.c Merge commit 'anholt/gl' 2009-07-21 22:28:44 +01:00
cairo-boilerplate-glitz-agl.c [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-glitz-glx.c Remove clip handling from generic surface layer. 2009-07-23 15:32:14 +01:00
cairo-boilerplate-glitz-wgl.c [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-pdf.c Remove clip handling from generic surface layer. 2009-07-23 15:32:14 +01:00
cairo-boilerplate-private.h [boilerplate] Add missing header file. 2009-07-05 09:22:44 +01:00
cairo-boilerplate-ps.c Remove clip handling from generic surface layer. 2009-07-23 15:32:14 +01:00
cairo-boilerplate-qt.cpp Remove clip handling from generic surface layer. 2009-07-23 15:32:14 +01:00
cairo-boilerplate-quartz.c [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-scaled-font.h [scaled-font] Get rid of _cairo_scaled_font_test_set_max_glyphs_cached_per_font 2007-04-21 03:43:04 -04:00
cairo-boilerplate-script.c [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-svg.c Remove clip handling from generic surface layer. 2009-07-23 15:32:14 +01:00
cairo-boilerplate-system.c [perf] Benchmark traces 2009-06-02 15:13:47 +01:00
cairo-boilerplate-system.h [perf] Benchmark traces 2009-06-02 15:13:47 +01:00
cairo-boilerplate-test-surfaces.c Remove clip handling from generic surface layer. 2009-07-23 15:32:14 +01:00
cairo-boilerplate-vg.c [vg] Compile fixes for EGL boilerplate 2009-07-23 15:32:12 +01:00
cairo-boilerplate-win32-printing.c [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-win32.c [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-xcb.c [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-xlib.c [boilerpate] Move target definition to backends. 2009-07-04 21:43:27 +01:00
cairo-boilerplate-xlib.h [boilerplate] Add missing headers. Oops! 2007-04-21 07:23:30 -04:00
cairo-boilerplate.c Remove clip handling from generic surface layer. 2009-07-23 15:32:14 +01:00
cairo-boilerplate.h Remove clip handling from generic surface layer. 2009-07-23 15:32:14 +01:00
check-link.c [boilerplate/check-link.c] Oops. Add it. 2008-09-02 22:03:05 -04:00
make-cairo-boilerplate-constructors.c Fix build under distcheck 2009-07-15 13:26:34 +01:00
Makefile.am Cross-compilation fix for boilerplate/test 2009-07-20 18:56:09 +01:00
Makefile.sources [drm] Add an accelerated image surface. 2009-07-23 16:18:42 +01:00
Makefile.win32 [test-win32] Fix static linking of the test suite. 2009-04-01 11:32:58 -04:00
Makefile.win32.features [drm] Add an accelerated image surface. 2009-07-23 16:18:42 +01:00
README Add boilerplate/README explaining its purpose 2006-08-30 22:33:53 -07:00

This directory provides code that is common to both of cairo's tests
suites:

 * The test suite for correctness in test/
 * The test suite for performance in perf/

We call it boilerplate as it consists primarily of the boilerplate
code necessary for initializing a backend in order to create a surface
for that backend.

The code here just might be useful for someone looking to get started
writing cairo code to use a particular backend, (but there are no
promises that the boilerplate code found here for any particular
backend is exemplary).