summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcommit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-02-03 18:08:33 +0000
committercommit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-02-03 18:08:33 +0000
commit24f078203c3c0ba29955bc95791eaaf6a5b2107c (patch)
treebff5797c051cebffc92b56682939ae97c8b2d6b9
parent56c4beb2ff14a22ebfe9a049c8e053ecc0acb817 (diff)
downloadgyp-24f078203c3c0ba29955bc95791eaaf6a5b2107c.tar.gz
Initial QuadTree implementation
In an effort to find a faster bounding box hierarchy than the R-Tree, a QuadTree has been implemented here. For now, the QuadTree construction is generally faster than the R-Tree and the queries are a bit slower, so overall, SKP local tests showed QuadTree performance similar to the R-Tree performance. Tests and bench are included in this cl. At this point, I'd like to be able to commit this in order to more easily use the bots to test multiple configurations and a larger number of SKPs. The R-Tree BBH is still used by default so this change shouldn't affect chromium. BUG=skia: R=junov@chromium.org, junov@google.com, senorblanco@google.com, senorblanco@chromium.org, reed@google.com, sugoi@google.com, fmalita@google.com Author: sugoi@chromium.org Review URL: https://codereview.chromium.org/131343011 git-svn-id: http://skia.googlecode.com/svn/trunk/gyp@13282 2bbb7eff-a529-9590-31e7-b0007b416f81
-rw-r--r--bench.gyp1
-rw-r--r--core.gypi4
-rw-r--r--tests.gyp1
3 files changed, 6 insertions, 0 deletions
diff --git a/bench.gyp b/bench.gyp
index c408d7c..cd0cdc7 100644
--- a/bench.gyp
+++ b/bench.gyp
@@ -71,6 +71,7 @@
'../bench/PicturePlaybackBench.cpp',
'../bench/PictureRecordBench.cpp',
'../bench/PremulAndUnpremulAlphaOpsBench.cpp',
+ '../bench/QuadTreeBench.cpp',
'../bench/RTreeBench.cpp',
'../bench/ReadPixBench.cpp',
'../bench/RectBench.cpp',
diff --git a/core.gypi b/core.gypi
index b199868..e8a3b62 100644
--- a/core.gypi
+++ b/core.gypi
@@ -141,6 +141,10 @@
'<(skia_src_path)/core/SkPtrRecorder.cpp',
'<(skia_src_path)/core/SkQuadClipper.cpp',
'<(skia_src_path)/core/SkQuadClipper.h',
+ '<(skia_src_path)/core/SkQuadTree.cpp',
+ '<(skia_src_path)/core/SkQuadTree.h',
+ '<(skia_src_path)/core/SkQuadTreePicture.cpp',
+ '<(skia_src_path)/core/SkQuadTreePicture.h',
'<(skia_src_path)/core/SkRasterClip.cpp',
'<(skia_src_path)/core/SkRasterizer.cpp',
'<(skia_src_path)/core/SkRect.cpp',
diff --git a/tests.gyp b/tests.gyp
index 15692ae..c0b43af 100644
--- a/tests.gyp
+++ b/tests.gyp
@@ -32,6 +32,7 @@
'../tests/AndroidPaintTest.cpp',
'../tests/AnnotationTest.cpp',
'../tests/AtomicTest.cpp',
+ '../tests/BBoxHierarchyTest.cpp',
'../tests/BitSetTest.cpp',
'../tests/BitmapCopyTest.cpp',
'../tests/BitmapGetColorTest.cpp',