1 /* This is part of the netCDF package. Copyright 2010 University
2    Corporation for Atmospheric Research/Unidata.  See COPYRIGHT file for
3    conditions of use. See www.unidata.ucar.edu for more info.
4 
5    Create a compressible test file for nccopy to compress.
6 
7    Russ Rew, Ward Fisher, Dennis Heimbigner
8 */
9 
10 #include "config.h"
11 #include <nc_tests.h>
12 #include "err_macros.h"
13 #include <stdlib.h>
14 #include <netcdf.h>
15 
16 #define FILENAME "tst_inflated.nc"
17 #define FILENAME2 "tst_inflated4.nc"
18 #define DIM_NAME "dim1"
19 #define DIM1_LEN 10000
20 #define VAR1_RANK 1
21 #define VAR_NAME "var"
22 
23 int
main(int argc,char ** argv)24 main(int argc, char **argv) { /* create a compressible file, for testing */
25 
26     int ncid;
27     int dimid, varid;
28     int var1_dims[VAR1_RANK];	/* variable shapes */
29     int var1_data[DIM1_LEN];	/* data to write */
30     int i;
31 
32     printf("*** Creating compressible test files %s, %s...", FILENAME, FILENAME2);
33     if (nc_create(FILENAME, NC_CLOBBER, &ncid)) ERR;
34     if (nc_def_dim(ncid, "dim1", DIM1_LEN, &dimid)) ERR;
35     var1_dims[0] = dimid;
36     if (nc_def_var(ncid, "var1", NC_INT, VAR1_RANK, var1_dims, &varid)) ERR;
37     if (nc_enddef (ncid)) ERR;
38     for(i=0; i < DIM1_LEN; i++) {
39 	var1_data[i] = i;
40     }
41     if (nc_put_var(ncid, varid, var1_data)) ERR;
42     if (nc_close(ncid)) ERR;
43 
44     if (nc_create(FILENAME2, NC_CLOBBER|NC_NETCDF4, &ncid)) ERR;
45     if (nc_def_dim(ncid, "dim1", DIM1_LEN, &dimid)) ERR;
46     var1_dims[0] = dimid;
47     if (nc_def_var(ncid, "var1", NC_INT, VAR1_RANK, var1_dims, &varid)) ERR;
48     if (nc_enddef (ncid)) ERR;
49     for(i=0; i < DIM1_LEN; i++) {
50 	var1_data[i] = i;
51     }
52     if (nc_put_var(ncid, varid, var1_data)) ERR;
53     if (nc_close(ncid)) ERR;
54 
55     SUMMARIZE_ERR;
56     FINAL_RESULTS;
57 }
58