| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Change new H5P_get_class_path and H5P_open_class_path functions to be non-
static and put prototypes in H5Pprivate.h
Platforms tested:
FreeBSD 4.6 (sleipnir) (no triple-check necessary)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Internal feature.
Description:
To complement the "get the class's path" functionality, there needs to be
a way to open a generic property class with a path.
Solution:
Implement the "open a class by path" functionality. Also, add internal
testing routines.
Platforms tested:
FreeBSD 4.6 (sleipnir) (too small for triple testing)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New internal feature.
Description:
Need some way to determine the "full path" for a generic property class,
i.e. where is this class in the class hierarchy, in relation to its parent
class, etc.
Solution:
Added an internal function "H5P_get_class_path" and a testing function
"H5Pget_class_path_test" that builds the full path of a generic property
class back to the top of its class hierarchy.
This implementation uses '/' characters to delimit the components of the
class path, but no special cases are currently supported for having a '/'
character as part of the actual class name. Should this become an issue,
code to support (and test) it will need to be added.
Platforms tested:
FreeBSD 4.6 (sleipnir) (not major enough to justify triple-test)
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
New API functions
Description:
Added API functions to return pointer to low-level file handle
(H5Fget_vfd_handle and H5FDget_vfd_handle) and related property list
setting functions(H5Pset_family_offset and H5Pset_multi_type).
Platforms tested:
Linux 2.2(eirene), Solaris 2.7(arabica), IRIX64 6.5(modi4)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
__DLL__ is a keyword in some platforms and __DLL__ is also defined as a macro for windows DLL applications.
That causes problems.
Description:
Solution:
Use H5_DLL*** to replace __DLL***__ at all header files.
Change the macro defination at H5api_adpt.h.
Platforms tested:
linux2.2.18smp, irix64, solaris 2.7 and windows 2000
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Combined H5P_isa_class and H5I_object functionality into a new internal
H5P API function: H5P_object_verify, which checks that a property list is
the appropriate class and then returns the property list object associated
with the property list ID.
This reduces the source code by about 200 LOC and trims the library binary
some more.
Platforms tested:
FreeBSD 4.6 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Use dataset transfer property list to hold information about the MPI types
for the current transfer, instead of setting pseudo-global variables in
the file's struct.
Platforms tested:
Linux 2.2.x (eirene) w/parallel & IRIX64 6.5 (modi4) w/parallel & FORTRAN
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Previously, the I/O pipeline (pline), external file list (efl) and fill-
value (fill) structs were passed down the raw data function call chain,
even into and/or through functions which didn't use them. Since all three
of these pieces of information are available from the dataset creation
property list, just pass the dataset creation property list down the
function call chain and query for the information needed in a particular
function.
Platforms tested:
FreeBSD 4.5 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
New feature
Description:
Fill-value's behaviors for contiguous dataset have been redefined.
Basicly, dataset won't allocate space until it's necessary. Full details
are available at http://hdf.ncsa.uiuc.edu/RFC/Fill_Value, at this moment.
Platforms tested:
Linux 2.2.
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Moved parts of the H5P stuff into the new H5Ppkg.h header file from here.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
| |
Purpose:
Switch from old property list to new generic property list.
Description:
Mainly changed H5Pcreat, H5Pclose, H5Pcopy.
Platforms tested:
IRIX64 6.5, FreeBSD, SunOS 5.7.
|
|
|
|
|
|
|
| |
Purpose:
Switch mount property list to the new generic property list.
Platforms tested:
IRIX64 6.5, SunOS 5.7, FreeBSD.
|
|
|
|
|
|
|
|
|
| |
Purpose:
Generic Property List Change
Description:
Changed file access list to the new generic list.
Platforms tested:
IRIX64, SunOS5.7, FreeBSD
|
|
|
|
|
|
|
| |
Purpose:
Changed the file creation property list to the new generic property list.
Platform tested:
IRIX64, SunOS5.7, FreeBSD
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up some small compiler warnings.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
| |
Purpose:
Changed to the new generic property list for dataset creation property
list.
Platforms tested:
Arabica, modi4 and Hawkwind
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Kludge
Description:
Since we're only about halfway through converting the internal use of
property lists from the "old way" to the generic property lists, we turned
off snapshots to avoid exposing lots of API changes to users, until the
APIs settled down.
Getting the snapshots rolling again seems to have become a priority, so
some changes are going to have to be made now that were going to be
postponed until we were completely finished with the conversion. This
requires that the old API functions be able to deal with both the old
and new property lists smoothly.
Solution:
Kludge together the property list code so that they can transparently handle
dealing with both the old and new property lists
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
| |
Adding Feature
Description:
Added new H5Pcopy_prop function to copy a property (value) from one property
list or class to another.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup (sorta)
Description:
When the first versions of the HDF5 library were designed, I remembered
vividly the difficulties of porting code from a 32-bit platform to a 16-bit
platform and asked that people use intn & uintn instead of int & unsigned
int, respectively. However, in hindsight, this was overkill and
unnecessary since we weren't going to be porting the HDF5 library to
16-bit architectures.
Currently, the extra uintn & intn typedefs are causing problems for users
who'd like to include both the HDF5 and HDF4 header files in one source
module (like Kent's h4toh5 library).
Solution:
Changed the uintn & intn's to unsigned and int's respectively.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
The datatype conversion buffer size was only halfway converted from hsize_t
to size_t and was causing problems. Also, the H5P_peek_<foo> routines have
a bunch of identical code.
Solution:
Finished converting the datatype conversion buffer size to size_t and
cleaned up the implementation of the H5P_peek_<foo> routines to call a
common routine instead of reimplementing a bunch of code.
Platforms tested:
Solaris 2.7 (arabica)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New Features!
Description:
Start migrating the internal use of property lists in the library from the
older implementation to the new generic property lists.
Currently, only the dataset transfer property lists are migrated to the
new architecture, all the rest of the property list types are still using
the older architecture.
Also, the backward compatibility features are not implemented yet, so
applications which use dataset transfer properties may need to make the
following changes:
H5Pcreate(H5P_DATASET_XFER) -> H5Pcreate_list(H5P_DATASET_XFER_NEW)
and
H5Pclose(<a dataset transfer property list>) -> H5Pclose_list(id)
This still may have some bugs in it, especially with Fortran, but I should
be wrapping up those later today.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Changed
#include <hdf_file.h>
construct to
#include "hdf_file.h"
so that the GNU compiler can more easily pick up the dependencies
which it places in the .depend and Dependencies files. Also
regenerated the Dependencies to go along with this.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
| |
C++ compatibility fix
Description:
'delete' is a reserved word in C++
Solution:
Change structure member named 'delete' into 'del'
Platforms tested:
FreeBSD 4.2 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code checkpoint
Description:
Checkpointing generic property code before removing the older [non-generic]
property list implementation and switching all the property lists to use
the generic code.
Generic properties are feature complete and as fully tested as I can
determine.
Platforms tested:
FreeBSD 4.2 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup for C++
Description:
'xor' is a keyword in C++, causing problems compiling the library with a
C++ compiler.
Solution:
Change variables and structure fields from 'xor' to 'xor_val'
Platforms tested:
FreeBSD 4.2 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
When the v1.2 compatibility code was turned on, internal functions in the
library were getting confused.
Solution:
Separated guts of H5Pget_driver call into an API function (the definition
of which depends on the compatibility switch) and an internal function
which always behaves like the v1.3/4 function. Replaced API function calls
in the library code with the internal function.
Platforms tested:
FreeBSD 4.2 (hawkwind)
|
|
|
|
|
|
|
|
| |
Code checkpoint
Description:
More generic property functionality added and debugged.
Platforms tested:
FreeBSD 4.1.1 (hawkwind)
|
|
|
|
|
|
|
|
|
| |
Code development
Description:
Increment bug fixes and some new API functions to generic property list
code.
Platforms tested:
FreeBSD 4.1.1 (hawkwind)
|
|
|
|
|
|
|
|
| |
API cleanup
Description:
Tweaked some parts of the generic properties API to reduce warnings.
Platforms tested:
FreeBSD 4.1.1 (hawkwind) & SGI O2K (modi4)
|
|
|
|
|
|
|
|
|
| |
Code updates
Description:
Finished fleshing out code for generic properties, although they are not
used anywhere in the library yet.
Platforms tested:
FreeBSD 4.1.1 (hawkwind)
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Generic property lists were leaking memory.
Solution:
Tied them into the regular cleanup code called at the library's termination
Platforms tested:
Solaris 2.6 (baldric) & FreeBSD 4.1.1 (hawkwind)
|
|
|
|
|
|
|
| |
* 2000-11-10 Robb Matzke <matzke@llnl.gov>
Changed `class' to `cls' in various places
since the former is a C++ reserved word and some C compilers (like
the one on blue) complain.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Maintainance & performance enhancements
Description:
Re-arranged header files to protect private symbols better.
Changed optimized regular hyperslab I/O to compute the offsets more
efficiently from previous method of using matrix operations.
Added sequential I/O operations at a more abstract level (at the same level
as H5F_arr_read/write), to support the optimized hyperslab I/O.
Platforms tested:
Solaris 2.6 (baldric) & FreeBSD 4.1.1 (hawkwind)
|
|
|
|
|
|
| |
yet, but it's
close. This shouldn't interfere with other development work. (I think.. :-)
|
|
|
|
|
|
|
|
| |
H5Eset_auto(NULL,NULL)
has turned off error reporting in the library.
Also, changed the way property lists are managed and closed so that they
can be automatically closed when the library terminates.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
----------------------
./src/H5.c
Fixed more dependency problems in H5_term_library(). There was
a bug in the previous version that could cause the wrong EOF
marker to be written to the boot block under certain
circumstances. Hopefully this fixes it although I don't ready
access to a test case (Mark Miller will test it).
./src/H5F.c
./src/H5Fprivate.h
Added an H5F_close_all() that is similar to
H5F_term_interface() but which doesn't close the
interface. Files that don't have open object headers are
closed, others are delayed until all object headers close. All
files are flushed.
./src/H5ACprivate.h
./src/H5Bprivate.h
./src/H5Dprivate.h
./src/H5Eprivate.h
./src/H5Fprivate.h
./src/H5Gpkg.h
./src/H5Gprivate.h
./src/H5Gpublic.h
./src/H5HGprivate.h
./src/H5HLprivate.h
./src/H5Iprivate.h
./src/H5MFprivate.h
./src/H5MMprivate.h
./src/H5Oprivate.h
./src/H5Pprivate.h
./src/H5Ppublic.h
./src/H5RAprivate.h
./src/H5Sprivate.h
./src/H5Spublic.h
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
./src/H5Vprivate.h
./src/H5Zprivate.h
./src/H5private.h
./src/H5public.h
Reindented after __DLL__ was added.
|
|
|
|
| |
changed the HDF5DLL and HDF5GLOBAL to __DLL__ and __DLLVAR__
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
----------------------
./bin/trace
./src/H5.c
./src/H5private.h
./src/H5A.c
./src/H5D.c
./src/H5F.c
./src/H5G.c
./src/H5P.c
./src/H5Pprivate.h
./src/H5S.c
./src/H5T.c
Output-only arguments have their addresses printed during
tracing and added symbolic output for the H5F_driver_t
arguments. That's another reason that we should be careful to
add `/*out*/' after arguments that are output-only and
`/*in,out*/' after arguments that are used for both input and
output values.
No internal function calls H5Pget_class() anymore.
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tpublic.h
Added H5Tget_overflow() and H5Tset_overflow() so the
application can query or set a function that will be called
whenever an overflow occurs. Implemented as documented in
previous e-mail except the overflow handler gets two buffers:
one that contains the source value and one to receive the
optional destination value.
./test/dtypes.c
Tests overflow handler.
./src/H5.c
We have to declare fdopen() because I'm getting errors when
compiling on Irix64 even though we include <stdio.h> as
documented in the fdopen() man page.
|
|
|
|
| |
from H5C to H5P
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
while he is visiting LLNL. I changed the default creation template
offset and length to 4. Will fix the problem later.
Changes since 19980205
----------------------
./src/H5H.c
./src/H5Hprivate.h
./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/H5Odspace.c
./src/H5Ostab.c
./src/debug.c
./html/H5.format.html
Added an extra 4-byte field after the heap magic number for
alignment on the DEC alpha. Changed object header message
alignment to 8-bytes.
./src/H5F.c
./src/H5Farray.c
./src/H5Ffamily.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fprivate.h
./src/H5Fsec2.c
./src/H5Fstdio.c
./src/H5Gnode.c
./src/H5O.c
./src/H5Odtype.c
./src/H5P.c
./src/H5Pprivate.h
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tpublic.h
./src/H5V.c
./src/H5detect.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/hyperslab.c
./test/istore.c
./test/th5p.c
./test/theap.c
Fixed a few irix64 warnings regarding size_t vs. int,
variables set but not used, printf formats
./config/irix64
Added `-woff 1196' to get rid of errors about __vfork() being
implicitly defined in a system header file.
./src/H5B.c
Fixed a stack alignment problem.
|
|
|
|
|
|
|
|
|
|
| |
The default file addr and size sizes for new files are the
same as sizeof(size_t) on the machine that creates the
file. They used to always be 4.
./src/H5Pprivate.h
./src/H5Psimp.c
Fixed `start' and `nelmts' arguments to be `size_t'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
----------------------
./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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
----------------------
./RELEASE
Added Library functions that I missed the first time.
./html/Datasets.html
Added an example for Elena's question about how to read a
single member of a compound data type so it becomes an array
of that member in memory.
./src/H5Pprivate.h
Fixed the prototype for H5P_get_hyperslab() to match the
definition.
./src/H5Psimp.c
Oops, added the kludge back in for the offset argument, which
is still an `intn' instead of a `size_t'.
./src/H5.c
./src/H5public.h
./src/H5F.c
./src/H5T.c
./src/H5Tpublic.h
Changed H5init() to H5open() and added an H5close() to fit our
create/open/close paradigm. The H5open() happens
automatically on the first call to the HDF5 library. The
H5close() happens automatically on exit() (unless the app
turns off that feature). H5close() closes all datasets and
files and releases all resources used by the library.
./test/dsets.c
Added calls to H5open() and H5close() to test them.
./test/dtypes.c
Removed call to H5init() since we no longer need it there.
./src/H5Fstdio.c
Changed the PABLO_MASK to the right value. Thanks Kim.
|
|
|
|
|
|
|
|
|
|
| |
BTRUE/BFALSE/BFAIL from code.
Changed interface to the H5P..hyperslab functions to 'int' instead of 'size_t'.
Cleaned up lots of warnings on IRIX 6.2 platform. Minor other tweaks to get
to a mostly clean build on the SGI. It still whines about 'long long' being
non-standard and some "pointless comparison of unsigned with 0" but those
aren't big problems.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
----------------------
./src/H5D.c
./src/H5Dpublic.c
Added H5Dget_space().
./src/H5Gstab.c
./src/H5H.c
Fixed a comparison with size_t against <0.
./src/H5P.c
./src/H5Pprivate.h
./src/H5Ppublic.h
Changed `intn' to `int' for public function args and
returns. H5Pget_hyperslab() returns the dimensionality.
./test/testhdf5.h
Clears error stack more frequently.
./src/H5Psimp.c
./test/cmpd_dset.c
Impelementing data space conversion.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
----------------------
./Makefile.in
./config/commence.in
With GNU make you can now use `-j' and `-l' options and things
get built correctly. I can do a `make -j -l6 test' from a
clean hdf5 source tree (after configure) in 45 seconds (8 to
build dependencies, 26 to compile everything, and 11 to run
the tests).
./src/H5Gnode.c
Removed a comment that no longer applies.
./src/H5P.c
./src/H5Pprivate.h
./src/H5Ppublic.h
Changed H5Pselect_hyperslab() to H5Pset_hyperslab() and added
H5Pget_hyperslab() and H5P_get_hyperslab().
Replaced a couple short memset() calls with a for loop.
Removed `if (foo!=NULL)' from around H5MM_xfree() calls.
Clear hslab_def when the hyperslab disappears.
./src/H5Tpublic.h
Removed trailing enum comma.
|
|
|
|
|
|
|
|
|
|
| |
routine are similar
to the HDF4 SDwritedata routine: start, count & stride. The start indicates
the base location of the hyperslab, count indicates the number of elements in
the hyperslab and stride indicates the packing of the hyperslab. The hyperslab
is assumed to be the same rank as the dataspace it is located within. The
hyperslab is stored for future use, no I/O occurs in this routine.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
----------------------
./src/*.h
Fixed indentation where indent(1) screwed up. This isn't by
any means the final say, but it's better than it was.
./src/H5A.c
./src/H5Aprivate.h
./src/H5Apublic.h
./src/H5C.c
./src/H5D.c
./src/H5E.c
./src/H5F.c
./src/H5G.c
./src/H5M.c
./src/H5P.c
./src/H5T.c
./src/H5Tconv.c
./src/debug.c
./test/dtypes.c
./test/istore.c
./test/theap.c
./test/tohdr.c
./test/tstab.c
Removed some atom functions from the API and made them
library-scope. Also changed some names by removing the
redundant `atom' from the name and by adding a `_' after the
`H5A'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
----------------------
./Makefile.in
Added more dependencies to .PHONY.
./src/H5D.c
The write side of the I/O pipeline is implemented now too.
Things are looking good for the prototype and it's just a
matter of populating the library with the data type and data
space conversion functions.
./src/H5Farray.c
./src/H5Fprivate.h
./test/istore.c
Changed the order of the arguments for H5F_arr_read() and
H5F_arr_write().
./src/H5P.c
./src/H5Pprivate.h
Changed the names of the arguments of H5P_find(). Fleshed out
the mgath and fscat callback types.
./src/H5Psimp.c
Added stubs for H5P_simp_mgath() and H5P_simp_fscat() that
operate on the entire data space. Quincey, once you have the
data space hyperslab stuff in place let me know and I'll
finish the H5P_simp_*() functions to do partial I/O. Or you
can take a look at it too if you like; there's some comments
in there for you.
./src/H5V.c
./src/H5Vprivate.h
Changed dimensionality arguments from `size_t' to `intn' to be
consistent with the rest of the library and to get rid of
warnings on 64-bit Irix.
|