More Subsetting
Description:
Wanted to do a check-in of the current subsetting stuff. The
command-line parsing was already in there. I now added the feature to
the h5dump_t structure and it now outputs the new SUBSET DDL stuff in
the correct format. It doesn't yet do the actual subsetting, but
we're getting there...
Platforms tested:
Linux
Resubmit of Changes
Description:
Previous changes to the h5dumper were lost. This patch includes
better memory management of XML formatted strings along with the bug
fixes for the XML code.
Solution:
Merged the XML patch with the previous code.
Platforms tested:
Linux
Bug Fix
Description:
Some platforms (gondolin) don't necessarily have the vsnprintf
function.
Solution:
Changed it to HDvsnprintf and added a header for H5private to include
it...
Platforms tested:
Linux
Bug Fix
Description:
We were trying to build the talign test program before the library
was actually built.
Solution:
Moved talign test to the lib directory since it belongs with the
library anyway.
Platforms tested:
Linux
Purpose:
Bug fix.
Description:
Order of elements in groups is wrong. (Need to find out why
h5gen accepted this at all.)
Note that test output had to be corrected in some cases.
Solution:
Fixed xml_dump_group to do the right order to match the DTD
Platforms tested:
Linux, solaris.
Fix
Description:
Left in the separate subdirectories fro the small programms.
Solution:
removed them and replaced with the misc/ subdirectory
Platforms tested:
Linux
Code Movement
Description:
Moved the tools into their own separate directories (except for these
small tools which are REALLY small, not tested, or documented,
really...They just get put into the misc/ directory).
Platforms tested:
Linux and Kelgia
Purpose:
fix bug in XML output
Description:
OBJ-XID, Parents, etc. were messed up in several cases.
Solution:
Fixed. Updated tests to have correct results in them
Note: tvldtype.h5.xml is a junk file,
Platforms tested:
Solaris 2.7
Purpose:
fix bug in XML output
Description:
OBJ-XID, Parents, etc. were messed up in several cases.
Solution:
Fixed. Updated tests to have correct results in them
Platforms tested:
Solaris 2.7
Bug fix
Description:
h4toh5test was being installed because it was put in the PUB_PROGS
which is specifically for public programs to be installed.
Solution:
Moved it away from the PUB_PROGS list to the PROGS list.
Platforms tested:
eirene.
Purpose:
Fixing Makefile.in for compiling h4toh5test.c at the right option
Without including hdf4 lib, h4toh5test will not be generated.
Description:
Solution:
Platforms tested:
arabica
Feature Add
Description:
Added support for the h4toh5test program which needs to be
conditionally compiled in only if HDF4 is specified.
Platforms tested:
Linux
Feature Add
Description:
This is the first phase of adding subsetting to the dumper. The
command-line parsing should be pretty much set right now.
NOTE: The revision before this one can be used to back port to the
1.4 branch when the XML stuff is folded into that branch for
release.
Platforms tested:
Linux
Purpose:
adding new test hdf4files to be tested by h4toh5 converter
Description:
Solution:
more typical test files are used
Platforms tested:
[machines you have tested the changed version. This is absolute
important. Test it out on at least two or three different platforms
such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and
64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
Purpose:
source code to generate hdf files for h4toh5 converter
Description:
Solution:
see the comments of the code. this file is handled similar with h5dumptst.c
Platforms tested:
eirene, arabica
Purpose:
bug fix
Description:
two bugs: 1. different order of conventions of sds and image in hdf4 is
considered at h4toh5image.c file.
add palette colormodel attribute and correct names of
a few attributes. see detail at:
http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.htm
2. convert hdf internal vdata structure(chunking table)
into a new hdf5 dataset.
Solution:
1. change h5 data space order for image.
h5dims[0] = edge[1]-edge[0];
h5dims[1] = start[1]-start[0];
2. at h4toh5main.c, check the vdata class name and if the
first few characters match with HDF_CHK_TBL; ignore converting
this vdata.
3. add a few attributes at h4toh5pal.c
platforms:
linux and sun 5.7(arabica)
such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and
64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
Update
Description:
Updated the code so that error messages are sent to stdout instead of
to /dev/null. Albert says that it was supposed to be doing this
anyway, so...
Also did some formatting changes.
Solution:
Changed the "2>/dev/null" to "2>&1"
Platforms tested:
Linux
Code cleanup
Description:
Cleaned the code up a bit getting rid of some warnings about "const"
being lost from passing a const char * to a function, etc.
Also force the error messages to stderr instead of simply printing
them to stdout. The same behaviour can be achieved by running h5dump
like:
h5dump ... 2>&1
however, the error reporting before this change wasn't consistent in
its use. I also made some of the error messages clearer (giving names
of the failed types and, when there's an "internal error", reporting
the line number the error occurred on so that we can debug).
Solution:
Converted to "fflush(stdout); fprintf(stderr,...);" for all error
reportings.
Platforms tested:
Linux
Improvement
Description:
The mkdir testfiles and the testing of h5dump have their stderr
redirected to /dev/null. Thus no way to see error messages when happen.
Removed the redirection
Platforms tested:
Eirene (linux).
document
Description:
Added comments in how to use the program and instructions
that the corresponding may need updates if new batch of binary
files are created.
Platforms tested:
Eye-balled only. (Just a few lines of comments.)
Purpose:
windows bug fix
Description:
need extra header files for windows
Solution:
add #ifdef win32 #endif loops
Platforms tested:
windows 2000, confirmed at eirene
Name change
Description:
Changed the names of the testh5toh4 and testh4toh5 scripts to the
"canonical" form -- testh4toh5.sh and testh5toh4.sh.
Platforms tested:
Linux
Bug fix
Description:
I dropped the boat on this one. I assigned prefix to NULL after it'd
been allocated...My bad.
Solution:
Stopped doing that.
Platforms tested:
Linux
Code cleanup
Description:
Changed so that the streaming stuff is inserted if > 1.2 version.
Also modified init_prefix function so that it's sane.
Platforms tested:
Linux
Annoying code cleanup
Description:
This code could all be on one line, but wasn't for some reason.
Solution:
Made it into one printf() call.
Platforms tested:
Linux
Code Cleanup
Description:
Cleaned up where structures were. Added comments to new functions.
Removed strcpy(prefix, "") and made it prefix = NULL; since that's
what it's doing anyway.
Platforms tested:
Linux
Bug fix
Description:
Compiler on sangamon (HP/UX 10.20) is having problems with the statement
"#ifdef 0".
Solution:
Changed statement to "#if 0" instead.
Platforms tested:
Eyeballed...
Code cleanup.
Description:
Fixed _lots_ (I mean _tons_) of warnings spit out by the gcc with the
extra warnings. Including a few show-stoppers for compression on IRIX
machines.
Solution:
Changed lots of variables' types to more sensible and consistent types,
more range-checking, more variable typecasts, etc.
Platforms tested:
FreeBSD 4.2 (hawkwind), IRIX64-64 (modi4)
New Feature
Description:
Changed the command line flags in the h5dumper so that they accept
both short and long flags. The flag syntax for some have changed
(I.e., object ids are no longer -v but -i and -header is now -H or
--header, etc.) A new function is added called get_options which can
be used for all other tools as well.
Had to change these output files to accept the correct flags.
Platforms tested:
Linux
New Feature
Description:
Changed the command line flags in the h5dumper so that they accept
both short and long flags. The flag syntax for some have changed
(I.e., object ids are no longer -v but -i and -header is now -H or
--header, etc.) A new function is added called get_options which can
be used for all other tools as well.
Platforms tested:
Linux