15 #include "nc4internal.h" 16 #include "nc4dispatch.h" 33 NC4_inq_unlimdim(
int ncid,
int *unlimdimidp)
36 NC_GRP_INFO_T *grp, *g;
43 LOG((2,
"%s: called", __func__));
45 if ((retval = nc4_find_nc_grp_h5(ncid, &nc, &grp, &h5)))
47 assert(h5 && nc && grp);
54 for (g = grp; g && !found; g = g->parent)
56 for(i=0;i<ncindexsize(grp->dim);i++)
58 dim = (NC_DIM_INFO_T*)ncindexith(grp->dim,i);
59 if(dim == NULL)
continue;
62 *unlimdimidp = dim->hdr.id;
87 NC4_inq_dimid(
int ncid,
const char *name,
int *idp)
90 NC_GRP_INFO_T *grp, *g;
97 LOG((2,
"%s: ncid 0x%x name %s", __func__, ncid, name));
104 if ((retval = nc4_find_nc_grp_h5(ncid, &nc, &grp, &h5)))
106 assert(h5 && nc && grp);
109 if ((retval = nc4_normalize_name(name, norm_name)))
114 for (g = grp; g ; g = g->parent) {
115 dim = (NC_DIM_INFO_T*)ncindexlookup(g->dim,norm_name);
116 if(dim != NULL) {found = 1;
break;}
142 NC4_inq_unlimdims(
int ncid,
int *nunlimdimsp,
int *unlimdimidsp)
152 LOG((2,
"%s: ncid 0x%x", __func__, ncid));
155 if ((retval = nc4_find_nc_grp_h5(ncid, &nc, &grp, &h5)))
157 assert(h5 && nc && grp);
162 for(i=0;i<ncindexsize(grp->dim);i++)
164 dim = (NC_DIM_INFO_T*)ncindexith(grp->dim,i);
165 if(dim == NULL)
continue;
169 unlimdimidsp[num_unlim] = dim->hdr.id;
177 *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.