Commit Graph

188 Commits

Author SHA1 Message Date
dmh
582410a407 [NCF-273]/HZY-708311
Add a new function called nc_inq_format_extended that
returns more detailed format information (vis-a-vis
nc_inq_format) about an open dataset.

Note that the netcdf API will present the file as if it had
the format specified by nc_inq_format.  The true file
format, however, may not even be a netcdf file; it might be
DAP, HDF4, or PNETCDF, for example. This function returns
that true file type.  It also returns the effective mode for
the file.

signature: nc_inq_format_extended(int ncid, int* formatp, int* modep)
where
* ncid is the NetCDF ID from a previous call to nc_open() or
  nc_create().
* formatp is a pointer to a location for returned true format.
* modep is a pointer to a location for returned mode flags.

Refer to the actual list in the file netcdf.h to see the
currently defined set.

Also added test cases (tst_formatx*).
2013-12-22 12:53:20 -07:00
dmh
a35d3c04d8 dfile.c:NC_open has a couple of
uninitialized local variables.
Fix was to initialize them.
2013-10-15 14:33:30 -06:00
Ward Fisher
f43bf8f1da Addressed a handful of issues identified by
Coverity static analysis.
2013-08-05 20:36:33 +00:00
Russ Rew
6cd8fca60d Quincey's fixes for NCF-250, netCDF-4 parallel independent access with
unlimited dimension hanging.  Extending the size of an unlimited
dimension in HDF5 must be a collective operation, so now an error is
returned if trying to extend in independent access mode.

Quincey's bug fixes for parallel build portability, particularly
OpenMPI on MacOS-X.
2013-07-08 21:31:13 +00:00
Ward Fisher
1df00fa579 Re-added fix for very small files. 2013-05-22 18:56:52 +00:00
Dennis Heimbigner
dea3c726c8 merge trunk into this branch 2013-03-15 20:31:07 +00:00
Dennis Heimbigner
1abb2ecb56 Fix jira NCF-243
Problem was that the NC_create
code was not checking for the NC_CLASSIC_MODEL
mode flag in deciding what dispatch table to use.
This meant that it was then defaulting to use
the default format, and if that was changed
to e.g. NC_FORMAT_NETCDF4, then it would try
to create a netcdf-4 format file, even is
NC_CLASSIC_MODEL mode flag was set.
2013-03-15 20:03:59 +00:00
Dennis Heimbigner
9eaac2a595 Apply Wei-Keng's fix
for JIRA issue NCF-241.
This is only temporary
until I can make pnetcdf
operate as a separate dispatch table.

Also, fix nc_test4/tst_pnetcdf
to open with nc_open_par;
this is necessary because a pnetcdf
created file cannot be opened
as a netcdf classic file.
2013-03-13 17:34:47 +00:00
Ward Fisher
ff062bb588 Fixed a windows-specific issue in nc_open. When attempting to
read 4 bytes from a 3 byte file, Windows would fail with an
error 22, "Invalid Operation". This would happen when trying to
read the 4-byte magic number from a very small file.

This problem was uncovered by nc_test/tst_misc.c.  

When fread returns 0 and errno is 22, NC_ENOTNC is returned.
2013-01-24 20:23:18 +00:00
Dennis Heimbigner
0d8c0b9276 more pnetcdf fixes 2013-01-18 02:25:12 +00:00
Dennis Heimbigner
6bed1e932e fix previous change to ensure proper return code 2012-12-07 02:25:57 +00:00
Dennis Heimbigner
c114861e68 fix dfile.c error reporting 2012-12-06 21:17:36 +00:00
Dennis Heimbigner
5ca78309cc The effect of this change is to make the struct NC structure
contain as little file-type specific info as possible.  It
modifies especially libsrc so that all of the netcdf-3 data
that used to be in struct NC is now kept in a separate chunk
of data pointed to by the struct NC. This makes all of
current protocols consistent: netcdf-3, netcdf-4, and dap.
2012-09-06 19:44:03 +00:00
Dennis Heimbigner
d61af2ab31 fix typo 2012-06-25 17:03:18 +00:00
Dennis Heimbigner
7ddd90c577 Added some more documentation about NC_MMAP 2012-06-25 16:48:39 +00:00
Dennis Heimbigner
a6b932826b add NC_MMAP flag and tests 2012-06-23 19:25:49 +00:00
Dennis Heimbigner
7a9c9347a8 fix NCF-173 2012-05-24 00:58:48 +00:00
Dennis Heimbigner
4f68d6c5f8 win32/mingw fixes 2012-05-15 03:13:08 +00:00
Dennis Heimbigner
cb25985208 another scan-build bug fix 2012-04-30 15:58:40 +00:00
Dennis Heimbigner
279f910774 change comments associated with nc_create. 2012-04-16 00:49:47 +00:00
Dennis Heimbigner
5536bccee1 allow NC_DISKLESS with nc_open() to operate as a in-memory cache 2012-04-08 22:47:38 +00:00
Dennis Heimbigner
60e48cf51d Fixed documentation as suggested in e-support ticket KJK-861023 (H/T Charlie Zender) 2012-04-04 04:44:51 +00:00
Dennis Heimbigner
f5bd3bf525 cleanup and remove unused code 2012-04-01 20:15:06 +00:00
Dennis Heimbigner
7dcf52719a add a documentation note about NC_DISKLESS 2012-03-28 02:44:29 +00:00
Dennis Heimbigner
5570117513 fix NC_DISKLESS documentation in nc_create 2012-03-27 03:20:05 +00:00
Dennis Heimbigner
7e27052f87 - Implemented diskless files for both netcdf classic and extended.
The in-memory files can be made persistent if nc_create is called with
  NC_DISKLESS|NC_WRITE flags set. Initial test case also included.
- Modified ncio mechanism to support
  multiple ncio packages; this is so we
  can have posixio and memio operating
  at the same time.
- cleanup up a bunch of lint issues (unused variables, etc).
2012-03-26 01:34:32 +00:00
Dennis Heimbigner
25c3167841 ckp 2012-03-26 01:30:22 +00:00
Dennis Heimbigner
88f7950d6f fix a bunch of uninitialized variables 2012-03-16 22:29:09 +00:00
Dennis Heimbigner
99eef24bc2 - Fix NCF-158 to modify ncgen flag defaults.
- Fix NCF-157 to modify DAP code to support
  partial variable retrieval.
- Fix of NCF-154 to solve problem of ncgen
  improperly processing data lists for variables
  of size greater than 2**18 bytes.
- Fix ncgen processing of char variables that have
  multiple unlimited dimensions.
- Partly fix Jira issue: NCF-145 (vlen issues).
- Benchmark program nc_test4/tst_ar4_*) requires arguments
  and should only be invoked inside a shell
  script; fixed so that they terminate cleanly
  if invoked with no arguments.
- Fix the Doxygen processing so it will work
  with make distcheck.
- Begin switchover to using an alternative to ncio.
- Begin support for in-memory (diskless) files.
2012-03-14 23:26:48 +00:00
Dennis Heimbigner
787d32fffd changed form of some static data to work with cxx4 2012-03-08 22:21:12 +00:00
Dennis Heimbigner
aebd11348a 1)Integrate the oc with improved performance 2012-01-29 18:56:29 +00:00
Russ Rew
e39dc1ed39 Revert libtool version to 7.1.1. Disable libdiskless. 2012-01-12 23:27:30 +00:00
Russ Rew
0e48e0a671 Jira NCF-137: Fix documentation of ncid parameter to include group ids 2011-12-15 21:21:38 +00:00
Ed Hartnett
2be90120b6 fixed strdup vs. nulldap problem 2011-09-30 16:48:55 +00:00
Dennis Heimbigner
1578ddac0c 2011-09-20 20:39:04 +00:00
Ed Hartnett
d58c18c623 added diskless files API, subsetting not working, classic model only 2011-08-16 21:04:33 +00:00
Dennis Heimbigner
5c002466e3 cleanup misc. items 2011-07-14 22:21:46 +00:00
Ed Hartnett
fd4a63c4d2 changed file names to allow visual studio to cope 2011-07-14 09:50:37 +00:00