Commit graph

210 commits

Author SHA1 Message Date
Blake Thompson
51172c8fdf Move image_data.hpp to image.hpp and renamed most everything from image_data to image alone. This might lead to the need to clean up some variables that are currently named image through out the code at some time, but I think in the long term is much better as image is a better name for the base class. 2015-01-22 11:39:37 -06:00
Blake Thompson
22a384ef33 Moved image_data_rgba8 to image_rgba8. Ref #2633 2015-01-21 20:31:02 -06:00
Blake Thompson
93f835177b Removed all the code for the previous type of image and image_32. Ref #2633 2015-01-21 17:57:16 -06:00
Blake Thompson
badb0c9a97 This is a complete removal of code that utilizes image_32 in the library. It is a sweeping change that does some of the following:
* Changes all agg_renderers to use a image_data_any variant (only image_data_rgba8 is implemented currently)
* Changes the marker and marker_cache to use image_data_any images
* Changes the symbolizers so that they must be aware of the source data type they are attempting to render and the render type that is expected to be rendered into.
* Moves many utilities into image_utils, that were previously in image_32.

The kicker is that this still isn't working perfectly yet, but I am commiting so I don't have tears in case everything is lost on my computer.

Ref #2633
2015-01-20 18:30:10 -06:00
Dane Springmeyer
fbecd5ff33 always pass image_data to save_to_string/file 2015-01-08 13:54:43 -08:00
Dane Springmeyer
0d42906dc1 Merge branch 'master' of github.com:mapnik/mapnik into image_data_any
Conflicts:
	tests/visual_tests/images/dots-500-100-1.0-agg-reference.png
	tests/visual_tests/images/dots-500-100-2.0-agg-reference.png
	tests/visual_tests/images/marker-svg-opacity-500-100-1.0-agg-reference.png
	tests/visual_tests/images/marker-svg-opacity-500-100-2.0-agg-reference.png
2014-12-18 20:16:16 -08:00
Dane Springmeyer
0c8c55031a add deque to array alloc benchmark 2014-12-17 11:55:22 -08:00
Dane Springmeyer
381eab1f3d add deque to array alloc benchmark 2014-12-16 13:51:12 -05:00
Dane Springmeyer
cdd817d772 benchmarks: refactor to allow early exit if tests do not validate 2014-12-12 11:59:45 -05:00
Dane Springmeyer
067703db48 add tiff benchmark 2014-12-11 15:01:17 -05:00
artemp
38da080f82 make concrete image_data type names more expressive and explicit about color channels/depth:
image_data_32 -> image_data_rgba8
image_data_8  -> image_data_gray8
image_data_16 -> image_data_gray16
image_data_float32  -> image_data_gray32f

NOTE: currently image_data_gray16::pixel_type = std::int16_t (signed 16 bit int) to match GDAL
should we support unsigned types?
2014-12-04 11:02:42 +01:00
Dane Springmeyer
d25f0c316a silence more warnings 2014-10-21 17:44:47 -07:00
Dane Springmeyer
0ec4fbef45 add std::fill to array alloc benchmark 2014-10-21 13:11:32 -07:00
artemp
d62a4b0914 update to dejavu-fonts-ttf-2.34 2014-10-21 16:54:43 +01:00
Dane Springmeyer
02b7537d6d remove unused/supported second arg to parse_expression 2014-10-20 22:20:04 -07:00
Dane Springmeyer
e98ea70d2e add a benchmark that tests rendering with shared map - refs #2516 2014-10-09 20:29:42 -07:00
Dane Springmeyer
5cc44ceee3 accept scale_factor as option in test_rendering bench 2014-10-09 17:33:01 -07:00
Dane Springmeyer
280c280a9c make rendering bench shell easy to run 2014-10-08 14:23:33 -07:00
Dane Springmeyer
ad7e619ba3 remove state from freetype_engine - now fully static 2014-10-01 20:03:03 -07:00
Dane Springmeyer
d96093d3aa rebase with master 2014-10-01 18:45:28 -07:00
Jochen Topf
0aec5003b3 Use std::chrono instead of boost::chrono in benchmarks.
This reduces the external dependencies and fixes a bug where a duration was
reported in microseconds instead of milliseconds on some systems.
2014-10-01 11:38:08 +02:00
Dane Springmeyer
4c07585312 fix #2464 2014-09-30 21:16:29 -07:00
Dane Springmeyer
758f75dcaa fix benchmark compile 2014-09-26 23:00:02 -07:00
Dane Springmeyer
d1adabf7d5 3.x port of localized font caching and then some 2014-09-26 19:54:07 -07:00
Dane Springmeyer
a9c7bfcdf8 simplify text rendering benchmark to only render text + be explicit about clipping - refs #2326 2014-09-26 12:55:31 -07:00
Dane Springmeyer
2dbefde750 add validation to face_ptr_creation benchmark 2014-09-25 13:09:05 -07:00
Dane Springmeyer
bb0df1d6c6 require rendering benchmarks to use font-directory 2014-09-06 19:09:34 -07:00
artemp
1ac0ebdd83 rename coord_transform to transform_path_adapter and move implementation into separate header 2014-08-28 10:59:08 +01:00
artemp
ecfaec1027 rename ctrans.hpp to view_transform.hpp 2014-08-28 10:29:04 +01:00
artemp
de22d5900c rename CoordTransform to view_transform to better reflect its purpose and be consistent 2014-08-28 10:17:15 +01:00
Dane Springmeyer
b415549823 limit benchmarks 2014-08-13 17:21:22 -07:00
Dane Springmeyer
c5be70ff65 refactor spirit grammars 2014-07-24 14:31:59 -07:00
Dane Springmeyer
64e70fb374 iwyu 2014-07-22 22:40:39 -07:00
Dane Springmeyer
cfd971428c benchmarks: always link -lrt/-ldl on linux 2014-07-22 15:36:45 -07:00
artemp
fe215a684e c++11 style : replace (almost) all typedef with type alias's 2014-07-07 18:23:15 +01:00
Dane Springmeyer
6ce0828a6f font registration test 2014-06-19 17:21:57 -07:00
Dane Springmeyer
ccfa25cf26 benchmark: also need -lrt on linux 2014-06-10 12:01:49 -07:00
Dane Springmeyer
62c6b5a456 fixup benchmark build flags 2014-06-10 12:00:36 -07:00
Dane Springmeyer
d0b357cab7 scons: support MAPNIK_NAME option to customize libmapnik name for custom packaging 2014-06-09 13:55:56 -07:00
Dane Springmeyer
4a4ec224fd fix compile of utf encoding benchmark on linux 2014-06-04 14:45:33 -07:00
Dane Springmeyer
0859a74f81 add benchmark of utf 32->8 encoding speed 2014-06-04 12:09:42 -07:00
Dane Springmeyer
e313b5ba62 benchmark: use halo-rasterizer='fast' (doubles perf) 2014-05-16 19:30:35 -07:00
Dane Springmeyer
7bf50e9b5b fix build of test_array_allocation.cpp on older boost 2014-05-05 18:29:14 -07:00
Dane Springmeyer
d7bb97a22e simplify code 2014-05-05 18:16:42 -07:00
Dane Springmeyer
f9ad079d39 benchmark: break out string to int/bool/double conversions 2014-05-05 10:08:25 -07:00
Dane Springmeyer
7158df8b08 benchmark: png encoding with z=1 to ensure we're testing hextree not zlib 2014-05-05 10:07:57 -07:00
Dane Springmeyer
8c1e69fdb8 static grammars
- construct on first use
 - allows for faster map loading and unloading of xml loading tree
 - modified expression and transform grammars to not take args/not crash
 - simplifies interfaces, allows fast parsing from python without passing grammar instance
2014-04-30 00:11:27 -07:00
Dane Springmeyer
ab7fc55535 more realistic expression benchmark string - refs #1167 2014-04-29 18:25:21 -07:00
Dane Springmeyer
69ec89789a array alloc bench: add static_vector + fix valarray usage 2014-04-28 19:58:15 -07:00
Dane Springmeyer
ad10497503 cache result of parse_expression to speed up map loading - refs #1167 2014-04-28 18:02:14 -07:00
Dane Springmeyer
b7b1acaa50 optimize string2bool 2014-04-25 21:46:40 -07:00
Dane Springmeyer
79a82cd8ff add std::string and std::valarray to array allocation benchmark 2014-01-29 13:03:35 -08:00
Dane Springmeyer
fb0dca7b54 array allocation test 2014-01-28 19:47:23 -08:00
Dane Springmeyer
2b120b78ad add gitignore in benchmark folder 2014-01-27 13:23:18 -08:00
Dane Springmeyer
66347f78e6 rework tests: always run locally 2013-11-22 12:01:02 -08:00
Dane Springmeyer
622f95ec28 text rendering benchmark 2013-11-21 22:47:55 -08:00
Dane Springmeyer
a6a4448e3d benchmarks: correct shebang 2013-11-19 13:21:00 -08:00
Dane Springmeyer
3ce92d71fe benchmark: fix formatting 2013-11-19 12:33:30 -08:00
Dane Springmeyer
7cfb1e417a revised benchmarking system 2013-11-19 12:23:37 -08:00
Dane Springmeyer
c480d9d878 break out benchmark suite into individual cpp 2013-11-14 23:11:21 -08:00
Dane Springmeyer
03fdf7e596 Merge branch '2.3.x' of github.com:mapnik/mapnik
Conflicts:
	src/deepcopy.cpp
	src/expression.cpp
	src/rule.cpp
2013-11-13 20:00:13 -08:00
Dane Springmeyer
46f19ff185 benchmarks: more reasonable threaded double to string results 2013-11-13 19:42:25 -08:00
Dane Springmeyer
f998b2bda6 Merge branch '2.3.x' of github.com:mapnik/mapnik
Conflicts:
	deps/agg/build.py
	deps/clipper/build.py
	include/mapnik/feature_style_processor_impl.hpp
	plugins/input/csv/csv_datasource.cpp
2013-11-03 23:10:21 -08:00
Dane Springmeyer
052548d636 fix signed/unsigned usage 2013-11-03 23:07:02 -08:00
Dane Springmeyer
710d558218 scons: simplify linkflags/ldflags setting / attempt to fix #2025 2013-10-22 16:35:46 -04:00
artemp
7f9578c830 + cleaup 2013-10-11 14:19:41 +01:00
artemp
e231117504 == c++11
+ remove remaining boost::thread usage
+ don't link to boost_thread
2013-10-11 14:18:35 +01:00
artemp
582ca02f44 remove unused boost.thread includes 2013-10-11 13:39:39 +01:00
Dane Springmeyer
5b3e89df94 fix compile after merge with 2.3.x 2013-10-02 19:37:07 -07:00
Dane Springmeyer
9c8f7cc90d merge with 2.3.x branch 2013-10-02 18:25:24 -07:00
Dane Springmeyer
f9e630bbd3 Merge remote-tracking branch 'origin/2.3.x' 2013-10-02 18:23:09 -07:00
Dane Springmeyer
fdf9288ba7 add xml needed for f91ae9f51c 2013-10-02 17:16:58 -07:00
Dane Springmeyer
f91ae9f51c benchmark: add new rendering test harness and use to compare clipping impact on speeds at high and low zoom 2013-10-02 16:09:32 -07:00
Dane Springmeyer
0624ec31dc benchmark: add conv_clip_polygon + very basic validation for clipping tests 2013-10-02 15:14:52 -07:00
artemp
62af2e6765 + replace <boost/shared_ptr.hpp> with <memory> 2013-09-20 14:13:23 +01:00
artemp
b315eb2167 + use std::shared_ptr and std::make_shared 2013-09-20 14:01:27 +01:00
Dane Springmeyer
7a6ab9b0ed sync a few files with master 2013-09-18 18:47:44 -07:00
Dane Springmeyer
7070856f9c fix clipping test and drop rule cache tests 2013-09-18 18:47:28 -07:00
artemp
4143d52c16 + more realistic clipping benchmark 2013-09-17 11:59:38 +01:00
artemp
c6a093f55a + fix bench : iterate over clipped path 2013-09-16 15:02:58 +01:00
artemp
4f4e2b001e Merge branch 'master' into c++11
Conflicts:
	SConstruct
	benchmark/run.cpp
	bindings/python/mapnik_datasource.cpp
	bindings/python/mapnik_feature.cpp
	bindings/python/python_optional.hpp
	include/mapnik/css_color_grammar.hpp
	include/mapnik/expression_grammar.hpp
	include/mapnik/feature.hpp
	include/mapnik/feature_style_processor_impl.hpp
	include/mapnik/image_filter_types.hpp
	include/mapnik/image_util.hpp
	include/mapnik/json/geometry_generator_grammar.hpp
	include/mapnik/json/geometry_grammar.hpp
	include/mapnik/processed_text.hpp
	include/mapnik/tiff_io.hpp
	include/mapnik/util/geometry_svg_generator.hpp
	include/mapnik/util/geometry_wkt_generator.hpp
	include/mapnik/utils.hpp
	include/mapnik/webp_io.hpp
	include/mapnik/wkt/wkt_grammar.hpp
	plugins/input/shape/shape_datasource.cpp
	plugins/input/shape/shapefile.hpp
	src/expression_grammar.cpp
	src/expression_string.cpp
	src/image_util.cpp
	src/json/feature_collection_parser.cpp
	src/json/feature_parser.cpp
	src/miniz.c
	src/symbolizer_helpers.cpp
	src/tiff_reader.cpp
	src/webp_reader.cpp
	tests/cpp_tests/geometry_converters_test.cpp
	tests/cpp_tests/image_io_test.cpp
	tests/cpp_tests/map_request_test.cpp
	tests/python_tests/image_test.py
	tests/visual_tests/test.py
2013-08-30 09:46:09 +01:00
Dane Springmeyer
3bd2e6501f fix a batch of unused variable warnings (leaving several with are true bugs/missing features) 2013-07-23 15:51:22 -04:00
Dane Springmeyer
4bc28d547b handle lacking return value handling caught by coverity 2013-07-04 14:31:46 -04:00
Dane Springmeyer
3b2bdba7b0 iwyu 2013-06-02 20:19:33 -07:00
artemp
58927b404c c++11
+ replace BOOST_FOREACH with for( : )
+ remove boost/foreach.hpp
+ fix benchmarks (17,18)
2013-04-24 16:40:35 +01:00
artemp
d8fcf26560 + use std::move in tests 2013-04-19 12:00:58 +01:00
artemp
c73e48fa58 + use std::unique_ptr instead of std::auto_ptr (deprecated!) 2013-04-19 09:50:50 +01:00
artemp
b65c19aa51 + better message 2013-04-03 14:17:18 +01:00
artemp
5703821b00 + add benchmark for loading font faces. 2013-04-03 13:52:54 +01:00
Dane Springmeyer
a7ef5c7f60 avoid copying of non-copyable transcoder class - fixes compile with llvm-gcc 2013-03-19 14:09:01 -07:00
artemp
1521817378 + make benchmark tests copyable and avoid sharing state between threads
+ add polygon_clipper test
2013-03-14 09:35:41 +00:00
Dane Springmeyer
b9cbfe9dce benchmark: avoid copying test struct and add test of clipper 2013-02-27 19:18:28 -05:00
Dane Springmeyer
138e718128 benchmark: link CoreFoundation on os x to enable instruments profiling 2013-02-27 17:48:51 -05:00
Dane Springmeyer
ce5c49d814 keep around boost::move based rule cache for benchmarking purposes 2013-02-21 12:52:01 -08:00
Dane Springmeyer
825a628707 compare heap/ptr_vector rule_cache vs stack-based boost::move approach - refs fe9ff21ba9 and #1723 2013-02-21 12:36:16 -08:00
Dane Springmeyer
987e6b1262 fix unsigned/signed comparison gcc warnings 2013-02-13 16:38:56 -08:00
Dane Springmeyer
8c8df19cc7 benchmark: add tests for expression grammar parsing - refs #1706 2013-01-29 17:04:35 -05:00
Dane Springmeyer
751258749a Merge branch 'master' of github.com:mapnik/mapnik 2013-01-29 03:31:16 -05:00
Dane Springmeyer
409b35db6f benchmark: fix iterator advance 2013-01-29 03:30:22 -05:00
Dane Springmeyer
e504383a15 benchmark: enable more transformation tests since proj4 is no longer the bottleneck for key transformations - refs #1703 2013-01-29 03:06:44 -05:00
Dane Springmeyer
5b8f018bc6 Merge branch 'master' of github.com:mapnik/mapnik into lazy-proj4 2013-01-28 13:49:14 -05:00
Dane Springmeyer
76f202732b remove file only currently present in branch 2013-01-28 11:00:13 -05:00
Dane Springmeyer
f8b1520d1a refactor projection interface: 1. cleanup custom lonlat<->merc code. 2. centralize proj4 strings into constants, 3. tweak projection benchmarking to allocate objects in loop so we can test that specifically - refs #1703 2013-01-28 01:47:32 -05:00
Dane Springmeyer
19526eb7f7 benchmark: add tests for longlat/merc transformations 2013-01-27 17:26:32 -08:00
Dane Springmeyer
430e3d3406 benchmark: number tests, allow dry-run to get test idx #, and allow passing args to only run specific tests 2013-01-27 17:25:58 -08:00
Dane Springmeyer
c315e192b7 avoid sign conversion compiler warnings 2013-01-21 14:12:27 -08:00
Dane Springmeyer
8a677f9c14 tweak benchmark: add snprintf test, only measure join_all time not thread creation, and use a double test value that converts the same across karma/snprintf/ostringstream 2013-01-21 10:31:16 -08:00
Dane Springmeyer
7a5e35d0fa Add double to string benchmark and rework tests to support threaded benching as well as serial 2013-01-18 19:00:57 -08:00
Dane Springmeyer
35134b6b06 remove from git the actual rendered tile 2013-01-08 19:41:49 -08:00
Dane Springmeyer
0121f53f56 refactor and speed up hextree image encoding by using dense_has_map - refs #1629 2013-01-08 19:07:11 -08:00