netcdf-c/include
Dennis Heimbigner ccc70d640b re: esupport MQO-415619
and https://github.com/Unidata/netcdf-c/issues/708

Expand the NC_INMEMORY capabilities to support writing and accessing
the final modified memory.

Three new functions have been added:
nc_open_memio, nc_create_mem, and nc_close_memio.

The following new capabilities were added.
1. nc_open_memio() allows the NC_WRITE mode flag
   so a chunk of memory can be passed in and be modified
2. nc_create_mem() allows the NC_INMEMORY flag to be set
   to cause the created file to be kept in memory.
3. nc_close_mem() allows the final in-memory contents to be
   retrieved at the time the file is closed.
4. A special flag, NC_MEMIO_LOCK, is provided to ensure that
   the provided memory will not be freed or reallocated.

Note the following.
1. If nc_open_memio() is called with NC_WRITE, and NC_MEMIO_LOCK is not set,
   then the netcdf-c library will take control of the incoming memory.
   This means that the original memory block should not be freed
   but the block returned by nc_close_mem() must be freed.
2. If nc_open_memio() is called with NC_WRITE, and NC_MEMIO_LOCK is set,
   then modifications to the original memory may fail if the space available
   is insufficient.

Documentation is provided in the file docs/inmemory.md.
A test case is provided: nc_test/tst_inmemory.c driven by
nc_test/run_inmemory.sh

WARNING: changes were made to the dispatch table for
the close entry. From int (*close)(int) to int (*close)(int,void*).
2018-02-25 21:45:31 -07:00
..
.gitignore Added a new .gitignore specific to include/. 2014-09-18 15:05:08 -06:00
ceconstraints.h Fix Jirs 255 2013-05-16 18:22:17 +00:00
CMakeLists.txt Finalize the compression support. 2017-04-27 13:01:59 -06:00
err_macros.h cleaned up err_macros.h 2017-11-24 10:03:01 -07:00
fbits.h minor refactor of the build system to work better for cross-compiling 2011-03-15 10:19:08 +00:00
hdf4dispatch.h moved HDF4 to its own dispatch layer 2018-02-08 06:20:58 -07:00
Makefile.am Merge branch 'master' into newhash0.dmh 2018-02-21 14:19:43 -07:00
nc3dispatch.h re: esupport MQO-415619 2018-02-25 21:45:31 -07:00
nc3internal.h This is the initial step in moving to the new higher performance 2018-02-08 19:53:40 -07:00
nc4dispatch.h re: esupport MQO-415619 2018-02-25 21:45:31 -07:00
nc4internal.h re: esupport MQO-415619 2018-02-25 21:45:31 -07:00
nc_hashmap.h Corrected an issue preventing gcc-4.4 from compiling netcdf. 2016-04-26 21:09:41 +00:00
nc_logging.h Corrected "BAIL" macros to avoid infinite loop when logging is disabled and an 2013-12-29 01:12:43 -06:00
nc_tests.h extra tests, plus fill value fixes for string type 2018-01-30 14:39:47 -07:00
nc.h re e-support UBS-599337 2017-10-24 16:25:09 -06:00
ncauth.h This pr should probably be delayed until after Version 4.5. 2017-09-02 18:09:36 -06:00
ncaux.h 2011-09-18 20:57:51 +00:00
ncbytes.h Fix pull request https://github.com/Unidata/netcdf-c/pull/374 (dap4.dmh) 2017-04-03 21:39:44 -06:00
ncconfigure.h Begin changing over to use strlcat instead of strncat because 2017-11-23 10:55:24 -07:00
ncdap.h Primary change: add dap4 support 2017-03-08 17:01:10 -07:00
ncdimscale.h minor refactor of the build system to work better for cross-compiling 2011-03-15 10:19:08 +00:00
ncdispatch.h re: esupport MQO-415619 2018-02-25 21:45:31 -07:00
ncexternl.h Fix pull request https://github.com/Unidata/netcdf-c/pull/374 (dap4.dmh) 2017-04-03 21:39:44 -06:00
ncfilter.h Rebuilt the filter parameter handling code to use a common 2018-01-23 16:00:11 -07:00
nchashmap.h This is the initial step in moving to the new higher performance 2018-02-08 19:53:40 -07:00
nclist.h This is the initial step in moving to the new higher performance 2018-02-08 19:53:40 -07:00
nclistmap.h This is the initial step in moving to the new higher performance 2018-02-08 19:53:40 -07:00
nclog.h Fix pull request https://github.com/Unidata/netcdf-c/pull/374 (dap4.dmh) 2017-04-03 21:39:44 -06:00
ncoffsets.h Primary change: add dap4 support 2017-03-08 17:01:10 -07:00
ncrc.h This pr should probably be delayed until after Version 4.5. 2017-09-02 18:09:36 -06:00
nctestserver.h re: pull request: https://github.com/Unidata/netcdf-c/issues/487 2017-09-18 16:44:31 -06:00
nctime.h Solve issue https://github.com/Unidata/netcdf-c/issues/359 2017-07-24 18:59:16 -06:00
ncuri.h Undo DECODE_IDENTIFIER change 2017-08-29 18:01:26 -06:00
ncutf8.h re: pull request https://github.com/Unidata/netcdf-c/pull/364 2017-06-18 21:06:19 -06:00
ncwinpath.h 1. Cleaned up some holdover debug code. 2017-07-25 14:58:29 -06:00
netcdf_f.h Merged changes from netcdf-branch. 2012-12-13 22:09:41 +00:00
netcdf_mem.h re: esupport MQO-415619 2018-02-25 21:45:31 -07:00
netcdf_meta.h.in Added ERANGE_FILL information to netcdf_meta.h 2018-01-25 12:46:46 -07:00
netcdf_par.h added more documentation 2017-11-08 03:33:44 -07:00
netcdf.h re: esupport MQO-415619 2018-02-25 21:45:31 -07:00
onstack.h Fix preprocessor for mingw 2015-12-07 18:08:13 -08:00
rnd.h added guards for header files that needed them 2018-01-17 09:20:20 -07:00
XGetopt.h 2012-09-10 22:37:38 +00:00