1 
2 /****************************************************************************
3  * NCSA HDF                                                                 *
4  * Scientific Data Technologies                                             *
5  * National Center for Supercomputing Applications                          *
6  * University of Illinois at Urbana-Champaign                               *
7  * 605 E. Springfield, Champaign IL 61820                                   *
8  *                                                                          *
9  * For conditions of distribution and use, see the accompanying             *
10  * hdf/COPYING file.                                                        *
11  *                                                                          *
12  * Modified versions of H5LT for getting and setting attributes for open
13  * groups and leaves.
14  * F. Alted 2005/09/29
15  *                                                                          *
16  ****************************************************************************/
17 
18 
19 #include <hdf5.h>
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24 
25 
26 /*-------------------------------------------------------------------------
27  *
28  * Set & get attribute functions
29  *
30  *-------------------------------------------------------------------------
31  */
32 
33 herr_t H5ATTRset_attribute( hid_t obj_id,
34                             const char *attr_name,
35                             hid_t type_id,
36                             size_t rank,
37                             hsize_t *dims,
38                             const char *attr_data );
39 
40 herr_t H5ATTRset_attribute_string( hid_t obj_id,
41                                    const char *attr_name,
42                                    const char *attr_data,
43                                    hsize_t attr_size,
44                                    int cset );
45 
46 herr_t H5ATTRget_attribute( hid_t loc_id,
47                             const char *attr_name,
48                             hid_t type_id,
49                             void *data );
50 
51 hsize_t H5ATTRget_attribute_string( hid_t obj_id,
52                                     const char *attr_name,
53                                     char **data,
54                                     int *cset );
55 
56 hsize_t H5ATTRget_attribute_vlen_string_array( hid_t obj_id,
57                                                const char *attr_name,
58                                                char ***data,
59                                                int *cset );
60 
61 /*-------------------------------------------------------------------------
62  *
63  * Query attribute functions
64  *
65  *-------------------------------------------------------------------------
66  */
67 
68 
69 herr_t H5ATTRfind_attribute( hid_t loc_id,
70                              const char* attr_name );
71 
72 herr_t H5ATTRget_type_ndims( hid_t loc_id,
73                              const char *attr_name,
74                              hid_t *type_id,
75                              H5T_class_t *class_id,
76                              size_t *type_size,
77                              int *rank );
78 
79 herr_t H5ATTRget_dims( hid_t loc_id,
80                        const char *attr_name,
81                        hsize_t *dims );
82 
83 
84 #ifdef __cplusplus
85 }
86 #endif
87