data.h#118void srcpushlist(DatasrcsrcDatalistcmpd);
ncaux.c#52static int computefieldinfo(struct NCAUX_CMPDcmpd);
#58    struct NCAUX_CMPDcmpd = NULL;
#67    cmpd = (struct NCAUX_CMPD*)calloc(1,sizeof(struct NCAUX_CMPD));
#68    if(cmpd == NULL) {status = NC_ENOMEM; goto fail;}
#69    cmpd->ncid = ncid;
#70    cmpd->mode = alignmode;
#71    cmpd->nfields = 0;
#72    cmpd->name = strdup(name);
#73    if(cmpd->name == NULL) {status = NC_ENOMEM; goto fail;}
#76      *tagp = (void*)cmpd;
#78      free(cmpd);
#83    ncaux_abort_compound((void*)cmpd);
#91    struct NCAUX_CMPDcmpd = (struct NCAUX_CMPD*)tag;
#92    if(cmpd == NULL) goto done;
#93    if(cmpd->name) free(cmpd->name);
#94    for(i=0;i<cmpd->nfields;i++) {
#95 struct NCAUX_FIELDfield = &cmpd->fields[i];
#98    if(cmpd->fields) free(cmpd->fields);
#99    free(cmpd);
#111    struct NCAUX_CMPDcmpd = (struct NCAUX_CMPD*)tag;
#115    if(cmpd == NULL) goto done;
#120    if(cmpd->fields == NULL) {
#123        newfields = (struct NCAUX_FIELD*)realloc(cmpd->fields,cmpd->nfields+1*sizeof(struct NCAUX_FIELD));
#125    if(cmpd->fields == NULL) {status = NC_ENOMEM; goto done;}
#126    cmpd->fields = newfields;
#127    field = &cmpd->fields[cmpd->nfields+1];
#133    cmpd->nfields++;
#155    struct NCAUX_CMPDcmpd = (struct NCAUX_CMPD*)tag;
#157    if(cmpd == NULL) {status = NC_EINVAL; goto done;}
#160    status = computefieldinfo(cmpd);
#163    status = nc_def_compound(cmpd->ncidcmpd->sizecmpd->nameidp);
#166    for(i=0;i<cmpd->nfields;i++) {
#167 struct NCAUX_FIELDfield = &cmpd->fields[i];
#169            status = nc_insert_compound(cmpd->ncid, *idpfield->name,
#172            status = nc_insert_array_compound(cmpd->ncid, *idpfield->name,
#349computefieldinfo(struct NCAUX_CMPDcmpd)
#357    for(i=0;i<cmpd->nfields;i++) {
#358 struct NCAUX_FIELDfield = &cmpd->fields[i];
#359 status = nc_inq_type(cmpd->ncid,field->fieldtype,NULL,&field->size);
#365    for(offset=0,i=0;i<cmpd->nfields;i++) {
#366        struct NCAUX_FIELDfield = &cmpd->fields[i];
#368 nc_type firsttype = findfirstfield(cmpd->ncid,field->fieldtype);
#390    cmpd->size = offset;
#391    cmpd->alignment = cmpd->fields[0].alignment;


HyperKWIC - Version 7.20DA executed at 11:37 on 27 Oct 2017 | Polyhedron Solutions - INTERNAL USE | COMMERCIAL (Any O/S) SN 4AKIed