efl/src/lib/evas
Carsten Haitzler b0530aba4f evas cutouts - quickly avoid huge per issues with large nos of cutouts
i found evas_common_draw_context_apply_cutouts() was procsessing 300+
cutouts and as it's O(n^2)/2 to try and merge adjacent rects for
cutouts this really performs like complete junk. we apply cutout rects
a LOT. this is not the best solution, but it's quick and much faster
than doing the clipouts which drop framerate to like 1-2fps or so in the
nasty case i say (tyls -m of photos in a dir with a 2160 high
terminal).

this figures out the target area to limit the count of rects
significantly so O(n^2) is far far better when n is now < 10 most of
the time. and for the few operations where it's a high value this now
uses qsort to speed up merges etc. etc.

@optimize
2017-01-02 18:53:56 +09:00
..
cache evas - clean up whitespace and 80 column wrapping and commented out code 2016-12-28 13:31:48 +09:00
cache2 evas: remove float comparison warnings for evas_cache2 2016-12-20 10:25:50 -05:00
canvas evas cutouts - quickly avoid huge per issues with large nos of cutouts 2017-01-02 18:53:56 +09:00
common evas cutouts - quickly avoid huge per issues with large nos of cutouts 2017-01-02 18:53:56 +09:00
common3d all: use void if we really want to make sure we do not accept parameters 2016-12-06 17:16:24 +01:00
cserve2 evas: remove float comparison warnings for evas_cs2_client 2016-12-20 10:25:50 -05:00
file evas: add infrastructure for Evas_Loader to know if what they are working on is still useful. 2016-12-06 16:26:08 -08:00
filters Revert "evas: Add source_region property to proxy objects" 2016-12-20 15:47:54 +09:00
include evas cutouts - quickly avoid huge per issues with large nos of cutouts 2017-01-02 18:53:56 +09:00
Evas.h evas: move canvas3d and vg parts into beta API and keep the rest under EO API 2016-06-14 16:27:10 +02:00
Evas_Common.h evas: add getter for devices by name 2016-12-19 14:58:35 -02:00
Evas_Eo.h Evas: Add Focus event type. 2016-11-24 19:18:47 -02:00
Evas_GL.h doxygen: remove reference warnings. 2016-12-20 16:39:30 -08:00
Evas_Legacy.h Evas: include efl_vg_container.eo.legacy.h to avoid implicit declaration for evas_vg_container_child* @fix 2016-12-07 14:21:12 +09:00
Evas_Loader.h evas: add infrastructure for Evas_Loader to know if what they are working on is still useful. 2016-12-06 16:26:08 -08:00
main.c all: use void if we really want to make sure we do not accept parameters 2016-12-06 17:16:24 +01:00