NetCDF  4.6.1
nc4hdf.c File Reference

This file is part of netcdf-4, a netCDF-like interface for HDF5, or a HDF5 backend for netCDF, depending on your point of view. More...

#include "config.h"
#include "nc4internal.h"
#include "nc4dispatch.h"
#include <H5DSpublic.h>
#include <math.h>
Include dependency graph for nc4hdf.c:

Go to the source code of this file.

Macros

#define MAXNAME   1024
 Max HDF5 name. More...
 
#define NC3_STRICT_ATT_NAME   "_nc3_strict"
 
#define NC_HDF5_MAX_NAME   1024
 

Functions

static int attach_dimscales (NC_GRP_INFO_T *grp)
 
static int check_for_vara (nc_type *mem_nc_type, NC_VAR_INFO_T *var, NC_HDF5_FILE_INFO_T *h5)
 
static int commit_type (NC_GRP_INFO_T *grp, NC_TYPE_INFO_T *type)
 
static int create_group (NC_GRP_INFO_T *grp)
 
static int flag_atts_dirty (NC_ATT_INFO_T **attlist)
 
static int get_fill_value (NC_HDF5_FILE_INFO_T *h5, NC_VAR_INFO_T *var, void **fillp)
 
int nc4_adjust_var_cache (NC_GRP_INFO_T *grp, NC_VAR_INFO_T *var)
 
int nc4_convert_type (const void *src, void *dest, const nc_type src_type, const nc_type dest_type, const size_t len, int *range_error, const void *fill_value, int strict_nc3, int src_long, int dest_long)
 
int nc4_get_default_fill_value (const NC_TYPE_INFO_T *type_info, void *fill_value)
 
int nc4_get_hdf_typeid (NC_HDF5_FILE_INFO_T *h5, nc_type xtype, hid_t *hdf_typeid, int endianness)
 
static int NC4_get_strict_att (NC_HDF5_FILE_INFO_T *h5)
 
int nc4_get_typeclass (const NC_HDF5_FILE_INFO_T *h5, nc_type xtype, int *type_class)
 
int nc4_get_typelen_mem (NC_HDF5_FILE_INFO_T *h5, nc_type xtype, int is_long, size_t *len)
 
int nc4_get_vara (NC *nc, int ncid, int varid, const size_t *startp, const size_t *countp, nc_type mem_nc_type, int is_long, void *data)
 
int NC4_hdf5get_libversion (unsigned *major, unsigned *minor, unsigned *release)
 
int NC4_hdf5get_superblock (struct NC_HDF5_FILE_INFO *h5, int *idp)
 
int NC4_isnetcdf4 (struct NC_HDF5_FILE_INFO *h5)
 
int nc4_open_var_grp2 (NC_GRP_INFO_T *grp, int varid, hid_t *dataset)
 
int nc4_put_vara (NC *nc, int ncid, int varid, const size_t *startp, const size_t *countp, nc_type mem_nc_type, int is_long, void *data)
 
int nc4_rec_detect_need_to_preserve_dimids (NC_GRP_INFO_T *grp, nc_bool_t *bad_coord_orderp)
 
int nc4_rec_match_dimscales (NC_GRP_INFO_T *grp)
 
int nc4_rec_write_groups_types (NC_GRP_INFO_T *grp)
 
int nc4_rec_write_metadata (NC_GRP_INFO_T *grp, nc_bool_t bad_coord_order)
 
static int NC4_walk (hid_t gid, int *countp)
 
static int put_att_grpa (NC_GRP_INFO_T *grp, int varid, NC_ATT_INFO_T *att)
 
int rec_detach_scales (NC_GRP_INFO_T *grp, int dimid, hid_t dimscaleid)
 
int rec_reattach_scales (NC_GRP_INFO_T *grp, int dimid, hid_t dimscaleid)
 
int remove_coord_atts (hid_t hdf_datasetid)
 
void reportobject (int log, hid_t id, unsigned int type)
 
void reportopenobjects (int log, hid_t fid)
 
static void reportopenobjectsT (int log, hid_t fid, int ntypes, unsigned int *otypes)
 
static int var_create_dataset (NC_GRP_INFO_T *grp, NC_VAR_INFO_T *var, nc_bool_t write_dimid)
 
static int var_exists (hid_t grpid, char *name, nc_bool_t *exists)
 
static int write_attlist (NC_ATT_INFO_T *attlist, int varid, NC_GRP_INFO_T *grp)
 
static int write_coord_dimids (NC_VAR_INFO_T *var)
 
static int write_dim (NC_DIM_INFO_T *dim, NC_GRP_INFO_T *grp, nc_bool_t write_dimid)
 
static int write_nc3_strict_att (hid_t hdf_grpid)
 
static int write_netcdf4_dimid (hid_t datasetid, int dimid)
 
static int write_var (NC_VAR_INFO_T *var, NC_GRP_INFO_T *grp, nc_bool_t write_dimid)
 

Variables

static unsigned int OTYPES [5]
 

Detailed Description

This file is part of netcdf-4, a netCDF-like interface for HDF5, or a HDF5 backend for netCDF, depending on your point of view.

This file contains functions internal to the netcdf4 library. None of the functions in this file are exposed in the exetnal API. These functions handle the HDF interface.

Copyright 2003, University Corporation for Atmospheric Research. See the COPYRIGHT file for copying and redistribution conditions.

Author
Ed Hartnett, Dennis Heimbigner, Ward Fisher

Definition in file nc4hdf.c.

Macro Definition Documentation

◆ MAXNAME

#define MAXNAME   1024

Max HDF5 name.

Definition at line 37 of file nc4hdf.c.

Variable Documentation

◆ OTYPES

unsigned int OTYPES[5]
static
Initial value:
= {H5F_OBJ_FILE, H5F_OBJ_DATASET, H5F_OBJ_GROUP,
H5F_OBJ_DATATYPE, H5F_OBJ_ATTR}

Definition at line 40 of file nc4hdf.c.


Return to the Main Unidata NetCDF page.
Generated on Tue Mar 20 2018 06:30:46 for NetCDF. NetCDF is a Unidata library.