#include <netcdf.h>#include <nc_tests.h>Include dependency graph for tst_converts2.c:

Go to the source code of this file.
Defines | |
| #define | FILE_NAME "tst_converts2.nc" |
| #define | VAR_NAME "Monkey" |
Functions | |
| int | main (int argc, char **argv) |
|
|
Definition at line 13 of file tst_converts2.c. |
|
|
Definition at line 14 of file tst_converts2.c. |
|
||||||||||||
|
Definition at line 18 of file tst_converts2.c. References ERR, FILE_NAME, FINAL_RESULTS, natts, NC_BYTE, nc_close, nc_create, nc_def_var, NC_ERANGE, nc_get_var_double, nc_get_var_int, nc_get_var_long, nc_get_var_longlong(), nc_get_var_schar, nc_get_var_short, nc_get_var_uchar, nc_get_var_uint(), nc_get_var_ulonglong(), nc_get_var_ushort(), nc_inq_var, NC_INT, NC_MAX_NAME, NC_NETCDF4, NC_NOWRITE, nc_open, nc_put_var_int, nc_put_var_schar, ncid, ndims, SUMMARIZE_ERR, VAR_NAME, var_name, var_type, and X_INT_MAX. 00019 { 00020 int ncid, varid; 00021 signed char schar_in, schar = -2; 00022 char var_name[NC_MAX_NAME+1]; 00023 int ndims, natts, int_in; 00024 long long_in; 00025 nc_type var_type; 00026 00027 printf("\n*** Testing more netcdf-4 data conversion.\n"); 00028 /*nc_set_log_level(5);*/ 00029 00030 printf ("*** Testing NC_BYTE converstions..."); 00031 { 00032 /* Write a scalar NC_BYTE with value -2. */ 00033 if (nc_create(FILE_NAME, NC_NETCDF4, &ncid)) ERR; 00034 if (nc_def_var(ncid, VAR_NAME, NC_BYTE, 0, NULL, &varid)) ERR; 00035 if (nc_put_var_schar(ncid, varid, &schar)) ERR; 00036 if (nc_close(ncid)) ERR; 00037 00038 /* Now open the file and check it. */ 00039 if (nc_open(FILE_NAME, NC_NOWRITE, &ncid)) ERR; 00040 if (nc_inq_var(ncid, 0, var_name, &var_type, &ndims, NULL, &natts)) ERR; 00041 if (strcmp(var_name, VAR_NAME) || natts !=0 || ndims != 0 || 00042 var_type != NC_BYTE) ERR; 00043 if (nc_get_var_schar(ncid, varid, &schar_in)) ERR; 00044 if (schar_in != schar) ERR; 00045 if (nc_get_var_int(ncid, varid, &int_in)) ERR; 00046 if (int_in != schar) ERR; 00047 if (nc_get_var_long(ncid, varid, &long_in)) ERR; 00048 if (long_in != schar) ERR; 00049 if (nc_close(ncid)) ERR; 00050 } 00051 00052 SUMMARIZE_ERR; 00053 printf ("*** Testing MAX_INT converstions..."); 00054 { 00055 int ivalue = X_INT_MAX, ivalue_in; 00056 unsigned char uchar_in; 00057 unsigned int uivalue_in; 00058 short svalue_in; 00059 unsigned short usvalue_in; 00060 long long int64_in; 00061 unsigned long long uint64_in; 00062 double double_in; 00063 00064 /* Write a scalar NC_INT with value X_MAX_INT. */ 00065 if (nc_create(FILE_NAME, NC_NETCDF4, &ncid)) ERR; 00066 if (nc_def_var(ncid, VAR_NAME, NC_INT, 0, NULL, &varid)) ERR; 00067 if (nc_put_var_int(ncid, varid, &ivalue)) ERR; 00068 if (nc_close(ncid)) ERR; 00069 00070 /* Now open the file and check it. */ 00071 if (nc_open(FILE_NAME, NC_NOWRITE, &ncid)) ERR; 00072 if (nc_inq_var(ncid, 0, var_name, &var_type, &ndims, NULL, &natts)) ERR; 00073 if (strcmp(var_name, VAR_NAME) || natts !=0 || ndims != 0 || 00074 var_type != NC_INT) ERR; 00075 if (nc_get_var_schar(ncid, varid, &schar_in) != NC_ERANGE) ERR; 00076 if (schar_in != (signed char)ivalue) ERR; 00077 if (nc_get_var_uchar(ncid, varid, &uchar_in) != NC_ERANGE) ERR; 00078 if (uchar_in != (unsigned char)ivalue) ERR; 00079 if (nc_get_var_short(ncid, varid, &svalue_in) != NC_ERANGE) ERR; 00080 if (svalue_in != (short)ivalue) ERR; 00081 if (nc_get_var_ushort(ncid, varid, &usvalue_in) != NC_ERANGE) ERR; 00082 if (usvalue_in != (unsigned short)ivalue) ERR; 00083 if (nc_get_var_int(ncid, varid, &ivalue_in)) ERR; 00084 if (ivalue_in != ivalue) ERR; 00085 if (nc_get_var_uint(ncid, varid, &uivalue_in)) ERR; 00086 if (uivalue_in != (unsigned int)ivalue) ERR; 00087 if (nc_get_var_long(ncid, varid, &long_in)) ERR; 00088 if (long_in != ivalue) ERR; 00089 if (nc_get_var_longlong(ncid, varid, &int64_in)) ERR; 00090 if (int64_in != ivalue) ERR; 00091 if (nc_get_var_ulonglong(ncid, varid, &uint64_in)) ERR; 00092 if (uint64_in != ivalue) ERR; 00093 /* if (nc_get_var_float(ncid, varid, &float_in)) ERR; 00094 f2 = (float)ivalue; 00095 if (float_in != f2) ERR;*/ 00096 if (nc_get_var_double(ncid, varid, &double_in)) ERR; 00097 if (double_in != (double)ivalue) ERR; 00098 if (nc_close(ncid)) ERR; 00099 } 00100 SUMMARIZE_ERR; 00101 00102 FINAL_RESULTS; 00103 }
|
1.4.4