diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2007-03-04 04:28:09 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2007-03-04 04:28:09 (GMT) |
commit | 44f312b183305cf37295595bfd3f5df40fc637be (patch) | |
tree | 4d2fe91e2e756fc157d99047a10ea2ce2e755b2f /src/H5Opublic.h | |
parent | caa6d5dabc47494efd9930c2c1f043e357347328 (diff) | |
download | hdf5-44f312b183305cf37295595bfd3f5df40fc637be.zip hdf5-44f312b183305cf37295595bfd3f5df40fc637be.tar.gz hdf5-44f312b183305cf37295595bfd3f5df40fc637be.tar.bz2 |
[svn-r13449] Description:
Add object creation property (H5P[s|g]et_obj_track_times) to disable
storing timestamps on objects, which makes the object's header size smaller.
Also, added object header status flags to H5O_info_t struct (for
H5Oget_info/H5Oget_info_by_idx) and cleaned up other field names in the
struct as well.
Tested on:
FreeBSD/32 6.2 (duty)
Mac OS X/32 10.4.8 (amazon)
Diffstat (limited to 'src/H5Opublic.h')
-rw-r--r-- | src/H5Opublic.h | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/src/H5Opublic.h b/src/H5Opublic.h index 6395eec..0e64a93 100644 --- a/src/H5Opublic.h +++ b/src/H5Opublic.h @@ -48,7 +48,7 @@ /* Flags for shared message indexes. * Pass these flags in using the mesg_type_flags parameter in * H5P_set_shared_mesg_index. - * (Developers: These flags correspond to object header message type_ids, + * (Developers: These flags correspond to object header message type IDs, * but we need to assign each kind of message to a different bit so that * one index can hold multiple types.) */ @@ -60,6 +60,11 @@ #define H5O_MESG_ATTR_FLAG 0x0010 /* Attribute Message. */ #define H5O_MESG_ALL_FLAG (H5O_MESG_SDSPACE_FLAG | H5O_MESG_DTYPE_FLAG | H5O_MESG_FILL_FLAG | H5O_MESG_PLINE_FLAG | H5O_MESG_ATTR_FLAG) +/* Object header status flag definitions */ +#define H5O_HDR_ATTR_CRT_ORDER_TRACKED 0x01 /* Attribute creation order is tracked */ +#define H5O_HDR_ATTR_CRT_ORDER_INDEXED 0x02 /* Attribute creation order has index */ +#define H5O_HDR_STORE_TIMES 0x04 /* Store access, modification, change & birth times for object */ + /* Maximum shared message values. Number of indexes is 8 to allow room to add * new types of messages. */ @@ -100,12 +105,17 @@ typedef struct H5O_info_t { unsigned version; /* Version number of header format in file */ unsigned nmesgs; /* Number of object header messages */ unsigned nchunks; /* Number of object header chunks */ - hsize_t hdr_size; /* Total size of object header in file */ - hsize_t meta_space; /* Space within header for object header metadata information */ - hsize_t mesg_space; /* Space within header for actual message information */ - hsize_t free_space; /* Free space within object header */ - uint64_t msg_present; /* Flags to indicate presence of message type in header */ - uint64_t msg_shared; /* Flags to indicate message type is shared in header */ + unsigned flags; /* Object header status flags */ + struct { + hsize_t total; /* Total space for storing object header in file */ + hsize_t meta; /* Space within header for object header metadata information */ + hsize_t mesg; /* Space within header for actual message information */ + hsize_t free; /* Free space within object header */ + } space; + struct { + uint64_t present; /* Flags to indicate presence of message type in header */ + uint64_t shared; /* Flags to indicate message type is shared in header */ + } mesg; } hdr; hsize_t meta_size; /* Size of additional metadata for an object */ /* (B-tree & heap for groups, B-tree for chunked dataset, etc.) */ |