mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-11-21 03:13:42 +08:00
f3e711e2b8
re: https://github.com/Unidata/netcdf-c/issues/2177 re: https://github.com/Unidata/netcdf-c/pull/2178 Provide get/set functions to store global data alignment information and apply it when a file is created. The api is as follows: ```` int nc_set_alignment(int threshold, int alignment); int nc_get_alignment(int* thresholdp, int* alignmentp); ```` If defined, then for every file created opened after the call to nc_set_alignment, for every new variable added to the file, the most recently set threshold and alignment values will be applied to that variable. The nc_get_alignment function return the last values set by nc_set_alignment. If nc_set_alignment has not been called, then it returns the value 0 for both threshold and alignment. The alignment parameters are stored in the NCglobalstate object (see below) for use as needed. Repeated calls to nc_set_alignment will overwrite any existing values in NCglobalstate. The alignment parameters are applied in libhdf5/hdf5create.c and libhdf5/hdf5open.c The set/get alignment functions are defined in libsrc4/nc4internal.c. A test program was added as nc_test4/tst_alignment.c. ## Misc. Changes Unrelated to Alignment * The NCRCglobalstate type was renamed to NCglobalstate to indicate that it represented more general global state than just .rc data. It was also moved to nc4internal.h. This led to a large number of small changes: mostly renaming. The global state management functions were moved to nc4internal.c. * The global chunk cache variables have been moved into NCglobalstate. As warranted, other global state will be moved as well. * Some misc. problems with the nczarr performance tests were corrected. |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
d4bytes.c | ||
d4bytes.h | ||
d4chunk.c | ||
d4chunk.h | ||
d4curlflags.c | ||
d4curlfunctions.c | ||
d4curlfunctions.h | ||
d4cvt.c | ||
d4data.c | ||
d4debug.c | ||
d4debug.h | ||
d4dump.c | ||
d4file.c | ||
d4fix.c | ||
d4http.c | ||
d4http.h | ||
d4includes.h | ||
d4mem.c | ||
d4meta.c | ||
d4odom.c | ||
d4odom.h | ||
d4parser.c | ||
d4printer.c | ||
d4read.c | ||
d4read.h | ||
d4swap.c | ||
d4util.c | ||
d4util.h | ||
d4varx.c | ||
Makefile.am | ||
ncd4.h | ||
ncd4dispatch.c | ||
ncd4dispatch.h | ||
ncd4types.h |