我想知道是否有一种工具能够从 C 数据结构生成 C HDF5 读写代码。
我希望该工具能够解析 C 头文件并生成相应的 C HDF5 读/写代码。
可以区分静态分配和动态分配的情况。第一次,我只对静态分配感兴趣。
例如,我想从结构体 sensor_t 的定义中生成以下代码,其中包含一个 int 和两个 double。显示的代码是将 typedef C 结构直接转换为 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);
我看过hdf网站没有成功
我知道有些人用 Perl 脚本尝试过 HDF4