Open
Description
The current situation
- all support for 3rd party libraries (including h5py or even the C++ standard library) lives in the source directories of the main library
- some of the code is even included in header files required by the core library
- the header files with the support data structures are included in the default
hdf5.hpp
file and thus always active without providing the user a chance to remove them
Suggested fixes
- create a new hierarchy of directories below
src/h5cpp/support
- each supported library gets s subdirectory there. For instance:
src/h5cpp/support/stl
orsrc/h5cpp/support/h5py
- the same structure should be provided for the tests below
test/support
Users who want to have support for STL data types can than easily add
#include <h5cpp/support/stl/vector.hpp>
#include <h5cpp/support/stl/string.hpp>
This would give the user a way to provide its own std::vector
integration if he needs this.
How to get there
- I would first start with moving the existing code and test the new structure
- create a simple manual for developers how to integrate 3rd party support code
Once this is done (I hope during Christmas) it would be nice if others join in providing support for other 3rd party libraries.
Metadata
Metadata
Assignees
Labels
No labels