1 module hdf5.H5Dpublic;
2 
3 import core.stdc.config;
4 
5 import hdf5.H5Ipublic;
6 import hdf5.H5public;
7 
8 extern (C):
9 
10 //alias H5D_layout_t H5D_layout_t;
11 //alias H5D_chunk_index_t H5D_chunk_index_t;
12 //alias H5D_alloc_time_t H5D_alloc_time_t;
13 //alias H5D_space_status_t H5D_space_status_t;
14 //alias H5D_fill_time_t H5D_fill_time_t;
15 //alias H5D_fill_value_t H5D_fill_value_t;
16 //alias H5D_vds_view_t H5D_vds_view_t;
17 alias int function (c_long, ulong*, void*) H5D_append_cb_t;
18 alias int function (void*, c_long, uint, const(ulong)*, void*) H5D_operator_t;
19 alias int function (const(void*)*, c_ulong*, void*) H5D_scatter_func_t;
20 alias int function (const(void)*, c_ulong, void*) H5D_gather_func_t;
21 
22 enum H5D_layout_t
23 {
24     H5D_LAYOUT_ERROR = -1,
25     H5D_COMPACT = 0,
26     H5D_CONTIGUOUS = 1,
27     H5D_CHUNKED = 2,
28     H5D_VIRTUAL = 3,
29     H5D_NLAYOUTS = 4
30 }
31 
32 enum H5D_chunk_index_t
33 {
34     H5D_CHUNK_IDX_BTREE = 0,
35     H5D_CHUNK_IDX_SINGLE = 1,
36     H5D_CHUNK_IDX_NONE = 2,
37     H5D_CHUNK_IDX_FARRAY = 3,
38     H5D_CHUNK_IDX_EARRAY = 4,
39     H5D_CHUNK_IDX_BT2 = 5,
40     H5D_CHUNK_IDX_NTYPES = 6
41 }
42 
43 enum H5D_alloc_time_t
44 {
45     H5D_ALLOC_TIME_ERROR = -1,
46     H5D_ALLOC_TIME_DEFAULT = 0,
47     H5D_ALLOC_TIME_EARLY = 1,
48     H5D_ALLOC_TIME_LATE = 2,
49     H5D_ALLOC_TIME_INCR = 3
50 }
51 
52 enum H5D_space_status_t
53 {
54     H5D_SPACE_STATUS_ERROR = -1,
55     H5D_SPACE_STATUS_NOT_ALLOCATED = 0,
56     H5D_SPACE_STATUS_PART_ALLOCATED = 1,
57     H5D_SPACE_STATUS_ALLOCATED = 2
58 }
59 
60 enum H5D_fill_time_t
61 {
62     H5D_FILL_TIME_ERROR = -1,
63     H5D_FILL_TIME_ALLOC = 0,
64     H5D_FILL_TIME_NEVER = 1,
65     H5D_FILL_TIME_IFSET = 2
66 }
67 
68 enum H5D_fill_value_t
69 {
70     H5D_FILL_VALUE_ERROR = -1,
71     H5D_FILL_VALUE_UNDEFINED = 0,
72     H5D_FILL_VALUE_DEFAULT = 1,
73     H5D_FILL_VALUE_USER_DEFINED = 2
74 }
75 
76 enum H5D_vds_view_t
77 {
78     H5D_VDS_ERROR = -1,
79     H5D_VDS_FIRST_MISSING = 0,
80     H5D_VDS_LAST_AVAILABLE = 1
81 }
82 
83 hid_t H5Dcreate2 (hid_t loc_id, const(char)* name, hid_t type_id, hid_t space_id, hid_t lcpl_id, hid_t dcpl_id, hid_t dapl_id);
84 hid_t H5Dcreate_anon (hid_t file_id, hid_t type_id, hid_t space_id, hid_t plist_id, hid_t dapl_id);
85 hid_t H5Dopen2 (hid_t file_id, const(char)* name, hid_t dapl_id);
86 herr_t H5Dclose (hid_t dset_id);
87 hid_t H5Dget_space (hid_t dset_id);
88 herr_t H5Dget_space_status (hid_t dset_id, H5D_space_status_t* allocation);
89 hid_t H5Dget_type (hid_t dset_id);
90 hid_t H5Dget_create_plist (hid_t dset_id);
91 hid_t H5Dget_access_plist (hid_t dset_id);
92 hsize_t H5Dget_storage_size (hid_t dset_id);
93 haddr_t H5Dget_offset (hid_t dset_id);
94 herr_t H5Dread (hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id, hid_t file_space_id, hid_t plist_id, void* buf);
95 herr_t H5Dwrite (hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id, hid_t file_space_id, hid_t plist_id, const(void)* buf);
96 herr_t H5Diterate (void* buf, hid_t type_id, hid_t space_id, H5D_operator_t op, void* operator_data);
97 herr_t H5Dvlen_reclaim (hid_t type_id, hid_t space_id, hid_t plist_id, void* buf);
98 herr_t H5Dvlen_get_buf_size (hid_t dataset_id, hid_t type_id, hid_t space_id, hsize_t* size);
99 herr_t H5Dfill (const(void)* fill, hid_t fill_type, void* buf, hid_t buf_type, hid_t space);
100 herr_t H5Dset_extent (hid_t dset_id, const hsize_t *size);
101 herr_t H5Dflush (hid_t dset_id);
102 herr_t H5Drefresh (hid_t dset_id);
103 herr_t H5Dscatter (H5D_scatter_func_t op, void* op_data, hid_t type_id, hid_t dst_space_id, void* dst_buf);
104 herr_t H5Dgather (hid_t src_space_id, const(void)* src_buf, hid_t type_id, size_t dst_buf_size, void* dst_buf, H5D_gather_func_t op, void* op_data);
105 herr_t H5Ddebug (hid_t dset_id);
106 herr_t H5Dformat_convert (hid_t dset_id);
107 herr_t H5Dget_chunk_index_type (hid_t did, H5D_chunk_index_t* idx_type);
108 hid_t H5Dcreate1 (hid_t file_id, const(char)* name, hid_t type_id, hid_t space_id, hid_t dcpl_id);
109 hid_t H5Dopen1 (hid_t file_id, const(char)* name);
110 //herr_t H5Dextend (hid_t dset_id, <unimplemented> size);