Commit Graph

32 Commits

Author SHA1 Message Date
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
Quincey Koziol
9b4c1ce9f6 [svn-r10750] Purpose:
New feature.

Description:
    Add "memory pool" internal data structure.  This set of routines is
designed to add a way to allocate small pieces of information for a particular
purpose and then free all the pieces at once (i.e. without having to free each
piece individually).  Memory pools are also good for localizing lots of small
allocations that logically belong together.

    For example, if you were constructing a temporary linked list, you could
create a new memory pool, allocate all the nodes for the list from the memory
pool and when you were done with the list, just destroy the pool instead of
tracking through the list and freeing each block independently.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    h5committest
2005-05-17 14:01:07 -05:00
Quincey Koziol
f6fd474fe4 [svn-r10716] Purpose:
Code cleanup

Description:
    Migrate MPE macros to H5private.h, in preparation for using the
H5MPprivate.h file for "memory pool" API.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/parallel
    Too minor to require h5committest
2005-05-02 14:54:19 -05:00
John Mainzer
a9ba92287d [svn-r10688] Purpose:
Add API calls allowing user control of the metadata cache.


Description:

Prior to this update, the metadata cache was not configurable
from outside the library.


Solution:

Add API calls allowing the user to configure the metadata cache
either at file open time, or for any open file.  Also added calls
permitting the user to monitor cache size and hit rate.  These
latter facilities are needed for "manual" cache size control


Platforms tested:

h5committested


Misc. update:
2005-04-28 11:40:07 -05:00
Xiaowen Wu
065fe7bb71 [svn-r10023] Purpose:
New feature.

Description:
    Add the scaleoffset internal library filter.

Solution:

Platforms tested:
    heping, copper, arabica

Misc. update:
2005-02-16 21:52:21 -05:00
MuQun Yang
ad633eafcc [svn-r9758] Purpose:
Adding framework of N-bit filter

Description:
N-bit filter is required for NetCDF project.
To add N-bit filter, configure.in configure, Makefile.in under src and other
filter-related source code needs to be updated.
Currently, N-bit tests are turned off from the library. So the change will affect daily test.

Solution:

Platforms tested:
sol 2.7, linux 2.4, aix 5.1

Misc. update:
2005-01-06 14:04:15 -05:00
Quincey Koziol
3b63db5f7f [svn-r9459] Purpose:
Code cleanup

Description:
    Clean up minor warnings and align with release branch.


Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel & FPH5
    Solaris 2.7 (arabica) w/production mode
    Linux 2.4 (heping) w/C++ and FORTRAN
2004-10-26 15:07:10 -05:00
Albert Cheng
6b2e47d974 [svn-r9271] Purpose:
Update for the new API, H5Pget_data_transform.

Platforms tested:
Copper only.  No h5committest since this is trivial.
2004-09-17 17:01:45 -05:00
Quincey Koziol
eb3e9ccd8a [svn-r9234] Purpose:
Code cleanup

Description:
    Tweak recent "forward compatibility" changes to the H5E* API (which allowed
for the old H5E API functions to remain unchanged) by allowing for the error
stack callback function (H5E_auto_t) to also remain unchanged from the 1.6
branch.  This required changing the H5E{get|set}_auto routines to have the
old style H5E_auto_t type (which didn't have a stack ID parameter) and the new
H5E{get|set}_auto_stack routines to have a newer "H5E_auto_stack_t" type (which
has a stack ID parameter).  This should make the H5E API changes as forwardly
compatible as possible.
    One side-affect of this change was that it was impossible to determine if
the current auto error callback was the old style (H5E_auto_t) or the new style
(H5E_auto_stack_t) of callback, so a new API function (H5Eauto_is_stack) was
adde to query this.

Platforms tested:
    FreeBSD 4.10 (sleipnir)
    IRIX64 6.5 (modi4)
    h5committest
2004-09-08 21:37:02 -05:00
Raymond Lu
cb7f03a26f [svn-r9183] Purpose: New feature
Description:  Restore 6 old error API functions back to the library to be backward
compatible with v1.6.  They are H5Epush, H5Eprint, H5Ewalk, H5Eclear, H5Eset_auto,
H5Eget_auto.  These functions do not have error stack  as parameter.

Solution:  Internally, these functions use default error stack.

Platforms tested:  h5committest and fuss.

Misc. update: RELEASE.txt
2004-09-01 12:43:30 -05:00
Raymond Lu
7fe5ff1fed [svn-r8921] Purpose: new feature
Description:  This is the second step of checkin for encoding and decoding objects.
H5Tencode and H5Tdecode have been committed in the previous step.  H5Sencode
and H5Sdecode are checked in this time.

Solution: Given object ID, these functions encode and decode object information
into and from binary buffer and return new object ID.  They take advantage of the
existing codes of object header message and encode in the same format.

Platforms tested:  fuss and h5committest.

Misc. update:  RELEASE.txt
2004-07-21 16:30:26 -05:00
Raymond Lu
fbc2aaadaf [svn-r8879]
Purpose:  New feature

Description:  New API H5Tencode and H5Tdecode.  Given object ID, H5Tencode encodes object information into a binary form.  H5Tdecode decode an object information in a binary form, reconstructs the object and return a new object ID.

Solution:  Use object header functions H5O_dtype_decode and H5O_dtype_encode to
facilitate them.  The encoded binary is exactly like object header information.
This is the first step checkin.  Will check in H5Sencode  and H5Sdecode later.

Platforms tested:  h5committed and fuss.

Misc. update: will update release.txt after 2nd step checkin.
2004-07-14 16:45:23 -05:00
James Laird
eab58732d8 [svn-r8781]
Purpose:
HDF5 now supports SZIP with no encoder.

Description:
SZIP can be configured to have both encoder and decoder or just to have the decoder.  HDF5 can now query the configuration of any filter, and will throw errors if users try to write using a filter with encoding disabled.

Solution:
Added H5Zget_filter_info function, changed API for H5Pget_filter and H5P_get_filter_by_id.  See SZIP RFC.

Platforms tested:
Copper (fortran, C++, parallel), Sleipnir (C++), Arabica (fortran, C++), Verbena (fortran, C++)

Misc. update:
2004-07-01 12:38:04 -05:00
Nat Furrer
def8b9c596 [svn-r8768]
Purpose:
Updated H5MPprivate.h for the new API function H5Itype_exists.

Description:
This is the last commit for these changes... I swear...

Solution:

Platforms tested:

Misc. update:
2004-06-30 11:30:27 -05:00
Raymond Lu
358b8545dd [svn-r8765] Purpose: New feature and its test.
Description:  Added new API H5Fget_name and new test program called filename.c.  This function
returns the name of the file by object ID(file, group, dataset, named datatype, and attribute)
which belongs to the file.


Platforms tested:  h5committest and fuss.

Misc. update:  MANIFEST and RELEASE.txt
2004-06-30 08:45:07 -05:00
Raymond Lu
163a9f5ee9 [svn-r8752] Purpose: Correct a typo.
Description:  Mistyped color_H5Fget_filesize as color_H5Fget_filespace.

Solution:  Corrected for this commit.

Platforms tested:  No test needed.
2004-06-28 09:55:23 -05:00
Raymond Lu
a331f676fa [svn-r8750] Purpose: Bug fix
Description:  Forgot to add H5Fget_filespace to H5MPprivate.h for MPE.

Solution:  Defined color_H5Fget_filespac as "red".

Platforms tested:  copper
2004-06-28 09:49:58 -05:00
James Laird
83ab4727e5 [svn-r8712] Fixed bugs in H5I code 2004-06-21 13:25:08 -05:00
Quincey Koziol
583bdf994c [svn-r8495] Purpose:
Bug fixes

Description:
    Updated dependencies

    Fixed error with C++ compiler builds of main library

    Added H5Pset_data_transform to MPE info

Platforms tested:
    FreeBSD 4.9 (sleipnir)
2004-05-08 09:48:42 -05:00
Albert Cheng
c66d2cb606 [svn-r8428] Purpose:
Updated for newly added function.

Platforms tested:
Tested in Copper with MPE option.

Misc. update:
2004-04-28 16:48:29 -05:00
Raymond Lu
480e8d4c9c [svn-r8426] Purpose: Bug fix
Description:  H5Pset_type_conv_cb and H5Pget_type_conv_cb weren't put into
H5MPprivate.h.  Another thing is the func type doesn't match the func field
in the struct in these functions.


Platforms tested: RH 8(fuss) and sleipnir
2004-04-28 12:40:45 -05:00
Pedro Vicente Nunes
78fb916259 [svn-r8149]
Purpose:
replaced name of delete filter with remove filter for the new function H5Premove_filter

Description:

Solution:

Platforms tested:
linux

Misc. update:
2004-02-04 14:36:12 -05:00
Albert Cheng
b637785b44 [svn-r8114] Purpose:
Added color definition of new API.

Platforms tested:
Copper.
2004-01-27 08:35:18 -05:00
Quincey Koziol
15830ae10a [svn-r7941] Purpose:
Bug fix/code cleanup

Description:
    Add MPE information for new H5I functions.

Platforms tested:
    Eyeballed - very minor
2003-12-12 08:46:07 -05:00
Albert Cheng
5b5e7d4dac [svn-r7798] Purpose:
Bug fix

Description:
MPE color for new routine H5Iget_file_id is missing.

Solution:
Added it.

Platforms tested:
Only tested in copper since it is the only one that can do MPE.

Misc. update:
2003-10-30 17:52:57 -05:00
Quincey Koziol
0f4b144642 [svn-r7607] Purpose:
Bug fix

Description:
    Add MPE "color" for new H5Fget_freespace() API function.

Platforms tested:
    None - just eyeballed - too minor to require testing.
2003-10-13 12:34:45 -05:00
Albert Cheng
c1b11ba3c4 [svn-r7410] Purpose:
Bug fix.

Description:
Added MPE color definintions for the Stream-vfd  API.

Platforms tested:
Tested in Copper since MPE only works there.
2003-08-25 18:17:47 -05:00
Albert Cheng
74e4b2ea49 [svn-r7395] Purpose:
Bug fix

Description:
MPE color definitions were missing for new API.

Solution:
Updated it.

Platforms tested:
Tested by hand in Copper since that is the only place that
MPE option works currently.

Misc. update:
2003-08-24 00:58:58 -05:00
Quincey Koziol
c0f9f41be8 [svn-r7027] Purpose:
Bug fix

Description:
    MPE instrumentation was out of date and wasn't reporting the correct name
of the API functions in the library.

Platforms tested:
    IBM p690 (copper)
    h5committest not performed because it doesn't test MPE.
2003-06-11 21:59:49 -05:00
MuQun Yang
f94431ce1f [svn-r6551] Purpose:
To support szip compression in HDF5

Description:
szip compression support is required by NASA ESDIS. The compression algorithm
is good for scientific data. In HDF5, we add another filter
function to make szip as a default compression package as we did for gzip(or zlib).

In this check-in, a new function called H5Pset_szip was added into H5Pdcpl.c, this
function is very similar to H5Pset_deflate. The only difference is SZIP needs
four parameters from the user to get the compression done while gzip needs only one.
So we pass a pointer to this function instead of an integer number.

The description of the four parameters of szip should be in different
documents.

H5Z.c and other header files were simply modified to have HDF5 know szip.

Solution:
See the decription

Platforms tested:
Since there are changes of configure.in and configure,I didn't use h5committest.
I tested with four platforms.
1) Linux 2.4 (eirene)
2) Solaris 2.7(arabica)
3) windows 2000(VS 6.0)
4) SGI IRIX6.5-64(modi4)
For test 1)-3), only basic C tests were done
For modi4 test, I tested 64-bit C,parallel and fortran.
All tests passed, except a warning message from szip library when checksum is used in some order, which doesn't cause any real problems.

Misc. update:
2003-04-01 10:39:48 -05:00
Quincey Koziol
f8da76cb9f [svn-r6266] Purpose:
Code cleanup/new feature.

Description:
    Split FUNC_LEAVE into API and non-API specific versions.  This allows a
    solution to compiling this branch with C++, as well as reducing the size
    of the binaries produced.

Platforms tested:
    FreeBSD 4.7 (sleipnir) w/serial, parallel (including MPE) & thread-safe
2003-01-10 15:26:02 -05:00
Albert Cheng
bd54330abf [svn-r6232] Purpose:
new feature
Description:
    Added MPICH/MPE instrumentation support.
    All source code are bracketed by the macro H5_HAVE_MPE.
    Use "--enable-mpe" to configure it in.
    Currently only worked in Eirene because the MPE library is
    not installed in all machines yet.
    The added file, H5MPprivate.h, holds HDF5/MPE related defintions.
Platforms tested:
    Tested h5committest {arabica (fortran), eirene (fortran, C++)
	modi4 (parallel, fortran)}? Yep.
    Other platforms/configurations tested?
	--enable-mpe feature tested in Eirene.
2003-01-03 14:37:48 -05:00