morphio 3.3.5__tar.gz → 3.3.6__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-3.3.5 → MorphIO-3.3.6}/.github/workflows/coverage_test.yaml +1 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/CMake/HighFiveConfig.cmake.in +1 -7
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/CMake/config/CompilerFlagsHelpers.cmake +3 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/CMakeLists.txt +1 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/Doxyfile +0 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5Attribute.hpp +3 -21
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Attribute_misc.hpp +9 -18
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5DataType_misc.hpp +27 -82
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Path_traits_misc.hpp +1 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Slice_traits.hpp +6 -38
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Slice_traits_misc.hpp +13 -25
- {MorphIO-3.3.5 → MorphIO-3.3.6}/CHANGELOG.md +16 -0
- MorphIO-3.3.6/CMake/CodeCoverage.cmake +742 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/CMakeLists.txt +1 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6/MorphIO.egg-info}/PKG-INFO +1 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/MorphIO.egg-info/SOURCES.txt +1 -1
- {MorphIO-3.3.5/MorphIO.egg-info → MorphIO-3.3.6}/PKG-INFO +1 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/CMakeLists.txt +3 -1
- MorphIO-3.3.6/binds/python/bind_enums.cpp +105 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/bind_enums.h +4 -0
- MorphIO-3.3.6/binds/python/bind_immutable.cpp +422 -0
- MorphIO-3.3.6/binds/python/bind_immutable.h +5 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/bind_misc.cpp +12 -117
- MorphIO-3.3.6/binds/python/bind_mutable.cpp +540 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/bind_mutable.h +1 -3
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/bindings_utils.h +0 -25
- MorphIO-3.3.6/binds/python/generated/docstrings.h +1916 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/morphio.cpp +5 -6
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/enums.h +32 -15
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/errorMessages.h +18 -2
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mitochondria.h +9 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/morphology.h +5 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/dendritic_spine.h +4 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/mito_section.h +18 -6
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/mitochondria.h +9 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/morphology.h +1 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/soma.h +7 -1
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/vasc/properties.h +9 -12
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/CMakeLists.txt +2 -13
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/errorMessages.cpp +43 -8
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/morphology.cpp +5 -3
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/writers.cpp +24 -5
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/properties.cpp +58 -164
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/readers/morphologySWC.cpp +62 -49
- MorphIO-3.3.6/src/shared_utils.cpp +66 -0
- MorphIO-3.3.6/src/shared_utils.hpp +67 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/soma.cpp +2 -1
- MorphIO-3.3.6/src/vasc/properties.cpp +103 -0
- MorphIO-3.3.5/3rdparty/HighFive/doc/installation.md +0 -254
- MorphIO-3.3.5/CMake/CodeCoverage.cmake +0 -303
- MorphIO-3.3.5/binds/python/bind_immutable.cpp +0 -520
- MorphIO-3.3.5/binds/python/bind_immutable.h +0 -21
- MorphIO-3.3.5/binds/python/bind_mutable.cpp +0 -619
- MorphIO-3.3.5/binds/python/generated/docstrings.h +0 -1667
- MorphIO-3.3.5/src/shared_utils.cpp +0 -21
- MorphIO-3.3.5/src/shared_utils.hpp +0 -94
- MorphIO-3.3.5/src/vasc/properties.cpp +0 -235
- {MorphIO-3.3.5 → MorphIO-3.3.6}/.clang-format +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/.github/workflows/check-sdist.yml +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/.github/workflows/clang_format_check.yaml +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/.github/workflows/docstring_check.yaml +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/.github/workflows/publish-sdist-wheels.yml +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/.github/workflows/run-tests.yml +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/.gitignore +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/.gitmodules +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/.readthedocs.yaml +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/CMakeLists.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/CMakeLists.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/cmake/gsl-lite-config-version.cmake.in +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/cmake/gsl-lite-config.cmake.in +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/gsl-lite.natvis +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/include/gsl/gsl +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/include/gsl/gsl-lite-vc6.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/include/gsl/gsl-lite.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/include/gsl/gsl-lite.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/include/gsl-lite/gsl-lite.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/include/gsl.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/GSL_LITE/include/gsl.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/CMake/HighFiveTargetDeps.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/CMake/HighFiveTargetExport.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/CMake/config/ReleaseDebugAutoFlags.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/CMake/config/TestHelpers.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/CMakeLists.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/DoxygenLayout.xml +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/doxygen-awesome-css/doxygen-awesome.css +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/doxygen-awesome-css/update_doxygen_awesome.sh +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/environment.yaml +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example1_hdf5.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example1_highfive.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example3.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example6.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example_boost.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example_boost_ublas.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example_easy_h5py.py +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example_easy_highfive.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example_eigen.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/example_props.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/examples.js +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/godbolt.org.ico +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/doc/poster/index.html +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5DataSet.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5DataSpace.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5DataType.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5Easy.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5Exception.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5File.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5FileDriver.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5Group.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5Object.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5PropertyList.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5Reference.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5Selection.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5Utility.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/H5Version.hpp.in +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Annotate_traits.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Annotate_traits_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Converter_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5DataSet_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Dataspace_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Exception_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5FileDriver_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5File_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Friends.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Iterables_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Node_traits.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Node_traits_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Object_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Path_traits.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5PropertyList_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5ReadWrite_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Reference_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Selection_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Utils.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5_definitions.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_Eigen.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_misc.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_opencv.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_public.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_scalar.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_vector.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_xtensor.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/CMakeLists.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/LICENSE +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/cmake/GhcHelper.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/cmake/config.cmake.in +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/include/ghc/filesystem.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/include/ghc/fs_fwd.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/include/ghc/fs_impl.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/include/ghc/fs_std.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/include/ghc/fs_std_fwd.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/ghc_filesystem/include/ghc/fs_std_impl.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/CMakeLists.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/char_traits.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/debug.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/dot.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/enums.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/generate_cpp.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/generator.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/internals.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/iterator.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/licence_1_0.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/lookup.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/match_results.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/memory_file.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/narrow.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/observer_ptr.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/parser.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/blocks.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/fold2.inc +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/fold4.inc +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/re_token.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/re_tokeniser.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/re_tokeniser_helper.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/re_tokeniser_state.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/scripts.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/table.inc +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/unicode.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tree/end_node.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tree/iteration_node.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tree/leaf_node.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tree/node.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tree/selection_node.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/parser/tree/sequence_node.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/partition/charset.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/partition/equivset.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/rules.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/runtime_error.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/serialise.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/sm_to_csm.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/sm_traits.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/state_machine.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/stream_shared_iterator.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/string_token.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/lexertl14/include/lexertl/utf_iterators.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/AUTHORS.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/CMake/CompilerFlags.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/CMake/MorphIOConfig.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/CONTRIBUTING.md +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/COPYING +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/COPYING.LESSER +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/MANIFEST.in +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/MorphIO.egg-info/dependency_links.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/MorphIO.egg-info/not-zip-safe +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/MorphIO.egg-info/requires.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/MorphIO.egg-info/top_level.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/README.rst +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/bind_misc.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/bind_vasculature.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/bind_vasculature.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/bindings_utils.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/generated/.clang-format +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/CMakeLists.txt +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/LICENSE +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/attr.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/buffer_info.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/cast.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/chrono.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/common.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/complex.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/detail/class.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/detail/common.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/detail/descr.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/detail/init.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/detail/internals.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/detail/type_caster_base.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/detail/typeid.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/eigen.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/embed.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/eval.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/functional.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/gil.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/iostream.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/numpy.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/operators.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/options.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/pybind11.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/pytypes.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/stl/filesystem.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/stl.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/include/pybind11/stl_bind.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/tools/FindCatch.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/tools/FindEigen3.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/tools/FindPythonLibsNew.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/tools/pybind11Common.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/tools/pybind11NewTools.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/binds/python/pybind11/tools/pybind11Tools.cmake +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/collection.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/dendritic_spine.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/endoplasmic_reticulum.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/exceptions.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/glial_cell.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mito_section.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/endoplasmic_reticulum.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/glial_cell.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/modifiers.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/section.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/mut/writers.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/properties.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/section.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/section_base.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/section_iterators.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/soma.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/tools.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/types.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/vasc/iterators.hpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/vasc/section.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/vasc/vasculature.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/vector_types.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/include/morphio/version.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/morphio/__init__.py +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/morphio/mut/__init__.py +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/morphio/vasculature/__init__.py +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/pyproject.toml +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/setup.cfg +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/setup.py +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/collection.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/dendritic_spine.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/endoplasmic_reticulum.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/enums.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/glial_cell.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mito_section.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mitochondria.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/morphology.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/dendritic_spine.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/endoplasmic_reticulum.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/glial_cell.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/mito_section.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/mitochondria.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/modifiers.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/section.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/mut/soma.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/point_utils.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/point_utils.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/readers/NeurolucidaLexer.inc +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/readers/morphologyASC.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/readers/morphologyASC.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/readers/morphologyHDF5.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/readers/morphologyHDF5.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/readers/morphologySWC.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/readers/vasculatureHDF5.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/readers/vasculatureHDF5.h +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/section.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/vasc/section.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/vasc/vasculature.cpp +0 -0
- {MorphIO-3.3.5 → MorphIO-3.3.6}/src/version.cpp.in +0 -0
|
@@ -15,8 +15,6 @@ if(TARGET HighFive)
|
|
|
15
15
|
return()
|
|
16
16
|
endif()
|
|
17
17
|
|
|
18
|
-
@PACKAGE_INIT@
|
|
19
|
-
|
|
20
18
|
# Get HighFive targets
|
|
21
19
|
include("${CMAKE_CURRENT_LIST_DIR}/HighFiveTargets.cmake")
|
|
22
20
|
|
|
@@ -63,12 +61,8 @@ if(HIGHFIVE_USE_XTENSOR AND NOT CMAKE_VERSION VERSION_LESS 3.8)
|
|
|
63
61
|
set_property(TARGET HighFive APPEND PROPERTY INTERFACE_COMPILE_FEATURES cxx_std_14)
|
|
64
62
|
endif()
|
|
65
63
|
|
|
66
|
-
|
|
67
|
-
message(STATUS "HIGHFIVE @PROJECT_VERSION@: (Re)Detecting Highfive dependencies (HIGHFIVE_USE_INSTALL_DEPS=NO)")
|
|
68
|
-
endif()
|
|
64
|
+
message(STATUS "HIGHFIVE @PROJECT_VERSION@: (Re)Detecting Highfive dependencies (HIGHFIVE_USE_INSTALL_DEPS=NO)")
|
|
69
65
|
include("${CMAKE_CURRENT_LIST_DIR}/HighFiveTargetDeps.cmake")
|
|
70
66
|
foreach(dependency HighFive_libheaders libdeps)
|
|
71
67
|
copy_interface_properties(HighFive ${dependency})
|
|
72
68
|
endforeach()
|
|
73
|
-
|
|
74
|
-
check_required_components(HighFive)
|
|
@@ -35,7 +35,9 @@ foreach(COMPILER_LANGUAGE ${SUPPORTED_COMPILER_LANGUAGE_LIST})
|
|
|
35
35
|
OR CMAKE_${COMPILER_LANGUAGE}_COMPILER_ID MATCHES "GNU"
|
|
36
36
|
OR CMAKE_${COMPILER_LANGUAGE}_COMPILER_ID MATCHES "Intel")
|
|
37
37
|
set(CMAKE_${COMPILER_LANGUAGE}_WARNING_ALL " -Wall -Wextra")
|
|
38
|
-
string(CONCAT CMAKE_${COMPILER_LANGUAGE}_WARNING_DEBUG
|
|
38
|
+
string(CONCAT CMAKE_${COMPILER_LANGUAGE}_WARNING_DEBUG
|
|
39
|
+
" -Werror -Wshadow -Wnon-virtual-dtor -Wunused -Woverloaded-virtual"
|
|
40
|
+
" -Wformat=2 -Wconversion -Wsign-conversion -Wno-error=deprecated-declarations"
|
|
39
41
|
)
|
|
40
42
|
if(NOT CMAKE_${COMPILER_LANGUAGE}_COMPILER_IS_ICC)
|
|
41
43
|
string(CONCAT CMAKE_${COMPILER_LANGUAGE}_WARNING_DEBUG
|
|
@@ -113,7 +113,7 @@ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
|
|
|
113
113
|
|
|
114
114
|
# Disable test if Boost was expressly disabled, or if HighFive is a sub-project
|
|
115
115
|
if (NOT CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
|
|
116
|
-
if(HIGHFIVE_UNIT_TESTS
|
|
116
|
+
if(HIGHFIVE_UNIT_TESTS)
|
|
117
117
|
message(WARNING "Unit tests have been DISABLED.")
|
|
118
118
|
endif()
|
|
119
119
|
set(HIGHFIVE_UNIT_TESTS FALSE)
|
|
@@ -865,7 +865,6 @@ WARN_LOGFILE =
|
|
|
865
865
|
# Note: If this tag is empty the current directory is searched.
|
|
866
866
|
|
|
867
867
|
INPUT = @CMAKE_CURRENT_SOURCE_DIR@/../include \
|
|
868
|
-
@CMAKE_CURRENT_SOURCE_DIR@/installation.md \
|
|
869
868
|
@CMAKE_CURRENT_SOURCE_DIR@/../CHANGELOG.md \
|
|
870
869
|
@CMAKE_CURRENT_SOURCE_DIR@/../README.md
|
|
871
870
|
|
|
@@ -87,17 +87,9 @@ class Attribute: public Object, public PathTraits<Attribute> {
|
|
|
87
87
|
template <typename T>
|
|
88
88
|
void read(T& array) const;
|
|
89
89
|
|
|
90
|
-
/// \brief Read the attribute into a buffer.
|
|
91
|
-
///
|
|
92
|
-
/// Note, this is the shallowest wrapper around `H5Aread`.
|
|
93
|
-
template <typename T>
|
|
94
|
-
void read(T* array, const DataType& mem_datatype) const;
|
|
95
|
-
|
|
96
90
|
/// \brief Read the attribute into a buffer
|
|
97
|
-
///
|
|
98
|
-
/// This overload deduces the memory datatype from `T`.
|
|
99
91
|
template <typename T>
|
|
100
|
-
void read(T* array) const;
|
|
92
|
+
void read(T* array, const DataType& dtype = {}) const;
|
|
101
93
|
|
|
102
94
|
///
|
|
103
95
|
/// Write the integrality N-dimension buffer to this attribute
|
|
@@ -109,19 +101,9 @@ class Attribute: public Object, public PathTraits<Attribute> {
|
|
|
109
101
|
template <typename T>
|
|
110
102
|
void write(const T& buffer);
|
|
111
103
|
|
|
112
|
-
/// \brief Write to this attribute
|
|
113
|
-
///
|
|
114
|
-
/// Note that this is the shallowest wrapper around `H5Awrite`. It's useful
|
|
115
|
-
/// if you need full control. If possible prefer `Attribute::write`.
|
|
116
|
-
template <typename T>
|
|
117
|
-
void write_raw(const T* buffer, const DataType& mem_dtype);
|
|
118
|
-
|
|
119
|
-
/// \brief Write to this attribute from `buffer`.
|
|
120
|
-
///
|
|
121
|
-
/// This version attempts to automatically deduce the datatype
|
|
122
|
-
/// of the buffer. Note, that the file datatype is already set.
|
|
104
|
+
/// \brief Write a buffer to this attribute
|
|
123
105
|
template <typename T>
|
|
124
|
-
void write_raw(const T* buffer);
|
|
106
|
+
void write_raw(const T* buffer, const DataType& dtype = {});
|
|
125
107
|
|
|
126
108
|
/// \brief Get the list of properties for creation of this attribute
|
|
127
109
|
AttributeCreateProps getCreatePropertyList() const {
|
{MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Attribute_misc.hpp
RENAMED
|
@@ -100,23 +100,19 @@ inline void Attribute::read(T& array) const {
|
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
template <typename T>
|
|
103
|
-
inline void Attribute::read(T* array, const DataType&
|
|
103
|
+
inline void Attribute::read(T* array, const DataType& dtype) const {
|
|
104
104
|
static_assert(!std::is_const<T>::value,
|
|
105
105
|
"read() requires a non-const structure to read data into");
|
|
106
|
+
using element_type = typename details::inspector<T>::base_type;
|
|
107
|
+
// Auto-detect mem datatype if not provided
|
|
108
|
+
const DataType& mem_datatype = dtype.empty() ? create_and_check_datatype<element_type>()
|
|
109
|
+
: dtype;
|
|
106
110
|
|
|
107
111
|
if (H5Aread(getId(), mem_datatype.getId(), static_cast<void*>(array)) < 0) {
|
|
108
112
|
HDF5ErrMapper::ToException<AttributeException>("Error during HDF5 Read: ");
|
|
109
113
|
}
|
|
110
114
|
}
|
|
111
115
|
|
|
112
|
-
template <typename T>
|
|
113
|
-
inline void Attribute::read(T* array) const {
|
|
114
|
-
using element_type = typename details::inspector<T>::base_type;
|
|
115
|
-
const DataType& mem_datatype = create_and_check_datatype<element_type>();
|
|
116
|
-
|
|
117
|
-
read(array, mem_datatype);
|
|
118
|
-
}
|
|
119
|
-
|
|
120
116
|
template <typename T>
|
|
121
117
|
inline void Attribute::write(const T& buffer) {
|
|
122
118
|
const DataSpace& mem_space = getMemSpace();
|
|
@@ -141,18 +137,13 @@ inline void Attribute::write(const T& buffer) {
|
|
|
141
137
|
}
|
|
142
138
|
|
|
143
139
|
template <typename T>
|
|
144
|
-
inline void Attribute::write_raw(const T* buffer, const DataType&
|
|
140
|
+
inline void Attribute::write_raw(const T* buffer, const DataType& dtype) {
|
|
141
|
+
using element_type = typename details::inspector<T>::base_type;
|
|
142
|
+
const auto& mem_datatype = dtype.empty() ? create_and_check_datatype<element_type>() : dtype;
|
|
143
|
+
|
|
145
144
|
if (H5Awrite(getId(), mem_datatype.getId(), buffer) < 0) {
|
|
146
145
|
HDF5ErrMapper::ToException<DataSetException>("Error during HDF5 Write: ");
|
|
147
146
|
}
|
|
148
147
|
}
|
|
149
148
|
|
|
150
|
-
template <typename T>
|
|
151
|
-
inline void Attribute::write_raw(const T* buffer) {
|
|
152
|
-
using element_type = typename details::inspector<T>::base_type;
|
|
153
|
-
const auto& mem_datatype = create_and_check_datatype<element_type>();
|
|
154
|
-
|
|
155
|
-
write_raw(buffer, mem_datatype);
|
|
156
|
-
}
|
|
157
|
-
|
|
158
149
|
} // namespace HighFive
|
|
@@ -26,64 +26,6 @@
|
|
|
26
26
|
|
|
27
27
|
namespace HighFive {
|
|
28
28
|
|
|
29
|
-
namespace detail {
|
|
30
|
-
|
|
31
|
-
inline hid_t h5t_copy(hid_t original) {
|
|
32
|
-
auto copy = H5Tcopy(original);
|
|
33
|
-
if (copy == H5I_INVALID_HID) {
|
|
34
|
-
HDF5ErrMapper::ToException<DataTypeException>("Error copying datatype.");
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return copy;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
inline hsize_t h5t_get_size(hid_t hid) {
|
|
41
|
-
hsize_t size = H5Tget_size(hid);
|
|
42
|
-
if (size == 0) {
|
|
43
|
-
HDF5ErrMapper::ToException<DataTypeException>("Error getting size of datatype.");
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
return size;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
inline H5T_cset_t h5t_get_cset(hid_t hid) {
|
|
50
|
-
auto cset = H5Tget_cset(hid);
|
|
51
|
-
if (cset == H5T_CSET_ERROR) {
|
|
52
|
-
HDF5ErrMapper::ToException<DataTypeException>("Error getting cset of datatype.");
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
return cset;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
inline H5T_str_t h5t_get_strpad(hid_t hid) {
|
|
59
|
-
auto strpad = H5Tget_strpad(hid);
|
|
60
|
-
if (strpad == H5T_STR_ERROR) {
|
|
61
|
-
HDF5ErrMapper::ToException<DataTypeException>("Error getting strpad of datatype.");
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
return strpad;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
inline void h5t_set_size(hid_t hid, hsize_t size) {
|
|
68
|
-
if (H5Tset_size(hid, size) < 0) {
|
|
69
|
-
HDF5ErrMapper::ToException<DataTypeException>("Error setting size of datatype.");
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
inline void h5t_set_cset(hid_t hid, H5T_cset_t cset) {
|
|
74
|
-
if (H5Tset_cset(hid, cset) < 0) {
|
|
75
|
-
HDF5ErrMapper::ToException<DataTypeException>("Error setting cset of datatype.");
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
inline void h5t_set_strpad(hid_t hid, H5T_str_t strpad) {
|
|
80
|
-
if (H5Tset_strpad(hid, strpad) < 0) {
|
|
81
|
-
HDF5ErrMapper::ToException<DataTypeException>("Error setting strpad of datatype.");
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
} // namespace detail
|
|
85
|
-
|
|
86
|
-
|
|
87
29
|
namespace { // unnamed
|
|
88
30
|
inline DataTypeClass convert_type_class(const H5T_class_t& tclass);
|
|
89
31
|
inline std::string type_class_string(DataTypeClass);
|
|
@@ -99,7 +41,7 @@ inline DataTypeClass DataType::getClass() const {
|
|
|
99
41
|
}
|
|
100
42
|
|
|
101
43
|
inline size_t DataType::getSize() const {
|
|
102
|
-
return
|
|
44
|
+
return H5Tget_size(_hid);
|
|
103
45
|
}
|
|
104
46
|
|
|
105
47
|
inline bool DataType::operator==(const DataType& other) const {
|
|
@@ -133,61 +75,61 @@ inline std::string DataType::string() const {
|
|
|
133
75
|
// char mapping
|
|
134
76
|
template <>
|
|
135
77
|
inline AtomicType<char>::AtomicType() {
|
|
136
|
-
_hid =
|
|
78
|
+
_hid = H5Tcopy(H5T_NATIVE_CHAR);
|
|
137
79
|
}
|
|
138
80
|
|
|
139
81
|
template <>
|
|
140
82
|
inline AtomicType<signed char>::AtomicType() {
|
|
141
|
-
_hid =
|
|
83
|
+
_hid = H5Tcopy(H5T_NATIVE_SCHAR);
|
|
142
84
|
}
|
|
143
85
|
|
|
144
86
|
template <>
|
|
145
87
|
inline AtomicType<unsigned char>::AtomicType() {
|
|
146
|
-
_hid =
|
|
88
|
+
_hid = H5Tcopy(H5T_NATIVE_UCHAR);
|
|
147
89
|
}
|
|
148
90
|
|
|
149
91
|
// short mapping
|
|
150
92
|
template <>
|
|
151
93
|
inline AtomicType<short>::AtomicType() {
|
|
152
|
-
_hid =
|
|
94
|
+
_hid = H5Tcopy(H5T_NATIVE_SHORT);
|
|
153
95
|
}
|
|
154
96
|
|
|
155
97
|
template <>
|
|
156
98
|
inline AtomicType<unsigned short>::AtomicType() {
|
|
157
|
-
_hid =
|
|
99
|
+
_hid = H5Tcopy(H5T_NATIVE_USHORT);
|
|
158
100
|
}
|
|
159
101
|
|
|
160
102
|
// integer mapping
|
|
161
103
|
template <>
|
|
162
104
|
inline AtomicType<int>::AtomicType() {
|
|
163
|
-
_hid =
|
|
105
|
+
_hid = H5Tcopy(H5T_NATIVE_INT);
|
|
164
106
|
}
|
|
165
107
|
|
|
166
108
|
template <>
|
|
167
109
|
inline AtomicType<unsigned>::AtomicType() {
|
|
168
|
-
_hid =
|
|
110
|
+
_hid = H5Tcopy(H5T_NATIVE_UINT);
|
|
169
111
|
}
|
|
170
112
|
|
|
171
113
|
// long mapping
|
|
172
114
|
template <>
|
|
173
115
|
inline AtomicType<long>::AtomicType() {
|
|
174
|
-
_hid =
|
|
116
|
+
_hid = H5Tcopy(H5T_NATIVE_LONG);
|
|
175
117
|
}
|
|
176
118
|
|
|
177
119
|
template <>
|
|
178
120
|
inline AtomicType<unsigned long>::AtomicType() {
|
|
179
|
-
_hid =
|
|
121
|
+
_hid = H5Tcopy(H5T_NATIVE_ULONG);
|
|
180
122
|
}
|
|
181
123
|
|
|
182
124
|
// long long mapping
|
|
183
125
|
template <>
|
|
184
126
|
inline AtomicType<long long>::AtomicType() {
|
|
185
|
-
_hid =
|
|
127
|
+
_hid = H5Tcopy(H5T_NATIVE_LLONG);
|
|
186
128
|
}
|
|
187
129
|
|
|
188
130
|
template <>
|
|
189
131
|
inline AtomicType<unsigned long long>::AtomicType() {
|
|
190
|
-
_hid =
|
|
132
|
+
_hid = H5Tcopy(H5T_NATIVE_ULLONG);
|
|
191
133
|
}
|
|
192
134
|
|
|
193
135
|
// half-float, float, double and long double mapping
|
|
@@ -196,11 +138,11 @@ using float16_t = half_float::half;
|
|
|
196
138
|
|
|
197
139
|
template <>
|
|
198
140
|
inline AtomicType<float16_t>::AtomicType() {
|
|
199
|
-
_hid =
|
|
141
|
+
_hid = H5Tcopy(H5T_NATIVE_FLOAT);
|
|
200
142
|
// Sign position, exponent position, exponent size, mantissa position, mantissa size
|
|
201
143
|
H5Tset_fields(_hid, 15, 10, 5, 0, 10);
|
|
202
144
|
// Total datatype size (in bytes)
|
|
203
|
-
|
|
145
|
+
H5Tset_size(_hid, 2);
|
|
204
146
|
// Floating point exponent bias
|
|
205
147
|
H5Tset_ebias(_hid, 15);
|
|
206
148
|
}
|
|
@@ -208,17 +150,17 @@ inline AtomicType<float16_t>::AtomicType() {
|
|
|
208
150
|
|
|
209
151
|
template <>
|
|
210
152
|
inline AtomicType<float>::AtomicType() {
|
|
211
|
-
_hid =
|
|
153
|
+
_hid = H5Tcopy(H5T_NATIVE_FLOAT);
|
|
212
154
|
}
|
|
213
155
|
|
|
214
156
|
template <>
|
|
215
157
|
inline AtomicType<double>::AtomicType() {
|
|
216
|
-
_hid =
|
|
158
|
+
_hid = H5Tcopy(H5T_NATIVE_DOUBLE);
|
|
217
159
|
}
|
|
218
160
|
|
|
219
161
|
template <>
|
|
220
162
|
inline AtomicType<long double>::AtomicType() {
|
|
221
|
-
_hid =
|
|
163
|
+
_hid = H5Tcopy(H5T_NATIVE_LDOUBLE);
|
|
222
164
|
}
|
|
223
165
|
|
|
224
166
|
// std string
|
|
@@ -231,7 +173,7 @@ inline AtomicType<std::string>::AtomicType() {
|
|
|
231
173
|
// std byte
|
|
232
174
|
template <>
|
|
233
175
|
inline AtomicType<std::byte>::AtomicType() {
|
|
234
|
-
_hid =
|
|
176
|
+
_hid = H5Tcopy(H5T_NATIVE_B8);
|
|
235
177
|
}
|
|
236
178
|
#endif
|
|
237
179
|
|
|
@@ -329,7 +271,7 @@ inline std::string FixedLenStringArray<N>::getString(std::size_t i) const {
|
|
|
329
271
|
// Reference mapping
|
|
330
272
|
template <>
|
|
331
273
|
inline AtomicType<Reference>::AtomicType() {
|
|
332
|
-
_hid =
|
|
274
|
+
_hid = H5Tcopy(H5T_STD_REF_OBJ);
|
|
333
275
|
}
|
|
334
276
|
|
|
335
277
|
inline size_t find_first_atomic_member_size(hid_t hid) {
|
|
@@ -352,7 +294,7 @@ inline size_t find_first_atomic_member_size(hid_t hid) {
|
|
|
352
294
|
} else if (H5Tget_class(hid) == H5T_STRING) {
|
|
353
295
|
return 1;
|
|
354
296
|
}
|
|
355
|
-
return
|
|
297
|
+
return H5Tget_size(hid);
|
|
356
298
|
}
|
|
357
299
|
|
|
358
300
|
// Calculate the padding required to align an element of a struct
|
|
@@ -383,7 +325,7 @@ inline void CompoundType::create(size_t size) {
|
|
|
383
325
|
|
|
384
326
|
// Do a first pass to find the total size of the compound datatype
|
|
385
327
|
for (auto& member: members) {
|
|
386
|
-
size_t member_size =
|
|
328
|
+
size_t member_size = H5Tget_size(member.base_type.getId());
|
|
387
329
|
|
|
388
330
|
if (member_size == 0) {
|
|
389
331
|
throw DataTypeException("Cannot get size of DataType with hid: " +
|
|
@@ -451,9 +393,12 @@ inline void EnumType<T>::commit(const Object& object, const std::string& name) c
|
|
|
451
393
|
namespace {
|
|
452
394
|
|
|
453
395
|
inline hid_t create_string(size_t length) {
|
|
454
|
-
hid_t _hid =
|
|
455
|
-
|
|
456
|
-
|
|
396
|
+
hid_t _hid = H5Tcopy(H5T_C_S1);
|
|
397
|
+
if (H5Tset_size(_hid, length) < 0) {
|
|
398
|
+
HDF5ErrMapper::ToException<DataTypeException>("Unable to define datatype size to variable");
|
|
399
|
+
}
|
|
400
|
+
// define encoding to UTF-8 by default
|
|
401
|
+
H5Tset_cset(_hid, H5T_CSET_UTF8);
|
|
457
402
|
return _hid;
|
|
458
403
|
}
|
|
459
404
|
|
{MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Path_traits_misc.hpp
RENAMED
|
@@ -34,7 +34,7 @@ inline PathTraits<Derivate>::PathTraits() {
|
|
|
34
34
|
template <typename Derivate>
|
|
35
35
|
inline std::string PathTraits<Derivate>::getPath() const {
|
|
36
36
|
return details::get_name([this](char* buffer, size_t length) {
|
|
37
|
-
return H5Iget_name(static_cast<const Derivate
|
|
37
|
+
return H5Iget_name(static_cast<const Derivate*>(this)->getId(), buffer, length);
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
40
|
|
|
@@ -258,15 +258,6 @@ class SliceTraits {
|
|
|
258
258
|
/// Therefore, the only memspaces supported for general hyperslabs are one-dimensional arrays.
|
|
259
259
|
Selection select(const HyperSlab& hyperslab) const;
|
|
260
260
|
|
|
261
|
-
///
|
|
262
|
-
/// \brief Select an \p hyperslab in the current Slice/Dataset.
|
|
263
|
-
///
|
|
264
|
-
/// If the selection can be read into a simple, multi-dimensional dataspace,
|
|
265
|
-
/// then this overload enable specifying the shape of the memory dataspace
|
|
266
|
-
/// with `memspace`. Note, that simple implies no offsets, strides or
|
|
267
|
-
/// number of blocks, just the size of the block in each dimension.
|
|
268
|
-
Selection select(const HyperSlab& hyperslab, const DataSpace& memspace) const;
|
|
269
|
-
|
|
270
261
|
///
|
|
271
262
|
/// \brief Select a region in the current Slice/Dataset of \p count points at
|
|
272
263
|
/// \p offset separated by \p stride. If strides are not provided they will
|
|
@@ -317,21 +308,9 @@ class SliceTraits {
|
|
|
317
308
|
/// \param xfer_props: Data Transfer properties
|
|
318
309
|
template <typename T>
|
|
319
310
|
void read(T* array,
|
|
320
|
-
const DataType& dtype,
|
|
311
|
+
const DataType& dtype = DataType(),
|
|
321
312
|
const DataTransferProps& xfer_props = DataTransferProps()) const;
|
|
322
313
|
|
|
323
|
-
///
|
|
324
|
-
/// Read the entire dataset into a raw buffer
|
|
325
|
-
///
|
|
326
|
-
/// Same as `read(T*, const DataType&, const DataTransferProps&)`. However,
|
|
327
|
-
/// this overload deduces the HDF5 datatype of the element of `array` from
|
|
328
|
-
/// `T`. Note, that the file datatype is already fixed.
|
|
329
|
-
///
|
|
330
|
-
/// \param array: A buffer containing enough space for the data
|
|
331
|
-
/// \param xfer_props: Data Transfer properties
|
|
332
|
-
template <typename T>
|
|
333
|
-
void read(T* array, const DataTransferProps& xfer_props = DataTransferProps()) const;
|
|
334
|
-
|
|
335
314
|
///
|
|
336
315
|
/// Write the integrality N-dimension buffer to this dataset
|
|
337
316
|
/// An exception is raised is if the numbers of dimension of the buffer and
|
|
@@ -343,33 +322,22 @@ class SliceTraits {
|
|
|
343
322
|
void write(const T& buffer, const DataTransferProps& xfer_props = DataTransferProps());
|
|
344
323
|
|
|
345
324
|
///
|
|
346
|
-
/// Write from a raw
|
|
325
|
+
/// Write from a raw buffer into this dataset
|
|
347
326
|
///
|
|
348
327
|
/// No dimensionality checks will be performed, it is the user's
|
|
349
328
|
/// responsibility to ensure that the buffer holds the right amount of
|
|
350
329
|
/// elements. For n-dimensional matrices the buffer layout follows H5
|
|
351
330
|
/// default conventions.
|
|
352
|
-
///
|
|
353
|
-
/// Note, this is the shallowest wrapper around `H5Dwrite` and should
|
|
354
|
-
/// be used if full control is needed. Generally prefer `write`.
|
|
355
|
-
///
|
|
356
331
|
/// \param buffer: A buffer containing the data to be written
|
|
357
|
-
/// \param dtype: The
|
|
332
|
+
/// \param dtype: The type of the data, in case it cannot be automatically guessed
|
|
358
333
|
/// \param xfer_props: The HDF5 data transfer properties, e.g. collective MPI-IO.
|
|
359
334
|
template <typename T>
|
|
360
335
|
void write_raw(const T* buffer,
|
|
361
|
-
const DataType&
|
|
336
|
+
const DataType& dtype = DataType(),
|
|
362
337
|
const DataTransferProps& xfer_props = DataTransferProps());
|
|
363
338
|
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
///
|
|
367
|
-
/// Same as `write_raw(const T*, const DataTransferProps&)`. However, this
|
|
368
|
-
/// overload attempts to guess the data type of `buffer`, i.e. the memory
|
|
369
|
-
/// datatype. Note that the file datatype is already fixed.
|
|
370
|
-
///
|
|
371
|
-
template <typename T>
|
|
372
|
-
void write_raw(const T* buffer, const DataTransferProps& xfer_props = DataTransferProps());
|
|
339
|
+
protected:
|
|
340
|
+
inline Selection select_impl(const HyperSlab& hyperslab, const DataSpace& memspace) const;
|
|
373
341
|
};
|
|
374
342
|
|
|
375
343
|
} // namespace HighFive
|
{MorphIO-3.3.5 → MorphIO-3.3.6}/3rdparty/HighFive/include/highfive/bits/H5Slice_traits_misc.hpp
RENAMED
|
@@ -64,8 +64,8 @@ inline ElementSet::ElementSet(const std::vector<std::vector<std::size_t>>& eleme
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
template <typename Derivate>
|
|
67
|
-
inline Selection SliceTraits<Derivate>::
|
|
68
|
-
|
|
67
|
+
inline Selection SliceTraits<Derivate>::select_impl(const HyperSlab& hyperslab,
|
|
68
|
+
const DataSpace& memspace) const {
|
|
69
69
|
// Note: The current limitation are that memspace must describe a
|
|
70
70
|
// packed memspace.
|
|
71
71
|
//
|
|
@@ -98,7 +98,7 @@ inline Selection SliceTraits<Derivate>::select(const std::vector<size_t>& offset
|
|
|
98
98
|
const std::vector<size_t>& block) const {
|
|
99
99
|
auto slab = HyperSlab(RegularHyperSlab(offset, count, stride, block));
|
|
100
100
|
auto memspace = DataSpace(count);
|
|
101
|
-
return
|
|
101
|
+
return select_impl(slab, memspace);
|
|
102
102
|
}
|
|
103
103
|
|
|
104
104
|
template <typename Derivate>
|
|
@@ -121,7 +121,7 @@ inline Selection SliceTraits<Derivate>::select(const std::vector<size_t>& column
|
|
|
121
121
|
std::vector<size_t> memdims = dims;
|
|
122
122
|
memdims.back() = columns.size();
|
|
123
123
|
|
|
124
|
-
return
|
|
124
|
+
return select_impl(slab, DataSpace(memdims));
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
template <typename Derivate>
|
|
@@ -214,12 +214,16 @@ inline void SliceTraits<Derivate>::read(T& array, const DataTransferProps& xfer_
|
|
|
214
214
|
template <typename Derivate>
|
|
215
215
|
template <typename T>
|
|
216
216
|
inline void SliceTraits<Derivate>::read(T* array,
|
|
217
|
-
const DataType&
|
|
217
|
+
const DataType& dtype,
|
|
218
218
|
const DataTransferProps& xfer_props) const {
|
|
219
219
|
static_assert(!std::is_const<T>::value,
|
|
220
220
|
"read() requires a non-const structure to read data into");
|
|
221
|
-
|
|
222
221
|
const auto& slice = static_cast<const Derivate&>(*this);
|
|
222
|
+
using element_type = typename details::inspector<T>::base_type;
|
|
223
|
+
|
|
224
|
+
// Auto-detect mem datatype if not provided
|
|
225
|
+
const DataType& mem_datatype = dtype.empty() ? create_and_check_datatype<element_type>()
|
|
226
|
+
: dtype;
|
|
223
227
|
|
|
224
228
|
if (H5Dread(details::get_dataset(slice).getId(),
|
|
225
229
|
mem_datatype.getId(),
|
|
@@ -231,15 +235,6 @@ inline void SliceTraits<Derivate>::read(T* array,
|
|
|
231
235
|
}
|
|
232
236
|
}
|
|
233
237
|
|
|
234
|
-
template <typename Derivate>
|
|
235
|
-
template <typename T>
|
|
236
|
-
inline void SliceTraits<Derivate>::read(T* array, const DataTransferProps& xfer_props) const {
|
|
237
|
-
using element_type = typename details::inspector<T>::base_type;
|
|
238
|
-
const DataType& mem_datatype = create_and_check_datatype<element_type>();
|
|
239
|
-
|
|
240
|
-
read(array, mem_datatype, xfer_props);
|
|
241
|
-
}
|
|
242
|
-
|
|
243
238
|
|
|
244
239
|
template <typename Derivate>
|
|
245
240
|
template <typename T>
|
|
@@ -271,9 +266,11 @@ inline void SliceTraits<Derivate>::write(const T& buffer, const DataTransferProp
|
|
|
271
266
|
template <typename Derivate>
|
|
272
267
|
template <typename T>
|
|
273
268
|
inline void SliceTraits<Derivate>::write_raw(const T* buffer,
|
|
274
|
-
const DataType&
|
|
269
|
+
const DataType& dtype,
|
|
275
270
|
const DataTransferProps& xfer_props) {
|
|
271
|
+
using element_type = typename details::inspector<T>::base_type;
|
|
276
272
|
const auto& slice = static_cast<const Derivate&>(*this);
|
|
273
|
+
const auto& mem_datatype = dtype.empty() ? create_and_check_datatype<element_type>() : dtype;
|
|
277
274
|
|
|
278
275
|
if (H5Dwrite(details::get_dataset(slice).getId(),
|
|
279
276
|
mem_datatype.getId(),
|
|
@@ -285,14 +282,5 @@ inline void SliceTraits<Derivate>::write_raw(const T* buffer,
|
|
|
285
282
|
}
|
|
286
283
|
}
|
|
287
284
|
|
|
288
|
-
template <typename Derivate>
|
|
289
|
-
template <typename T>
|
|
290
|
-
inline void SliceTraits<Derivate>::write_raw(const T* buffer, const DataTransferProps& xfer_props) {
|
|
291
|
-
using element_type = typename details::inspector<T>::base_type;
|
|
292
|
-
const auto& mem_datatype = create_and_check_datatype<element_type>();
|
|
293
|
-
|
|
294
|
-
write_raw(buffer, mem_datatype, xfer_props);
|
|
295
|
-
}
|
|
296
|
-
|
|
297
285
|
|
|
298
286
|
} // namespace HighFive
|
|
@@ -1,3 +1,19 @@
|
|
|
1
|
+
v3.3.6
|
|
2
|
+
======
|
|
3
|
+
Improvements:
|
|
4
|
+
* don't allow negative IDs in SWC, except for the special parent == -1, for the first sample (#466)
|
|
5
|
+
* Bump HighFive to v2.7.1 (#449)
|
|
6
|
+
* Increase allowed section type to 19 (#462)
|
|
7
|
+
* Have warnings for incompatible soma-types (#458):
|
|
8
|
+
* SWC files should have soma that are either a point, or a set of stacked cylinders.
|
|
9
|
+
* H5 & ASC consider the soma to be a contour
|
|
10
|
+
* allow assignment of soma type for mutable soma
|
|
11
|
+
* add errors for soma access / write if wrong size
|
|
12
|
+
- ERROR_SOMA_INVALID_SINGLE_POINT
|
|
13
|
+
- ERROR_SOMA_INVALID_THREE_POINT_CYLINDER
|
|
14
|
+
- ERROR_SOMA_INVALID_CONTOUR
|
|
15
|
+
* increased test coverage and cleanup
|
|
16
|
+
|
|
1
17
|
v3.3.5
|
|
2
18
|
======
|
|
3
19
|
New Features:
|