This repository contains buildable skeletons for HDF5 library extensions:
- HDF5 filters
- terminal and non-terminal virtual file drivers (VFDs)
- terminal and non-terminal virtual object layer (VOL) connectors
Each extension family has basic, intermediate, and advanced skeletons.
The skeletons are intentionally small and heavily commented so they can be
copied into a real project and customized.
cmake -S . -B build
cmake --build build
ctest --test-dir build --output-on-failureThe examples are registered as CTest tests. They set HDF5_PLUGIN_PATH to the
build tree's plugin directory and print trace messages from extension callbacks.
They also compile and statically register the same skeleton source so the test
suite works with HDF5 builds that expose plugin headers but were built without
dynamic plugin loading support.
skeletons/
filters/
basic/
intermediate/
advanced/
vfds/
terminal/
basic/
intermediate/
advanced/
nonterminal/
basic/
intermediate/
advanced/
vols/
terminal/
basic/
intermediate/
advanced/
nonterminal/
basic/
intermediate/
advanced/
Each skeleton directory contains a local CMakeLists.txt, public header,
implementation source, and a runnable example.
Start with docs/choosing-a-skeleton.md if you are not sure which extension
point to use.