Tôi đã tự hỏi nếu có một công cụ có thể sản xuất C HDF5 đọc và viết mã từ cấu trúc dữ liệu C.HDF5 Mã C thế hệ
Tôi muốn công cụ đó phân tích cú pháp tệp tiêu đề C và tạo mã đọc/ghi C HDF5 tương ứng.
Người ta có thể phân biệt trường hợp phân bổ tĩnh và phân bổ động. Lần đầu tiên, tôi chỉ quan tâm đến phân bổ tĩnh.
Ví dụ, tôi muốn tạo mã sau đây từ định nghĩa của cấu trúc sensor_t, có chứa một int và hai đôi. Mã được hiển thị là chuyển đổi trực tiếp của cấu trúc typedef C thành cấu trú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);
Tôi đã nhìn vào các trang web HDF mà không thành công
Tôi biết một số người đã cố gắng cho HDF4 với một kịch bản Perl
http://www.srl.caltech.edu/ACE/ASC/exhdfgen/index.htm