summaryrefslogtreecommitdiffstats
path: root/src/H5Tpkg.h
Commit message (Collapse)AuthorAgeFilesLines
* Basic alignment with async branch (#115)Quincey Koziol2020-11-231-2/+1
| | | | | | | * Basic alignment with async branch - trivial changes to reduce clutter in overall diff. * Update minor error code to reflect change within library * Update the error output to match library
* Clang-format of source filesAllen Byrne2020-09-301-897/+575
|
* Move H5T_vlen_reclaim to package scopeQuincey Koziol2020-08-071-0/+1
|
* Clean up private / package / static namespace issues (function naming, whichQuincey Koziol2020-08-061-1/+2
| | | | | | header file, FUNC_ENTER / LEAVE, etc). Removed remaining personal email addresses from library source code (still needs cleaned from other directories). Misc. warning, style, and whitespace cleanup.
* H5R: fix encoding of references that are part of compound typesJerome Soumagne2020-07-281-1/+1
| | | | Add corresponding test and some debug information
* Merge remote-tracking branch 'origin/develop' into monotonic_timerQuincey Koziol2020-06-261-398/+288
|\
| * H5R: fix H5Tconv to check for null referencesJerome Soumagne2019-11-261-0/+4
| | | | | | | | | | | | Valid for both deprecated and non-deprecated references Update test
| * Implement H5VLget_file_type() to return a copy of a datatype with theNeil Fortner2019-11-081-13/+15
| | | | | | | | | | | | | | | | | | | | | | location set to be in a file. Only meant to be used by VOL connectors. Implement H5VLpeek_connector_id() to support connectors querying their own IDs. Fix app_ref with connector IDs in a couple places (external VOLs registered as default through ENV should be visible to the application). Modify vlen and reference interfaces to work with arbitrary VOL connectors. Implement file "post open" specific callback, to enable connectors to update their file structs after a wrap context has been set.
| * Add new H5R API that abstracts object, region and attribute reference typesJerome Soumagne2019-10-081-30/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also support references to external files Add new H5T_REF type and type conversion routines Support conversion from H5T_REF_OBJ/DSET_REG to H5T_REF Add H5Treclaim() API to reclaim memory of vlen/reference types Deprecate H5Dvlen_reclaim() Fix H5T_vlen_reclaim() and H5T_reclaim() to use private callback Add H5T_ref_reclaim() Move previous H5R APIs to H5Rdeprec.c Clean up H5Ocopy Separate H5O_copy_expand_ref() to H5Ocopy_ref() Add support for copying new reference types Clean up deprecated routines to go through VOL and same code path Fix return codes in existing trefer.c test Rename trefer.c to trefer_deprec.c trefer.c is for new references Add performance test for trefer Add additional obj_copy_ref test Make use of tokens and blobs to store references Skip blob encoding for object references Start adding new reference examples
| * Add 'blob' callbacks to VOL, along with a native implementation to store themQuincey Koziol2019-10-081-16/+23
| | | | | | | | | | | | | | in the global heap, and changed the VL datatype conversion code to use blobs. Move encode/decode of sequence lengths into VL datatype callbacks, from native VOL blob routines.
| * Updated configure & CMake compiler flags for GCC 8.x, along with correspondingQuincey Koziol2019-06-281-1/+1
| | | | | | | | | | changes to warnhist script (and some extra improvements for condensing C++ and Java warnings), and fixed a bunch of warnings.
| * VOL FEATUREDana Robinson2018-10-101-0/+1
| |
| * Normalization with vol_integration (misc internal and datatype)Dana Robinson2018-09-201-1/+3
| |
| * Fixed HDFFV-10404Binh-Minh Ribler2018-07-131-1/+1
| | | | | | | | | | | | | | | | | | Description: Applied the typo fixes from user's report. The previous pull request couldn't be merged because it was too old, and it was too complicated for me to resolve conflicts. Platform tested: Linux/64 (jelly) - very minor
| * Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into ↵Quincey Koziol2018-03-181-0/+3
| |\ | | | | | | | | | | | | | | | merge_func_enter_vol Plus initial steps toward merging API context push into FUNC_ENTER_API* macros
| | * Fix for daily test failuresVailin Choi2018-02-141-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Move the declarations for the three arrays of versions from H5Opkg.h: (1) H5O_layout_vers_bounds to H5Dpkg.h (2) H5O_dtype_ver_bounds to H5Tpkg.h (3) H5O_sdspace_ver_bounds to H5Spkg.h This is to fix Windows' complaint for unresolved symbols.
| * | Add API context interface and use it throughout the library.Quincey Koziol2018-03-151-351/+195
| |/
* | Changes to make timers within the library monotonic.Quincey Koziol2017-09-031-1/+1
|/
* Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to ↵Larry Knox2017-04-251-6/+4
| | | | | | | | | | 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.
* [svn-r30017] Description:Quincey Koziol2016-06-061-2/+2
| | | | | | | | | Bring warning cleanusp in r29990, 29993, 29997, 29999, 30004 from revise_chunks branch to trunk. Tested on: MacOSX/64 10.11.5 (amazon) w/serial, parallel & production. (h5committest forthcoming)
* [svn-r27768] Description:Quincey Koziol2015-09-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | Complete revamp of package initialization/shutdown mechanism in the library. Each package now has a single init/term routine. This new way should avoid packages being re-initialized during library shutdown and is also be _much_ more proactive about giving feedback for resource leaks internal to the library. Introduces a new "module" header file for packages in the library (e.g src/H5Fmodule.h) which sets up some necessary package configuration macros for the FUNC_ENTER/LEAVE macros. (The VFL drivers have their own slightly modified version of this header, src/H5FDdrvr_module.h) Also cleaned up a bunch of resources leaks all across the library and tests, along with addressing many warnings, as I encountered them. Tested on: MacOSX/64 10.10.5 (amazon) w/serial & parallel Linux/64 3.10.x (kituo) w/serial & parallel Linux/64 2.6.x (ostrich) w/serial
* [svn-r27428] Bug fix: DAILYTEST-170Albert Cheng2015-07-241-0/+33
| | | | | | | | | | | | | | | | | | | Description: XL compilers in ostrich (PowerPC64 linux) fail in test/dt_arith because of the removal of the LLONG_TO_LDOUBLE_CORRECT (removed in r26625) and LDOUBLE_TO_LLONG_ACCURATE (removed in r26623). Solution: Reverse revisions r26623: bring back LDOUBLE_TO_LLONG_ACCURATE configure macro r26625: bring back LLONG_TO_LDOUBLE_CORRECT configure macro r26627: bring back WANT_DATA_ACCURACY configure macro which is used together with the above two macros. This also brings back the enable-dconv-accuracy configure option. Tested: h5committested. Also tested in ostrich using the XL compilers.
* [svn-r26625] Description:Quincey Koziol2015-03-271-15/+0
| | | | | | | | | | | Bring r26543 from autotools_rework branch to trunk: Remove the LLONG_TO_LDOUBLE_CORRECT macro/define, it's working around bugs in very old SGI/FreeBSD/Windows compilers. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (Daily tested on branch for 2+ days)
* [svn-r26623] Description:Quincey Koziol2015-03-271-18/+0
| | | | | | | | | | | Bring r26513 from autotools_rework branch to trunk: Remove the LDOUBLE_TO_LLONG_ACCURATE macro/define, it's working around bugs in older SGI, HP/UX, MacOSX and Windows .NET 2003 compilers. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (Daily tested on branch for 2+ days)
* [svn-r26606] Description:Quincey Koziol2015-03-261-9/+2
| | | | | | | | | | | Bring r26508 from autotools_rework branch to trunk: Remove HW_FP_TO_LLONG_NOT_WORKS macro/define, it was only addressing Windows .NET 2003 compiler issues. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (Daily tested on branch for 2+ days)
* [svn-r26605] Description:Quincey Koziol2015-03-261-13/+0
| | | | | | | | | | | | | | Bring r26503 & r26528 from autotools_rework branch back to the trunk: Remove old platform configure files: craynv, dec-flags, hpux11.23, ia64-linux-gnu, nec-superux14.1, sv1-cray, x86_64-redstorm-linux-gnu Also remove CONVERT_DENORMAL_FLOAT, since this was only set in the configure files being removed. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (Daily tested on branch for 2+ days)
* [svn-r26598] Description:Quincey Koziol2015-03-261-2/+1
| | | | | | | | | | | Bring r26501 from the autotools_rework branch to the trunk: Remove ULLONG_TO_LDOUBLE_PRECISION macro/define, as it's targeting bugs in the FreeBSD and Cygwin compilers. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (Daily tested on branch for 2+ days)
* [svn-r26596] Description:Quincey Koziol2015-03-261-11/+2
| | | | | | | | | | | Bring r26499 from autotools_rework branch to trunk: Remove ULLONG_TO_FP_CAST_WORKS macro/define, as it only applies to older platforms we aren't supporting any longer. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (Daily tested on branch for 2+ days)
* [svn-r26595] Description:Quincey Koziol2015-03-251-8/+0
| | | | | | | | | | | Bring r26494 from autotools_rework branch back to trunk: Remove the LDOUBLE_TO_UINT_ACCURATE macro/define, it was addressing problems with older Intel compilers on Linux that are no longer supported. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (Daily tested on branch for several days)
* [svn-r26591] Description:Quincey Koziol2015-03-251-12/+1
| | | | | | | | | | | | Bring r26492 from autotools_rework branch back to trunk: Remove the FP_TO_ULLONG_ACCURATE and FP_TO_ULLONG_RIGHT_MAXIMUM macros/defines, which were added to address problems with older PGI compilers and HP-UX systems and are no longer supported. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (daily tested on branch for >1 week)
* [svn-r26587] Description:Quincey Koziol2015-03-251-25/+3
| | | | | | | | | | | Bring r26489 from autotools_rework branch to trunk: Remove the ULONG_TO_FP_BOTTOM_BIT_ACCURATE macro/define, as it was added for SGI systems and old Solaris systems, which are no longer supported. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (Daily tested for >1 week)
* [svn-r26584] Description:Quincey Koziol2015-03-251-1/+1
| | | | | | | | | | | Bring r26485 from the autotools_rework branch to the trunk: Remove the ULONG_TO_FLOAT_ACCURATE macro/define, we no longer support the Sandia system where it was necessary. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (daily tested for >1 week)
* [svn-r26560] Description:Quincey Koziol2015-03-241-8/+2
| | | | | | | | | | | Bring r26483 from autotools_rework branch back to trunk: Remove INTEGER_TO_LDOUBLE_ACCURATE macro/define - we no longer support SGI systems. Tested on: Linux/32 2.6.18 (jam) w/serial & parallel (daily tested on branch for >1 week)
* [svn-r26495] Description:Quincey Koziol2015-03-191-13/+6
| | | | | | | | | | Bring r26258 from the autotools_rework branch to the trunk - remove the LDOUBLE_TO_INTEGER_WORKS macro/define, which was addressing issues with SGI systems that are no longer supported. Tested on: Linux 2.6.x (jam) w/serial & parallel Daily tested on branch for >2 weeks
* [svn-r26491] Description:Quincey Koziol2015-03-191-4/+4
| | | | | | | | | | Bring r26257 from autotools_rework branch back to the trunk - removes the LDOUBLE_TO_INTEGER_ACCURATE macro/define, which was addressing problems with SGI systems and is no longer supported. Tested on: Linux 2.6.x/32 (jam) w/serial & parallel Daily tested on branch for >2 weeks.
* [svn-r24998] Description:Quincey Koziol2014-04-091-0/+1
| | | | | | | | Check in Neil's changes for correctly handling case where library is reinitialized through a deprecated routine. Tested on: Linux 2.4.x/32 (jam)
* [svn-r22914] I checked in the conversion function H5T__conv_enum_numeric ↵Raymond Lu2012-10-171-0/+4
| | | | | | (numeric type means integer or floating number) and the C test for it. This is the work for Chicago. Tested on jam, koala, and ostrich.
* [svn-r22582] Description:Quincey Koziol2012-07-161-3/+0
| | | | | | | | | Refactor ID class registration to be more like how other "class"s in the library are registered, and clean up compiler warnings. Tested on: Mac OSX/64 10.7.4 (amazon) w/debug (Too minor to require h5comittest)
* [svn-r22287] Description:Quincey Koziol2012-04-161-204/+202
| | | | | | | | Clean up more FUNC_ENTER/FUNC_LEAVE macros and move H5D & H5T code toward the final design (as exemplified by the H5EA & H5FA code). Tested on: Mac OSX/64 10.7.3 (amazon) w/debug & parallel
* [svn-r21923] Description:Quincey Koziol2012-02-101-1/+1
| | | | | | | | | Add FUNC_ENTER macros for package-private routines and begin process of switching package routines to use them. All H5G routines are currently finished. Tested on: Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
* [svn-r18625] Description:Quincey Koziol2010-04-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | Checkpoint progress on Bz#1398 - strict aliasing issues. (Lots of compiler warnings & code cleanups also) Tested on: FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) 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 debug mode Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode Mac OS X/32 10.6.3 (amazon) in debug mode Mac OS X/32 10.6.3 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r17760] Purpose: Fix problem with H5TB APINeil Fortner2009-10-271-0/+2
| | | | | | | | | | | Description: The H5TB API makes some improper assumptions about the order of compound datatype members. Namely, it assumes that members remain in the order in which they were inserted. Unfortunately, this assumption is inherent in the design of the interface. The library has been patched so that this assumption holds in situations relevant to H5TB. Tested: jam, linew, amani (h5committest)
* [svn-r17392] I added a detection for the correctness of converting from ↵Raymond Lu2009-08-201-2/+10
| | | | | | | | | | unsigned long to float in the configure.in. The Pathscale compiler on Sandia's Linux machine misinterprets the values of unsigned long as negative during the conversion to float, when the first bit of unsigned long is on. Tested on jam. Need to test it on Sandia's machine.
* [svn-r15682] Purpose: fix bug 1298Neil Fortner2008-09-221-2/+2
| | | | | | | | | | | Description: The optimized "subset" compound conversion function would improperly copy the "blank" space at the end of compound types. Modified H5T_conv_struct_init to detect when the subset type has extra space at the end, and calculate the size of the data that should be copied into the conversion buffer for each element. Changes to the functions that implement these conversions. Tested: kagiso, linew, smirom (h5committest)
* [svn-r15609] Description:Quincey Koziol2008-09-101-17/+23
| | | | | | | | Omnibus compiler warning cleanup & some reformatting also. Tested on: Mac OS X/32 10.5.4 (amazon) Too minor to require h5committest
* [svn-r15227] Description:Quincey Koziol2008-06-171-3/+3
| | | | | | | | | | | | | | | | | | Small clean up of datatype copying. 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.5.3 (amazon) in debug mode Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
* [svn-r14208] Description:Quincey Koziol2007-10-181-7/+0
| | | | | | | | | | | | | | | | | | | | Make H5Pget_filter_by_id() API versioned and switch internal usage to H5Pget_filter_by_id2(). Add simple regression test for H5Pget_filter_by_id1(). 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
* [svn-r14004] Description:Quincey Koziol2007-07-241-12/+67
| | | | | | | | | | | | Fix problem with datatype messages where the version of the format for a datatype message could depend on the "use the latest format" flag from the file after it was initially created. Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Mac OS X/32 10.4.10 (amazon)
* [svn-r13917] Description:Quincey Koziol2007-06-261-1/+0
| | | | | | | | | Code & warning cleanups Tested on: Mac OS X/32 10.4.10 (amazon) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13884] The second step of optimization for compound data for the ChicagoRaymond Lu2007-06-191-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | company. The I/O is optimized when the source and destination members are a subset of each other one way or another, and the order is the same, and no conversion is needed. For example: struct source { struct destination { TYPE1 A; --> TYPE1 A; TYPE2 B; --> TYPE2 B; TYPE3 C; --> TYPE3 C; }; TYPE4 D; TYPE5 E; }; or struct destination { struct source { TYPE1 A; --> TYPE1 A; TYPE2 B; --> TYPE2 B; TYPE3 C; --> TYPE3 C; }; TYPE4 D; TYPE5 E; }; The optimization is simply moving data from the source to the appropriate places in the buffer and bypass the reading of the background data and data conversion. Tested on smirom, liberty, sol, and copper.