summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r297] Switched templates to "property lists" and changed API prefix ↵Quincey Koziol1998-02-2512-298/+298
| | | | from H5C to H5P
* [svn-r296] Switched prefix for dataspaces from H5P to H5SQuincey Koziol1998-02-2512-346/+346
|
* [svn-r294] Changes since 19980219Robb Matzke1998-02-193-30/+45
| | | | | | | | | | | | | | ---------------------- ./src/H5A.c ./src/H5C.c Objects are removed from the group when there reference count hits zero regardless of whether H5A knows how to free the object. ./src/debug.c ./test/tstab.c Changed a zero to H5C_DEFAULT.
* [svn-r290] Changes since 19980206Robb Matzke1998-02-1918-1648/+2359
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./configure.in ./src/H5Fprivate.h ./src/H5Fsec2.c We now detect and use lseek64() on systems that have it (e.g., Irix64) and are able to generate >2GB files on Irix XFS file systems (and anything else that supports large files). This change also removed some warning messages from the Irix `-64' compiler. > $ ls -l istore.h5 > -rw-r--r-- 1 matzke meshtv 8605436856 Feb 17 14:03 istore.h5 ./configure.in ./src/H5Fprivate.h ./src/H5Fstdio.h We now detect and use fseek64() on systems that have it (e.g., Irix64) and are able to generate >2GB files on Irix XFS file systems (and anything else that supports large files). This change also removed some warning messages from the Iris `-64' compiler. ./src/H5E.c ./src/H5Epublic.h Added the H5E_OVERFLOW error to signal file address overflow. ./src/H5Fpublic.h ./examples/h5_chunk_read.c ./examples/h5_compound.c ./examples/h5_extend_write.c ./examples/h5_group.c ./examples/h5_read.c ./examples/h5_write.c ./html/Datasets.html ./html/Files.html ./html/H5.api.html ./html/H5.intro.html ./html/H5.sample_code.html ./html/ph5example.c ./html/review1.html ./test/cmpd_dset.c ./test/dsets.c ./test/extend.c ./test/tfile.c ./test/th5p.c ./test/theap.c ./test/tohdr.c ./test/tstab.c ./testpar/phdf5.c Renamed file access constants to follow the naming scheme. Also changed the base names a little to be more accurate as to what they do. The old names H5ACC_WRITE and H5ACC_OVERWRITE will temporarily work. H5ACC_DEFAULT --> H5F_ACC_RDONLY for H5Fopen() H5ACC_DEFAULT --> H5F_ACC_EXCL for H5Fcreate() H5ACC_WRITE --> H5F_ACC_RDWR H5ACC_OVERWRITE --> H5F_ACC_TRUNC Albert or Kim: The H5ACC_INDEPENDENT and H5ACC_COLLECTIVE macros in H5Fpublic.h should be an enum typedef and have names more like H5F_MPIO_INDEPENDENT and H5F_MPIO_COLLECTIVE. Also change the access_mode argument of H5Cset_mpio(). H5Fcreate() and H5Fopen() are more strict now about which flags are acceptable for the operation. ./src/H5Fprivate.h ./src/H5F.c ./src/H5C.c Changed the file access template to make it more general. A union contains a struct for each type of low-level driver and the default template is initialized at run-time. ./src/H5Fpublic.h ./src/H5F.c Added H5Fget_access_template() and cleaned up H5Fget_create_template(). ./src/H5C.c The H5Cset_mpi() no longer trashes the file access template when an error is detected. We check for errors and *then* update the file access template. Added H5C_close() so Albert and Kim have a place to release the MPI communicator and info from the file access property list. Kim or Albert: I notice in H5Cset_mpi() you copy the MPI communicator. Do you need to do something similar in H5C_copy()? ./src/H5F.c Added more error checking for the file creation and access property lists because it used to be possible to make the library dump core by swapping the creation and access property list ID numbers of H5Fcreate(). ./test/istore.c ./test/tfile.c ./test/th5p.c ./test/theap.c ./test/tohdr.c ./test/tstab.c ./testpar/testphdf5.c One must pass H5C_DEFAULT as the file creation or access property list in order to get the default property list. It is no longer possible to pass zero or any other arbitrary bad object ID. ./src/H5Fcore.c ./src/H5Ffamly.c ./src/H5Flow.c ./src/H5Fmpio.c ./src/H5Fsec2.c ./src/H5Fsplit.c ./src/H5Fstdio.c ./src/H5MF.c The file access property list is passed to all H5F_low_...() functions and to the drivers. ./src/H5Fcore.c The block size can be set at run time on a per-file basis instead of at compile time across all files. The "5000 items in a group test" now takes 1.6 seconds. ./src/H5private.h Removed inclusion of mpi.h and mpio.h since they're included from H5public.h. ./src/H5Cpublic.h ./src/H5C.c Added H5Cset_stdio(), H5Cset_sec2(), H5Cset_core(), H5Cset_split(), and H5Cset_family() in addition to the H5Cset_mpio() that Kim and Albert already wrote. We still need the H5Cget_driver() and an H5Cget...() counterpart for each of those functions. The split and family drivers still need a little work but I'm checking this in anyway.
* [svn-r286] Changed release name from "hdf-5.0.0a" to "hdf5-1.0.0a" to ↵Quincey Koziol1998-02-171-1/+1
| | | | | | | explicitly make it clear that this release is not [currently] compatible with the older HDF releases.
* [svn-r279] Changed return type of H5Fclose from 'int32' to 'herr_t'Quincey Koziol1998-02-161-1/+1
|
* [svn-r268] Revised the comment block of H5Cset_mpi. Also fixed a small bug inAlbert Cheng1998-02-131-4/+33
| | | | the same function in the call of MPI_Comm_dup.
* [svn-r258] Problem:Albert Cheng1998-02-121-2/+2
| | | | | | | | | | | | | | When configure with enable-paralle, H5detect and debug were not compiled with $(LIBS) but were executed via RUNTEST (mpirun ...). The O2K mpirun can't handle such an object code. Solutions: Compile them also with $(LIBS) which contains the mpi library names. Could have just removed $(RUNTEST) but in some parallel system, all object file may have to be launched by some mpirun-equivalent command anyway. Platforms tested: O2K
* [svn-r257] H5F.c:Albert Cheng1998-02-122-10/+6
| | | | | | | | | | | | | Added modification entry to H5F_open header. Should have been done when i added the access template argument. H5Fprivate.h: The hardcode setting to "define MPIO as the default IO when HAVE_PARALLEL is set" cause all test programs to fail since none of them is coded with the needed MPI_Initialize. Change it back to the previous setting of using sequential I/O allows user to use sequential I/O by default and use MPIO only if he/she explicitely asks for it via access template setting.
* [svn-r255] Added a teeny tiny little miniscule amount of support for strings ↵Robb Matzke1998-02-121-0/+26
| | | | | | because the VB-API work stores comments in some of the VB tables.
* [svn-r249] configure.in configure:Albert Cheng1998-02-111-1/+1
| | | | | | | Changed default RUNTEST to 'mpi -np 1'. src/Makefile.in: Use $(RUNTEST) to run programs if enable-parallel is on.
* [svn-r240] Removed warnings on Irix64Robb Matzke1998-02-101-12/+6
|
* [svn-r234] Cleaned up conversion between MPIOffset and haddr_t in H5Fmpio.c.Robert Kim Yates1998-02-102-40/+70
| | | | In H5Fprivate.h made MPI-IO the default low-level I/O module when HAVE_PARALLEL.
* [svn-r232] Problem: Parallel H5Fcreate failed if file doesnot exist. When theAlbert Cheng1998-02-101-1/+13
| | | | | | | | | | | | | | file does not exist, the code tried to open the file with EXCL CREATE. ROMIO cannot handle file-open with EXCL Create due to racing problem. The first process creates the file which then fails all other processes. Solution: In the parallel code, turn on TRUNC mode to allow "late" open calls to succeed too. It is safe to force TRUNC mode since the file is known non-existing at that point. The MPIO implementation has to provide the real solution. Platform tested: O2K with ROMIO.
* [svn-r230] Changes were actually made by Robb. I am commiting them for himAlbert Cheng1998-02-0936-1811/+1865
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | while he is visiting LLNL. I changed the default creation template offset and length to 4. Will fix the problem later. Changes since 19980205 ---------------------- ./src/H5H.c ./src/H5Hprivate.h ./src/H5O.c ./src/H5Ocont.c ./src/H5Odtype.c ./src/H5Oefl.c ./src/H5Olayout.c ./src/H5Oname.c ./src/H5Onull.c ./src/H5Oprivate.h ./src/H5Odspace.c ./src/H5Ostab.c ./src/debug.c ./html/H5.format.html Added an extra 4-byte field after the heap magic number for alignment on the DEC alpha. Changed object header message alignment to 8-bytes. ./src/H5F.c ./src/H5Farray.c ./src/H5Ffamily.c ./src/H5Fistore.c ./src/H5Flow.c ./src/H5Fprivate.h ./src/H5Fsec2.c ./src/H5Fstdio.c ./src/H5Gnode.c ./src/H5O.c ./src/H5Odtype.c ./src/H5P.c ./src/H5Pprivate.h ./src/H5T.c ./src/H5Tconv.c ./src/H5Tpkg.h ./src/H5Tpublic.h ./src/H5V.c ./src/H5detect.c ./test/cmpd_dset.c ./test/dsets.c ./test/dtypes.c ./test/extend.c ./test/hyperslab.c ./test/istore.c ./test/th5p.c ./test/theap.c Fixed a few irix64 warnings regarding size_t vs. int, variables set but not used, printf formats ./config/irix64 Added `-woff 1196' to get rid of errors about __vfork() being implicitly defined in a system header file. ./src/H5B.c Fixed a stack alignment problem.
* [svn-r224] Initial implementation of the upper levels of PHDF5. TheAlbert Cheng1998-02-069-34/+207
| | | | | MPIO lower interface layer (H5Fmpio.c) has been commited by Kim already. All PHDF5 codes are "bracket'ed" by #ifdef HAVE_PARALLEL macro.
* [svn-r222] Problem: UINT64DECODE and INT64DECODE were not working because it didAlbert Cheng1998-02-051-6/+6
| | | | | | | | | not assign the decoded value back to n. Solution: Removed temporary variable _n (don't see why it is needed.) Use the variable n directly. Platform tested: IRIX64 -64
* [svn-r221] In H5F_mpio_open, if truncation was requested, all processes must ↵Robert Kim Yates1998-02-051-21/+24
| | | | | | | call MPI_File_set_size (a collective operation). Also changed/added some error messages.
* [svn-r220] Changes since 19980204Robb Matzke1998-02-051-1/+1
| | | | | | | | | | | ---------------------- ./src/H5H.c Changed a temporary buffer from 20 bytes to 52 bytes. ./test/tfile.c Default sizes for file addresses and sizes are the same as sizeof(size_t) on the machine that creates the file.
* [svn-r219] Changes since 19980204Robb Matzke1998-02-041-6/+3
| | | | | | | | ---------------------- ./src/H5Odtype.c Compound data type names weren't aligned correctly. Thanks to Elena for finding this bug.
* [svn-r218] ./src/H5F.cRobb Matzke1998-02-043-18/+17
| | | | | | | | | | The default file addr and size sizes for new files are the same as sizeof(size_t) on the machine that creates the file. They used to always be 4. ./src/H5Pprivate.h ./src/H5Psimp.c Fixed `start' and `nelmts' arguments to be `size_t'.
* [svn-r217] Fixed fence-post & memory copy errors in H5F_encode_length_unusual()Quincey Koziol1998-02-041-3/+3
|
* [svn-r216] Added (ifdef'ed out currently) support for creating scalar simple ↵Quincey Koziol1998-02-041-10/+21
| | | | variables.
* [svn-r215] offset was declared intn when it actually dealed with pointer ↵Albert Cheng1998-02-041-1/+2
| | | | | | addresses. Changed it to size_t type.
* [svn-r214] Changes since 19980203Robb Matzke1998-02-034-11/+98
| | | | | | | | | | | ---------------------- ./src/H5C.c ./src/H5Cprivate.h ./src/H5D.c ./src/H5Dpublic.h Added H5Dget_create_parms(), trying to stay one step ahead of Elena ;-)
* [svn-r213] Changes since 19980130Robb Matzke1998-02-034-3/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./MANIFEST Added H5Fmpio.c. One way to check that you've properly included new files is to run `./bin/release none', then unpack the resulting tar file somewhere and try to compile it. The tar file will be ./releases/hdf-5.0.0a.tar. ./config/freebsd2.2.1 ./config/linux Added `-ansi' ./acconfig.h Added definitions for PHDF5 and HAVE_PARALLEL. ./configure.in Added minimal support for parallel build. Kim and Albert will have to flesh this out or I can do it if they're more specific about what they need. ./config/commence.in Added default value for $(RUNTEST) ./config/conclude.in `make test' uses value of $(RUNTEST) to run test cases. ./src/Makefile.in Added PARALLEL_SRC for conditional compilation of H5Fmpio.c ./src/H5D.c ./src/H5Dpublic.h Added H5Dget_type() for Elena NOTE: These changes require that configure be rerun. If you're using GNU make it will happen automatically, otherwise do it by hand.
* [svn-r212] Fixed H5F_mpio_read's handling of number of bytes read,Robert Kim Yates1998-02-032-14/+33
| | | | | and removed MPI_Init and MPI_Finalize from H5.c (these should be done in the user program).
* [svn-r211] Added hooks for MPI-IO low-level I/O module.Robert Kim Yates1998-02-023-0/+573
|
* [svn-r209] Changes since 19980130Robb Matzke1998-01-3010-123/+337
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./INSTALL Added instructions for which C flags to set for debugging. ./src/H5C.c ./src/H5Cpublic.h H5Cset_chunk() takes const pointer. ./src/H5D.c ./src/H5Dprivate.h ./src/H5Dpublic.h Added H5Dextend() to extend the dimensions of a dataset. ./src/H5Osdspace.c ./src/H5P.c ./src/H5Pprivate.h ./src/H5Ppublic.h ./test/cmpd_dset.c ./test/dsets.c ./test/th5p.c Added the optional `maxdims' argument to H5Pcreate_simple() and defined constant H5P_UNLIMITED which can appear in the maxdims. Added `const' to arguments. Implemented H5Pcopy() Removed the unused file argument from H5P_modify. Added H5P_extend(). Removed the `flags' field from simple data types and we determine if the `max' or `perm' arrays are valid by looking at the pointer. Cleaned up the H5O_sdspace_debug output. ./src/H5T.c Fixed a printf format. ./MANIFEST ./test/Makefile.in ./test/extend.c [NEW] Added a test for multi-dimensional unlimited dimensions.
* [svn-r208] Just added in a missing bracket, just to make vi-matching happier.Albert Cheng1998-01-301-0/+1
|
* [svn-r205] Changes since 19980130Robb Matzke1998-01-302-6/+7
| | | | | | | | | | | | | | | | | | | | ---------------------- ./INSTALL ./Makefile.dist ./Makefile.in ./config/conclude.in Some stupid make's don't know what PHONY means. I added changed config to _config in the default makefile and added _test to the other makefiles. ./src/H5Psim.c A `file_offset' argument got changed to `int' accidently that causes tests to fail on 64-bit machines. I changed it back to size_t. ./src/H5T.c Changed a couple printf formats.
* [svn-r204] Changes since 19980129Robb Matzke1998-01-308-34/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./RELEASE Added Library functions that I missed the first time. ./html/Datasets.html Added an example for Elena's question about how to read a single member of a compound data type so it becomes an array of that member in memory. ./src/H5Pprivate.h Fixed the prototype for H5P_get_hyperslab() to match the definition. ./src/H5Psimp.c Oops, added the kludge back in for the offset argument, which is still an `intn' instead of a `size_t'. ./src/H5.c ./src/H5public.h ./src/H5F.c ./src/H5T.c ./src/H5Tpublic.h Changed H5init() to H5open() and added an H5close() to fit our create/open/close paradigm. The H5open() happens automatically on the first call to the HDF5 library. The H5close() happens automatically on exit() (unless the app turns off that feature). H5close() closes all datasets and files and releases all resources used by the library. ./test/dsets.c Added calls to H5open() and H5close() to test them. ./test/dtypes.c Removed call to H5init() since we no longer need it there. ./src/H5Fstdio.c Changed the PABLO_MASK to the right value. Thanks Kim.
* [svn-r202] Changed H5Pget/set_hyperslab routines to int, size_t, size_t ↵Quincey Koziol1998-01-301-85/+1
| | | | paramters
* [svn-r201] Changed H5Pget/set_hyperslab to final consensus types: int for ↵Quincey Koziol1998-01-302-8/+8
| | | | | | offset and size_t for count & stride.
* [svn-r197] Changes since 19980129Robb Matzke1998-01-295-217/+351
| | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./config/freebds2.2.1 ./config/irix64 ./config/linux Added -DH5T_DEBUG to the debugging flags. Also changed `true' to `:' for the Irix64 ranlib program. This turns on printing of data type conversion statistics when the program exits. ./html/Datatypes.html Fixed documentation for data conversion functions and updated examples. ./src/H5D.c The I/O pipeline updates data type conversion statistics. ./src/H5T.c ./src/H5Tconv.c ./src/H5Tpkg.h ./src/H5Tpublic.h Cleaned up data type conversion registration interface.
* [svn-r196] Changes since 19980128Robb Matzke1998-01-291-2/+3
| | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./MANIFEST Added new files. ./bin/Makefile.dist [NEW] This file becomes the default top-level Makefile which invokes configure with no arguments and then re-runs make. It's for those people that don't read the INSTALL file. ./bin/release [NEW] Build HDF release tarballs. Arguments are a list of tarball types and are: tar, compress, gzip, or bzip2. The default is gzip. If the only argument is `all' then all types of tarballs are created. The results are put in the `releases' directory. Make sure you keep MANIFEST up to date. This program requires perl-5.003 or better. ./src/H5AC.c Fixed a printf format.
* [svn-r195] Purpose: minor bug fixAlbert Cheng1998-01-291-1/+1
| | | | Made the ncalls declaration explicitedly 'int' type.
* [svn-r194] Changes since 19980128Robb Matzke1998-01-293-76/+100
| | | | | | | | | | | | | | ---------------------- ./src/H5P.c Removed H5Pcreate() ./src/H5Psimp.c Copy int[] return value from H5P_get_hyperslab() to size_t[] argument to pass to other hyperslab functions. ./test/dsets.c Added a call to H5Eprint() to help track down Alberts O2k bug.
* [svn-r193] Changes since 19980128Robb Matzke1998-01-2812-152/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./MANIFEST Added new config files. ./src/H5private.h Changed FUNC_ENTER() so it calls H5Eclear() for all API functions but not for any private functions. It also prints the names of all API functions on file 55 (just for the prototype) so we can get a list of API functions called with the Bourne shell commands like: ./testhdf5 55>api_list or ./testhdf5 55>&1 1>/dev/null 2>&1 | less Otherwise the names are silently discarded. ./src/H5.c ./src/H5C.c ./src/H5D.c ./src/H5F.c ./src/H5G.c ./src/H5M.c ./src/H5P.c ./src/H5T.c Removed `H5ECLEAR' from lots of places in the source code. ./src/H5E.c ./src/H5Eprivate.h Recursion is a problem here, so to disable a call to H5Eclear() from FUNC_ENTER just define a local variable like this before you call FUNC_ENTER: const H5E_clearable_g = FALSE; Unfortunately this results in a warning: declaration of `H5E_clearable_g' shadows global declaration. Good thing it's only used in two places.
* [svn-r188] Changed hbool_t from an enum to 'int' and removed ↵Quincey Koziol1998-01-2825-112/+99
| | | | | | | | | | BTRUE/BFALSE/BFAIL from code. Changed interface to the H5P..hyperslab functions to 'int' instead of 'size_t'. Cleaned up lots of warnings on IRIX 6.2 platform. Minor other tweaks to get to a mostly clean build on the SGI. It still whines about 'long long' being non-standard and some "pointless comparison of unsigned with 0" but those aren't big problems.
* [svn-r186] Changes since 19980128Robb Matzke1998-01-282-2/+2
| | | | | | | | | | | | | | | | | | | | | | ---------------------- ./config/conclude.in The maintainer-clean target removes Emacs backup files, mirroring backup and contrib files, core files, and profile output files in addition to what it used to remove. ./src/H5D.c Fixed a buffer allocation bug in the output pipeline. ./src/H5Gnode.c Fixed a comparison against size_t ./test/Makefile.in Added the other temporary h5 files to the `MOSTLYCLEAN' var. ./test/cmpd_dset.c Added four tests for partial I/O. Don't you just love it when something works on the first try!
* [svn-r185] Changes since 19980128Robb Matzke1998-01-289-533/+695
| | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./src/H5D.c ./src/H5Dpublic.c Added H5Dget_space(). ./src/H5Gstab.c ./src/H5H.c Fixed a comparison with size_t against <0. ./src/H5P.c ./src/H5Pprivate.h ./src/H5Ppublic.h Changed `intn' to `int' for public function args and returns. H5Pget_hyperslab() returns the dimensionality. ./test/testhdf5.h Clears error stack more frequently. ./src/H5Psimp.c ./test/cmpd_dset.c Impelementing data space conversion.
* [svn-r183] Added comparison of selected hyperslabs to H5P_cmpQuincey Koziol1998-01-281-0/+24
|
* [svn-r182] Fixed typo...Quincey Koziol1998-01-281-1/+1
|
* [svn-r181] Reset hyperslab selection changing changing dataspace dimensions.Quincey Koziol1998-01-281-0/+10
|
* [svn-r180] Seperated range checking of start, count & stride in ↵Quincey Koziol1998-01-281-13/+14
| | | | | | | H5Pset_hyperslab from building hyperslab arrays so earlier hyperslab don't get blown away if the new one is incorrect. Fixed fence-post error in range checking also.
* [svn-r179] Added SIGN macroQuincey Koziol1998-01-281-0/+5
|
* [svn-r178] Changes since 19980127Robb Matzke1998-01-287-580/+681
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./Makefile.in ./config/commence.in With GNU make you can now use `-j' and `-l' options and things get built correctly. I can do a `make -j -l6 test' from a clean hdf5 source tree (after configure) in 45 seconds (8 to build dependencies, 26 to compile everything, and 11 to run the tests). ./src/H5Gnode.c Removed a comment that no longer applies. ./src/H5P.c ./src/H5Pprivate.h ./src/H5Ppublic.h Changed H5Pselect_hyperslab() to H5Pset_hyperslab() and added H5Pget_hyperslab() and H5P_get_hyperslab(). Replaced a couple short memset() calls with a for loop. Removed `if (foo!=NULL)' from around H5MM_xfree() calls. Clear hslab_def when the hyperslab disappears. ./src/H5Tpublic.h Removed trailing enum comma.
* [svn-r177] Added H5Pselect_hyperslab routine. The parameters to this ↵Quincey Koziol1998-01-283-0/+104
| | | | | | | | | | routine are similar to the HDF4 SDwritedata routine: start, count & stride. The start indicates the base location of the hyperslab, count indicates the number of elements in the hyperslab and stride indicates the packing of the hyperslab. The hyperslab is assumed to be the same rank as the dataspace it is located within. The hyperslab is stored for future use, no I/O occurs in this routine.
* [svn-r176] added ABS macroQuincey Koziol1998-01-281-0/+5
|