ncdf4a13/fortran/fort-lib.c File Reference

#include <stddef.h>
#include <errno.h>
#include "netcdf.h"
#include "ncfortran.h"
#include "fort-lib.h"

Include dependency graph for fort-lib.c:

Go to the source code of this file.

Functions

NF_INTEGER * c2f_dimids (int ncid, int varid, const int *cdimids, NF_INTEGER *fdimids)
int * f2c_dimids (int ndims, const NF_INTEGER *fdimids, int *cdimids)
size_t * f2c_coords (int ncid, int varid, const NF_INTEGER *fcoords, size_t *ccoords)
size_t * f2c_counts (int ncid, int varid, const NF_INTEGER *fcounts, size_t *ccounts)
ptrdiff_t * f2c_strides (int ncid, int varid, const NF_INTEGER *fstrides, ptrdiff_t *cstrides)
ptrdiff_t * f2c_maps (int ncid, int varid, const NF_INTEGER *fmaps, ptrdiff_t *cmaps)


Function Documentation

NF_INTEGER* c2f_dimids int  ncid,
int  varid,
const int *  cdimids,
NF_INTEGER *  fdimids
 

Definition at line 13 of file fort-lib.c.

References nc_inq_varndims, and ndims.

00014 {
00015     int i;
00016     int ndims;
00017 
00018     if (nc_inq_varndims(ncid, varid, &ndims) != 0)
00019         return NULL;
00020 
00021     for (i = 0; i < ndims; ++i)
00022         fdimids[ndims - 1 - i] = cdimids[i] + 1;
00023 
00024     return fdimids;
00025 }

size_t* f2c_coords int  ncid,
int  varid,
const NF_INTEGER *  fcoords,
size_t *  ccoords
 

Definition at line 47 of file fort-lib.c.

References nc_inq_varndims, and ndims.

00049 {
00050     int i;
00051     int ndims;
00052 
00053     if (nc_inq_varndims(ncid, varid, &ndims) != 0)
00054         return NULL;
00055 
00056     for (i = 0; i < ndims; ++i)
00057         ccoords[i] = fcoords[ndims - 1 - i] - 1;
00058 
00059     return ccoords;
00060 }

size_t* f2c_counts int  ncid,
int  varid,
const NF_INTEGER *  fcounts,
size_t *  ccounts
 

Definition at line 67 of file fort-lib.c.

References nc_inq_varndims, and ndims.

00069 {
00070     int i;
00071     int ndims;
00072 
00073     if (nc_inq_varndims(ncid, varid, &ndims) != 0)
00074         return NULL;
00075 
00076     for (i = 0; i < ndims; ++i)
00077         ccounts[i] = fcounts[ndims - 1 - i];
00078 
00079     return ccounts;
00080 }

int* f2c_dimids int  ndims,
const NF_INTEGER *  fdimids,
int *  cdimids
 

Definition at line 32 of file fort-lib.c.

00033 {
00034     int i;
00035 
00036     for (i = 0; i < ndims; ++i)
00037         cdimids[i] = fdimids[ndims - 1 - i] - 1;
00038 
00039     return cdimids;
00040 }

ptrdiff_t* f2c_maps int  ncid,
int  varid,
const NF_INTEGER *  fmaps,
ptrdiff_t *  cmaps
 

Definition at line 109 of file fort-lib.c.

References f2c_strides().

00110 {
00111     return f2c_strides(ncid, varid, fmaps, cmaps);
00112 }

ptrdiff_t* f2c_strides int  ncid,
int  varid,
const NF_INTEGER *  fstrides,
ptrdiff_t *  cstrides
 

Definition at line 89 of file fort-lib.c.

References nc_inq_varndims, and ndims.

Referenced by f2c_maps().

00091 {
00092     int i;
00093     int ndims;
00094 
00095     if (nc_inq_varndims(ncid, varid, &ndims) != 0)
00096         return NULL;
00097 
00098     for (i = 0; i < ndims; ++i)
00099         cstrides[i] = fstrides[ndims - 1 - i];
00100 
00101     return cstrides;
00102 }


Generated on Thu Mar 16 18:10:31 2006 for nco by  doxygen 1.4.4