blob: 02247253035ca41666af263d09462c6c3e81425f (
plain)
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
|
/****************************************************************************
* NCSA HDF *
* Software Development Group *
* National Center for Supercomputing Applications *
* University of Illinois at Urbana-Champaign *
* 605 E. Springfield, Champaign IL 61820 *
* *
* For conditions of distribution and use, see the accompanying *
* hdf/COPYING file. *
* *
****************************************************************************/
/* $Id$ */
/*
* This file contains private information about the H5T module
*/
#ifndef H5TPRIVATE_H
#define H5TPRIVATE_H
#include "H5Tproto.h"
#define H5T_RESERVED_ATOMS 8
/* Structure for storing information about a field in a compound datatype */
typedef struct {
char *name; /* Name of the field */
uintn name_off; /* Offset of name in global small-data heap */
uintn struct_off; /* Offset of field within structure */
h5_atomic_type_t dt; /* Datatype of the field */
hatom_t dim_id; /* dimensionality ID of the field */
} h5_field_info_t;
/* Structure for storing information about a compound datatype */
typedef struct {
uintn n; /* Number of fields */
uintn mem_size; /* Size of the compound structure in memory */
uintn disk_size; /* Size of the compound structure on disk */
h5_field_info_t *flist; /* List of fields in the compound object */
} h5_compound_info_t;
/* Structure for storing information any datatype */
typedef struct {
h5_atomic_type_t dt; /* Base type of this object */
char *name; /* Name of datatype */
h5_compound_info_t *ci; /* Information for compound datatypes */
} h5_datatype_t;
#endif /* H5TPRIVATE_H */
|