Commit Graph

1138 Commits

Author SHA1 Message Date
Frank Baker
ac66b7eae0 [svn-r994] Added h5toh4. 1998-12-28 10:15:16 -05:00
Paul Harten
4eab315de2 [svn-r989] Purpose:
Bug fix

Solution:
    Have warning messages go to stderr instead of stdout.

Platform tested:
    Solaris2.5
1998-12-22 13:37:47 -05:00
Paul Harten
a88aa59718 [svn-r988] Purpose:
New feature, Documentation

Solution:
    Changed h5toh4 testing output to more closely resemble other HDF5
    testing output.
    Also added documentation to describe the puposes of the
    conversion test files.

Platform tested:
    Solaris2.5
1998-12-22 13:36:19 -05:00
Ruey-Hsia Li
be41a8feed [svn-r986] Defined <data> and <string> in ddl.html.
Updated the current status of dumper.
1998-12-21 17:54:16 -05:00
Frank Baker
82fb21b613 [svn-r985] Checking in changes from "HDF5 Release 1.0" CVS branch that have not yet
been checked into "HDF5 Development" branch.

General
=======
	Various "copy edit" types of repairs.
	Revisions to document cross-linking.
	Added structural links tying all docs together (banners
	   at top and bottom of documents, similar to Reference Manual
	   banners of the Beta release).
	Set background color to white in all documents.

NCSAfooterlogo.gif
hdf2.jpg
	New image files to make the documents more self-contained
	(i.e., to prevent loading images from NCSA and HDF home servers).

index.html
	Redesigned to isolate links external to the installation
	in a single location.


Intro to HDF5
=============
H5.intro.html
	Fixed banner linking Intro to other docs.
	Set all URLs to be relative within the distribution; nothing
	   points back to the HDF server.
	Updates to "Limits of the Current Release" and "Changes in
	   the Current Release."


HDF5 User's Guide
=================
	Changed several User Guide section titles such that all
	   sections that are primarily about a particular interface
	   are now titled in the format "The xxxxx Interface (H5x)".

H5.user.html
	Commented out links to developer docs since they are marked
	   in MANIFEST as not being for distribution in the release.
	Removed 2nd and 3rd indices from page.
	Changed "freeform" lists of sections (TOCs) to aligned tables.

Datatypes.html
	Removed the sentence "I'm deferring definition until later
	   since they're probably not as important as the other data
	   types." from Section 3.3, "Properties of Date and Time
	   Atomic Types."
	Added info regarding 'char' versus 'string' datatypes.  Added
	   as Section 3.7, "Character and String Datatype Issues."

References.html
	Commented out substantial material (at end of document) from
	   References planning document that is not appropriate for
 	   the User Guide but that is worth keeping around.

Groups.html
	Final edits from elimination of "current working group."


HDF5 Reference Manual
=====================
	Removed "Draft" from the <title>__</title> lines.

RM_H5Front.html
	Removed 2nd and 3rd indices from page.
	Changed "freeform" lists of sections (TOCs) to aligned tables.

RM_H5F.html
RM_H5P.html
	Add file mounting information.
1998-12-21 17:52:56 -05:00
Ruey-Hsia Li
4952ed4a36 [svn-r984] Added ./tools/testfiles/tloop-1.ddl.
Removed ./tools/testfiles/tattr-4.ddl
        ./tools/testfiles/tcomp-4.ddl
        ./tools/testfiles/tdset-3.ddl
        ./tools/testfiles/tdset-4.ddl
        ./tools/testfiles/tgroup-3.ddl.
1998-12-21 17:49:13 -05:00
Ruey-Hsia Li
ee9cac2af9 [svn-r983] Added tests in testh5dump.sh.
Features of this version of dumper

  *  loop detection

  *  data type
     **  atomic type
         -> H5T_INTEGER (H5T_STD_XXXXX)
         -> H5T_FLOAT (H5T_IEEE_XXXXX)
         -> H5T_STRING (H5T_C_S1, H5T_FORTRAN_S1)
     **  committed/transient/unamed compound type

  *  data space
     **  scalar space
     **  simple space

  *  dataset
     dumper can display dataset's
     **  attribute
     **  type
     **  space
     **  data

  *  group
     dumper can display group attributes and group members which include
     **  named/unamed data type
     **  group
     **  dataset
     **  softlink

  *  attribute
     dumper can display attribute's
     **  type
     **  space
     **  data

  *  hard link

  *  soft link

  *  format of data
     ** fit on 80 columns
     ** end of line after each row
        (more work will be done on data.)
1998-12-21 17:45:01 -05:00
Ruey-Hsia Li
38309fb3f6 [svn-r982] Added test for loop detection.
Updated expected output for dumper automatic tests.
Removed redundant tests.
1998-12-21 17:34:42 -05:00
Robb Matzke
1d8e6cf581 [svn-r979] Snapshot 1998-12-21 05:10:36 -05:00
Paul Harten
caeb6c614f [svn-r978] Purpose: Bug fixes
Problems:
    There were three separate bugs in the h5toh4 converter worked on.
    They were:

    1) When a loop was detected, the H4 file was missing references
    to paths which were available in the H5 file.

    2) When an H4 SDS or Vdata was created from a H5 dataset, the H4
    object was referenced in the root group, instead of the correct
    Vgroup.

    3) The FIRST path taken to an object for the h5toh4 conversion
    could not involve a SOFTLINK.

Solutions:
    The bug fixes were:

    1) All of the associated references to available paths which
    occur in the H5 file, now appear in the H4 file.

    2) After an H4 SDS or Vdata is created from a H5 dataset, the H4
    object is tag/ref'ed in the appropriate Vgroup.

    3) The FIRST path taken to an H5 object for the H5toh4 conversion
    may involve a HARDLINK, a SOFTLINK, or neither.  The same is
    true of any additional paths to the same object.

Platform tested:
    Solaris2.5
1998-12-20 23:05:28 -05:00
Paul Harten
7d9d6add9d [svn-r977] Purpose:
New feature

Solution:
    Added some new new tests to show that paths involving HARDLINKS
    and paths involving SOFTLINKS convert existing objects from H5 to
    H4 the same way that paths involving no links does.

Platform tested:
    Solaris2.5
1998-12-20 22:50:15 -05:00
Robb Matzke
03532b98d4 [svn-r976] Snapshot 1998-12-19 04:38:16 -05:00
Ruey-Hsia Li
bf0208d474 [svn-r975] Put back Paul's updates. 1998-12-18 10:02:13 -05:00
Robb Matzke
4797dc9771 [svn-r974] Snapshot 1998-12-18 04:27:28 -05:00
Ruey-Hsia Li
c91120b4b8 [svn-r973] Added tests for scalar data space, string data type, loop detection and
compound data type.
1998-12-17 16:53:07 -05:00
Robb Matzke
09aaf83332 [svn-r971] Changes since 19981214
----------------------

./INSTALL
	Added warning that enabling debugging code can adversely
	affect performance even when the debugging isn't turned on at
	run-time. Performance testing shows that under certain
	circumstances (like data type conversions of compound types)
	the H5_timer functions, although only a few lines each,
	contribute a fairly large percent to the execution time.

./src/H5T.c
./src/H5Tpkg.h
./src/H5Tpublic.h
	Improved the H5Tunregister() function to make unregistering
	more flexible.  It takes the same arguments as H5Tregister()
	but also accepts wild cards.  All conversion functions that
	match the H5Tunregister() search criteria are removed from the
	global type conversion table.

	The H5Tregister_hard() and H5Tregister_soft() were combined
	into a single function called H5Tregister() which is the
	counterpart to H5Tunregister(). A new `persistence' argument
	was added to differentiate between the two types of conversion
	functions.

	The application is allowed to register a hard conversion
	function for the no-op conversion path although the library
	isn't obligated to call it (it usually does). This is mostly
	for completeness, but the application might use it to help
	determine if the raw data pipeline was able to use the
	optimized path for the case when no type conversion is
	necessary. The library doesn't allow this path to be
	unregistered although the application can redefine it as often
	as it likes.

	Fixed the type conversion tables in preparation for MT-safety
	and to fix previosly-known design bugs wrt. unregistering
	conversion functions or changing the C function associated
	with a conversion path. The MT-safety stuff is documented in a
	separate white paper.

	Increased the conversion function debugging name from 9
	characters to 31 characters so the output can be more
	descriptive.

	Moved conversion path statistics from the H5T_cdata_t member
	into the conversion path itself.  This makes H5T_cdata_t
	contain only application-visible data structures.

./src/H5A.c
./src/H5D.c
./src/H5Ofill.c
./src/H5P.c
./src/H5T.c
	Improved the way type conversion functions are called so the
	caller doesn't have to check for data type debugging and
	increment type conversion timers and statistics.

	Changed check for no-op conversion since it is now
	application-definable and there may even be more than one
	definition at a time in a multi-threaded application (one
	thread might be using the no-op conversion path when some
	other thread changes its definition -- the first thread still
	sees the original defintion until it's done with the
	operation).

./doc/html/Datatypes.html
	Updated the user guide to reflect the changes to data type
	conversion registration functions.

./bin/trace
./src/H5.c
	Added tracing support for the new H5T_pers_t data type.

./test/dtypes.c
	Added printf to display alignment value if non-aligned data
	types are being tested.

./test/h5test.c
	Modified the H5Tunregister() calls to use the new
	arguments. All 94 of those calls can be replaced by a single
	call to the new H5Tunregister() function.

./src/H5.c
	Added HAVE_GETTIMEOFDAY around an auto variable and
	initialized the elapsed time to zero when gettimeofday() is
	not available.

./src/H5F.c
./src/H5Fprivate.h
./src/H5P.c
	Added an H5*_init() functions which do the same thing as
	H5*_init_interface() but can be called from other packages and
	don't do anything if the interface is already initialized.
	This fixes a couple memory leaks in applications that
	repeatedly close and open the library with H5close().

./src/H5Tconv.c
	Optimized some data alignment code in the hardware conversion
	functions.

	Hardware conversions accumulate statistics about source and
	destination data alignment and print that information when the
	conversion function is unregistered (usually when the
	application exits) if data type debugging is compiled into the
	library and enabled at run-time.

	The conversion caching was cleaned up for the compound data
	type conversion function. It now caches conversion paths in a
	manner that will be MT-safe and is much simpler than the old
	method. Also cleaned up some array index maps.

./src/H5detect.c
	Fixd mispelling of alingemnt.

./src/H5private.h
	Changed `TRUE' to `1' in assignment to interface_initialize_g
	in FUNC_ENTER macro definition.

./tools/testh5dump.sh
	Completely rewritten to make it shorter, better documented,
	and conforming to most of the other test outputs.

	The comparison of the actual output with the expected output
	is insensitive to differences in white space.  The test now
	passes for the first time on Linux where the output width
	wasn't as expected but the output was otherwise correct.

./tools/testfiles/tall-1.ddl
./tools/testfiles/tall-2.ddl
./tools/testfiles/tall-3.ddl
./tools/testfiles/tattr-1.ddl
./tools/testfiles/tattr-2.ddl
./tools/testfiles/tattr-3.ddl
./tools/testfiles/tattr-4.ddl
./tools/testfiles/tcomp-1.ddl
./tools/testfiles/tcomp-2.ddl
./tools/testfiles/tcomp-3.ddl
./tools/testfiles/tcomp-4.ddl
./tools/testfiles/tdset-1.ddl
./tools/testfiles/tdset-2.ddl
./tools/testfiles/tdset-3.ddl
./tools/testfiles/tdset-4.ddl
./tools/testfiles/tgroup-1.ddl
./tools/testfiles/tgroup-2.ddl
./tools/testfiles/tgroup-3.ddl
./tools/testfiles/tlink-1.ddl
./tools/testfiles/tlink-2.ddl
./tools/testfiles/tlink-3.ddl
./tools/testfiles/tlink-4.ddl
./tools/testfiles/tlink-5.ddl
./tools/testfiles/tslink-1.ddl
./tools/testfiles/tslink-2.ddl
	Changed `../h5dump' to just `h5dump'.

./config/alpha-dec-osf4.0
	Added more warning and optimization switches to the native
	compiler.
1998-12-17 14:35:20 -05:00
Robb Matzke
c26c6a4b25 [svn-r969] Snapshot 1998-12-15 04:30:20 -05:00
Robb Matzke
28e684b0af [svn-r968] Changes since 19981207
----------------------

./MANIFEST
	Added tcompound2.{dmp,h5} and tdset2.{dmp,h5} used by the
	h5toh4 testing.

./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	Added check for <sys/timeb.h> for Win32.

	Determines sizeof(char) just so we have a complete list of
	type sizes defined as preprocessor symbols.

./src/H5detect.c
./src/H5T.c
./src/H5Tpkg.h
	Detects alignment constraints. In order for this to work the
	operating system must not correct unaligned data (for
	instance, on the DEC Alpha one might need to say `uac p
	sigbus' before running H5detect).

./src/H5private.h
	Includes <signal.h> because it's needed by H5detect.c to
	detect alignment constraints.

./src/H5Tconv.c
	Added extra checks to all hardware conversion functions so
	they align data when necessary before the conversion.  This
	slows down the conversions somewhat but they're still much
	faster than the software conversions.

./test/dtypes.c
	By setting a constant at the top of the source you can test
	conversions where the data is aligned on various byte
	boundaries.

	By setting a constant at the top of the source you can
	simulate architectures that have alignment constraints on
	architectures that don't.

	Changed typo SIZEOF_LDOUBLE to SIZEOF_LONG_DOUBLE in a few
	places.
1998-12-14 11:19:21 -05:00
Robb Matzke
16b789409d [svn-r963] Snapshot 1998-12-08 04:23:07 -05:00
Robert Kim Yates
d0b9e6dd0a [svn-r962] Added #ifdef HAVE_PARALLEL to interprocess coordination in H5F_istore_allocate. 1998-12-07 18:36:04 -05:00
Robert Kim Yates
5ba9869b49 [svn-r961] Added barrier after MPI_File_set_size to prevent race condition:
subsequent writes were being truncated, causing holes in file.
1998-12-07 18:21:41 -05:00
Robert Kim Yates
bf250c6bb2 [svn-r960] Added interprocess coordination in H5F_istore_allocate around calls to
H5F_istore_lock and H5F_istore_inlock to prevent race between reading and
 writing data chunks that caused "holes" (i.e., sequences of 0s)
in chunked datasets.
1998-12-07 18:13:05 -05:00
Robb Matzke
b58e9a6253 [svn-r959] Changes since 19981125
----------------------

./src/H5HG.c
	Fixed a bug in the alignment calculation for the heap free
	space. The reference test passes now.
1998-12-07 13:40:54 -05:00
Paul Harten
bdc304d612 [svn-r958] Purpose:
New feature

Solution:
    Testing of Extendable Dataset support in h5toh4 converter when
    extendable dimension is first dimension.

Platform tested:
    Solaris2.5
1998-12-01 16:56:14 -05:00
Quincey Koziol
5bbc648241 [svn-r957] Updated test for dataset region code, currently generating an assertion failure
in the H5HG code for Robb to look at.
1998-11-30 14:44:30 -05:00
Quincey Koziol
6d19719526 [svn-r956] Fixes for dataset region code. 1998-11-30 14:43:54 -05:00
Robert Kim Yates
a1a8feae07 [svn-r955] Made debug print statements portable. 1998-11-30 13:42:49 -05:00
Robb Matzke
6900f5f958 [svn-r954] Snapshot 1998-11-26 04:23:22 -05:00
Paul Harten
7738afbd8a [svn-r953] Purpose:
Getting rid of Warning messages.

Problem:
    When compiling with DEBUG_H5TOH4 turned off,
    macro expansion of DEBUG_PRINT gives many warning
    messages.

Solution:
    Set macro expansion of DEBUG_PRINT to:

    #ifdef DEBUG_H5TOH4
    #define DEBUG_PRINT(s1,s2,s3,n1) ( fprintf(stderr,s1,s2,s3,n1) )
    #else
    #define DEBUG_PRINT(s1,s2,s3,n1) ( fprintf(stderr," ") )
    #endif

Platform tested:
    Solaris2.5
1998-11-25 12:39:53 -05:00
Robb Matzke
ffcbc32d66 [svn-r952] Changes since 19981125
----------------------

./doc/html/Datatypes.html
./src/H5.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tpublic.h
./src/H5detect.c
./test/chunk.c
./test/dtypes.c
./test/h5test.c
./test/mtime.c
./test/tattr.c
./test/th5s.c
./tools/h5dump.c
./tools/h5dumputil.c
./tools/h5import.c
./tools/h5ls.c
./tools/h5toh4.c
./tools/h5tools.c
	Renamed the old H5T_NATIVE_CHAR type to H5T_NATIVE_SCHAR to
	denote that it is always signed.

	Added a new H5T_NATIVE_CHAR type which has the same range,
	representation, and behavior as either H5T_NATIVE_SCHAR or
	H5T_NATIVE_UCHAR depending on the compiler and its
	command-line switches for the application source file which
	references H5T_NATIVE_CHAR. If source files are compiled with
	different switches then each source file will resolve
	H5T_NATIVE_CHAR appropriately so it matches the C type `char'
	in that source file.

	NOTE: THERE ARE OTHER DOCUMENTATION FILES THAT I DIDN'T CHANGE
	BECAUSE I CAN'T MODIFY THE SOURCE.

./test/extend.c
	Swapped two lines to prevent diagnostic messages from messing
	up the formatted output.
1998-11-25 12:21:21 -05:00
Robb Matzke
37ce8f33ca [svn-r951] Removed warning about unused static function. 1998-11-25 10:54:29 -05:00
Robb Matzke
1b31b150a3 [svn-r950] Changed the name of tohdr.c to ohdr.c 1998-11-25 10:54:11 -05:00
Robb Matzke
4354606d1e [svn-r949] Changes since 19981124
----------------------

./src/H5T.c
	Fixed a typo in the registration of the `unsigned char' to
	`unsigned long long' type conversion that caused it to not be
	registered, falling back to software whenever that conversion
	path was taken.

./MANIFEST
./test/Makefile.in
./test/testhdf5.c
./test/testhdf5.h
./test/theap.c		[REMOVED]
./test/lheap.c		[NEW]
./test/tohdr.c		[REMOVED]
./test/ohdr.c		[NEW]
./test/tstab.c		[REMOVED]
./test/stab.c		[NEW]
	Removed the `t' from the front of these names and made each
	test a stand-alone program following the format of most of the
	other tests.

./test/big.c
	Uses libh5test.a but always sets the low-level driver to 1GB
	file family.

	The `#if' near the top to set the data space to 8GB has been
	simplified now that `long_long' is always defined and the
	error message is improved when `long_long' isn't wide enough.

	Cleanup code was added to the error handling.

./test/gheap.c
./test/istore.c
	Uses libh5test.a.  Added error cleanup code.

./test/dtypes.c
./test/h5test.c
	Added 68 new tests that check hardware and software
	conversions between `long long' and `unsigned long long' and
	the other integer types.  The tests only run on machines where
	sizeof(long_long)!=sizeof(long).  We test a total of 180
	different integer conversions, half in hardware and half in
	software.

	Cut down the number of times each test is run from 5 to 1 so
	it doesn't take so long.  If you want to run more times
	there's a constant that can be changed at the top of the file.

./test/extend.c
	Removed unused variable.

./test/h5test.c
./test/h5test.h
./test/external.c
./test/fillval.c
	The h5_cleanup() returns true/false so it can be used in an `if'
	statement to clean up additional files.

./doc/html/Environment.html
	Indented.  Added HDF5_PREFIX and HDF5_DRIVER descriptions.

./src/H5P.c
	Changed the trace type for the second argument from `Iu' to
	`x' since it's an output parameter.

./INSTALL
	Added a warning that the GNU zlib that comes with the latest
	version of HDF4 is too old to use with HDF5 and must be
	renamed so configure doesn't see it when `--enable-hdf4' is
	used.
1998-11-25 09:58:22 -05:00
Robb Matzke
49ca76e303 [svn-r948] Snapshot 1998-11-25 04:27:34 -05:00
Quincey Koziol
5d0938aba6 [svn-r947] Lots of patches to enable dataset region references. The testing for these
need to be finished and checked in still.
1998-11-24 19:29:09 -05:00
Robb Matzke
0dfd13d13b [svn-r946] Changes since 19981121
----------------------

./src/H5Tconv.c
	With my poor eyesight I missed the definitions of SCHAR_MIN
	and SCHAR_MAX in <limits.h> and used CHAR_MIN and CHAR_MAX
	incorrectly. I changed all occurrences of the latter to the
	former and the new hardware integer type conversions now work
	on Irix.

./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./src/H5private.h
./src/H5.c
./test/h5test.c
	Added a wrapper for HDsnprintf() that just calls sprintf() if
	snprintf() isn't available.

./MANIFEST
	Added Paul's new h5toh4 files.
1998-11-24 10:53:55 -05:00
Robb Matzke
9db8ce23f6 [svn-r945] Snapshot 1998-11-24 04:26:48 -05:00
Robb Matzke
dedc8c37b4 [svn-r944] Changes since 19981120
----------------------

./MANIFEST
./test/Makefile.in
./test/shtype.c		[REMOVED]
	Removed shtype.c because it was all commented out.  Besides,
	these tests are done in dtypes.c now anyway.

./test/external.c
./test/fillval.c
./test/flush1.c
./test/flush2.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/unlink.c
	The tests that check the HDF5 API use the h5test support
	functions. For one thing, that means that you can specify the
	file driver that thay use by the HDF5_DRIVER environment
	variable. Possible values are:

	    HDF5_DRIVER='sec2'		Use read() and write()
	    HDF5_DRIVER='stdio'		Use fread() and fwrite()
	    HDF5_DRIVER='core'		Use malloc() and free()
	    HDF5_DRIVER='split'		Split meta and raw data
	    HDF5_DRIVER='family N'	Use file families with each
					member being N megabytes (N
					can be fractional, defaults to
					one).

	Some tests might fail for certain drivers: for instance, the
	mount and link tests fail for the `core' driver because
	they must be able to close and then reopen a file.
1998-11-23 15:40:35 -05:00
Robb Matzke
ae8f25bd43 [svn-r943] Snapshot 1998-11-22 04:26:30 -05:00
Paul Harten
c43b9183cc [svn-r942] PURPOSE:
New Feature

SOLUTION:

     h5toh4 is an H5 utility which converts HDF5 files into
     HDF4 files.  It converts only those H5 objects which have
     have mappings into H4 objects.

     Some H5 objects that may be converted into H4 objects are:

     1) H5 group objects may be converted into H4 Vgroup objects.

     2) H5 dataset objects of integer or floating point datatype
        may be converted into H4 SDS objects.

     3) H5 dataset objects of compound datatype and  rank 1  may
        be converted into H4 Vdata objects.  Field members of the
        compound datatype are constrained to be single dimensional.


Platforms tested:
    Solaris2.5, HP10.20
1998-11-21 15:14:09 -05:00
Paul Harten
8ef8c8b290 [svn-r941] Purpose:
New feature

Solution:
    This file contains routines to find all shared objects and
    committed types and store them in tables.  These routines
    are made available in the library hdf5/tools/libh5tools.a


Platform tested:
    Solaris2.5, HP10.20
1998-11-21 15:07:24 -05:00
Paul Harten
4445745e51 [svn-r940] Purpose:
New Feature

Solution:
    These files are the expected results of the HDF4 hdp dumper,
    which has been executed in the following order:

    hdp dumpvg file.hdf > file.dmp
    hdp dumpvd file.hdf >> file.dmp
    hdp dumpsds file.hdf >> file.dmp

Platform tested:
    Solaris2.5, HP10.20
1998-11-21 15:04:53 -05:00
Paul Harten
6987a7dee5 [svn-r939] Purpose:
New Feature

Solution:
    This is a tester for the h5toh4 converter.  It is implemented
    on different HDF5 files to produce HDF4 files.  After each HDF4
    file is produced,  the file is run through the HDF4 dumper hdp.
    The dumper results are compared with expected results and any
    differences are noted.

    Note: The "/hdf4/bin" directory needs to be part of the tester's
    $PATH.

Platform tested:
    Solaris2.5, HP10.20
1998-11-21 15:00:58 -05:00
Paul Harten
b13a36efd7 [svn-r938] Purpose:
Bug fix

Problem:
    semicolon missing

Solution:
    added semicolon to end of statement

Platform tested:
    Digital Unix
1998-11-21 14:51:49 -05:00
Robb Matzke
05e4309137 [svn-r937] Snapshot 1998-11-21 04:27:10 -05:00
Robb Matzke
7488c6366e [svn-r936] Changes since 19981119
----------------------

./src/H5.c
./src/H5A.c
./src/H5AC.c
./src/H5B.c
./src/H5D.c
./src/H5E.c
./src/H5F.c
./src/H5Farray.c
./src/H5Fcore.c
./src/H5Ffamily.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fmpio.c
./src/H5Fsec2.c
./src/H5Fsplit.c
./src/H5Fstdio.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5Gstab.c
./src/H5HG.c
./src/H5HL.c
./src/H5I.c
./src/H5Iprivate.h
./src/H5MF.c
./src/H5MM.c
./src/H5O.c
./src/H5Oattr.c
./src/H5Ocomp.c
./src/H5Ocont.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Ofill.c
./src/H5Olayout.c
./src/H5Omtime.c
./src/H5Oname.c
./src/H5Osdspace.c
./src/H5Oshared.c
./src/H5Ostab.c
./src/H5P.c
./src/H5R.c
./src/H5RA.c
./src/H5S.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Snone.c
./src/H5Spoint.c
./src/H5Sselect.c
./src/H5T.c
./src/H5TB.c
./src/H5Tbit.c
./src/H5Tconv.c
./src/H5V.c
./src/H5Z.c
./src/H5detect.c
./src/H5private.h
	Most of these changes are because the `interface_initialize_g'
	variable change from hbool_t to int.  It's a one line change.

	Changed the way the library is closed so we have more control
	over the order the interfaces are shut down.  Instead of
	registering an atexit() function for every interface in some
	haphazard order we just register one: H5_term_library() which
	then calls the H5*_term_interface() functions in a
	well-defined order.

	If the library is closed and then reopened repeatedly by
	calling H5close() and H5open() in a loop we only add one copy
	of the library termination functions with atexit().

	Termination is a two-step process in order to help detect
	programming errors that would cause an infinite loop caused by
	the termination of one interface waking up some other
	previously terminated interface.  The first step terminates
	the interface and *marks it as unusable*.  After all
	interfaces are terminated then we mark them all as usable
	again.  The FUNC_ENTER() macro has been modified to return
	failure or to dump core (depending on whether NDEBUG is
	defined) if we try to call an interface while it's shutting
	down.

./src/H5.c
	The H5dont_atexit() function returns failure if it's called
	more than once or if it's called too late.  However, the error
	stack is not automatically printed on failure because the
	library might not be initialized yet

./test/chunk.c
./test/flush1.c
./test/flush2.c
./test/iopipe.c
./test/overhead.c
./test/ragged.c
	Changed the extra cast for Win32 so we do floating point
	division again -- it was just confusion about precedence and
	associativity of casting and the C coercion rules. Removed
	extra carriage returns inserted by broken operating system.

./src/H5Ffamily.c
	Fixed an bug where H5F_fam_write() lowered the EOF marker for
	one of the family members causing H5F_fam_read() to read
	zeros.

./test/h5test.h		[NEW]
./test/h5test.c		[NEW]
./test/Makefile.in
./test/bittests.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
	Support library for test files.  This isn't done yet but
	Katie's contractions are ~10 minutes apart so I figured I
	better back this stuff up just in case I'm not here next
	week...

	Eventually all test files will understand HDF5_DRIVER to name
	the low level file driver and parameters so we can easily test
	various drivers.  They will also understand HDF5_PREFIX to
	prepend to the beginning of file names which is necessary for
	testing ROMIO with various drivers. Also, the cleanup function
	will know how to use the file name prefix and will understand
	different file driver naming schemes like file families. I'm
	not sure they'll understand the `gsf:' type prefixes yet.

	Note, the external test is completely commented out because
	I'm in the middle of modifying it.  It will still compile and
	run but it doesn't test anything at the moment.
1998-11-20 22:36:51 -05:00
Robb Matzke
6345a417a3 [svn-r934] Snapshot 1998-11-20 04:27:12 -05:00
Patrick Lu
a482bd8e5b [svn-r933] moved the include for io.h into a block surrounded by HAVE_IO_H 1998-11-19 15:10:17 -05:00
Patrick Lu
b31cc0e3ab [svn-r932] added a cast for the (__int64)->double. 1998-11-19 14:17:26 -05:00
Patrick Lu
3afdf4ac7e [svn-r931] added io.h in the stdc_header section 1998-11-19 14:15:13 -05:00