summaryrefslogtreecommitdiffstats
path: root/src/H5private.h
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r10730] Purpose:James Laird2005-05-051-6/+6
| | | | | | | | | | | | | | | | Portability feature Description: The random() and srandom() functions are not available on all machines. Set up the configure script to automatically detect them, rather than requiring their presence or absence to be hardcoded. Solution: Added AC_CHECK_FUNCS macro to configure.in and replaced #ifdef WIN32 conditionals with #ifdef H5_HAVE_RANDOM conditionals. Platforms tested: sleipnir, Windows
* [svn-r10716] Purpose:Quincey Koziol2005-05-021-4/+57
| | | | | | | | | | | | Code cleanup Description: Migrate MPE macros to H5private.h, in preparation for using the H5MPprivate.h file for "memory pool" API. Platforms tested: FreeBSD 4.11 (sleipnir) w/parallel Too minor to require h5committest
* [svn-r10701] James Laird2005-04-291-18/+0
| | | | | | | | | | | | | | | | | Purpose: Bug fix Description: Some platforms (Windows) don't have the long long type, which causes automatic Fortran type matching to fail. A solution is to use HDF5's long_long type. Solution: Changed H5match_types.c to use long_long type. Moved definition of long_long out of H5private.h and into H5public.h. Platforms tested: mir, copper, pommier
* [svn-r9861] Purpose:Quincey Koziol2005-01-241-0/+1
| | | | | | | | | | | | | | | | | | | | Bug fix Description: Add detect vasprintf() routine and use it instead of vsnprintf() when formatting error descriptions if it's available. Added configure test to detect "broken" vsnprintf() implementations which don't return the correct number of character for strings that are too long to fit into the buffer provided (currently a problem on the SGIs and probably the HP). Re-wrote error formatting code in H5Epush_stack() to handle broken vsnprintf() implementations, etc. Platforms tested: IRIX64 6.5 (modi4) h5committest
* [svn-r9858] Purpose:Quincey Koziol2005-01-221-3/+1
| | | | | | | | | | Code cleanup Description: Clean up a few rements from the Pablo removal Platforms tested: None, very minor
* [svn-r9857] Purpose: MaintenanceElena Pourmal2005-01-221-30/+1
| | | | | | | | | | | | | | Description: Removed PABLO from the source Solution: Platforms tested: arabica with 64-bit, copper with parallel, heping with GNU C and C++ and PGI fortran (but I disabled hl, there is some weird problem only on heping: F9XMODFLAG is not propagated to the Makefile files Misc. update:
* [svn-r9805] Purpose:Quincey Koziol2005-01-111-4/+0
| | | | | | | | | | Code cleanup Description: Remove obsolete support for Watcom C compiler. Platforms tested: None - too minor to require any.
* [svn-r9727] Purpose:Quincey Koziol2004-12-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-) Description: Generally speaking, this is the "signed->unsigned" change to selections. However, in the process of merging code back, things got stickier and stickier until I ended up doing a big "sync the two branches up" operation. So... I brought back all the "infrastructure" fixes from the development branch to the release branch (which I think were actually making some improvement in performance) as well as fixed several bugs which had been fixed in one branch, but not the other. I've also tagged the repository before making this checkin with the label "before_signed_unsigned_changes". Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel & fphdf5 FreeBSD 4.10 (sleipnir) w/threadsafe FreeBSD 4.10 (sleipnir) w/backward compatibility Solaris 2.7 (arabica) w/"purify options" Solaris 2.8 (sol) w/FORTRAN & C++ AIX 5.x (copper) w/parallel & FORTRAN IRIX64 6.5 (modi4) w/FORTRAN Linux 2.4 (heping) w/FORTRAN & C++ Misc. update:
* [svn-r9654] Purpose:Raymond Lu2004-12-101-1/+4
| | | | | | | | | | | | | Description: In file H5FDsec2.c and H5FDlog.c, there's statements like H5_ASSIGN_OVERFLOW(file->eof,sb.st_size,off_t,haddr_t); It assumes sb.st_size from h5_stat_t is of type off_t. But on Windows, it has type __int64. So the H5_ASSIGN_OVERFLOW statement may cause problem. Instead of trying to do switch between Windows and other systems in H5FDsec2.c and H5FDlog.c, define a substituting type in H5private.h to fix the problem. On Windows, this type is __int64; on other systems, it is off_t. Platforms tested: fuss. Simple fix. Already did h5committest for v1.6.
* [svn-r9474] Purpose:MuQun Yang2004-10-271-0/+4
| | | | | | | | | | | | | | | | | Updating H5api_adpt.h to help the implementation of Fortran DLL on windows. Description: 1. More functions need to be added prefix macro for exporting and importing fortran DLL on Windows. 2. unlink was _unlink on windows and use HDunlink to specify this. Solution: Platforms tested: linux 2.4(h5committest not finished yet, but should work since the change is minor and it is passed with pgi compiler) Misc. update:
* [svn-r9183] Purpose: New featureRaymond Lu2004-09-011-1/+1
| | | | | | | | | | | | 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
* [svn-r9154] Elena Pourmal2004-08-251-0/+2
| | | | | | | | | | | | Purpose: Maintenance/bug fixes (OSF1 C++ and missing Fortran APIs) Description: bringing 1.6 changes to 1.7 Solution: Platforms tested: OSF1, Solaris 2.8, AIX5.1 Misc. update:
* [svn-r9037] Purpose:Quincey Koziol2004-08-061-1/+1
| | | | | | | | | | | | Code cleanup/bug fix Description: Check for _O_BINARY being defined instead of O_BINARY, since we actually use _O_BINARY. (Note that this only affects Windows) Platforms tested: FreeBSD 4.10 (sleipnir) Not tested w/h5committest
* [svn-r8731] Purpose:Quincey Koziol2004-06-231-71/+43
| | | | | | | | | | | | | | | Code cleanup & minor optimization Description: Re-work the way interface initialization routines are specified in the library to avoid the overhead of checking for them in routines where there is no interface initialization routine. This cleans up warnings with gcc 3.4, reduces the library binary size a bit (about 2-3%) and should speedup the library's execution slightly. Platforms tested: FreeBSD 4.10 (sleipnir) w/gcc34 h5committest
* [svn-r8370] Purpose:Albert Cheng2004-04-171-0/+3
| | | | | | | | | | | | | | Bug fix. Description: Not all machines (like Sun and AIX) support fabsl() and fabsf() used in test/dtypes.c. Changed the coding to use macro names HDfabsl and HDfabsf. Also set the two macros to use ABS for now so that they will work for all machines. (need more portable fixes which would involve configure.) Platforms tested: h5committested. (also tested in LANL QSC and Theta).
* [svn-r8287] Purpose:Quincey Koziol2004-03-301-0/+12
| | | | | | | | | | | | | | Bug fix/code cleanup Description: Copy Robb's feature in SSlib that checks that the name of the function used in the FUNC_ENTER macro is actually the name of function. Fixed a bunch of typos & copy-n-pasto's for functions with incorrect names. Platforms tested: FreeBSD 4.9 (sleipnir) w/parallel too minor to require h5committest
* [svn-r8038] Purpose:Quincey Koziol2004-01-081-1/+6
| | | | | | | | | | | | | | | | | | | | Bug fix Description: When two property lists are compared, the H5Pequal routine was just comparing the raw information for the property values. This causes problems when the raw information contains pointers to other information. Solution: Allow a 'compare' callback to be registered for properties, so that a user application get perform the comparison itself, allowing for "deep" compares of the property value. This was exported to the H5Pregister & H5Pinsert routines in the development branch, but not the release branch. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
* [svn-r8009] Purpose:Quincey Koziol2003-12-311-0/+11
| | | | | | | | | | | | | | | | | Bug fix Description: Add special-case handling to floating-point conversion tests to avoid problems with denormalized values on Cray T3E & T90 platforms. (Still not working on Cray SV1, but at least it's closer). Solution: Detect denormalized values and don't try to operate on them on the Crays. Platforms tested: FreeBSD 4.9 (sleipnir) Cray T3E (hubble.cray.com) Cray T90 (gypsy.cray.com)
* [svn-r7917] Purpose:Quincey Koziol2003-12-061-36/+50
| | | | | | | | | | | | | | | | | | | Code cleanup Description: Clean up compiler warnings, especially the 'FUNC' variable not used which comes out in production mode. Solution: Had to add a new FUNC_ENTER_NOAPI_NOINIT_NOFUNC macro for those non-API functions which don't need the 'FUNC' variable defined. (This will be _so_ much easier when C99 is standard on all our supposed platforms, since it has a __FUNC__ macro... ) Platforms tested: FreeBSD 4.9 (sleipnir) too minor for h5committest (although there were lots of files changed, the change was minor in each one)
* [svn-r7872] Purpose:Quincey Koziol2003-11-211-0/+1
| | | | | | | | | | | New macro Description: Introduce LLONG_MIN macro to match LLONG_MAX macro Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7827] Purpose:Quincey Koziol2003-11-081-6/+6
| | | | | | | | | | | | Bug fix Description: Make --disable-hsizet work properly again by fixing a couple of tests and correcting the definition of SSIZET_MAX. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest not used, as it doesn't test this configuration.
* [svn-r7669] Purpose:Quincey Koziol2003-10-201-1/+2
| | | | | | | | | | | | | | | Refactor code Description: Use "template macro" technique to eliminate a huge amount of repeated code in type initialization code (almost 1000 lines, between this change and the changes to the H5Tconv.c file earlier). This centralizes the common parts of the code and makes the different parts of the code more obvious. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7662] Purpose:Quincey Koziol2003-10-181-0/+3
| | | | | | | | | | | | | | | | | Refactor integer conversion macros Description: Turned integer conversion macros "inside" out, using an interlocking macro technique similar to templates in C++. The macro which actually performs the conversion is now invoked "genericly" from inside another macro, which will allow the inner conversion loop to be optimized in a much easier way. This "psuedo-template" technique could be useful for other semi-repetitious patterns in the library - possibly the datatype initialization code... Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
* [svn-r7411] Purpose:Quincey Koziol2003-08-261-0/+4
| | | | | | | | | | | Code cleanup Description: De-linted more modules Platforms tested: FreeBSD 4.8 (sleipnir) w/ & w/o stream enabled too minor to require h5committest
* [svn-r7297] Purpose:Quincey Koziol2003-08-081-1/+1
| | | | | | | | | | | | | | | | Code cleanup Description: Changed lines like: H5E_clear(H5E_get_my_stack()); to: H5E_clear(NULL); which performs the same operation. Platforms tested: h5committested
* [svn-r7265] *** empty log message ***Raymond Lu2003-07-261-1/+1
|
* [svn-r7256] Purpose: gradual checkin for error apiRaymond Lu2003-07-231-0/+1
| | | | Platforms tested: RH 8(simple checkin)
* [svn-r7232] Purpose:Quincey Koziol2003-07-161-1/+11
| | | | | | | | | | | | | | | | | | | | Bug fix Description: When a non-default indexed storage B-tree internal 'K' value is set by the user, the chunked datasets created in that file (until it is closed) use the user's 'K' value and the data can be accessed correctly, but the 'K' value is not stored in the file. However, once the file is closed and re-opened, the non-default 'K' value is lost and the data in the chunked datasets will not be able to be accessed correctly. Solution: Store the indexed storage B-tree internal 'K' value in the superblock. Platforms tested: FreeBSD 4.8 (sleipnir) h5committest
* [svn-r7203] Purpose:Quincey Koziol2003-07-101-6/+6
| | | | | | | | | | | | Code cleanup Description: Change names of macro parameters to H5_ASSIGN_OVERFLOW to make them easier to understand. Platforms tested: FreeBSD 4.8 (sleipnir) h5committest
* [svn-r7186] Purpose:Quincey Koziol2003-07-091-1/+1
| | | | | | | | | | | Code cleanup Description: More tweaks to clean up warnings from lint. Platforms tested: FreeBSD 4.8 (sleipnir) not major enough to h5committest
* [svn-r7184] Purpose:Quincey Koziol2003-07-081-3/+3
| | | | | | | | | | | Code cleanup Description: Clean up various warnings from lint Platforms tested: FreeBSD 4.8 (sleipnir) no major changes requiring h5committest
* [svn-r7027] Purpose:Quincey Koziol2003-06-121-4/+4
| | | | | | | | | | | | Bug fix Description: MPE instrumentation was out of date and wasn't reporting the correct name of the API functions in the library. Platforms tested: IBM p690 (copper) h5committest not performed because it doesn't test MPE.
* [svn-r6970] Purpose:Quincey Koziol2003-06-051-8/+1
| | | | | | | | | | | | Twist code Description: Try to find a happy definition of HSSIZET_MAX, HSSIZET_MIN and HSIZET_MAX for all platforms. Platforms tested: FreeBSD 4.8 (sleipnir) h5committested
* [svn-r6963] Purpose:Quincey Koziol2003-06-041-2/+9
| | | | | | | | | | Code cleanup Description: Fix HSIZET_MAX, HSSIZET_MAX and HSSIZET_MIN to work with Windows (hopefully) Platforms tested: h5committested
* [svn-r6955] Purpose:Quincey Koziol2003-06-041-2/+8
| | | | | | | | | | | | Code cleanup Description: Tweak HSIZET_MAX macro and add HSSIZE_MAX and HSSIZET_MIN macros. Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ FreeBSD 4.8 (sleipnir) w/parallel h5committested
* [svn-r6430] Purpose:Quincey Koziol2003-02-241-5/+16
| | | | | | | Code cleanup (sorta) Description: Updated to new copyright information as I browsed these files.
* [svn-r6383] Purpose:Quincey Koziol2003-02-071-5/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New feature for developers. Description: Added "function stack" tracing to library. This allows developers (there is no public API) to call H5FS_print within the library and get a listing of the functions traversed to reach that point in the library. Eventually, I may add support for reporting the parameters to each function also... Mainly for debugging parallel I/O programs, but I think it will come in handy in other cases also. The function stack tracking is controlled with a configure switch: --enable-funcstack, which defaults to enabled currently. When we branch for 1.6, we should change the default setting on the branch to be disabled. Also, added a destructor to the thread-specific keys when thread-safety is turned on in the library. Otherwise, they were leaking memory and causing difficult to debug errors in threaded programs (like the test/ttsafe test). Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)} FreeBSD 4.7 (sleipnir) w/thread-safety enabled. Misc. update: Updated MANIFEST with new files added (src/H5FS.c & src/H5FDprivate.h) Update release_docs/RELEASE with thread-safety bug fix.
* [svn-r6283] MuQun Yang2003-01-141-1/+9
| | | | | | | | | | | | | | | | | Purpose: Change some macros to make windows happy Description: Currently no srandom and random functions on windows, Function gethostname cannot be resolved when DLL turned on Solution: use srand and rand to replace srandom and random turn off the option to check gethostname Platforms tested: windows 2000, linux 2.2.18smp Misc. update: Update MANIFEST if you add or remove any file. Update release_docs/RELEASE for bug fixes, new features, etc. Update applicable document files too.
* [svn-r6272] Purpose:Quincey Koziol2003-01-131-4/+4
| | | | | | | | | | Code cleanup Description: Fix preprocessor macros to declare variables correctly. Platforms tested: MS Visual Studio
* [svn-r6269] Purpose:Quincey Koziol2003-01-131-0/+5
| | | | | | | | | | | | | Code cleanup Description: Various code cleanups to allow the development branch to be compiled with a C++ compiler (i.e. CC=g++ ) Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)} FreeBSD 4.7 (sleipnir) C++
* [svn-r6268] Purpose:Quincey Koziol2003-01-111-4/+4
| | | | | | | | | | | Code improvement Description: Add extra pair of braces to API versions of FUNC_ENTER/FUNC_LEAVE macros, to make API <-> non-API mismatches obvious. Platforms tested: FreeBSD 4.7 (sleipnir)
* [svn-r6266] Purpose:Quincey Koziol2003-01-101-10/+37
| | | | | | | | | | | | Code cleanup/new feature. Description: Split FUNC_LEAVE into API and non-API specific versions. This allows a solution to compiling this branch with C++, as well as reducing the size of the binaries produced. Platforms tested: FreeBSD 4.7 (sleipnir) w/serial, parallel (including MPE) & thread-safe
* [svn-r6255] Purpose:Quincey Koziol2003-01-091-0/+6
| | | | | | | | | | Code cleanup Description: Clean up a few more warnings and update dependencies. Platforms tested: Linux 2.2.18smp (eirene) serial & parallel
* [svn-r6232] Purpose:Albert Cheng2003-01-031-4/+22
| | | | | | | | | | | | | | | | new feature Description: Added MPICH/MPE instrumentation support. All source code are bracketed by the macro H5_HAVE_MPE. Use "--enable-mpe" to configure it in. Currently only worked in Eirene because the MPE library is not installed in all machines yet. The added file, H5MPprivate.h, holds HDF5/MPE related defintions. Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)}? Yep. Other platforms/configurations tested? --enable-mpe feature tested in Eirene.
* [svn-r6202] MuQun Yang2002-12-131-0/+8
| | | | | | | | | | | | | | | | Purpose: Fix bugs for windows platform. Description: 1. Update HDlseek for windows 2. Update H5Otime.c for normal time(non-daylight time) 3. Add H5_DLL in front of two functions so that windows DLL can work. Solution: Platforms tested: windows 2000, eirene(since most updates have WIN32 around it, not need to test other platforms) Misc. update: Update MANIFEST if you add or remove any file. Update release_docs/RELEASE for bug fixes, new features, etc. Update applicable document files too.
* [svn-r6140] Purpose:Pedro Vicente Nunes2002-11-261-4/+17
| | | | | | | | | | | | code warrior fix CW does not recognize the _stati64 type, changed HDstat macro accordingly Platforms tested: windows 2000 (MSVC, Code warrior) linux
* [svn-r5931] MuQun Yang2002-09-201-23/+23
| | | | | | | | | | | | 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
* [svn-r5867] Purpose:Quincey Koziol2002-08-091-3/+3
| | | | | | | | | | | | | Code cleanup Description: Changed the last HRETURN* statements in the FUNC_ENTER macros into HGOTO* macros, which reduces the size of the library binary in certain configurations by another 10% Platforms tested: FreeBSD 4.6 (sleipnir) serial & parallel, IRIX64 6.5 (modi4) serial & parallel
* [svn-r5864] ./hdf5-devel/src/H5private.hRobb Matzke2002-08-091-37/+33
| | | | | | | | | | | | | | | | | Purpose: Merged from 1.4 branch Description: API tracing improvements Platforms tested: Linux (--disable-hsizet didn't work before my changes and still doesn't work, but --enable-hsizet is fine). Note: This checkin includes temporary code in H5FDmpiposix.c to turn off GPFS byte range token prefetches on ASCI/Blue. Once the HDF5 API supports the necessary prerequisite functionality this temporary code can be migraged up above HDF5.
* [svn-r5814] Purpose:Quincey Koziol2002-07-191-0/+1
| | | | | | | | | | | | | | | | | | Bug Fix Description: It was possible to create corrupted metadata information (either in memory or in the file or both) with a parallel I/O program because of the way metadata writes were being handled for writes out of the metadata cache. Solution: Added a dataset transfer property called "block before metadata write" which is used by the MPI-I/O and MPI-posix drivers to sync up all the processes before attempting a metadata write. This property is currently only for metadata writes from the metadata cache. Platforms tested: IRIX64 6.5 (modi4) w/parallel