morphio 2.1.4__tar.gz → 2.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {MorphIO-2.1.4 → MorphIO-2.2.0}/MorphIO.egg-info/PKG-INFO +1 -1
- {MorphIO-2.1.4 → MorphIO-2.2.0}/MorphIO.egg-info/SOURCES.txt +1 -1
- {MorphIO-2.1.4 → MorphIO-2.2.0}/PKG-INFO +1 -1
- {MorphIO-2.1.4 → MorphIO-2.2.0}/binds/python/bind_immutable.cpp +0 -21
- {MorphIO-2.1.4 → MorphIO-2.2.0}/binds/python/bind_misc.cpp +0 -12
- {MorphIO-2.1.4 → MorphIO-2.2.0}/binds/python/bind_mutable.cpp +0 -23
- {MorphIO-2.1.4 → MorphIO-2.2.0}/binds/python/bind_vasculature.cpp +0 -13
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/morphology.h +0 -16
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mut/morphology.h +0 -15
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mut/section.h +0 -10
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/section.h +0 -12
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/vasc/vasculature.h +0 -11
- {MorphIO-2.1.4 → MorphIO-2.2.0}/setup.py +2 -6
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/CMakeLists.txt +0 -1
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/morphology.cpp +0 -10
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mut/morphology.cpp +5 -11
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mut/section.cpp +0 -10
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/section.cpp +0 -10
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/vasc/vasculature.cpp +0 -12
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/version.cpp +1 -1
- MorphIO-2.2.0/tests/data/nested_single_children.asc +19 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_1_swc.py +6 -17
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_2_neurolucida.py +21 -33
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_4_immut.py +0 -14
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_5_mut.py +1 -72
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_6_writers.py +8 -9
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_7_modifiers.py +1 -1
- MorphIO-2.1.4/src/tools.cpp +0 -144
- {MorphIO-2.1.4 → MorphIO-2.2.0}/.clang-format +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/.gitignore +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/.gitmodules +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/.travis.yml +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/.git +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/.gitattributes +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/.gitignore +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/.travis.yml +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/CHANGES.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/LICENSE +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/README.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/appveyor.yml +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/cmake/PackageConfig.cmake.in +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/01-basic.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/02-span.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/cmake-extern/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/cmake-extern/src/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/cmake-extern/src/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/cmake-pkg/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/cmake-pkg/Readme.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/cmake-pkg/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/example/cmake-pkg/use-gsl-pkg.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/gsl-lite.natvis +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/include/gsl/gsl +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/include/gsl/gsl-lite-vc6.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/include/gsl/gsl-lite.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/include/gsl/gsl-lite.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/include/gsl.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/include/gsl.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/project/gsl-lite.cbp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/project/gsl-lite.workspace +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/script/install-gsl-pkg.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/script/update-version.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/assert.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/at.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/byte.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/gsl-lite.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/gsl-lite.t.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/issue.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/lest_cpp03.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/not_null.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/owner.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/span.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/string_span.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/t-all.bat +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/t.bat +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/tc.bat +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/tg-all.bat +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/tg.bat +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/GSL_LITE/test/util.t.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/.clang-format +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/.git +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/.gitignore +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/.gitmodules +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/.travis.yml +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CHANGELOG.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMake/HighFiveConfig.cmake.in +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMake/PackageConfig.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMake/config/CompilerFlagsHelpers.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMake/config/DefineInstallationPaths.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMake/config/ReleaseDebugAutoFlags.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMake/config/TestHelpers.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMake/packages/FindPandoc.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMake/portability/BlueGenePortability.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMake/portability/CheckCXX11Portability.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/LICENSE +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/README.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/VERSION +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/ci/travis/install.sh +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/default.nix +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/deps/git-cmake-format/.git +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/deps/git-cmake-format/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/deps/git-cmake-format/FindClangFormat.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/deps/git-cmake-format/git-cmake-format.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/deps/git-cmake-format/git-pre-commit-hook +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/deps/git-cmake-format/license.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/deps/git-cmake-format/readme.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/doc/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/doc/build.sh.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/doc/github-pandoc.css +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5Attribute.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5DataSet.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5DataSpace.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5DataType.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5Exception.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5File.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5FileDriver.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5Group.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5Object.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5PropertyList.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5Selection.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/H5Utility.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Annotate_traits.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Annotate_traits_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Attribute_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Converter_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5DataSet_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5DataType_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Dataspace_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Exception_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5FileDriver_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5File_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Group_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Iterables_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Node_traits.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Node_traits_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Object_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5PropertyList_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Selection_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Slice_traits.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Slice_traits_misc.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/include/highfive/bits/H5Utils.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/boost_multi_array_2D.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/boost_ublas_double.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/create_attribute_string_integer.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/create_dataset_double.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/parallel_hdf5_write_dataset.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/read_write_dataset_string.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/read_write_single_scalar.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/read_write_vector_dataset.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/select_by_id_dataset_cpp11.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/src/examples/select_partial_dataset_cpp11.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/tests/unit/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/tests/unit/tests_high_five_base.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/HighFive/tests/unit/tests_high_five_parallel.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/.git +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/.gitignore +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/README.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/calc/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/calc/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/date_test/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/date_test/datetest.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/date_test/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/gen_cpp_from_idl/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/gen_cpp_from_idl/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/json/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/json/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/ocaml/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/ocaml/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/so_524548/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/so_524548/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/unicode/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/unicode/UnicodeData.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/unicode/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/wc/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/examples/wc/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/extras/cpp.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/extras/cpp.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/extras/rev_regex.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/extras/rev_regex.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/extras/sql.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/extras/sql.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/extras/unicode.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/extras/vrml.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/extras/vrml.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/bool.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/char_traits.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/compile_assert.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/containers/bitvector.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/containers/ptr_list.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/containers/ptr_map.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/containers/ptr_stack.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/containers/ptr_vector.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/debug.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/dot.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/enums.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/generate_cpp.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/generator.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/internals.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/is_same.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/iterator.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/licence_1_0.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/lookup.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/match_results.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/memory_file.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/narrow.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/old/fast_filebuf.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/old/string_token.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/parser.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tokeniser/re_token.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tokeniser/re_tokeniser.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tokeniser/re_tokeniser_helper.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tokeniser/re_tokeniser_state.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tree/end_node.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tree/iteration_node.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tree/leaf_node.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tree/node.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tree/selection_node.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/parser/tree/sequence_node.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/partition/charset.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/partition/equivset.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/rules.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/runtime_error.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/serialise.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/size_t.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/sm_to_csm.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/sm_traits.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/state_machine.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/stream_shared_iterator.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/string_token.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/lexertl/utf_iterators.hpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/test/Makefile +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/test/fail_tests.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/test/fail_tests.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/test/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/test/stdafx.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/test/stdafx.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/test/test.sln +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/test/test.vcxproj +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/lexertl/test/test.vcxproj.filters +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/.appveyor.yml +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/.git +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/.gitignore +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/.gitmodules +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/.readthedocs.yml +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/.travis.yml +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/CONTRIBUTING.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/ISSUE_TEMPLATE.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/LICENSE +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/MANIFEST.in +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/README.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/Doxyfile +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/Makefile +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/_static/theme_overrides.css +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/cast/chrono.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/cast/custom.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/cast/eigen.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/cast/functional.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/cast/index.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/cast/overview.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/cast/stl.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/cast/strings.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/classes.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/embedding.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/exceptions.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/functions.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/misc.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/pycpp/index.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/pycpp/numpy.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/pycpp/object.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/pycpp/utilities.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/advanced/smart_ptrs.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/basics.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/benchmark.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/benchmark.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/changelog.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/classes.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/compiling.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/conf.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/faq.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/index.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/intro.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/limitations.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/pybind11-logo.png +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/pybind11_vs_boost_python1.png +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/pybind11_vs_boost_python1.svg +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/pybind11_vs_boost_python2.png +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/pybind11_vs_boost_python2.svg +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/reference.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/release.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/requirements.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/docs/upgrade.rst +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/attr.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/buffer_info.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/cast.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/chrono.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/common.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/complex.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/detail/class.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/detail/common.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/detail/descr.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/detail/init.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/detail/internals.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/detail/typeid.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/eigen.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/embed.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/eval.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/functional.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/iostream.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/numpy.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/operators.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/options.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/pybind11.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/pytypes.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/stl.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/include/pybind11/stl_bind.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/pybind11/__init__.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/pybind11/__main__.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/pybind11/_version.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/setup.cfg +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/setup.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/conftest.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/constructor_stats.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/local_bindings.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/object.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/pybind11_cross_module_tests.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/pybind11_tests.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/pybind11_tests.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/pytest.ini +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_buffers.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_buffers.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_builtin_casters.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_builtin_casters.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_call_policies.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_call_policies.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_callbacks.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_callbacks.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_chrono.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_chrono.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_class.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_class.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/embed.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/installed_embed/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/installed_function/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/installed_target/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/main.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/subdirectory_embed/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/subdirectory_function/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/subdirectory_target/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_cmake_build/test.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_constants_and_functions.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_constants_and_functions.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_copy_move.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_copy_move.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_docstring_options.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_docstring_options.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_eigen.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_eigen.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_embed/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_embed/catch.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_embed/external_module.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_embed/test_interpreter.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_embed/test_interpreter.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_enum.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_enum.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_eval.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_eval.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_eval_call.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_exceptions.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_exceptions.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_factory_constructors.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_factory_constructors.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_gil_scoped.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_gil_scoped.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_iostream.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_iostream.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_kwargs_and_defaults.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_kwargs_and_defaults.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_local_bindings.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_local_bindings.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_methods_and_attributes.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_methods_and_attributes.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_modules.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_modules.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_multiple_inheritance.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_multiple_inheritance.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_numpy_array.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_numpy_array.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_numpy_dtypes.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_numpy_dtypes.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_numpy_vectorize.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_numpy_vectorize.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_opaque_types.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_opaque_types.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_operator_overloading.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_operator_overloading.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_pickling.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_pickling.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_pytypes.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_pytypes.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_sequences_and_iterators.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_sequences_and_iterators.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_smart_ptr.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_smart_ptr.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_stl.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_stl.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_stl_binders.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_stl_binders.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_tagbased_polymorphic.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_tagbased_polymorphic.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_virtual_functions.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tests/test_virtual_functions.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/FindCatch.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/FindEigen3.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/FindPythonLibsNew.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/check-style.sh +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/clang/.git +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/clang/.gitignore +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/clang/LICENSE.TXT +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/clang/README.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/clang/__init__.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/clang/cindex.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/clang/enumerations.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/libsize.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/mkdoc.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/pybind11Config.cmake.in +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/3rdparty/pybind11/tools/pybind11Tools.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/CHANGLOG.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/CMake/MorphIOConfig.cmake +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/MANIFEST.in +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/MorphIO.egg-info/dependency_links.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/MorphIO.egg-info/not-zip-safe +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/MorphIO.egg-info/requires.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/MorphIO.egg-info/top_level.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/README.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/binds/python/CMakeLists.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/binds/python/bind_enums.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/binds/python/bindings_utils.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/binds/python/morphio.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/doc/BBPLOGO350.jpg +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/doc/specification.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/doc/specification_neurolucida.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/examples/getting_started.ipynb +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/examples/getting_started_mutable.ipynb +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/enums.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/errorMessages.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/exceptions.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/iterators.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mito_iterators.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mito_section.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mitochondria.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mut/iterators.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mut/mito_iterators.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mut/mito_section.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mut/mitochondria.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mut/modifiers.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mut/soma.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/mut/writers.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/properties.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/section_base.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/section_base.tpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/shared_utils.tpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/soma.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/tools.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/types.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/vasc/properties.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/vasc/section.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/include/morphio/vector_types.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/packaging/python_wheel/Dockerfile +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/packaging/python_wheel/README.md +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/packaging/python_wheel/build_docker_image.sh +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/packaging/python_wheel/build_wheel.sh +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/packaging/python_wheel/build_wheel_in_manylinux1_docker.sh +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/packaging/python_wheel/setup.cfg +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/packaging/python_wheel/upload_wheel.sh +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/scripts/check-clang-format-all +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/setup.cfg +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/detail/lockHDF5.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/detail/morphologyHDF5.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/detail/utilsHDF5.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/errorMessages.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/iterators.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mito_iterators.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mito_section.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mitochondria.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mut/iterators.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mut/mito_iterators.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mut/mito_section.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mut/mitochondria.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mut/modifiers.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mut/soma.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/mut/writers.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/plugin/lex.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/plugin/morphologyASC.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/plugin/morphologyASC.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/plugin/morphologyHDF5.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/plugin/morphologyHDF5.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/plugin/morphologySWC.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/plugin/morphologySWC.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/plugin/vasculatureHDF5.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/plugin/vasculatureHDF5.h +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/properties.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/soma.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/vasc/properties.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/vasc/section.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/vector_utils.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/src/version.cpp.in +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/test.cpp +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/circle_contour.asc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/complexe.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/disconnected_neurite.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/h5/cyclic_vasculature.h5 +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/h5/empty_vasculature.h5 +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/h5/v1/Neuron.h5 +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/h5/v1/mitochondria.h5 +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/h5/v1/simple.h5 +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/h5/v1/soma_no_neurites.h5 +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/h5/v2/Neuron.h5 +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/h5/vasculature1.h5 +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/h5/vasculature2.h5 +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/iterators.asc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/multiple_point_section.asc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/multiple_soma.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/neurite_wrong_root_point.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/nrn_ordering.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/reversed_NRN_neurite_order.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/simple.asc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/simple.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/simple2.asc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/soma_cylinders.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/soma_multiple_frustums.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/soma_single_frustum.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/soma_three_points_cylinder.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/spine.asc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/data/three_point_soma.swc +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/requirement_tests.txt +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_0_API.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_3_h5.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_8_all_morphologies.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/test_9_surfaces.py +0 -0
- {MorphIO-2.1.4 → MorphIO-2.2.0}/tests/utils.py +0 -0
|
@@ -479,7 +479,6 @@ src/morphology.cpp
|
|
|
479
479
|
src/properties.cpp
|
|
480
480
|
src/section.cpp
|
|
481
481
|
src/soma.cpp
|
|
482
|
-
src/tools.cpp
|
|
483
482
|
src/vector_utils.cpp
|
|
484
483
|
src/version.cpp
|
|
485
484
|
src/version.cpp.in
|
|
@@ -525,6 +524,7 @@ tests/data/disconnected_neurite.swc
|
|
|
525
524
|
tests/data/iterators.asc
|
|
526
525
|
tests/data/multiple_point_section.asc
|
|
527
526
|
tests/data/multiple_soma.swc
|
|
527
|
+
tests/data/nested_single_children.asc
|
|
528
528
|
tests/data/neurite_wrong_root_point.swc
|
|
529
529
|
tests/data/nrn_ordering.swc
|
|
530
530
|
tests/data/reversed_NRN_neurite_order.swc
|
|
@@ -23,21 +23,6 @@ static void bind_immutable_module(py::module &m) {
|
|
|
23
23
|
.def(py::init<const morphio::URI&, unsigned int>(),
|
|
24
24
|
"filename"_a, "options"_a=morphio::enums::Option::NO_MODIFIER)
|
|
25
25
|
.def(py::init<morphio::mut::Morphology&>())
|
|
26
|
-
.def("__eq__", [](const morphio::Morphology& a, const morphio::Morphology& b) {
|
|
27
|
-
return a.operator==(b);
|
|
28
|
-
}, py::is_operator(),
|
|
29
|
-
"Are considered equal, 2 morphologies with the same:\n"
|
|
30
|
-
"- point vector\n"
|
|
31
|
-
"- diameter vector\n"
|
|
32
|
-
"- perimeter vector\n"
|
|
33
|
-
"- cell family\n"
|
|
34
|
-
"- section types\n"
|
|
35
|
-
"- topology (children/parent relationship)\n\n"
|
|
36
|
-
"Note: the soma types are NOT required to be equal")
|
|
37
|
-
.def("__ne__", [](const morphio::Morphology& a, const morphio::Morphology& b) {
|
|
38
|
-
return a.operator!=(b);
|
|
39
|
-
}, py::is_operator())
|
|
40
|
-
.def(py::self != py::self)
|
|
41
26
|
|
|
42
27
|
.def("as_mutable", [](const morphio::Morphology* morph) { return morphio::mut::Morphology(*morph); })
|
|
43
28
|
|
|
@@ -146,12 +131,6 @@ static void bind_immutable_module(py::module &m) {
|
|
|
146
131
|
"Note: the soma surface computation depends on the soma type");
|
|
147
132
|
|
|
148
133
|
py::class_<morphio::Section>(m, "Section")
|
|
149
|
-
.def("__eq__", [](const morphio::Section& a, const morphio::Section& b) {
|
|
150
|
-
return a.operator==(b);
|
|
151
|
-
}, py::is_operator())
|
|
152
|
-
.def("__ne__", [](const morphio::Section& a, const morphio::Section& b) {
|
|
153
|
-
return a.operator!=(b);
|
|
154
|
-
}, py::is_operator())
|
|
155
134
|
.def("__str__", [](const morphio::Section& section) {
|
|
156
135
|
std::stringstream ss;
|
|
157
136
|
ss << section;
|
|
@@ -217,16 +217,4 @@ static void bind_misc(py::module &m) {
|
|
|
217
217
|
"neuronal_section_ids"_a, "distances_to_section_start"_a, "diameters"_a);
|
|
218
218
|
|
|
219
219
|
m.doc() = "pybind11 example plugin"; // optional module docstring
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
m.def("diff", static_cast<bool (*)(const morphio::Morphology& left, const morphio::Morphology& right, morphio::enums::LogLevel logLevel)>(&morphio::diff),
|
|
223
|
-
"Perform a diff on 2 morphologies, returns True if items differ", "left"_a, "right"_a, "log_level"_a=morphio::enums::LogLevel::INFO);
|
|
224
|
-
m.def("diff", static_cast<bool (*)(const morphio::Section& left, const morphio::Section& right, morphio::enums::LogLevel logLevel)>(&morphio::diff),
|
|
225
|
-
"Perform a diff on 2 sections, returns True if items differ", "left"_a, "right"_a, "log_level"_a=morphio::enums::LogLevel::INFO);
|
|
226
|
-
|
|
227
|
-
m.def("diff", static_cast<bool (*)(const morphio::mut::Morphology& left, const morphio::mut::Morphology& right, morphio::enums::LogLevel logLevel)>(&morphio::mut::diff),
|
|
228
|
-
"Perform a diff on 2 morphologies, returns True if items differ", "left"_a, "right"_a, "log_level"_a=morphio::enums::LogLevel::INFO);
|
|
229
|
-
m.def("diff", static_cast<bool (*)(const morphio::mut::Section& left, const morphio::mut::Section& right, morphio::enums::LogLevel logLevel)>(&morphio::mut::diff),
|
|
230
|
-
"Perform a diff on 2 sections, returns True if items differ", "left"_a, "right"_a, "log_level"_a=morphio::enums::LogLevel::INFO);
|
|
231
|
-
|
|
232
220
|
}
|
|
@@ -20,23 +20,6 @@ static void bind_mutable_module(py::module &m) {
|
|
|
20
20
|
.def(py::init<const morphio::mut::Morphology&, unsigned int>(),
|
|
21
21
|
"morphology"_a, "options"_a=morphio::enums::Option::NO_MODIFIER)
|
|
22
22
|
|
|
23
|
-
.def("__eq__", [](const morphio::mut::Morphology& a, const morphio::mut::Morphology& b) {
|
|
24
|
-
return a.operator==(b);
|
|
25
|
-
}, py::is_operator(),
|
|
26
|
-
"Are considered equal, 2 morphologies with the same:\n"
|
|
27
|
-
"- root sections\n"
|
|
28
|
-
"- section topology\n"
|
|
29
|
-
"- cell family\n"
|
|
30
|
-
"For each section:"
|
|
31
|
-
"- same points\n"
|
|
32
|
-
"- same diameters\n"
|
|
33
|
-
"- same perimeters\n"
|
|
34
|
-
"- same type\n"
|
|
35
|
-
"Note: the soma types are NOT required to be equal")
|
|
36
|
-
.def("__ne__", [](const morphio::mut::Morphology& a, const morphio::mut::Morphology& b) {
|
|
37
|
-
return a.operator!=(b);
|
|
38
|
-
}, py::is_operator())
|
|
39
|
-
|
|
40
23
|
// Cell sub-part accessors
|
|
41
24
|
.def_property_readonly("sections", &morphio::mut::Morphology::sections,
|
|
42
25
|
"Returns a list containing IDs of all sections. "
|
|
@@ -226,12 +209,6 @@ static void bind_mutable_module(py::module &m) {
|
|
|
226
209
|
"immutable_section"_a, "recursive"_a=false);
|
|
227
210
|
|
|
228
211
|
py::class_<morphio::mut::Section, std::shared_ptr<morphio::mut::Section>>(m, "Section")
|
|
229
|
-
.def("__eq__", [](const morphio::mut::Section& a, const morphio::mut::Section& b) {
|
|
230
|
-
return a.operator==(b);
|
|
231
|
-
}, py::is_operator())
|
|
232
|
-
.def("__ne__", [](const morphio::mut::Section& a, const morphio::mut::Section& b) {
|
|
233
|
-
return a.operator!=(b);
|
|
234
|
-
}, py::is_operator())
|
|
235
212
|
.def("__str__", [](const morphio::mut::Section& section) {
|
|
236
213
|
std::stringstream ss;
|
|
237
214
|
ss << section;
|
|
@@ -20,19 +20,6 @@ static void bind_vasculature(py::module &m) {
|
|
|
20
20
|
.def(py::init<const morphio::URI&>(),
|
|
21
21
|
"filename"_a)
|
|
22
22
|
// .def(py::init<morphio::mut::Morphology&>())
|
|
23
|
-
.def("__eq__", [](const morphio::vasculature::Vasculature& a, const morphio::vasculature::Vasculature& b) {
|
|
24
|
-
return a.operator==(b);
|
|
25
|
-
}, py::is_operator(),
|
|
26
|
-
"Are considered equal, 2 morphologies with the same:\n"
|
|
27
|
-
"- point vector\n"
|
|
28
|
-
"- diameter vector\n"
|
|
29
|
-
"- section types\n"
|
|
30
|
-
"- topology\n")
|
|
31
|
-
.def("__ne__", [](const morphio::vasculature::Vasculature& a, const morphio::vasculature::Vasculature& b) {
|
|
32
|
-
return a.operator!=(b);
|
|
33
|
-
}, py::is_operator())
|
|
34
|
-
.def(py::self != py::self)
|
|
35
|
-
|
|
36
23
|
// .def("as_mutable", [](const morphio::vasculature::VasculatureMorphology* morph) { return morphio::mut::Morphology(*morph); })
|
|
37
24
|
|
|
38
25
|
.def_property_readonly("sections", &morphio::vasculature::Vasculature::sections,
|
|
@@ -26,22 +26,6 @@ public:
|
|
|
26
26
|
Morphology(Morphology&&);
|
|
27
27
|
Morphology& operator=(Morphology&&);
|
|
28
28
|
|
|
29
|
-
/**
|
|
30
|
-
Equality operator:
|
|
31
|
-
Are considered equal, 2 morphologies with the same:
|
|
32
|
-
- point vector
|
|
33
|
-
- diameter vector
|
|
34
|
-
- perimeter vector
|
|
35
|
-
- cell family
|
|
36
|
-
- section types
|
|
37
|
-
- topology (children/parent relationship)
|
|
38
|
-
|
|
39
|
-
Note: the soma types are NOT required to be equal
|
|
40
|
-
**/
|
|
41
|
-
bool operator==(const Morphology& other) const;
|
|
42
|
-
bool operator!=(const Morphology& other) const;
|
|
43
|
-
|
|
44
|
-
|
|
45
29
|
/** @name Read API */
|
|
46
30
|
//@{
|
|
47
31
|
/** Open the given source to a morphology file and parse it.
|
|
@@ -56,21 +56,6 @@ public:
|
|
|
56
56
|
|
|
57
57
|
virtual ~Morphology();
|
|
58
58
|
|
|
59
|
-
/**
|
|
60
|
-
Are considered equal, 2 morphologies with the same:\n
|
|
61
|
-
- root sections
|
|
62
|
-
- section topology
|
|
63
|
-
- cell family
|
|
64
|
-
For each section:
|
|
65
|
-
- same points
|
|
66
|
-
- same diameters
|
|
67
|
-
- same perimeters
|
|
68
|
-
- same type
|
|
69
|
-
Note: the soma types are NOT required to be equal
|
|
70
|
-
**/
|
|
71
|
-
bool operator==(const Morphology& other) const;
|
|
72
|
-
bool operator!=(const Morphology& other) const;
|
|
73
|
-
|
|
74
59
|
/**
|
|
75
60
|
Returns all section ids at the tree root
|
|
76
61
|
**/
|
|
@@ -96,16 +96,6 @@ public:
|
|
|
96
96
|
const Property::PointLevel&,
|
|
97
97
|
SectionType sectionType = SectionType::SECTION_UNDEFINED);
|
|
98
98
|
|
|
99
|
-
/**
|
|
100
|
-
Two sections are equal if they have same:
|
|
101
|
-
- points
|
|
102
|
-
- diameters
|
|
103
|
-
- perimeters
|
|
104
|
-
- type
|
|
105
|
-
**/
|
|
106
|
-
bool operator==(const Section& other) const;
|
|
107
|
-
bool operator!=(const Section& other) const;
|
|
108
|
-
|
|
109
99
|
private:
|
|
110
100
|
friend class Morphology;
|
|
111
101
|
|
|
@@ -33,18 +33,6 @@ class Section : public SectionBase<Section>
|
|
|
33
33
|
using PointAttribute = Property::Point;
|
|
34
34
|
|
|
35
35
|
public:
|
|
36
|
-
/**
|
|
37
|
-
Equality operator:
|
|
38
|
-
Are considered equal, 2 sections with the same:
|
|
39
|
-
- point vector
|
|
40
|
-
- diameter vector
|
|
41
|
-
- perimeter vector
|
|
42
|
-
- section types
|
|
43
|
-
- topology (children/parent relationship)
|
|
44
|
-
**/
|
|
45
|
-
bool operator==(const Section& other) const;
|
|
46
|
-
bool operator!=(const Section& other) const;
|
|
47
|
-
|
|
48
36
|
/**
|
|
49
37
|
Depth first search iterator
|
|
50
38
|
**/
|
|
@@ -15,17 +15,6 @@ public:
|
|
|
15
15
|
Vasculature(Vasculature&&);
|
|
16
16
|
Vasculature& operator=(Vasculature&&);
|
|
17
17
|
|
|
18
|
-
/**
|
|
19
|
-
Equality operators :
|
|
20
|
-
Two vasculature morphologies are considered equal if they have the same:
|
|
21
|
-
- point vector
|
|
22
|
-
- diameter vector
|
|
23
|
-
- section types
|
|
24
|
-
- topology (successor / predecessor relationship)
|
|
25
|
-
**/
|
|
26
|
-
bool operator==(const Vasculature& other) const;
|
|
27
|
-
bool operator!=(const Vasculature& other) const;
|
|
28
|
-
|
|
29
18
|
/** @name Read API */
|
|
30
19
|
/** Open the given source to a vasculature file and parse it.
|
|
31
20
|
*/
|
|
@@ -1,15 +1,13 @@
|
|
|
1
|
+
'''morphio setup.py'''
|
|
1
2
|
import os
|
|
2
3
|
import platform
|
|
3
4
|
import re
|
|
4
5
|
import subprocess
|
|
5
6
|
import sys
|
|
6
|
-
import sysconfig
|
|
7
7
|
from distutils.version import LooseVersion
|
|
8
|
-
from shutil import copyfile, copymode
|
|
9
8
|
|
|
10
|
-
from setuptools import Extension,
|
|
9
|
+
from setuptools import Extension, setup
|
|
11
10
|
from setuptools.command.build_ext import build_ext
|
|
12
|
-
from setuptools.command.test import test as TestCommand
|
|
13
11
|
|
|
14
12
|
|
|
15
13
|
class CMakeExtension(Extension):
|
|
@@ -62,8 +60,6 @@ class CMakeBuild(build_ext):
|
|
|
62
60
|
if not os.path.exists(self.build_temp):
|
|
63
61
|
os.makedirs(self.build_temp)
|
|
64
62
|
try:
|
|
65
|
-
proc = subprocess.Popen(
|
|
66
|
-
"echo $CXX", shell=True, stdout=subprocess.PIPE)
|
|
67
63
|
output = subprocess.check_call([cmake, ext.sourcedir] + cmake_args,
|
|
68
64
|
cwd=self.build_temp)
|
|
69
65
|
output = subprocess.check_call([cmake, '--build', '.'] + build_args,
|
|
@@ -79,16 +79,6 @@ Morphology::~Morphology()
|
|
|
79
79
|
{
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
bool Morphology::operator==(const Morphology& other) const
|
|
83
|
-
{
|
|
84
|
-
return !diff(*this, other, LogLevel::ERROR);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
bool Morphology::operator!=(const Morphology& other) const
|
|
88
|
-
{
|
|
89
|
-
return diff(*this, other, LogLevel::ERROR);
|
|
90
|
-
}
|
|
91
|
-
|
|
92
82
|
const Soma Morphology::soma() const
|
|
93
83
|
{
|
|
94
84
|
return Soma(_properties);
|
|
@@ -267,8 +267,12 @@ void Morphology::sanitize(const morphio::plugin::DebugInfo& debugInfo)
|
|
|
267
267
|
{
|
|
268
268
|
morphio::plugin::ErrorMessages err(debugInfo._filename);
|
|
269
269
|
|
|
270
|
-
|
|
270
|
+
auto it = depth_begin();
|
|
271
|
+
while (it != depth_end()) {
|
|
271
272
|
std::shared_ptr<Section> section_ = *it;
|
|
273
|
+
|
|
274
|
+
// Incrementing iterator here before we potentially delete the section
|
|
275
|
+
++it;
|
|
272
276
|
unsigned int sectionId = section_->id();
|
|
273
277
|
|
|
274
278
|
if (section_->isRoot())
|
|
@@ -413,15 +417,5 @@ void Morphology::write(const std::string& filename)
|
|
|
413
417
|
LBTHROW(UnknownFileType(_err.ERROR_WRONG_EXTENSION(filename)));
|
|
414
418
|
}
|
|
415
419
|
|
|
416
|
-
bool Morphology::operator==(const Morphology& other) const
|
|
417
|
-
{
|
|
418
|
-
return !diff(*this, other, LogLevel::ERROR);
|
|
419
|
-
}
|
|
420
|
-
|
|
421
|
-
bool Morphology::operator!=(const Morphology& other) const
|
|
422
|
-
{
|
|
423
|
-
return diff(*this, other, LogLevel::ERROR);
|
|
424
|
-
}
|
|
425
|
-
|
|
426
420
|
} // end namespace mut
|
|
427
421
|
} // end namespace morphio
|
|
@@ -203,16 +203,6 @@ std::shared_ptr<Section> Section::appendSection(
|
|
|
203
203
|
return ptr;
|
|
204
204
|
}
|
|
205
205
|
|
|
206
|
-
bool Section::operator==(const Section& other) const
|
|
207
|
-
{
|
|
208
|
-
return !diff(*this, other, LogLevel::ERROR);
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
bool Section::operator!=(const Section& other) const
|
|
212
|
-
{
|
|
213
|
-
return diff(*this, other, LogLevel::ERROR);
|
|
214
|
-
}
|
|
215
|
-
|
|
216
206
|
} // end namespace mut
|
|
217
207
|
} // end namespace morphio
|
|
218
208
|
|
|
@@ -5,16 +5,6 @@
|
|
|
5
5
|
|
|
6
6
|
namespace morphio {
|
|
7
7
|
|
|
8
|
-
bool Section::operator==(const Section& other) const
|
|
9
|
-
{
|
|
10
|
-
return !diff(*this, other, LogLevel::ERROR);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
bool Section::operator!=(const Section& other) const
|
|
14
|
-
{
|
|
15
|
-
return diff(*this, other, LogLevel::ERROR);
|
|
16
|
-
}
|
|
17
|
-
|
|
18
8
|
SectionType Section::type() const
|
|
19
9
|
{
|
|
20
10
|
auto val = _properties->get<Property::SectionType>()[_id];
|
|
@@ -46,18 +46,6 @@ Vasculature::~Vasculature()
|
|
|
46
46
|
{
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
bool Vasculature::operator==(const Vasculature& other) const
|
|
50
|
-
{
|
|
51
|
-
if (this->_properties == other._properties)
|
|
52
|
-
return true;
|
|
53
|
-
return (this->_properties && other._properties && *(this->_properties) == *(other._properties));
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
bool Vasculature::operator!=(const morphio::vasculature::Vasculature& other) const
|
|
57
|
-
{
|
|
58
|
-
return !this->operator==(other);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
49
|
const Section Vasculature::section(const uint32_t& id) const
|
|
62
50
|
{
|
|
63
51
|
return Section(id, _properties);
|
|
@@ -289,30 +289,19 @@ def test_soma_type():
|
|
|
289
289
|
|
|
290
290
|
def test_read_weird_ids():
|
|
291
291
|
'''The ordering of IDs is not required'''
|
|
292
|
-
with tmp_swc_file('''1 1 0 0 0 3.0 -1
|
|
293
|
-
2 3 0 0 2 0.5 1
|
|
294
|
-
3 3 0 0 3 0.5 2
|
|
295
|
-
4 3 0 0 4 0.5 3
|
|
296
|
-
5 3 0 0 5 0.5 4''') as tmp_file:
|
|
297
|
-
|
|
298
|
-
normal = Morphology(tmp_file.name)
|
|
299
|
-
|
|
300
292
|
with tmp_swc_file('''10000 3 0 0 5 0.5 100 # neurite 4th point
|
|
301
293
|
3 3 0 0 3 0.5 47 # neurite 2nd point
|
|
302
294
|
10 1 0 0 0 3.0 -1 # soma
|
|
303
295
|
47 3 0 0 2 0.5 10 # neurite 1st point
|
|
304
296
|
100 3 0 0 4 0.5 3 # neurite 3rd point
|
|
305
297
|
''') as tmp_file:
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
assert_equal(normal, weird)
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
def test_equality():
|
|
312
|
-
filename = os.path.join(_path, 'simple.swc')
|
|
313
|
-
nt.ok_(not (Morphology(filename) is Morphology(filename)))
|
|
314
|
-
nt.ok_(Morphology(filename) == Morphology(filename))
|
|
298
|
+
neuron = Morphology(tmp_file.name)
|
|
315
299
|
|
|
300
|
+
assert_array_equal(neuron.soma.points, [[0, 0, 0]])
|
|
301
|
+
assert_array_equal(neuron.root_sections[0].points, [[0., 0., 2.],
|
|
302
|
+
[0., 0., 3.],
|
|
303
|
+
[0., 0., 4.],
|
|
304
|
+
[0., 0., 5.]])
|
|
316
305
|
|
|
317
306
|
def test_multiple_soma():
|
|
318
307
|
with assert_raises(SomaError) as obj:
|
|
@@ -255,6 +255,18 @@ def test_empty_sibling():
|
|
|
255
255
|
assert_array_equal(annotation.points, [[3, -10, 0], [0, -10, 0], [-3, -10, 0]])
|
|
256
256
|
assert_array_equal(annotation.diameters, [2, 2, 2])
|
|
257
257
|
|
|
258
|
+
def test_nested_single_child():
|
|
259
|
+
with captured_output() as (_, err):
|
|
260
|
+
with ostream_redirect(stdout=True, stderr=True):
|
|
261
|
+
n = Morphology(os.path.join(_path, 'nested_single_children.asc'))
|
|
262
|
+
assert_array_equal(n.root_sections[0].points,
|
|
263
|
+
[[0., 0., 0.],
|
|
264
|
+
[0., 0., 1.],
|
|
265
|
+
[0., 0., 2.],
|
|
266
|
+
[0., 0., 3.],
|
|
267
|
+
[0., 0., 4.]])
|
|
268
|
+
|
|
269
|
+
|
|
258
270
|
|
|
259
271
|
|
|
260
272
|
def test_section_single_point():
|
|
@@ -365,17 +377,10 @@ def test_single_point_section_duplicate_parent():
|
|
|
365
377
|
)
|
|
366
378
|
)''') as tmp_file:
|
|
367
379
|
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
with tmp_asc_file('''
|
|
371
|
-
((Dendrite)
|
|
372
|
-
(3 -4 0 2)
|
|
373
|
-
(3 -10 0 2)
|
|
374
|
-
)''') as tmp_file:
|
|
375
|
-
|
|
376
|
-
good = Morphology(tmp_file.name)
|
|
380
|
+
neuron = Morphology(tmp_file.name)
|
|
377
381
|
|
|
378
|
-
|
|
382
|
+
assert_array_equal(neuron.root_sections[0].points, [[ 3., -4., 0.],
|
|
383
|
+
[ 3., -10., 0.]])
|
|
379
384
|
|
|
380
385
|
|
|
381
386
|
def test_single_point_section_duplicate_parent_complex():
|
|
@@ -402,26 +407,13 @@ def test_single_point_section_duplicate_parent_complex():
|
|
|
402
407
|
)
|
|
403
408
|
)
|
|
404
409
|
''') as bad_tmp_file:
|
|
405
|
-
|
|
410
|
+
neuron = Morphology(bad_tmp_file.name)
|
|
406
411
|
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
(
|
|
410
|
-
|
|
411
|
-
(
|
|
412
|
-
(2 0 0 1)
|
|
413
|
-
(
|
|
414
|
-
(4 0 0 1)
|
|
415
|
-
|
|
|
416
|
-
(5 0 0 1)
|
|
417
|
-
| ; Bifurcation of the bifurcation
|
|
418
|
-
(6 0 0 1)
|
|
419
|
-
)
|
|
420
|
-
)
|
|
421
|
-
''') as good_tmp_file:
|
|
422
|
-
good = Morphology(good_tmp_file.name)
|
|
423
|
-
|
|
424
|
-
ok_(good == bad)
|
|
412
|
+
children = neuron.root_sections[0].children
|
|
413
|
+
assert_equal(len(children), 3)
|
|
414
|
+
assert_array_equal(children[0].points, [[2, 0, 0], [4, 0, 0]])
|
|
415
|
+
assert_array_equal(children[1].points, [[2, 0, 0], [5, 0, 0]])
|
|
416
|
+
assert_array_equal(children[2].points, [[2, 0, 0], [6, 0, 0]])
|
|
425
417
|
|
|
426
418
|
|
|
427
419
|
def test_spine():
|
|
@@ -437,10 +429,6 @@ def test_spine():
|
|
|
437
429
|
[13.75, -5.96, 150.00]], dtype=np.float32))
|
|
438
430
|
|
|
439
431
|
|
|
440
|
-
def test_equality_with_simple():
|
|
441
|
-
ok_(Morphology(os.path.join(_path, 'simple.asc')) ==
|
|
442
|
-
Morphology(os.path.join(_path, 'simple.swc')))
|
|
443
|
-
|
|
444
432
|
|
|
445
433
|
def test_markers():
|
|
446
434
|
'''Test that markers do not prevent file from being read correctly'''
|
|
@@ -19,11 +19,6 @@ CELLS = OrderedDict({
|
|
|
19
19
|
})
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
def test_equality():
|
|
23
|
-
for cell1, cell2 in combinations(['asc', 'swc', 'h5'], 2):
|
|
24
|
-
ok_(CELLS[cell1] == CELLS[cell2], '{} != {}'.format(cell1, cell2))
|
|
25
|
-
|
|
26
|
-
|
|
27
22
|
def test_is_root():
|
|
28
23
|
for _, cell in CELLS.items():
|
|
29
24
|
ok_(all(section.is_root for section in cell.root_sections))
|
|
@@ -97,15 +92,6 @@ def test_empty_vasculature():
|
|
|
97
92
|
assert_raises(RawDataError, vasculature.Vasculature, os.path.join(_path, "h5/empty_vasculature.h5"))
|
|
98
93
|
|
|
99
94
|
|
|
100
|
-
def test_equality_vasculature():
|
|
101
|
-
morphology1 = vasculature.Vasculature(os.path.join(_path, "h5/vasculature1.h5"))
|
|
102
|
-
morphology1_bis = vasculature.Vasculature(os.path.join(_path, "h5/vasculature1.h5"))
|
|
103
|
-
morphology2 = vasculature.Vasculature(os.path.join(_path, "h5/vasculature2.h5"))
|
|
104
|
-
|
|
105
|
-
assert_equal(morphology1, morphology1_bis)
|
|
106
|
-
assert_not_equal(morphology1, morphology2)
|
|
107
|
-
|
|
108
|
-
|
|
109
95
|
def test_components_vasculature():
|
|
110
96
|
morphology = vasculature.Vasculature(os.path.join(_path, "h5/vasculature1.h5"))
|
|
111
97
|
assert_array_almost_equal(morphology.section(0).points,
|
|
@@ -5,7 +5,7 @@ from nose.tools import assert_equal, assert_raises, ok_, assert_not_equal
|
|
|
5
5
|
|
|
6
6
|
import morphio
|
|
7
7
|
from morphio.mut import Morphology, Soma
|
|
8
|
-
from morphio import ostream_redirect, MitochondriaPointLevel, PointLevel, SectionType, MorphioError, SectionBuilderError, Morphology as ImmutableMorphology, upstream, depth_first, breadth_first
|
|
8
|
+
from morphio import ostream_redirect, MitochondriaPointLevel, PointLevel, SectionType, MorphioError, SectionBuilderError, Morphology as ImmutableMorphology, upstream, depth_first, breadth_first
|
|
9
9
|
from contextlib import contextmanager
|
|
10
10
|
import sys
|
|
11
11
|
from io import StringIO
|
|
@@ -310,77 +310,6 @@ def test_mitochondria():
|
|
|
310
310
|
assert_array_equal(np.array(first_child.relative_path_lengths, dtype=np.float32),
|
|
311
311
|
np.array([0.6, 0.7, 0.8, 0.9], dtype=np.float32))
|
|
312
312
|
|
|
313
|
-
def test_equality():
|
|
314
|
-
neuron_ref = Morphology(os.path.join(_path, 'simple2.asc'))
|
|
315
|
-
a = Morphology(os.path.join(_path, 'simple2.asc'))
|
|
316
|
-
assert_equal(neuron_ref, a)
|
|
317
|
-
ok_(not (neuron_ref != a))
|
|
318
|
-
ok_(not diff(neuron_ref, a))
|
|
319
|
-
|
|
320
|
-
def mundane_section(neuron):
|
|
321
|
-
'''Not a root section, not a leaf section'''
|
|
322
|
-
return neuron.root_sections[0].children[0]
|
|
323
|
-
|
|
324
|
-
def assert_expect_diff(neuron1, neuron2, expected_msg):
|
|
325
|
-
'''Expect diff to find a difference and return EXPECTED_MSG in stdout'''
|
|
326
|
-
with captured_output() as (out, _):
|
|
327
|
-
with ostream_redirect(stdout=True, stderr=True):
|
|
328
|
-
ok_(diff(neuron1, neuron2))
|
|
329
|
-
assert_equal(out.getvalue().strip(), expected_msg)
|
|
330
|
-
|
|
331
|
-
with captured_output() as (out, _):
|
|
332
|
-
with ostream_redirect(stdout=True, stderr=True):
|
|
333
|
-
ok_(diff(neuron1.as_immutable(), neuron2.as_immutable()))
|
|
334
|
-
assert_equal(out.getvalue().strip(), expected_msg)
|
|
335
|
-
|
|
336
|
-
mundane_section(a).type = SectionType.apical_dendrite
|
|
337
|
-
assert_not_equal(neuron_ref, a)
|
|
338
|
-
ok_(not (neuron_ref == a))
|
|
339
|
-
assert_expect_diff(neuron_ref, a,
|
|
340
|
-
'Reason: section type differ\n'
|
|
341
|
-
'Summary: children of Section(id=0, points=[(0 0 0),..., (0 5 0)]) differ. '
|
|
342
|
-
'See the above "Reason" to know in what they differ.')
|
|
343
|
-
|
|
344
|
-
a = Morphology(os.path.join(_path, 'simple2.asc'))
|
|
345
|
-
mundane_section(a).points = [[0,0,0], [0,0,0], [0,0,1]]
|
|
346
|
-
assert_not_equal(neuron_ref, a)
|
|
347
|
-
ok_(not (neuron_ref == a))
|
|
348
|
-
assert_expect_diff(neuron_ref, a,
|
|
349
|
-
'Reason: points differ\n'
|
|
350
|
-
'Summary: children of Section(id=0, points=[(0 0 0),..., (0 5 0)]) differ. '
|
|
351
|
-
'See the above "Reason" to know in what they differ.')
|
|
352
|
-
|
|
353
|
-
a = Morphology(os.path.join(_path, 'simple2.asc'))
|
|
354
|
-
mundane_section(a).diameters = [0,0,0]
|
|
355
|
-
assert_not_equal(neuron_ref, a)
|
|
356
|
-
ok_(not (neuron_ref == a))
|
|
357
|
-
assert_expect_diff(neuron_ref, a,
|
|
358
|
-
'Reason: diameters differ\n'
|
|
359
|
-
'Summary: children of Section(id=0, points=[(0 0 0),..., (0 5 0)]) differ. '
|
|
360
|
-
'See the above "Reason" to know in what they differ.')
|
|
361
|
-
|
|
362
|
-
a = Morphology(os.path.join(_path, 'simple2.asc'))
|
|
363
|
-
for section in a.iter():
|
|
364
|
-
section.perimeters = [1] * len(section.points)
|
|
365
|
-
assert_not_equal(neuron_ref, a)
|
|
366
|
-
ok_(not (neuron_ref == a))
|
|
367
|
-
assert_expect_diff(neuron_ref, a, 'Reason: perimeters differ')
|
|
368
|
-
|
|
369
|
-
a = Morphology(os.path.join(_path, 'simple2.asc'))
|
|
370
|
-
mundane_section(a).append_section(PointLevel([[-6, 5, 0], [4, 5, 6]], [2, 3]))
|
|
371
|
-
assert_not_equal(neuron_ref, a)
|
|
372
|
-
ok_(not (neuron_ref == a))
|
|
373
|
-
assert_expect_diff(neuron_ref, a,
|
|
374
|
-
'Reason: different number of children\n'
|
|
375
|
-
'Summary: children of Section(id=0, points=[(0 0 0),..., (0 5 0)]) differ. '
|
|
376
|
-
'See the above "Reason" to know in what they differ.')
|
|
377
|
-
|
|
378
|
-
a = Morphology(os.path.join(_path, 'simple2.asc'))
|
|
379
|
-
a.delete_section(a.root_sections[0])
|
|
380
|
-
assert_not_equal(neuron_ref, a)
|
|
381
|
-
ok_(not (neuron_ref == a))
|
|
382
|
-
assert_expect_diff(neuron_ref, a, "Different number of root sections")
|
|
383
|
-
|
|
384
313
|
|
|
385
314
|
def test_iterators():
|
|
386
315
|
assert_array_equal([sec.id for sec in SIMPLE.section(5).iter(upstream)],
|