1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
|
#ifndef _HELPER_STRUCTS_H
#define _HELPER_STRUCTS_H
typedef struct H5F_info1_helper_t {
hsize_t hdr_size;
H5_ih_info_t msgs_info;
} H5F_info1_helper_t;
typedef struct H5O_hdr_info_helper_space_t {
hsize_t total;
hsize_t meta;
hsize_t mesg;
hsize_t free;
} H5O_hdr_info_helper_space_t;
typedef struct H5O_hdr_info_helper_msg_t {
uint64_t present;
uint64_t shared;
} H5O_hdr_info_helper_msg_t;
typedef struct H5O_info_helper_t {
H5_ih_info_t obj;
H5_ih_info_t attr;
} H5O_info_helper_t;
typedef union H5L_info_helper_t {
haddr_t address;
size_t val_size;
} H5L_info_helper_t;
typedef struct H5F_info2_super_t {
unsigned version;
hsize_t super_size;
hsize_t super_ext_size;
} H5F_info2_super_t;
typedef struct H5F_info2_free_t {
unsigned version;
hsize_t meta_size;
hsize_t tot_space;
} H5F_info2_free_t;
typedef struct H5F_info2_sohm_t {
unsigned version;
hsize_t hdr_size;
H5_ih_info_t msgs_info;
} H5F_info2_sohm_t;
// More structs to help with ls functionality
typedef struct H5D_info_t {
int rank;
char* dims;
char* maxdims;
H5T_class_t type_class;
H5S_class_t space_class;
} H5D_info_t;
// and now for the info structs a version that stores the information to be gathered
typedef struct H5ls_info_t {
char* name;
int link_success;
H5L_info_t link;
int obj_type_success;
H5I_type_t obj_type;
int num_attrs;
int group_success;
H5G_info_t group;
int dataset_success;
H5D_info_t dataset;
int type_success;
H5T_class_t committed_type;
} H5ls_info_t;
#endif
|