int ex_put_variable_names (int exoid, ex_entity_type obj_type, int num_vars, char* var_names[]) { int varid, dimid, status; char errmsg[MAX_ERR_LENGTH]; exerrval = 0; /* clear error code */ switch (obj_type) { case EX_GLOBAL: EX_PUT_NAMES( "global",DIM_NUM_GLO_VAR, VAR_NAME_GLO_VAR); break; case EX_NODAL: EX_PUT_NAMES( "nodal",DIM_NUM_NOD_VAR, VAR_NAME_NOD_VAR); break; case EX_EDGE_BLOCK: EX_PUT_NAMES( "edge",DIM_NUM_EDG_VAR, VAR_NAME_EDG_VAR); break; case EX_FACE_BLOCK: EX_PUT_NAMES( "face",DIM_NUM_FAC_VAR, VAR_NAME_FAC_VAR); break; case EX_ELEM_BLOCK: EX_PUT_NAMES( "element",DIM_NUM_ELE_VAR, VAR_NAME_ELE_VAR); break; case EX_NODE_SET: EX_PUT_NAMES( "node set",DIM_NUM_NSET_VAR, VAR_NAME_NSET_VAR); break; case EX_EDGE_SET: EX_PUT_NAMES( "edge set",DIM_NUM_ESET_VAR, VAR_NAME_ESET_VAR); break; case EX_FACE_SET: EX_PUT_NAMES( "face set",DIM_NUM_FSET_VAR, VAR_NAME_FSET_VAR); break; case EX_SIDE_SET: EX_PUT_NAMES( "side set",DIM_NUM_SSET_VAR, VAR_NAME_SSET_VAR); break; case EX_ELEM_SET: EX_PUT_NAMES("element set",DIM_NUM_ELSET_VAR,VAR_NAME_ELSET_VAR); break; default: exerrval = EX_BADPARAM; sprintf(errmsg, "Error: Invalid variable type %d specified in file id %d", obj_type, exoid); ex_err("ex_put_var_names",errmsg,exerrval); return(EX_FATAL); } /* write EXODUS variable names */ status = ex_put_names_internal(exoid, varid, num_vars, var_names, obj_type, "variable", "ex_put_var_names"); return(status); }
int ex_put_var_names (int exoid, const char *var_type, int num_vars, char* var_names[]) { int i, varid; long start[2], count[2]; char errmsg[MAX_ERR_LENGTH]; int vartyp; exerrval = 0; /* clear error code */ vartyp = tolower( *var_type ); switch (vartyp) { case 'g': EX_PUT_NAMES( "global",DIM_NUM_GLO_VAR, VAR_NAME_GLO_VAR); break; case 'n': EX_PUT_NAMES( "nodal",DIM_NUM_NOD_VAR, VAR_NAME_NOD_VAR); break; case 'l': EX_PUT_NAMES( "edge",DIM_NUM_EDG_VAR, VAR_NAME_EDG_VAR); break; case 'f': EX_PUT_NAMES( "face",DIM_NUM_FAC_VAR, VAR_NAME_FAC_VAR); break; case 'e': EX_PUT_NAMES( "element",DIM_NUM_ELE_VAR, VAR_NAME_ELE_VAR); break; case 'm': EX_PUT_NAMES( "node set",DIM_NUM_NSET_VAR, VAR_NAME_NSET_VAR); break; case 'd': EX_PUT_NAMES( "edge set",DIM_NUM_ESET_VAR, VAR_NAME_ESET_VAR); break; case 'a': EX_PUT_NAMES( "face set",DIM_NUM_FSET_VAR, VAR_NAME_FSET_VAR); break; case 's': EX_PUT_NAMES( "side set",DIM_NUM_SSET_VAR, VAR_NAME_SSET_VAR); break; case 't': EX_PUT_NAMES("element set",DIM_NUM_ELSET_VAR,VAR_NAME_ELSET_VAR); break; default: exerrval = EX_BADPARAM; sprintf(errmsg, "Error: Invalid variable type %c specified in file id %d", *var_type, exoid); ex_err("ex_put_var_names",errmsg,exerrval); return(EX_FATAL); } /* write EXODUS variable names */ for (i=0; i<num_vars; i++) { start[0] = i; start[1] = 0; count[0] = 1; count[1] = strlen(var_names[i]) + 1; if (ncvarput (exoid, varid, start, count, (void*) var_names[i]) == -1) { exerrval = ncerr; sprintf(errmsg, "Error: failed to store variable names in file id %d", exoid); ex_err("ex_put_var_names",errmsg,exerrval); return (EX_FATAL); } } return(EX_NOERR); }
int ex_put_variable_names (int exoid, ex_entity_type obj_type, int num_vars, char* var_names[]) { int i, varid, dimid, status; size_t start[2], count[2]; char errmsg[MAX_ERR_LENGTH]; exerrval = 0; /* clear error code */ switch (obj_type) { case EX_GLOBAL: EX_PUT_NAMES( "global",DIM_NUM_GLO_VAR, VAR_NAME_GLO_VAR); break; case EX_NODAL: EX_PUT_NAMES( "nodal",DIM_NUM_NOD_VAR, VAR_NAME_NOD_VAR); break; case EX_EDGE_BLOCK: EX_PUT_NAMES( "edge",DIM_NUM_EDG_VAR, VAR_NAME_EDG_VAR); break; case EX_FACE_BLOCK: EX_PUT_NAMES( "face",DIM_NUM_FAC_VAR, VAR_NAME_FAC_VAR); break; case EX_ELEM_BLOCK: EX_PUT_NAMES( "element",DIM_NUM_ELE_VAR, VAR_NAME_ELE_VAR); break; case EX_NODE_SET: EX_PUT_NAMES( "node set",DIM_NUM_NSET_VAR, VAR_NAME_NSET_VAR); break; case EX_EDGE_SET: EX_PUT_NAMES( "edge set",DIM_NUM_ESET_VAR, VAR_NAME_ESET_VAR); break; case EX_FACE_SET: EX_PUT_NAMES( "face set",DIM_NUM_FSET_VAR, VAR_NAME_FSET_VAR); break; case EX_SIDE_SET: EX_PUT_NAMES( "side set",DIM_NUM_SSET_VAR, VAR_NAME_SSET_VAR); break; case EX_ELEM_SET: EX_PUT_NAMES("element set",DIM_NUM_ELSET_VAR,VAR_NAME_ELSET_VAR); break; default: exerrval = EX_BADPARAM; sprintf(errmsg, "Error: Invalid variable type %d specified in file id %d", obj_type, exoid); ex_err("ex_put_var_names",errmsg,exerrval); return(EX_FATAL); } /* write EXODUS variable names */ for (i=0; i<num_vars; i++) { start[0] = i; start[1] = 0; count[0] = 1; count[1] = strlen(var_names[i]) + 1; if ((status = nc_put_vara_text(exoid, varid, start, count, var_names[i])) != NC_NOERR) { exerrval = status; sprintf(errmsg, "Error: failed to store variable names in file id %d", exoid); ex_err("ex_put_var_names",errmsg,exerrval); return (EX_FATAL); } } return(EX_NOERR); }