mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-11-21 03:13:42 +08:00
Merge branch 'master' into ejh_hdf4_cleanup
This commit is contained in:
commit
b2e85ce8a1
@ -199,7 +199,7 @@ OPTION(NC_FIND_SHARED_LIBS "Find dynamically-built versions of dependent librari
|
||||
|
||||
##
|
||||
# We've had a request to allow for non-versioned shared libraries.
|
||||
# This seems reasonable enough to accomodate. See
|
||||
# This seems reasonable enough to accommodate. See
|
||||
# https://github.com/Unidata/netcdf-c/issues/228 for more info.
|
||||
##
|
||||
OPTION(ENABLE_SHARED_LIBRARY_VERSION "Encode the library SO version in the file name of the generated library file." ON)
|
||||
@ -588,7 +588,7 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4)
|
||||
# as a shared library, we will use hdf5 as a shared
|
||||
# library. If we are building netcdf statically,
|
||||
# we will use a static library. This can be toggled
|
||||
# by explicitely modifying NC_FIND_SHARED_LIBS.
|
||||
# by explicitly modifying NC_FIND_SHARED_LIBS.
|
||||
##
|
||||
IF(NC_FIND_SHARED_LIBS)
|
||||
SET(NC_HDF5_LINK_TYPE "shared")
|
||||
@ -1030,7 +1030,7 @@ IF(ENABLE_PNETCDF)
|
||||
ENDIF(NOT PNETCDF)
|
||||
ENDIF()
|
||||
|
||||
# Options to enable use of fill values for elements casuing NC_ERANGE
|
||||
# Options to enable use of fill values for elements causing NC_ERANGE
|
||||
SET(STATUS_ERANGE_FILL "OFF")
|
||||
OPTION(ENABLE_ERANGE_FILL "Enable use of fill value when out-of-range type conversion causes NC_ERANGE error." OF)
|
||||
IF(ENABLE_ERANGE_FILL)
|
||||
@ -1700,7 +1700,7 @@ ENDIF()
|
||||
ADD_SUBDIRECTORY(docs)
|
||||
|
||||
##
|
||||
# Brute force, grab all of the dlls from the depency directory,
|
||||
# Brute force, grab all of the dlls from the dependency directory,
|
||||
# install them in the binary dir. Grab all of the .libs, put them
|
||||
# in the libdir.
|
||||
##
|
||||
|
@ -371,7 +371,7 @@ fi
|
||||
AC_MSG_RESULT($enable_dap_auth_tests)
|
||||
|
||||
# Control if groups are supported in [netcdf4]dap2 code
|
||||
AC_MSG_CHECKING([whether [netcdf4] group names for DAP2 hould be enabled (default on)])
|
||||
AC_MSG_CHECKING([whether [netcdf4] group names for DAP2 should be enabled (default on)])
|
||||
AC_ARG_ENABLE([dap-groups],
|
||||
[AS_HELP_STRING([--disable-dap-groups],
|
||||
[disable [netcdf4] DAP2 group names])])
|
||||
|
@ -1105,7 +1105,7 @@ HTML_STYLESHEET =
|
||||
# defined cascading style sheet that is included after the standard style sheets
|
||||
# created by doxygen. Using this option one can overrule certain style aspects.
|
||||
# This is preferred over using HTML_STYLESHEET since it does not replace the
|
||||
# standard style sheet and is therefor more robust against future updates.
|
||||
# standard style sheet and is therefore more robust against future updates.
|
||||
# Doxygen will copy the style sheet file to the output directory. For an example
|
||||
# see the documentation.
|
||||
# This tag requires that the tag GENERATE_HTML is set to YES.
|
||||
|
@ -1049,7 +1049,7 @@ USE_HTAGS = NO
|
||||
VERBATIM_HEADERS = YES
|
||||
|
||||
# If the CLANG_ASSISTED_PARSING tag is set to YES, then doxygen will use the
|
||||
# clang parser (see: http://clang.llvm.org/) for more acurate parsing at the
|
||||
# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the
|
||||
# cost of reduced performance. This can be particularly helpful with template
|
||||
# rich C++ code for which doxygen's built-in parser lacks the necessary type
|
||||
# information.
|
||||
@ -1163,7 +1163,7 @@ HTML_STYLESHEET =
|
||||
# defined cascading style sheet that is included after the standard style sheets
|
||||
# created by doxygen. Using this option one can overrule certain style aspects.
|
||||
# This is preferred over using HTML_STYLESHEET since it does not replace the
|
||||
# standard style sheet and is therefor more robust against future updates.
|
||||
# standard style sheet and is therefore more robust against future updates.
|
||||
# Doxygen will copy the style sheet file to the output directory. For an example
|
||||
# see the documentation.
|
||||
# This tag requires that the tag GENERATE_HTML is set to YES.
|
||||
|
@ -675,7 +675,7 @@ follows.
|
||||
Related CURL Flags: CURLOPT_KEYPASSWORD
|
||||
HTTP.SSL.CAPATH
|
||||
Type: String representing directory
|
||||
Description: Path to a directory containing trusted certificates for validating server sertificates.
|
||||
Description: Path to a directory containing trusted certificates for validating server certificates.
|
||||
Related CURL Flags: CURLOPT_CAPATH
|
||||
HTTP.SSL.VALIDATE
|
||||
Type: boolean ("1"/"0")
|
||||
|
@ -165,7 +165,7 @@ specifies the password for accessing the HTTP.SSL.CERTIFICAT/HTTP.SSL.key file.
|
||||
<p>
|
||||
HTTP.SSL.CAPATH
|
||||
specifies the path to a directory containing
|
||||
trusted certificates for validating server sertificates.
|
||||
trusted certificates for validating server certificates.
|
||||
<p>
|
||||
HTTP.SSL.VALIDATE
|
||||
is a boolean (1/0) value that if true (1)
|
||||
|
@ -188,7 +188,7 @@ specifies the password for accessing the HTTP.SSL.CERTIFICAT/HTTP.SSL.key file.
|
||||
|
||||
HTTP.SSL.CAPATH
|
||||
specifies the path to a directory containing
|
||||
trusted certificates for validating server sertificates.
|
||||
trusted certificates for validating server certificates.
|
||||
See reference #2 for more info.
|
||||
|
||||
HTTP.SSL.VALIDATE
|
||||
|
@ -44,7 +44,7 @@ double slash characters '//' on any line.
|
||||
A CDL description for a classic model file consists of three optional
|
||||
parts: dimensions, variables, and data. The variable part may contain
|
||||
variable declarations and attribute assignments. For the enhanced
|
||||
model supported by netCDF-4, a CDL decription may also includes
|
||||
model supported by netCDF-4, a CDL description may also include
|
||||
groups, subgroups, and user-defined types.
|
||||
|
||||
A dimension is used to define the shape of one or more of the
|
||||
@ -160,8 +160,8 @@ NetCDF-4 supports the additional primitive types:
|
||||
- ubyte Unsigned eight-bit integers.
|
||||
- ushort Unsigned 16-bit integers.
|
||||
- uint Unsigned 32-bit integers.
|
||||
- int64 64-bit singed integers.
|
||||
- uint64 Unsigned 64-bit singed integers.
|
||||
- int64 64-bit signed integers.
|
||||
- uint64 Unsigned 64-bit signed integers.
|
||||
- string Variable-length string of characters
|
||||
|
||||
Except for the added data-type byte, CDL supports the same primitive
|
||||
|
@ -445,7 +445,7 @@ document. For more information about HDF5, see the HDF5 web site:
|
||||
http://hdf.ncsa.uiuc.edu/HDF5/.
|
||||
|
||||
The specification that follows is sufficient to allow HDF5 users to
|
||||
create files that will be accessable from netCDF-4.
|
||||
create files that will be accessible from netCDF-4.
|
||||
|
||||
\subsection creation_order Creation Order
|
||||
|
||||
@ -735,7 +735,7 @@ Starting with version 4.1, the netCDF libraries can read HDF4 SD
|
||||
created with the Scientific Dataset API. Access is read-only.
|
||||
|
||||
Dataset types are translated between HDF4 and netCDF in a
|
||||
straighforward manner.
|
||||
straightforward manner.
|
||||
- DFNT_CHAR = NC_CHAR
|
||||
- DFNT_UCHAR, DFNT_UINT8 = NC_UBYTE
|
||||
- DFNT_INT8 = NC_BYTE
|
||||
|
@ -84,7 +84,7 @@ obtain information about any associated filter using this signature.
|
||||
int nc_inq_var_filter(int ncid, int varid, unsigned int* idp, size_t* nparams, unsigned int* params);
|
||||
|
||||
````
|
||||
The filter id wil be returned in the __idp__ argument (if non-NULL),
|
||||
The filter id will be returned in the __idp__ argument (if non-NULL),
|
||||
the number of parameters in __nparamsp__ and the actual parameters in
|
||||
__params__. As is usual with the netcdf API, one is expected to call
|
||||
this function twice. The first time to get __nparams__ and the
|
||||
|
@ -671,7 +671,7 @@ The extended CDL syntax for the enhanced data model supported by
|
||||
netCDF-4 allows optional type specifications, including user-defined
|
||||
types, for attributes of user-defined types. See ncdump output or the
|
||||
reference documentation for ncgen for details of the extended CDL
|
||||
systax.
|
||||
syntax.
|
||||
|
||||
In the netCDF example (see \ref data_model), units is an attribute for
|
||||
the variable lat that has a 13-character array value
|
||||
@ -996,7 +996,7 @@ through the netCDF C or Fortran interfaces, support for parallel I/O
|
||||
on netCDF classic and 64-bit offset files using the parallel-netcdf
|
||||
(formerly pnetcdf) library from Argonne/Northwestern, a new nc-config
|
||||
utility to help compile and link programs that use netCDF, inclusion
|
||||
of the UDUNITS library for hadling “units” attributes, and inclusion
|
||||
of the UDUNITS library for handling “units” attributes, and inclusion
|
||||
of libcf to assist in creating data compliant with the Climate and
|
||||
Forecast (CF) metadata conventions.
|
||||
|
||||
@ -1796,7 +1796,7 @@ double slash characters '//' on any line.
|
||||
A CDL description for a classic model file consists of three optional
|
||||
parts: dimensions, variables, and data. The variable part may contain
|
||||
variable declarations and attribute assignments. For the enhanced
|
||||
model supported by netCDF-4, a CDL decription may also includes
|
||||
model supported by netCDF-4, a CDL description may also include
|
||||
groups, subgroups, and user-defined types.
|
||||
|
||||
A dimension is used to define the shape of one or more of the
|
||||
@ -1912,8 +1912,8 @@ NetCDF-4 supports the additional primitive types:
|
||||
- ubyte - Unsigned eight-bit integers.
|
||||
- ushort - Unsigned 16-bit integers.
|
||||
- uint - Unsigned 32-bit integers.
|
||||
- int64 - 64-bit singed integers.
|
||||
- uint64 - Unsigned 64-bit singed integers.
|
||||
- int64 - 64-bit signed integers.
|
||||
- uint64 - Unsigned 64-bit signed integers.
|
||||
- string - Variable-length string of characters
|
||||
|
||||
Except for the added numeric data-types byte and ubyte, CDL supports
|
||||
|
@ -1316,7 +1316,7 @@ $ nc2text -f '%0.1f' vec.nc v
|
||||
</strong>
|
||||
</pre>
|
||||
<p>The first value (<tt><b>-999</b></tt>) is treated as missing because (even
|
||||
after conversion to Celsius) it is less than the valid mininum of <tt><b>-273.2</b></tt>.
|
||||
after conversion to Celsius) it is less than the valid minimum of <tt><b>-273.2</b></tt>.
|
||||
The second value (32<33>F) is converted to 0<>C. The third value (<tt><b>1e9</b></tt>)
|
||||
is treated as missing because it matches the input missing value specified by
|
||||
<tt><b>-m 1e9</b></tt>.</p>
|
||||
|
@ -3034,7 +3034,7 @@ This example is from libsrc4/tst_vars.c.
|
||||
|
||||
...
|
||||
|
||||
/* Open the file and make sure nc_inq_varids yeilds correct
|
||||
/* Open the file and make sure nc_inq_varids yields correct
|
||||
* result. */
|
||||
if (nc_open(FILE_NAME, NC_NOWRITE, &ncid)) ERR;
|
||||
if (nc_inq_varids(ncid, &nvars_in, varids_in)) ERR;
|
||||
@ -3108,7 +3108,7 @@ This example is from libsrc4/tst_dims.c.
|
||||
|
||||
...
|
||||
|
||||
/* Open the file and make sure nc_inq_dimids yeilds correct
|
||||
/* Open the file and make sure nc_inq_dimids yields correct
|
||||
* result. */
|
||||
if (nc_open(FILE_NAME, NC_NOWRITE, &ncid)) ERR;
|
||||
if (nc_inq_dimids(ncid, &ndims_in, dimids_in, 0)) ERR;
|
||||
@ -11764,7 +11764,7 @@ programmers.
|
||||
|
||||
Fortran compilers do not always agree as to how data should be laid
|
||||
out in memory. This makes handling compound and variable length array
|
||||
types compiler and platform dependant.
|
||||
types compiler and platform dependent.
|
||||
|
||||
(This is also true for C, but the clever HDF5 configuration has solved
|
||||
this problem for C. Alas, not for Fortran.)
|
||||
|
@ -918,7 +918,7 @@ used with NF_NETCDF4, this flag ensures that the resulting
|
||||
netCDF-4/HDF5 file may never contain any new constructs from the
|
||||
enhanced data model. That is, it cannot contain groups, user defined
|
||||
types, multiple unlimited dimensions, or new atomic types. The
|
||||
advantage of this restriction is that such files are guarenteed to
|
||||
advantage of this restriction is that such files are guaranteed to
|
||||
work with existing netCDF software.
|
||||
|
||||
A zero value (defined for convenience as NF_CLOBBER) specifies the
|
||||
|
@ -1728,7 +1728,7 @@ after all.
|
||||
Why not take the easy way out if you can?
|
||||
|
||||
Many Linux systems contain package management programs which allow
|
||||
netCDF to be installed easily. This is the prefered installation
|
||||
netCDF to be installed easily. This is the preferred installation
|
||||
method for netCDF.
|
||||
|
||||
Precompiled binaries for some platforms can be found at
|
||||
|
@ -575,7 +575,7 @@
|
||||
Mathematical functions (sqrt, exp, log, sin, cos, ...)
|
||||
</li>
|
||||
<li>
|
||||
Comparision (eq, ne, le, lt, ge, gt, ...)
|
||||
Comparison (eq, ne, le, lt, ge, gt, ...)
|
||||
</li>
|
||||
<li>
|
||||
Conditions (ifthen, ifnotthen, ifthenc, ifnotthenc)
|
||||
@ -1730,7 +1730,7 @@ or using ECMWF reanalysis on a reduced grid
|
||||
<h2><a id="NCL" name="NCL">NCL</a></h2>
|
||||
<p>
|
||||
The <a href="http://www.ncl.ucar.edu/" >NCAR Command Language
|
||||
(NCL)</a> is an intepreted programming
|
||||
(NCL)</a> is an interpreted programming
|
||||
language for scientific data analysis and visualization developed and
|
||||
maintained in
|
||||
NCAR's <a href="http://www.cisl.ucar.edu/">Computational and Information Systems
|
||||
@ -2276,7 +2276,7 @@ or using ECMWF reanalysis on a reduced grid
|
||||
</li>
|
||||
<li>
|
||||
Export animations as AVI or MOV video or as a collection of
|
||||
invididual frame images.
|
||||
individual frame images.
|
||||
</li>
|
||||
<li>
|
||||
Explore remote THREDDS and OpenDAP catalogs and open datasets served from them.
|
||||
@ -2728,7 +2728,7 @@ or using ECMWF reanalysis on a reduced grid
|
||||
Forecast (CF) conventions and ISO 19115 metadata.
|
||||
</p>
|
||||
<p>
|
||||
SIS is under developement as an Apache project. Release 0.3 is
|
||||
SIS is under development as an Apache project. Release 0.3 is
|
||||
currently available for download.
|
||||
</p>
|
||||
<p></p>
|
||||
@ -3522,7 +3522,7 @@ or using ECMWF reanalysis on a reduced grid
|
||||
which includes features such as Mercator projection, Polar Stereographic projection,
|
||||
color or gray scale area-fill contour plotting, and support for many devices:
|
||||
X-windows, PostScript, HP, Tektronix, and others. This powerful and flexible package
|
||||
recognizes netCDF data format, and it can extract axis lables and graph titles
|
||||
recognizes netCDF data format, and it can extract axis labels and graph titles
|
||||
from the data files. The user can customize a plots, or combine several plots
|
||||
into a composite. Plots are of publication quality. The PPLUS graphics package
|
||||
is used for all the TAO workstation displays, including the animations. The animations
|
||||
|
@ -353,7 +353,7 @@
|
||||
<li>
|
||||
The Woods Hole Field Center of the U.S.G.S. Marine and Coastal Geology Program
|
||||
uses netCDF to access a variety of scientific data sets, including output
|
||||
from circulation and sediment tranport models, sonar imagery, digital elevation
|
||||
from circulation and sediment transport models, sonar imagery, digital elevation
|
||||
models, and environmental sensor data. They also make available the <a
|
||||
href="http://crusty.er.usgs.gov/~cdenham/MexCDF/nc4ml5.html">NetCDF Toolbox for
|
||||
Matlab-5</a>
|
||||
|
4
dods.m4
4
dods.m4
@ -202,7 +202,7 @@
|
||||
# fi
|
||||
#
|
||||
# dnl Find the lib directory (which is named according to machine type).
|
||||
# dnl The test was using -z; I changed it to -n to fix a problem withthe
|
||||
# dnl The test was using -z; I changed it to -n to fix a problem with the
|
||||
# dnl matlab server build. The build did not find the libraries with the
|
||||
# dnl env var MATLAB_LIB was not set. 04/12/04 jhrg
|
||||
# AC_MSG_CHECKING(for matlab library dir)
|
||||
@ -301,7 +301,7 @@
|
||||
# AC_MSG_CHECKING(for the IDL root directory)
|
||||
# if test -z "$IDL_ROOT"
|
||||
# then
|
||||
# # Find IDL's root directory by looking at the exectuable and then
|
||||
# # Find IDL's root directory by looking at the executable and then
|
||||
# # finding where that symbolic link points.
|
||||
# # !!! Doesn't work if idl isn't a symbolic link - erd !!!
|
||||
# # I think that the following 'if' fixes the symbolic link problem.
|
||||
|
@ -12,7 +12,7 @@
|
||||
* global_ny == NY and
|
||||
* global_nx == (NX * number of MPI processes).
|
||||
* The data partitioning pattern is a column-wise partitioning across all
|
||||
* proceses. Each process writes a subarray of size ny * nx.
|
||||
* processes. Each process writes a subarray of size ny * nx.
|
||||
*
|
||||
* To compile:
|
||||
* mpicc -O2 parallel_vara.c -o parallel_vara -lnetcdf -lpnetcdf
|
||||
|
@ -57,7 +57,7 @@ main()
|
||||
temp_out[lat][lon] = 12.5;
|
||||
}
|
||||
|
||||
/* These are the latitudes and longitudes which corespond with
|
||||
/* These are the latitudes and longitudes which correspond with
|
||||
* ticks on the dimension axes. */
|
||||
for (lat = 0; lat < LAT_LEN; lat++)
|
||||
latitude[lat] = 40. + lat * 2.5;
|
||||
|
@ -61,7 +61,7 @@ main()
|
||||
if ((retval = nc_def_dim(ncid, "y", NY, &y_dimid)))
|
||||
ERR(retval);
|
||||
|
||||
/* Set up variabe data. */
|
||||
/* Set up variable data. */
|
||||
dimids[0] = x_dimid;
|
||||
dimids[1] = y_dimid;
|
||||
chunks[0] = NX/4;
|
||||
|
@ -104,7 +104,7 @@ main()
|
||||
H5T_NATIVE_DOUBLE) < 0) ERR;
|
||||
if (H5Tcommit(grpid, S1_TYPE_NAME, s1_typeid) < 0) ERR;
|
||||
|
||||
/* Create a vlen type. Its a vlen of stuct s1. */
|
||||
/* Create a vlen type. Its a vlen of struct s1. */
|
||||
if ((vlen_typeid = H5Tvlen_create(s1_typeid)) < 0) ERR;
|
||||
if (H5Tcommit(grpid, VLEN_TYPE_NAME, vlen_typeid) < 0) ERR;
|
||||
|
||||
|
@ -102,7 +102,7 @@ main()
|
||||
H5T_NATIVE_DOUBLE) < 0) ERR;
|
||||
if (H5Tcommit(grpid, S1_TYPE_NAME, s1_typeid) < 0) ERR;
|
||||
|
||||
/* Create a vlen type. Its a vlen of stuct s1. */
|
||||
/* Create a vlen type. Its a vlen of struct s1. */
|
||||
if ((vlen_typeid = H5Tvlen_create(s1_typeid)) < 0) ERR;
|
||||
if (H5Tcommit(grpid, VLEN_TYPE_NAME, vlen_typeid) < 0) ERR;
|
||||
|
||||
|
@ -512,7 +512,7 @@ main()
|
||||
lon_spaceid, H5P_DEFAULT)) < 0) ERR;
|
||||
if (H5DSset_scale(lon_scaleid, LON_NAME) < 0) ERR;
|
||||
|
||||
/* Create a space coresponding to these three dimensions. */
|
||||
/* Create a space corresponding to these three dimensions. */
|
||||
dims[TIME_DIM] = 0;
|
||||
dims[LAT_DIM] = LAT_LEN;
|
||||
dims[LON_DIM] = LON_LEN;
|
||||
@ -720,7 +720,7 @@ main()
|
||||
distance_spaceid, H5P_DEFAULT)) < 0) ERR;
|
||||
if (H5DSset_scale(distance_scaleid, DISTANCE_NAME) < 0) ERR;
|
||||
|
||||
/* Create a space coresponding to these three dimensions. */
|
||||
/* Create a space corresponding to these three dimensions. */
|
||||
dims[TIME_DIM] = 0;
|
||||
dims[SMELLINESS_DIM] = 0;
|
||||
dims[DISTANCE_DIM] = DISTANCE_LEN;
|
||||
|
@ -79,7 +79,7 @@ main()
|
||||
H5P_DEFAULT)) < 0) ERR;
|
||||
if ((grpid = H5Gcreate(fileid, GRP2_NAME, 0)) < 0) ERR;
|
||||
|
||||
/* Create a space coresponding to these three dimensions. */
|
||||
/* Create a space corresponding to these three dimensions. */
|
||||
dims[0] = 0;
|
||||
dims[1] = LAT_LEN;
|
||||
dims[2] = LON_LEN;
|
||||
|
@ -342,7 +342,7 @@ main()
|
||||
ERR;
|
||||
}
|
||||
SUMMARIZE_ERR;
|
||||
/* I cant get this to work, I don't think it's allowed in HDF5. - Ed 7/12/7 */
|
||||
/* I can't get this to work, I don't think it's allowed in HDF5. - Ed 7/12/7 */
|
||||
/* printf("*** Checking HDF5 scalar variable compession..."); */
|
||||
|
||||
/* #define MAX_NAME_LEN 50 */
|
||||
|
@ -17,7 +17,7 @@ getfile() {
|
||||
|
||||
for try in 1 2 3 4 ; do # try 4 times
|
||||
|
||||
# signal sucess/failure
|
||||
# signal success/failure
|
||||
if wget -c $Q --passive-ftp $FTPFILE ; then
|
||||
return 0 # got it
|
||||
fi
|
||||
|
@ -35,7 +35,7 @@ typedef struct NCRCglobalstate {
|
||||
int initialized;
|
||||
char* tempdir; /* track a usable temp dir */
|
||||
char* home; /* track $HOME for use in creating $HOME/.oc dir */
|
||||
NCRCinfo rcinfo; /* Currenly only one rc file per session */
|
||||
NCRCinfo rcinfo; /* Currently only one rc file per session */
|
||||
} NCRCglobalstate;
|
||||
|
||||
extern NCRCglobalstate ncrc_globalstate; /* singleton instance */
|
||||
|
@ -9,7 +9,7 @@
|
||||
* include this file unless you want to probe the capabilities
|
||||
* of libnetcdf. This should ideally only happen when configuring
|
||||
* a project which depends on libnetcdf. At configure time,
|
||||
* the dependant project can set its own macros which can be used
|
||||
* the dependent project can set its own macros which can be used
|
||||
* in conditionals.
|
||||
*
|
||||
* Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
|
@ -381,7 +381,7 @@ iscacheableconstraint(DCEconstraint* con)
|
||||
int i;
|
||||
if(con == NULL) return 1;
|
||||
if(con->selections != NULL && nclistlength(con->selections) > 0)
|
||||
return 0; /* cant deal with selections */
|
||||
return 0; /* can't deal with selections */
|
||||
for(i=0;i<nclistlength(con->projections);i++) {
|
||||
if(!iscacheableprojection((DCEprojection*)nclistget(con->projections,i)))
|
||||
return 0;
|
||||
|
@ -538,7 +538,7 @@ fprintf(stderr,"fixprojection: list = %s\n",dumpprojections(list));
|
||||
for(i=0;i<nclistlength(list);i++) {
|
||||
DCEprojection* p1 = (DCEprojection*)nclistget(list,i);
|
||||
if(p1 == NULL) continue;
|
||||
if(p1->discrim != CES_VAR) continue; /* dont try to unify functions */
|
||||
if(p1->discrim != CES_VAR) continue; /* don't try to unify functions */
|
||||
for(j=i;j<nclistlength(list);j++) {
|
||||
DCEprojection* p2 = (DCEprojection*)nclistget(list,j);
|
||||
if(p2 == NULL) continue;
|
||||
@ -560,7 +560,7 @@ fprintf(stderr,"fixprojection: list = %s\n",dumpprojections(list));
|
||||
for(i=0;i<nclistlength(list);i++) {
|
||||
DCEprojection* p1 = (DCEprojection*)nclistget(list,i);
|
||||
if(p1 == NULL) continue;
|
||||
if(p1->discrim != CES_VAR) continue; /* dont try to unify functions */
|
||||
if(p1->discrim != CES_VAR) continue; /* don't try to unify functions */
|
||||
if(!iscontainer((CDFnode*)p1->var->annotation))
|
||||
continue;
|
||||
for(j=i;j<nclistlength(list);j++) {
|
||||
@ -589,7 +589,7 @@ next: continue;
|
||||
CDFnode* leaf;
|
||||
if(target == NULL) continue;
|
||||
if(target->discrim != CES_VAR)
|
||||
continue; /* dont try to unify functions */
|
||||
continue; /* don't try to unify functions */
|
||||
leaf = (CDFnode*)target->var->annotation;
|
||||
ASSERT(leaf != NULL);
|
||||
if(iscontainer(leaf)) {/* capture container */
|
||||
|
@ -341,7 +341,7 @@ makeocpathstring(OClink conn, OCddsnode node, const char* sep)
|
||||
NCbytes* pathname = NULL;
|
||||
|
||||
/* If we are asking for the dataset path only,
|
||||
then nclude it, otherwise elide it
|
||||
then include it, otherwise elide it
|
||||
*/
|
||||
oc_dds_type(conn,node,&octype);
|
||||
if(octype == OC_Dataset) {
|
||||
|
@ -691,7 +691,7 @@ builddims(NCDAPCOMMON* dapcomm)
|
||||
#if 0
|
||||
nc3sub = (NC3_INFO*)&ncsub->dispatchdata;
|
||||
/* Set the effective size of UNLIMITED;
|
||||
note that this cannot easily be done thru the normal API.*/
|
||||
note that this cannot easily be done through the normal API.*/
|
||||
NC_set_numrecs(nc3sub,unlimited->dim.declsize);
|
||||
#endif
|
||||
|
||||
@ -1449,7 +1449,7 @@ addstringdims(NCDAPCOMMON* dapcomm)
|
||||
if(dimsize == 0)
|
||||
sdim = dapcomm->cdf.globalstringdim; /* use default */
|
||||
else {
|
||||
/* create a psuedo dimension for the charification of the string*/
|
||||
/* create a pseudo dimension for the charification of the string*/
|
||||
if(var->dodsspecial.dimname != NULL) {
|
||||
strncpy(dimname,var->dodsspecial.dimname,sizeof(dimname));
|
||||
dimname[sizeof(dimname)-1] = '\0';
|
||||
|
@ -341,7 +341,7 @@ NCD4_abort(int ncid)
|
||||
}
|
||||
|
||||
/**************************************************/
|
||||
/* Auxilliary routines */
|
||||
/* Auxiliary routines */
|
||||
/**************************************************/
|
||||
|
||||
static void
|
||||
|
@ -415,7 +415,7 @@ done:
|
||||
/**************************************************/
|
||||
/*
|
||||
Walk the (toplevel) var's data to get to the count'th instance.
|
||||
For effiency, it can be supplied with a previous case.
|
||||
For efficiency, it can be supplied with a previous case.
|
||||
Assumes it is called after byte swapping and offsetting.
|
||||
Assumes that var is not fixed size.
|
||||
*/
|
||||
|
@ -133,7 +133,7 @@ NCD4_fetchurl(CURL* curl, const char* url, NCbytes* buf, long* filetime)
|
||||
/* Null terminate the buffer*/
|
||||
len = ncbyteslength(buf);
|
||||
ncbytesappend(buf, '\0');
|
||||
ncbytessetlength(buf, len); /* dont count null in buffer size*/
|
||||
ncbytessetlength(buf, len); /* don't count null in buffer size*/
|
||||
#ifdef D4DEBUG
|
||||
nclog(NCLOGNOTE,"buffersize: %lu bytes",(d4size_t)ncbyteslength(buf));
|
||||
#endif
|
||||
|
@ -424,7 +424,7 @@ buildAttributes(NCD4meta* builder, NCD4node* varorgroup)
|
||||
NCD4node* group;
|
||||
int varid;
|
||||
|
||||
/* Supress all UCARTAG attributes */
|
||||
/* Suppress all UCARTAG attributes */
|
||||
if(strncmp(attr->name,UCARTAG,strlen(UCARTAG)) == 0)
|
||||
continue;
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
#include "ezxml.h"
|
||||
|
||||
/*
|
||||
The primary purpose of this code is to recursivly traverse
|
||||
The primary purpose of this code is to recursively traverse
|
||||
the incoming data to get the endianness correct.
|
||||
*/
|
||||
|
||||
|
@ -750,7 +750,7 @@ void ezxml_free(ezxml_t xml)
|
||||
ezxml_free(xml->ordered);
|
||||
|
||||
if (! xml->parent) { /* free root tag allocations*/
|
||||
for (i = 10; root->ent[i]; i += 2) /* 0 - 9 are default entites (<>&"')*/
|
||||
for (i = 10; root->ent[i]; i += 2) /* 0 - 9 are default entities (<>&"')*/
|
||||
if ((s = root->ent[i + 1]) < root->s || s > root->e) free(s);
|
||||
free(root->ent); /* free list of general entities*/
|
||||
|
||||
|
@ -93,7 +93,7 @@ ezxml_t ezxml_idx(ezxml_t xml, int idx);
|
||||
/* returns the value of the requested tag attribute, or NULL if not found*/
|
||||
const char *ezxml_attr(ezxml_t xml, const char *attr);
|
||||
|
||||
/* Traverses the ezxml sturcture to retrieve a specific subtag. Takes a*/
|
||||
/* Traverses the ezxml structure to retrieve a specific subtag. Takes a*/
|
||||
/* variable length list of tag names and indexes. The argument list must be*/
|
||||
/* terminated by either an index of -1 or an empty string tag name. Example: */
|
||||
/* title = ezxml_get(library, "shelf", 0, "book", 2, "title", -1);*/
|
||||
|
@ -48,7 +48,7 @@ case where memory must be explicitly released.
|
||||
\returns ::NC_ENOTATT Can't find attribute.
|
||||
\returns ::NC_ECHAR Can't convert to or from NC_CHAR.
|
||||
\returns ::NC_ENOMEM Out of memory.
|
||||
\returns ::NC_ERANGE Data convertion went out of range.
|
||||
\returns ::NC_ERANGE Data conversion went out of range.
|
||||
|
||||
<h1>Example</h1>
|
||||
|
||||
@ -107,7 +107,7 @@ function works with any type of data, including user defined types.
|
||||
|
||||
\note The netCDF library reads all attributes into memory when the
|
||||
file is opened with nc_open(). Getting an attribute copies the value
|
||||
from the in-memory store, and does not incure any file I/O penalties.
|
||||
from the in-memory store, and does not incur any file I/O penalties.
|
||||
|
||||
\param ncid NetCDF or group ID, from a previous call to nc_open(),
|
||||
nc_create(), nc_def_grp(), or associated inquiry functions such as
|
||||
@ -132,7 +132,7 @@ the attribute.
|
||||
\returns ::NC_ENOTATT Can't find attribute.
|
||||
\returns ::NC_ECHAR Can't convert to or from NC_CHAR.
|
||||
\returns ::NC_ENOMEM Out of memory.
|
||||
\returns ::NC_ERANGE Data convertion went out of range.
|
||||
\returns ::NC_ERANGE Data conversion went out of range.
|
||||
|
||||
<h1>Example</h1>
|
||||
|
||||
@ -353,7 +353,7 @@ the attribute.
|
||||
\returns ::NC_ENOTATT Can't find attribute.
|
||||
\returns ::NC_ECHAR Can't convert to or from NC_CHAR.
|
||||
\returns ::NC_ENOMEM Out of memory.
|
||||
\returns ::NC_ERANGE Data convertion went out of range.
|
||||
\returns ::NC_ERANGE Data conversion went out of range.
|
||||
|
||||
\section nc_get_att_string_example Example
|
||||
|
||||
|
@ -456,7 +456,7 @@ nc_create(const char *path, int cmode, int *ncidp)
|
||||
|
||||
/**
|
||||
* Create a netCDF file with some extra parameters controlling classic
|
||||
* file cacheing.
|
||||
* file caching.
|
||||
*
|
||||
* Like nc_create(), this function creates a netCDF file.
|
||||
*
|
||||
|
@ -157,7 +157,7 @@ NC_RO_rename_var(int ncid, int varid, const char *name)
|
||||
*
|
||||
* @param ncid File ID.
|
||||
* @param varid Variable ID.
|
||||
* @param startp Array of start indicies.
|
||||
* @param startp Array of start indices.
|
||||
* @param countp Array of counts.
|
||||
* @param op pointer that gets the data.
|
||||
* @param memtype The type of these data in memory.
|
||||
|
@ -471,7 +471,7 @@ nctypelen(nc_type type)
|
||||
|
||||
/** \internal
|
||||
\ingroup variables
|
||||
Find the length of a type. Redunant over nctypelen() above. */
|
||||
Find the length of a type. Redundant over nctypelen() above. */
|
||||
size_t
|
||||
NC_atomictypelen(nc_type xtype)
|
||||
{
|
||||
@ -769,7 +769,7 @@ nc_free_string(size_t len, char **data)
|
||||
* or any functions which writes data to the file.
|
||||
*
|
||||
* Deflation and shuffline require chunked data. If this function is
|
||||
* called on a variable with contigious data, then the data is changed
|
||||
* called on a variable with contiguous data, then the data is changed
|
||||
* to chunked data, with default chunksizes. Use nc_def_var_chunking()
|
||||
* to tune performance with user-defined chunksizes.
|
||||
*
|
||||
@ -871,7 +871,7 @@ nc_def_var_deflate(int ncid, int varid, int shuffle, int deflate, int deflate_le
|
||||
* or any functions which writes data to the file.
|
||||
*
|
||||
* Checksums require chunked data. If this function is called on a
|
||||
* variable with contigious data, then the data is changed to chunked
|
||||
* variable with contiguous data, then the data is changed to chunked
|
||||
* data, with default chunksizes. Use nc_def_var_chunking() to tune
|
||||
* performance with user-defined chunksizes.
|
||||
*
|
||||
|
@ -30,7 +30,7 @@ struct GETodometer {
|
||||
*
|
||||
* @param odom Pointer to odometer.
|
||||
* @param rank
|
||||
* @param start Start indicies.
|
||||
* @param start Start indices.
|
||||
* @param edges Counts.
|
||||
* @param stride Strides.
|
||||
*
|
||||
|
@ -274,7 +274,7 @@ function will write a 1 if the deflate filter is turned on for this
|
||||
variable, and a 0 otherwise. \ref ignored_if_null.
|
||||
|
||||
\param deflate_levelp If the deflate filter is in use for this
|
||||
variable, the deflate_level will be writen here. \ref ignored_if_null.
|
||||
variable, the deflate_level will be written here. \ref ignored_if_null.
|
||||
|
||||
\returns ::NC_NOERR No error.
|
||||
\returns ::NC_ENOTNC4 Not a netCDF-4 file.
|
||||
|
@ -23,7 +23,7 @@ struct PUTodometer {
|
||||
*
|
||||
* @param odom Pointer to odometer.
|
||||
* @param rank
|
||||
* @param start Start indicies.
|
||||
* @param start Start indices.
|
||||
* @param edges Counts.
|
||||
* @param stride Strides.
|
||||
*
|
||||
|
@ -134,7 +134,7 @@ Fortran APIs.
|
||||
\param ncid \ref ncid
|
||||
\param typeid1 Typeid of the VLEN.
|
||||
\param vlen_element Pointer to the element of the VLEN.
|
||||
\param len Lenth of the VLEN element.
|
||||
\param len Length of the VLEN element.
|
||||
\param data VLEN data.
|
||||
|
||||
\returns ::NC_NOERR No error.
|
||||
@ -163,7 +163,7 @@ Fortran APIs.
|
||||
\param ncid \ref ncid
|
||||
\param typeid1 Typeid of the VLEN.
|
||||
\param vlen_element Pointer to the element of the VLEN.
|
||||
\param len Lenth of the VLEN element.
|
||||
\param len Length of the VLEN element.
|
||||
\param data VLEN data.
|
||||
|
||||
\returns ::NC_NOERR No error.
|
||||
|
@ -20,7 +20,7 @@
|
||||
*
|
||||
* @param ncid File ID.
|
||||
* @param varid Variable ID.
|
||||
* @param startp Array of start indicies.
|
||||
* @param startp Array of start indices.
|
||||
* @param countp Array of counts.
|
||||
* @param ip pointer that gets the data.
|
||||
* @param memtype The type of these data after it is read into memory.
|
||||
|
@ -834,7 +834,7 @@ void driver2()
|
||||
{
|
||||
for (j=0; j<8; ++j) /*------------------------ for each input bit, */
|
||||
{
|
||||
for (m=1; m<8; ++m) /*------------ for serveral possible initvals, */
|
||||
for (m=1; m<8; ++m) /*------------ for several possible initvals, */
|
||||
{
|
||||
for (l=0; l<HASHSTATE; ++l)
|
||||
e[l]=f[l]=g[l]=h[l]=x[l]=y[l]=~((uint32_t)0);
|
||||
|
@ -510,7 +510,7 @@ ncio_px_rel(ncio *const nciop, off_t offset, int rflags)
|
||||
* The blkextent can't be more than twice the pxp->blksz. That's
|
||||
because the pxp->blksize is the sizehint, and in ncio_px_init2 the
|
||||
buffer (pointed to by pxp->bf-base) is allocated with 2 *
|
||||
*sizehintp. This is checked (unneccesarily) more than once in
|
||||
*sizehintp. This is checked (unnecessarily) more than once in
|
||||
asserts.
|
||||
|
||||
* If this is called on a newly opened file, pxp->bf_offset will be
|
||||
@ -1722,7 +1722,7 @@ unwind_new:
|
||||
nciopp - pointer to pointer that will get address of newly created
|
||||
and inited ncio struct.
|
||||
|
||||
igetvpp - handle to pass back pointer to data from inital page
|
||||
igetvpp - handle to pass back pointer to data from initial page
|
||||
read, if this were ever used, which it isn't.
|
||||
*/
|
||||
int
|
||||
|
@ -647,7 +647,7 @@ set_par_access(NC_HDF5_FILE_INFO_T *h5, NC_VAR_INFO_T *var, hid_t xfer_plistid)
|
||||
* @param nc Pointer to the file NC struct.
|
||||
* @param ncid File ID.
|
||||
* @param varid Variable ID.
|
||||
* @param startp Array of start indicies.
|
||||
* @param startp Array of start indices.
|
||||
* @param countp Array of counts.
|
||||
* @param mem_nc_type The type of the data in memory.
|
||||
* @param is_long True only if NC_LONG is the memory type.
|
||||
@ -979,7 +979,7 @@ exit:
|
||||
* @param nc Pointer to the file NC struct.
|
||||
* @param ncid File ID.
|
||||
* @param varid Variable ID.
|
||||
* @param startp Array of start indicies.
|
||||
* @param startp Array of start indices.
|
||||
* @param countp Array of counts.
|
||||
* @param mem_nc_type The type of the data in memory. (Convert to this
|
||||
* type from file type.)
|
||||
@ -2965,7 +2965,7 @@ nc4_convert_type(const void *src, void *dest,
|
||||
*cp1++ = *cp++;
|
||||
break;
|
||||
default:
|
||||
LOG((0, "%s: Uknown destination type.", __func__));
|
||||
LOG((0, "%s: Unknown destination type.", __func__));
|
||||
}
|
||||
break;
|
||||
|
||||
@ -3932,7 +3932,7 @@ nc4_rec_match_dimscales(NC_GRP_INFO_T *grp)
|
||||
However, here that is incorrect because it will find the dimid 0 always
|
||||
(if any dimensions were defined). Except that when dimscale dimids have
|
||||
been defined, one or more of the values in var->dimids will have a
|
||||
legitmate value.
|
||||
legitimate value.
|
||||
The solution I choose is to modify nc4_var_list_add to initialize dimids to
|
||||
illegal values (-1). This is another example of the problems with dimscales.
|
||||
*/
|
||||
@ -4082,7 +4082,7 @@ nc4_rec_match_dimscales(NC_GRP_INFO_T *grp)
|
||||
*
|
||||
* @param h5 Pointer to HDF5 file info struct.
|
||||
* @param xtype NetCDF type ID.
|
||||
* @param len Pointer that gets lenght in bytes.
|
||||
* @param len Pointer that gets length in bytes.
|
||||
*
|
||||
* @returns NC_NOERR No error.
|
||||
* @returns NC_EBADTYPE Type not found
|
||||
|
@ -432,7 +432,7 @@ nc4_find_g_var_nc(NC *nc, int ncid, int varid,
|
||||
* @param grp Pointer to group info struct.
|
||||
* @param dimid Dimension ID to find.
|
||||
* @param dim Pointer that gets pointer to dim info if found.
|
||||
* @param dim_grp Pointer that gets pointer to group info of group that contians dimension.
|
||||
* @param dim_grp Pointer that gets pointer to group info of group that contains dimension.
|
||||
*
|
||||
* @return ::NC_NOERR No error.
|
||||
* @return ::NC_EBADDIM Dimension not found.
|
||||
@ -987,7 +987,7 @@ exit:
|
||||
|
||||
/**
|
||||
* @internal Add to the end of a group list. Can't use 0 as a
|
||||
* new_nc_grpid - it's reserverd for the root group.
|
||||
* new_nc_grpid - it's reserved for the root group.
|
||||
*
|
||||
* @param parent The parent group.
|
||||
* @param name Name of the group.
|
||||
@ -1828,11 +1828,11 @@ nc4_break_coord_var(NC_GRP_INFO_T *grp, NC_VAR_INFO_T *coord_var, NC_DIM_INFO_T
|
||||
*
|
||||
* Sometimes, during renames, or late creation of variables, an
|
||||
* existing, dimscale-only dataset must be removed. This means
|
||||
* detatching all variables that use the dataset, then closing and
|
||||
* detaching all variables that use the dataset, then closing and
|
||||
* unlinking it.
|
||||
*
|
||||
* @param grp The grp of the dimscale-only dataset to be deleted, or a
|
||||
* higher group in the heirarchy (ex. root group).
|
||||
* higher group in the hierarchy (ex. root group).
|
||||
* @param dimid id of the dimension
|
||||
* @param dim Pointer to the dim with the dimscale-only dataset to be
|
||||
* deleted.
|
||||
@ -2031,7 +2031,7 @@ nc_set_log_level(int new_level)
|
||||
nc4_hdf5_initialize();
|
||||
|
||||
/* If the user wants to completely turn off logging, turn off HDF5
|
||||
logging too. Now I truely can't think of what to do if this
|
||||
logging too. Now I truly can't think of what to do if this
|
||||
fails, so just ignore the return code. */
|
||||
if (new_level == NC_TURN_OFF_LOGGING)
|
||||
{
|
||||
|
@ -1656,7 +1656,7 @@ NC4_var_par_access(int ncid, int varid, int par_access)
|
||||
*
|
||||
* @param ncid File ID.
|
||||
* @param varid Variable ID.
|
||||
* @param startp Array of start indicies.
|
||||
* @param startp Array of start indices.
|
||||
* @param countp Array of counts.
|
||||
* @param op pointer that gets the data.
|
||||
* @param memtype The type of these data in memory.
|
||||
@ -1683,7 +1683,7 @@ NC4_put_vara(int ncid, int varid, const size_t *startp,
|
||||
*
|
||||
* @param ncid File ID.
|
||||
* @param varid Variable ID.
|
||||
* @param startp Array of start indicies.
|
||||
* @param startp Array of start indices.
|
||||
* @param countp Array of counts.
|
||||
* @param ip pointer that gets the data.
|
||||
* @param memtype The type of these data after it is read into memory.
|
||||
|
@ -7,7 +7,7 @@
|
||||
for consistency. Leaves the file around afterwards.
|
||||
|
||||
Based on a program to test the nasa look-alike program, so not the
|
||||
most appropropriate test. See ../nctest for a complete spec test.
|
||||
most appropriate test. See ../nctest for a complete spec test.
|
||||
*/
|
||||
|
||||
#define REDEF
|
||||
|
@ -7,7 +7,7 @@
|
||||
for consistency. Leaves the file around afterwards.
|
||||
|
||||
Based on a program to test the nasa look-alike program, so not the
|
||||
most appropropriate test. See ../nctest for a complete spec test.
|
||||
most appropriate test. See ../nctest for a complete spec test.
|
||||
|
||||
$Id: t_nc.c 2792 2014-10-27 06:02:59Z wkliao $ */
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
* It is used to test if netCDF can correctly calculate the file offsets
|
||||
* for the two new variables, in particular for files that align the
|
||||
* fix-size variables to a boundary larger than 4 bytes, for instance
|
||||
* a file created by PnetCDF with defaut alignment of 512 bytes.
|
||||
* a file created by PnetCDF with default alignment of 512 bytes.
|
||||
*
|
||||
* This program should run after tst_pnetcdf.c and takes the output file
|
||||
* from tst_pnetcdf.c as input on the command-line.
|
||||
|
@ -183,7 +183,7 @@ main(int argc, char **argv)
|
||||
if (nc_put_att_ulonglong(ncid, NC_GLOBAL, ATT_UINT64_NAME, NC_UINT64, ATT_LEN,
|
||||
ulonglong_out) != NC_ESTRICTNC3) ERR;
|
||||
/* But it's OK to put classic types like NC_INT converted from
|
||||
* supported C types, though there may be out-of-range errrors
|
||||
* supported C types, though there may be out-of-range errors
|
||||
* for some values */
|
||||
if (nc_put_att_uint(ncid, NC_GLOBAL, ATT_INT_NAME, NC_INT, ATT_LEN,
|
||||
uint_out) != NC_ERANGE) ERR;
|
||||
|
@ -31,7 +31,7 @@ int main() {
|
||||
|
||||
printf("Creating global attribute with nc_put_att_text...");
|
||||
res = nc_put_att_text(dataset_id, NC_GLOBAL, "foo", 3, "bar");
|
||||
printf("Succes\n");
|
||||
printf("Success\n");
|
||||
|
||||
printf("Overwriting global attribute with nc_put_att_string...");
|
||||
res = nc_put_att_string(dataset_id, NC_GLOBAL, "foo", 1, attstring);
|
||||
|
@ -276,7 +276,7 @@ main(int argc, char **argv)
|
||||
printf("Return code is '%s', expected NC_BADCHUNK",nc_strerror(stat));
|
||||
ERR;
|
||||
}
|
||||
/* try agains with proper chunksize */
|
||||
/* try again with proper chunksize */
|
||||
chunks[0] = D_SMALL_LEN2;
|
||||
stat = nc_def_var_chunking(ncid, small_varid, NC_CHUNKED, chunks);
|
||||
if(stat != NC_NOERR) {
|
||||
|
@ -54,7 +54,7 @@ main(int argc, char **argv)
|
||||
|
||||
if (nc_close(ncid)) ERR;
|
||||
|
||||
/* Open the file and make sure nc_inq_dimids yeilds correct
|
||||
/* Open the file and make sure nc_inq_dimids yields correct
|
||||
* result. */
|
||||
if (nc_open(FILE_NAME, NC_NOWRITE, &ncid)) ERR;
|
||||
if (nc_inq_dimids(ncid, &ndims_in, dimids_in, 0)) ERR;
|
||||
@ -78,7 +78,7 @@ main(int argc, char **argv)
|
||||
if (nc_def_dim(ncid, LON_NAME, LON_LEN, &lon_dimid)) ERR;
|
||||
if (nc_close(ncid)) ERR;
|
||||
|
||||
/* Open the file and make sure nc_inq_dimids yeilds correct
|
||||
/* Open the file and make sure nc_inq_dimids yields correct
|
||||
* result. */
|
||||
if (nc_open(FILE_NAME, NC_NOWRITE, &ncid)) ERR;
|
||||
if (nc_inq_dimids(ncid, &ndims_in, dimids_in, 0)) ERR;
|
||||
|
@ -80,7 +80,7 @@ int main() {
|
||||
data2[i] = (float)i;
|
||||
}
|
||||
|
||||
printf("\t* Puting data in secondary variable:\tnc_put_vara().\n");
|
||||
printf("\t* Putting data in secondary variable:\tnc_put_vara().\n");
|
||||
if (nc_put_vara(ncid,varid2,startp2,countp2,data2)) ERR;
|
||||
free(data2);
|
||||
|
||||
@ -113,7 +113,7 @@ int main() {
|
||||
data[2].p = dat2;
|
||||
data[2].len = VLEN2;
|
||||
|
||||
printf("\t* Puting data in VLEN variable:\tnc_put_vara().\n");
|
||||
printf("\t* Putting data in VLEN variable:\tnc_put_vara().\n");
|
||||
stat = nc_put_vara(ncid,varid,startp,countp,data);
|
||||
if(stat) ERR;
|
||||
|
||||
@ -172,7 +172,7 @@ int main() {
|
||||
data2[i] = (float)i;
|
||||
}
|
||||
|
||||
printf("\t* Puting data in secondary variable:\tnc_put_vara().\n");
|
||||
printf("\t* Putting data in secondary variable:\tnc_put_vara().\n");
|
||||
if (nc_put_vara(ncid,varid2,startp2,countp2,data2)) ERR;
|
||||
free(data2);
|
||||
|
||||
@ -205,7 +205,7 @@ int main() {
|
||||
data[2].p = dat2;
|
||||
data[2].len = VLEN2;
|
||||
|
||||
printf("\t* Puting data in VLEN variable:\tnc_put_vara().\n");
|
||||
printf("\t* Putting data in VLEN variable:\tnc_put_vara().\n");
|
||||
stat = nc_put_vara(ncid,varid,startp,countp,data);
|
||||
if(stat) ERR;
|
||||
|
||||
|
@ -330,7 +330,7 @@ main(int argc, char **argv)
|
||||
if (nc_def_var(ncid, VAR_CHAR_NAME, NC_CHAR, 3, dimids, &char_varid)) ERR;
|
||||
if (nc_close(ncid)) ERR;
|
||||
|
||||
/* Open the file and make sure nc_inq_varids yeilds correct
|
||||
/* Open the file and make sure nc_inq_varids yields correct
|
||||
* result. */
|
||||
if (nc_open(FILE_NAME, NC_NOWRITE, &ncid)) ERR;
|
||||
if (nc_inq_varids(ncid, &nvars_in, varids_in)) ERR;
|
||||
@ -350,7 +350,7 @@ main(int argc, char **argv)
|
||||
if (nc_def_dim(ncid, DIM2_NAME, DIM2_LEN, &dimids[1])) ERR;
|
||||
if (nc_def_dim(ncid, DIM3_NAME, DIM3_LEN, &dimids[2])) ERR;
|
||||
|
||||
/* These attempts will fail due to bad paramters. */
|
||||
/* These attempts will fail due to bad parameters. */
|
||||
if (nc_def_var(ncid + MILLION, VAR_BYTE_NAME, NC_BYTE, 2, dimids,
|
||||
&byte_varid) != NC_EBADID) ERR;
|
||||
if (nc_def_var(ncid + TEST_VAL_42, VAR_BYTE_NAME, NC_BYTE, 2, dimids,
|
||||
|
@ -533,7 +533,7 @@ main(int argc, char **argv)
|
||||
/* THis also works, pointlessly. */
|
||||
if (nc_inq_varid(ncid, "temp", NULL)) ERR;
|
||||
|
||||
/* These won't work due to bad paramters. */
|
||||
/* These won't work due to bad parameters. */
|
||||
if (nc_rename_var(ncid + MILLION, wind_id, "wind") != NC_EBADID) ERR;
|
||||
if (nc_rename_var(ncid, wind_id + TEST_VAL_42, "wind") != NC_ENOTVAR) ERR;
|
||||
if (nc_rename_var(ncid, -TEST_VAL_42, "wind") != NC_ENOTVAR) ERR;
|
||||
@ -865,7 +865,7 @@ main(int argc, char **argv)
|
||||
if (data[i] != data_in[i])
|
||||
ERR_RET;
|
||||
|
||||
/* These will not work due to bad paramters. */
|
||||
/* These will not work due to bad parameters. */
|
||||
if (nc_inq_var_chunking_ints(ncid + MILLION, 0, &storage_in,
|
||||
chunksize_int_in) != NC_EBADID) ERR;
|
||||
if (nc_inq_var_chunking_ints(ncid + TEST_VAL_42, 0, &storage_in,
|
||||
@ -1396,7 +1396,7 @@ main(int argc, char **argv)
|
||||
if (nc_def_dim(ncid, DIM9_NAME, DIM9_LEN, &dimids[0])) ERR;
|
||||
if (nc_def_var(ncid, VAR_NAME9, NC_INT, NDIMS1, dimids, &varid2)) ERR;
|
||||
|
||||
/* These will fail due to bad paramters. */
|
||||
/* These will fail due to bad parameters. */
|
||||
if (nc_def_var_deflate(ncid, varid2, 0, 1,
|
||||
NC_MIN_DEFLATE_LEVEL - 1) != NC_EINVAL) ERR;
|
||||
if (nc_def_var_deflate(ncid, varid2, 0, 1,
|
||||
|
@ -131,16 +131,16 @@ variables:
|
||||
Drifters.sst:Description = "Sea Surface Temperature (SST)" ;
|
||||
Drifters.sst:units = "Degrees C" ;
|
||||
double Drifters.sub_wait(Drifters) ;
|
||||
Drifters.sub_wait:Description = "Average time that bouy software waited for bouy to come to surface before measuring irradiance. (ASW)" ;
|
||||
Drifters.sub_wait:Description = "Average time that buoy software waited for buoy to come to surface before measuring irradiance. (ASW)" ;
|
||||
Drifters.sub_wait:units = "minutes" ;
|
||||
double Drifters.surf_volts(Drifters) ;
|
||||
Drifters.surf_volts:Description = "Averaged amplified pressure sensor voltage as measured during the surface check function. (AV)" ;
|
||||
Drifters.surf_volts:units = "volts" ;
|
||||
double Drifters.surface_average(Drifters) ;
|
||||
Drifters.surface_average:Description = "Average duration of time that the bouy remained on the surface during the surface check function. (AST)" ;
|
||||
Drifters.surface_average:Description = "Average duration of time that the buoy remained on the surface during the surface check function. (AST)" ;
|
||||
Drifters.surface_average:units = "minutes" ;
|
||||
double Drifters.surface_percent(Drifters) ;
|
||||
Drifters.surface_percent:Description = "Percentage of time that the bouy was on the surface during the surface check function. (PTOS)" ;
|
||||
Drifters.surface_percent:Description = "Percentage of time that the buoy was on the surface during the surface check function. (PTOS)" ;
|
||||
Drifters.surface_percent:units = "percentage" ;
|
||||
double Drifters.time(Drifters) ;
|
||||
Drifters.time:Description = "Time data sample was received by ARGOS system" ;
|
||||
|
@ -131,16 +131,16 @@ variables:
|
||||
Drifters.sst:Description = "Sea Surface Temperature (SST)" ;
|
||||
Drifters.sst:units = "Degrees C" ;
|
||||
double Drifters.sub_wait(Drifters) ;
|
||||
Drifters.sub_wait:Description = "Average time that bouy software waited for bouy to come to surface before measuring irradiance. (ASW)" ;
|
||||
Drifters.sub_wait:Description = "Average time that buoy software waited for buoy to come to surface before measuring irradiance. (ASW)" ;
|
||||
Drifters.sub_wait:units = "minutes" ;
|
||||
double Drifters.surf_volts(Drifters) ;
|
||||
Drifters.surf_volts:Description = "Averaged amplified pressure sensor voltage as measured during the surface check function. (AV)" ;
|
||||
Drifters.surf_volts:units = "volts" ;
|
||||
double Drifters.surface_average(Drifters) ;
|
||||
Drifters.surface_average:Description = "Average duration of time that the bouy remained on the surface during the surface check function. (AST)" ;
|
||||
Drifters.surface_average:Description = "Average duration of time that the buoy remained on the surface during the surface check function. (AST)" ;
|
||||
Drifters.surface_average:units = "minutes" ;
|
||||
double Drifters.surface_percent(Drifters) ;
|
||||
Drifters.surface_percent:Description = "Percentage of time that the bouy was on the surface during the surface check function. (PTOS)" ;
|
||||
Drifters.surface_percent:Description = "Percentage of time that the buoy was on the surface during the surface check function. (PTOS)" ;
|
||||
Drifters.surface_percent:units = "percentage" ;
|
||||
double Drifters.time(Drifters) ;
|
||||
Drifters.time:Description = "Time data sample was received by ARGOS system" ;
|
||||
|
@ -174,7 +174,7 @@ Attributes {
|
||||
String units "Degrees C";
|
||||
}
|
||||
sub_wait {
|
||||
String Description "Average time that bouy software waited for bouy to come to surface before measuring irradiance. (ASW)";
|
||||
String Description "Average time that buoy software waited for buoy to come to surface before measuring irradiance. (ASW)";
|
||||
String units "minutes";
|
||||
}
|
||||
surf_volts {
|
||||
@ -182,11 +182,11 @@ Attributes {
|
||||
String units "volts";
|
||||
}
|
||||
surface_average {
|
||||
String Description "Average duration of time that the bouy remained on the surface during the surface check function. (AST)";
|
||||
String Description "Average duration of time that the buoy remained on the surface during the surface check function. (AST)";
|
||||
String units "minutes";
|
||||
}
|
||||
surface_percent {
|
||||
String Description "Percentage of time that the bouy was on the surface during the surface check function. (PTOS)";
|
||||
String Description "Percentage of time that the buoy was on the surface during the surface check function. (PTOS)";
|
||||
String units "percentage";
|
||||
}
|
||||
time {
|
||||
|
@ -82,7 +82,7 @@ COLUMBIA="http://iridl.ldeo.columbia.edu/SOURCES/.Models/.NMME/.NASA-GMAO/.MONTH
|
||||
# Known to fail
|
||||
|
||||
XFAILTESTS=
|
||||
# Supress some tests if not windows platform.
|
||||
# Suppress some tests if not windows platform.
|
||||
if test "x$platform" == xmingw ; then
|
||||
XFAILTESTS="$XFAILTESTS test.67"
|
||||
fi
|
||||
|
@ -243,7 +243,7 @@ INSTALL(TARGETS ncdump RUNTIME DESTINATION bin COMPONENT utilities)
|
||||
INSTALL(TARGETS nccopy RUNTIME DESTINATION bin COMPONENT utilities)
|
||||
SET(MAN_FILES nccopy.1 ncdump.1)
|
||||
|
||||
# Note, te L512.bin file is file containing exactly 512 bytes each of value 0.
|
||||
# Note, the L512.bin file is file containing exactly 512 bytes each of value 0.
|
||||
# It is used for creating hdf5 files with varying offsets for testing.
|
||||
|
||||
FILE(GLOB COPY_FILES ${CMAKE_BINARY_DIR}/ncgen/*.nc ${CMAKE_BINARY_DIR}/nc_test4/*.nc ${CMAKE_CURRENT_SOURCE_DIR}/*.ncml ${CMAKE_CURRENT_SOURCE_DIR}/*.nc ${CMAKE_CURRENT_SOURCE_DIR}/*.cdl ${CMAKE_CURRENT_SOURCE_DIR}/*.sh ${CMAKE_CURRENT_SOURCE_DIR}/*.1 ${CMAKE_CURRENT_SOURCE_DIR}/L512.bin)
|
||||
|
@ -928,7 +928,7 @@ variables:
|
||||
one_dmn_rec_var_unsorted__FillValue:_FillValue = 1.0e36f;
|
||||
|
||||
float one_dmn_rec_var_mss_val_arr(time);
|
||||
one_dmn_rec_var_mss_val_arr:long_name = "One dimensional record variable with missing data indicated by a _FillValue attribute that is an array. This can be tested with ncrcat. 20120905: ncgen chokes on _FillValue arrays and produces this error: _FillValue: must be a single (possibly compound) value. Deprecate the array for normal use since it prevents ncgen from completing. Uncommment following line when testing for compatibility with software changes.";
|
||||
one_dmn_rec_var_mss_val_arr:long_name = "One dimensional record variable with missing data indicated by a _FillValue attribute that is an array. This can be tested with ncrcat. 20120905: ncgen chokes on _FillValue arrays and produces this error: _FillValue: must be a single (possibly compound) value. Deprecate the array for normal use since it prevents ncgen from completing. Uncomment following line when testing for compatibility with software changes.";
|
||||
// one_dmn_rec_var_mss_val_arr:_FillValue = 1.0f,2.0f,3.0f;
|
||||
one_dmn_rec_var_mss_val_arr:_FillValue = 1.0f;
|
||||
|
||||
|
@ -226,7 +226,7 @@ typedef struct Symbol { /* symbol table entry*/
|
||||
Attrinfo att;
|
||||
Diminfo dim;
|
||||
Groupinfo grp;
|
||||
Reference ref; /* symbol is really a referene to another symbol*/
|
||||
Reference ref; /* symbol is really a reference to another symbol*/
|
||||
/* Misc pieces of info*/
|
||||
int lineno; /* at point of creation*/
|
||||
int touched; /* for sorting*/
|
||||
|
@ -647,13 +647,13 @@ variables:
|
||||
FLUTC:_ChunkSizes = 1, 96, 144 ;
|
||||
double FREQSH(time, lat, lon) ;
|
||||
FREQSH:units = "fraction" ;
|
||||
FREQSH:long_name = "Fractional occurance of shallow convection" ;
|
||||
FREQSH:long_name = "Fractional occurrence of shallow convection" ;
|
||||
FREQSH:cell_methods = "time: mean" ;
|
||||
FREQSH:_Storage = "chunked" ;
|
||||
FREQSH:_ChunkSizes = 1, 96, 144 ;
|
||||
double FREQZM(time, lat, lon) ;
|
||||
FREQZM:units = "fraction" ;
|
||||
FREQZM:long_name = "Fractional occurance of ZM convection" ;
|
||||
FREQZM:long_name = "Fractional occurrence of ZM convection" ;
|
||||
FREQZM:cell_methods = "time: mean" ;
|
||||
FREQZM:_Storage = "chunked" ;
|
||||
FREQZM:_ChunkSizes = 1, 96, 144 ;
|
||||
@ -1268,7 +1268,7 @@ variables:
|
||||
SO2:_ChunkSizes = 1, 30, 96, 144 ;
|
||||
double SO2_CLXF(time, lat, lon) ;
|
||||
SO2_CLXF:units = "molec/cm2/s" ;
|
||||
SO2_CLXF:long_name = "vertically intergrated external forcing for SO2" ;
|
||||
SO2_CLXF:long_name = "vertically integrated external forcing for SO2" ;
|
||||
SO2_CLXF:cell_methods = "time: mean" ;
|
||||
SO2_CLXF:_Storage = "chunked" ;
|
||||
SO2_CLXF:_ChunkSizes = 1, 96, 144 ;
|
||||
@ -1638,7 +1638,7 @@ variables:
|
||||
bc_a1TBF:_ChunkSizes = 1, 96, 144 ;
|
||||
double bc_a1_CLXF(time, lat, lon) ;
|
||||
bc_a1_CLXF:units = "molec/cm2/s" ;
|
||||
bc_a1_CLXF:long_name = "vertically intergrated external forcing for bc_a1" ;
|
||||
bc_a1_CLXF:long_name = "vertically integrated external forcing for bc_a1" ;
|
||||
bc_a1_CLXF:cell_methods = "time: mean" ;
|
||||
bc_a1_CLXF:_Storage = "chunked" ;
|
||||
bc_a1_CLXF:_ChunkSizes = 1, 96, 144 ;
|
||||
@ -2458,7 +2458,7 @@ variables:
|
||||
num_a1TBF:_ChunkSizes = 1, 96, 144 ;
|
||||
double num_a1_CLXF(time, lat, lon) ;
|
||||
num_a1_CLXF:units = "molec/cm2/s" ;
|
||||
num_a1_CLXF:long_name = "vertically intergrated external forcing for num_a1" ;
|
||||
num_a1_CLXF:long_name = "vertically integrated external forcing for num_a1" ;
|
||||
num_a1_CLXF:cell_methods = "time: mean" ;
|
||||
num_a1_CLXF:_Storage = "chunked" ;
|
||||
num_a1_CLXF:_ChunkSizes = 1, 96, 144 ;
|
||||
@ -2560,7 +2560,7 @@ variables:
|
||||
num_a2TBF:_ChunkSizes = 1, 96, 144 ;
|
||||
double num_a2_CLXF(time, lat, lon) ;
|
||||
num_a2_CLXF:units = "molec/cm2/s" ;
|
||||
num_a2_CLXF:long_name = "vertically intergrated external forcing for num_a2" ;
|
||||
num_a2_CLXF:long_name = "vertically integrated external forcing for num_a2" ;
|
||||
num_a2_CLXF:cell_methods = "time: mean" ;
|
||||
num_a2_CLXF:_Storage = "chunked" ;
|
||||
num_a2_CLXF:_ChunkSizes = 1, 96, 144 ;
|
||||
@ -2968,7 +2968,7 @@ variables:
|
||||
pom_a1TBF:_ChunkSizes = 1, 96, 144 ;
|
||||
double pom_a1_CLXF(time, lat, lon) ;
|
||||
pom_a1_CLXF:units = "molec/cm2/s" ;
|
||||
pom_a1_CLXF:long_name = "vertically intergrated external forcing for pom_a1" ;
|
||||
pom_a1_CLXF:long_name = "vertically integrated external forcing for pom_a1" ;
|
||||
pom_a1_CLXF:cell_methods = "time: mean" ;
|
||||
pom_a1_CLXF:_Storage = "chunked" ;
|
||||
pom_a1_CLXF:_ChunkSizes = 1, 96, 144 ;
|
||||
@ -3088,7 +3088,7 @@ variables:
|
||||
so4_a1TBF:_ChunkSizes = 1, 96, 144 ;
|
||||
double so4_a1_CLXF(time, lat, lon) ;
|
||||
so4_a1_CLXF:units = "molec/cm2/s" ;
|
||||
so4_a1_CLXF:long_name = "vertically intergrated external forcing for so4_a1" ;
|
||||
so4_a1_CLXF:long_name = "vertically integrated external forcing for so4_a1" ;
|
||||
so4_a1_CLXF:cell_methods = "time: mean" ;
|
||||
so4_a1_CLXF:_Storage = "chunked" ;
|
||||
so4_a1_CLXF:_ChunkSizes = 1, 96, 144 ;
|
||||
@ -3184,7 +3184,7 @@ variables:
|
||||
so4_a2TBF:_ChunkSizes = 1, 96, 144 ;
|
||||
double so4_a2_CLXF(time, lat, lon) ;
|
||||
so4_a2_CLXF:units = "molec/cm2/s" ;
|
||||
so4_a2_CLXF:long_name = "vertically intergrated external forcing for so4_a2" ;
|
||||
so4_a2_CLXF:long_name = "vertically integrated external forcing for so4_a2" ;
|
||||
so4_a2_CLXF:cell_methods = "time: mean" ;
|
||||
so4_a2_CLXF:_Storage = "chunked" ;
|
||||
so4_a2_CLXF:_ChunkSizes = 1, 96, 144 ;
|
||||
|
@ -127,7 +127,7 @@ test_ncopen(path)
|
||||
* Open a non-netCDF file. Don't use "Makefile.in" because that
|
||||
* name is munged to something else by PC/NFS and, consequently,
|
||||
* won't exist in a cross-mounted directory. Also don't use a
|
||||
* source file, becase that will break building in another
|
||||
* source file, because that will break building in another
|
||||
* directory, and consequently, make dist. An object file is not
|
||||
* safe, because sometimes it's a .o and sometimes a .obj. So just
|
||||
* create a file!
|
||||
|
@ -128,7 +128,7 @@ specifies the password for accessing the HTTP.SSL.CERTIFICAT/HTTP.SSL.key file.
|
||||
<p>
|
||||
HTTP.SSL.CAPATH
|
||||
specifies the path to a directory containing
|
||||
trusted certificates for validating server sertificates.
|
||||
trusted certificates for validating server certificates.
|
||||
<p>
|
||||
HTTP.SSL.VALIDATE
|
||||
is a boolean (1/0) value that if true (1)
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
#undef URLCVT /* NEVER turn this on */
|
||||
|
||||
/* Do we %xx decode all or part of a DAP Identifer: see dapdecode() */
|
||||
/* Do we %xx decode all or part of a DAP Identifier: see dapdecode() */
|
||||
#define DECODE_PARTIAL
|
||||
|
||||
#define DAP2ENCODE
|
||||
|
2
oc2/oc.c
2
oc2/oc.c
@ -1035,7 +1035,7 @@ oc_data_gridmap(OCobject link, OCobject grid, size_t index, OCobject* mapdatap)
|
||||
|
||||
/*!
|
||||
Obtain the data instance corresponding to the container
|
||||
of a specied instance object.
|
||||
of a specified instance object.
|
||||
|
||||
\param[in] link The link through which the server is accessed.
|
||||
\param[in] datanode The data instance of interest
|
||||
|
@ -128,7 +128,7 @@ ocfetchurl(CURL* curl, const char* url, NCbytes* buf, long* filetime)
|
||||
/* Null terminate the buffer*/
|
||||
len = ncbyteslength(buf);
|
||||
ncbytesappend(buf, '\0');
|
||||
ncbytessetlength(buf, len); /* dont count null in buffer size*/
|
||||
ncbytessetlength(buf, len); /* don't count null in buffer size*/
|
||||
#ifdef OCDEBUG
|
||||
nclog(NCLOGNOTE,"buffersize: %lu bytes",(off_t)ncbyteslength(buf));
|
||||
#endif
|
||||
|
@ -595,7 +595,7 @@ dataError(XXDR* xdrs, OCstate* state)
|
||||
off_t ckp=0,avail=0;
|
||||
int i=0;
|
||||
char* errmsg = NULL;
|
||||
char errortext[16]; /* bigger thant |ERROR_TAG|*/
|
||||
char errortext[16]; /* bigger than |ERROR_TAG|*/
|
||||
avail = xxdr_getavail(xdrs);
|
||||
if(avail < strlen(ERROR_TAG))
|
||||
goto done; /* assume it is ok */
|
||||
|
@ -218,7 +218,7 @@ xxdr_free(XXDR* xdr)
|
||||
|
||||
/***********************************/
|
||||
|
||||
/* Skip exacly "len" bytes in the input; any rounding must be done by the caller*/
|
||||
/* Skip exactly "len" bytes in the input; any rounding must be done by the caller*/
|
||||
int
|
||||
xxdr_skip(XXDR* xdrs, off_t len)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user