Commit Graph

321 Commits

Author SHA1 Message Date
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
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
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
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
071aa057aa [svn-r907] Changes since 19981111
----------------------

./INSTALL
	Added instructions about specifying a path for GNU zlib and
	HDF4 headers and library.

	Added comments for each of the tool names.  Added h5toh4 as a
	tool name.

./configure.in
./conigure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	The config/* scripts get invoked with $CC_BASENAME set the
	base name of the compiler in order to make it easier to handle
	setting compiler flags for different compilers in a big case
	statement.  For instance, if $CC has the value

	    /usr/local/mpi/bin/mpicc -ansi -64

	then $CC_BASENAME will be `mpicc'.  The $CC_BASENAME is not
	set if $CC is not set.

	Fixed alignment in `configure --help'.

	An include and/or library path can be specified for GNU zlib
	if configure can't find it in normal places.  The "normal"
	means wherever your compiler normally searches, including
	search paths you've added through environment variables like
	CPPFLAGS and LDFLAGS.  The INSTALL file has instructions.

	The `-ljpeg' library is detected.

	If `ssize_t' is not found then a #define is added to
	H5config.h similar to what we already do for `size_t'.

	We detect the hdf5 header file `mfhdf.h' and libraries
	`-lmfhdf' and `-ldf' and if found define the H5TOH4 and
	TESTH5TOH4 Makefile variables.  The user can specify an
	include and/or library path. The INSTALL file has
	instructions.

	The `RUNTEST' variable has been split into `RUNSERIAL' and
	`RUNPARALLEL' because these are different commands.  The
	makefile still uses `RUNTEST', which defaults to the RUNSERIAL
	value.  The new testpar/Makefile.in sets RUNTEST to the
	RUNPARALLEL value. The default RUNSERIAL value is empty and
	the default RUNPARALLEL value is `mpirun -np 2'.  These can
	both be overridden in the config/* files.  To make the value
	the empty string set it like `RUNPARALLEL=none' in the
	config/* file.

	The new testpar/Makefile is generated from testpar/Makefile.in

./config/commence.in
	Added the RUNSERIAL and RUNPARALLEL makefile definitions.

./src/Makefile.in
	The `H5detect' program is run with RUNSERIAL, which is empty
	on all platforms except intel-osf1 (ASCI/Red)

./config/conclude.in
	Removed the `.c.a:' implicit rule -- we don't use it any more.

./config/BlankForm
./config/alpha-dec
./config/alpha-dec-osf4.0
./config/freebsd2.2.7
./config/hpux10.20
./config/hpux9.03
./config/intel-osf1
./config/irix5.3
./config/irix6.2
./config/irix64
./config/linux
./config/powerpc-ibm-aix4.2.1.0
./config/rs6000-ibm-aix4.1.4.0
./config/solaris2.5
	All of these files have been updated to hande multiple
	compilers. Most of them assume `cc' if CC is not set. The
	documentation in `BlankForm' has been updated and
	documentation in the other files refer to `BlankForm'.

	The intel-osf1 uses LDFLAGS instead of LIBS to specify the extra
	library search paths.

./examples/Makefile.in
./test/Makefile.in
./tools/Makefile.in
	Simplified by grouping some dependency information together
	more succinctly.

	The tools Makefile.in has been modified to work with the
	`h5toh4' and `testh5toh4' programs.  Until Paul checks these
	in you may have problems compiling.  If so, just create files
	h5toh4.c and testh5toh4.c that contain:

	    #include <stdio.h>
	    int main(int argc, char *argv[]) {
	        fprintf(stderr, "%s: not implemented\n", argv[0]);
		return 1;
	    }

./src/H5public.h
	Removed definition for `ssize_t' since this is now handled by
	configure in H5config.h with a #define.


./MANIFEST
./testpar/Makefile.in	[NEW]
	Added a makefile for parallel tests.  As soon as we get this
	working properly we can remove the other four makefiles in
	that directory and maintain just one.
1998-11-13 10:06:06 -05:00
Quincey Koziol
0a4f756744 [svn-r902] Added H5Snone.c 1998-11-12 19:26:28 -05:00
Robb Matzke
254ae8d43d [svn-r859] Changes since 19981030
----------------------

./MANIFEST
	Added new Pablo files HDF5record_RT.h and ProcIDs.h

./acconfig.h
./configure		[REGENERATED]
./configure.in
./src/H5.c
./src/H5Vprivate.h
./src/H5config.h.in	[REGENERATED]
./src/H5private.h
./src/H5public.h
./test/big.c
	Added more configuration stuff for the Win32 environment. Removed all
	the #ifdef WIN32 from the source and replaced them with OS-independent
	stuff.  Specifics follow:

	Check for non-Posix.1 `st_blocks' field in `struct stat' which is used
	by the big file test to decide if the file system supports holes.  If
	the st_blocks field isn't present then we just skip the test.

	Configure checks for <io.h> <sys/resource.h> <sys/time.h> and
	<winsock.h> and defines HAVE_IO_H, HAVE_SYS_RESOURCE_H,
	HAVE_SYS_TIME_H and HAVE_WINSOCK_H when they're found.

	Configure checks whether both <sys/time.h> and <time.h> can be
	included and defines SYS_TIME_WITH_TIME if so.  Otherwise include only
	<sys/time.h> or <time.h> even if both exist.

	Configure checks sizeof(__int64) and defines SIZEOF___INT64 to the
	result or to zero if __int64 isn't defined.  The source uses `long
	long' in preference to `__int64'.

	Removed null WIN32 definition for `inline' since such a definition
	already exists in H5config.h

	Protected gettimeofday() calls in debugging code with
	HAVE_GETTIMEOFDAY instead of WIN32.

./src/H5F.c
./src/H5Flow.c
./src/H5Fmpio.c
./src/H5Fsec2.c
./src/H5Fstdio.h
./src/H5P.c
./src/H5Tconv.c
./src/H5private.h
	Removed #include of system files from library source files and
	consolodated them into H5private.h where they're protected by various
	configuration macros (most of them were duplicated there already
	anyway).

./test/big.c
./test/chunk.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
./test/fillval.c
./test/flush1.c
./test/flush2.c
./test/iopipe.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/overhead.c
./test/ragged.c
./test/shtype.c
./test/unlink.c
	Protected system #include's with #ifdef's from H5config.h.

	Undefined NDEBUG since some of the tests rely on assert() to check
	return values.

	Removed WIN32 definitions for __unused__ since this can be controlled
	by the definition of HAVE_ATTRIBUTE in H5config.h

./test/testhdf5.h
	Removed the CLEAN_CMD definition because we no longer use it.
	Albert's cleanup() functions replaced it.

./test/fillval.c
	Initialized auto hid_t variables to fix warnings in error recovery
	code when data flow analysis is turned on in compilers.

./test/h5tools.c
	Initialized an auto variable to fix a compiler warning.

./test/chunk.c
./test/ragged.c
	The WIN32 had some unsigned variables changed to signed because the
	compiler generates warnings when coercing unsigned to double(?).  I
	changed them back to unsigned because they really are unsigned
	quantities. If this the change was just to shut up extraneous warnings
	then perhaps a compiler flag can do the same; otherwise if the
	compiler generates bad code then we should supply a patch file instead
	messing up source code with bug work-arounds.

./src/H5detect.c
	Protected system #include's with #ifdef's from H5config.h thereby
	removing a WIN32.

	If getpwuid() doesn't exist (HAVE_GETPWUID) then we assume that
	`struct passwd' doesn't exist either (we don't really need it in that
	case).

	The H5T_NATIVE_LLONG and H5T_NATIVE_ULLONG are defined in terms of
	`long long' or else `__int64' or else `long' depending on what's
	available.

./src/H5Flow.c
./src/H5Ofill.c
	Added __unused__ to some function arguments that aren't used when
	assertions are turned off.

./src/H5V.c
	Changed an auto variable name in some hand-inlined code to get rid of
	a warning about the variable shadowing a previous auto.
1998-11-02 12:58:28 -05:00
Frank Baker
340c89a358 [svn-r836] Added files:
hdf5/doc/html/RM_H5I.html
	hdf5/doc/html/RM_H5R.html
	hdf5/doc/html/References.html

Labelled all files in hdf5/doc/src/ as "do not distribute."

Added hdf5/doc/html/DDL.html, but labelled as "do not distribute."
1998-10-29 20:26:52 -05:00
Ruey-Hsia Li
049e666104 [svn-r826] Added files ./tools/testfiles/*. 1998-10-29 01:39:43 -05:00
Robb Matzke
5013e0d2b5 [svn-r807] Added pablo file names 1998-10-27 12:29:12 -05:00
Robb Matzke
f7545efc76 [svn-r795] Changes since 19981026
----------------------

./MANIFEST
./test/th5s.h5			[NEW]
./test/th5s.c
	Added a test to make sure that creating a data space with too
	large a rank fails.

	Added a test to make sure that reading a file that has a
	dataset with a space with too large a rank fails.  Actually,
	this one is a little weird: the code that reads the data space
	message assumes the space is scalar if the message cannot be
	read. Fortunately the layout message fails also, preventing
	the dataset from being opened.  However, since the data type
	message is still visible h5ls will report that the object is a
	named data type.

./test/space_overflow.c		[NEW]
	This is the little program that makes the th5s.h5 file.

./src/H5A.c
./src/H5R.c
./src/H5Sselect.c
	Updated trace info.

./src/H5Olayout.c
./src/H5Osdspace.c
	Added code to fail if the dimensionality is too large when
	decoding a layout or simple data space message.

./src/H5Oprivate.h
	Redefined H5O_LAYOUT_NDIMS in terms of H5S_MAX_RANK.

./src/H5P.c
./src/H5S.c
	Check for ndims>H5S_MAX_RANK in API function calls, added
	assert to internal functions.

./src/H5V.c
	Changed a `<' to an `<=' in an assert.

./test/flush2.c
	Includes stdlib.h for getenv().

./tools/h5tools.c
	Able to handle up to H5S_MAX_RANK dimensions during output.
1998-10-26 14:55:54 -05:00
Robb Matzke
db9525c2a3 [svn-r789] Changes since 19981023
----------------------

./MANIFEST
./test/Makefile.in
./test/flush1.c			[NEW]
./test/flush2.c			[NEW]
	Test to see if calling H5Fflush() results in a consistent
	file.

./src/H5.c
./src/H5A.c
./src/H5D.c
./src/H5Fistore.c
./src/H5I.c
./src/H5S.c
./src/H5Shyper.c
./src/H5Sselect.c
./src/H5TB.c
	Changed comparisons against SUCCEED and FAIL to >=0 and <0 in
	about 15 places.

./src/H5.c
./src/H5V.c
./src/H5detect.c
./src/H5private.h
./src/H5public.h
./test/big.c
./test/chunk.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/external.c
./test/fillval.c
./test/iopipe.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/ragged.c
./test/shtype.c
./test/unlink.c
	Removed ^M from the end of lines inserted on broken OS's ;-)

./src/H5private.h
	Changed c++ comments to c comments.

./src/H5R.c
	Added tracing macros.
1998-10-26 09:49:52 -05:00
Robb Matzke
e1d1bf607f [svn-r779] Changes since 19981022
----------------------

./MANIFEST
./doc/html/study.html		[DELETED]
./doc/html/study_1000x1000.gif	[DELETED]
./doc/html/study_250x250.gif	[DELETED]
./doc/html/study_499x499.gif	[DELETED]
./doc/html/study_5000x1000.gif	[DELETED]
./doc/html/study_500x500.gif	[DELETED]
./doc/html/study_p1.gif		[DELETED]
./doc/html/study_p1.obj		[DELETED]
	Removed these old files -- the data was from before the chunk
	cache was implemented and therefore the whole file was pretty
	much garbage.

./MANIFEST
./doc/html/Chunking.html	[NEW]
./doc/html/Chunk_f1.gif		[NEW]
./doc/html/Chunk_f1.obj		[NEW]
./doc/html/Chunk_f2.gif		[NEW]
./doc/html/Chunk_f2.obj		[NEW]
./doc/html/Chunk_f3.gif		[NEW]
./doc/html/Chunk_f4.gif		[NEW]
./doc/html/Chunk_f5.gif		[NEW]
./doc/html/Chunk_f6.gif		[NEW]
./doc/html/Chunk_f6.obj		[NEW]
	New documentation for chunking.  It's not quite complete but
	it gives a pretty good idea of some of the issues affecting
	performance.
1998-10-23 10:44:02 -05:00
Robb Matzke
cfb2a264f1 [svn-r761] Changes since 19981013
----------------------

./src/H5.c
	Fixed a signed vs. unsigned comparison.

./src/H5D.c
	Setting a fill value of all zeros will cause the fill value to
	be written to the dataset instead of relying on the low-level
	file driver initializing unwritten areas with zero.

./src/H5D.c
./src/H5F.c
./src/H5Fprivate.h
./src/H5G.c
./src/H5Gpkg.h
./src/H5Gprivate.h
./src/H5O.c
./src/H5T.c
	More file mounting stuff.

./src/H5I.c
	Fixed a bug where trying to close an invalid object id caused
	a core dump.  For instance, H5Gclose(-1).

./MANIFEST
./test/Makefile.in
./test/mount.c		[NEW]
	Mounting tests.

./src/H5R.c
	Fixed a couple (herr_t)NULL casts.
1998-10-14 14:35:08 -05:00
Quincey Koziol
85b6253118 [svn-r755] Added reference test to manifest. 1998-10-13 16:27:53 -05:00
Quincey Koziol
0a91cc84c1 [svn-r741] Added H5R*.[ch] files 1998-10-07 16:03:47 -05:00
Quincey Koziol
2c4af336d3 [svn-r739] Switched ragged array "H5R" API to "H5RA" to make room for the reference API. 1998-10-06 16:37:57 -05:00
Robb Matzke
21943f5d35 [svn-r735] Changes since 19981002
----------------------

./src/H5D.c
	Fill values are working for contiguous datasets now except
	there are two things that need more support from the data
	space layer, specifically the ability to form a selection from
	the difference of two selections.  They are (1) extending an
	external contiguous dataset, (2) optimization by delaying the
	fill until after the first H5Dwrite().

	Renamed H5D_allocate() to H5D_init_storage() since allocation
	is only part of the story. Added a data space argument so it
	doesn't have to query the space from the object header -- the
	space is always available in the caller anyway.

	Removed `#ifdef HAVE_PARALLEL' from a few places where it
	wasn't necessary.  We don't need it around code that doesn't
	compile anything from mpi.h or mpio.h.

./src/H5Fistore.c
	Uncommented H5F_istore_alloc() for non-parallel and moved the
	`#ifdef HAVE_PARALLEL' just around Kim's barrier.

./src/H5Fmpio.c
	Wrapped a couple long lines.

	Got rid of two signed vs. unsigned comparison warnings.

./MANIFEST
./test/Makefile.in
./test/fillval.c	[NEW]
	Added tests for fill values.  The contiguous dataset extend
	test is disabled until H5S_SELECT_DIFF is implemented.

./tools/Makefile.in
	Fixed a bug where `make test' didn't build the executables
	first. This should cause the snapshots to start up again.

./Makefile.in
	Changed to build in `test' directory before `tools'
	directory. We want the library tests to pass before we even
	start considering the tools.  You can still build and/or test
	the tools independent of the library tests passing.
1998-10-05 16:01:10 -05:00
Robb Matzke
849d36019d [svn-r733]
Changes since 19980930
----------------------

./MANIFEST
./doc/html/H5.format.html
./src/H5D.c
./src/H5Dprivate.h
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fprivate.h
./src/H5O.c
./src/H5Ofill.c		[NEW]
./src/H5Oprivate.h
./src/H5P.c
./src/H5Ppublic.h
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Spoint.c
./src/H5Sprivate.h
./src/Makefile.in
	Added fill values as documented in previous e-mails. They only
	work for chunked datasets so far.

./src/H5E.c
./src/H5Epublic.h
./src/H5P.c
	Changed H5E_TEMPLATE to H5E_PLIST.

./src/H5Omtime.c
./src/H5V.c
	Fixed a typo in a comment.

./src/H5Tconv.c
	Fixed a bug in compound type conversions that caused an
	assertion to fail.
1998-10-01 13:56:51 -05:00
Robb Matzke
beab7f66e5 [svn-r730] Changes since 19980928
----------------------

./MANIFEST
	Changed freebsd2.2.1 to freebsd2.2.7 to match change in file name.

	Added a few missing files.  Are all of these supposed to be
	distributed?

	  ./tools/testfiles/h5dumptst.c
	+ ./tools/testfiles/tall-1.ddl
	+ ./tools/testfiles/tall-2.ddl
	+ ./tools/testfiles/tall-3.ddl
	  ./tools/testfiles/tall.ddl
	  ./tools/testfiles/tall.h5
	+ ./tools/testfiles/tattr-1.ddl
	+ ./tools/testfiles/tattr-2.ddl
	+ ./tools/testfiles/tattr-3.ddl
	+ ./tools/testfiles/tattr-4.ddl
	  ./tools/testfiles/tattr.ddl
	  ./tools/testfiles/tattr.h5
	+ ./tools/testfiles/tdset-1.ddl
	+ ./tools/testfiles/tdset-2.ddl
	+ ./tools/testfiles/tdset-3.ddl
	+ ./tools/testfiles/tdset-4.ddl
	  ./tools/testfiles/tdset.ddl
	  ./tools/testfiles/tdset.h5
	+ ./tools/testfiles/tgroup-1.ddl
	+ ./tools/testfiles/tgroup-2.ddl
	+ ./tools/testfiles/tgroup-3.ddl
	  ./tools/testfiles/tgroup.ddl
	  ./tools/testfiles/tgroup.h5
	+ ./tools/testfiles/tslink-1.ddl
	+ ./tools/testfiles/tslink-2.ddl
	  ./tools/testfiles/tslink.ddl
	  ./tools/testfiles/tslink.h5

./src/H5B.c
./src/H5Bprivate.h
./src/H5D.c
./src/H5Dprivate.h
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fprivate.h
./src/H5Gstab.c
./src/H5P.c
./src/H5Ppublic.h
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Spoint.c
./src/H5Sprivate.h
./test/istore.c
	Implemented split ratios as documented in previous
	e-mails. Frank, the new API functions are H5Pget_btree_ratios()
	and H5Pset_btree_ratios().

./src/H5Sall.c
./src/H5Shyper.c
./src/H5Spoint.c
./src/H5Sprivate.h
	Added more type checking for the data transfer property list
	passed to these functions.

./src/H5D.c
	Added a dataset transfer property list as an argument to
	H5D_allocate() for the parallel version in order to pass split
	ratios down to H5F_istore_lock().  Eventually we won't need
	the split ratios for H5D_allocate() because we'll build a
	completely full B-tree from the leaves up, but it might be
	useful to have other transfer properties at that level
	anyway.  I always caled H5D_allocate() with &H5D_dflt_xfer.

./MANIFEST
./test/Makefile.in
./test/overhead.c	[NEW]
	Added an `overhead' test run by `make timings'.
1998-09-30 13:50:49 -05:00
Robb Matzke
c0941f01e3 [svn-r726] Changes since 19980924
----------------------

./MANIFEST
./src/H5B.c
./src/H5Bprivate.h
./src/H5G.c
./src/H5Gnode.c
./src/H5Gprivate.h
./test/Makefile.in
./test/unlink.c		[NEW]
	Finished H5Gunlink() and H5Grename().

./src/H5F.c
./src/H5Fistore.c
./src/H5Fprivate.h
	Removed the last memcpy() from the chunk cache.

./src/H5Fistore.c
	The offset of a chunk within a dataset is an 8-byte quantity
	per dimension instead of 4 bytes.

./src/H5HL.c
	Fixed infinite loops in H5HL_remove().
1998-09-28 09:20:21 -05:00
Robb Matzke
311e4c9ebf [svn-r720] Changes since 19980922
----------------------

./src/H5F.c
./src/H5Fprivate.h
./src/H5P.c
./src/H5Ppublic.h
./test/chunk.c
./test/dsets.c
	The number of slots in the raw data cache can be queried or
	set with H5Pget/set_cache(), which now take an extra argument.
	The default number of slots is 521 and the default maximum
	size is 1MB.

./src/H5Fistore.c
./src/H5Fprivate.h
	Finished optimizations.  The cache is now a hash and a linked
	list instead of an array.  The cpu time on my machine for
	H5F_istore_lock() has been cut by 60% and H5F_istore_unlock() by
	35%.
1998-09-24 10:51:05 -05:00
Robb Matzke
b02e452be5 [svn-r691] Changes since 19980910
----------------------

./MANIFEST
	Removed duplicate Ragged.html

./doc/src/Glossary.html
	Changed 1.0 to 1.2 since 1.0 is the current development
	branch, 1.1 will be development after beta release, and 1.2
	will be the first complete release (see Version.html).

./test/dsets.c
./test/tstab.c
	Added more tests.
1998-09-11 10:39:28 -05:00
Frank Baker
1e3bbd6cbe [svn-r688] Added new documentation files:
./doc/html/Copyright.html
    ./doc/html/Environment.html
    ./doc/html/Ragged.html
    ./doc/src/Copyright.html
    ./doc/src/RM_H5R.html
    ./doc/src/Tools.html
1998-09-11 08:56:20 -05:00
Robb Matzke
b44eb55b33 [svn-r677] ./MANIFEST
Removed ./doc/html/H5.api.html
1998-09-09 13:19:18 -05:00
Quincey Koziol
586a7e645b [svn-r675] Added some missing files. 1998-09-09 12:31:19 -05:00
Robb Matzke
b5e2752ad6 [svn-r673] Changes since 19980908
----------------------

./COPYING
	Reformatted as text instead of C.  Removed zlib crew from the
	list of contributors since no zlib code is actually in the
	hdf5 library.

./INSTALL
./INSTALL.ascired
./MANIFEST
	Minor updates for Beta release including version number
	change.

./INSTALL_MAINT
	Added information about making a release.

./RELEASE
	Updated function list based on public header files.

./bin/checkposix
	Got rid of complaints about some obvious things.

./doc/html/H5.api.html
./doc/html/RM_H5F.html
./src/H5F.c
./src/H5Fpublic.h
./test/tfile.c
	Changed H5Fget_create_template() and H5Fget_access_template()
	to H5Fget_create_plist() and H5Fget_access_plist() since that
	conforms better to lots of other names.

./doc/html/Datatypes.html
./doc/html/ExternalFiles.html
./doc/html/Files.html
./doc/html/H5.api.html
./doc/html/H5.sample_code.html
./doc/html/RM_H5F.html
./doc/html/RM_H5Front.html
	Changed `template' to `property list', etc.

./doc/html/Ragged.html	   [NEW]
	Documentation for ragged arrays.

./src/H5Iprivate.h
./src/H5Ipublic.h
./src/H5I.c
	Changed the scope of some symbols to be more local.

./src/H5.c
./src/H5AC.c
./src/H5D.c
./src/H5E.c
./src/H5F.c
./src/H5Ffamily.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fsec2.c
./src/H5Fsplit.c
./src/H5Fstdio.c
./src/H5G.c
./src/H5Gnode.c
./src/H5HG.c
./src/H5I.c
./src/H5O.c
./src/H5Ocomp.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Omtime.c
./src/H5Oname.c
./src/H5P.c
./src/H5S.c
./src/H5Shyper.c
./src/H5Tbit.c
./src/H5Tconv.c
./src/H5V.c
./src/H5Z.c
./src/H5private.h
	Fixed some violations of our naming scheme by adding HD to the
	beginning of all Posix functions.
1998-09-08 14:15:44 -05:00
Robb Matzke
fbacf0337a [svn-r671] Changes since 19980904
----------------------

./MANIFEST
./bin/release
./bin/snapshot
	The format of the MANIFEST file has been relaxed -- comments
	and blank lines should no longer confuse the tools that use
	it.

	As before, this file should contain a list of *all* files that
	are part of HDF5, which means all files which are managed by
	CVS/SVF.  However, files can be marked so they're not part of
	a release by adding _DO_NOT_DISTRIBUTE_ after the file name.

	I've removed all the *.obj files from the distribution by
	adding _DO_NOT_DISTRIBUTE_ after their names.  I also removed
	the old white-papers that might not apply to the current
	version of the library and documentation about chunking
	performance since it's wrong now that chunk caching is
	implemented. Everyone please check the files you're
	responsible for to make sure that they should really be part
	of a release.

	To get a list of all files use
	   grep '^\.' MANIFEST | cut -f1

	To get a list of files for distribution use:
	   grep '^\.' MANIFEST | grep -v _DO_NOT_DISTRIBUTE_

	(These commands assume tabs in the MANIFEST file.  If the file
	might contain spaces then run it through `unexpand' or `tr'
	first).

./configure.in
./configure
./test/ragged.c
	Check for sigaction().

./test/Makefile.in
	The `clean' target removes the timing tests.
1998-09-08 08:38:29 -05:00
Robb Matzke
e589c2ed3d [svn-r669] Added missing file from tools directory 1998-09-04 10:20:29 -05:00
Robert Kim Yates
caefe38d87 [svn-r649] Eliminated H5Fmpioprivate. 1998-09-01 16:40:50 -05:00
Robb Matzke
697b9c5ad0 [svn-r644] Changes since 19980931
----------------------

./test/cmpd_dset.c
	Uncommented the last test again and there are still bugs.
1998-09-01 09:49:30 -05:00
Elena Pourmal
e145787beb [svn-r643] INSTALL : Section "for those who do not like to read" has been edited.
MANIFEST: New example files have been added.
1998-09-01 08:02:15 -05:00
Robert Kim Yates
c435f33870 [svn-r631] Added H5Fmpioprivate.h 1998-08-28 18:40:13 -05:00
Robb Matzke
eb5e01d37c [svn-r620] Changes since 19980825
----------------------

./MANIFEST
./src/H5R.c		[NEW]
./src/H5Rprivate.h	[NEW]
./src/H5Rpublic.h	[NEW]
./src/Makefile.in
./src/hdf5.h
./test/ragged.c		[NEW]
	Preliminary support for 2d ragged arrays for Mark Miller and
	Jim Reus.  Not fully implemented yet. The test is not actually
	part of `make test' because we still have some memory problems.

./src/H5E.c
./src/H5Epublic.h
	Added H5E_RAGGED as a major error number.

./bin/release
	Checks the MANIFEST file against `svf ls' on systems that have
	it.

./bin/trace
	Fixed a bug that caused arguments of type `void *x[]' to not
	be handled.

./src/H5.c
	Removed unused variables and changed a couple types to
	fix compiler warnings.

	Added tracing support for ragged array object ID's and arrays
	of pointers.

./src/H5D.c
	H5Dcreate() will complain if either of the property lists are
	invalid (instead of using the default).

./src/H5D.c
./src/H5Dprivate.h
	Split H5Dget_space() into an API and internal function so it
	can be called from the new ragged array layer.

./src/H5Fistore.c
	Fixed warnings about unsigned vs. signed comparisons.

./src/H5Flow.c
	Fixed a warning about a variable being shadowed in the MPI-IO
	stuff.

./src/H5Iprivate.h
./src/H5Ipublic.h
	Added the H5_RAGGED atom group.

./src/H5Shyper.c
	Fixed some freeing-free-memory errors that resulted when
	certain arrays were freed but the pointers were left in the
	data structures.  I simply set the pointers to null after they
	were freed.

./src/H5Sprivate.h
./src/H5Sselect.c
	Split the H5Sselect_hyperslab() function into an API and a
	private function so it could be called from the ragged array
	layer.

	Added H5S_SEL_ERROR and H5S_SEL_N to the switch statements to
	get rid or compiler warnings.

./src/H5Tconv.c
	Removed a misleading comment.

./test/bittests.c
	Fixed a warning about a printf().

./test/cmpd_dset.c
	Fixed warnings about unused variables because of test #11
	being commented out.

./bin/trace
	Shortened the right margin for the output to allow room for
	the `);' at the end of the TRACE() macros.
1998-08-27 11:48:50 -05:00
Robb Matzke
49133159c8 [svn-r609] Debugging.html
Fixed errors

H5.c
	Fixed core dump with setvbuf() for debugging.

H5Fistore.c
	Fixed bug with sparse datasets.

H5Omtime.c
	Found a typo in "Posix Programmer's Guide".  The `%z' in the
	strftime() should be `%Z' instead.

H5T.c
H5Tpublic.h
	Improved api tracing for H5Tinsert_array().

h5tools.c
	Doesn't dump core for empty datasets.
1998-08-20 17:57:35 -05:00
Albert Cheng
f5fb0d9db9 [svn-r607] Added new entries for source files of tools/h5dump. 1998-08-19 19:22:24 -05:00
Robb Matzke
e455040749 [svn-r606] Debugging can be enabled/disabled at runtime though code is still
conditionally included at compile time.  Tracing and debugging share
the same environment variable.  All is documented in Debugging.html.
1998-08-19 17:46:31 -05:00
Albert Cheng
da3fcf286a [svn-r602] Added entry of H5Smpio.c. 1998-08-18 13:26:32 -05:00
Robert Kim Yates
692a2f0859 [svn-r592] Added testpar/Makefile.ibmsp. 1998-08-13 16:11:03 -05:00
Robb Matzke
678eb19d71 [svn-r588] Changes since 19980810
----------------------

./MANIFEST
./src/H5Ssimp.c		[REMOVED]
./src/Makefile.in
	Removed H5Ssimp.c since it was no longer used.

./bin/snapshot
	Fixed a few minor things to make it work better.

./src/H5D.c
	Cleaned up H5D_read() and H5D_write() by combining some code
	in each. Added timing calls around the data space calls when
	H5S_DEBUG is defined.

./src/H5S.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Spoint.c
./src/H5Sprivate.h
	Changed H5S_find() so it returns a table entry again instead
	of copying the data into a caller-supplied buffer.  This
	allows the timers to be stored in the table and updated by the
	caller.  Added H5S_register() to register new table entries
	and added entry creation to all the H5S selection
	methods. Also changed lots of global functions to static
	functions.

./src/H5Fistore.c
	Fixed a memory bug in the raw data cache.
1998-08-13 15:17:47 -05:00
Robb Matzke
de87544235 [svn-r578] Changes since 19980805
----------------------

./MANIFEST
	Replaced Compression.html with Filters.html

./doc/html/Filters.html
./src/H5Ocomp.c
./src/H5P.c
./src/H5Ppublic.h
./src/H5Z.c
./src/H5Zprivate.h
	Added two extra arguments to H5Pget_filter() in order to
	retrieve the filter name.  The name is the name registered for
	the filter with H5Zregister(), but if the dataset creation
	property originally came from an existing file then the name
	is that which is stored in the file.

./tools/h5ls.c
	The `-v' option now prints the names of the filters.

./src/H5B.c
./src/H5Fistore.c
./src/H5O.c
./src/H5Oefl.c
./src/H5Oprivate.h
./src/H5P.c
	Plugged a memory leak.

./src/H5MMprivate.h
	H5MM_malloc(0) and H5MM_calloc(0) actually allocate a single
	byte in order to be sure that we get a valid pointer.

./src/H5S.c
./src/H5Sselect.c
	Fixed pointer->integer conversions in error return values in
	three places.
1998-08-06 14:39:22 -05:00
Robb Matzke
bd3ae84dde [svn-r556] *** empty log message *** 1998-07-30 15:38:31 -05:00
Robb Matzke
c7b935a9ac [svn-r547] Changes since 19980729
----------------------

./MANIFEST
./test/Makefile.in
./test/mtime.c		[NEW]
	Test for the modification time message.

./src/H5AC.c
./src/H5Fistore.c
	Turned off printing of statistics on H5close() if H5AC_DEBUG
	isn't defined.
1998-07-30 11:38:21 -05:00
Robb Matzke
a34534c9b8 [svn-r546] Changes since 19980724
----------------------

./MANIFEST
./doc/html/H5.format.html
./src/H5O.c
./src/H5Oprivate.h
./src/H5Omtime.c	[NEW]
./src/H5private.h
./src/Makefile.in
	Added the modification time message.  If an object header has
	this message then it's value is updated with the current time
	whenever anything changes in the object header.

./acconfig.h
./configure.in
	Alas, there seems to be no standard way to convert a string
	time like 19980727122800 in UTC to a time_t since mktime()
	only converts local times to time_t.  So I've modified the
	configuration to check for various ways of getting the time
	zone information:

	   * Added checks for the `tm_gmtoff' field of `struct tm'.
	   * Added a check for the `timezone' global variable.
	   * Added a check for `struct timezone'.
	   * Added a check for BSDgettimeofday().
	   * Added a check for gettimeofday() although it doesn't
	     actually set the timezone argument on some systems.
	   * Added a check to see if `tm_zone' is a member of `struct tm'.
	   * Added a check to see if `tzname' is a global variable.
	   * Added a check to see if `struct tm' is defined in time.h
	     or sys/time.h.

	It's not difficult to get the right UTC modification message
	into the object header, but some systems might have problems
	getting the right time back out (Irix64 is one) and those
	systems will report zero for the H5G_stat_t.mtime from an
	H5Gstat() call as if the mtime message isn't even present.  It
	will, however, continue to be updated as normal.

./src/H5G.c
./src/H5Gpublic.h
	The H5G_stat_t struct now contains an `mtime' field which will
	hold the object modification time.  If the object has no
	object modification time then the `mtime' will be initialized
	to zero.

	Fixed a bug in H5G_stat() that caused the `objno' field of the
	H5G_stat_t to be set incorrectly on some machines.

./src/H5D.c
	Writing to external datasets fail if the hdf5 file is not open
	for writing.

	A modification time message is added to the dataset object
	header when it's created and H5O_touch() is called from
	H5D_write() to update that message.

./src/H5T.c
	Fixed a bug in H5Tget_member_dims() that caused a segmentation
	fault if one of the output array arguments was the null
	pointer.

	Relaxed the member dimension checking in H5Tinsert_array() so
	it can also be used for scalar members.

./test/Makefile.in
	Added additional file names to the `mostlyclean' target.

./tools/h5dump.c
./tools/h5tools.h
	Increased the temporary buffer size to 1MB.

	Added support for printing compound data types with array
	members.

	When printing H5T_NATIVE_CHAR and H5T_NATIVE_UCHAR we escape
	double quote characters.

./tools/h5ls.c
	Changed the output format a little because we were starting to
	get too much info to fit on a line.  Without `--verbose' each
	object occupies one line of output.  Otherwise, additional
	information is printed below the object name: object file
	address, comment, and modification time.  If `--dump' is given
	then the data is printed after the other information.

./test/cmpd_dset.c
	Changed the way the dataset is initialized to be more uniform.
1998-07-29 11:43:59 -05:00
Robb Matzke
c8d2f1e17a [svn-r537] Changes since 19980722
----------------------

./src/H5A.c
./src/H5Apublic.h
./test/tattr.c
	Switched the order of the second and third argument of
	H5Aget_name() to make it consistent with other functions that
	take buffers and buffer sizes.

./src/H5G.c
./src/H5Gpublic.h
./src/H5Gprivate.h
	The H5Gget_comment() function returns the size of the comment
	including the null terminator.  If the object has no comment
	then zero is returned.  If an error occurs then a negative
	value is returned.

./MANIFEST
./tools/Makefile.in
./tools/h5tools.h	[NEW]
./tools/h5dump.c	[NEW]
	Created a library for printing values of datasets in a way
	that looks nice.  It's not done yet, but I needed it for
	debugging the contents of files from Jim Reus.

./tools/h5ls.c
	Added the `-d' and `--dump' options which cause the contents
	of a dataset to be printed.  Added `-w N' and `--width=N'
	options to control how wide the raw data output should be. If
	you want single-column output then say `-w1'.

	Printing dataset values can now handle datasets of any integer
	or floating point atomic type.  As a special case, integers
	which are one byte wide are treated a character strings for
	now.

	Sample output:
	    $ h5ls --dump --width=60 banana.hdf
	    ARCHIVE                   0:0:0:744            Dataset {52/Inf}
		Data:
		    (0) "U struct complex { double R; double I; };\012V"
		    (43) " double;\012"
	    U                         0:0:0:2500           Dataset {256/512}
		Data: printing of compound data types is not implemented yet
	    V                         0:0:0:3928           Dataset {256/512}
		Data:
		    (0) 0, 0.015625, 0.03125, 0.046875, 0.0625,
		    (5) 0.078125, 0.09375, 0.109375, 0.125, 0.140625,
		    (10) 0.15625, 0.171875, 0.1875, 0.203125, 0.21875,
		    (15) 0.234375, 0.25, 0.265625, 0.28125, 0.296875,
	    ...
1998-07-23 16:19:17 -05:00
Robb Matzke
79d65106ab [svn-r514] Changes since 19980715
----------------------

./src/H5Flow.c
./src/H5Fprivate.h
./src/H5Fsplit.c
	Changed the allocation size request from `size_t' to `hsize_t'
	because it was overflowing for the `big' test.

./src/H5detect.c
	If `long double' and `double' are the same size then we define
	H5T_NATIVE_LDOUBLE to be the same as H5T_NATIVE_DOUBLE.
	Similarly for `long' vs. `long long' and `unsigned long' vs.
	`unsigned long long'.

./test/Makefile.in
	Added `big' to the list of tests to normally run.

./test/big.c
	Added a check to see if the file system supports holes and if
	it doesn't then the test is skipped.

./RELEASE
	Added a couple minor details details about API tracing and
	symbolic links.

./src/H5public.h
	Added comments about the use of hbool_t. Fixed a comment
	spelling error.

./test/testhdf5.h
	Changed the way the version number is printed.  The old method
	was `hdf5-1.2.3d' and the new method is `hdf5 version 1.2
	release 3'

./tools/h5ls.c
	Only prints the max dimension if it differs from the current
	dimension or if verbose mode is enabled.  Added switches `-?',
	`-h', and `--help' to print a usage message.  Added switches
	`-v' and `--verbose' to generate more verbose output.  Added
	switches `-V' and `--version' to print the version number and
	exit.  The version number is printed like: This is h5ls
	version 1.0 release 24'

./bin/h5vers	[NEW]
	This script prints, sets, and/or increments the hdf5 version
	number. It can be run from the top directory or any of the
	child directories like src, tools, test, etc. Some examples:

	  $ h5vers				# Display current version
	  1.0.24

	  $ h5vers -v
	  version 1.0 release 24		# Display current version.

	  $ h5vers -s 5.2.8			# Set version and display
	  5.2.8

	  $ h5vers -s 2.1
	  2.1.0

	  $ h5vers -s hdf5-1.0.24a.tar.bz2
	  1.0.24

	  $ h5vers -s 'version 2.0 release 8'
	  2.0.8

	  $ h5vers -s 'junk 22 junk 33 more junk 66 and 99 junk'
	  33.66.99

	  $ h5vers -i major			# Increment from 1.0.24
	  2.0.0

	  $ h5vers -i minor			# Increment from 1.0.24
	  1.1.0

	  $ h5vers -i release			# Increment from 1.0.24
	  1.0.25

	  $ h5vers ~/hdf5/src/H5public.h	# Use an alternate file
	  1.0.24

./bin/checkapi		[NEW]
	Run from the src directory with arguments H5[A-Z]*.c and it
	will print the locations of each place where an API function
	was called from within the library.  Use it as the compile or
	grep command under Emacs and you can C-x ` through the list.

./bin/debug-ohdr	[NEW]
	Keeps track of H5O_open() and H5O_close() debugging messages
	and lists the file addresses of the object headers that are
	opened but never closed.  You must enable the `o' debugging at
	configuration time and pipe stderr into this script.

./bin/errors
	Added a note to indicate that this script no longer works
	because of changes in the HRETURN_ERROR() and HGOTO_ERROR()
	macros.

./bin/iostats		[NEW]
	Watches output from the Linux strace program and accumulates
	statistics about low-level access to an hdf5 file.  The output
	is a list of 2d data points which can be plotted by gnuplot to
	show file seeking behavior.

./MANIFEST
	Added new files.
1998-07-17 14:03:43 -05:00
Quincey Koziol
b75461c219 [svn-r507] Last updates for alpha2 release (I think :-) 1998-07-15 00:42:11 -05:00
Robb Matzke
614ae2dce6 [svn-r485] Changes since 19980710
----------------------

./Makefile.in
./config/commence.in
./config/conclude.in
./config/depend.in
./src/Makefile.in
./test/Makefile.in
	Tests are no longer installed for `make install'.  Added a new
	target `make tests' that builds the tests but doesn't run them.

./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	Added detection of fork() and waitpid().  If present the
	contants HAVE_FORK and HAVE_WAITPID will be defined in
	H5config.h.

./test/dtypes.c
	Minor tweaks for systems that don't have fork() or waitpid().

./MANIFEST
./tools			[NEW]
./tools/Makefile.in	[NEW]
./tools/h5debug.c	[NEW]
./tools/h5import.c	[NEW]
./tools/h5ls.c		[NEW]
./tools/h5repart.c	[NEW]
	Added a tools directory and moved tools from the src directory
	to here.
1998-07-13 10:35:21 -05:00
Albert Cheng
b5189f738d [svn-r484] CHANGES_API:
Removed.  Changes entered to RELEASE.
MANIFEST:
    Updated for the removal of CHANGES_API.
RELEASE:
    Updated with "Parallel HDF5 Changes".
1998-07-13 01:03:41 -05:00
Robb Matzke
f88b0064d3 [svn-r478] Changes since 19980709
----------------------

./README
./bin/release
	The first line of the README file is updated automatically
	by the `release' script to associate a date with a release
	number. For example:

	    This is hdf5-1.0.9a released on 1998-06-09 18:00 UTC
            Please refer to the INSTALL file for installation instructions.

./src/H5public.h
	Release number incremented.  This happens automatically now if
	you run the `release' script in `-batch' mode.  I'll stop
	documenting changes to this file unless they're something
	other than a release number change.

./MANIFEST
	Added Elena's new files.
1998-07-10 10:12:34 -05:00
Robb Matzke
768b7465a1 [svn-r471] Changes since 19980708
----------------------

./MANIFEST
	Alphabetized.  `d' comes before `e' :-)

./bin/release
	Added the `-batch' option which causes the script to not ask
	questions and to automatically update the minor version
	number and set the patch level back to `a'.  This is intended
	to be used for the daily snapshots:

	   #! /bin/sh
	   set -e
	   cd ~/hdf5
	   make distclean
	   make test
	   bin/release -batch tar compress gzip bzip2
	   mv ./releases/* /repository

./src/H5Z.c
	Removed warnings about unused variables when the zlib.h header
	file is present but libz.a isn't.

./INSTALL
./configure.in
./doc/html/tracing.html
	Made API tracing the default (you still need to define the
	HDF5_TRACE environment variable to get results) and change the
	name from `--disable-tracing' to `--disable-trace' to make it
	consistent with the other switches.

	Changed `site config file' to `host config file' to match the
	documentation.

./doc/html/H5.user.html
	Added a reference to the `tracing.html' file.
1998-07-08 13:41:04 -05:00
Quincey Koziol
1ce18a9971 [svn-r470] Updated manifest to reflect changes in the doc directory structure. 1998-07-08 11:48:48 -05:00
Quincey Koziol
d70e61b1db [svn-r450] Added files for dataspace revision. 1998-07-06 15:58:42 -05:00
Robb Matzke
203a732915 [svn-r446] Changes since 19980702
----------------------

./MANIFEST
	Added new files from testpar directory.

./config/commence.in
	Removed -D_POSIX_SOURCE because hdf5 uses a couple of
	non-Posix things when certain debugging flags are switched on.
1998-07-02 20:16:22 -05:00
Robb Matzke
4d4cd3eda0 [svn-r443] Changes since 19980630
----------------------

./MANIFEST
./configure.in
./examples/Makefile.in	[NEW]
	Added a Makefile.in for the examples directory.  To generate
	the Makefile run configure again.
1998-07-02 14:26:40 -05:00
Robb Matzke
1b3a1f8014 [svn-r437] Changes since 19980612
----------------------

./src/H5Tbit.c
./src/H5Tpkg.h
	Fixed a bug in H5T_bit_copy(). Added H5T_bit_get_d() and
	H5T_bit_set_d() which treat portions of a bit vector as an
	unsigned integer. Added H5T_bit_inc() that increments part of
	a bit vector and returns an indication of overflow.

./src/H5Tconv.c
./src/H5Tpkg.h
./test/dtypes.c
	Added a slow general floating point conversion which works so
	far on Intel, MIPS, and DEC but the test is turned off because
	a cast from double to float will cause a SIGFPE on some
	systems if an overflow occurs.

	Added fast hardware conversions between native floating point
	types.  This function is also subject to the SIGFPE problem.

./src/H5detect.c
	Removed the exponent bias adjustment when the significand
	isn't normalized.  This is now handled in the conversion
	functions instead.

./src/H5T.c
	Register new conversion functions.

	Plugged a memory leak in the library termination code.

./RELEASE
	Added a list of major changes since the first alpha.

./src/H5.c
./src/H5private.h
./src/H5A.c
./src/H5AC.c
./src/H5D.c
./src/H5Ffamily.c
./src/H5Fistore.c
./src/H5G.c
./src/H5Gprivate.h
./src/H5HG.c
./src/H5O.c
./src/H5T.c
./src/H5Tbit.c
./src/H5Tconv.c
	Fixed various compiler warnings on Irix64.

./src/H5MM.c
	Added PABLO_MASK to this file.

./test/chunk.c
	Removed a warning about memcpy().
1998-06-30 16:30:28 -05:00
Robb Matzke
22538a0c79 [svn-r429] Changes since 19980616
----------------------

./html/tracing.html	NEW
	This entire update is to make it possible for the library to
	print the name, arguments, and return value of every API call
	without requiring any extra work from developers or app
	programmers.  This file describes how this all works.

./configure.in
	Added the `--enable-tracing' switch.  If you use it then the
	library will include code to print API function names,
	argument names and values, and function return values.
	However, you must then turn on the tracing by setting the
	HDF5_TRACE environment variable to a file descriptor number.
	The default is `--disable-tracing' since enabling it causes a
	slight increase in library size and a slowdown resulting from
	an extra function call for each API function call (I couldn't
	even measure the slowdown :-)

./bin/trace		NEW
	A perl script that synchronizes the H5TRACE() macro calls in
	the *.c files with the function return type and formal
	argument names and types.  If you use GNU make and gcc then
	this will be done automatically, otherwise just invoke this
	script with the names of one or more .c files.  You could do
	it by hand to, but encoding argument types is a little tricky
	at first.

./config/commence.in
	Added the $(TRACE) macro, which defaults to the no-op.
	Added -D_POSIX_SOURCE to the compiler command line.

./src/Makefile.in
	Override the default for $(TRACE).

./config/depend.in
	Automatically calls $(TRACE) to synchronize the H5TRACE()
	macros in any source file that changed.  As with makefile
	dependencies, one way to force synchronization of all files is
	to remove the `.depend' file.

./MANIFEST
	Added new files.

./src/H5Eprivate.h
	Modified HRETURN_ERROR() and HRETURN() for tracing.

./src/H5.c
./src/H5private.h
	This is where the real tracing work really happens, in
	H5_trace().

./src/H5A.c
./src/H5D.c
./src/H5G.c
./src/H5P.c
./src/H5S.c
./src/H5Z.c
	Added H5TRACE() calls to all API functions.  You don't really
	need these changes if you don't want to merge your stuff
	because they can be generated automatically by going to the
	hdf5/src directory and saying ../bin/trace *.c

./src/H5T.c
	Added H5TRACE() calls.  Other stuff below.

./src/H5E.c
./src/H5Epublic.h
	Added H5TRACE() calls.  Created a type H5E_auto_t for the
	`func' argument of H5Eset_auto() and H5Eget_auto() to make
	those arguments easier to parse for tracing. It should also
	make it clearer for users that don't know how to read
	complicated ANSI data types.

./src/H5F.c
	Added H5TRACE() calls.  Changed a couple `uintn' argument
	types in API functions to `unsigned int' since `uintn' part of
	the API.  Changed a few "can't" and "cant" error messages to
	"unable to".

./src/H5Ipublic.h
	Removed H5_DIRECTORY from the H5I_group_t enum.  It wasn't
	used anywhere.

./src/H5Tconv.c
	Removed an unused label.

./src/H5Fistore.c
./src/H5Oattr.c
./src/H5Odtype.c
./src/H5T.c
./test/dsets.c
./test/dtypes.c
	Fixed a warning about a variable possibly used before it's
	initialized.  Added __unused__ to turn off some unused
	argument warnings that pop up when debugging is turned off and
	optimizations are turned on.
1998-06-17 15:46:29 -05:00
Robb Matzke
53916f4e59 [svn-r428] Changes since 19980612
----------------------

./src/H5Tbit.c
./MANIFEST
./test/Makefile.in
./test/bittests.c	NEW
	Finished the bit vector operations and added test cases.

./src/H5Tconv.c
./test/dtypes.c
	Finished integer->integer general conversion and added test
	cases. Overflows and underflows are handled by substituting
	the closest possible value.  Examples:

	   (unsigned)0xffff -> (unsigned)  0xff
	   (  signed)0xffff -> (unsigned)0x0000
	   (unsigned)0xffff -> (  signed)0x7fff
	   (  signed)0x7fff -> (  signed)  0x7f
	   (  signed)0xbfff -> (  signed)  0xbf
	   (  signed)0x8000 -> (  signed)  0x80

./src/H5private.h
	Added definitions for MIN and MAX that take 3 or 4 arguments:
	MIN3(), MIN4(), MAX3(), MAX4(). Also added MIN2() and MAX2()
	as aliases for MIN() and MAX().

./test/tattr.c
	Removed some redundant `&' operators.

./configure.in
./src/H5config.h.in	[regenerated]
./src/H5.c
	Fixed warnings on DEC where long double is the same as
	double.
1998-06-16 14:38:26 -05:00
Robb Matzke
dd58a3ec29 [svn-r425] Changes since 19980610
----------------------

THIS CHECKIN IS FOR QUINCEY -- NOT EVERYTHING WORKS (but it compiles)
MOST OF THE CHANGES ARE FOR BETTER TYPE CONVERSION IN THE NEXT ALPHA

./MANIFEST
./src/H5Tbit.c		NEW
./src/Makefile.in
	Bit vector operations (not done yet)

./configure.in
	Added -lm to the library list, needed by bit-vector operations
	and conversion functions.

	Removed vestiges of PARALLEL_SRC no longer used by the
	makefiles. Albert came up with a better way (that actually
	works :-)

./src/H5D.c
	No code changes.  Split a couple of long lines, refilled a
	couple multi-line comments.

./src/H5T.c
./src/H5Tpublic.h
	Fixed a bug reported by Jim Reus regarding conversion of
	compound data types whose members require conversions which
	are satisfied by as-yet unregistered soft conversion
	functions.

	Added H5T_IEEE architecture, but the funny-looking integer
	types will be changed to H5T_BE_ and H5T_LE_ architectures
	with the type names changed to match the H5T_NATIVE_ integers.

	Added an H5Tconvert() but it hasn't been documented or tested
	yet.

./src/H5Tconv.c
./src/H5Tpkg.h
	Registered conversion functions integer->integer (a general
	case) and integer->float (for a specific case).  The
	integer->integer conversion depends on the bitvector
	operations which aren't finished yet and the int->float
	conversion hasn't been retested since it was borrowed from
	AIO. Don't look at them yet, they're ugly :-)

./src/H5detect.c
	Fixed a typo which caused the msb_pad field of an atomic type
	to not be initialized.

./test/dtypes.c
	Added a test for number conversions but it's commented out
	until the conversion stuff is truly working.
1998-06-12 12:31:06 -05:00
Robb Matzke
412b58f524 [svn-r406] ./MANIFEST
Added ./html/h5s.examples.
1998-06-04 17:22:50 -05:00
Robb Matzke
d392756a1b [svn-r400] Changes since 19980513
----------------------

./html/Datasets.html
	Fixed a couple of typos.

./src/H5.c
	Added the `Z' modifier to HDfprintf() for `size_t' sizes.  Use
	it like this:
	   HDfprintf(stderr,"size is %Zd\n", (size_t)x);

./src/H5AC.c
./src/H5F.c
./src/H5Fprivate.h
	The maximum number of meta data objects that can be cached can
	be set from the application (but the library might not honor
	it every time; it's a hint).

./src/H5D.c
	Changed a warning message so it's not so alarming.

./src/H5Fistore.c
	Chunks can be cached.

./src/H5O.c
./src/H5Oprivate.h
	Added H5O_copy() and H5O_free() to copy and free messages.

./src/H5P.c
./src/H5Ppublic.h
	Added H5Pset_cache() and H5Pget_cache() and changed lots of
	"template" to "property list".

./src/H5Z.c
./src/H5Zpublic.h
	Miscellaneous little things to clean up.  Mostly just removed
	H5Z_MAXVAL and added H5Z_USERDEF_MIN and H5Z_USERDEF_MAX.

./MANIFEST
./test/Makefile.in
./test/chunk.c		[NEW]
	Added a performance test for chunk caching.  It looks at the
	amount of I/O instead of timing because timing is partly
	dependent on the chunk size and I wanted a measurement that
	was a function of only the cache size.  Run `chunk' with no
	arguments and then say `gnuplot x-gnuplot' to see the plots
	(press return between plots). Postscript files are created for
	each plot.

./test/big.c
./test/cmpd_dset.c
./test/extend.c
./test/external.c
./test/gheap.c
	Added H5F_ACC_DEBUG so we can see cache performance
	statistics.
1998-05-22 10:05:53 -05:00
Robb Matzke
34f5a59b9e [svn-r398] Changes since 19980501
----------------------

./src/H5Bprivate.h
./src/H5F.c
./src/H5Ffamily.c
./src/H5Fprivate.h
./src/H5Gpkg.h
./src/H5MF.c
./src/H5P.c
./src/H5Ppublic.h
./test/big.c
./html/Big.html
./html/Files.html
	Family members can now be any size >1kB.  Got rid of some
	places where we were reading a property list after it was
	closed.

./MANIFEST
./src/Makefile.in
./src/h5repart.c
	A program to repartition file families.  The source and/or
	destination may be files or file families.  Examples:

	   testhdf5 -c -o stab
	   h5repart -m 1m   tstab2.h5 x%05d.h5
	   h5repart -m 100k x%05d.h5  y%05d.h5
	   h5repart         y%05d.h5  z.h5
	   diff tstab2.h5 z.h5

./src/h5ls.c
	Added a usage message, replaced assertions with error
	messages.

./config/linux
	Made a warning message more obvious.  Added better
	optimization flags for Pentium-Pro's.
1998-05-13 12:58:24 -05:00
Robb Matzke
7b7ae438f7 [svn-r373] ./MANIFEST
Added INSTALL_parallel.ascired, examples/Attributes.txt,
	html/Attributes.html, testpar/Makefile.ascired.  Removed
	H5Dpkg.h
1998-04-24 12:19:08 -05:00
Quincey Koziol
eba569241e [svn-r360] Added new files for H5A interface 1998-04-23 17:23:43 -05:00
Robb Matzke
6034a988cd [svn-r357] ./MANIFEST
./bin/versinc
	Forgot to add this to cvs last time.
1998-04-23 16:52:09 -05:00
Robb Matzke
1c1679b2d4 [svn-r356] Changes since 19980421
----------------------

./bin/release
./src/H5.c
./src/H5private.h
./src/H5public.h
./src/H5Fpublic.h
        Changed the version number constants to names that begin with
        H5_VERS_ and added macros that check that the version numbers
        in the include files match the version number of the library.

./MANIFEST
./html/H5.user.html
./html/Version.html    [NEW]
./html/version.obj     [NEW]
./html/version.gif     [NEW]
        Documented version numbers and the macros, constants, and
        functions associated with them.

./bin/versinc
        A perl script that increments the minor version number and
        sets the patch level back to zero.  This is intended to be
        invoked from the top of the source tree by a cvs commit
        anywhere in the source tree. Quincey?

./src/H5O.c
./src/H5Oprivate.h
        Added H5O_count() to count the number of object header
        messages of a particular type.  Quincey needs this for the
        attribute package.

./test/dsets.c
        Fixed warnings. Enabled the small strip-mine buffer test.

./config/linux
        Added optimizations for the Pentium-Pro for production mode.
1998-04-22 12:26:01 -05:00
Robb Matzke
91a34f543d [svn-r355] Changes since 19980417
----------------------

This checkin completes the compression stuff almost two weeks ahead of
schedule.  It should now all be working and documented.

./Makefile.in
./config/commence.in
	A distclean causes the distribution makefile to be copied to
	Makefile again.

./src/H5D.c
	Opening a compressed dataset now works properly.

./src/H5P.c
./src/H5Ppublic.h
	The H5Pset_compression() and H5Pget_compression() now work as
	documented.

./src/H5T.c
	Fixed a bug that causes the library to crash sometimes if
	debugging is turned on for the `t' package.

./src/H5Z.c
	Fixed a bug where the number of bytes attributed to
	compression overruns was too low in the debugging output.

./test/dsets.c
	More compression tests: reading of uninitialized data, opening
	an existing dataset and reading it, partial I/O which isn't
	aligned on chunk boundaries, and use of application-defined
	compression methods.

./MANIFEST
	Removed ./test/dspace.c.
1998-04-21 15:32:07 -05:00
Robb Matzke
011457075e [svn-r353] Changes since 19980414
----------------------

./html/Compression.html          [NEW]
./html/Datasets.html
./html/H5.format.html
./html/H5.user.html
        Documented compression.  A couple of the H5P functions aren't
        quite implemented yet but they're coming soon...

./src/H5Dprivate.h
./src/H5E.c
./src/H5Epublic.h
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fprivate.h
./src/H5MF.c
./src/H5MFprivate.h
./src/H5O.c
./src/H5Ocomp.c         [NEW]
./src/H5Oprivate.h
./src/H5P.c
./src/H5Ppublic.h
./src/H5Sprivate.h
./src/H5Ssimp.c
./src/H5Z.c             [NEW]
./src/H5Zprivate.h      [NEW]
./src/H5Zpublic.h       [NEW]
./src/Makefile.in
./src/hdf5.h
./test/dsets.c
./test/istore.c
        Compression is now mostly working.  Don't try to open a
        compressed dataset though because the compression message
        won't be read.

./html/Datatypes.html
./html/H5.api.html
./src/H5.c
./src/H5private.h
./src/H5D.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
        Added timing support.  When compiled with H5T_DEBUG defined
        the library will print conversion bandwidths when the library
        closes.  The H5Tregister functions take a string as the first
        argument so the statistics output is meaningful.

./MANIFEST
        Added new files.

./configure.in
./src/H5config.h.in
        Check for getrusage().  Check for compress2() in libz.a and
        the zlib.h header file.  Added `z' to the debug list.

./src/H5B.c
./src/H5Bprivate.h
./src/H5Gnode.c
./src/debug.c
        Cleaned up some indentation and added support to print istore
        B-trees.  From the debugger, give the B-tree address and the
        dimensionality from the layout message of the object header.

./src/h5ls.c
        The oid is printed as  wy:z where w and x are the file ID
        and y and z are the OID within the file.  You can give z or
        y*2^32+z as an argument to the debugger to print the object
        header for the object.

./src/H5AC.c
        Cleaned up statistics and made them match those reported by
        H5T and H5Z.

./src/H5MM.c
./src/H5MMprivate.h
./src/H5Fistore.c
        Finally got rid of a couple of long-standing const cast
        warnings.
1998-04-17 16:29:43 -05:00
Robb Matzke
b6fc6ede10 [svn-r346] Changes since 19980410
----------------------

./html/H5.format.html
./src/H5E.c
./src/H5Epublic.h
./src/H5F.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5Gprivate.h
./src/h5ls.c
./test/Makefile.in
	Symbolic links are now supported.  The ./test/links program
	will create a `links.h5' file that demonstrates hard links,
	soft links, dangling links, and recursive links.  A symbolic
	link is a symbol table entity and doesn't have an object
	header.  It's format is described in H5.format.hml.

./src/H5G.c
./src/H5Gpublic.h
./src/h5ls.c
	Implemented H5Gstat() and H5Gget_linkval() as documented by
	Quincey.  The `H5G_type_t type' field of `H5G_stat_t' was
	changed to `int type' because H5G_type_t was already used and
	the `type' data type should be open-ended.

./src/H5Ffamily.c
	Removed an incorrect diagnostic message.

./test/big.c
	Added read/write calls to test partial I/O to big contiguous
	datasets.  With no arguments it writes to a dataset and prints
	the list of points written which should be redirected to a
	file.  With an argument (the name of a file containing the
	stdout of a run with no arguments) values are read from the
	dataset.  One would typically say `big >x && big x'.
1998-04-14 11:44:46 -05:00
Robb Matzke
861d43c98a [svn-r341] Changes since 19980409
----------------------

./INSTALL
./INSTALL_MAINT
	Updated installation instructions.

./html/Big.html		     [NEW]
	A guide to using big datasets on small machines.

./MANIFEST
	Added Big.html and INSTALL.ascired.

./html/Datasets.html
./html/Dataspaces.html
./html/Datatypes.html
./html/Files.html
./html/H5.api.html
./html/H5.intro.html
./html/H5.sample_code.html
./html/H5.user.html
	Updated documentation by changing lots of `size_t' arguments
	to `hsize_t'.  Added line numbers to some examples.

./html/H5.intro.html
	Perhaps someone want's to volunteer to make this file
	human-readable?
1998-04-10 13:30:19 -05:00
Robb Matzke
c96611f8b5 [svn-r339] Changes since 19980408
----------------------

./src/H5Osdspace.c
./html/H5.format.html
	In the past we were allowed to have >2GB files on a 32-bit
	machine as long as no dataset within the file was larger than
	4GB (or whatever sizeof(size_t) is).  That's been fixed now.
	All dataset size calculations are done with `hsize_t' which is
	normally defined as `unsigned long long'.

./src/H5F.c
./src/H5Ffamily.c
./src/H5Fprivate.h
./src/H5P.c
./src/H5Ppublic.h
	The file family member size can now be set/queried.  The
	default is still 64MB, but it can be set to 1GB by saying:

	    H5Pset_family (plist, 30, H5P_DEFAULT);

	When opening an existing file family the specified
	bits-per-member is ignored and the first member of the family
	determines the bits-per-member, which can be retrieved with
	H5Pget_family().

./acconfig.h
./configure.in
./src/H5config.h
./src/H5public.h
	Added `--disable-hsizet' so that those with old GCC compilers
	(<2.8.1) can still compile the code.


./src/H5.c
./src/H5private.h
	Added HDfprintf() which works just like fprintf() except you
	can give `H' as a size modifier for the integer conversions
	and supply an `hsize_t' or `hssize_t' argument without casting
	it.  For instance:

	    hsize_t npoints = H5Sget_npoints(space);
	    HDfprintf(stdout,"Dataset has %Hd (%#018Hx) points\n",
		      npoints, npoints);

	You can now give `%a' as a format to print an address, but all
	formating flags are ignored and it causes the return value of
	HDfprintf() to not include the characters in the address (but
	who uses the return value anyway :-). Example:

	    H5G_t *grp;
	    HDfprintf(stdout, "Group object header at %a\n",
	              &(grp->ent.header));

	Added HDstrtoll() which works exactly like [HD]strtol() except
	the result is an int64.

./src/debug.c
	Large addresses can now be entered from the command-line.  Use
	either decimal, octal (leading `0') or hexadecimal (leading
	`0x') when giving the address.

./src/h5ls.c
	The printf format for dataset dimensions was changed to `%Hu'
	to support large datasets.

./test/big.c		[NEW]
	A test for big datasets on 32-bit machines.  This test is not
	run by default.  Don't try to run it on an nfs-mounted file
	system or other file system that doesn't support holes because
	it creates two 32GB datasets of all zero.
1998-04-09 15:22:11 -05:00
Robb Matzke
92571bbe1d [svn-r336] Changes since 19980402
----------------------

./MANIFEST
./test/Makefile.in
./test/shtype.c		[NEW]
	Added some tests for shared data types.

./configure.in
	Removed MF and HL from the default debug list since.  MF
	because it hasn't been implemented yet and HL because it
	produces lots of annoying messages about adjusting the size of
	local heaps.

./src/H5F.c
./src/H5T.c
./src/H5Tprivate.h
	Fixed a bug with opening the same file twice.  The first close
	on the file_id incorrectly closed shared data structs.
	Closing a file now correctly unshares data types that might be
	pointing into that file.

./src/H5T.c
./src/H5Tpublic.h
	Added an H5Tis_shared().  The caller supplies a file and a
	data type and the function returns true if the data type is
	currently marked for sharing in that file.

./src/H5AC.c
./src/H5F.c
./src/H5HL.c
./src/H5HG.c
./src/H5MF.c
./src/H5O.c
	We now detect errors sooner when writing to a read-only
	file. In the past, the error might not show up until the
	cached item was flushed, and it was sometimes possible to not
	even get an error!

./src/H5I.c
./src/H5Iprivate.h
	If the search function fails then H5I_search() returns
	failure.  Also, the first argument for the search function
	isn't const anymore because we might want the search to have
	side effects (like calling H5T_unshare() for all shared data
	types whose file just closed).
1998-04-03 16:11:05 -05:00
Robb Matzke
a780cdd178 [svn-r335] Changes since 19980330
----------------------

./MANIFEST
./src/Makefile.in
./test/Makefile.in
        Added new files.

./config/linux
./src/H5HL.c
./src/H5HLprivate.h
./src/H5MF.c
./src/H5MFprivate.h
        Added `-DH5HL_DEBUG -DH5MF_DEBUG' to the debug list.

./html/H5.format.html
        Updated shared object message information.

./src/H5D.c
        Datasets can now share data types.

./src/H5F.c
        Updated a comment that referred to H5ACC_WRITE.

./src/H5HG.c
./src/H5HGprivate.h
        Moved a few things around.  Made debugging better so you can
        now give a collection address to ./src/debug and it shows some
        useful stuff.

./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/H5Osdspace.c
./src/H5Oshared.c       [NEW]
./src/H5Ostab.c
        Supports shared messages.

./src/H5T.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
        The H5Tshare() function allows the user to give the library
        hints about how a data type will be used.

./test/shtype.c
        Tests the H5Tshare() function.

./test/gheap.c
        Tests the global heap.

./configure.in
./config/BlankForm      [NEW]
./config/alpha-dec
./config/freebsd2.2.1
./config/hpux10.20
./config/irix6.2
./config/irix64
./config/linux
./config/powerpc-ibm-aix4.2.1.0
./config/rs6000-ibm-aix4.1.4.0
./config/solaris2.5
        Cleaned up lots of configuration stuff and made the site
        configuration files lots easier and more uniform.  To make a
        new file grab the BlankForm and modify it.

        By default, debugging is turned on for most packages.  Within
        a package one can use `#ifdef H5AC_DEBUG' to wrap debugging
        code.  Other options are:

           --enable-debug
           --enable-debug=yes
               The default, most but not all packages.

           --disable-debug
           --enable-debug=no
           --enable-debug=none
               The symbol NDEBUG is defined and none of the package
               debug symbols.

           --enable-debug=all
               Debugging is turned on for all packages.  This might
               produce lots of output.

           --enable-debug=g,d
               Debugging is turned on for H5G and H5D.

        A compile mode is also now supported

           --enable-production
           --enable-production=yes
               The library is compiled with optimizations turned on.
               The compiler flags are augmented by adding PROD_CFLAGS
               and PROD_CPPFLAGS which are defined in the site config
               file.

           --disable-production
           --enable-production=no
               The default.  The library is compiled for development
               by including DEBUG_CFLAGS and DEBUG_CPPFLAGS defined in
               the site config file.  This is usually just `-g'.

           --enable-production=profile
           --enable-production=pg
               Builds a library for profiling by including the flags
               from PROFILE_CFLAGS and PROFILE_CPPFLAGS defined in the
               site config file.  This is usullay just `-pg' but it
               could include optimization flags as well depending on
               the type of profile one wants.

        In summary, configure by saying `./configure' and you'll get a
        development version of the library.  Configure by saying
        `./configure --enable-production --disable-debug' and you'll
        get a production version with no debugging code.
1998-04-02 22:29:38 -05:00
Robb Matzke
78c1574378 [svn-r333] Changes since 19980324
----------------------

./MANIFEST
./src/H5HG.c		[new]
./src/H5HGprivate.h	[new]
./src/H5HGpublic.h	[new]
./src/Makefile.in
	Added global heaps, H5HG.  This compiles but is untested.

./src/H5D.c
./src/H5G.c
./src/H5Gnode.c
./src/H5Gstab.c
./src/H5HL.c		[renamed from H5H.c]
./src/H5HLprivate.h	[renamed from H5Hprivate.h]
./src/H5HLpublic.h	[renamed from H5Hpublic.h]
./src/H5Oefl.c
./src/Makefile.in
./src/hdf5.h
./test/theap.c
	Renamed local heaps from H5H to H5HL.

./src/H5AC.c
./src/H5ACprivate.h
./src/debug.c
	Added debugging support for global heap collections.

./html/H5.format.html
	Ripped out the old small object heap documentation and added
	documentation for the new global heap.

./html/H5.api.html
./src/H5P.c
./src/H5Ppublic.h
./src/H5F.c
./src/H5Fprivate.h
./src/H5private.h
	The H5Pget_version() function no longer returns a small object
	heap version number.  Instead, each collection of the global
	heap has its own version number instead of a single number in
	the file boot block.

./bin/release
	Omit files marked for removal by CVS even though the removal
	hasn't been committed yet.

./test/iopipe.c
	Removed warnings about casting unsigned int to double on Irix64.

./MANIFEST
	Removed ./test/testpar/phdf5sup.c
1998-03-30 14:24:08 -05:00
Robb Matzke
e987de2c42 [svn-r329] Changes since 19980324
----------------------

./src/H5D.c
	Zero element requests for H5Dread() and H5Dwrite() succeed.

./src/H5F.c
./src/H5Fprivate.h
	All files will have a root group. This greatly simplifies the
	library at the expense of ~1k extra bytes in files that have
	only one object.

./src/H5D.c
./src/H5Dprivate.h
./html/Groups.html
	Functions that used to take a file ID and an object name can
	now take a group ID instead of a file ID.  This doesn't change
	the API, only it's documentation.

./src/H5G.c
./src/H5Gprivate.h
./src/H5O.c
./src/H5Oprivate.h
	Removed extra file arguments from some internal functions
	since the file pointer can be found from the group pointer or
	a symbol table entry (ent->file or H5G_fileof(group)).
	Besides, when we eventually implement mounting one file on
	another, H5G_namei() might return a different file than what
	you gave it, and that file is part of the returned symbol
	table entry.

./src/H5G.c
	Fixed bug with `.' appearing in a name. It used to hang the
	library.

./src/Makefile.in
./src/h5ls.c		[NEW]
./MANIFEST
	Added `h5ls' a simple program that takes a file name and a
	directory and lists the contents of that directory using
	H5Giterate().

./test/istore.c
	Changed an argument to H5G_create().

./test/tstab.c
	Removed test_1 which was testing that files with a single
	object don't have a root group.  This no longer applies.
1998-03-24 18:18:34 -05:00
Robb Matzke
2ed9aa69f7 [svn-r328] Changes since 19980318
----------------------
./src/H5B.c
./src/H5Bprivate.h
./src/H5G.c
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5Gpublic.h
./src/H5Gstab.c
	Implemented H5Giterate().  However, since most functions can't
	take a group ID in place of a file ID yet, there's not a whole
	lot that the operator can do besides print the name or something.

./test/H5O.c
	Fixed writing of four uninitialized bytes to the file as part
	of an object header.

./test/istore.c
	For some reason, `mpirun -np 1 istore' results in extra
	arguments on the command line that istore doesn't understand.
	I'm probably forgetting to call some MPI function in
	main(). Albert, Kim?  So I commented out the `exit(1)' for the
	time being.
1998-03-24 09:53:57 -05:00
Robb Matzke
62960c3d96 [svn-r326] Changes since 19980318
----------------------

./config/linux
	Turned on MPIO if the host name is `arborea' so I always
	compile it and realize when I break something instead of
	waiting for Albert or Kim to find it.

./MANIFEST
./html/H5.user.html
./html/IOPipe.html		[NEW]
./html/pipe1.gif		[NEW]
./html/pipe1.obj		[NEW]
./html/pipe2.gif		[NEW]
./html/pipe2.obj		[NEW]
./html/pipe3.gif		[NEW]
./html/pipe3.obj		[NEW]
./html/pipe4.gif		[NEW]
./html/pipe4.obj		[NEW]
./html/pipe5.gif		[NEW]
./html/pipe5.obj		[NEW]
	Documented the raw data I/O pipeline.
1998-03-18 14:57:35 -05:00
Robb Matzke
2fd149a582 [svn-r325] Changes since 19980317
----------------------

./MANIFEST
./configure.in
./configure
./Makefile.in
./bin/distdep		[NEW]
./config/conclude.in
./config/depend.in
./src/.distdep		[NEW]
./test/.distdep		[NEW]
	Added some code so non-GNU systems have a list of dependencies
	between the .c files and the .h files.  Hopefully this works
	and y'all don't have to keep saying `make clean' each time you
	change a header.

	On systems with GNU make, GCC, and Perl, the dependency
	information is generated automatically from rules in
	config/depend.in as has always been done.  But now extra files
	called `.distdep' (for `distributable dependencies) are left
	in each directory and these are part of CVS and thus
	releases.  (A `make dep' will create dependencies on demand
	without doing anything else.)

	On systems lacking one or more of the tools above, the various
	`.distdep' files are inserted into the end of the Makefiles.
	If you do developement on one of these systems you'll have to
	update the `.distdep' and/or Makefile by hand, or wait until
	you have access to a GNU system and do a `make dep'.
1998-03-18 13:09:16 -05:00
Quincey Koziol
96dd634330 [svn-r324] Change H5A (atoms) to H5I (IDs) 1998-03-17 17:46:27 -05:00
Robb Matzke
48e0751106 [svn-r321] Changes since 19980306
----------------------

./MANIFEST
./src/H5D.c
./src/H5S.c
./src/H5Sprivate.h
./src/H5Ssimp.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5V.c
./test/Makefile.in
./test/iopipe.c			[NEW]
	Optimizations to the I/O pipeline.

./src/H5Fistore.c
./src/H5Oefl.c
	Fixed a few compiler warnings.

./MANIFEST
	Added entries for ./config/{intel-osf1,irix5.3}
1998-03-13 12:50:38 -05:00
Quincey Koziol
d5b60eef9d [svn-r320] Removed H5M files. 1998-03-12 16:05:27 -05:00
Robb Matzke
4badc161ae [svn-r305] Changes since 19980304
----------------------

./MANIFEST
	New files

./html/extern1.gif		[NEW]
./html/extern1.obj		[NEW]
./html/extern2.gif		[NEW]
./html/extern2.obj		[NEW]
./html/Datasets.html
	Documented external raw data storage.

./html/Datasets.html
./html/chunk1.gif		[NEW]
./html/chunk1.obj		[NEW]
	Added a picture and better description for chunking since it
	seems that people are thinking chunks are fixed-size at the
	file level instead of at the array level.

./src/H5D.c
./src/H5Dpublic.h
./test/external.c
	Changed H5Dget_create_parms() to H5Dget_create_plist().

./src/H5D.c
./src/H5Farray.c
./src/H5Fprivate.h
./src/H5Oefl.c
./src/H5Oprivate.h
./src/H5Sprivate.h
./src/H5Ssimp.c
./test/external.c
./test/istore.c
	External raw data file I/O for contiguous storage is now
	working.  The library supports segments of various sizes which
	can be scattered throughout multiple files in any order.

./test/Makefile.in
	Remove more temporary files.
1998-03-05 10:48:16 -05:00
Robb Matzke
7bdea74ca9 [svn-r303] Changes since 19980228
----------------------

./html/Dataspaces.html
./html/Errors.html
./html/Files.html
./html/H5.api.html
./html/review1.html
./src/H5private.h
./src/H5public.h
./test/dsets.c
./test/dtypes.c
	Removed all the types like `int32' and `intn' into private
	headers since they violate the naming scheme and pollute
	application name space.  Besides, our test files only use them
	in a handful of places and it's probably useless to export
	them to the app.  The app is always written in terms of
	standard numeric types or its own numeric types and probably
	never in terms of HDF5 numeric types.  If it were, then the
	user would have to copy from their type to hdf5 type for
	almost every hdf5 API function call!  Same goes for return
	values.  I also removed SUCCEED/FAIL from the API since apps
	should be checking against zero anyway.

	       if (FAIL==(space=H5Screate_simple(...))) /*wrong*/
	       if ((space=H5Fcreate_simple(...)<0))     /*right*/


./src/H5.c
	Changed arguments of H5version() from `uintn' to `unsigned'.

./src/H5Tpublic.h
./src/H5T.c
	Changed return type of H5Tget_nmembers() from `intn' to `int'


./src/H5A.c
./src/H5Aprivate.h
./src/H5Apublic.h
	Changed `H5Asearch_func_t' to `H5A_search_func_t' and moved
	its definition from the public to the private header file.


./html/H5.format.html
	Documented changes made to the external file list (H5O_EFL)
	message.

./src/H5D.c
./src/H5Dprivate.h
./src/H5E.c
./src/H5Epublic.h
./src/H5O.c
./src/H5Oefl.c
./src/H5Oprivate.h
./src/H5P.c
./src/H5Ppublic.h
	Added partial support for external raw data files.  HDF5 can
	now describe external raw data files by listing the file
	names, offsets, and size for a dataset. However, we will
	restrict a dataset to be stored "contiguously" when the
	external file list is viewed as a single address space. The
	current implementation is unable to read/write to external
	files--that will come later this week as will documentation.
	For now, take a look at ./test/external.c, particularly the
	calls to H5Pset_external().

./test/Makefile.in
./test/external.c		[NEW]
./MANIFEST
	Added tests for external storage.  Note: the read test is
	supposed to fail at this point since reading external datasets
	is not implemented yet.  There is no write test.

./src/H5S.c
./src/H5Sprivate.h
./src/H5Ssimp.c
	Added H5S_get_npoints_max() to return the maximum possible
	number of data points in a data space.

	Added an extra argument to H5S_get_dims() which returns the
	maximum dims.

./src/H5F.c
./src/H5Fprivate.h
./src/H5Fpublic.h
./src/H5M.c			[DEPRICATED]
./src/H5Mpublic.h		[DEPRICATED]
	Changed `template' to `property list' in lots of places.

./src/H5Osdspace.c
	Removed an extra `\n' from a print statement.

./src/H5S_public.h
	Changed H5S_UNLIMITED to the maximum size_t value.

./test/extend.c
	"Extendable" is spelled "extendible".

./src/H5Farray.c
./src/H5V.c
./src/H5Vprivate.h
./test/hyperslab.c
	Strides are now type ssize_t instead of int.  These have
	nothing to do with the sample granularity arguments for
	hyperslabs, which are also called "strides" in the code.

./test/tstab.c
	Changed assumptions about default address and length sizes.
1998-03-04 11:20:23 -05:00
Robb Matzke
808a5e6be1 [svn-r302] Changes since 19980227
----------------------

./html/Errors.html		[NEW]
./html/H5.user.html
./MANIFEST
	Documents the new error handling interface and gives examples.

./src/H5.c
./src/H5private.h
./src/H5Apublic.h
./src/H5E.c
./src/H5Eprivate.h
./src/H5Epublic.h
	Rewrote error handling. Got rid of `push' overloading and
	added a few API functions.  The error stack is statically
	allocated and not entered into H5A, simplifying error handling
	within the error handler. Rudimentary support for threads.
	Changed the names of some errors.

./src/H5G.c
./src/H5Gnode.c
./src/H5H.c
./src/H5O.c
./src/H5T.c
	Changed H5ECLEAR to H5E_clear().

./src/Makefile.in
	Alphabetized source list.

./test/dsets.c
	Turned off error reporting around functions that are expected
	to fail.  Error messages are sent to stdout.

./test/testhdf5.c
./test/testhdf5.h
	Turned off automatic error reporting since this file mostly
	calls internal functions and does its own error reporting.
1998-02-28 13:19:05 -05:00
Robb Matzke
ed6d456f28 [svn-r300] ./MANIFEST
Changed names for P->S and C->P changes.

./INSTALL
	Added a note.
1998-02-26 13:10:51 -05:00
Quincey Koziol
5b8d25d3c6 [svn-r288] Added some last minute parallel HDF5 additions 1998-02-17 15:31:44 -05:00
Albert Cheng
3f92002237 [svn-r285] Updated MANIFEST with several new file entries added in the
last 24 hours.  Sorted it too for easier comparision in the
future.
1998-02-16 16:26:59 -05:00
Robb Matzke
75c8d0278f [svn-r271] Changed the name from alpha-dec-osf4.0 to alpha-dec 1998-02-13 13:13:20 -05:00
Robb Matzke
d0807e258f [svn-r265] Added the alpha-dec-osf4.0 file 1998-02-12 14:28:10 -05:00
Albert Cheng
a7bd14a3be [svn-r261] Added entry for test/testphdf5.c 1998-02-12 00:33:27 -05:00
Robb Matzke
834ce78ca5 [svn-r254] *** empty log message *** 1998-02-11 20:22:25 -05:00
Robb Matzke
3e72af4d29 [svn-r248] Added new files 1998-02-10 19:30:05 -05:00
Robert Kim Yates
3978dc08ac [svn-r245] Added 3 files to aid in configuring for parallel HDF5 on IBM SP.
See INSTALL.ibm.sp.parallel.
1998-02-10 18:11:23 -05:00
Robb Matzke
f486e798d6 [svn-r244] Updated with changes in html directory 1998-02-10 17:16:10 -05:00
Elena Pourmal
2dcc469e77 [svn-r243] In the files list h5_extend_read.c was replaced by h5_chunk_read.c 1998-02-10 13:09:18 -05:00
Robb Matzke
a0519587e3 [svn-r238] Added and removed files for release based on contents of CVS/Entries. 1998-02-10 11:38:55 -05:00
Robb Matzke
137bc83f7a [svn-r213] Changes since 19980130
----------------------

./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.
1998-02-03 12:03:13 -05:00
Robb Matzke
8831ff175c [svn-r210] Changes since 19980130
----------------------

./MANIFEST
./html/study.html		[NEW]
./html/study_1000x1000.gif	[NEW]
./html/study_250x250.gif	[NEW]
./html/study_499x499.gif	[NEW]
./html/study_5000x1000.gif	[NEW]
./html/study_500x500.gif	[NEW]
./html/study_p1.gif		[NEW]
./html/study_p1.obj		[NEW]
	The conclusions from a study of the HDF5 chunking
	layout. Shows overhead and disk seeking.
1998-01-30 22:47:38 -05:00
Robb Matzke
374e5ae39b [svn-r209] Changes since 19980130
----------------------

./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.
1998-01-30 18:32:28 -05:00
Robb Matzke
5761b90f63 [svn-r196] Changes since 19980128
----------------------

./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.
1998-01-29 11:31:24 -05:00
Robb Matzke
d4a3224c0f [svn-r193] Changes since 19980128
----------------------

./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.
1998-01-28 16:43:08 -05:00
Robb Matzke
8a8b71b3f5 [svn-r171] Changes since 19980126
----------------------

./MANIFEST
        Added new files.

./config/linux
        Added `-pipe' to the default GCC flags since this is supposed
        to result in better performance on a multi-processor machine.

./html/Datasets.html
./html/dataset_p1.gif           [NEW]
./html/dataset_p1.obj           [NEW]
        Updated to match source.  The things which aren't part of the
        Feb-1 prototype are marked in bold. Added an example for
        partial I/O.

./html/Groups.html              [NEW]
./html/group_p1.gif             [NEW]
./html/group_p1.obj             [NEW]
./html/group_p2.gif             [NEW]
./html/group_p2.obj             [NEW]
./html/group_p3.gif             [NEW]
./html/group_p3.obj             [NEW]
        New documentation for groups.

./html/H5.sample_code.html
        Updated two examples to match code.
1998-01-27 14:35:36 -05:00
Robb Matzke
6ee36e2b3a [svn-r168] Changes since 19980122
----------------------

./MANIFEST
	Added new files.

./src/H5D.c
	Added support for partial datatype I/O which is needed when
	merging struct members between file and disk.  This isn't the
	efficient version because the merge requires an extra gather
	(step 1b in my pipeline diagram) that isn't turned off when it
	isn't needed.

./src/H5T.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
	Conversion functions take an extra argument which is a pointer
	to a blob of private data that can be used by the conversion
	function to save anything that's expensive to compute and
	is constant for a particular conversion path.

./src/H5Tconv.c
	Compound data type conversion is beginning to work!  We can
	handle conversions between compound types that have members
	which are not arrays.  It also supports partial conversion so
	we can omit certain members of the source and not clobber
	extra members in the destination.

./test/Makefile.in
./test/cmpd_dset.c	[NEW]
	Added a test case that demonstrates how to use compound data
	types in a dataset.  The output doesn't match the output of
	the other test cases yet, the the entire example is more
	readable and written entirely with the API.
1998-01-23 14:53:37 -05:00
Robb Matzke
f5cc0548b8 [svn-r161] Changes since 19980121
----------------------

./MANIFEST
./src/H5Psimp.c		[NEW]
./src/Makefile.in
	Added H5Psimp.c and populated it with some conversion
	functions. Eventually the parts of H5P.c that operate on
	simple data spaces will be migrated to H5Psimp.c and other
	files will be created for other types of data spaces.

./src/H5D.c
	The read pipeline, H5Dread(), has been updated to handle data
	space conversion although the actual simple data space
	conversion functions don't do anything yet. But we're getting
	really close!

./src/H5P.c
./src/H5Pprivate.h
	Added H5P_find() to locate data space conversion functions.
	Added typedefs for structs related to data space conversion.
1998-01-21 15:01:02 -05:00
Robb Matzke
74618e3670 [svn-r155] Changes since 19980114
----------------------

./html/Datasets.html
	Removed some archaic comments about data spaces. Fixed example
	code.

./MANIFEST
./html/H5.format.html
./src/H5O.c
./src/H5Oprivate.h
./src/H5Ocstore.c		[DELETED]
./src/H5Oistore.c		[DELETED]
./src/H5Olayout.c		[NEW]
./src/Makefile.in
./test/istore.c
	Replaced H5O_CSTORE and H5O_ISTORE messages with a more
	general H5O_LAYOUT message.

./src/H5D.c
./src/H5Dprivate.h
./src/H5Dpublic.h
	A little more work on the pipeline.  Access to the file data
	is through the new H5F_arr_read() and H5F_arr_write() which do
	I/O on hyperslabs of byte arrays and don't depend on data
	layout.  This should simplify the I/O pipeline quite a bit.

	I also added another argument to H5Dread() and H5Dwrite() to
	describe the hyerslab of the file array on which I/O is
	occuring. We discussed this at last week's meeting.

./src/H5Farray.c		[NEW]
	Added functions that sit on top of H5F_block_read() and
	H5F_istore_read() and implement a common set of functions
	between all layouts.  This means I/O of hyperslabs of
	byte-arrays in the file to arrays of bytes in memory.  When
	operating on arrays of elements (>1byte) then we just add
	another dimension.  That is, a 10x20 array of int32 becomes a
	10x20x4 array of bytes.

	[This is the area I'll be working on most of next week to
	implement partial I/O for contiguous data and to improve
	performance for chunked data.]

./src/H5Fistore.c
./src/H5Fprivate.h
	Replaced the H5F_istore_t data type with the layout message
	H5O_layout_t which looks almost the same.  Eventually I'd like
	to rename `istore' to `chunked' everywhere and use `istore'
	for 1-d storage where the chunks are all different sizes like
	in the small object heap where each object is a chunk.

./src/H5V.c
	Changed ISTORE to LAYOUT in one place.

./test/dsets.c
	Fixed for extra argument to H5Dread() and H5Dwrite().
1998-01-16 14:52:04 -05:00
Robb Matzke
d70c7d7a64 [svn-r153] Changes since 19980108
----------------------

./MANIFEST
./src/H5Dconv.c		[REMOVED]
./src/H5Tconv.c		[NEW]
./src/Makefile.in
	Changed H5Dconv.c to H5Tconv.c

./html/Datatypes.html
	Updated data type conversion section.

./html/H5.apiv2.html
	Removed sections about datasets and data types since they're
	covered in their own chapters.

./src/H5D.c
	Supports data type conversion.

./src/H5Odtype.c
./src/H5Tpkg.h
	Changed `lo_pad' and `hi_pad' to `lsb_pad' and `msb_pad'.

./src/H5T.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
./src/H5detect.c
	Added predefined data types. Added query/set more
	properties. Added type conversion infrastructure.

./test/dsets.c
	Tests data type conversion during read.
1998-01-14 14:42:59 -05:00
Robb Matzke
1d17defdfc [svn-r150] Changes since 19971219
----------------------

./src/H5private.h
        Changed HDF5_MAJOR_VERSION to 5

./src/H5Aprivate.h
./src/H5Apublic.h
        Added group atoms.

./src/H5D.c
./src/H5P.c
./test/istore.c
./test/tohdr.c
./test/tstab.c
        Updated for symbol table interface changes.

./src/H5F.c
./src/H5Fprivate.h
        Simpler handling of special case files: empty files and files
        with a single object.

./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5Gprivate.h
./src/H5Gpublic.h
./src/H5Gshad.c         (DELETED)
./src/H5Gstab.c
./src/Makefile.in
        Removed shadows, simplifying code.  Symbol table entries are
        allowed to cache only constant meta data.  Fixed naming.

./src/H5O.c
./src/H5Oprivate.h
        Access to object headers is always done through a symbol table
        entry instead of a file address.  Added stubs for opening and
        closing object headers to be used when deletion is implemented.
1998-01-05 22:07:15 -05:00
Robb Matzke
3c16901751 [svn-r144] *** empty log message *** 1997-12-11 16:34:05 -05:00
Robb Matzke
250ff23f4f [svn-r141] ./MANIFEST
Removed H5config.h since it's generated from H5config.h.in.
1997-12-11 13:48:28 -05:00
Robb Matzke
61e2bdd49a [svn-r137] ./MANIFEST
Added/removed files
1997-12-10 17:38:07 -05:00
Robb Matzke
cdeeb5553a [svn-r136] ./MANIFEST
./src/Makefile.in
	Added H5Ffamily.c and H5Fsplit.c

./src/H5B.c
./src/H5Bprivate.h
./src/H5Gnode.c
	Added `const' to sublass arguments.

./src/H5F.c
./src/H5Flow.c
./src/H5Fsec2.c
	Make sure file buffers get flushed during a call to
	H5Fflush().  Check for overflow in address encoding and decoding.

./src/H5Ffam.c
./src/H5Fprivate.c
./test/istore.c
	Implementation of file families so 32-bit machines can access
	64-bit files.

./src/H5Oprivate.h
	Removed H5O_NO_ADDR constant.

./config/freebsd2.2.1
./config/linux
	Added -DH5G_DEBUG and -DH5F_DEBUG to the list of debugging flags.

./html/H5.format.html
	Changed some <offset>-sized things to <length>-sized things.

./src/H5AC.c
./src/H5ACprivate.h
./src/H5B.c
./src/H5Bprivate.h
./src/H5C.c
./src/H5D.c
./src/H5F.c
./src/H5Fcore.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fprivate.h
./src/H5Fsec2.c
./src/H5Fstdio.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5Gprivate.h
./src/H5Gshad.c
./src/H5Gstab.c
./src/H5H.c
./src/H5Hprivate.h
./src/H5MF.c
./src/H5MFprivate.h
./src/H5O.c
./src/H5Ocont.c
./src/H5Oistore.c
./src/H5Oprivate.h
./src/H5Ostab.c
./src/H5Ostdst.c
./src/H5pivate.h
./src/debug.c
./test/istore.c
./test/theap.c
./test/tohdr.c
./test/tstab.c
	Lots of changes caused by generalizing addresses.  The haddr_t
	is now a struct, so you can no longer perform arithmetic on
	it. But since it's small, simple, and often used, storage is
	allocated like with an integer.  But we always pass them
	around by reference.  That is, when using an address in
	another struct, allocate space:

		struct my_struct {
		   char *name;
		   haddr_t address;
                } x;

	But when passing it to a function, pass by reference:

		H5F_addr_print (stderr, &(x.address));

	Addresses should be initialized with

		H5F_addr_undef (&(x.address));

	Functions for operating on addresses are in H5Flow.c and begin
	with H5F_addr_...  Functions never return haddr_t or haddr_t*;
	they always pass them through arguments instead. A function
	that returns an address through an argument does so with its
	last argument and it is marked with `/*out*/'.  Calls to such
	functions also mark output-only arguments with `/*out*/'

./src/H5Fsplit.c       (new)
	A two-member family where all meta data goes in the first
	member and all raw data goes in the second member.

./src/H5B.c
./src/H5D.c
./src/H5F.c
./src/H5Ffamily.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fprivate.h
./src/H5Fsec2.c
./src/H5Fstdio.c
./src/H5Gnode.c
./src/H5H.c
./src/H5MF.c
./src/H5MFprivate.h
./src/H5O.c
	Differentiate between meta data storage and raw data
	storage. Provide a mechanism so that the file driver can
	extend the file to allocate more memory.

./src/H5E.c
./src/H5Epublic.c
	Added the error H5E_TRUNCATED to be reported when the file is
	shorter than the length recorded in the boot block.

./src/H5F.c
	Added H5F_locate_signature() so we only do it in one place
	now.

./INSTALL
./INSTALL_MAINT
	Just a couple clarifications.

./html/ExternalFiles.html
./html/storage.html
	Documents how external files work.

./test/hyperslab.c
./test/istore.c
	Fixed printf's on 64-bit machines.

./test/istore.c
	Added ifdef's to test the split file driver.
1997-11-14 09:42:14 -05:00
Robb Matzke
7389762766 [svn-r135] ./config/linux
./config/freebsd2.2.1
        Rewritten to be more flexible.

./src/H5AC.c
./src/H5ACprivate.h
./src/H5F.c
./src/H5H.c
./src/H5Gpkg.h
./src/H5Gshad.c
./src/H5O.c
./test/istore.c
./test/tstab.c
        Accumulates cache statistics and displays the results on
        stderr when the file is closed if it was opened with
        H5F_ACC_DEBUG passed into H5F_open()

./src/H5B.c
./src/H5Bprivate.h
./src/H5Fistore.c
./src/H5Gnode.c
        Added more debugging which is turned on if H5B_DEBUG is
        defined on the compile command (see config/linux).

        Fixed a couple of bugs with left insertions which are used by
        the indexed storage stuff.

./src/H5Flow.c
        Fixed a memory leak.

./src/H5Fprivate.h
        Fixed warnings about shifting more than size of object.

./src/H5Fstdio.c
        Fixed seek optimizations back to the way Quincey originally
        had them.

./src/H5V.c
        Removed unused variables.
1997-11-07 00:16:53 -05:00
Robb Matzke
e1e488bd47 [svn-r133] ./MANIFEST
./src/Makefile.in
	Added new files.

./html/H5.apiv2.html
	Added documentation for group stuff.

./src/H5private.h
./src/H5E.c
./src/H5Epublic.h
./src/H5F.c
./src/H5Flow.c			NEW
./src/H5Fprivate.h
./src/H5Fsec2.c			NEW
./src/H5Fstdio.c		NEW
	Low-level file driver is selected at runtime.

./src/H5Fprivate.h
	Got rid of `shift >= sizeof operand' warnings on big endian
	machines.

./src/H5Fistore.c
./test/istore.c
	Still working on indexed storage...

./src/H5H.c
./src/H5Hprivate.h
	Removed alignment constraints.
1997-10-22 17:08:14 -05:00
Robb Matzke
56ad55117a [svn-r129] Changes since 19970916
----------------------

./config/depend.in
	Fixed backslashes in sed script because the H5Gnode.c
	dependency info was disappearing.  You'll have to rerun
	config.status to rebuild the Makefiles unless you use gnu
	make.

./config/conclude.in
	Also removes emacs backup files, TAGS, and svf backup files.

./config/linux
	Grouped gcc flags and added provisions for debugging vs. production.

./html/H5.format.html
	Updated messages 0x0008, 0x0009, and 0x000A.

./html/storage.html
	Documentation describing storage schemes.

./src/Makefile.in
./test/Makefile.in
	New source files.

./src/H5A.c
./src/H5Apublic.h
./src/H5C.c
	Changed VOIDP to void* in a couple places.

./src/H5AC.c
./src/H5ACprivate.h
./src/H5B.c
./src/H5Bprivate.h
./src/H5G.c
./src/H5Gnode.c
./src/H5Gprivate.h
./src/H5H.c
./src/H5O.c
	Removed `const' from some variables because H5G_node_found() wanted
	to modify it's udata argument. Removing const there caused it
	to cascade to these other locations.

./src/H5AC.c
./src/H5ACprivate.h
./src/H5B.c
./src/H5Gnode.c
./src/H5Gstab.c
./src/H5H.c
./src/H5O.c
	Added an extra argument to H5AC_find_f() and H5AC_protect(). This
	arg gets passed to the load() method.  Also added an extra
	argument to the H5AC_find() macro.

./src/H5B.c
./src/H5Bprivate.h
./src/H5Gnode.c
	Extra argument passed to the sizeof_rkey() method.

./src/H5Fprivate.c
./src/H5Fistore.c (new)
	Added indexed I/O operations.

./src/H5G.c
./src/H5Gnode.c
./src/H5Gprivate.h
	Beginning to add H5G_open/close and related bug fixes.

./src/H5Oprivate.h
./src/H5Oistore.c (new)
	Added the H5O_ISTORE messsage (0x0008) for indexed storage of
	objects.

./src/H5private.h
	Added extra braces around both sides of the FUNC_ENTER() and
	FUNC_LEAVE() macros so FUNC_ENTER() can appear before
	declarations or after executable statements the second case is
	used by H5G_namei() to initialize output arguments to sane
	values before FUNC_ENTER() might return failure.

		int f ()
		{
		   int decl1;
		   printf ("This happens before FUNC_ENTER()\n");
		   FUNC_ENTER (...);
		   int another_declaration;

./src/H5B.c
./src/H5Bprivate.h
./src/H5Gnode.c
	Extra arguments for key encoding and decoding.

./src/H5E.c
./src/H5Epublic.h
./src/H5Fistore.c
./src/H5Oistore.c
./src/H5Oprivate.h
	Indexed, chunked, sparse storage (not ready for general consumption
	yet).

./src/H5V.c		(new)
./src/H5Vprivate.h	(new)
./test/hyperslab.c	(new)
	Vector, array, and hyperslab functions.

./src/H5B.c
./src/H5Bprivate.h
./src/H5Fistore.c
./src/H5Gnode.c
./src/H5V.c
./src/H5Vprivate.h
./test/hyperslab.c
	Added functionality for indexed storage.

./src/H5F.c
	Fixed problems with seek optimizing.  Recommend we disable it
	until we can implement it in the file/address class since all
	of HDF5 must be aware of it.

./src/H5O.c
	Fixed comeent speling erorr :-)

./MANIFEST
	Added new files.

./config/conclude.in
	Added the word `Testing' to the test cases.  So if a test
	program is called hyperslab then the make output will contain
	the line `Testing hyperslab'.

./config/linux
	The default file I/O library is Posix section 2 on my linux
	machine so I can do some I/O performance testing.

./src/H5C.c
./src/H5Cprivate.h
./src/H5Cpublic.h
	Added ability to set size of indexed-storage B-tree.

./src/H5D.c
./src/H5E.c
./src/H5Epublic.h
./src/H5F.c
./src/H5Fprivate.h
./src/H5G.c
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5Gprivate.h
./src/H5Gpublic.h
./src/H5Gshad.c
./src/H5Gstab.c
./test/stab.c
	Changed `directory' to `group' in numerous places.

./src/H5private.h
	The FILELIB constant can be set on the compile command-line.

./src/istore.c		     NEW
	Tests for indexed storage.
1997-10-20 18:14:35 -05:00
Robb Matzke
ed9584cc92 [svn-r105] *** empty log message *** 1997-09-21 21:08:01 -05:00
Robb Matzke
d06e2e8eb4 [svn-r98] *** empty log message *** 1997-09-19 11:33:13 -05:00
Robb Matzke
c7ee2a5708 [svn-r93] *** empty log message *** 1997-09-17 10:02:43 -05:00
Robb Matzke
0cd492bb8e [svn-r82] *** empty log message *** 1997-09-15 14:26:24 -05:00
Robb Matzke
2a7ec85d6b [svn-r72] *** empty log message *** 1997-09-10 14:58:12 -05:00
Robb Matzke
8ec38c06f4 [svn-r32] ./INSTALL NEW
Instructions for end users.

./INSTALL_MAINT	        NEW
	Instructions and hints for maintainers.

./MANIFEST		NEW
        A list of names of files that are part of the HDF5
        distribution.

./Makefile.in		NEW
	Top-level makefile template.  See INSTALL and/or INSTALL_MAINT
	for instructions on how to generate the Makefile from this
	file.

./configure		NEW
./configure.in		NEW
	Configuration shell script generated from configure.in.

./Makefile
	Removed from CVS.  This file is now generated by running
	configure.
1997-08-15 11:35:53 -05:00