cairo/boilerplate
Chris Wilson eee66899cd Introduce cairo_surface_observer_t for performance analysis
Another logging passthrough surface that records the style of operations
performed trying to categorise what is slow/fast/important.

In combination with perf/cairo-analyse-trace it is very useful for
understanding what a trace does. The next steps for this tool would be
to identify the slow operations that the trace does. Baby steps.

This should be generally useful in similar situations outside of perf/
and should be extensible to become an online performance probe.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-08-14 20:54:53 +01:00
..
.gitignore [boilerplate] Add make-...-constructors to .gitignore 2009-07-14 19:11:56 +01:00
cairo-boilerplate-beos.cpp whitespace: Fixup formal arguments and tabs in boilerplate/ and perf/. 2010-06-24 15:02:53 +03:00
cairo-boilerplate-directfb.c boilerplate: Use correct flag type in DFBWindowDescription 2011-06-20 11:43:38 +02:00
cairo-boilerplate-drm.c boilerplate: Introduce create_similar hook 2011-06-02 09:11:32 +01:00
cairo-boilerplate-egl.c boilerplate: Introduce create_similar hook 2011-06-02 09:11:32 +01:00
cairo-boilerplate-getopt.c whitespace: Fixup formal arguments and tabs in boilerplate/ and perf/. 2010-06-24 15:02:53 +03:00
cairo-boilerplate-getopt.h [cairo-boilerplate] Silence compiler warning. 2008-06-13 21:34:43 +01:00
cairo-boilerplate-glx.c perf 2011-06-02 08:57:13 +01:00
cairo-boilerplate-pdf.c test: Fix compilation on win32 2011-06-14 16:46:32 +02:00
cairo-boilerplate-private.h test: Fix compilation on win32 2011-06-14 16:46:32 +02:00
cairo-boilerplate-ps.c test: Fix compilation on win32 2011-06-14 16:46:32 +02:00
cairo-boilerplate-qt.cpp whitespace: Fixup formal arguments and tabs in boilerplate/ and perf/. 2010-06-24 15:02:53 +03:00
cairo-boilerplate-quartz.c boilerplate: Introduce create_similar hook 2011-06-02 09:11:32 +01:00
cairo-boilerplate-scaled-font.h whitespace: Fixup formal arguments and tabs in boilerplate/ and perf/. 2010-06-24 15:02:53 +03:00
cairo-boilerplate-script.c boilerplate: Introduce create_similar hook 2011-06-02 09:11:32 +01:00
cairo-boilerplate-skia.c boilerplate: Introduce create_similar hook 2011-06-02 09:11:32 +01:00
cairo-boilerplate-svg.c test: Fix compilation on win32 2011-06-14 16:46:32 +02:00
cairo-boilerplate-system.c whitespace: Fixup formal arguments and tabs in boilerplate/ and perf/. 2010-06-24 15:02:53 +03:00
cairo-boilerplate-system.h whitespace: Fixup formal arguments and tabs in boilerplate/ and perf/. 2010-06-24 15:02:53 +03:00
cairo-boilerplate-test-surfaces.c boilerplate: Introduce create_similar hook 2011-06-02 09:11:32 +01:00
cairo-boilerplate-vg.c boilerplate: Introduce create_similar hook 2011-06-02 09:11:32 +01:00
cairo-boilerplate-wgl.c boilerplate: Introduce create_similar hook 2011-06-02 09:11:32 +01:00
cairo-boilerplate-win32-printing.c test: Fix compilation on win32 2011-06-14 16:46:32 +02:00
cairo-boilerplate-win32.c boilerplate: Introduce create_similar hook 2011-06-02 09:11:32 +01:00
cairo-boilerplate-xcb.c XCB: Store the flags per-connection only 2011-07-21 16:51:26 +02:00
cairo-boilerplate-xlib.c Xlib: Fix boilerplate to work with xlib-xcb 2011-07-03 15:16:23 +02:00
cairo-boilerplate-xlib.h [boilerplate] Add missing headers. Oops! 2007-04-21 07:23:30 -04:00
cairo-boilerplate.c boilerplate: improve fidelity of surface extraction 2011-08-13 11:08:58 +01:00
cairo-boilerplate.h boilerplate: Silence MSVC warnings 2011-06-20 10:24:20 +02:00
check-link.c [boilerplate/check-link.c] Oops. Add it. 2008-09-02 22:03:05 -04:00
make-cairo-boilerplate-constructors.sh [boilerplate/test] Use numerical equality not string equality 2009-09-02 10:09:50 +01:00
Makefile.am build: Add explicit dependcy to cxx lib 2010-07-16 19:49:53 +02:00
Makefile.sources build: Split boilerplate lib generation into two so's 2010-07-11 18:53:42 +02:00
Makefile.win32 build: Clean up environment variables and flags for the win32 build 2011-06-20 10:24:21 +02:00
Makefile.win32.features Introduce cairo_surface_observer_t for performance analysis 2011-08-14 20:54:53 +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).