netcdf-c/include/hdf4dispatch.h
2019-02-19 06:09:10 -07:00

66 lines
1.5 KiB
C

/* Copyright 2018, UCAR/Unidata. See netcdf/COPYRIGHT file for copying
* and redistribution conditions. */
/**
* @file @internal This header file contains the prototypes for the
* HDF4 versions of the netCDF functions. This is part of the HDF4
* dispatch layer and this header should not be included by any file
* outside the libhdf4 directory.
*
* Ed Hartnett
*/
#ifndef _HDF4DISPATCH_H
#define _HDF4DISPATCH_H
#include "config.h"
#include "ncdispatch.h"
/** This is the max size of an SD dataset name in HDF4 (from HDF4
* documentation).*/
#define NC_MAX_HDF4_NAME 64
/** This is the max number of dimensions for a HDF4 SD dataset (from
* HDF4 documentation). */
#define NC_MAX_HDF4_DIMS 32
/* Stuff below is for hdf4 files. */
typedef struct NC_VAR_HDF4_INFO
{
int sdsid;
int hdf4_data_type;
} NC_VAR_HDF4_INFO_T;
typedef struct NC_HDF4_FILE_INFO
{
int sdid;
} NC_HDF4_FILE_INFO_T;
#if defined(__cplusplus)
extern "C" {
#endif
extern int
NC_HDF4_open(const char *path, int mode, int basepe, size_t *chunksizehintp,
void *parameters, NC_Dispatch *, NC *);
extern int
NC_HDF4_abort(int ncid);
extern int
NC_HDF4_close(int ncid, void *ignore);
extern int
NC_HDF4_inq_format(int ncid, int *formatp);
extern int
NC_HDF4_inq_format_extended(int ncid, int *formatp, int *modep);
extern int
NC_HDF4_get_vara(int ncid, int varid, const size_t *start, const size_t *count,
void *value, nc_type);
#if defined(__cplusplus)
}
#endif
#endif /*_HDF4DISPATCH_H */