summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r1616] added __DLL__ in front of all the function prototypes so the dll ↵Patrick Lu1999-08-302-32/+32
| | | | can see it:
* [svn-r1615] put the __DLL__ in front of the function prototypes so the dll ↵Patrick Lu1999-08-305-28/+28
| | | | could see them
* [svn-r1614] put a #ifdef HAVE_UNISTD_H around the #include for the it.Patrick Lu1999-08-301-4/+32
| | | | | | since on NT I took out the device and inode members in the H5FD_sec2_t and replaced them with 2 fields more appropriate for NT I had to replace all occurences of the device and inode with the correct member
* [svn-r1612] Fixed bug in attribute writing which was causing core dump if an ↵Quincey Koziol1999-08-271-3/+0
| | | | | | | attribute was read back in immediately after being written out (without closing the attribute in between).
* [svn-r1608] ./src/libhdf5.settings.in [1.2, 1.3]Robb Matzke1999-08-272-4/+4
| | | | | | | | | Added C proprocessor flags and non-library linker flags to the description. ./src/H5T.c [1.2, 1.3] Changed return type in tracing macros to H5Tenum_nameof() and H5Tenum_valueof().
* [svn-r1602] Changes since 19990825Robb Matzke1999-08-261-2/+9
| | | | | | | | | | | | | | ---------------------- ./src/H5O.c [1.2, 1.3] Initialzed the padding area between the end of a message and the end of the space allocated for that message. This hopefully fixes an UMR error found by Quincey and prevents the file from containing unwanted data. ./tools/h5ls.c [1.2, 1.3] Fixed a bug where the `Data:' tag didn't get printed for attributes that have more than five values.
* [svn-r1599] Changed return type of H5Tenum_nameof and H5Tenum_valueof from ↵Quincey Koziol1999-08-252-5/+11
| | | | hid_t to herr_t
* [svn-r1595] Patrick Lu1999-08-251-2/+2
| | | | | | | | not sure if this is what was wanted but in the code where the file drivers are registered the end_registration: label was giving me some trouble with compilation on NT. I think the end_registration label was supposed to be empty and but on NT it didn't like that so i had to put a semi colon after the label. if this is wrong let me know and i'll fix it someother way
* [svn-r1594] Patrick Lu1999-08-251-0/+3
| | | | | | | added a conditional for __INT64 in the part of the code where the file addresses are given types. so now if the sizeof__int64 is >=8 then haddr_t is typedefed to an unsigned __int64 and the HADDR_UNDEF = ((haddr_t)(__int64)(-1)). I used the unsigned long long as my example.
* [svn-r1592] ./src/H5private.hRobb Matzke1999-08-252-10/+548
| | | | | Re-committed recent changes that got clobbered in the pablo update. Albert, the source tree should be compilable again now...
* [svn-r1586] There is a problem compiling when the H5TRACE_DECL is void and ↵Dan Wells1999-08-241-7/+12
| | | | | | | | | the -DHAVE_PABLO flag is used on some machines if the H5TRACE_DECL; precedes PABLO_SAVE(xxx);. There will be a empty statment followed by a variable declaration. The same is true if they are the other way around. I added the semicolon to the PABLO_SAVE macro definition and put H5TRACE_DECL; after PABLO_SAVE(xxx)
* [svn-r1585] Changes since 19990820Robb Matzke1999-08-2414-222/+605
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./src/H5D.c Added additional elements to a variable initializer in H5Dvlen_get_buf_size() to shut up a warning message. Also added the API tracing call. ./src/H5F.c Added file opening optimizations. If the driver doesn't support the ability to determine when two file handles refer to the same file (like MPIO and GASS) then H5F_open() makes fewer calls to the driver's open callback. Also, if the tentative file access flags are the same as the original flags then H5F_open() makes fewer calls to the file device. ./src/H5FD.c ./src/H5FDprivate.h ./src/H5FDpublic.h Added H5FD_get_class() so the library can get information about what file driver callbacks are defined. This will be useful when more optimization functions are added to the VFL, such as for MPIO derived datatype I/O. ./src/H5FDcore.c ./src/H5FDfamily.c ./src/H5FDmpio.c ./src/H5FDmulti.c ./src/H5FDsec2.c The driver symbols (like H5FD_CORE, etc) are actually function calls. The functions were fixed to return correct values even after calling H5close(). ./src/H5FDmulti.c ./src/H5FDmulti.h Added support for opening a file when parts are missing (only if the caller explicitly allows that in the file access property list). Moved some common code sequences into macros or functions. Added better support for reopening files. All the application has to know is that the file is a multi file and the base name from which all the member names are created. More debugging output when the file is opened with the H5F_ACC_DEBUG flag. Fixed various bugs. ./src/H5Fistore.c Chunked raw data was accidently allocated as meta data instead of raw data. ./src/H5I.c The H5Iget_type() function fails when invoked with an old object ID (an ID which has been closed down). ./test/h5test.c Added an extra argument when setting the multi file access property lists so the test fails if it can't open one of the sub-files. ./tools/h5ls.c Improved the algorithm for deciding what file driver to use. It basically tries all of the predefined drivers and is now able to open family, split, and multi files without looking for special characters in the file name. Added `-e' and `--errors' switches which cause errors from libhdf5 to be reported on stderr in addition to the simple error message displayed by h5ls.
* [svn-r1583] ./src/H5private.h [1.2, 1.3]Robb Matzke1999-08-201-1/+4
| | | | | The prototype for strdup() is protected in case strdup is also a macro. This should fix a bug on Linux RedHat 6.0 (untested).
* [svn-r1576] Added H5Dvlen_get_buf_size function.Quincey Koziol1999-08-198-50/+268
|
* [svn-r1574] Changes since 19990817Robb Matzke1999-08-188-82/+69
| | | | | | | | | | | | | | | | | | | | | ---------------------- ./src/H5D.c ./src/H5F.c ./src/H5FDmpio.c ./src/H5Fistore.c ./src/H5Fprivate.h ./src/H5Smpio.c The `driver_id' for a file was accidently put in two structs. I removed it from the H5F_file_t struct since it's really an attribute of the VFL stuff. More careful incrementing/decrementing the driver ID to fix a memory leak. ./src/H5P.c Rewrote H5Pcreate() in terms of H5P_copy() of a default property list. This fixes some referencing counting bugs.
* [svn-r1573] Changes since 19990817Robb Matzke1999-08-177-19/+39
| | | | | | | | | | | | | | | | | | | | | ---------------------- ./src/H5D.c ./src/H5F.c ./src/H5Fistore.c ./src/H5Smpio.c Incorporated previous changes into MPIO special cases. These are mostly due to the fact that most of the members of the file->shared->fapl struct have been moved into the file->shared->file->shared struct (`file' is an H5F_t*). ./src/H5I.c Fixed a bug with closing the library w.r.t. the VFL stuff. The VFL layer introduced reference counts on object ID's and the library termination functions freed these objects in the wrong order. Now H5I_clear_group() does not normally remove objects with a reference count larger than one because it assumes that those objects are currently in use by the library.
* [svn-r1572] Changes since 19990810Robb Matzke1999-08-1723-81/+2514
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./MANIFEST ./src/H5FDmulti.c [NEW] ./src/H5FDmulti.h [NEW] ./src/Makefile.in ./src/hdf5.h The split driver was reimplemented as a more general "multi" driver which is capable of splitting data into multiple files like the family driver except the partioning is done by memory usage type instead of address. The H5Pset_fapl_split() function just calls H5Pset_fapl_multi() with arguments which prepare to split the address space into two files: meta and raw data. This is the first version. I plan to allow the open() call to relax a bit which would allow one to open an hdf5 file when only the meta-data file is present. This would allow a very large file to be split and stored on tape and the relatively small meta file to be mirrored on disk to allow limited browsing of the file (any request for raw data would fail). ./src/H5private.h ./src/H5F.c ./src/H5FD.c ./src/H5FDprivate.h ./src/H5FDpublic.h ./src/H5FDcore.c ./src/H5FDfamily.c ./src/H5FDmpio.c ./src/H5FDsec2.c Added the ability for a file driver to store information in the superblock which would be needed if the file were opened again later for reading. The format is driver-defined which allows users to extend it however they like. ./doc/html/H5.format.html Added information about the new driver information block of the superblock. This is where file drivers store information they need in order to reopen the file later. ./src/H5F.c ./src/H5Fprivate.h ./src/H5FD.c ./src/H5FDprivate.h ./src/H5FDpublic.h ./src/H5FDcore.c ./src/H5FDfamily.c ./src/H5FDmpio.c ./src/H5FDsec2.c ./src/H5Fistore.c ./src/H5R.c The file access properties and the file access property list were decoupled, which allows the property list to more cleanly contain properties for various levels of the file and which allows the property list to be modified more cleanly when opening files. ./src/H5.c ./src/H5FDpublic.h Removed H5FD_MEM_META and H5FD_MEM_GROUP since they're never used. ./src/H5D.c Changed the way we detect the MPIO driver in all these special cases. ./src/H5F.c ./src/H5Rpublic.h ./test/tfile.c The default file sizeof(offset) was changed to be a function of haddr_t instead of hsize_t. THE H5RPUBLIC.H DEFINITIONS WILL HAVE PROBLEMS IF THE USER CREATES A FILE WITH NON-DEFAULT OFFSET AND SIZE SIZES! ./src/H5F.c Fixed an uninitialized memory access bug in file closing related to the VFL. ./src/H5T.c ./src/H5Tpublic.h Added an H5T_NATIVE_HADDR predefined datatype which corresponds to the `haddr_t' type. ./test/Makefile.in Reformatted long lines. ./test/big.c ./test/cmpd_dset.c ./test/dsets.c ./test/dtypes.c ./test/extend.c ./test/external.c Removed the H5F_ACC_DEBUG flag from file creation/open calls. ./test/big.c Plugged a memory leak. ./test/h5test.c Added support for the `multi' driver. Removed #warning about not having the stdio driver. Plans are to not implement it since the sec2 driver serves the same purpose and testing didn't show any difference in execution times between the two.
* [svn-r1569] Changes since 19990810Robb Matzke1999-08-101-17/+3
| | | | | | | ---------------------- ./src/H5Sprivate.h Fixed merge conflicts that I missed earlier.
* [svn-r1568] Changes since 19990730Robb Matzke1999-08-1068-7375/+7561
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- This extensive change is the virtual file layer implementation. I've ported and tested the sec2, family, and core drivers and only ported the mpio driver (Albert will test it). So if you need MPIO I would recommend sticking with the previous version for a while. You will get a few compile warnings about split and stdio drivers not being implemented and possibly tracing information not inserted in some of the drivers. You can safely ignore them but I plan to fix them. I'm still working on the split driver because I just realized that it needs a part of the VFL that isn't written yet. Documentation is being updated also because there were some minor changes (mostly just name changes). It should be available on my web site later this week. ./MANIFEST ./src/Makefile.in ./src/hdf5.h ./src/H5Flow.c [REMOVED] ./src/H5Fstdio.c [REMOVED] ./src/H5Fsec2.c [REMOVED] ./src/H5Fsplit.c [REMOVED] ./src/H5Fmpio.c [REMOVED] ./src/H5Ffamily.c [REMOVED] ./src/H5Fcore.c [REMOVED] ./src/H5MFpublic.h [REMOVED] ./src/H5FD.c [NEW] ./src/H5FDcore.c [NEW] ./src/H5FDcore.h [NEW] ./src/H5FDfamily.c [NEW] ./src/H5FDfamily.h [NEW] ./src/H5FDmpio.c [NEW] ./src/H5FDmpio.h [NEW] ./src/H5FDprivate.h [NEW] ./src/H5FDpublic.h [NEW] ./src/H5FDsec2.c [NEW] ./src/H5FDsec2.h [NEW] Removed/added files for virtual file layer. ./bin/trace ./src/H5.c Removed unused public datatypes and added new VFL public datatypes. Changed an error message. ./config/BlankForm ./config/dec-flags ./config/gnu-flags ./config/hpux10.20 ./config/hpux9.03 ./config/irix5.x ./config/irix6.x ./config/solaris2.x ./config/unicosmk Removed the H5F_OPT_SEEK and H5F_LOW_DFLT constants from the configuration since they're no longer applicable. The default file driver is always the sec2 driver and it always optimizes calls to lseek() or lseek64(). ./config/depend.in C preprocessor errors generated during automatic dependency building are sent to /dev/null to prevent them from appearing twice in the make output. ./src/H5AC.c ./src/H5B.c ./src/H5D.c ./src/H5F.c ./src/H5G.c ./src/H5Gent.c ./src/H5Gnode.c ./src/H5HG.c ./src/H5HL.c ./src/H5O.c ./src/H5Oattr.c ./src/H5Odtype.c ./src/H5Oefl.c ./src/H5Oshared.c ./src/H5T.c ./src/H5detect.c ./test/ohdr.c Changed H5F_ADDR_UNDEF to HADDR_UNDEF to be more consistent with the `haddr_t' datatype which is now a public type. ./src/H5D.c ./src/H5P.c ./src/H5Ppublic.h ./src/H5Tconv.c ./test/cmpd_dset.c ./test/dsets.c ./test/overhead.c ./test/tselect.c ./test/tvltypes.c The H5P_DATASET_XFER constant was changed to H5P_DATA_XFER because the properties apply to all types of I/O operations, not just datasets. ./src/H5B.c ./src/H5Bprivate.h ./src/H5D.c ./src/H5Dpublic.h ./src/H5F.c ./src/H5Farray.c ./src/H5Fistore.c ./src/H5Fprivate.h ./src/H5Fpublic.h ./src/H5Gnode.c ./src/H5Gpkg.h ./src/H5HG.c ./src/H5HL.c ./src/H5O.c ./src/H5R.c ./src/H5Sall.c ./src/H5Shyper.c ./src/H5Smpio.c ./src/H5Spoint.c ./src/H5Sprivate.h ./test/big.c ./test/h5test.c ./test/istore.c ./testpar/t_dset.c ./testpar/t_file.c ./tools/h5debug.c ./tools/h5ls.c Modified to work with the virtual file layer by calling H5FD_* functions instead of H5F_low_* functions and by passing file access and data transfer properties by object ID instead of pointer. Changed H5D_transfer_t to H5FD_mpio_xfer_t since the COLLECTIVE vs. INDEPENDENT transfer mode is specific to the MPIO file driver. Moved MPIO-specific stuff into the MPIO driver. ./src/H5B.c ./src/H5D.c ./src/H5Fprivate.h The H5F_mpio_* private functions were renamed and placed in the H5FDmpio driver except those which appeared in H5Smpio.c. ./src/H5E.c ./src/H5Epublic.h Added major error number H5E_VFL for virtual file layer related errors. ./src/H5F.c ./src/H5Fprivate.h Changed the logic that controls whether the boot block is written. Instead of assuming that the first call to write the boot block is only to allocate space, I've added a function argument which makes this explicit. Changed the way files are compared so that a driver-defined comparison function can be called. Files which belong to different drivers are always considered different. Removed H5F_driver_t since file drivers are now identified by object ID instead of a special non-user-extendible datatype. Removed all the hard-coded low-level file properties which have been replaced by the various file drivers. ./src/H5I.c ./src/H5Iprivate.h Added the H5I_inc_ref() which was removed a few months ago since we finally have a use for it. ./src/H5Ipublic.h Added the H5I_VFL object ID type to identify file drivers in the virtual file layer. ./src/H5MF.c ./src/H5MFprivate.h Moved all the allocation/deallocation code into the virtual file layer which allows file drivers to override much of it. ./src/H5P.c ./src/H5Ppublic.h Moved file driver-specific code into the various file driver files. The H5Pcopy() and H5Pclose() functions make calls into the virtual file driver to manage the memory for driver-specific file access and data transfer properties. ./src/H5private.h ./src/H5public.h The `haddr_t' type is now public. ./test/tfile.c Added a few more comments.
* [svn-r1566] Changed C++ "operator" keyword to "op"Quincey Koziol1999-08-108-37/+37
|
* [svn-r1565] acconfig.h:Albert Cheng1999-08-061-0/+27
| | | | | | | | | | | Added the GASS macro definition entry. configure: [Generated from configure.in] configure.in: Added Globus GASS driver configuation as --with-gass=INC,LIB option. Default is no => no GASS configured. src/H5config.h.in: [Generated from acconfig.h]
* [svn-r1549] Changes since 19990728Robb Matzke1999-07-2824-279/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./src/H5B.c [1.3] ./src/H5D.c [1.3] ./src/H5F.c [1.3] ./src/H5Farray.c [1.3] ./src/H5Fcore.c [1.3] ./src/H5Ffamily.c [1.3] ./src/H5Fistore.c [1.3] ./src/H5Flow.c [1.3] ./src/H5Fmpio.c [1.3] ./src/H5Fprivate.h [1.3] ./src/H5Fsplit.c [1.3] ./src/H5Fstdio.c [1.3] ./src/H5G.c [1.3] ./src/H5HG.c [1.3] ./src/H5HL.c [1.3] ./src/H5MF.c [1.3] ./src/H5O.c [1.3] ./src/H5Odtype.c [1.3] ./src/H5Oefl.c [1.3] ./src/H5P.c [1.3] ./src/H5Smpio.c [1.3] ./src/H5T.c [1.3] ./src/H5detect.c [1.3] ./tools/h5debug.c [1.3] Some of the H5F_addr_* functions were optimized away. ./src/H5D.c [1.3] Fixed the return values from NULL to FAIL on one MPI-IO function.
* [svn-r1548] Changes since 19990727Robb Matzke1999-07-2845-1443/+1361
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./src/H5.c [1.3] ./src/H5AC.c [1.3] ./src/H5ACprivate.h [1.3] ./src/H5B.c [1.3] ./src/H5Bprivate.h [1.3] ./src/H5D.c [1.3] ./src/H5F.c [1.3] ./src/H5Farray.c [1.3] ./src/H5Fcore.c [1.3] ./src/H5Ffamily.c [1.3] ./src/H5Fistore.c [1.3] ./src/H5Flow.c [1.3] ./src/H5Fmpio.c [1.3] ./src/H5Fprivate.h [1.3] ./src/H5Fsec2.c [1.3] ./src/H5Fsplit.c [1.3] ./src/H5Fstdio.c [1.3] ./src/H5G.c [1.3] ./src/H5Gent.c [1.3] ./src/H5Gnode.c [1.3] ./src/H5Gprivate.h [1.3] ./src/H5Gstab.c [1.3] ./src/H5HG.c [1.3] ./src/H5HGprivate.h [1.3] ./src/H5HL.c [1.3] ./src/H5HLprivate.h [1.3] ./src/H5MF.c [1.3] ./src/H5MFprivate.h [1.3] ./src/H5O.c [1.3] ./src/H5Oattr.c [1.3] ./src/H5Ocont.c [1.3] ./src/H5Odtype.c [1.3] ./src/H5Oefl.c [1.3] ./src/H5Olayout.c [1.3] ./src/H5Oprivate.h [1.3] ./src/H5Oshared.c [1.3] ./src/H5Ostab.c [1.3] ./src/H5P.c [1.3] ./src/H5R.c [1.3] ./src/H5Smpio.c [1.3] ./src/H5T.c [1.3] ./src/H5Tvlen.c [1.3] ./src/H5private.h [1.3] ./test/dtypes.c [1.3] ./test/gheap.c [1.3] ./test/istore.c [1.3] ./test/lheap.c [1.3] ./test/ohdr.c [1.3] ./tools/h5debug.c [1.3] File addresses (the `haddr_t' type) are passed by value instead of by reference. The type is no longer a struct. This is one of the preliminary changes needed for the Virtual File Layer stuff. ./src/H5Fprivate.h [1.3] ./src/H5Flow.c [1.3] Some address functions were rewritten as macros.
* [svn-r1547] Changes since 19990723Robb Matzke1999-07-271-1/+2
| | | | | | | | | | | | | ---------------------- NOTE: These bug fixes but have been applied only to the 1.3 branch per Albert's request. ./config/gnu-flags [1.3] Added support for gcc-2.95 by adding full optimization and debugging flags and applied a patch from Marcus Daniels. ./src/Makefile.in [1.3] Removes the `libhdf5.settings' file for `make clean'.
* [svn-r1544] Added some casts to pacify the T3E compiler.Quincey Koziol1999-07-232-2/+2
|
* [svn-r1515] Changes since 19990715Robb Matzke1999-07-191-14/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./Makefile.in [1.3] ./examples/Makefile.in [1.3] ./pablo/Makefile.in [1.3] ./src/Makefile.in [1.3] ./test/Makefile.in [1.3] ./testpar/Makefile.in [1.3] ./tools/Makefile.in [1.3] ./config/commence.in [1.3] ./config/conclude.in [1.3] ./config/depend.in [1.3] Added a `.PATH' target for Irix pmake which is identical to the VPATH used by most other `make' programs. Irix 6.5 (or 6.4?) and later `make' ignores VPATH. Started all beginning-of-line comments with `##' instead of just `#' because Irix `pmake' barfs on things like the following because it sees the `# if' as a directive: # make will barf on the following line # if running Irix pmake ./config/commence.in [1.3] Added empty definitions for optional `make' macros because Irix pmake complains if it sees a macro which has never been defined. The main body of the Makefiles can redefine these macros to whatever they need.
* [svn-r1506] Bug fixes to get VL datatype fields in compound datatypes ↵Quincey Koziol1999-07-174-40/+26
| | | | | | working. Also, some memory leaks plugged in other routines.
* [svn-r1494] Lots of various bug-fixes on VL datatypes. VL datatype fields ↵Quincey Koziol1999-07-166-104/+115
| | | | | | | in compound datatypes aren't yet working, but other ways of using them (vlen atomic, vlen compound and vlen vlen atomic, etc.) are working.
* [svn-r1486] ./src/H5B.c [1.2, 1.3]Robb Matzke1999-07-164-7/+7
| | | | | | | ./src/H5Fistore.c [1.2, 1.3] ./src/H5Sall.c [1.2, 1.3] Replaced second argument of HGOTO_ERROR/HRETURN_ERROR with a minor error symbol (H5E_INTERNAL is a major error symbol).
* [svn-r1476] ./src/H5D.c [1.2, 1.3]Robb Matzke1999-07-133-0/+5
| | | | | | | | ./src/H5P.c [1.2, 1.3] ./src/H5T.c [1.2, 1.3] Added definitions for H5D_operator_t, H5MM_allocate_t, and H5MM_free_t and regenerated tracing calls for the affected API functions.
* [svn-r1465] src/H5Fmpio.c:Albert Cheng1999-07-122-4/+6
| | | | | | | | | | | | | Removed the unnecessary #include of mpi.h and mpio.h. (They are included already in H5public.h when applicable.) Changed couple debug printing to be controlled like the others. src/H5public.h: Officially, mpio.h should be in mpi.h but MPIO are not always supported by the vendor yet. Make the #include of mpio.h conditional when it is not in mpi.h. testpar/testphdf5.h: Removed the unnecessary #include of mpi.h and mpio.h. (They are included already in H5public.h when applicable.)
* [svn-r1437] Changed version number of development code to 1.3.0Quincey Koziol1999-07-061-2/+2
|
* [svn-r1426] Patrick Lu1999-07-061-0/+6
| | | | | | | | had to conditional compile some code out for the debug version of this file on windows. the microsoft c run time lib calls special versions of free and malloc in the debug mode. this code causes problems for the library(crashes) so i am taking the statements out in this version(win32 and debug) until i can figure out a way around the problem
* [svn-r1418] Modified H5Tconvert to require a dataset transfer property ↵Quincey Koziol1999-07-0319-317/+696
| | | | | | | | | | | | | list ID as the final parameter (so that VL datatypes have a way to pass in the custom memory allocation routines). Fixed a conversion bug when VL fields were part of a compound datatype that was causing the no-op conversion routine to be used instead of the vlen routine. Added the H5Pset_vlen_mem_manager and H5Pget_vlen_mem_manager routines to allow users to provide their own custom memory allocation routines for VL data read in from the file and reclaimed with H5Dvlen_reclaim. Finished coding on H5Dvlen_reclaim so it works now.
* [svn-r1400] Snapshot version 1.1 release 109Albert Cheng1999-07-011-1/+1
|
* [svn-r1392] Changes made by Kim Yates and staff. I tested the changes onAlbert Cheng1999-06-301-85/+150
| | | | O2K and it passed all tests.
* [svn-r1385] Updated H5Rdereference, H5Rget_object_type and H5Rget_region ↵Quincey Koziol1999-06-257-54/+96
| | | | | | | | | | | to accept a location ID (i.e. a file or group ID) as well as the dataset ID. This should allow Dave to get the palettes stored in the file correctly and also enable Bob and/or Bruce's indexing stuff. This change should be folded into the documentation for these three functions for the release. Also, I fixed a number of bugs in the hyperslab and point selection iterators for H5Diterate and they are working correctly now.
* [svn-r1374] Added in code to support the H5Diterate function, which I've got ↵Quincey Koziol1999-06-2411-289/+917
| | | | | | | to add tests for now. Also, I revised some of the code for hyperslab I/O, which should provide a modest speedup in situations with lots of hyperslabs.
* [svn-r1371] Robb Matzke1999-06-234-53/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes since 19990618 ---------------------- ./configure.in ./configure [REGENERATED] Now that compound struct conversions don't make so many calls to convert their members I turned the H5T debugging back on by default (it will still be disabled in a production version). ./src/H5AC.c ./src/H5B.c Made it possible to turn off messages about debugging these two packages using the same method as for all other packages. Just supply an invalid file descriptor number or use the shell to redirect said descriptor to /dev/null like this: $ HDF5_DEBUG=99,ac,b 99>/dev/null a.out ./src/H5T.c Changed the name of the old compound conversion function from `struct' to `struct(no-opt)' to be more consistent with the new version named `struct(opt)'. Fixed a bug in H5T_cmp() that caused any two VL types to compare as being equal. Removed duplicate code for bitfield comparisons in H5T_cmp(). ./src/H5Tconv.c Relaxed some constraints in the new compound conversion function so it applies to more cases. Also eliminated a memcpy in a tight loop. ./test/cmpd_dset.c Added a `--noopt' command line switch which unregisters the optimized compound conversion so we can test the non-optimized version.
* [svn-r1364] Robb Matzke1999-06-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | Changes since 19990618 ---------------------- ./Makefile.in Running `make' in the top directory recurses into the examples directory also except if the make target is one of: lib, progs, check, test, _test, install, uninstall. ./examples/Makefile.in Changed programs into tests, which just means that `make tests' does what `make progs' used to do and that `make check' runs the executables. ./src/H5Tconv.c Fixed a typo in the unsigned-to-signed native converter for large types to small types. This fixes a bug on baldric and possibly other machines for the `dtypes' test. Also fixed a signed vs. unsigned warning.
* [svn-r1362] Robb Matzke1999-06-1810-389/+1026
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes since 19990616 ---------------------- ./src/H5T.c ./src/H5Tconv.c All conversion functions take an extra argument called `stride' which is the number of bytes to advance the source and destination pointers after each element is converted. If the value is zero then the old behavior is preserved (source and destination values are packed). This feature was necessary to implement the compound datatype conversion optimizations and it causes a minor change to the API (application-defined type conversion functions take an extra size_t stride argument). ./src/H5Tconv.c An additional compound data type conversion function was added which is applied unless the destination type is larger than the source type. I'm measuring significant performance increases for certain operations: Test Name Struct-Conv Noop-Conv New(Old) MB/s New(Old) MB/s ---------- ------------- ------------- Reordering 2.062(0.3936) 54087(0.9047) Subsetting 2.901(0.6581) 40192(1.1100) Shrinking 1.976(0.3925) 33628(1.1500) ---------- ------------- ------------- ./test/dtypes.c Added various compound datatype conversion tests. Fixed return values from functions. ./src/H5T.c Conversion timers are updated only if H5T debugging is turned on a runtime (in addition to compile time). This allows the data type layer to be compiled with debugging support without having to pay a big runtime penalty if the debugging isn't actually used. ./src/H5A.c ./src/H5D.c ./src/H5Ofill.c ./src/H5P.c ./src/H5T.c ./src/H5Tconv.c ./src/H5Tpkg.h ./src/H5Tprivate.h ./src/H5Tpublic.h Added the stride argument to the H5T_convert() calls. The stride is always zero, which means that the source and destination data values are packed. ./configure.in ./configure [REGENERATED] If API tracing is turned off then libhdf5.settings will say `no' instead of nothing. ./test/flush1.c ./test/flush2.c Added better error messages in a couple places.
* [svn-r1359] Snapshot version 1.1 release 108Albert Cheng1999-06-171-1/+1
|
* [svn-r1357] Fixed some typo and missing #include. Works again forAlbert Cheng1999-06-172-4/+9
| | | | the Parallel version.
* [svn-r1356] Snapshot version 1.1 release 107Albert Cheng1999-06-161-1/+1
|
* [svn-r1347] Robb Matzke1999-06-152-1/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes since 19990614 ---------------------- ./src/H5D.c Changed the way the plist_id argument of H5Dvlen_reclaim() is checked so that it's more specific and works when debugging is turned off. ./src/H5TB.c Removed an unused local variable. ./test/fillval.c ./test/h5test.c ./test/h5test.h Changed `basename' variables to `base_name' to prevent a warning about a global with the same name. ./tools/h5ls.c Changed `indent' variables to `ind' to prevent a warning about a global with the same name. ./tools/h5toh4.c Commented out declarations for things that normally appear in system header files since our definitions might be incompatible with the system and prevent h5toh4 from compiling. If all looks good on other systems then we can permanently remove these declarations...
* [svn-r1346] Changes since 19990614Robb Matzke1999-06-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./src/H5D.c Changed the way the plist_id argument of H5Dvlen_reclaim() is checked so that it's more specific and works when debugging is turned off. ./src/H5TB.c Removed an unused local variable. ./test/fillval.c ./test/h5test.c ./test/h5test.h Changed `basename' variables to `base_name' to prevent a warning about a global with the same name. ./tools/h5ls.c Changed `indent' variables to `ind' to prevent a warning about a global with the same name. ./tools/h5toh4.c Commented out declarations for things that normally appear in system header files since our definitions might be incompatible with the system and prevent h5toh4 from compiling. If all looks good on other systems then we can permanently remove these declarations...
* [svn-r1344] SnapshotAlbert Cheng1999-06-151-1/+1
|
* [svn-r1341] Robb Matzke1999-06-147-137/+191
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes since 19990611 ---------------------- ./doc/html/H5.format.html Added documentation for opaque data types (bitfield types were already documented but they were out of order). ./src/H5E.c Fixed a bug with glibc2 on linux systems where `stdout' is an extern and can't be used to initialize static data. ./src/H5T.c ./src/H5Tpkg.h ./src/H5Tpublic.h ./src/H5detect.c Removed the `_T' from the new C9x types I just added so the names are consistent with existing types. Besides, the fact that something is a datatype is obvious because it starts with H5T_NATIVE_. ./tools/h5ls.c Added the new C9x data types. H5ls prints one of these types only if it doesn't match one of the builtin C types. Prints the OID for shared data types. Fixed a formatting bug with symbolic links which was introduced a few changes ago. The commandline has been changed so that objects from multiple files can be listed with a single command. Instead of specifying a file name and an optional list of objects, each thing to print is a file name and object concatenated. H5ls figures out how to devide the name into a file name and object name even when the file name part doesn't correspond to an actual Unix file. Old syntax: h5ls [OPTIONS] FILE [OBJECTS] New syntax: h5ls [OPTIONS] FILE[/OBJECT] [FILE[/OBJECT]]... Example ({X,Y} is expanded by the shell) Old command: h5ls -d ../test/x.data dir1 dir2 New command: h5ls -d ../test/x.data/{dir1,dir2} The filename is printed as part of the object name when full names are requested (--full or --recursive). If people really don't like this they can undefine a constant at the top of h5ls. Errors from the hdf5 library are turned off. Commandline switches of the form `--width 80' are accepted in addition to `--width=80'. This is more symmetric with single-letter switches that take two forms: `-w 80' and `-w80'. ./src/H5D.c Added tracing instrumentation for H5Dvlen_reclaim(). ./src/H5private.h Added casts to int for the isalpha() et al macros to shut up solaris warnings about char subscripts.
* [svn-r1340] Changes since 19990611Robb Matzke1999-06-141-99/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./doc/html/H5.format.html Added documentation for opaque data types (bitfield types were already documented but they were out of order). ./src/H5E.c Fixed a bug with glibc2 on linux systems where `stdout' is an extern and can't be used to initialize static data. ./src/H5T.c ./src/H5Tpkg.h ./src/H5Tpublic.h ./src/H5detect.c Removed the `_T' from the new C9x types I just added so the names are consistent with existing types. Besides, the fact that something is a datatype is obvious because it starts with H5T_NATIVE_. ./tools/h5ls.c Added the new C9x data types. H5ls prints one of these types only if it doesn't match one of the builtin C types. Prints the OID for shared data types. Fixed a formatting bug with symbolic links which was introduced a few changes ago. The commandline has been changed so that objects from multiple files can be listed with a single command. Instead of specifying a file name and an optional list of objects, each thing to print is a file name and object concatenated. H5ls figures out how to devide the name into a file name and object name even when the file name part doesn't correspond to an actual Unix file. Old syntax: h5ls [OPTIONS] FILE [OBJECTS] New syntax: h5ls [OPTIONS] FILE[/OBJECT] [FILE[/OBJECT]]... Example ({X,Y} is expanded by the shell) Old command: h5ls -d ../test/x.data dir1 dir2 New command: h5ls -d ../test/x.data/{dir1,dir2} The filename is printed as part of the object name when full names are requested (--full or --recursive). If people really don't like this they can undefine a constant at the top of h5ls. Errors from the hdf5 library are turned off. Commandline switches of the form `--width 80' are accepted in addition to `--width=80'. This is more symmetric with single-letter switches that take two forms: `-w 80' and `-w80'. ./src/H5D.c Added tracing instrumentation for H5Dvlen_reclaim(). ./src/H5private.h Added casts to int for the isalpha() et al macros to shut up solaris warnings about char subscripts.
* [svn-r1332] Fixes to get the VL datatypes working. The only function ↵Quincey Koziol1999-06-116-2/+106
| | | | | | currently working is H5Tvlen_create().