12-15-2004 08:30 AM
12-15-2004 09:11 AM
12-16-2004
07:46 AM
- last edited on
10-19-2025
01:39 PM
by
Content Cleaner
Chris,
Option 1 - HDF5
I have found HDF5 the best method for saving configuration data.
HDF5 is a binary, hierarchical file format, with a lot of built-in features such as compression and 64-bit file pointers. As such, it is fast, allows for easy backwards compatibility, and you can put anything into it. It also allows circular references (it is actually a directed graph, not a tree), so, for example, you can reference data from configurations and configurations from data. I maintained the NI-SCOPE Soft Front Panel configuration file with this method through many years and configuration changes.
Now for the bad news. HDF5 is very low level. Expect to take a week to get comfortable with it. HDF5 is not threadsafe, so you must ensure that you never call the DLL from more than one place at once. The posted code uses version 1.4.4 of HDF5, while the latest version is 1.6.3.
Option 2 - Configuration file VIs
If your configurations are fairly simple and have no real hierarchy, consider the configuration file VIs found on the file palette. These store your data in a Windows style INI file, so it is easily human readable. They are not as fast as the HDF5 solution, and have only a single layer of hierarchy, but they are written in pure G, so are very portable.
Good luck. Let us know how you make out.