osrm-backend/third_party/libosmium/test/data-tests/testdata-overview.cpp

102 lines
3.1 KiB
C++
Raw Normal View History

/* The code in this file is released into the Public Domain. */
#include <iostream>
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
#include <gdalcpp.hpp>
Squashed 'third_party/libosmium/' changes from 910f8f1..6522da5 6522da5 Merge pull request #79 from DennisOSRM/master 7c8d8dc add override keyword to close(), overridden function in include/osmium/io/detail/input_format.hpp d24841e Changes copyright dates in all files to a consistent "2013-2015". 3adc7d7 Another try to make it compile on Windows. 20dad8e Use auto instead of hard-coded types, hopefully fixes Windows build. b73ab3f Set build config in appveyor ctest call. 3e33857 Merge pull request #76 from BergWerkGIS/master c78ca6e Merge remote-tracking branch 'upstream/master' cf42013 enable test again 69e4a91 include compatibility.h 6f79b5c CMake: Remove Dart include, it seems to be superfluous. 4d40a18 Explicitly set copy constructors etc. for OutputIterator and test it. 69ee34c Run tests in build directory instead of source directory. 11c44c8 Fix typo. 675cc11 Fix formatting CMake config. 7aa3cb0 Add a benchmark counting amenity=post_box tags. 89fd942 Make it more evident that we handling constant tag lists. c72bbdf Add count() and empty() functions to Filter class. 88b9543 Disable annoying warnings from YouCompleteMe. 6cec403 Benchmarks: Only find files, not directories etc. in data dir. 09c4630 Follow redirects in benchmark download script. a8a552e Use Approx() function from Catch framework for floating point comparisons. 7db5086 Reorder data tests so fast tests run first. 24ce403 Fix #includes. ad9515c Add some comments in different config files to explain what they are. 987aa9c Some README updates. 3c18de7 Add configuration for YouCompleteMe Vim plugin. 433148e Explicit comparison against 0 to avoid warning with MSVC. e64a459 Small updates in benchmarks README. e4aff7f Add benchmark to compare static vs. dynamic index maps. f702634 Add missing include. 95a8c3b Merge branch 'master' of github.com:osmcode/libosmium 560a2ae Merge pull request #73 from osmcode/travis-fix f41e4ca remove incorrect cd f826107 Add some helper functions for working with entity_bits. 8fec1c1 Updated README: Lots of documentation is now on wiki. 6110cc8 Make cmake config work if no components are given. 8136557 Use 'Libosmium' instead of 'Osmium' as project name in doc. 10e631a Improved documenation: Dependencies to link with. 41d0ca4 Merge remote-tracking branch 'upstream/master' 6768026 SLN configuration is always 'Release' 5d985cf av: show env vars. 272ac88 don't use '%CONFIGURATION%' expands to e.g. 'Dev|x86' 59b15eb use cmake 3.1.0 again. old cmake on AppVeyor doesn't know yet about VS2014 SLN 0d0d71a try building with VS, Dev works only with VS at least locally 2fe6d02 name of geos.lib changed fc4662e test latest binary package d4a265f Add more labels to tests. 8722a3d Only check for valgrind if testing is enabled. cf7dc56 README improvements. 13a426e Fix cpack configuration. ae649c8 travis build: fix double install of make package c102040 Move cmake config for documentation into doc directory. 6064d55 Also list advanced cmake variables in travis build. c299bfa constexprt workaround for MSVC. afcf7a1 Cleanup/formatting of cmake config. a536720 Fix travis build by cloning osm-testdata in the right place. 2bdbf7f cmake: Don't clone osm-testdata repository any more. 5bdbb28 Rename test/osm-testdata to test/data-tests. 0ad0020 cmake: build data tests only by default on Dev builds 2cefa50 Add some benchmarks. 3fdb6e1 Remove outdated make_osmium_project.sh script. aca58ac Fix cmake config: overwriting of variables. 152e318 Fix compilation of examples that need wingetopt on Windows. ae17cd0 Remove superfluous warning on Windows for header test builds. f88d4c2 Switch to /W3 on Windows. 8edeba5 Remove duplicate copy constructor. cdb474e Cleanup examples cmake config ca9045a Cmake cleanup. 501eb61 Update to new version of catch unit test framework. 0646d6c Parenthesize expression to make test clearer and avoid warnings. dfdaeae Disable a warning that gdal throws on Windows. eacfe4f Explicitly test int !=0 to convert to bool. b3ba693 Cleanup of cmake config (mostly warning options Linux vs. Win) 3f5cb81 Appveyor: Also show advanced cmake variables. b544bd9 Never return valid but empty buffer from Reader.read() call. a34bb5d Declare var in a more local scope. b83e5f1 Merge pull request #66 from BergWerkGIS/master 04ef1b2 Last try for today, should solve geos test failures a749d6c hey AppVeyor: what's going on? 73131fb av: boost not found?? show directory tree 5e02886 av: should solve most "***Exception: Other" except for geos.dll related problem. should solve projection test fails. a7ae560 FlexReader now takes location handler as parameter. 6f1bd8d Disable non-existing Debian build in Makefile. 3d75178 Change warning level on MSVC. 3f0abc0 Appveyor: List cached variables from cmake. d1e1e9f Travis/Appveyor build in Dev and Release mode. Call ctest on Appveyor. 116bcc9 Fix default node location store. dedfe0e Make classes we submit to queue properly copyable. 8a432c9 Try the same ugly hack on OPLOutputBlock. 9c5b314 Try a hack to see whether it works on MSVC. 9592132 Give XMLOutputBlock a copy constructor. 991f91a Disable warning C4715: "not all control paths return a value" 340a4d7 Fix copy constructor. 7ceae00 Give OPLOutputBlock a copy constructor which basically does a move. e82951a Use rvalue as paremeter for queue submit function. 54a9cec Use explicit cast to double to silence warning. 7c5d04c Simplified use of ogr includes. 43fd388 Use appveyor supplied cmake. ce4311e cmake cleanup. 1108517 Disable warnings from MSVC in OGR headers. 2fe820c Harmonize signature of virtual member function dump_as_list(). 93c31b4 Parenthesize string in pragma message. 54ae1a0 Explicitly int to bool conversion to silence warning on MSVC. 4bde9b7 Formatting: Use spaces instead of tabs. 7224d84 cmake: Don't try to set C++ version with -std= with MSVC. 53fbcfd Remove trailing semikolon (which gcc doesn't like). 3b0c9ed Removed command that doesn't work on older cmakes. de6cc78 Merge pull request #62 from BergWerkGIS/master 9126530 Use less warning options on Windows. 6ec79fb Silence unknown pragma warning on Windows. b611589 Add static_cast to silence warning on windows. 18e54e9 remove call to build2.bat b0d9d28 try again with -DCMAKE_BUILD_TYPE=Release b495018 usage installed cmake, -DCMAKE_BUILD_TYPE=Dev 5bac95d Merge remote-tracking branch 'upstream/master' d41ea31 cmake: Do not use -Werror when using MSVC compiler 04cfe00 Provide convenience include file to include all index maps. 72fbaa7 Rename multimap indexes according to new schema. af49a27 Make registering index map types easier. 0a35701 av: remove debug echo calls 886c15f av: ditch -DCMAKE_BUILD_TYPE=Dev ad0a629 The great renaming of map index classes. 97b4d34 av: try again bf243b2 Move some hpp files into detail directory and fix include guards. 64e4841 av: try again calling cmake directly 1700789 Add way to dynamically choose node location index. da49b7f av: try again with build2.bat 4bf55f5 is appveyor working again? 5e63433 delete ws_32.lib patch. generate makefile instead of VS 1054016 Merge remote-tracking branch 'upstream/master' 8c198fc av: try even newer cmake 7cccb06 av: maybe newer cmake helps d04967a av: no existing env var was still there 80763c6 av: no build.bat, call cmake directly 3b58fc6 av: no cmds over spanning serveral lines? 33c09a0 CALL bat 34639c6 maybe double quotes? 72572de explicitly call VS2014 cmd prompt 6955e87 1st try on AppVeyor git-subtree-dir: third_party/libosmium git-subtree-split: 6522da53748e12379bbfaf70ad29ee7bd98ef02d
2015-02-05 09:13:48 -05:00
#include <osmium/index/map/sparse_mem_array.hpp>
#include <osmium/geom/ogr.hpp>
#include <osmium/handler.hpp>
#include <osmium/handler/node_locations_for_ways.hpp>
#include <osmium/io/xml_input.hpp>
#include <osmium/visitor.hpp>
Squashed 'third_party/libosmium/' changes from 910f8f1..6522da5 6522da5 Merge pull request #79 from DennisOSRM/master 7c8d8dc add override keyword to close(), overridden function in include/osmium/io/detail/input_format.hpp d24841e Changes copyright dates in all files to a consistent "2013-2015". 3adc7d7 Another try to make it compile on Windows. 20dad8e Use auto instead of hard-coded types, hopefully fixes Windows build. b73ab3f Set build config in appveyor ctest call. 3e33857 Merge pull request #76 from BergWerkGIS/master c78ca6e Merge remote-tracking branch 'upstream/master' cf42013 enable test again 69e4a91 include compatibility.h 6f79b5c CMake: Remove Dart include, it seems to be superfluous. 4d40a18 Explicitly set copy constructors etc. for OutputIterator and test it. 69ee34c Run tests in build directory instead of source directory. 11c44c8 Fix typo. 675cc11 Fix formatting CMake config. 7aa3cb0 Add a benchmark counting amenity=post_box tags. 89fd942 Make it more evident that we handling constant tag lists. c72bbdf Add count() and empty() functions to Filter class. 88b9543 Disable annoying warnings from YouCompleteMe. 6cec403 Benchmarks: Only find files, not directories etc. in data dir. 09c4630 Follow redirects in benchmark download script. a8a552e Use Approx() function from Catch framework for floating point comparisons. 7db5086 Reorder data tests so fast tests run first. 24ce403 Fix #includes. ad9515c Add some comments in different config files to explain what they are. 987aa9c Some README updates. 3c18de7 Add configuration for YouCompleteMe Vim plugin. 433148e Explicit comparison against 0 to avoid warning with MSVC. e64a459 Small updates in benchmarks README. e4aff7f Add benchmark to compare static vs. dynamic index maps. f702634 Add missing include. 95a8c3b Merge branch 'master' of github.com:osmcode/libosmium 560a2ae Merge pull request #73 from osmcode/travis-fix f41e4ca remove incorrect cd f826107 Add some helper functions for working with entity_bits. 8fec1c1 Updated README: Lots of documentation is now on wiki. 6110cc8 Make cmake config work if no components are given. 8136557 Use 'Libosmium' instead of 'Osmium' as project name in doc. 10e631a Improved documenation: Dependencies to link with. 41d0ca4 Merge remote-tracking branch 'upstream/master' 6768026 SLN configuration is always 'Release' 5d985cf av: show env vars. 272ac88 don't use '%CONFIGURATION%' expands to e.g. 'Dev|x86' 59b15eb use cmake 3.1.0 again. old cmake on AppVeyor doesn't know yet about VS2014 SLN 0d0d71a try building with VS, Dev works only with VS at least locally 2fe6d02 name of geos.lib changed fc4662e test latest binary package d4a265f Add more labels to tests. 8722a3d Only check for valgrind if testing is enabled. cf7dc56 README improvements. 13a426e Fix cpack configuration. ae649c8 travis build: fix double install of make package c102040 Move cmake config for documentation into doc directory. 6064d55 Also list advanced cmake variables in travis build. c299bfa constexprt workaround for MSVC. afcf7a1 Cleanup/formatting of cmake config. a536720 Fix travis build by cloning osm-testdata in the right place. 2bdbf7f cmake: Don't clone osm-testdata repository any more. 5bdbb28 Rename test/osm-testdata to test/data-tests. 0ad0020 cmake: build data tests only by default on Dev builds 2cefa50 Add some benchmarks. 3fdb6e1 Remove outdated make_osmium_project.sh script. aca58ac Fix cmake config: overwriting of variables. 152e318 Fix compilation of examples that need wingetopt on Windows. ae17cd0 Remove superfluous warning on Windows for header test builds. f88d4c2 Switch to /W3 on Windows. 8edeba5 Remove duplicate copy constructor. cdb474e Cleanup examples cmake config ca9045a Cmake cleanup. 501eb61 Update to new version of catch unit test framework. 0646d6c Parenthesize expression to make test clearer and avoid warnings. dfdaeae Disable a warning that gdal throws on Windows. eacfe4f Explicitly test int !=0 to convert to bool. b3ba693 Cleanup of cmake config (mostly warning options Linux vs. Win) 3f5cb81 Appveyor: Also show advanced cmake variables. b544bd9 Never return valid but empty buffer from Reader.read() call. a34bb5d Declare var in a more local scope. b83e5f1 Merge pull request #66 from BergWerkGIS/master 04ef1b2 Last try for today, should solve geos test failures a749d6c hey AppVeyor: what's going on? 73131fb av: boost not found?? show directory tree 5e02886 av: should solve most "***Exception: Other" except for geos.dll related problem. should solve projection test fails. a7ae560 FlexReader now takes location handler as parameter. 6f1bd8d Disable non-existing Debian build in Makefile. 3d75178 Change warning level on MSVC. 3f0abc0 Appveyor: List cached variables from cmake. d1e1e9f Travis/Appveyor build in Dev and Release mode. Call ctest on Appveyor. 116bcc9 Fix default node location store. dedfe0e Make classes we submit to queue properly copyable. 8a432c9 Try the same ugly hack on OPLOutputBlock. 9c5b314 Try a hack to see whether it works on MSVC. 9592132 Give XMLOutputBlock a copy constructor. 991f91a Disable warning C4715: "not all control paths return a value" 340a4d7 Fix copy constructor. 7ceae00 Give OPLOutputBlock a copy constructor which basically does a move. e82951a Use rvalue as paremeter for queue submit function. 54a9cec Use explicit cast to double to silence warning. 7c5d04c Simplified use of ogr includes. 43fd388 Use appveyor supplied cmake. ce4311e cmake cleanup. 1108517 Disable warnings from MSVC in OGR headers. 2fe820c Harmonize signature of virtual member function dump_as_list(). 93c31b4 Parenthesize string in pragma message. 54ae1a0 Explicitly int to bool conversion to silence warning on MSVC. 4bde9b7 Formatting: Use spaces instead of tabs. 7224d84 cmake: Don't try to set C++ version with -std= with MSVC. 53fbcfd Remove trailing semikolon (which gcc doesn't like). 3b0c9ed Removed command that doesn't work on older cmakes. de6cc78 Merge pull request #62 from BergWerkGIS/master 9126530 Use less warning options on Windows. 6ec79fb Silence unknown pragma warning on Windows. b611589 Add static_cast to silence warning on windows. 18e54e9 remove call to build2.bat b0d9d28 try again with -DCMAKE_BUILD_TYPE=Release b495018 usage installed cmake, -DCMAKE_BUILD_TYPE=Dev 5bac95d Merge remote-tracking branch 'upstream/master' d41ea31 cmake: Do not use -Werror when using MSVC compiler 04cfe00 Provide convenience include file to include all index maps. 72fbaa7 Rename multimap indexes according to new schema. af49a27 Make registering index map types easier. 0a35701 av: remove debug echo calls 886c15f av: ditch -DCMAKE_BUILD_TYPE=Dev ad0a629 The great renaming of map index classes. 97b4d34 av: try again bf243b2 Move some hpp files into detail directory and fix include guards. 64e4841 av: try again calling cmake directly 1700789 Add way to dynamically choose node location index. da49b7f av: try again with build2.bat 4bf55f5 is appveyor working again? 5e63433 delete ws_32.lib patch. generate makefile instead of VS 1054016 Merge remote-tracking branch 'upstream/master' 8c198fc av: try even newer cmake 7cccb06 av: maybe newer cmake helps d04967a av: no existing env var was still there 80763c6 av: no build.bat, call cmake directly 3b58fc6 av: no cmds over spanning serveral lines? 33c09a0 CALL bat 34639c6 maybe double quotes? 72572de explicitly call VS2014 cmd prompt 6955e87 1st try on AppVeyor git-subtree-dir: third_party/libosmium git-subtree-split: 6522da53748e12379bbfaf70ad29ee7bd98ef02d
2015-02-05 09:13:48 -05:00
typedef osmium::index::map::SparseMemArray<osmium::unsigned_object_id_type, osmium::Location> index_type;
typedef osmium::handler::NodeLocationsForWays<index_type> location_handler_type;
class TestOverviewHandler : public osmium::handler::Handler {
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
gdalcpp::Layer m_layer_nodes;
gdalcpp::Layer m_layer_labels;
gdalcpp::Layer m_layer_ways;
osmium::geom::OGRFactory<> m_factory;
public:
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
explicit TestOverviewHandler(gdalcpp::Dataset& dataset) :
m_layer_nodes(dataset, "nodes", wkbPoint),
m_layer_labels(dataset, "labels", wkbPoint),
m_layer_ways(dataset, "ways", wkbLineString) {
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
m_layer_nodes.add_field("id", OFTReal, 10);
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
m_layer_labels.add_field("id", OFTReal, 10);
m_layer_labels.add_field("label", OFTString, 30);
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
m_layer_ways.add_field("id", OFTReal, 10);
m_layer_ways.add_field("test", OFTInteger, 3);
}
void node(const osmium::Node& node) {
const char* label = node.tags().get_value_by_key("label");
if (label) {
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
gdalcpp::Feature feature(m_layer_labels, m_factory.create_point(node));
feature.set_field("id", static_cast<double>(node.id()));
feature.set_field("label", label);
feature.add_to_layer();
} else {
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
gdalcpp::Feature feature(m_layer_nodes, m_factory.create_point(node));
feature.set_field("id", static_cast<double>(node.id()));
feature.add_to_layer();
}
}
void way(const osmium::Way& way) {
try {
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
gdalcpp::Feature feature(m_layer_ways, m_factory.create_linestring(way));
feature.set_field("id", static_cast<double>(way.id()));
const char* test = way.tags().get_value_by_key("test");
if (test) {
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
feature.set_field("test", test);
}
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
feature.add_to_layer();
} catch (osmium::geometry_error&) {
std::cerr << "Ignoring illegal geometry for way " << way.id() << ".\n";
}
}
};
/* ================================================== */
int main(int argc, char* argv[]) {
if (argc != 2) {
std::cerr << "Usage: " << argv[0] << " INFILE\n";
exit(1);
}
std::string output_format("SQLite");
std::string input_filename(argv[1]);
std::string output_filename("testdata-overview.db");
::unlink(output_filename.c_str());
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
CPLSetConfigOption("OGR_SQLITE_SYNCHRONOUS", "FALSE");
gdalcpp::Dataset dataset(output_format, output_filename, gdalcpp::SRS{}, { "SPATIALITE=TRUE" });
osmium::io::Reader reader(input_filename);
Squashed 'third_party/libosmium/' changes from 910f8f1..6522da5 6522da5 Merge pull request #79 from DennisOSRM/master 7c8d8dc add override keyword to close(), overridden function in include/osmium/io/detail/input_format.hpp d24841e Changes copyright dates in all files to a consistent "2013-2015". 3adc7d7 Another try to make it compile on Windows. 20dad8e Use auto instead of hard-coded types, hopefully fixes Windows build. b73ab3f Set build config in appveyor ctest call. 3e33857 Merge pull request #76 from BergWerkGIS/master c78ca6e Merge remote-tracking branch 'upstream/master' cf42013 enable test again 69e4a91 include compatibility.h 6f79b5c CMake: Remove Dart include, it seems to be superfluous. 4d40a18 Explicitly set copy constructors etc. for OutputIterator and test it. 69ee34c Run tests in build directory instead of source directory. 11c44c8 Fix typo. 675cc11 Fix formatting CMake config. 7aa3cb0 Add a benchmark counting amenity=post_box tags. 89fd942 Make it more evident that we handling constant tag lists. c72bbdf Add count() and empty() functions to Filter class. 88b9543 Disable annoying warnings from YouCompleteMe. 6cec403 Benchmarks: Only find files, not directories etc. in data dir. 09c4630 Follow redirects in benchmark download script. a8a552e Use Approx() function from Catch framework for floating point comparisons. 7db5086 Reorder data tests so fast tests run first. 24ce403 Fix #includes. ad9515c Add some comments in different config files to explain what they are. 987aa9c Some README updates. 3c18de7 Add configuration for YouCompleteMe Vim plugin. 433148e Explicit comparison against 0 to avoid warning with MSVC. e64a459 Small updates in benchmarks README. e4aff7f Add benchmark to compare static vs. dynamic index maps. f702634 Add missing include. 95a8c3b Merge branch 'master' of github.com:osmcode/libosmium 560a2ae Merge pull request #73 from osmcode/travis-fix f41e4ca remove incorrect cd f826107 Add some helper functions for working with entity_bits. 8fec1c1 Updated README: Lots of documentation is now on wiki. 6110cc8 Make cmake config work if no components are given. 8136557 Use 'Libosmium' instead of 'Osmium' as project name in doc. 10e631a Improved documenation: Dependencies to link with. 41d0ca4 Merge remote-tracking branch 'upstream/master' 6768026 SLN configuration is always 'Release' 5d985cf av: show env vars. 272ac88 don't use '%CONFIGURATION%' expands to e.g. 'Dev|x86' 59b15eb use cmake 3.1.0 again. old cmake on AppVeyor doesn't know yet about VS2014 SLN 0d0d71a try building with VS, Dev works only with VS at least locally 2fe6d02 name of geos.lib changed fc4662e test latest binary package d4a265f Add more labels to tests. 8722a3d Only check for valgrind if testing is enabled. cf7dc56 README improvements. 13a426e Fix cpack configuration. ae649c8 travis build: fix double install of make package c102040 Move cmake config for documentation into doc directory. 6064d55 Also list advanced cmake variables in travis build. c299bfa constexprt workaround for MSVC. afcf7a1 Cleanup/formatting of cmake config. a536720 Fix travis build by cloning osm-testdata in the right place. 2bdbf7f cmake: Don't clone osm-testdata repository any more. 5bdbb28 Rename test/osm-testdata to test/data-tests. 0ad0020 cmake: build data tests only by default on Dev builds 2cefa50 Add some benchmarks. 3fdb6e1 Remove outdated make_osmium_project.sh script. aca58ac Fix cmake config: overwriting of variables. 152e318 Fix compilation of examples that need wingetopt on Windows. ae17cd0 Remove superfluous warning on Windows for header test builds. f88d4c2 Switch to /W3 on Windows. 8edeba5 Remove duplicate copy constructor. cdb474e Cleanup examples cmake config ca9045a Cmake cleanup. 501eb61 Update to new version of catch unit test framework. 0646d6c Parenthesize expression to make test clearer and avoid warnings. dfdaeae Disable a warning that gdal throws on Windows. eacfe4f Explicitly test int !=0 to convert to bool. b3ba693 Cleanup of cmake config (mostly warning options Linux vs. Win) 3f5cb81 Appveyor: Also show advanced cmake variables. b544bd9 Never return valid but empty buffer from Reader.read() call. a34bb5d Declare var in a more local scope. b83e5f1 Merge pull request #66 from BergWerkGIS/master 04ef1b2 Last try for today, should solve geos test failures a749d6c hey AppVeyor: what's going on? 73131fb av: boost not found?? show directory tree 5e02886 av: should solve most "***Exception: Other" except for geos.dll related problem. should solve projection test fails. a7ae560 FlexReader now takes location handler as parameter. 6f1bd8d Disable non-existing Debian build in Makefile. 3d75178 Change warning level on MSVC. 3f0abc0 Appveyor: List cached variables from cmake. d1e1e9f Travis/Appveyor build in Dev and Release mode. Call ctest on Appveyor. 116bcc9 Fix default node location store. dedfe0e Make classes we submit to queue properly copyable. 8a432c9 Try the same ugly hack on OPLOutputBlock. 9c5b314 Try a hack to see whether it works on MSVC. 9592132 Give XMLOutputBlock a copy constructor. 991f91a Disable warning C4715: "not all control paths return a value" 340a4d7 Fix copy constructor. 7ceae00 Give OPLOutputBlock a copy constructor which basically does a move. e82951a Use rvalue as paremeter for queue submit function. 54a9cec Use explicit cast to double to silence warning. 7c5d04c Simplified use of ogr includes. 43fd388 Use appveyor supplied cmake. ce4311e cmake cleanup. 1108517 Disable warnings from MSVC in OGR headers. 2fe820c Harmonize signature of virtual member function dump_as_list(). 93c31b4 Parenthesize string in pragma message. 54ae1a0 Explicitly int to bool conversion to silence warning on MSVC. 4bde9b7 Formatting: Use spaces instead of tabs. 7224d84 cmake: Don't try to set C++ version with -std= with MSVC. 53fbcfd Remove trailing semikolon (which gcc doesn't like). 3b0c9ed Removed command that doesn't work on older cmakes. de6cc78 Merge pull request #62 from BergWerkGIS/master 9126530 Use less warning options on Windows. 6ec79fb Silence unknown pragma warning on Windows. b611589 Add static_cast to silence warning on windows. 18e54e9 remove call to build2.bat b0d9d28 try again with -DCMAKE_BUILD_TYPE=Release b495018 usage installed cmake, -DCMAKE_BUILD_TYPE=Dev 5bac95d Merge remote-tracking branch 'upstream/master' d41ea31 cmake: Do not use -Werror when using MSVC compiler 04cfe00 Provide convenience include file to include all index maps. 72fbaa7 Rename multimap indexes according to new schema. af49a27 Make registering index map types easier. 0a35701 av: remove debug echo calls 886c15f av: ditch -DCMAKE_BUILD_TYPE=Dev ad0a629 The great renaming of map index classes. 97b4d34 av: try again bf243b2 Move some hpp files into detail directory and fix include guards. 64e4841 av: try again calling cmake directly 1700789 Add way to dynamically choose node location index. da49b7f av: try again with build2.bat 4bf55f5 is appveyor working again? 5e63433 delete ws_32.lib patch. generate makefile instead of VS 1054016 Merge remote-tracking branch 'upstream/master' 8c198fc av: try even newer cmake 7cccb06 av: maybe newer cmake helps d04967a av: no existing env var was still there 80763c6 av: no build.bat, call cmake directly 3b58fc6 av: no cmds over spanning serveral lines? 33c09a0 CALL bat 34639c6 maybe double quotes? 72572de explicitly call VS2014 cmd prompt 6955e87 1st try on AppVeyor git-subtree-dir: third_party/libosmium git-subtree-split: 6522da53748e12379bbfaf70ad29ee7bd98ef02d
2015-02-05 09:13:48 -05:00
index_type index;
location_handler_type location_handler(index);
location_handler.ignore_errors();
Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 0ff2780 Release v2.5.4 3f1583a Remove workaround for MSVC missing constexpr support. 2a6c80b Rewrite expressions to avoid warnings on MSVC. 9b0602a Make two functions non-constexpr that can't be. ca1e501 Make NodeRef constructor, accessors and comparison ops constexpr. fb48312 Disable some problematic clang_tidy checks. d2d2812 Only do clang_tidy checks on files that are configured to be built. 5af55bb Always use braces after while() and if(). aebb6e3 No else after return. 65a3bf6 Better clang-tidy config. 3a965fa Add typedef Buffer::value_type needed when using std::back_inserter. c20ac26 Add lots of explicits to constructors. 1d12e09 Add clang-tidy make target. 052b1ee Add benchmark programs to files checked with cppcheck. 9ccbb49 Use only "final", not "override final". 0b9df1f User 'override' instead of 'virtual' in overridden functions. 1d0c1c6 Remove unnecessary get() call. 705391b Use consistent namespace closing comment. 25c1f38 Only use "final" on overridden methods, not "override". 8da2553 Setting CMAKE_EXPORT_COMPILE_COMMANDS works only after project() command. 5fec437 Use newest protozero library (v1.2.3). a3d759b Overloaded version of add_tag() with std::pair of strings. 1b4bcf9 Add function to add tag to tag list from existing tag. 7087e62 Update gdalcpp.hpp header to v1.1.1. 0008e8c Update change log. 39fe3a5 Add conversion and comparison operators to Timestamp. e6643a7 Update gdalcpp. 650280f Bugfix: Improved segment intersection function. 1b20597 Make operator bool explicit for (Typed)MemoryMapping. b580b25 Merge pull request #136 from tomhughes/ruby a7c6737 The multipolygon test only needs the ruby interpreter 4a0a9e7 Make conversion from Buffer to bool noexcept. 7cdabbe Set thread name in o5m input format. 6a17a8d Break out computation of thread pool size into function and test it. 1950853 Allow initializing a Timestamp from any integral type. 4103198 Fix link in change log. dc2ed89 Release v2.5.3 a2816b7 Fix end_of_time() Timestamp, add constructor taking std::string&. 3f5eb8e Updated changelog. 9b75c14 Cleanup and better docs for DiffObject and related classes. d0beead Better documentation for NodeRef and NodeRefList classes. 0192292 Cleanup/doc/test osmium::util::Options. b3db055 Use header with forward declarations. 8b3fe16 Improved documentation. cd2ce38 Remove unused typedef Buffer::value_type. 87c9b32 Cleanup and test Buffer::add_buffer() function. e519278 Improved documentation for osmium::memory::Buffer. d721d43 Deprecate set_full_callback(). Better doc for deprecated functions. 58b5fd1 Remove DataFile class which was never used anywhere. 30b806e Simplify some tests. 62958df Update change log. a8a2e68 Merge pull request #134 from zerebubuth/buffer-size-checks 987faab Move some code belonging into there into relations::Collector. da31175 When the buffer isn't big enough, even when empty, to reserve the space that's being requested then it shouldn't reserve it anyway. 5d2f949 Swap the growth flag and any "full" callback as well as all the other members when swapping this buffer object. 1845aa9 The assertions prior to dereference are more strict than the conversion to bool. However, conversion to bool is often used as a predicate for whether dereference is okay, so the behaviour is easier to understand if they match. abdfee1 Remove unused m_want_types in relations collector. 95b387f "Officially" mark two constructors as deprecated. 1d0da5f Release v2.5.2 31c3eaf Copy iterator around less often. 83c93d0 Do not check the write_future for exceptions on every item. 1c805ea Add counting of push() calls on queue in debug mode. aa869c0 Release v2.5.1 212578b Fix documentation of Writer constructor. 0445dd8 Add new header file with forward declarations of commonly used classes. 4b6baac Optionally include external library headers. 712a6d1 Update change log. fc78d04 Update style rules. b590fe3 Unify use of 'typename' in templates. Unify spacing of ellipsis operator. 8c450ac Move osmium/io/overwrite.hpp to writer_options.hpp. 08eed02 Move DEPRECATED macro into compatibility.hpp. b72eb8d Release v2.5.0 5aeba6b Better formatting for invalid timestamps on debug output. 6772413 Add valid() function on Timestamp. 7549b05 Update change log. 84119b0 Add option to fsync files after they are written. db1bd92 Make optional parameters on Writer work in any order. 3482e3e Remove boilerplate. Add explicits to constructors. cf389c6 Rename the wrap() function to the better ensure_cleanup(). 678049e Use reference instead of pointer for decompressor. 7189d28 More consistent use and naming of Function templates. 3d66deb Use const& for parameter that's not changed. 88d65fb Fix warning with a cast. 03e8c9f Fix some misc issues found by cppcheck. 4848676 Options to cppcheck to check everything (--force) and ignore assert. 5f89a8c Add lots of assert() calls to Buffer implementation. c990b43 Use a wrapper function in Writer for error handling. 04d9e3e Refactor of writer to work properly in all error cases. 6daf2d3 Throw when reading from Reader after eof or error. Use io_error everywhere. 713a189 Rename OutputFormat::close() to write_end(). 7905add Refactor Reader/Writer code. c050a05 Make thread_handler class movable. 8e661a2 Make DeltaEncode/Decode more generic and fix signedness issues. da712a9 Fixed a few signedness issues. dc04e67 Avoid possible narrowing conversion. abd44af Make a variable static that should be. 7039fa6 Avoid global variable. 9e9fc0f Add a noreturn attribute. a681a2c Do not pass Timestamp class through forwarding. d37b717 Clean up status handling in Reader and Writer. 3b1f0d8 Add at_end_of_data() helper function to get self-documenting code. bf3cc8c Add add_end_of_data_to_queue() helper function. 94bdd09 Fix test. 531db80 Use valid() on future instead of an extra bool. 7f328b3 Make RVO work for pop() function. c1d726d Add some static_cast_with_assert paranoia checks. 5a064f7 Make sure DeltaDecode/DeltaEncode classes work for all integer types. c69a701 Fix some integer types. 2b2cfc9 Remove extra semicolons at end of function definitions. 2b74aa6 Use workaround for GCC unused variable warning for index::map, too. f7fb94d Different way of supression unused-variable warning. c0813e6 Better handling of threads. 963ff8e Move internal buffer from OutputIterator into Writer. 698d027 Update change log. 24270dd Remove unused variables. 64d6363 Remove unnecessarily fully-qualified name. 5ccacc7 Add support for reading o5m and o5c files. b603904 Fix up includes. 6013a27 Remove pessimizing move. a19e4cf Use queue_wrapper in Reader, too. 74a5174 Refactor thread creation for WriteThread. c480b33 Fix test code. e135597 Do not use promise in two threads at once. 6fa16ca Refactor input format code. 53fc576 More robust implementation of writer/writer_thread. 1285316 Put some queue handling into new wrapper class. a1e6e6f Rename osmium/io/detail/util.hpp to queue_util.hpp. f42d6fc New add_to_queue() helper functions. 3db9b49 Simplify read thread handling. a903561 Move any exception in read thread through queue. ee977cb Add more tests for reader code. 99aaa45 Factor out input handling in classes derived from Parser. 7afa03c Wrap access to m_read_types in InputFormat. f6c5971 Wrap sending to output queue in InputFormat. 26f4170 Consolidate header handling in InputFormat. a0aa3ed Remove unnecessary inline declaration. 894e84a Declare a bunch of destructors noexcept and use consistent comments. 6c49b43 Add hack to append_printf_formatted_string() so it works on Windows. 20c3f20 Remove a move that prevented copy elision. 8192a4c Pull low-level string formatting out of debug output and test it. 190aa46 Move low-level string formatting/encoding functions into own header. 3e35441 Add Option::is_not_false() helper, use and test it. 0a90339 Updated some comments. a44066f Make naming of output format options more consistent and document them. a59b60b Run serialization of PBF blobs in worker threads speeding up PBF writer. 18a739f Remove unused m_file attribute from OutputFormat class. 9b5d3b7 Various output option related cleanups. 36772a0 Consistent ordering of methods in *InputFormat classes. c04a51f Factor out common code in output formats. ebc53d4 Do not use "explicit" on constructors with more than one argument. e1dfcfc Make all destructors in io/detail noexcept. cfd7970 Use consistent handling of output options in all outputs. c4e71f0 Better implementation for output_formatted() and tests for it. 899a061 Extract common code from output formats. b226ae4 Factor out common code from *OutputBlock classes. fe4b287 Cleanup WriteThread class. af421df Consistent naming of queue typedefs. e8253c4 Add missing include. 9f71cd3 Refactor management of read thread into its own class. 4c96e16 Refactor Reader/InputFormat. fa02e6c Refactor input format code. d14ea27 Extract common code from PBF/XMLParser into new Parser class. fe7acd3 Better handling of failures when parsing header. 2e3b6cd Remove unnecessary include of <future>. 3bd18b8 Factor out common code in input format. 2915604 Only get promise and future once, even if header() is called multiple times. cfc980c Make output buffer for XML parser smaller. 4c1ffa7 Orderly shutdown in io::Reader. 8c7aa32 Remember whether the input queue was exhausted. 535bb6a Function call in new thread can be void. e0d5448 Factor out some helper function for queue cleanup. 5a4c6b5 Use std::thread directly for input instead of std::async. c1bdf4f Move common code from InputFormat child classed into base class. 89caa6e Report failures in input_format through the queue. 8f4d300 Rename (m_)queue to (m_)output_queue. 8fc1f5b Reorder XMLParser class making check_attributes() private. df381d7 Make sure we always send end-of-file from PBF parser. 1a178b0 Factor out construction of PBFDataBlobDecoder. cb34f76 Factor out read_from_input_queue_with_check() method. 21b51cc Factor out parse_data_blobs() method. dc957a8 Make some variables const. 1c2812c Make methods private that don't need to be public. 81e5625 Refactor out parse_header_blob() function. f9e5760 Fix test: New signature of XMLParser constructor. 43746d3 Add copy constructor to PBFParser. 8524780 Rename variables and other changes for clarity. 3e9627b Removed now superfluous parameters from InputFormat class. 7eac5cf Simplify input format class. 3ea2ace Set max queue size only in one place. 77ab086 Formatting. ceee837 Use std::async instead of "raw" std::thread for pbf input. 6cafb45 Move and rename PromiseKeeper class: Now in thread/util.hpp. 06eff29 Set thread name for xml parser thread. bd485cd Refactoring of threading code for input. fc03bf6 Make sure (de)compression classes clean up properly. 27af4ea Use special function to shut down pool workers instead of an atomic<bool>. 84297b3 Bugfix: auto and std::minmax() don't mix well. 597ecc4 Always use std::swap() in the idiomatic form. 10dd14f Remove threading test that fails when machine is too busy. 2072786 Use reserve() to spead up dumping indexes. 66a344b Declare some index functions noexcept, especially destructors. a0586da Use map::find() instead of awkward try-catch block. d38a7f1 Do not run make tasks in parallel. cd33daa Do not use clever YAML aliases, instead copy dependencies explicitely 4ad6e43 Integrate more compiler and os versions b2c519b Check return code of close() system call and throw. 369057b Update protozero to current 1.2.2. d1db14b Collect debug output options into struct. 54667dd More consistent debug output of way nodes, relation members and changeset comments. 67e1513 Add some paranoia checks to xml parser. 69de191 Refactoring in xml reader: New function check_attributes(). c67f3f3 Add support for changeset discussions (comments). 9c5531c Merge pull request #121 from DerDakon/cmake-find-no-components 44be1a7 Add helper functions to make input iterator ranges and output iterators. 76e2b91 Merge pull request #130 from alex85k/master 5a4fa6b remove assertion messageboxes in tests on Windows bac5a77 Updated change log. 7e7bba4 Updated included protozero library to 1.2.0. 1ae370d Merge pull request #122 from zerebubuth/pbf-decode-non-visible-node-locations 5897468 Merge branch 'master' of github.com:osmcode/libosmium 7f2de1b Bugfix: Delta iterator handling. 65d31e9 Try ; as cmake list separator. 3a9dbc2 Add PBF libraries, now that the test reads PBF too. Thanks @tomhughes for pointing this out. 9a22ea1 Add test case for reading deleted / non-visible nodes in history files. 36098a8 Decode lat/lon even for non-visible nodes. 8279fd1 kick off AppVeyor to test new binary deps package with gdal200 c8244f7 FindOsmium: prevent errors in list(REMOVE_DUPLICATES) when no components are requested a02806a Use https URL to travis. a1b7015 Fix some includes. 468e4d8 Remove pessimizing std::move. 427d2e0 Do iwyu check on header files in alphabetical order. be9a996 Release v2.4.1 95a3bc8 Fixed CRC calculation of tags and changesets. 4e157e3 Release v2.4.0 3da68f0 Fixed setting of binary mode on Windows. 81aa057 Use binary mode for memory mapped file on Windows. 986cb7e Set stdout to binary mode on windows before writing to files. 27d02eb Bugfix: Do not dereference end iterator. e96eeaf Updated change log. 64a55ce FindOsmium: let FPHSA handle all the additionally required things e152057 FindOsmium: pass the proper module name to FPHSA a4acce3 Remove restriction on master branch in appveyor config. 10c8265 FindOsmium: simplify the fallback code for sparsetable::size_type 190ed47 remove the correct include dir from OSMIUM_INCLUDE_DIRS aaa99c1 avoid that FindOsmium finds a random include dir 6406010 Add a magic define fixing a boost problem. 2fa6674 Remove superfluous file paths from cmake config. e081a51 Merge pull request #114 from DerDakon/do-not-cache-version 20e1a24 Use external gdalcpp wrapper for compatibility with GDAL 2. 3b7cc86 Fix initialization order in DeltaEncodeIterator. 0954b0f Fix possibly uninitialized variable. f081942 Take byte swap functions out of CRC class. e085aae Fix byte swap, add test cases for crc. e648b62 Merge pull request #116 from DerDakon/yml-simplify 7912897 properly put bzip2 library in the CMake cache e0ea72b use less variables when defining the test environment cf8ff6c do not cache the version string 38234cd Remove pragmas disabling warnings from gdal includes. 82d8c30 Include headers of external libraries as "system libraries". f721b86 Update protozero to version 1.1.0. a29ef82 Add some magic to enable folding on travis output. 18b2418 Removed toogr examples. They are in their own repository now. 89c8220 AppVeyor: 1st try with VS2015 93a1626 Added recent changes to change log. ce4b45e Bugfix: Program hanging when opening unknown file type. 06ad6ef Rename add_string() to store_in_stringtable() and use right return type. 869058d Add explicit conversion that always works. 0b28f2c Add missing check in TagListBuilder add_tag() overload. 51fa9c0 Check in builder that key/value of a tag is not too long. 9b1da20 Check that string table isn't overflowing. 2c732c6 Add some extra paranoia checks and type conversions to pbf writer. f92096a Fix integer size. a47ddb4 Force conversion to smaller int type, because we know it must fit. f150ff1 Rename variable that was hiding parameter name. ab92064 Use correct size_t as return type. 2f2bf68 Check that roles are no longer than max allowed string length. 4a7df68 Check strings for max length in PBF input. e4b8bb0 Explicit conversion to bool. d18352d Make conversion from double to integer explicit. git-subtree-dir: third_party/libosmium git-subtree-split: 0ff278001f6e0bc79040add736452bef3aa4ff06
2016-01-05 06:00:40 -05:00
TestOverviewHandler handler(dataset);
osmium::apply(reader, location_handler, handler);
reader.close();
}