diff options
author | Raymond Lu <songyulu@hdfgroup.org> | 2002-08-20 16:18:02 (GMT) |
---|---|---|
committer | Raymond Lu <songyulu@hdfgroup.org> | 2002-08-20 16:18:02 (GMT) |
commit | 29da4951f8aa861cc972c48fef03334c47ff0136 (patch) | |
tree | 07183a9df7ec5d173943197c69c00b2a9f199470 /src/H5Oprivate.h | |
parent | 45a34cf267b823c6f1b62cce215b38546c18a031 (diff) | |
download | hdf5-29da4951f8aa861cc972c48fef03334c47ff0136.zip hdf5-29da4951f8aa861cc972c48fef03334c47ff0136.tar.gz hdf5-29da4951f8aa861cc972c48fef03334c47ff0136.tar.bz2 |
[svn-r5879]
Purpose:
Design for compact dataset
Description:
Compact dataset is stored in the header message for dataset layout.
Platforms tested:
arabica, eirene.
Diffstat (limited to 'src/H5Oprivate.h')
-rw-r--r-- | src/H5Oprivate.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/H5Oprivate.h b/src/H5Oprivate.h index 786ae69..8c66bcc 100644 --- a/src/H5Oprivate.h +++ b/src/H5Oprivate.h @@ -38,6 +38,7 @@ #define H5O_ALIGN(X) (8*(((X)+8-1)/8)) #define H5O_MIN_SIZE H5O_ALIGN(32) /*min obj header data size */ +#define H5O_MAX_SIZE 65536 /*max obj header data size */ #define H5O_NMESGS 32 /*initial number of messages */ #define H5O_NCHUNKS 8 /*initial number of chunks */ #define H5O_NEW_MESG (-1) /*new message */ @@ -165,7 +166,6 @@ typedef struct H5O_fill_new_t { htri_t fill_defined; /* whether fill value is defined */ } H5O_fill_new_t; - /* * External File List Message */ @@ -197,9 +197,12 @@ __DLLVAR__ const H5O_class_t H5O_LAYOUT[1]; typedef struct H5O_layout_t { int type; /*type of layout, H5D_layout_t */ - haddr_t addr; /*file address of data or B-tree */ + haddr_t addr; /*file address of data or B-tree */ unsigned ndims; /*num dimensions in stored data */ - hsize_t dim[H5O_LAYOUT_NDIMS]; /*size of data or chunk */ + hsize_t dim[H5O_LAYOUT_NDIMS]; /*size of data or chunk in bytes */ + hbool_t dirty; /*dirty flag for compact dataset */ + size_t size; /*size of compact dataset in bytes */ + void *buf; /*buffer for compact dataset */ } H5O_layout_t; /* @@ -312,6 +315,9 @@ __DLL__ herr_t H5O_share(H5F_t *f, const H5O_class_t *type, const void *mesg, __DLL__ herr_t H5O_debug(H5F_t *f, haddr_t addr, FILE * stream, int indent, int fwidth); +/* Layout operators */ +__DLL__ size_t H5O_layout_meta_size(H5F_t *f, const void *_mesg); + /* EFL operators */ __DLL__ hsize_t H5O_efl_total_size(H5O_efl_t *efl); __DLL__ herr_t H5O_efl_read(H5F_t *f, const H5O_efl_t *efl, haddr_t addr, |