netcdf-c/libncdap4/dispatch4.c
2010-06-03 13:24:43 +00:00

73 lines
1.5 KiB
C
Executable File

#include "ncdap4.h"
#include "dispatch4.h"
#include "dapdispatch4.h"
#include "netcdf4l.h"
NC_Dispatch4 netcdf4lib = {
l4nc_sync,
l4nc_abort,
l4nc_close,
l4nc4_get_vara,
l4nc4_put_vara
};
NC_Dispatch4 ncdap4lib = {
nc4d_sync,
nc4d_close, /* (Turn abort into close) nc4d_abort */
nc4d_close,
nc4d_get_vara,
nc4d_put_vara
};
int
nc_sync(int ncid)
{
NC_FILE_INFO_T* nc;
if(!(nc = nc4_find_nc_file(ncid))) return NC_EBADID;
return nc->dapdispatch->sync(ncid);
}
int
nc_abort(int ncid)
{
NC_FILE_INFO_T* nc;
if(!(nc = nc4_find_nc_file(ncid))) return NC_EBADID;
return nc->dapdispatch->abort(ncid);
}
int
nc_close(int ncid)
{
NC_FILE_INFO_T* nc;
if(!(nc = nc4_find_nc_file(ncid))) return NC_EBADID;
return nc->dapdispatch->close(ncid);
}
int
nc4_get_vara(NC_FILE_INFO_T* nc, int ncid, int varid,
const size_t* startp, const size_t* countp,
nc_type mem_nc_type, int is_long, void* data)
{
return nc->dapdispatch->get_vara(nc, ncid, varid, startp, countp, mem_nc_type, is_long, data);
}
int
nc4_put_vara(NC_FILE_INFO_T* nc, int ncid, int varid,
const size_t* startp, const size_t* countp,
nc_type mem_nc_type, int is_long, void* data)
{
return nc->dapdispatch->put_vara(nc, ncid, varid, startp, countp, mem_nc_type, is_long, data);
}
int
nc_open_file(const char *path, int mode, int basepe, size_t *chunksizehintp,
int use_parallel, MPI_Comm comm, MPI_Info info, int *ncidp)
{
int ncstat;
ncstat = nc4d_open_file(path, mode, basepe, chunksizehintp, use_parallel, comm, info,ncidp);
return ncstat;
}