15 #include "nc4internal.h"
16 #include "nc4dispatch.h"
33 NC4_inq_unlimdim(
int ncid,
int *unlimdimidp)
35 NC_GRP_INFO_T *grp, *g;
42 LOG((2,
"%s: called", __func__));
44 if ((retval = nc4_find_grp_h5(ncid, &grp, &h5)))
53 for (g = grp; g && !found; g = g->parent)
55 for(i=0;i<ncindexsize(grp->dim);i++)
57 dim = (NC_DIM_INFO_T*)ncindexith(grp->dim,i);
58 if(dim == NULL)
continue;
61 *unlimdimidp = dim->hdr.id;
86 NC4_inq_dimid(
int ncid,
const char *name,
int *idp)
89 NC_GRP_INFO_T *grp, *g;
96 LOG((2,
"%s: ncid 0x%x name %s", __func__, ncid, name));
103 if ((retval = nc4_find_nc_grp_h5(ncid, &nc, &grp, &h5)))
105 assert(h5 && nc && grp);
108 if ((retval = nc4_normalize_name(name, norm_name)))
113 for (g = grp; g ; g = g->parent) {
114 dim = (NC_DIM_INFO_T*)ncindexlookup(g->dim,norm_name);
115 if(dim != NULL) {found = 1;
break;}
141 NC4_inq_unlimdims(
int ncid,
int *nunlimdimsp,
int *unlimdimidsp)
151 LOG((2,
"%s: ncid 0x%x", __func__, ncid));
154 if ((retval = nc4_find_nc_grp_h5(ncid, &nc, &grp, &h5)))
156 assert(h5 && nc && grp);
161 for(i=0;i<ncindexsize(grp->dim);i++)
163 dim = (NC_DIM_INFO_T*)ncindexith(grp->dim,i);
164 if(dim == NULL)
continue;
168 unlimdimidsp[num_unlim] = dim->hdr.id;
176 *nunlimdimsp = num_unlim;
#define NC_EBADDIM
Invalid dimension id or name.
#define NC_EINVAL
Invalid Argument.
#define NC_MAX_NAME
Maximum for classic library.
#define NC_NOERR
No Error.