summaryrefslogtreecommitdiffstats
path: root/src/H5Zscaleoffset.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r27133] - Add a new attribute function characterstic for format:Mohamad Chaarawi2015-06-011-1/+1
| | | | | | | | * H5_ATTR_FORMAT(X,Y,Z) __attribute__((format(X, Y, Z))) - Rename UNUSED attribute characterstic to H5_ATTR_UNUSED. - Rename NORETURN attribute characterstic to H5_ATTR_NORETURN tested with h5committest.
* [svn-r27045] Renamed H5_ASSIGN_OVERFLOW() to H5_CHECKED_ASSIGN() and re-orderedDana Robinson2015-05-101-1/+1
| | | | | | the arguments to be in a more logical order. Tested on: h5committest
* [svn-r26329] Merge of r26069, r26070, and r26072 from the ↵Dana Robinson2015-02-271-3/+0
| | | | | | | | | | | | | | | | | | features/autotools_rework branch. Removed the configure option that allows selective disabling of individual internal filters (fletcher32, shuffle, etc.). This feature mucked up the code with a lot of #ifdefs, saved very little space, and was not scalable to a general scheme for library size reduction. We've decided to remove the feature while we investigate a more general scheme for decreasing the library size. Part of: HDFFV-9086 Tested on: h5committest
* [svn-r25766] Description:Quincey Koziol2014-11-031-1/+1
| | | | | | | | | | Revert r25273, 25283 & 25439 (the hyperslab improvement changes). They are buggy and it's taking me a long time to correct the problem. I'll check in a revised form of the changes when I've got them straightened out. Tested on: Mac OSX 10.10.0 (amazon) w/gcc 4.9.x, C++, FORTRAN Linux 2.6.x (jam) w/parallel
* [svn-r25273] Description:Quincey Koziol2014-06-131-1/+1
| | | | | | | | | | | Bring in Chao/Neil/my changes to optimize hyperslab selection operations further, along with 3 new public API routines: H5Scombine_hyperslab(), H5Sselect_select() and H5Scombine_select(), along with many minor cleanups to the code and fixing a few compiler warnings. Tested on: Mac OSX/64 10.9.3 w/gcc 4.9.x and parallel w/OpenMPI (h5commttest forthcoming)
* [svn-r24101] Description:Quincey Koziol2013-09-051-26/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up warnings, enable new compiler warning flag(s) and bring back changes from Coverity branch: r20813: Remove the dead code as listed for coverity bug #1722. h5committested. r20814: Issue 69: Check return value and throw error if negative return. Also free datatype id on error r20815: Use HDstrncpy. --gh r20816: Replaced one last HDstrcat call with HDstrncat to resolve coverity issue 832. r20817: Use HDstrncpy and HDstrncat. --gh r20818: Purpose: Fix valgrind issues with h5jam Description: Modified h5jam to free strings strdup'd in parse_command_line before exit. Note that they may still not be freed in case of error, due to the widespread use of exit(). r20819: Issue 80: change loop to use int as loop index. r20820: Maintenance: Fixed the bug found by coverity CID 788 There were two problems with this function: 1) it tried to unnecessary free NULL pointer 2) it tried to allocate c_name buffer that is done by H5Pget_class_name Tested on: Mac OSX 10.8.4 (amazon) w/gcc 4.8.1, C++ & FORTRAN (too minor to require h5committest)
* [svn-r23713] Description:Quincey Koziol2013-05-211-2/+2
| | | | | | | | | | Clean up warnings, switch library code to use Standard C/POSIX wrapper macros, remove internal calls to API routines, update checkapi and checkposix scripts. Tested on: Mac OSX/64 10.8.3 (amazon) w/C++ & FORTRAN Big-Endian Linux/64 (ostrich)
* [svn-r22681] Description:Quincey Koziol2012-08-151-3/+3
| | | | | | | | Clean up file driver property handling, along with some misc. warnings. Tested on: Mac OSX/64 10.7.4 (amazon) w/debug, gcc 4.7.1, C++, FORTRAN & threadsafe (h5committest upcoming)
* [svn-r21919] Description:Quincey Koziol2012-02-091-7/+7
| | | | | | | | Refactor function name macros and simplify the FUNC_ENTER macros, to clear away the cruft and prepare for further cleanups. Tested on: Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
* [svn-r20029] Purpose: Fix bug 2131Neil Fortner2011-02-021-114/+193
| | | | | | | | | | Description: When using the scale-offset filter with floating point data or fill values, big endian machines would save some metadata in the wrong byte order. This caused such datasets to yield incorrect data when read on little endian machines. Fixed the scale-offset filter to always save this metadata in the right byte order (i.e. little endian). Tested: jam, amani, heiwa (h5committedt); fedora, linew
* [svn-r19272] Description:Quincey Koziol2010-08-201-0/+13
| | | | | | | | | | | | Close out various resource leaks and usages of uninitialized memory that were flagged by valgrind. [There's still some more valgrind warnings, but it's better now... :-/ ] Also clean up warnings and code formatting. Tested on: Mac OS X/32 10.6.4 (amazon) w/debug & valgrind (h5committest forthcoming)
* [svn-r19174] Bug fix for #1239 - The filter's public function CAN_APPLY ↵Raymond Lu2010-08-051-5/+5
| | | | | | | | | | | | should return htri_t not herr_t. To minimize the change of the library's behavior, in the function H5Z_prelude_callback of H5Z.c, if the return value of can_apply is FALSE and the filter is MANDATE, this function returns a FAILURE. If the return value is FALSE but the filter is OPTIONAL, this function returns a SUCCEED. During the IO, the filter will fail and return a size of zero. But the pipeline will skip this filter. Tested on jam, lnew, and amani. Tested on jam with szip.
* [svn-r18630] Description:Quincey Koziol2010-04-271-335/+418
| | | | | | | | | | | | | | | | | | | | | | Fix remaining aliasing problems and enable optimizations w/gcc now. This addresses the remaining issues for Bug#1398. 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-r18357] Description:Quincey Koziol2010-03-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Bring r18356 from metadata journaling merge branch to trunk: Converge metadata journaling branch with trunk with a bunch of v1 B-tree changes: - Remove H5ACprivate.h header from H5Bprivate.h header - Revise v1 B-tree client callbacks - Get rid of H5B_serialize() by bringing it into H5B_flush() 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
* [svn-r17268] Description:Quincey Koziol2009-07-301-3/+3
| | | | | | | | | | | Bring r17266 from 1.8 branch to trunk: Clean up various compiler warnings from IRIX64 build Tested on: Mac OS X/32 (amazon) debug & production (yes, I know it's not an IRIX64 system :-) Too minor to require h5committest
* [svn-r16807] Purpose: Fix bug 1533Neil Fortner2009-04-201-1/+1
| | | | | | | | | | | Description: Previously, there was no versioning for H5Z_class_t. This prevented applications written for 1.6 using custom filters from being able to use the 1.8 library. There is now an H5Z_class1_t and H5Z_class2_t to enable compatibility. H5Zregister is *not* versioned, it determines which version of the struct has been passed in by the value of the first field (id or version, both are ints). Tested: jam, linew, smirom (h5committest), jam (--with-default-api-version=v16)
* [svn-r16489] Fixed bug #1459 by eliminating the macro long_long and ↵Allen Byrne2009-02-181-63/+63
| | | | | | | | | | | replacing all instances with long long. Tested: h5comittest fedora 10 x64 Vista 32, VS2005, IVF101 XP32, Cygwin
* [svn-r16209] Purpose:Choonghwan Lee2008-12-191-2/+2
| | | | | | | | | | | | | | Bug fix (#1357) Description: Three filters have not assigned correct value to one value-result argument, "buf_size". N-bit, szip, and scale offset filter have had this problem. However, I don't think this problem has been making buffer overrun because those filters were informing the caller that the "buf", another value-result argument, is smaller than it actually is. If there was actual buffer overrun, I believe another problem exists although I don't know. Tested: jam, smirom, linew Although all test were passed, I'm concerned about valgrind memcheck error. There can be another miscommunication between filter and the caller.
* [svn-r14379] add check of some values for the nbit and scale offest filters ↵Pedro Vicente Nunes2008-01-071-1/+0
| | | | | | | | on the h5repack verify function note: some sybols were made public tested: windows, linux
* [svn-r14208] Description:Quincey Koziol2007-10-181-114/+112
| | | | | | | | | | | | | | | | | | | | 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-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | 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.
* [svn-r13117] Description:Quincey Koziol2007-01-071-4/+4
| | | | | | | Clean up some warnings from Windows. Tested on: FreeBSD/32 6.1 (duty)
* [svn-r12821] Description:Quincey Koziol2006-10-281-5/+5
| | | | | | | | | Clean up compiler warnings, esp. on 64-bit Linux boxes. Tested on: FreeBSD/32 4.11 (sleipnir) w/threadsafe Linux/32 2.4 (heping) w/C++ & FORTRAN Linux/64 2.4 (mir) w/build-all & 1.6 compat
* [svn-r12803] Description:Quincey Koziol2006-10-231-16/+17
| | | | | | | | | | | | | | Finish new version of the I/O pipeline message, which is much smaller than the previous version. This version is used with the "use the latest version of the format" flag. Closed several memory leaks/overruns (found with valgrind). Also, lots of compiler & formatting cleanups. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12128] Purpose:Quincey Koziol2006-03-221-2/+2
| | | | | | | | | | | Code cleanup Description: Clean up some compiler warnings (esp. those flagged on Windows builds) Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r11771] Purpose:Quincey Koziol2005-12-081-5/+5
| | | | | | | | | | | | Code cleanup Description: Fix a bunch of warnings flagged by Windows compilers. Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r11337] Purpose:Quincey Koziol2005-09-011-226/+225
| | | | | | | | | | | | Code cleanup Description: Changed some scale+offset filter symbols from H5_SO_... -> H5Z_SO_... to indicate that they are in the H5Z package. Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r11325] Purpose:MuQun Yang2005-08-311-228/+234
| | | | | | | | | | | | | | | | Update scaleoffset filter. Description: 1. Using enum type to describe scale offset type(int, Dscale or Escale) 2. Changing some macro names 3. Fixing some minor bugs Solution: Platforms tested: sol 2.8, linux 2.4, aix 5.1(32-bit and 64-bit) Misc. update:
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-213/+213
| | | | | | | | | | | | | | | | | | | | 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
* [svn-r10742] Purpose:MuQun Yang2005-05-101-1/+6
| | | | | | | | | | | | | | | | A little enhancement for integer datatype filter Description: Minimum-bit of the scaleoffset filter should not be less than 0, However, if the user accidently input a negative value for integer type, we will reset it to zero. Solution: Platforms tested: too minor to test. Misc. update:
* [svn-r10741] Purpose:MuQun Yang2005-05-091-2/+5
| | | | | | | | | | | | | | | Minor change for rounding of floating-point value for scaleoffset filter. Description: Always round to the bigger absolute integer value if floating-point data is in the middle. 0.5->1, -0.5->-1. Solution: Platforms tested: Too minor to test Misc. update:
* [svn-r10736] Purpose:Quincey Koziol2005-05-071-9/+10
| | | | | | | | | | | Code cleanup Description: Clean up some compiler warnings Platforms tested: FreeBSD 4.11 (sleipnir) h5committest
* [svn-r10733] Purpose:MuQun Yang2005-05-061-2/+2
| | | | | | | | | | | | | | Update H5Zscaleoffset.c so that it supports negative precision number. Description: Solution: Platforms tested: Linux 2.4 Misc. update: too minor to check in other platforms
* [svn-r10718] Purpose:Quincey Koziol2005-05-031-64/+66
| | | | | | | | | | | Code cleanup Description: Clean up some compiler warnings. Platforms tested: FreeBSD 4.11 (sleipnir) w/gcc 4.0 Too minor to require h5committest
* [svn-r10702] Purpose:Xiaowen Wu2005-04-291-3/+3
| | | | | | | | | | | | | | | Bug fix. Description: The previous bug fix of H5Zscaleoffset filter was not secure enough. Solution: Slight modification based on previous version. Platforms tested: heping Misc. update:
* [svn-r10698] Purpose:Xiaowen Wu2005-04-291-3/+3
| | | | | | | | | | | | | | | | | | Bug fix. Description: The scaleoffset filter checks the uppper limmit of span of values before it is assigned. The check for floating-point data, which may not be represented in the machine exactly as the user wanted, did not consider this. Solution: Slight modification of check above. Platforms tested: heping Misc. update:
* [svn-r10687] Purpose:Xiaowen Wu2005-04-281-50/+38
| | | | | | | | | | | | | | | Modifications. Description: Scaleoffset filter codes could not pass windows compiler. Solution: Modifications were made to make it pass. Also slight improvements of codes. Platforms tested: heping Misc. update:
* [svn-r10681] Purpose:Xiaowen Wu2005-04-271-15/+16
| | | | | | | | | | | | | | | | | Slight modification. Description: Several constants were added for the scaleoffset filter in file H5Zpublic.h and corresponding changes needs to be made in H5Zscaleoffset.c. Solution: Slight modification of codes. Platforms tested: heping, shanti Misc. update:
* [svn-r10675] Purpose:Xiaowen Wu2005-04-261-159/+508
| | | | | | | | | | | | | | | | | New feature. Description: The scaleoffset filter has been implemented for compressing floating-point data (float, double, but not long double) using D-scaling method from GRIB. It also changes to according to the new interface of H5Pset_scaleoffset API. Solution: Platforms tested: heping, copper, shanti Misc. update:
* [svn-r10613] Purpose:Xiaowen Wu2005-04-151-3/+3
| | | | | | | | | | | | | | | Bug fix. Description: Several call to macro HGOTO_ERROR passes wrong value to ret_value. Solution: Change the value from zero to FAIL. Platforms tested: heping Misc. update:
* [svn-r10596] Purpose:Xiaowen Wu2005-04-121-928/+337
| | | | | | | | | | | | | | | | New feature. Description: The scaleoffset filter previously does not use macros to handle different integer datatype situations. Solution: Added macros in the filter for better maintenance and clarity of codes. Platforms tested: heping, copper, shanti Misc. update:
* [svn-r10384] Purpose:Xiaowen Wu2005-03-231-322/+1297
| | | | | | | | | | | | | | | | | | New feature & bug fix. Description: The scaleoffset filter was not completed at last check-in and had quite a few bugs. Solution: The scaleoffset filter is now complete for compressing integers. All previous bugs have been fixed. The filter does not compress floating-point at present. The filter only supports integer and floating-point datatypes. Platforms tested: heping, copper, shanti Misc. update:
* [svn-r10028] Purpose:Xiaowen Wu2005-02-171-0/+813
New feature. Description: Source code for the scaleoffset internal filter. For debugging purpose. Solution: Platforms tested: heping, copper, arabica Misc. update: