Me preguntaba si había una herramienta capaz de producir código de lectura y escritura C HDF5 a partir de la estructura de datos C.HDF5 C Generación de código
Me gustaría que esa herramienta analice un archivo de encabezado C y genere el código de lectura/escritura C HDF5 correspondiente.
Se puede distinguir el caso de la asignación estática y la asignación dinámica. En una primera oportunidad, solo me interesaría la asignación estática.
Por ejemplo, me gustaría generar el siguiente código a partir de la definición de la estructura sensor_t, que contiene un int y dos dobles. El código que se muestra es la conversión directa de una estructura tipodef C a una estructura C HDF5.
typedef struct {
int serial_no;
double temperature;
double pressure;
} sensor_t;
#include "hdf5.h"
hid_t memtype;
herr_t status;
memtype = H5Tcreate (H5T_COMPOUND, sizeof (sensor_t));
status = H5Tinsert (memtype, "serial_no", HOFFSET (sensor_t, serial_no), H5T_NATIVE_INT);
status = H5Tinsert (memtype, "temperature", HOFFSET (sensor_t, temperature), H5T_NATIVE_DOUBLE);
status = H5Tinsert (memtype, "pressure", HOFFSET (sensor_t, pressure), H5T_NATIVE_DOUBLE);
sensor_t wdata[1];
status = H5Dread (dset, memtype, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata);
status = H5Dwrite (dset, memtype, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata);
He mirado en la página web HDF sin éxito
Sé que algunos han tratado de HDF4 con un script en Perl
http://www.srl.caltech.edu/ACE/ASC/exhdfgen/index.htm