mirror of
https://github.com/Unidata/netcdf-c.git
synced 2025-02-05 16:20:10 +08:00
73 lines
1.5 KiB
C
Executable File
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;
|
|
}
|
|
|