summaryrefslogtreecommitdiffstats
path: root/src/H5Sprivate.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2000-04-04 21:00:31 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2000-04-04 21:00:31 (GMT)
commit02e4ee5edf5d1c8fe285497def5cd7b7afbf77e4 (patch)
tree4b36327c0da85d62ea116da32d0f114700d0f6c9 /src/H5Sprivate.h
parent7170bbbc96f2b29f42be53f8271fc359f617e09c (diff)
downloadhdf5-02e4ee5edf5d1c8fe285497def5cd7b7afbf77e4.zip
hdf5-02e4ee5edf5d1c8fe285497def5cd7b7afbf77e4.tar.gz
hdf5-02e4ee5edf5d1c8fe285497def5cd7b7afbf77e4.tar.bz2
[svn-r2073] Added free-list code to the library and took out the older "temporary buffer"
code, since the functionality was superceded. See the followup document for details on the free-list code.
Diffstat (limited to 'src/H5Sprivate.h')
-rw-r--r--src/H5Sprivate.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/H5Sprivate.h b/src/H5Sprivate.h
index ac822be..bc0fff0 100644
--- a/src/H5Sprivate.h
+++ b/src/H5Sprivate.h
@@ -39,6 +39,9 @@ typedef struct H5S_simple_t {
intn rank; /* Number of dimensions */
hsize_t *size; /* Current size of the dimensions */
hsize_t *max; /* Maximum size of the dimensions */
+#ifdef LATER
+ hsize_t *perm; /* Dimension permutation array */
+#endif /* LATER */
} H5S_simple_t;
/* Extent container */
@@ -82,8 +85,7 @@ typedef struct H5S_hyper_node_tag {
size_t size; /* Size of cached block (in elements) */
uintn rleft; /* Read elements left to access in block */
uintn wleft; /* Write elements left to access in block */
- hid_t block_id; /* Temporary buffer ID */
- uint8_t *block; /* Pointer into temporary buffer for cache */
+ uint8_t *block; /* Pointer into buffer for cache */
uint8_t *rpos; /* Pointer to current read location within block */
uint8_t *wpos; /* Pointer to current write location within block */
} cinfo;
@@ -324,10 +326,6 @@ __DLL__ herr_t H5S_extent_release(H5S_t *space);
__DLL__ herr_t H5S_select_release(H5S_t *space);
__DLL__ herr_t H5S_sel_iter_release(const H5S_t *space,
H5S_sel_iter_t *sel_iter);
-__DLL__ herr_t H5S_select_elements(H5S_t *space, H5S_seloper_t op,
- size_t num_elem, const hssize_t **coord);
-__DLL__ herr_t H5S_select_all(H5S_t *space);
-__DLL__ herr_t H5S_select_none(H5S_t *space);
__DLL__ hssize_t H5S_get_select_npoints(const H5S_t *space);
__DLL__ intn H5S_extend(H5S_t *space, const hsize_t *size);
__DLL__ herr_t H5S_set_extent_simple(H5S_t *space, int rank,
conversion test. This checkin is only for conversion from floating-point to integer. Solution: The source buffer is filled in with normalized and denormalized floating-point values. For the normalized values, it starts from FLT(DBL, or LDBL)_MIN, multiplied by 10(10000 for double, 100000000 for long double) for the next value, until reaches to FLT_MAX. For denormalized values, the exponent part is always 0. Mantissa part starts with 000...001, 000...011, 000...111, until reaches to 111...111. The same is with negative values. Platforms tested: h5committest and fuss. * [svn-r10179] Purpose:James Laird2005-03-104-266/+146 | | | | | | | | | | | | | | | Automake update cleanup and minor changes Description: Removed macros in acsite.m4 that are no longer used. Switched to using autoconf's AC_LANG_PUSH(Fortran) instead of old AC_LANG_FORTRAN9X macro. Switched to using AC_LANG_PUSH() and AC_LANG_POP() (from old AC_LANG_X). Added ifort to list of Fortran compilers configure will look for. Added a note about automake change to Release Notes. Platforms tested: copper, modi4 (parallel and serial), eirene * [svn-r10178] Purpose:Quincey Koziol2005-03-101-6/+6 | | | | | | | | | | Correct formatting Description: Move some typedefs out of the macro section into the typedef section Platforms tested: None, too minor to require any. * [svn-r10177] Purpose:Quincey Koziol2005-03-101-3/+2 | | | | | | | | | | Update comments Description: Correct comment about how H5B2_create() works. Platforms tested: None, just minor comment change. * [svn-r10176] Purpose:Quincey Koziol2005-03-103-6/+383 | | | | | | | | | | | New feature Description: Add routine to delete entire B-tree from a file. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10175] Purpose:Quincey Koziol2005-03-101-5/+5 | | | | | | | | | | | Code cleanup Description: Clean up a few warnings flagged by the Intel C compiler. Platforms tested: FreeBSD 4.11 (sleipnir) w/Intel C Too minor to require h5committest * [svn-r10174] Purpose:James Laird2005-03-092-61/+61 | | | | | | | | | | | | | | | | | | | Bug fix Description: acsite.m4 contains macros to handle fortran compiler. Some of these macros are obsolete with automake 1.9.5, but some of them are still used. These macros need to refer to the fortran compiler as $FC, not $F9X. Solution: The version of acsite.m4 with this change didn't get checked in last time. Oops. Replaced all occurances of $F9X with $FC and $FFLAGS with $FCFLAGS in acsite.m4. Platforms tested: copper, modi4 (serial and parallel), kelgia, eirene. Some errors from btree code and ph5diff. No errors in fortran/test. * [svn-r10173] Purpose:Quincey Koziol2005-03-091-16/+0 | | | | | | | | | | | Code cleanup Description: Remove some extraneous ifdef's Platforms tested: FreeBSD 4.11 (sleipnir) Too minor for other testing * [svn-r10172] Purpose:Quincey Koziol2005-03-093-16/+484 | | | | | | | | | | | | | | Bug fix & New feature Description: Correct some situations where a write lock on the data in the metadata cache was requested, but only a read lock is necessary. Add routine to find nearest neighbor record < or > to a query key. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10171] Purpose:James Laird2005-03-092-31/+41 | | | | | | | | | | | | | | | | | | | Bug fix Description: The fortran compiler is named FC. If F9X environment variable is set, FC should hold the value in F9X. However, this was overwriting values written to FC by platform-specific config scripts. This caused copper to find the wrong fortran when building in parallel, and may have had other symptoms on other platforms. Solution: Assign $F9X to $FC at the beginning of configure, before platform-specific scripts are run. Do this assignment only if FC is empty. Platforms tested: copper, modi4 (parallel and serial w/c++), verbena. This change should only affect fortran build. * [svn-r10170] Purpose:Leon Arber2005-03-094-57/+161 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug Fixes Description: Fixes for several bugs, including dumping of excess output to a temporary file, fix for printing hsize_t datatype, and the long awaited fix for intermixed output. Solution: Fix 1: Overflow file Previously, any output that a worker task made was buffered locally in memory, up to a point. Any output beyond the size of the buffer (used to be 10k) was discarded. Now, the memory buffer size has been changed to 1k and any output beyond this amount is sent a temporary file. This way, no output is lost and memory usage is kept under control. The temporary file is deleted as soon as a worker task finishes sending its contents to the manager. Fix 2: hsize_t printing Printing of the hsize_t datatype used to be handled by %Hu passed to HDfprintf. However, there is no corresponding HDvsnprintf that is able to print hsize_t types. These are now printed with the aid of H5_PRINTF_LL_WIDTH. Fix 3: Intermixed output fix Intermixed output would occur on some machines (although I haven't seen it happen for a while) due to the unpredictability of the underlying network and the speed at which various message would travel. This has been fixed by having all output send to the manager for printing. The worker tasks no longer print the output themselves upon receipt of a token, but instead send that data to the manager. Platforms tested: heping, eirene, tg-login (the only place that seems to still experience intermixed output every now and then) Misc. update: * [svn-r10169] Purpose:Quincey Koziol2005-03-081-1/+2 | | | | | | | | | | | Bug fix Description: Correct minor array bounds read error of 0 bytes that purify found. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10168] Purpose:Quincey Koziol2005-03-082-1/+262 | | | | | | | | | | | | Bug fix & new tests Description: Fix another couple of issues with record removal and add some more tests to make certain removals work correctly. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10166] Purpose:Albert Cheng2005-03-081-1/+2 | | | | Updated with the removal GASS API. * [svn-r10165] Purpose:Albert Cheng2005-03-081-6/+0 | | | | Updated the help page that install directory is no longer hardset. * [svn-r10163] Purpose: New way to do conversion test from integers to ↵Raymond Lu2005-03-081-36/+64 | | | | | | | | | | | | | floating numbers. Description: This is the 2nd step of changing conversion test. This checkin is only for conversion from integer to floating number. The source buffer of integer is filled up in the same way described in the last checkin(revision 1.153). Platforms tested: fuss, sol, and heping - copper was down. Couldn't do h5committest. * [svn-r10162] Purpose:Quincey Koziol2005-03-082-12/+905 | | | | | | | | | | | | | Bug fix & new tests Description: Fix several errors in record removel routines, which should now be feature complete for removing records at any location in the B-tree (further testing will verify this) Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10161] Purpose:Xiaowen Wu2005-03-081-30/+182 | | | | | | | | | | | | | | | | | | New feature. Description: The nbit filter does not support situations where datatype of string, time, enum, variable-length, bitfield, opaque, reference is a field of a compound datatype or array datatype. Solution: Modify the nbit filter to hanle such situations. The filter is a no-op to these dataytypes. Platforms tested: copper, heping. Misc. update: * [svn-r10160] Purpose:James Laird2005-03-072-75/+60 | | | | | | | | | | | Forgot to run reconfigure Description: Forgot to run bin/reconfigure after removing my debug output from configure.in. Shame on me! Platforms tested: mir * [svn-r10159] Purpose:Quincey Koziol2005-03-072-31/+249 | | | | | | | | | | | | Bug fix Description: Corrected errors in record removal code to handle removing records in higher nodes in the B-tree. Platforms tested: FreebSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10158] Purpose:James Laird2005-03-0781-7314/+12537 | | | | | | | | | | | | | | | | | | | | | | Automake version upgrade Description: Upgraded automake version from 1.6.2 to 1.9.5. Changed bin/reconfigure script to use automake 1.9.5. Changed configure.in and Makefiles to use new FCFLAGS and FC variables instead of FFLAGS and F9X. Automake and configure should now do the lion's share of the work supporting Fortran 9X; macros in acsite.m4 are now mostly unused (will be cleaned later). Altered how configure handles pmake; now root-level Makefile.in is processed by bin/reconfigure to have a .MAKEFLAGS target, since automake no longer allows us to define unused variables. Configure now always checks for C++ compiler even if it is not used, since automake thinks this is the Right Thing To Do and will break otherwise. Platforms tested: Sol, copper, heping, mir, sleipnir, eirene, pommier, kelgia, modi4. * [svn-r10156] Purpose:Quincey Koziol2005-03-052-19/+192 | | | | | | | | | | | Bug fix & new feature Description: Allow B-tree's height to be reduced when removing records. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10155] Purpose:Quincey Koziol2005-03-051-10/+288 | | | | | | | | | | | | More tests Description: Add tests for removing records in the root of a level-1 B-tree and promoting and merging leaf nodes. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10154] Purpose:Quincey Koziol2005-03-052-13/+288 | | | | | | | | | | | | | | Bug fix/new feature Description: Tweak the record promotion algorithm to get it working correctly when promoting and redistributing records. Added tests for that case. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10153] Purpose:Quincey Koziol2005-03-057-2/+284 | | | | | | | | | | | | New feature Description: Allow records in internal nodes to be removed, not just records in leaf nodes. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10152] Purpose:Quincey Koziol2005-03-052-58/+409 | | | | | | | | | | | | | | | | | | Bug fix & new feature Description: Fix error in 3-node redistribution when nodes are only moving into the middle node from the left & right nodes (which happens sometimes during record removals). Clean up internal insert & remove routines to remove lots of redundant checking. Added 3->2 node merge routine to handle more record removal cases. Platforms tested: FreeBSD 4.9 (sleipnir) Solaris 2.11 (shanti) * [svn-r10151] Purpose:Quincey Koziol2005-03-042-7/+324 | | | | | | | | | | | New feature Description: Add code to handle 2->1 node merges during record removal. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10150] Purpose: A new way to do conversion testRaymond Lu2005-03-041-14/+81 | | | | | | | | | | | | | | | | | Description: This is the first step of changing conversion test. This checkin is only for conversion between integers. Instead of filling source buffer with randomly generated bit pattern, this new way uses more sensible bit patterns. It's easier to see using "char" as source for example. The bit patterns will be 00000001, 00000010, 00000100, 00001000, 00010000, 00100000, 01000000, 10000000 00000000, 00000011, 00000111, 00001111, 00011111, 00111111, 01111111, 11111111 11111111, 11111110, 11111100, 11111000, 11110000, 11100000, 11000000, 10000000 The main point of this way is to avoid casting and comparison between source and destination types by compiler. The bit patterns will cover positive maximum and minimum, negative maximum and minimum if the source is signed integer. Platforms tested: h5committest and fuss. * [svn-r10149] Purpose:Quincey Koziol2005-03-042-296/+172 | | | | | | | | | | | | | | | | | Bug fix & new feature Description: Fix a couple of off-by-one errors in assertions (code was actually correct) for 3 node redistributions. Remove "old" node removal code that is unused now. Add more tests that verify that 2-node and 3-node redistributions are working correctly for removals. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10148] Purpose:Quincey Koziol2005-03-041-4/+42 | | | | | | | | | | | | New test Description: Add a couple more tests for removing records before I start modifying the code further. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti) * [svn-r10147] Purpose:Quincey Koziol2005-03-041-16/+13 | | | | | | | | | | | | | | | | | Bug fix Description: Filter callback routines were being called with memory "version" of disk datatype (don't ask... :-), which could result in incorrect calculations in the filter callbacks. Solution: Rearrange code to call the filter callbacks after the final disk "version" of the disk datatype has been created. Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest * [svn-r10145] Purpose:Quincey Koziol2005-03-042-0/+7 | | | | | | | | | | | | Bug fix Description: Add some "safety net" sort of assertions and sanity checks contributed by user. Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest * [svn-r10144] Purpose:Quincey Koziol2005-03-046-0/+6 | | | | | | | | | | | | | | | | Bug fix Description: The GASS VFL driver header file was bringing in the <string.h> header file, which several other source code modules needed also, but weren't including explicitly themselves. Solution: Add includes for <string.h> to files which actually need them. Platforms tested: FreeBSD 4.11 (sleipnir) w/C++ as CC Configuration not tested by h5committest... * [svn-r10143] Purpose:Quincey Koziol2005-03-042-2/+2 | | | | | | | | | | | Bug fix Description: Add missing test file to clean target Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest * [svn-r10137] Purpose:MuQun Yang2005-03-041-0/+0 | | | | | | | | | | | | | | | Update windows projects Description: 1. Add N-bit and scaleoffset filters to the project files 2. remove H5FDgass.c from HDF5 src directory 3. Add h5diff_comm.c into h5diff project Solution: Platforms tested: VS 6.0 + compaq fortran 6.6c Misc. update: * [svn-r10136] Purpose:Albert Cheng2005-03-032-11/+23 | | | | | | | | | | | | | | | | Bug fix. Description: MPI_LONG_LONG, which is not standard yet, was used to pass the nubmer of differences found. This was needed because number of differences is defined as type hsize_t which can be arbitary large such that there is no MPI type that matches it. The value is passed between processes as an array of bytes in order to be portable. But this may not work in non-homogeneous MPI environments. This fix was actually Leon's idea. Platforms tested: Tested in QSC in which this failed. * [svn-r10135] Purpose:Quincey Koziol2005-03-032-249/+1024 | | | | | | | | | | | | | | | Bug fix & new feature Description: Fix problem with inserting existing keys into B-tree corrupting record counts along the path to the failed insertion. Add more support for removing records, it's now handling removing records from leaves of level-1 B-trees. Platforms tested: FreeBSD 4.11 (sleipnir) w/parallel Solaris 2.9 (shanti) * [svn-r10134] Purpose:Robert E. McGrath2005-03-031-4/+4 | | | | | | | | | | Description: Solution: Platforms tested: Misc. update: * [svn-r10133] Purpose:Albert Cheng2005-03-031-1/+32 | | | | Updated with 1.7.x changes of retiring GASS Virtual File Driver. * [svn-r10132] Purpose:James Laird2005-03-032-4/+9 | | | | | | | | | | | | | | | Bug fix Description: When C flags are passed in using $CC variable, this can confuse test commands in configure (for instance, CC='pgcc -tp k8-32'). Solution: Previous solution didn't entirely solve problem. Wrote a sed snippit to strip flags from $CC for purposes of test in configure. Platforms tested: mir (just a configure bug) * [svn-r10130] Purpose:Albert Cheng2005-03-0317-1587/+38 | | | | | | | Retired GASS driver. Platforms tested: H5committested. * [svn-r10129] Corrected typos which should have said SRB instead of GASS.Albert Cheng2005-03-03