{"id":13686462,"url":"https://github.com/BlueBrain/HighFive","last_synced_at":"2025-05-01T09:31:39.609Z","repository":{"id":38361748,"uuid":"47755262","full_name":"BlueBrain/HighFive","owner":"BlueBrain","description":"HighFive - Header-only C++ HDF5 interface","archived":false,"fork":false,"pushed_at":"2024-04-08T07:59:43.000Z","size":30106,"stargazers_count":628,"open_issues_count":57,"forks_count":156,"subscribers_count":25,"default_branch":"master","last_synced_at":"2024-04-13T23:06:52.667Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://bluebrain.github.io/HighFive/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BlueBrain.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.txt","dei":null}},"created_at":"2015-12-10T10:38:45.000Z","updated_at":"2024-08-20T12:00:31.464Z","dependencies_parsed_at":"2023-10-20T18:19:08.229Z","dependency_job_id":"37cb5f68-40bb-4985-a3d7-7841da444f38","html_url":"https://github.com/BlueBrain/HighFive","commit_stats":null,"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2FHighFive","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2FHighFive/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2FHighFive/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2FHighFive/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BlueBrain","download_url":"https://codeload.github.com/BlueBrain/HighFive/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224250216,"owners_count":17280522,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T15:00:32.787Z","updated_at":"2025-05-01T09:31:39.603Z","avatar_url":"https://github.com/BlueBrain.png","language":"C++","funding_links":[],"categories":["C++"],"sub_categories":[],"readme":"\u003e [!WARNING]\n\u003e The Blue Brain Project concluded in December 2024, so the HighFive development is ceased under the BlueBrain GitHub organization.\n\u003e\n\u003e The development of HighFive will continue at:\n\u003e   https://github.com/highfive-devs/highfive\n\n# HighFive - HDF5 header-only C++ Library\n\nDocumentation: https://bluebrain.github.io/HighFive/\n\n## Brief\n\nHighFive is a modern header-only C++14 friendly interface for libhdf5.\n\nHighFive supports STL vector/string, Boost::UBLAS, Boost::Multi-array and Xtensor. It handles C++ from/to HDF5 with automatic type mapping.\nHighFive does not require additional libraries (see dependencies).\n\nIt integrates nicely with other CMake projects by defining (and exporting) a HighFive target.\n\n### Design\n- Simple C++-ish minimalist interface\n- Only hard dependency is libhdf5\n- Zero/low overhead, when possible\n- RAII for opening/closing files, groups, datasets, etc.\n- Written in C++14\n\n### Feature support\n- create/read/write files, datasets, attributes, groups, dataspaces.\n- automatic memory management / ref counting\n- automatic conversion of `std::vector` and nested `std::vector` from/to any dataset with basic types\n- automatic conversion of `std::string` to/from variable- or fixed-length string dataset\n- selection() / slice support\n- parallel Read/Write operations from several nodes with Parallel HDF5\n- Advanced types: Compound, Enum, Arrays of Fixed-length strings, References\n- half-precision (16-bit) floating-point datasets\n- `std::byte` in C++17 mode (with `-DCMAKE_CXX_STANDARD=17` or higher)\n- etc... (see [ChangeLog](./CHANGELOG.md))\n\n### Dependencies\n- HDF5 or pHDF5, including headers\n- boost (optional)\n- eigen3 (optional)\n- xtensor (optional)\n- half (optional)\n\nThe releases for versions 2.x.y and two prereleases of v3 can be found at:\n* https://github.com/BlueBrain/HighFive/releases\n* https://zenodo.org/doi/10.5281/zenodo.10679422\n\nThe state of HighFive immediately before preparing it for archival is:\n* https://github.com/BlueBrain/HighFive/tree/v3.0.0-beta2\n\nAll future development and new releases can be found at:\n* https://github.com/highfive-devs/highfive\n\n## Example\n\n```c++\nusing namespace HighFive;\n\nFile file(\"foo.h5\", File::Truncate);\n\n{\n    std::vector\u003cint\u003e data(50, 1);\n    file.createDataSet(\"grp/data\", data);\n}\n\n{\n    auto dataset = file.getDataSet(\"grp/data\");\n\n    // Read back, automatically allocating:\n    auto data = dataset.read\u003cstd::vector\u003cint\u003e\u003e();\n\n    // Alternatively, if `data` has the correct\n    // size, without reallocation:\n    dataset.read(data);\n}\n```\n\n# Funding \u0026 Acknowledgment\n\nThe development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government's ETH Board of the Swiss Federal Institutes of Technology.\n\nHighFive releases are uploaded to Zenodo. If you wish to cite HighFive in a\nscientific publication you can use the DOIs for the\n[Zenodo records](https://zenodo.org/doi/10.5281/zenodo.10679422).\n\nCopyright © 2015-2024 Blue Brain Project/EPFL\n\n\n### License\n\nBoost Software License 1.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBlueBrain%2FHighFive","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FBlueBrain%2FHighFive","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBlueBrain%2FHighFive/lists"}