Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dedicated backend class #671

Open
gicmo opened this issue Apr 19, 2017 · 3 comments
Open

Dedicated backend class #671

gicmo opened this issue Apr 19, 2017 · 3 comments
Labels

Comments

@gicmo
Copy link
Member

gicmo commented Apr 19, 2017

Currently we don't have a dedicated class representing a backend (filesystem, hdf5, etcpp). It might be nice to have such a thing for various reason:

  • Query backend specific information (default file ending, name, version, support for feature xyz)
  • Tweak backend specific defaults (compression level, chunk size)
  • specialized open method:
    Currently the only way to open a file is via File::open(). If you now want to open a file with backend specific flags (compression mode and level) we could either add all these options (as generic property key-value pairs?) or we could have a specialized open method with all the backend specific options, i.e. H5Backend::open("file.hd5", <Chunksize>, <Compression>).
@gicmo gicmo added the question label Apr 19, 2017
@gicmo
Copy link
Member Author

gicmo commented May 5, 2017

Could also be used to query backend file format version, and have checks to see if a given file can be opened in what mode (read, write) or not at all. Maybe could also be used to convert files to newer versions.

@achilleas-k
Copy link
Member

I wonder if it would be useful to convert files between backends. For instance open an HDF5 file and save everything to the filesystem.

@jgrewe
Copy link
Member

jgrewe commented May 5, 2017

yes, definitely, cf #518

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants