1 /* Copyright 2018-2018 University Corporation for Atmospheric
2    Research/Unidata. */
3 /**
4  * @file
5  * @internal Includes prototypes for libhdf5 dispatch functions.
6  *
7  * @author Ed Hartnett
8  */
9 
10 #ifndef _HDF5DISPATCH_H
11 #define _HDF5DISPATCH_H
12 
13 #include "config.h"
14 #include <stddef.h> /* size_t, ptrdiff_t */
15 #include "ncdispatch.h"
16 
17 #if defined(__cplusplus)
18 extern "C" {
19 #endif
20 
21     EXTERNL int
22     NC4_HDF5_inq_att(int ncid, int varid, const char *name,
23                      nc_type *xtypep, size_t *lenp);
24 
25     EXTERNL int
26     NC4_HDF5_inq_attid(int ncid, int varid, const char *name, int *idp);
27 
28     EXTERNL int
29     NC4_HDF5_inq_attname(int ncid, int varid, int attnum, char *name);
30 
31     EXTERNL int
32     NC4_HDF5_rename_att(int ncid, int varid, const char *name, const char *newname);
33 
34     EXTERNL int
35     NC4_HDF5_del_att(int ncid, int varid, const char*);
36 
37     EXTERNL int
38     NC4_HDF5_put_att(int ncid, int varid, const char *name, nc_type datatype,
39                      size_t len, const void *value, nc_type);
40 
41     EXTERNL int
42     NC4_HDF5_get_att(int ncid, int varid, const char *name, void *value, nc_type);
43 
44     EXTERNL int
45     NC4_HDF5_inq_var_all(int ncid, int varid, char *name, nc_type *xtypep,
46                          int *ndimsp, int *dimidsp, int *nattsp,
47                          int *shufflep, int *deflatep, int *deflate_levelp,
48                          int *fletcher32p, int *contiguousp, size_t *chunksizesp,
49                          int *no_fill, void *fill_valuep, int *endiannessp,
50                          unsigned int *idp, size_t *nparamsp, unsigned int *params);
51 
52     EXTERNL int
53     NC4_HDF5_set_var_chunk_cache(int ncid, int varid, size_t size, size_t nelems,
54                                  float preemption);
55 
56     EXTERNL int
57     HDF5_def_dim(int ncid, const char *name, size_t len, int *idp);
58 
59     EXTERNL int
60     HDF5_inq_dim(int ncid, int dimid, char *name, size_t *lenp);
61 
62     EXTERNL int
63     HDF5_rename_dim(int ncid, int dimid, const char *name);
64 
65 #if defined(__cplusplus)
66 }
67 #endif
68 
69 #endif /*_HDF5DISPATCH_H */
70