Commit Graph

40 Commits

Author SHA1 Message Date
Binh-Minh Ribler
a75e8dd654 [svn-r25061] Description:
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)
2014-04-17 18:25:01 -05:00
Binh-Minh Ribler
0dc4ce3704 [svn-r24994] Purpose: Removed some warnings
Description:
    Turned on warnings and removed some of those.
Platforms tested:
    Linux/ppc64 (ostrich)
    Linux/32 2.6 (jam)
    SunOS 5.11 (emu)
2014-04-08 23:03:03 -05:00
Binh-Minh Ribler
a08f75b073 [svn-r24969] Description:
- Added wrappers to H5Object for H5Iget_name() to get object's name
        ssize_t getObjName(char *obj_name, size_t buf_size = 0) const;
        ssize_t getObjName(H5std_string& obj_name, size_t len = 0) const;
        H5std_string getObjName() const;
    - Added tests tobject.cpp
    - Added to various cleanup_* functions in tests to remove generated files
    - Added an overload H5I_type_t getHDFObjType() to get object's type
Platforms tested:
    Linux/ppc64 (ostrich)
    Linux/32 2.6 (jam)
    SunOS 5.11 (emu) with gmake
2014-04-06 17:36:15 -05:00
Binh-Minh Ribler
0fcac56705 [svn-r24938] Description:
- Overloaded Atribute::getName to take a char* for the attribute name:
        ssize_t Attribute::getName(char* attr_name, size_t buf_size)
    - Switched the arguments in this function:
        ssize_t getName(size_t buf_size, H5std_string& attr_name)
        so it became:
        ssize_t getName(H5std_string& attr_name, size_t buf_size)
        The second argument is default to 0, and can be skipped.
    - Removed this function:
        H5std_string getName(size_t buf_size); it'll collide with the
        first function when that function takes a NULL for the first
        argument, and uses default value for the second argument.
    - Added more tests
Platforms tested:
    Linux/ppc64 (ostrich)
    Linux/32 2.6 (jam)
    SunOS 5.11 (emu)
2014-04-01 00:59:37 -05:00
Binh-Minh Ribler
1f6cd26a93 [svn-r23438] Purpose: Fix bug HDFFV-7520
Description:
    Added wrappers for H5Aexists.
Platforms Tested:
    Linux/32 2.6 (jam)
    Linux/64 2.6 (koala)
    Linux/ppc64 (ostrich)
2013-03-23 12:37:49 -05:00
Binh-Minh Ribler
c8018386da [svn-r23427] Purpose: Fix bug HDFFV-8067
Description:
  + The C++ test failed with the new PGI compilers versions 12.4 and 12.5
  + An exception thrown by an internal function, which was called by
    a constructor, was not propagating to the test program during the stack
    unwinding, so it couldn't be caught by the test and the program terminated.
  + Various trials and errors indicated that the problem is where an STD string
    converted to a char* being passed to the internal function, but confirmation
    has not been found yet.  It could be a compiler bug.
Solution:
  + Added a try/catch in the constructor around the internal function and
    re-throw the exception when it is caught.  This is a workaround.
  + Unrelated minor fixes: removed unused variables and MESSAGE's; commented
    out tvlstr.cpp/test_read_vl_string_attribute because it may be redundant,
    and commented out H5Tpkg.h inclusion because TEST_ALIGNMENT is not added
    yet and probably not necessary in the C++ API.
Platforms tested:
    Linux/32 2.6 (jam) with PGI compilers
    Linux/32 2.6 (jam) with GNU compilers
    Linux/64 2.6 (koala)
2013-03-22 12:56:05 -05:00
Binh-Minh Ribler
f7e1da0cfb [svn-r22877] Description:
Changed uint to unsigned so that no hdf5-specific header file is needed.
Platform tested:
    Linux/32 2.6 (jam) - very minor
2012-10-09 22:32:21 -05:00
Binh-Minh Ribler
5fcec401bd [svn-r22836] Purpose: Fix bug HDFFV-533 and add other missing functions
Description:
    In this bug, H5File doesn't have the ability to create attribute.  The
    following changes will provide that functionality and several others that
    were also missing:
    - Added an abstract class H5Location in between IdComponent and H5Object.
    - New class structure of IdComponent, H5Location, H5Object, H5File
                                IdComponent
                                     |
                                H5Location
                                /        \
                        H5Object        H5File
    - Wrappers in H5Object were moved to H5Location because the related C
      functions take either file, group, dataset, or named datatype ID.
    - Added wrapper for H5Rget_obj_type2
    - Added tests for file attributes and H5Rget_obj_type2 wrapper
Platforms tested:
    Linux/32 2.6 (jam)
    Linux/64 2.6 (koala)
    SunOS 5.10 (linew)
2012-09-27 18:26:16 -05:00
Binh-Minh Ribler
c90711e713 [svn-r18335] Description:
Removed header file testhdf5.h from C++ tests to eliminate a non-standard
    problem on OpenVMS.  It wasn't essential.

Platforms tested:
    Linux/32 2.6 (jam)
    FreeBSD/64 6.3 (liberty)
    Ray agreed to test on OpenVMS.
2010-02-26 11:55:49 -05:00
Binh-Minh Ribler
d301ea9246 [svn-r16816] Description:
Added member function Attribute::getInMemDataSize(), which is a wrapper
    of several C calls, to simplify getting the attribute's data size in
    memory.  Used this new function in Attribute::read to get the fixed-len
    string attribute data.

    Added tests to tattr.cpp.

Platforms tested:
    Linux/32 2.6 (jam)
    FreeBSD/64 6.3 (liberty)
    SunOS 5.10 (linew)
2009-04-21 09:10:43 -05:00
Binh-Minh Ribler
aa775d9738 [svn-r16787] Description:
Fixed to pass parameters to H5Awrite/H5Aread correctly so that
    all Attribute::write and Attribute::read methods work correctly
    for both fixed-length and variable-length string attributes.

    Added more test cases.

Platforms tested:
    Linux/32 2.6 (jam)
    FreeBSD/64 6.3 (liberty)
    SunOS 5.10 (linew)
2009-04-18 23:35:19 -05:00
Quincey Koziol
05cc7c234f [svn-r15825] Description:
Fix various problems with a the core & sec2 VFDs.

	Improve the h5_get_file_size() routine to handle files created with
VFDs that use multiple files.

Tested on:
        Mac OS X/32 10.5.5 (amazon) in debug mode
        Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (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/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
2008-10-08 22:44:22 -05:00
Quincey Koziol
bdd7d59902 [svn-r15628] Description:
Remove trailing whitespace from C/C++ source files, with the following
script:

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

Tested on:
    Mac OS X/32 10.5.5 (amazon)
    No need for h5committest, just whitespace changes...
2008-09-16 10:52:51 -05:00
Raymond Lu
8704820d1c [svn-r15395] When an attribute was opened twice and data was written with one of the handles,
the file didn't have the data.  It happened because each handle had its own
object structure, and the empty one overwrote the data with fill value.  This is
fixed by making some attribute information like the data be shared in the
attribute structure.

Tested on smirom, kagiso, and linew.
2008-07-22 15:36:31 -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
Binh-Minh Ribler
f6ebd743d8 [svn-r13954] Purpose: Fix test
Description:
    Compilers don't destroy temporary objects at the same time, some do
    immediately after use, some delay until the end of the scope.  The
    delay makes it difficult to test the reference count functionality.

Solution:
    Enclosed the operations on objects and check reference count after
    getting out of the enclosed block.  This only works for the test!
    I'm assuming that checking reference count is just for the library
    to test that functionality; the user will not need to do that. :-/

Platforms tested:
    SunOS 5.10 (linew)
    Linux 2.6 (kagiso)
2007-07-08 15:28:59 -05:00
Binh-Minh Ribler
1c4e6d163f [svn-r13524] Purpose: Cleanup tests
Description:
	Added extern "C" to cleanup functions as well, forgot last time.
	Cleaned up/Added comments to some of the newly added tests.

Platforms tested
    AIX 5.1 (copper)
    Linux 2.6 (kagiso)
    SunOS 5.8 64-bit (sol)
2007-03-17 11:26:53 -05:00
Binh-Minh Ribler
5a4bf8171d [svn-r13474] Purpose: Fixed bugs
Description:
    VMS revealed a problem in calling C++ test functions from C AddTest.

Solution:
    Per Quincey's suggestion, added
        #ifdef __cplusplus
        extern "C"
        #endif
    to the called C++ functions.

Platforms tested
    AIX 5.1 (copper)
    Linux 2.6 (kagiso)
    On pending: waiting for Elena to test on VMS when she comes back.
2007-03-08 04:50:55 -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
Binh-Minh Ribler
8e27c89888 [svn-r13093] Purpose: Adding test
Description:
    Added variable-length string tests.

Platforms tested
    AIX 5.1 (copper)
    SunOS 5.8 64-bit (sol)
    Linux 2.6 (kagiso)
2007-01-01 21:17:36 -05:00
Binh-Minh Ribler
36e1d514c4 [svn-r13082] Purpose: Code cleanup
Description:
    Changed from hsize_t to int for rank constants to fix errors on Windows.

Platform tested:
    Linux 2.6 (kagiso)
    Visual 6.0 on Windows XP
2006-12-20 14:15:02 -05:00
Binh-Minh Ribler
45f11bf42e [svn-r13050] Purpose: Code cleanup
Description:
   Fixed several mismatched types causing daily test to fail on tg-login.

Platforms tested:
   Linux 2.6 (kagiso) - just to make sure no ill effects.
   I cannot login to tg-login3 so am going to watch for it on daily test
   tonight.
2006-12-12 09:25:42 -05:00
Binh-Minh Ribler
e8d8f70f51 [svn-r13039] Purpose: Add test
Description:
    Added test_string_attr to partially test recent fix of Attribute::read.

Platforms tested:
    AIX 5.1 (copper)
    Linux 2.6 (kagiso)
    SunOS 5.8 64-bit (sol)
2006-12-10 21:26:48 -05:00
Albert Cheng
e065eee4a8 [svn-r12751] Purpose:
Bug fix (related to 544)

Description:
h5_get_file_size() was coded to return 0 if failed but
file size can be 0.  Changed the failure return value to -1
which is allowed by the returned type of off_t which is a signed
type.
Also changed the checking code of the stat call to just == 0
since that is how it is defined.

Test:
Could test it in heping only.  Both Sol and Copper failed to
compiled due to error in the Direct IO VFD code.
2006-10-11 22:55:06 -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
Binh-Minh Ribler
51c7d9eb39 [svn-r12369] Purpose: Fixed bug
Description:
    Shanti compiler destroy unnamed objects later than others, which caused
    some reference counting test fail.  Revised the test so that destructors
    are called at the same time, regardless the differences of compiler
    implementation.

    Revised some constructors, close, operator=, and destructors to make
    sure that all the object ids are handled properly.

Platforms tested:
    Linux 2.4 (heping)
    SunOS 5.9 (shanti)
    HPUX 11.00 (kelgia)
    AIX 5.1 (copper)
2006-05-23 13:14:24 -05:00
Binh-Minh Ribler
8b90adeac6 [svn-r12296] Purpose: Maintenance
Description:
    dsets.cpp: added a missing PASSED call to line up output better.
    tattr.cpp: casted parameters to verify_val properly to fix compilation
                errors on Windows, introduced from the previous checkin.

Platforms tested:
    Linux 2.4 (heping) - very minor
    Windows XP
2006-04-25 13:02:28 -05:00
Binh-Minh Ribler
7e5de2473b [svn-r12286] Purpose: Fix bug
Description:
    The file size test in C++ library failed on Copper because the
    value returned by h5_get_file_size was intepreted incorrectly
    due to different interger sizes.

Solution:
    H5private.h: Added check to use stat64 and off64_t where appropriate.
    h5test.c and h5test.h: used h5_stat_size_t in place of off_t.
    tattr.cpp: used h5_stat_size_t in place of off_t.

Platforms tested:
    Linux 2.4 (heping)
    AIX 5.1 (copper)
    SunOS 5.8 64-bit (sol) - still on going
2006-04-20 01:09:51 -05:00
Quincey Koziol
2521c4084c [svn-r12254] Purpose:
Anti-feature

Description:
    Revert changes to H5G_stat_t struct, to make it compatible with the 1.6.x
branch again.  The information that was added to the H5G_stat_t struct will
be reported through other API routines.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/C++
    Linux 2.4/64 (mir) w/C++ & Fortran
    Solaris 2.9 (shanti)
2006-04-14 17:21:54 -05:00
Binh-Minh Ribler
e36db373ef [svn-r12202] Purpose: Maintenance
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.
2006-04-05 11:50:56 -05:00
Binh-Minh Ribler
a7e993d72b [svn-r12180] Purpose: Maintenance
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)
2006-03-30 13:06:58 -05:00
Quincey Koziol
88c15b1617 [svn-r11771] Purpose:
Code cleanup

Description:
    Fix a bunch of warnings flagged by Windows compilers.


Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-12-08 13:34:51 -05:00
Binh-Minh Ribler
cf1d541356 [svn-r11763] Purpose: Adding tests
Description:
    Added tests for openFile and new getObjinfo.

Platforms tested:
    Linux 2.4 (heping)
    SunOS 5.8 64-bit (sol)
    HPUX 11.00 (kelgia)
2005-12-05 16:05:33 -05:00
Binh-Minh Ribler
2b41179280 [svn-r11756] Purpose: Test improvement
Description:
    Improved the use of std members.

Platforms tested:
    Linux 2.4 (heping)
    SunOS 5.8 64-bit (sol)
    Linux 2.4 w/PGI (colonelk)
2005-12-03 07:27:14 -05:00
Quincey Koziol
6e7ed46998 [svn-r11487] Purpose:
Code cleanup

Description:
    Tweak copyright on C++ source files to reduce whining by copyright checking
script.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/C++
2005-10-01 10:29:18 -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
Binh-Minh Ribler
52f78a12d5 [svn-r11152] Purpose: Removed some compiler warnings
Description:
    Removed defined but unused variables.

Platforms tested:
    Linux 2.4 (heping)
    IRIX64 with -n32 (modi4)
    Linux 2.4 w/PGI (colonelk)
2005-07-24 22:40:21 -05:00
Binh-Minh Ribler
68b5b9a11b [svn-r10245] Purpose: Cleanup test
Description:
    Used C++ PredType instead of the C types to avoid unresolved symbol
    errors on Windows.

Platforms tested:
    Windows XP
    Linux 2.4 (heping)
2005-03-20 23:49:19 -05:00
Binh-Minh Ribler
8d3da64e23 [svn-r10243] Purpose: Minor bug fix
Description:
    Removed a redefinition of a variable.

Platforms:
    Linux 2.4 (heping) - very minor
2005-03-20 09:15:39 -05:00
Binh-Minh Ribler
2ea54ef9a4 [svn-r10240] Purpose: Adding more tests to C++ API
Description:
    Added C++ tests for attribute functionality, tattr.cpp.

Platforms tested:
    Linux 2.4 (heping)
    AIX 5.1 (copper)
2005-03-19 22:47:55 -05:00