Commit Graph

22 Commits

Author SHA1 Message Date
Basile Clement
98b5ec74ca demos: Add a dithering demo
This adds a dither.c which provides a demo of the dithering feature.
This is based on the scale.c demo for scaling and provides a selection
of intermediate formats and dithering operators (currently, only
PIXMAN_DITHER_ORDERED_BAYER_8) to use.  Images are first blitted onto a
surface of the intermediate format with the requested dither setup, then
blitted back onto a a8r8g8b8 surface for display.
2019-05-25 07:30:11 -07:00
Bill Spitzak
6f14bae79e test: Added more demos and tests to .gitignore file
Uses a wildcard to handle the majority which end in "-test".

Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
2015-05-05 09:49:25 +03:00
Ben Avison
e0c0153d8e test: Add a new benchmarker targeting affine operations
Affine-bench is written by following the example of lowlevel-blt-bench.

Affine-bench differs from lowlevel-blt-bench in the following:
- does not test different sized operations fitting to specific caches,
  destination is always 1920x1080
- allows defining the affine transformation parameters
- carefully computes operation extents to hit the COVER_CLIP fast paths

Original version by Ben Avison. Changes by Pekka in v3:
- commit message
- style fixes
- more comments
- refactoring (e.g. bench_info_t)
- help output tweak

Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
Reviewed-by: Ben Avison <bavison@riscosopen.org>
2015-04-24 10:25:42 +03:00
Søren Sandmann Pedersen
2c953e572f test: Add radial-perf-test, a microbenchmark for radial gradients
This benchmark renders one of the radial gradients used in the
swfdec-youtube cairo trace 500 times and reports the average time it
took.

V2: Update .gitignore
2013-03-11 22:41:45 -04:00
Søren Sandmann Pedersen
460faaa411 demos: Add linear-gradient demo program
This program displays a linear gradient from blue to yellow. Due to
limited precision in pixman-gradient-walker.c, it currently has some
ugly artefacts that gives it a 'brushed metal' appearance.

V2: Update .gitignore
2013-03-11 22:40:05 -04:00
Matt Turner
c7c28f440d Add new demos and tests to .gitignore 2013-01-22 22:08:30 -08:00
Søren Sandmann Pedersen
8ccda2be30 Don't auto-generate pixman-combine32.[ch] anymore
Since pixman-combine64.[ch] are not used anymore, there is no point
generating these files from pixman-combine.[ch].template.

Also get rid of dependency on perl in configure.ac.
2012-10-04 03:33:50 -04:00
Søren Sandmann Pedersen
4afd20cc71 Remove 64 bit pipeline
The 64 bit pipeline is not used anymore, so it can now be removed.

Don't generate pixman-combine64.[ch] anymore. Don't generate the
pixman-srgb.c anymore. Delete all the 64 bit fetchers in
pixman-access.c, all the 64 bit iterator functions in
pixman-bits-image.c and all the functions that expand from 8 to 16
bits.
2012-10-01 12:56:09 -04:00
Antti S. Lankila
a161a6ba23 Add sRGB blending demo program
Simple sRGB color blender test can be used to determine if the sRGB processing
works as expected. It blends alpha ramps of purple and green together such that
at midpoint of image, 50 % blend of both is realized. At that point, sRGB-aware
processing yields a result close to #bbb rather than #888, which is the linear
light blending result.

The demo also contains the sample computation for sRGB premultiplied alpha.
2012-07-30 15:40:16 -04:00
Antti S. Lankila
7460457f80 Add support for sRGB surfaces
sRGB format is defined as a new format type, PIXMAN_TYPE_ARGB_SRGB. One form of
this type is provided, PIXMAN_a8r8g8b8_sRGB. Use of an sRGB format triggers
wide processing, and the pixel fetch/store functions handle the relevant
conversion between color spaces. Pixman itself is thought to compose in the
linearized sRGB color space.

sRGB conversion is tabularized. For sRGB to linear, we are using only 256
values because the current source format uses 8 bits per component precision.
For linear to sRGB, it turns out that only 4096 brightness levels are required
to generate all of the 256 sRGB color values, and therefore only 12 bits per
component are considered during store. As a special case, a no-op
sRGB->linear->sRGB conversion is constructed to be lossless by adjusting the
sRGB->linear conversion table where necessary.
2012-07-30 15:37:26 -04:00
Matt Turner
45946c5fa1 .gitignore: add test/glyph-test 2012-06-13 19:32:21 -04:00
Matt Turner
3c57ec471e .gitignore: add demos/checkerboard and demos/quad2quad 2012-05-09 22:50:50 -04:00
Matt Turner
57a245a6e0 Update .gitignore with more demos and tests
Signed-off-by: Matt Turner <mattst88@gmail.com>
2012-02-22 16:32:46 -05:00
Maarten Bosmans
765bde32e0 Add *.exe to .gitignore 2010-08-30 13:41:38 -04:00
Benjamin Otte
4d8fb1bc01 region: Add a new test region-translate
This test exercises a bug in pixman_region32_translate(). The function
clips the region to int16 coordinates SHRT_MIN/SHRT_MAX.
2010-08-24 12:17:18 +02:00
Guillem Jover
8ce004af36 pixman: Update .gitignore
Generalize to catch all .pc files. Add more tests.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
2009-09-24 21:13:54 +02:00
Benjamin Otte
f5d4e01c39 update .gitignore 2008-10-08 21:21:58 +02:00
Carl Worth
bd2a53fc4e Add pixman_version function and related macros
The complete new API here makes available compile-tim version checks:

	PIXMAN_VERSION
	PIXMAN_VERSION_STRING
	PIXMAN_VERSION_ENCODE

as well as run-time version checks:

	pixman_version()
	pixman_version_string()
2008-03-25 12:38:01 -07:00
Carl Worth
e5ceddf038 Ignore test/fetch-test 2008-01-22 16:29:05 -08:00
Carl Worth
f1f52ae4b1 Track name change from pixman.pc to pixman-1.pc in .gitignore 2007-10-30 11:48:50 -07:00
Vladimir Vukicevic
1b098ede19 [win32] Makefile and compilation fixes for win32 2007-09-06 11:51:55 -07:00
Daniel Stone
808e2de3a6 Add .gitignore file 2007-05-24 16:24:39 +03:00