diff options
author | Robb Matzke <matzke@llnl.gov> | 1998-01-07 17:14:26 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1998-01-07 17:14:26 (GMT) |
commit | 159fa7a232e1961940b83f035f4c27338d26337e (patch) | |
tree | b7344e9cfaadbbec3bc3a0576df8c264debb8239 /src/H5Oprivate.h | |
parent | 1d17defdfc977c063c7ff20b5868bef9a76e5d9a (diff) | |
download | hdf5-159fa7a232e1961940b83f035f4c27338d26337e.zip hdf5-159fa7a232e1961940b83f035f4c27338d26337e.tar.gz hdf5-159fa7a232e1961940b83f035f4c27338d26337e.tar.bz2 |
[svn-r151] Changes since 19980105
----------------------
./config/freebsd2.2.1
./config/linux
Added -UH5O_DEBUG to the debug flags. Turn this on to get
lots of lines on stderr to show what objects are opened and
closed.
./src/H5C.o
./src/H5Cpublic.h
./test/dsets.c
./test/tfile.c
Split H5Cget_prop() and H5Cset_prop() into functions for each
property.
./src/H5D.c
./src/H5Dpublic.h
./src/H5Gstab.c
./src/H5O.c
./src/H5Ocont.c
./src/H5Ocstore.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Oistore.c
./src/H5Oname.c
./src/H5Onull.c
./src/H5Oprivate.h
./src/H5Osdspace.c
./src/H5Ostab.c
./src/H5P.c
./src/istore.c
./test/tohdr.c
Object header functions now understand constant
vs. non-constant messages.
./src/H5F.c
./src/H5Fprivate.h
The file OID can be closed before other OID's.
./src/H5Flow.c
H5F_addr_defined() is a macro in this file.
./src/H5G.c
./src/H5Gpublic.h
./test/tstab.c
A current working group cannot be deleted.
./src/H5Gent.c
./src/H5Gpkg.h
Removed unused functionality.
./src/H5public.h
Includes <sys/types.h> for size_t.
Diffstat (limited to 'src/H5Oprivate.h')
-rw-r--r-- | src/H5Oprivate.h | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/src/H5Oprivate.h b/src/H5Oprivate.h index da682c6..108fb30 100644 --- a/src/H5Oprivate.h +++ b/src/H5Oprivate.h @@ -31,6 +31,10 @@ #define H5O_NEW_MESG (-1) /*new message */ #define H5O_ALL (-1) /*delete all messages of type */ +/* Flags which are part of the message id */ +#define H5O_FLAG_CONSTANT 0x8000 +#define H5O_FLAG_BITS 0x8000 + #define H5O_VERSION 1 #define H5O_ALIGNMENT 4 #define H5O_ALIGN(X,A) ((X)=(A)*(((X)+(A)-1)/(A))) @@ -46,11 +50,12 @@ typedef struct H5O_class_t { intn id; /*message type ID on disk */ const char *name; /*message name for debugging */ size_t native_size; /*size of native message */ - H5G_type_t cache_type; /*type field in symbol table */ void *(*decode)(H5F_t*,size_t,const uint8*); herr_t (*encode)(H5F_t*,size_t,uint8*,const void*); +#if 0 void *(*fast)(const H5G_cache_t*, void*);/*get from of entry */ hbool_t (*cache)(H5G_type_t*, H5G_cache_t*,const void*); /*into entry*/ +#endif void *(*copy)(const void*,void*); /*copy native value */ size_t (*raw_size)(H5F_t*,const void*); /*sizeof raw val */ herr_t (*reset)(void*); /*free nested data structures */ @@ -60,6 +65,7 @@ typedef struct H5O_class_t { typedef struct H5O_mesg_t { const H5O_class_t *type; /*type of message */ hbool_t dirty; /*raw out of date wrt native */ + hbool_t constant; /*is message constant? */ void *native; /*native format message */ uint8 *raw; /*ptr to raw data */ size_t raw_size; /*size with alignment */ @@ -172,6 +178,8 @@ typedef struct H5O_cont_t { */ #define H5O_STAB_ID 0x0011 extern const H5O_class_t H5O_STAB[1]; +void *H5O_stab_fast (const H5G_cache_t *cache, const H5O_class_t *type, + void *_mesg); typedef struct H5O_stab_t { haddr_t btree_addr; /*address of B-tree */ @@ -182,16 +190,13 @@ typedef struct H5O_stab_t { herr_t H5O_create (H5F_t *f, size_t size_hint, H5G_entry_t *ent/*out*/); herr_t H5O_open (H5F_t *f, H5G_entry_t *ent); -herr_t H5O_close (H5F_t *f, H5G_entry_t *ent); -intn H5O_link (H5F_t *f, H5G_entry_t *ent, intn adjust); -void *H5O_read (H5F_t *f, H5G_entry_t *ent, const H5O_class_t *type, - intn sequence, void *mesg); -const void *H5O_peek (H5F_t *f, H5G_entry_t *ent, const H5O_class_t *type, - intn sequence); -intn H5O_modify (H5F_t *f, H5G_entry_t *ent, const H5O_class_t *type, - intn overwrite, const void *mesg); -herr_t H5O_remove (H5F_t *f, H5G_entry_t *ent, const H5O_class_t *type, - intn sequence); +herr_t H5O_close (H5G_entry_t *ent); +intn H5O_link ( H5G_entry_t *ent, intn adjust); +void *H5O_read (H5G_entry_t *ent, const H5O_class_t *type, intn sequence, + void *mesg); +intn H5O_modify (H5G_entry_t *ent, const H5O_class_t *type, intn overwrite, + uintn flags, const void *mesg); +herr_t H5O_remove (H5G_entry_t *ent, const H5O_class_t *type, intn sequence); herr_t H5O_reset (const H5O_class_t *type, void *native); herr_t H5O_debug (H5F_t *f, const haddr_t *addr, FILE *stream, intn indent, intn fwidth); |