https://github.com/bluebrain/highfive
HighFive - Header-only C++ HDF5 interface
Science Score: 33.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 2 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
✓Committers with academic emails
21 of 67 committers (31.3%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.8%) to scientific vocabulary
Keywords from Contributors
Repository
HighFive - Header-only C++ HDF5 interface
Basic Info
- Host: GitHub
- Owner: BlueBrain
- License: bsl-1.0
- Language: C++
- Default Branch: master
- Homepage: https://bluebrain.github.io/HighFive/
- Size: 28.8 MB
Statistics
- Stars: 714
- Watchers: 21
- Forks: 161
- Open Issues: 47
- Releases: 20
Metadata Files
README.md
[!WARNING] The Blue Brain Project concluded in December 2024, so the HighFive development is ceased under the BlueBrain GitHub organization.
The development of HighFive will continue at: https://github.com/highfive-devs/highfive
HighFive - HDF5 header-only C++ Library
Documentation: https://bluebrain.github.io/HighFive/
Brief
HighFive is a modern header-only C++14 friendly interface for libhdf5.
HighFive supports STL vector/string, Boost::UBLAS, Boost::Multi-array and Xtensor. It handles C++ from/to HDF5 with automatic type mapping. HighFive does not require additional libraries (see dependencies).
It integrates nicely with other CMake projects by defining (and exporting) a HighFive target.
Design
- Simple C++-ish minimalist interface
- Only hard dependency is libhdf5
- Zero/low overhead, when possible
- RAII for opening/closing files, groups, datasets, etc.
- Written in C++14
Feature support
- create/read/write files, datasets, attributes, groups, dataspaces.
- automatic memory management / ref counting
- automatic conversion of
std::vectorand nestedstd::vectorfrom/to any dataset with basic types - automatic conversion of
std::stringto/from variable- or fixed-length string dataset - selection() / slice support
- parallel Read/Write operations from several nodes with Parallel HDF5
- Advanced types: Compound, Enum, Arrays of Fixed-length strings, References
- half-precision (16-bit) floating-point datasets
std::bytein C++17 mode (with-DCMAKE_CXX_STANDARD=17or higher)- etc... (see ChangeLog)
Dependencies
- HDF5 or pHDF5, including headers
- boost (optional)
- eigen3 (optional)
- xtensor (optional)
- half (optional)
The releases for versions 2.x.y and two prereleases of v3 can be found at: * https://github.com/BlueBrain/HighFive/releases * https://zenodo.org/doi/10.5281/zenodo.10679422
The state of HighFive immediately before preparing it for archival is: * https://github.com/BlueBrain/HighFive/tree/v3.0.0-beta2
All future development and new releases can be found at: * https://github.com/highfive-devs/highfive
Example
```c++ using namespace HighFive;
File file("foo.h5", File::Truncate);
{
std::vector
{ auto dataset = file.getDataSet("grp/data");
// Read back, automatically allocating:
auto data = dataset.read<std::vector<int>>();
// Alternatively, if `data` has the correct
// size, without reallocation:
dataset.read(data);
} ```
Funding & Acknowledgment
The 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.
HighFive releases are uploaded to Zenodo. If you wish to cite HighFive in a scientific publication you can use the DOIs for the Zenodo records.
Copyright © 2015-2024 Blue Brain Project/EPFL
License
Boost Software License 1.0
Owner
- Name: The Blue Brain Project
- Login: BlueBrain
- Kind: organization
- Email: bbp.opensource@epfl.ch
- Location: Geneva, Switzerland
- Website: https://portal.bluebrain.epfl.ch/
- Repositories: 226
- Profile: https://github.com/BlueBrain
Open Source Software produced and used by the Blue Brain Project
GitHub Events
Total
- Create event: 19
- Release event: 2
- Issues event: 5
- Watch event: 41
- Delete event: 20
- Issue comment event: 33
- Push event: 62
- Pull request review comment event: 3
- Pull request review event: 21
- Pull request event: 37
- Fork event: 4
Last Year
- Create event: 19
- Release event: 2
- Issues event: 5
- Watch event: 41
- Delete event: 20
- Issue comment event: 33
- Push event: 62
- Pull request review comment event: 3
- Pull request review event: 21
- Pull request event: 37
- Fork event: 4
Committers
Last synced: over 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| Luc Grosheintz | l****z@g****m | 221 |
| Nicolas Cornu | n****u@e****h | 95 |
| Adrien Devresse | a****e@e****h | 83 |
| Fernando Pereira | f****e@g****m | 33 |
| Tom de Geus | t****s | 29 |
| Juan Hernando Vieites | j****o@e****h | 17 |
| Matthias Wolf | m****f@e****h | 17 |
| Omar Awile | o****e@e****h | 13 |
| Henry Fredrick Schreiner | h****r@c****h | 11 |
| github-actions[bot] | 4****] | 9 |
| Tristan Carel | t****l@e****h | 8 |
| contre | r****c@c****s | 3 |
| Wolf Vollprecht | w****t@g****m | 3 |
| Torsten Reuschel | 8****n | 3 |
| Joseph O'Doherty | j****o@n****m | 3 |
| Tristan Carel | t****l@g****m | 3 |
| Alexandru Săvulescu | a****u@e****h | 3 |
| Ali Can Demiralp | d****i@g****m | 3 |
| JaWSnl | J****l | 3 |
| Michael V. DePalatis | m****e@d****t | 2 |
| Mario Emmenlauer | m****o@e****e | 2 |
| Kerim | k****v@m****u | 2 |
| Sergio | s****z@e****h | 2 |
| Dekken | p****n@g****m | 2 |
| Tobias Klauser | t****r@d****h | 2 |
| WeinaJi | w****i@e****h | 1 |
| Tom Vander Aa | T****a@g****m | 1 |
| Tino Wagner | i****h@t****m | 1 |
| Mathieu Bernard | m****d@i****r | 1 |
| Jonas Karlsson | j****n@e****h | 1 |
| and 37 more... | ||
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 119
- Total pull requests: 210
- Average time to close issues: 10 months
- Average time to close pull requests: 17 days
- Total issue authors: 53
- Total pull request authors: 17
- Average comments per issue: 3.5
- Average comments per pull request: 1.48
- Merged pull requests: 194
- Bot issues: 0
- Bot pull requests: 5
Past Year
- Issues: 5
- Pull requests: 17
- Average time to close issues: 4 days
- Average time to close pull requests: 6 days
- Issue authors: 4
- Pull request authors: 3
- Average comments per issue: 2.8
- Average comments per pull request: 1.06
- Merged pull requests: 17
- Bot issues: 0
- Bot pull requests: 1
Top Authors
Issue Authors
- 1uc (49)
- alkino (6)
- tdegeus (5)
- jjcasmar (5)
- VictorEijkhout (4)
- emmenlau (3)
- PhilipDeegan (2)
- nickanthony-dgl (2)
- aminiussi (2)
- ferdonline (2)
- L0ric0 (2)
- kerim371 (2)
- ohm314 (2)
- antonysigma (2)
- ccorti87 (1)
Pull Request Authors
- 1uc (248)
- alkino (32)
- github-actions[bot] (8)
- ferdonline (3)
- Quark-X10 (3)
- unbtorsten (3)
- tpongo-afk (2)
- LauZanMo (2)
- ischoegl (2)
- alexsavulescu (1)
- luohancfd (1)
- WeinaJi (1)
- nathan-mxr (1)
- HunterBelanger (1)
- matz-e (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v2 composite
- actions/checkout v3 composite
- mamba-org/provision-with-micromamba main composite
- mpi4py/setup-mpi v1 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- codecov/codecov-action v3 composite
- actions/checkout v3 composite
- crazy-max/ghaction-github-pages v2 composite
- mamba-org/provision-with-micromamba main composite