netcdf-c/libdap4/ncd4dispatch.h
Dennis Heimbigner 6934aa2e8b Thread safety: step 1: cleanup
re: https://github.com/Unidata/netcdf-c/issues/1373 (partial)

* Mark some global constants be const to indicate to make them easier to track.
* Hide direct access to the ncrc_globalstate behind a function call.
* Convert dispatch tables to constants (except the user defined ones)
  This has some consequences in terms of function arguments needing to be marked
  as const also.
* Remove some no longer needed global fields
* Aggregate all the globals in nclog.c
* Uniformly replace nc_sizevector{0,1} with NC_coord_{zero,one}
* Uniformly replace nc_ptrdffvector1 with NC_stride_one
* Remove some obsolete code
2019-03-30 14:06:20 -06:00

50 lines
1.1 KiB
C

/*********************************************************************
* Copyright 2018, UCAR/Unidata
* See netcdf/COPYRIGHT file for copying and redistribution conditions.
*********************************************************************/
#ifndef _NCD4DISPATCH_H
#define _NCD4DISPATCH_H
#include <stddef.h> /* size_t, ptrdiff_t */
#include "netcdf.h"
#include "ncdispatch.h"
#if defined(__cplusplus)
extern "C" {
#endif
extern int
NCD4_open(const char *path, int mode,
int basepe, size_t *chunksizehintp,
void *mpidata, const struct NC_Dispatch *dispatch, NC *ncp);
extern int
NCD4_close(int ncid,void*);
extern int
NCD4_abort(int ncid);
extern int
NCD4_inq_dim(int ncid, int dimid, char* name, size_t* lenp);
extern int
NCD4_get_vara(int ncid, int varid,
const size_t *start, const size_t *edges,
void *value,
nc_type memtype);
extern int
NCD4_get_vars(int ncid, int varid,
const size_t *start, const size_t *edges, const ptrdiff_t* strides,
void *value,
nc_type memtype);
extern int NCD4_initialize(void);
#if defined(__cplusplus)
}
#endif
#endif /*_NCD4DISPATCH_H*/