summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r103] Added pointer cast to shut compiler up.Quincey Koziol1997-09-191-1/+1
|
* [svn-r102] Removed ifdef now that code is working.Quincey Koziol1997-09-191-2/+0
|
* [svn-r101] Fixed uninitialized memory read.Robb Matzke1997-09-194-17/+11
|
* [svn-r100] Interim checkin for purify. Also contains H5G shadow stuff, changesRobb Matzke1997-09-1928-628/+1418
| | | | | | to int64 encode/decode to fix purify on 32-bit systems, changes to H5O_modify, changes to H5D.c to use H5F_open/close(), etc. Documentation will be mailed shortly...
* [svn-r96] Added "atexit" routines to each interface to free buffers ↵Quincey Koziol1997-09-1817-37/+300
| | | | | | allocated during runtime. Isolated but can't figure out how to fix bug reported with purify.
* [svn-r95] Tracked down memory bug.Quincey Koziol1997-09-183-3/+6
|
* [svn-r94] Removed encode/decode from fast/cache message functions.Robb Matzke1997-09-174-102/+86
| | | | Fixed uninitialized bytes appearing in the data file object header.
* [svn-r92] It was quite simple, actually. The H5O_sim_dim_fast() should allocateRobb Matzke1997-09-161-11/+7
| | | | | | | space for the result if it gets the null pointer. See H5O_stab_fast() for an example. I notice that some where is something beging freed twice...
* [svn-r91] Bug fixes for multiple datasets in the file. Interim checkin, ↵Quincey Koziol1997-09-165-5/+7
| | | | | | theres still a problem with the simple dimensionality caching.
* [svn-r89] ./src/H5Apublic.hRobb Matzke1997-09-164-287/+208
| | | | | | | | | | | | | | Removed H5_OID. ./src/H5D.c Fixed a few things to work better with symbol tables. Combined the H5D_oid_t and H5D_dataset_t structs. ./src/H5Dprivate.c Combined the H5D_oid_t and H5D_dataset_t types. ./src/H5M.c Removed the callback list for H5_OID.
* [svn-r87] Moved an auto init after the FUNC_ENTER()Robb Matzke1997-09-151-1/+4
|
* [svn-r83] Bug fixed in H5G_namei().Robb Matzke1997-09-155-18/+36
| | | | | Arg type changes in H5Bprivate.h Sorted Makefile.in
* [svn-r81] Finished basic data-type conversions, files are now portably ↵Quincey Koziol1997-09-154-7/+55
| | | | | | written on most "normal" architectures.
* [svn-r80] Byte-swapping datatype conversion routine added for basic ↵Quincey Koziol1997-09-151-0/+131
| | | | | | | portability of data files. Further enhancements will need to be made to support "weird" architectures.
* [svn-r78] Checkpointing dataset code. Everything is currently working, ↵Quincey Koziol1997-09-158-16/+206
| | | | | | except writing a second dataset out to the file seems to loose the first one.
* [svn-r75] Added message to write out the location of the dataset data in the ↵Quincey Koziol1997-09-121-0/+259
| | | | | | | file, when its stored with the "standard" data storage method. (Missing from checkin earlier today because I forgot to add it to the CVS repository)
* [svn-r73] Lots of added code for dataset I/O. Its now writing out datasets ↵Quincey Koziol1997-09-1214-137/+365
| | | | | | | to the disk correctly, but only in "native" format. I'm adding the data-type conversions and checking the reading later today.
* [svn-r71] Lost my changelog, but basically some new caching functions.Robb Matzke1997-09-1015-521/+1723
|
* [svn-r70] Added clarifying comments from code review meeting to H5Mflush and ↵Quincey Koziol1997-09-052-4/+7
| | | | H5D_flush.
* [svn-r68] Added H5Pset_space routine to set the dimensions of a simple ↵Quincey Koziol1997-09-043-12/+163
| | | | | | dataspace. Also tweaked the data structures, and fixed a few bugs.
* [svn-r67] Added DATASET, DATATYPE & DATASPACE major error categoriesQuincey Koziol1997-09-041-1/+4
|
* [svn-r66] Removed H5ECLEAR call from H5Epush routine.Quincey Koziol1997-09-041-1/+3
|
* [svn-r64] Removed from distribution.Quincey Koziol1997-09-021-227/+0
|
* [svn-r62] Fixed a stupidity bug.Robb Matzke1997-09-021-1/+1
|
* [svn-r61] ./src/H5.cRobb Matzke1997-09-0213-135/+357
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed atexit() to HDatexit(). ./src/H5AC.c Changed qsort() to HDqsort(). ./src/H5B.c Changed memcmp() to HDmemcmp(). ./src/H5E.c ./src/H5M.c Added parentheses around indirect function calls so that checkposix doesn't complain and to advertise that it's an indirect function call. ./src/H5F.c ./src/H5G.c Added errors field to each function prologue to test the script mentioned above. ./src/H5H.c Changed fputc() to HDfputc(). ./src/H5MM.c ./src/H5MMprivate.h The argument for H5MM_xfree() is a pointer to a constant even though the argument to free() isn't. This reduces the number of warnings in other parts of the code but creates a new warning in this file. ./src/H5O.c Plugged a few memory leaks that happen during error handling. ./src/H5Oname.c ./src/debug.c Added `HD' to the beginning of some posix functions.
* [svn-r58] Added H5Tget_type and a few minor bug-fixes.Quincey Koziol1997-08-292-7/+102
|
* [svn-r57] Fixed bug in "reserved" atoms code which was not actually ↵Quincey Koziol1997-08-291-1/+1
| | | | | | reserving the atoms. :-)
* [svn-r55] ./src/H5F.cRobb Matzke1997-08-297-123/+304
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added H5Fflush() and H5F_flush() which flush (and optionally invalidate the cache) and flush the file boot block. H5Fcreate() calls H5F_flush() to output the boot block. H5Fclose() calls H5F_flush() to update the boot block. H5F_debug() prints the root symbol table entry. ./src/H5Fpublic.h Added H5Fflush() prototype. ./src/H5G.c The name message is removed when an object moves from the root object position into a directory. Added H5G_debug() to print a symbol table entry. Most of the code was just moved from H5G_node_debug(). ./src/H5Gnode.c Moved some debugging code into H5G_debug(). ./src/H5Gprivate.c Added H5G_debug() prototype. ./src/H5O.c Implemented H5O_remove(). Added identifiers for H5O_SIM_DIM and H5O_SIM_DTYPE so they can be read from files. H5O_load() combines adjacent null messages for better memory management. ./src/H5Oprivate.h Changed minimum header data block size from 16 to 32 bytes. Changed prototype for H5O_remove()
* [svn-r53] Added datatype and dimensionality messages to dataset header, ↵Quincey Koziol1997-08-299-54/+286
| | | | | | cleaned up more code, etc.
* [svn-r52] ./src/H5O.cRobb Matzke1997-08-292-24/+46
| | | | | | | | | | | | If the symbol table entry doesn't change then the ent_modified argument to H5O_modify() doesn't change. This allows us to set ent_modified to false and then call H5O_modify() a whole bunch of times and easily determine if any of the calls modified the symbol table entry. ./src/H5D.c Fixed caching of things in the symbol table entry using the scheme we came up with a couple months ago.
* [svn-r50] ./src/H5G.cRobb Matzke1997-08-292-10/+15
| | | | | | | | Commented out H5G_basename(). Fixed a bug in H5G_namei() and H5G_insert(). ./src/H5O.c Fixed a bug in H5O_modify()
* [svn-r49] ./src/H5D.cRobb Matzke1997-08-281-57/+72
| | | | | | | | | | | Changed H5D_flush() to work with the new symbol table functions. I just remembered that caching data in the symbol table entries still needs some work, so there's a line in there that invalidates the symbol table entry cache. Also, there are some comments in there with the word `Quincey' for you to read about inserting the messages in the dataset object header.
* [svn-r47] Finished flashing out the H5M* functions calls. Cleaned up ↵Quincey Koziol1997-08-2810-179/+664
| | | | | | non-compiling source. Finished adding in remainder of H5Osdtyp.c functions.
* [svn-r44] ./src/H5D.cRobb Matzke1997-08-2813-271/+299
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I commented out a bunch of code in H5D_flush() so I could compile and link the test cases. If you commit your changes to that file, whatever they may be, I'll change H5D_flush() to use the new directory functions described below... ./src/H5G.c H5G_namei() ----------- Understands files without directories. The root object (directory or not) can be found by asking for `/' (or any equivalent absolute or relative name like `/.//.///' or `.//.///' (if the cwd is the root)) or by name like `/foo' (or any other equivalent absolute or relative name) if the object has a name message with the value `foo'. This function is used by most of the other H5G functions so they now understand directory-less files too. H5G_new() --------- Creates the root directory implicitly if it doesn't already exist, moving any previous non-directory root object into the new root directory before creating the requested directory within the root. The creation of the root directory happens first, regardless of whether the requested directory creation succeeds. Once the root directory is created it never disappears even if the file later has only one object. This "feature" can be used to force a file to have a root directory by saying something like: H5G_new (..., "/", ...); H5ECLEAR; /*we don't care about the H5E_EXISTS failure*/ The H5G_new() in the previous example fails because the root directory is created implicitly before we attempt to create the requested "/" directory. H5G_find() ---------- Understands files without directories. If there is no root object then this function is guaranteed to fail even if the request is for `/'. As mentioned for H5G_namei(), the root object can be retrieved with `/' or `/foo' (or equivalent absolute or relative names). H5G_insert() ------------ Understands files without directories and attempts to create such files when there is only one object. The root symbol table is created implicitly when necessary. A root object can be given a name message by the caller and then inserted with the name `/' or it can be inserted with the name `/foo' in which case H5G_insert() will set the name message to `foo'. H5G_modify() ------------ Understands files without directories. ./src/H5Fprivate.h Removed the root_type field from hdf5_file_t. ./src/H5Fprivate.h ./src/H5F.c Removed H5F_root_type() ./src/H5Fpublic.h Removed H5F_root_symtype_t. ./src/H5Oprivate.h ./src/H5O.c Added H5O_remove() which is currently a no-op.
* [svn-r42] Minor tweaks to correct parameters for H5O_newQuincey Koziol1997-08-263-53/+61
|
* [svn-r41] Interim checkpoint of dataset code for Robb to look at.Quincey Koziol1997-08-267-11/+896
|
* [svn-r40] Changed comments about length and offset parameters from uintn to ↵Quincey Koziol1997-08-221-4/+4
| | | | uint8
* [svn-r39] Fixed incorrect comment about 'buf' parameter in H5CsetparmQuincey Koziol1997-08-221-1/+1
|
* [svn-r38] Code review changes to H5Csetparm & H5Cgetparm:Quincey Koziol1997-08-221-24/+46
| | | | | error checking on atom group of template in both funcs range checking of parameters in H5Csetparm
* [svn-r35] ./src/H5ACproto.hRobb Matzke1997-08-1568-2932/+1687
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ./src/H5Aproto.h ./src/H5Bproto.h ./src/H5Cproto.h ./src/H5Dproto.h ./src/H5Eproto.h ./src/H5Fproto.h ./src/H5Gproto.h ./src/H5Hproto.h ./src/H5MFproto.h ./src/H5MMproto.h ./src/H5Mproto.h ./src/H5Oproto.h ./src/H5Pproto.h ./src/H5Tproto.h ./src/H5proto.h These files were removed from the library and renamed by changing `proto' to `public'. ./src/H5ACpublic.h NEW ./src/H5Apublic.h NEW ./src/H5Bpublic.h NEW ./src/H5Cpublic.h NEW ./src/H5Dpublic.h NEW ./src/H5Epublic.h NEW ./src/H5Fpublic.h NEW ./src/H5Gpublic.h NEW ./src/H5Hpublic.h NEW ./src/H5MFpublic.h NEW ./src/H5MMpublic.h NEW ./src/H5Mpublic.h NEW ./src/H5Opublic.h NEW ./src/H5Ppublic.h NEW ./src/H5Tpublic.h NEW ./src/H5public.h NEW These files came from the old H5*proto.h files. ./src/Makefile ./src/Makefile.in NEW Removed. Now generated automatically from Makefile.in by running configure. ./src/h5oplat.h ./src/hdf5fort.h ./src/hdf5gen.h ./src/hdf5glob.h ./src/hdf5lims.h ./src/hdf5meta.h ./src/hdf5pabl.h ./src/hdf5plat.h ./src/hdf5port.h ./src/hdf5type.h Removed. The contents of these files has moved to other header files or source files depending on it's nature. ./src/H5.c ./src/H5A.c ./src/H5B.c ./src/H5C.c ./src/H5D.c ./src/H5E.c ./src/H5F.c ./src/H5G.c ./src/H5H.c ./src/H5M.c ./src/H5MF.c ./src/H5MM.c ./src/H5O.c ./src/H5Ocont.c ./src/H5Oname.c ./src/H5Onull.c ./src/H5Ostab.c ./src/H5P.c ./src/H5T.c Fixed include files. Moved some things from old headers into these files. ./src/H5ACprivate.h ./src/H5Aprivate.h ./src/H5Bprivate.h ./src/H5Cprivate.h ./src/H5Dprivate.h ./src/H5Eprivate.h ./src/H5Fprivate.h ./src/H5Gprivate.h ./src/H5Hprivate.h ./src/H5MFprivate.h ./src/H5MMprivate.h ./src/H5Mprivate.h ./src/H5Oprivate.h ./src/H5Pprivate.h ./src/H5Tprivate.h ./src/H5private.h ./src/debug.c Fixed include files. ./src/hdf5.h This is now the top-level *PUBLIC* include file. It should never appear in the library *.c files.
* [svn-r31] Added code for H5Mget_file & H5Mflush and re-targeted some of the ↵Quincey Koziol1997-08-153-3/+95
| | | | | | H5D calls to use them.
* [svn-r30] Intermediate checkin of (non-working) dataset code to allow for ↵Quincey Koziol1997-08-156-13/+170
| | | | | | source code rearrangement.
* [svn-r29] Added 'debug' executable to clean targetQuincey Koziol1997-08-151-1/+1
|
* [svn-r27] ./src/H5B.cRobb Matzke1997-08-1313-94/+187
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ./src/H5Bprivate.h The B-tree K value comes from a combination of the B-tree subclass and the file. ./src/H5C.c ./src/H5F.c ./src/hdf5lims.h ./src/hdf5type.h Removed the B-tree size parameter and added an array of B-tree K values. Also added symbol table node K value. ./src/H5Eprivate.h ./src/H5Eproto.h Added H5E_LINK for errors involving link counts. ./src/H5G.c Inserting something into a directory with H5G_insert() increments the link count in the object header. The root object should always have a link count of at least 1. ./src/H5Gnode.c ./src/H5Gprivate.h The symbol table node K value comes from the file instead of being a constant. ./src/H5Olink.c Added an assert(), fixed a hard-link bug.
* [svn-r25] ./src/H5AC.cRobb Matzke1997-08-1217-115/+1080
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We sort the cache before a complete flush because it might be more efficient to write things back to disk in order of increasing address. If you want the old way then undef the SORT_BY_ADDR constant at the top of H5AC.c I haven't determined which systems and I/O libraries this helps or hurts. (This is currently off because of a bug I need to track down that causes qsort() to run for a really long time). ./src/H5B.c Fixed a couple more bugs. ./src/H5Eprivate.h ./src/H5Eproto.h Added major H5E_DIRECTORY and minor H5E_EXISTS, H5E_COMPLEN. ./src/H5G.c Added directory-aware functions. The heap and B-tree are created when a directory is created instead of when the first symbol is added. This simplifies symbol table entry caching for the directory since the cached value never changes now. ./src/H5Gnode.c ./src/H5Gprivate.h Fine tuned the B-tree K values for symbol tables assuming an average number of symbols is about 100 per directory. The tuning minimizes storage space. Fixed a return value in H5G_node_cmp(). ./src/H5H.c ./src/H5Hprivate.h Moved some macros the the header file. ./src/H5O.c ./src/H5Ocont.c ./src/H5Onull.c ./src/H5Ostab.c Changed the arguments for the decode method for messages. The second argument is the raw message size. Added a class variable for native message size. Added H5O_reset() to free memory used internally by a message. ./src/H5Oname.c NEW ./src/H5Oprivate.h ./src/Makefile The object name message. ./src/hdf5port.h Added defn for HDstrdup()
* [svn-r24] ./src/H5B.cRobb Matzke1997-08-1110-12/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ./src/H5Bprivate.h ./src/H5G.c H5B_new() only takes two arguments. ./src/H5C.c Fixed initializer for default_file_create to be the same order as it's definition. ./src/H5D.c Changed commented-out code to #if 0/#endif. #if'd out a variable that was unused because of #if'd out code. ./src/H5Dproto.c Added a prototype for H5Dwrite(). ./src/H5F.c Changed parentheses to fix precedence problems from: flags & (~H5AC_OVERWRITE) != 0 to (flags & ~H5AC_OVERWRITE) != 0 ./src/H5H.c Heap reallocation doubles the heap size instead of tripling it. ./src/H5O.c Got rid of a statement with no effect. ./src/hdf5port.h Indented a few #defines. Added a defn for MAX3().
* [svn-r20] Upgraded function comment header for H5Fcreate to be the the ↵Quincey Koziol1997-08-113-18/+35
| | | | | | template for future functions...
* [svn-r19] Added new minor error code - H5E_BADVALUE, for arguments with only ↵Quincey Koziol1997-08-112-0/+2
| | | | | | a single incorrect value.
* [svn-r17] ./src/H5AC.cRobb Matzke1997-08-0918-115/+217
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Renamed H5AC_find() to H5AC_find_f() which is invoked from the H5AC_find() macro. Changed HASH() to H5AC_HASH(). ./src/H5ACprivate.h Increased the number of cache slots from 1033 to 10330 to see how it affects performance. This should probably be changeable on a per-file basis. ./src/H5B.c Fixed some bugs now that symbol tables are actually using the stuff. Improved debugging a little. Fixed uninitialized memory appearing in the file. ./src/H5D.c Changed a FUNC_ENTER() argument from H5Dset_info to H5Dwrite. ./src/H5F.c Plugged a memory leak in H5F_dest(). ./src/H5G.c ./src/H5Gprivate.h Many of these functions take a symbol table entry which describes the symbol table rather than just the symbol table address. Moved some functions to make room for the ones that understand directory names: H5G_new() -> H5G_stab_new() H5G_find() -> H5G_stab_find() H5G_modify() -> H5G_stab_modify() H5G_insert() -> H5G_stab_insert() H5G_list() -> H5G_stab_list() ./src/H5Gnode.c Added more assertions. Zero new memory so junk doesn't appear in the data file. This is a problem when one tries to declassify a classified data file. H5G_node_debug() can take an extra argument which is the address of the heap for the symbol table. If supplied, the symbol names are printed along with the heap offsets. ./src/H5H.c ./src/H5Hprivate.h Fixed a bug with the free blocks by forcing things to align on even boundaries. It's still possible to lose heap memory if the hole is smaller than the free list header. The alternative is to align heap objects on 12 or 20 byte boundaries, but this tends to waste to much space. Zero new memory like with H5Gnode.c. Fixed a "mispeling" of NDEBUG. ./src/H5Ocont.c ./src/H5Onull.c Added the pablo mask defn. ./src/H5Ostab.c Added the pablo mask defn. Fixed a read from uninitialized memory. ./src/H5Oprivate.h Tuned some parameters to see how they affect performance. ./src/debug.c An optional third argument can be supplied which is the address of a heap to use to display names in a symbol table. ./src/hdf5pabl.h Changed `int' to `intn'.
* [svn-r15] ./src/H5AC.cRobb Matzke1997-08-0734-436/+3155
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ./src/H5ACprivate.h ./src/H5ACproto.h ./src/H5Bproto.h ./src/H5Gproto.h ./src/H5Hproto.h ./src/H5MFprivate.h ./src/H5MFproto.h ./src/H5MM.c ./src/H5MMprivate.h ./src/H5MMproto.h Changed my e-mail address. ./src/H5O.c NEW ./src/H5Onull.c NEW ./src/H5Ocont. NEW ./src/H5Ostab.c NEW New functions for dealing with object headers. The H5O.c is the generic stuff, and each particular message has a source file for the specific stuff. Use ./src/H5Ostab.c as a model for implementing other messages. ./src/Makefile ./src/test/Makefile Added new files ./src/debug.c Added debugging calls for object headers. ./src/H5B.c ./src/H5Bprivate.h ./src/H5Gnode.c ./src/H5MF.c Changed my e-mail address. Improved error handling. ./src/H5Eprivate.h ./src/H5Eproto.h Added more error symbols ./src/H5F.c Changed my e-mail address. Used macros for sizeof offsets and lengths. Added the interface initialization function to H5F_block_read() and H5F_block_write(). Updated H5F_debug() ./src/H5Fprivate.h Got rid of H5F_symbol_table_size(). Use H5G_SIZEOF_ENTRY() instead. Reformatted H5F_decode_offset() for readability. ./src/H5G.c Changed my e-mail address. Improved error handling. Replaced not_implemented_yet__*() with real functions from H5O. ./src/H5Gprivate.h Changed `symtab' to `stab' to be consistent with other stuff. ./src/H5H.c ./src/H5Hprivate.h Changed my e-mail address. Improved error handling. Added an extra argument to H5H_new() to indicate whether you want a global heap or a local heap. ./src/hdf5gen.h Added NELMTS() Fixed FUNC_ENTER() Rewrote FUNC_LEAVE() in terms of HRETURN(). ./src/hdf5meta.h Added `const' to the decode macros. ./src/hdf5pabl.h Added PABLO_SAVE() ./test/testhdf5.c ./test/testhdf5.h Added calls for object header testing. ./test/theap.c Turned off some output.