| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Description:
- Updated the description of copy constructor for clarification.
- Removed unnecessary comments.
Platforms tested:
Linux/64 (jelly)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
- Added VarLenType::VarLenType(const DataType& base_type)
- Marked VarLenType::VarLenType(const DataType* base_type) deprecated
- Added a static wrapper for H5Tdetect_class for PredType
static bool DataType::detectClass(const PredType& pred_type, ...)
- Removed the deprecated function Exception::printError() from code
- Miscellaneous improvements in comments
- Added test functions test_detect_type_class() and test_vltype()
Platforms tested:
Linux/32 2.6 (jam)
Linux/64 (jelly)
Darwin (osx1010test)
|
|
|
|
|
|
|
|
|
|
| |
hdf5_1_10
* commit '54957d37f5aa73912763dbb6e308555e863c43f4':
Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes.
Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh.
Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1
Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
|
|
|
|
|
|
| |
Only format changes: mostly tabs vs. spaces
Platforms tested:
Linux/64 (jelly) - very minor
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
Added wrappers H5Location::exists() for H5Lexists.
Added wrapper H5Object::objVersion() to return the header version
of an HDF5 object.
Added new class LinkAccPropList to be used by H5Location::exists()
Added new exception: ObjHeaderIException for H5Object::objVersion()
Rearranged source files in Makefile.am
Platforms tested:
Linux/32 2.6 (jam)
Linux/64 (platypus)
Darwin (osx1010test)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
When adding wrappers for H5Lexists, a new class, LinkAccPropList, was
added to the C++ API, triggered complicated circular dependencies. Thus,
some improvement was made to resolve the problems.
- Replaced existing functions openXxxType with individual type constructors
+ Added individual XxxType constructors to replace the existing functions
openXxxType because it's rather awkward to use these functions.
+ Moved openXxxType from H5Location back to CommonFG
+ Put back CommonFG as a baseclass of Group for openXxxType functions.
+ This replacement should improve usability and prevent the problem of
circular dependencies.
- Removed overloaded constructor that takes an Attribute when there is
already one that takes H5Location because Attribute inherits from
H5Location now.
Platforms tested:
Linux/32 2.6 (jam)
Darwin (osx1010test)
Linux/64 (platypus)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removed obsolet macros from C++ API:
H5_NO_NAMESPACE, H5_NO_STD, __cplusplus
Leave OLD_HEADER_FILENAME because iostream.h might still be in use,
until further checking is done.
Platforms tested:
Linux/32 2.6 (jam)
Linux/64 (platypus)
Darwin (osx1010test)
Jelly
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
- Changed object in catch statements to reference
- Replaced old-style casts or reinterpret_cast with static_cast
- Removed unused name H5Library::need_cleanup
- Removed Exception::printError from documentation
Platforms tested:
Linux/32 2.6 (jam)
Linux/64 (platypus)
Darwin (osx1010test)
|
|
|
|
|
|
|
|
|
|
| |
Description:
Added member function ArrayType::operator= because ArrayType has
pointer data members.
Platforms tested:
Linux/32 2.6 (jam)
Linux/64 (platypus)
Darwin (osx1010test)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
- Removed H5Library::instance because it is unnecessary. All H5Library's
methods are static. This, in turn, removed the memory leaks by
H5Library::instance not being deleted.
- Added ObjCreatPropList::deleteConstants to atexist() list
- Cleaned up comments and format inconsistencies with 1.8
Platforms tested:
Linux/32 2.6 (jam)
Linux/64 (platypus)
Darwin (osx1010test)
|
|
|
|
|
|
|
|
|
|
| |
Description:
Parameter had the same name as the class' member's. Replaced parameter
with a different name.
Platforms tested:
Linux/64 (platypus)
Linux/32 2.6 (jam)
SunOS 5.11 (emu)
|
|
|
|
|
|
|
|
|
|
| |
Description:
Followed hints on the JIRA issue to remove several potential memory
leaks.
Platforms tested:
Linux/ppc64 (ostrich)
Linux/32 2.6 (jam)
SunOS 5.11 (emu)
|
|
|
|
|
|
|
|
|
|
| |
- Put back Exception::printError for backward compatibility
- Added static member function Exception::printErrorStack to print
error stack without an instance of Exception.
Platforms tested:
Linux/ppc64 (ostrich)
Linux/32 2.6 (jam)
SunOS 5.11 (emu)
|
|
|
|
|
|
|
|
|
|
|
| |
Put back overloaded functions for backward compatibility:
- were replaced by better prototyped versions, such as Attribute::getName.
- were modified to add const to constant arguments.
Added notes for future removal in documentation.
Platforms tested:
Linux/ppc64 (ostrich)
Linux/32 2.6 (jam)
SunOS 5.11 (emu)
|
|
|
|
|
|
|
|
|
|
|
| |
- Added another overload for char* argument:
ssize_t getComment(const char* name, const size_t buf_size, char* comment)
- Changed default value to 0 for the other two getComment methods
- Added HDmemset to after every char string allocation to clear the buffer
Platforms tested:
Linux/ppc64 (ostrich)
Linux/32 2.6 (jam)
Linux/64 2.6 (platypus)/PGI compilers
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
Applied patch from user Jason Newton. JIRA issue HDFFV-8623, patch
9, improve c++ compatibility with exceptions. All additions of "throw()"
are included. Exception::what() is not added because it is not necessary.
It was suggested for the name, which follows stdlib.
Platforms tested:
Linux/ppc64 (ostrich)
Linux/32 2.6 (jam)
Linux/64 2.6 (koala)/PGI compilers
|
| |
|
|
|
|
|
|
|
|
| |
- Improved format/comments in tutorial examples
- Added them to Makefile.* and run-c++-ex.sh.in
Platforms tested:
Linux/32 2.6 (jam)
Linux/64 2.6 (koala)/PGI compilers
|
|
|
|
|
|
|
|
|
|
|
|
| |
A static std::basic_string constructed in the Exception class.
This static isn't one that can be be destructed by H5Library::close(),
but rather gets cleaned up as part of the STL std::basic_string static
destructor when the HDF5 DLL is detached (WINDOWS).
Looking at the rest of the Exception code, the
DEFAULT_MSG doesn't really need to be a std::basic_string.
Remove the static constructor and no destructor required.
Tested: local linux - will wait for Nightly Dailies before bringing to 1.8
|
|
|
|
|
|
|
|
|
|
| |
Rename new error handling API routines from H5E<foo>_stack() to
H5E<foo>2().
Tested on:
Mac OS X/32 10.4.9 (amazon)
FreeBSD/32 6.2 (duty)
FreeBSD/64 6.2 (liberty)
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
Description:
Fixed typos and re-arranged some functions to be in sync with 1.6.
Platforms tested:
Linux 2.4 (heping)
SunOS 5.9 (shanti)
AIX 5.1 (copper)
|
|
|
|
|
|
|
|
|
|
| |
Description: Function prototype H5E_walk_t and structure H5E_error_t wasn't backward
compatible.
Solution: Make them compatible with v1.6 and provide new definitions of H5E_walk_stack_t
and H5E_error_stack_t.
Platforms tested: fuss and h5committest.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
Changed to alias string instead of std, i.e. H5std_string instead
of H5std, because the old way wasn't working when std didn't exist.
Platforms tested:
Linux 2.4 (heping)
SunOS 5.8 64-bit (sol)
HPUX 11.00 (kelgia) - this was the problematic platform but I wasn't
able to test before.
|
|
|
|
|
|
|
|
| |
Description:
Removed an empty #ifdef block that was left by mistake.
Platforms tested:
Linux 2.4 (heping) - very minor
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
Added alias H5_std so either the global or std namespace can be
used, depending on H5_NO_STD.
Platforms tested:
Linux 2.4 (heping)
SunOS 5.8 64-bit (sol)
AIX 5.1 (copper)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
There was a workaround for predefined types, in the C++ library,
implemented when the C++ library was handling the reference
counting of the object ids on its own. Currently, the C++ library
is using the available APIs from the C library for that purpose,
and there were bugs reported involving that part of the C++ library.
So, I decided to remove the workaround completely.
Also, improved the use of std members.
Platforms tested:
Linux 2.4 (heping)
SunOS 5.8 64-bit (sol)
Linux 2.4 w/PGI (colonelk)
|
|
|
|
|
|
|
|
|
|
|
| |
Update copyrights.
Description:
Solution:
This should address almost all of the "simple" cases in the repository.
There's still work to do, but it's going to require actually thinking about
the files in question instead of just copying & pasting.
|
|
|
|
|
|
|
|
|
|
|
| |
Update copyrights
Description:
Updated copyright information in hdf5/bin and top-level and added some
more files to be skipped to the chkcopyright config file.
Platforms tested:
None - just eyeballed
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Tweak copyright on C++ source files to reduce whining by copyright checking
script.
Platforms tested:
FreeBSD 4.11 (sleipnir) w/C++
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
The use of FileCreatPropList::DEFAULT sometimes caused failure
in the reference counting area. This occurs to all the default
property lists, which also include FileAccPropList::DEFAULT,
DSetCreatPropList::DEFAULT, and DSetMemXferPropList::DEFAULT.
H5P_DEFAULT was used to create these default prop lists and
because its value is 0, the id of these prop lists are 0, which
is rejected by the H5I functions during the reference counting.
Solution:
The main action to fix the above problem was to use
H5P_FILE_CREATE
H5P_FILE_ACCESS
H5P_DATASET_CREATE
H5P_DATASET_XFER
to define the default property lists accordingly. Yet, when this
fix was applied, some bug in reference counting was revealed.
It appeared that some ids were not incremented but were passed in
for decrementing. The following actions were then taken to fix and
improve the current use of reference counting H5I functions.
* added private func IdComponent::p_valid_id to verify that the
id is a valid id and can be passed into an H5I function
* used p_valid_id to validate an id before calling an H5I functions
in the reference-counting member functions incRefCount,
decRefCount, and getCounter
* changed to use member function incRefCount, decRefCount, and
getCounter instead of the C APIs H5Iinc_ref, H5Idec_ref, and
H5Iget_ref throughout IdComponent.
In addition, overloadings were added for incRefCount, decRefCount,
and getCounter to take an id different than the id of the current
instance; they can be convenient during debugging.
Platforms tested:
Linux 2.4 (heping)
SunOS 5.8 64-bit (sol)
AIX 5.1 (copper)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Correctly retire the H5E_LEN setting, now that the FORTRAN and C++ APIs
have been corrected to not use it either.
Solution:
Pass in the string buffer length for FORTRAN
In the C++ API, call H5Eget_msg() in a manner similar to the way
H5Fget_name() is called.
Platforms tested:
Linux 2.4 (heping) w/FORTRAN & C++
Solaris 2.7 (arabica) w/FORTRAN & C++
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
Description:
Renamed some private members and member functions appropriately.
Platforms tested:
SunOS 5.7 (arabica)
Linux 2.4 (eirene)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add/Correct documentation
Description:
Added doxygen documentation to:
Exception.cpp
H5CompType.cpp
H5FcreatProp.cpp
and corrected some typos in comments for:
H5AbstractDs.cpp
H5EnumType.cpp
H5File.cpp
Platforms:
SunOS 5.7 (arabica)
Linux 2.4 (eirene)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Cleaning up warnings
Description:
Many exception constructors have warnings about reference to temporary
location because of the parameter initialization, for example,
"const string& var = 0."
Solution:
Changed "string&" parameters to pass by value for these constructors.
Consequently, passing string by value also takes care of char pointers
so the overloaded constructors for char pointers are then removed.
Also, instead of setting Exception::detailMessage to null string, I
set it to DEFAULT_MSG ("No detailed information provided") by default.
Platforms:
SunOS 5.7 (arabica)
Linux 2.4 (eirene)
IA-64 (titan)
|
|
|
|
| |
Platforms tested: h5committested
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix and minor code enhancement
Description:
Missing methods to read/write C++ String for an attribute and
a dataset.
Solution:
Added overloaded functions read and write to H5::Attribute and
H5::DataSet.
Also, added another constructor StrType so the need to separately
set the length of the string type can be eliminated. It's minor
but convenient.
Made some minor changes to make error messages more readable.
Platforms:
SunOS 5.7 (arabica)
Linux 2.4 (eirene)
IRIX 6.5.11 (modi4)
HPUX 11.00 (kelgia)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding new platform support
Description:
Added support for the C++ API on hpux11.00 with the compiler aCC.
Because aCC doesn't use "std," a new macro H5_NO_STD is provided
and used where "std" is presented in the library.
In addition, changed several cout's when reporting errors to cerr's.
Platforms tested:
HPUX 11.00 (kelgia)
Linux 2.2x (eirene)
IRIX 6.5.11 (modi4)
SunOS 5.7 (arabica) - by Elena
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
"using namespace std" isn't supported on HP-UX. We ahve the H5_NO_STD
flag begin set, but it wasn't being used.
Solution:
Added the check to the #ifdef line to see if H5_NO_STD is defined
before trying to use it in the program.
Platforms tested:
Kelgia
|
|
|
|
|
|
|
|
|
| |
Description:
Added copyright notice to C++ API files, including *.h, *.cpp, and
Makefile.in
Platforms:
Linux 6.2 (eirene)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
H5Ewalk_cb was being called from a C++ API, when it really is an
internal routine to the H5E interface.
Solution:
Removed C++ API wrapper for it.
Platforms tested:
FreeBSD 4.5 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Bug fixing
Description:
+ added operator= to PredType
+ removed 'using namespace std' from H5RefCounter.cpp because it's not
used and leaving it there requires #include some standard header file
+ added 'using namespace std' in H5Exception.cpp
Platforms tested:
SunOS 5.7 (arabica)
Windows 98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description and Solution:
- Predefined type objects become outdated when the application calls
H5close and then H5open to use the library again.
Solution:
+ Reimplemented PredType using enum type to obtain up-to-date
values for predefined types, i.e. H5T_xxx_yyy's, when they
are used.
+ Added to PredType its own version of getId() to return the
appropriate predefined type id according to the enum value.
+ Made IdComponent::getId() a virtual function
- Since Albert already fixed the "multiply defined RcsId" problem,
removed the now become unnessary "#undef RCSID" from H5Include.h
- Added a check for func_name != NULL in one of the Exception
constructors because seg. fault. might occur in some situations.
- It is more convenient to make a copy of a datatype, dataspace,
or property list by using assignment operator
Solution:
+ Added assignment operator to DataType, DataSpace, and
PropList so that they will invoke H5Tcopy, H5Scopy,
and H5Pcopy, respectively, instead of just simply
copying the data members as for other classes. So,
now a type, space, or property list can be copied by
either :
mytype = original_type, or
mytype.copy(original_type)
Note that copy constructors are still just copying the
data members.
+ Added an assignment operator to DataType that takes a
predefined type.
+ Made IdComponent::operator= a virtual function
Platforms tested:
arabica (sparc-sun-solaris 2.7)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose: Usability enhancement
Description:
- Added more information about the failure to all the throw's,
i.e, member function name and more detail about the failure, where
appropriate. Also, added exception throws for private functions,
such as p_close to provide more specific details.
- Added two api functions: Exception::getFuncName() and
Exception::getCFuncName() to provide the name of the member
function where failure occurs.
- Fixed some typos, one of which caused segn. fault in some
situations (resetIdComponent was accidentally called twice
in a couple of places :)
Platforms:
arabica (sparc-sun-solaris 2.7)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Bug fix
Description:
The Exception destructor accidently called H5Eprint, which caused
error messages to be printed where they are not supposed to because
the failures are expected.
Solution:
Removed that lousy call!
Platforms tested:
arabica (sparc-sun-solaris 2.7)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Feasibility improvement
Description:
- Some member functions in class Exception can be called without
an Exception instance exits, but because they are not static, they
cannot.
- Many exception throwings don't provide any information to callers.
Solution:
- Add 'static' to several member functions in class Exception.
- Added <class name::function name> to some exceptions thrown
in H5File.cpp and H5FcreatProp.cpp. I'm trying this for users'
comments. More information may be added later and to all
exceptions.
- Changed the comment line for emacs editor to:
// C++ informative line for the emacs editor: -*- C++ -*-
because... I'd rather not say that the code "may look like C" :-)
Platforms tested:
Linux (gcc version egcs-2.91.66)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose: bug fix
Description:
I found a couple of places where virtual destructors were missing
and could cause small memory leaks. Also, some destructors were
not virtual when they should be.
Solution:
- added virtual destructors, which also free dynamically allocated
memory
- added virtual to several destructors
- also, fixed several typos
Platforms tested:
Solaris 2.7 (arabica)
|