Commit Graph

171 Commits

Author SHA1 Message Date
Scot Breitenfeld
aec106e324 [svn-r14903] Undoing change committed in r14902. 2008-04-30 14:51:13 -05:00
Scot Breitenfeld
5773fd34bc [svn-r14902] Merged fortran_1_8 branch changes r14505:14901 into the trunk. New fortran wrappers added. 2008-04-30 14:23:26 -05:00
Pedro Vicente Nunes
c83dbd9c18 [svn-r14792] bug fix: #1106 h5dump -b will dump ASCII values for datasets after the first one. One variable that controls the binary output was incorrectly reset to zero after a binary output was done a first time. The effect was that on cases of several datasets, the ones after the first were not binary written. Eliminated the resetting of that variable and tested a file with several datasets. Modified the test file so that it is easier to test with the tool binread, that reads the binary output of h5dump.
tested: windows, linux
2008-04-03 16:07:27 -05:00
Pedro Vicente Nunes
6763f7c882 [svn-r14735] make 1.8 and 1.6 code equal or similar
formatted code
tested: windows, linux
2008-03-13 13:44:35 -05:00
Pedro Vicente Nunes
8005df6417 [svn-r14437] bug fix for h5dump subsetting (deal with blocks)and new test runs
add a check for block overlap after the command line parsing

* Algorithm
 *
 * In a inner loop, the parameters from SSET are translated into temporary 
 * variables so that 1 row is printed at a time (getting the coordinate indices 
 * at each row).
 * We define the stride, count and block to be 1 in the row dimension to achieve 
 * this and advance until all points are printed. 
 * An outer loop for cases where dimensionality is greater than 2D is made. 
 * In each iteration, the 2D block is displayed in the inner loop. The remaining 
 * slower dimensions above the first 2 are incremented one at a time in the outer loop
 *
 * The element position is obtained from the matrix according to:
 *       Given an index I(z,y,x) its position from the beginning of an array 
 *       of sizes A(size_z, size_y,size_x) is given by
 *       Position of I(z,y,x) = index_z * size_y * size_x 
 *                             + index_y * size_x
 *                             + index_x
 * 

tested: windows, linux
2008-01-16 11:12:08 -05:00
Pedro Vicente Nunes
be4ca1f67e [svn-r14414] revert the subsetting calls of h5dump to 1 size block, still a bug with size > 1
tested: linux
2008-01-14 19:18:29 -05:00
Pedro Vicente Nunes
4c2256e946 [svn-r14410] code cleaning 2008-01-14 16:12:51 -05:00
Pedro Vicente Nunes
b8b215b34a [svn-r14409] more progress on the block hyperslab bug, clean code
modified the 1D test case for subsetting with block and stride factors

tested: windows, linux
2008-01-14 16:08:55 -05:00
Pedro Vicente Nunes
e8bd4e7e4c [svn-r14408]
more progress on the block hyperslab bug, clean code 


tested: windows, linux
2008-01-14 15:16:40 -05:00
Pedro Vicente Nunes
cdc33803ee [svn-r14407] more progress on the block hyperslab bug, clean code
tested: windows, linux
2008-01-14 13:47:50 -05:00
Pedro Vicente Nunes
d89234baaa [svn-r14397] partial fix for the block selection subsetting bug (2D case ok)
tested: windows, linux
2008-01-10 16:31:28 -05:00
Quincey Koziol
a5984f59f7 [svn-r14212] Description:
Make H5Tarray_create() and H5Tget_array_dims() versioned, and drop the
"perm" parameter from the '2' versions.

	Shift internal library usage to '2' versions.

	Add simple regression tests for '1' versions.

Tested on:
        FreeBSD/32 6.2 (duty) in debug mode
        FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Mac OS X/32 10.4.10 (amazon) in debug mode
2007-10-18 17:02:19 -05:00
Quincey Koziol
579284f422 [svn-r14144] Description:
Move H5Gget_objinfo() to deprecated symbols section and retarget
internal usage to H5Lget_info()/H5Oget_info().

	Misc. other code cleanups...

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	AIX/32 5.3 (copper)
	Solaris/32 2.10 (linew)
	Mac OS X/32 10.4.10 (amazon)
2007-09-13 10:44:56 -05:00
Quincey Koziol
a4069db8f4 [svn-r14131] Description:
Move H5Giterate() and H5G_iterate_t to deprecated symbols section,
replacing them with H5Literate and H5L_iterate_t respectively.

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	AIX/32 5.3 (copper)
	Solaris/32 5.10 (linew)
	Mac OS X/32 10.4.10 (amazon)
2007-08-30 15:03:37 -05:00
Quincey Koziol
d3a0386d36 [svn-r13850] Description:
Hook "default VFD" configure macros into library.

	Also, make "default VFD" default to sec2 instead of nothing.

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Mac OS X/32 10.4.9 (amazon)
2007-06-11 13:51:20 -05:00
Quincey Koziol
c64ac252cd [svn-r13549] Description:
Check in changes from Elena and I to get pgcc compiler working again.
Primarily (all?) changes to move from using 'hsize_t' as array index to using
something else ('size_t') mostly.

Tested on:
    Linux/32 2.4 kagiso w/pgcc
2007-03-26 22:06:48 -05:00
Pedro Vicente Nunes
c24cea791f [svn-r13503]
Preparation for making 1.6 and 1.7 h5dump more similar and 1.6 to have 1.7 fixed bugs incorporated
2007-03-12 11:36:34 -05:00
Quincey Koziol
bb392083b2 [svn-r13297] Description:
Add small 'h5mkgrp' tool to create groups in an HDF5 file from the command
line, allowing the group structure for a file to be created in a script.  This
tool closely follows the 'mkdir' command line tool in UNIX/Linux.

    Allow tool library applications to pass a FAPL to the h5tool_fopen() call,
giving some additional flexibility to tools which are adding objects to an
existing HDF5 file (like h5copy & h5mkgrp).

    Fix missing files in MANIFEST from previous checkin(s).

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-02-14 08:54:11 -05:00
Quincey Koziol
d3c5ab50fc [svn-r13292] Description:
Add feature to h5copy to allow it to add an object to an existing file,
instead of blowing away existing file.

    Modify h5tools_fopen() routine to take access flags, so it can be used
to open an existing file for writing.

    Added check to h5copy test script that verifies it has produced a file
with the correct structure.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-02-13 17:42:43 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
Pedro Vicente Nunes
ba14f83846 [svn-r13134]
New version of the function h5tools_dump_simple_subset, to display subsetting. The new algorithm is: 
Introduced an outer loop for cases where dimensionality is greater 
 than 2D. In each iteration a 2D block is displayed by rows in a inner
 loop. The remainning slower dimensions above the first 2 are incremented 
 one at a time in the outer loop

Note: when blocks are introduced, the display is not correct. This is a bug that requires an improvement of the algorithm.
2007-01-10 14:15:16 -05:00
Pedro Vicente Nunes
aa646b5b43 [svn-r13064]
Fix several bugs

1) the parsing of subsetting was using atoi to convert the parameter to an int, which caused problems for numbers greater that int. Substitute with atof

2) the printing of indices in the subsetting case was not being done. Solution: calculate the element position at the start of the subsetting using the algorythm 

Given an index I(z,y,x) its position from the beginning of an array   of sizes A(size_z, size_y,size_x) is given by
Position of I(z,y,x) = index_z * size_y * size_x 
                              + index_y * size_x
                              + index_x

And pass that position to the function that dumps data, h5tools_dump_simple_data. 

3) several index counters were declared as int, use hsize_t instead

4) modified the test generation program so that it includes test cases for subsetting of 1d, 2d, 3d, and 4d arrays and add these tests to the shell script
2006-12-14 16:18:08 -05:00
Pedro Vicente Nunes
a1edc70691 [svn-r12784]
Fixes for bugs 676, 228

676: both h5repack and h5diff use H5Dread. In the case of a "big"
dataset, use read/write by hyperslabs the same way h5dump uses. An
arbitrary value of 1GB was defined for "big", i.e, if the dataset is
greater than 1GB, then read/write by hyperslabs

228: use the file type in read/write by default. A new switch -n was
introduced if the user wants to use a native type, which was the
previous use by default.

Added a new test for h5repack that repacks a 1GB dataset

Tested: heping (serial, parallel), sol, copper
2006-10-19 12:07:26 -05:00
Quincey Koziol
14dcb6db33 [svn-r12736] Description:
Add "use the latest format" support for dataspace object header encode/
decode routines and clean up format a bit for the latest format (new to 1.8.x
releases)

    Remove storing 'perm' parameter for array datatypes in memory and the file,
and add test to make certain that if any user applications are attempting to
store them, we get some reports back.  (Should be unlikely, since the RefMan
says that the parameter is not implemented and is unsupported).
    Carry those changes into the tests, etc.

    Clean up a bunch more compiler warnings.

Tested on:
    FreeBSD/32 4.11 (sleipnir) w/threadsafe
    Linux/32 2.4 (heping) w/FORTRAN & C++
    Linux/64 2.4 (mir) w/enable-1.6-compat
2006-10-08 23:18:18 -05:00
Albert Cheng
66d2d26f5d [svn-r12634] Purpose:
Code cleanup.

Description:
Removed argc and argv from the function arguments of h5tools_get_fapl() and
h5tools_fopen().  They were used to call MPI_Init() which was no longer
needed.

Tested:
heping (serial and parallel).
2006-08-27 19:55:27 -05:00
Albert Cheng
104edc6fb9 [svn-r12534] Purpose:
Bug fixes.

Description:
There were MPI_init and MPI_finalize calls in the code of h5tools_fopen in
parallel mode.  But if a non-MPI tool is invoke to open a non-existing
file, it tries to open the non-existing file with different VFD and
eventaully came to try with the MPIO or the MPIPOSIX vfd, then it would
try to do MPI_Init which would fail in the MPI environment if the a.out
was not launched by MPI properly.

Solution:
MPI_Init and MPI_Finalize in general should be called by the MPI application,
not called by a library subroutine as in the manner that was done here.
Removed the MPI_init and MPI_Finalize calls.  Used MPI_Initialized to
verify if this has been launched as an MPI application in the proper
manner before attempting to use the MPIO or the MPIPOSIX VFD to open
the file.

Tested:
In tg-ncsa parallel, where it had failed explicitly and also in Heping,
using both serial and parallel mode.
2006-08-03 21:57:36 -05:00
James Laird
3e755623cb [svn-r12528] Added User-Defined links to the library.
Users can create external links using H5L_create_external().  These links
point to an object in another HDF5 file.  Users can alter the behavior of
external links or create new kinds of links by registering callbacks
using the H5L interface.

Added tests, tools support, etc.

Also a number of other, minor changes have been made (some restructuring of
the H5L interface, for instance).

Additional documentation and examples are forthcoming.
2006-08-02 18:41:53 -05:00
Pedro Vicente Nunes
70b46a1d89 [svn-r12518] h5dump binary output:
1. changed the -F flag option names to "BE and "LE" for big and little endian 
2. added a more verbose usage message for these options
3. add a new test
4. add a make clean instruction  to *.bin
2006-07-31 11:04:31 -05:00
Pedro Vicente Nunes
c7384f49e0 [svn-r12513]
new feature
h5dump binary output. use little and big endian type conversions
2006-07-28 10:00:29 -05:00
Pedro Vicente Nunes
b7dd856aea [svn-r12504]
bug fix

calling h5tools_get_fapl running the mpio driver caused H5FD_pl_copy to
fail silently in some conditions. a MPI call was made before MPI_Init.

solution: corrected the MPI call to be made after MPI_Init and added error return
conditions to H5FD_pl_copy and h5tools_get_fapl

tested on copper parallel, mir, shanti
2006-07-27 10:01:48 -05:00
Quincey Koziol
e9d6c992d6 [svn-r12474]
Clean up some compiler warnings.

Tested on:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-07-15 14:49:04 -05:00
Pedro Vicente Nunes
7637b67933 [svn-r12444] Purpose:
new feature

Description:

added support for h5dump to dump binary data using the file type format
added one test to the test script that tests this


Solution:

Platforms tested:
mir
shanti
copper


Misc. update:
2006-06-28 14:34:08 -05:00
Quincey Koziol
7be3afb278 [svn-r12440] Purpose:
Code cleanup

Description:
    Trim trailing whitespace in Makefile.am and C/C++ source files to make
diffing changes easier.

Platforms tested:
    None necessary, whitespace only change
2006-06-27 09:45:06 -05:00
Pedro Vicente Nunes
8846157e59 [svn-r12437] Purpose:
new feature. h5dump output of binary data

Description:
a new switch -b FILE_NAME that dumps the contents of memory data to file FILE_NAME in binary form

new program binread.c that reads the contents of this file and outputs it to stdout

added a test for the h5dump shell script that does a run of -b
the binread.c program reads the data used in this run, usage is ./binread FILE_NAME


Solution:

Platforms tested:
linux
solaris
AIX

Misc. update:
2006-06-26 09:41:59 -05:00
Quincey Koziol
56e3f667d6 [svn-r11886] Purpose:
Code cleanup

Description:
    Check in some of the code cleanups from working on the external link
support.  (This doesn't include any of the external link features)

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Mac OSX.4 (amazon)
    Linux 2.4
2006-01-23 15:46:34 -05:00
Pedro Vicente Nunes
c997f29d60 [svn-r11584] Purpose:
bug fix


Description:

an assertion after the search for objects was saying that the number of
objects in file should be > 0
removed it, since there can be a case where the number of objects is 0.
in this case this was found by a case where zlib was not present and the output file
was not written any objects to

note: this was only detected on the windows batch files, that do not have a conditional
condition to not run tests when a filter is not present


Solution:

Platforms tested:
linux

Misc. update:
2005-10-19 11:46:12 -05:00
Quincey Koziol
a4329aaa47 [svn-r11297] Purpose:
Code cleanup & speedup

Description:
    Refactor h5dump & related code to be considerably cleaner & faster for
files with large #'s of objects.

Platforms tested:
    FreeBS 4.11 (sleipnir)
    Linux 2.4
2005-08-25 15:16:40 -05:00
Quincey Koziol
6b45f5172c [svn-r11245] Purpose:
Code cleanup

Description:
    Trim trailing whitespace, which is making 'diff'ing the two branches
difficult.

Solution:
    Ran this script in each directory:

foreach f (*.[ch] *.cpp)
    sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
end


Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-08-13 15:53:35 -05:00
Pedro Vicente Nunes
1b313aa2f6 [svn-r10738] Purpose:
bug fix 366

Description:
the printing of the array indices was done relatively to the stripmine data (data read
by hyperslabs when its memory requiremnts are too large)
this was causing an incorrect numbering of the array indices (the next read would initialize
the indices to zero)

Solution:
added a field to the print context that keeps track of the stripmine position
and pass to the rendering function the total element position

Platforms tested:
Linux

Misc. update:
2005-05-09 09:53:22 -05:00
Pedro Vicente Nunes
983e9a9e26 [svn-r9961]
Purpose:
bug fix, new test file

Description:
h5dump was not properly displaying array indices > 3D

Solution:
added the same algorythm and data structure that h5diff uses to calculate the array index
from a element number position

Platforms tested:
linux
solaris






Misc. update:
2005-02-08 15:55:17 -05:00
Quincey Koziol
427ff7da28 [svn-r9727] Purpose:
Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-)

Description:
    Generally speaking, this is the "signed->unsigned" change to selections.
However, in the process of merging code back, things got stickier and stickier
until I ended up doing a big "sync the two branches up" operation.  So... I
brought back all the "infrastructure" fixes from the development branch to the
release branch (which I think were actually making some improvement in
performance) as well as fixed several bugs which had been fixed in one branch,
but not the other.

    I've also tagged the repository before making this checkin with the label
"before_signed_unsigned_changes".

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel & fphdf5
    FreeBSD 4.10 (sleipnir) w/threadsafe
    FreeBSD 4.10 (sleipnir) w/backward compatibility
    Solaris 2.7 (arabica) w/"purify options"
    Solaris 2.8 (sol) w/FORTRAN & C++
    AIX 5.x (copper) w/parallel & FORTRAN
    IRIX64 6.5 (modi4) w/FORTRAN
    Linux 2.4 (heping) w/FORTRAN & C++


Misc. update:
2004-12-29 09:26:20 -05:00
Raymond Lu
22a72b911e [svn-r9531] Purpose: Bug fix(#213)
Description:  H5Pset_fapl_family sets family member size only for creating
new file.  The file doesn't keep this size information.  When the file is
re-opened, the size of first member file is used as the member size.

Solution:  Assume user knows the original member size and sets it through
H5Pset_fapl_family.  That will be the member size.  User can pass in value 0
as member size if he doesn't know the original member size.  Library will
choose the size of current first member size as the member file size.

Platforms tested: h5committest and fuss.
2004-11-16 11:38:28 -05:00
Quincey Koziol
e1c1f5cc15 [svn-r9395] Purpose:
Bug fix

Description:
    Correct a couple of array bounds issues exposed by the PGI compiler

Platforms tested:
    Linux 2.4 (verbena) w/PGI compilers
    Too minor too requie h5committest
2004-10-10 14:22:03 -05:00
Quincey Koziol
a25cc355a3 [svn-r9382] *** empty log message *** 2004-10-08 13:41:44 -05:00
Quincey Koziol
defe612ab2 [svn-r9370] Purpose:
Refactor code

Description:
    Refactor common code for determining the native type for using in the
tools into separate routine.

    Also, reduce diffs between the two branches and bring back some fixes from
the development branch to the release branch.

Platforms tested:
    FreeBSD 4.10 (sleipnir)
    too minor to require h5committest
2004-10-06 11:11:18 -05:00
Raymond Lu
7ba45c05b3 [svn-r9364]
Purpose:  change feature

Description:  Back up support bitfield and time datatypes in H5Tget_native_type.Leave it to future support.  Let it return "not supported" error message for
now.


Platforms tested:  h5committest and fuss.

Misc. update:  RELEASE.txt
2004-10-05 09:31:14 -05:00
Pedro Vicente Nunes
d5c705a642 [svn-r8840] Purpose:
bug fix

Description:
when printing array indices , the calculation of the current column was not done correctly

Solution:

Platforms tested:
linux
AIX
solaris

Misc. update:
2004-07-08 16:49:40 -05:00
Pedro Vicente Nunes
265a1d0209 [svn-r8773] Purpose:
bug fix

Description:
the indentation was not made properly for nested objects when printing array indices

Solution:
added the indentation to h5tools_simple_prefix function

Platforms tested:
linux
AIX
solaris

Misc. update:
2004-06-30 13:45:14 -05:00
Pedro Vicente Nunes
bad5b7ec31 [svn-r8622] Purpose:
h5dump new version

Description:
added the changes already made for 1.6
support for dumping of
1) filters
2) storage layout
3) fill value
4) comments
5) superblock
6) file contents
7) array indices


Solution:

Platforms tested:
linux
solaris
AIX

Misc. update:
2004-06-07 11:40:25 -05:00
Raymond Lu
9e9bdad5e9 [svn-r8563] *** empty log message *** 2004-05-21 10:58:53 -05:00