/* * Parse command line arguements, and do .... */ int siftWarnMain(char *cmdName, char *buf) { char *cp; int len; /* Make data filename from command name */ sprintf(in_str1, "%s.pattern", cmdName); /* Call warning list builder */ nSupItems = import_list(in_str1); /* Now read sift waring messages by filter DB */ while ((cp = strchr(buf, '\n')) != NULL) { len = cp - buf + 1; snprintf(warn_buf, sizeof(warn_buf), "%*.*s", len, len, buf); buf += len; (void) search_warn(&warn_buf[0]); } if ( (bHasError == 0) && (nTotError == 0) && (nSerError == 0) && (nTotWarns <= nMaxWarns) ) return(0); else return(1); }
static bool import_data(int* pvCtx, int _iDatasetId, int _iItemPos, int *_piAddress, char *_pstVarname) { bool bRet = false; //get var type int iVarType = getScilabTypeFromDataSet(_iDatasetId); switch (iVarType) { case sci_matrix: { bRet = import_double(pvCtx, _iDatasetId, _iItemPos, _piAddress, _pstVarname); break; } case sci_strings: { bRet = import_string(pvCtx, _iDatasetId, _iItemPos, _piAddress, _pstVarname); break; } case sci_list: case sci_tlist: case sci_mlist: { bRet = import_hypermat(pvCtx, _iDatasetId, iVarType, _iItemPos, _piAddress, _pstVarname); if (bRet == false) { bRet = import_struct(pvCtx, _iDatasetId, iVarType, _iItemPos, _piAddress, _pstVarname); } if (bRet == false) { bRet = import_cell(pvCtx, _iDatasetId, iVarType, _iItemPos, _piAddress, _pstVarname); } if (bRet == false) { bRet = import_list(pvCtx, _iDatasetId, iVarType, _iItemPos, _piAddress, _pstVarname); } break; } case sci_boolean: { bRet = import_boolean(pvCtx, _iDatasetId, _iItemPos, _piAddress, _pstVarname); break; } case sci_poly: { bRet = import_poly(pvCtx, _iDatasetId, _iItemPos, _piAddress, _pstVarname); break; } case sci_ints: { bRet = import_integer(pvCtx, _iDatasetId, _iItemPos, _piAddress, _pstVarname); break; } case sci_sparse: { bRet = import_sparse(pvCtx, _iDatasetId, _iItemPos, _piAddress, _pstVarname); break; } case sci_boolean_sparse: { bRet = import_boolean_sparse(pvCtx, _iDatasetId, _iItemPos, _piAddress, _pstVarname); break; } case sci_void: //void item only on list variable { bRet = import_void(pvCtx, _iDatasetId, _iItemPos, _piAddress, _pstVarname); break; } case sci_undefined: //undefined item only on list variable { bRet = import_undefined(pvCtx, _iDatasetId, _iItemPos, _piAddress, _pstVarname); break; } default: { Scierror(999, _("%s: Invalid HDF5 Scilab format.\n"), fname.data()); } } return bRet; }
types::InternalType* import_data(int dataset) { //get var type char* ctype = getScilabTypeFromDataSet6(dataset); std::string type(ctype); FREE(ctype); if (type == g_SCILAB_CLASS_DOUBLE) { return import_double(dataset); } if (type == g_SCILAB_CLASS_STRING) { return import_string(dataset); } if (type == g_SCILAB_CLASS_INT) { return import_int(dataset); } if (type == g_SCILAB_CLASS_BOOLEAN) { return import_boolean(dataset); } if (type == g_SCILAB_CLASS_LIST) { return import_list(dataset, new types::List()); } if (type == g_SCILAB_CLASS_TLIST) { return import_list(dataset, new types::TList()); } if (type == g_SCILAB_CLASS_MLIST) { return import_list(dataset, new types::MList()); } if (type == g_SCILAB_CLASS_STRUCT) { return import_struct(dataset); } if (type == g_SCILAB_CLASS_POLY) { return import_poly(dataset); } if (type == g_SCILAB_CLASS_SPARSE) { return import_sparse(dataset); } if (type == g_SCILAB_CLASS_BSPARSE) { return import_boolean_sparse(dataset); } if (type == g_SCILAB_CLASS_CELL) { return import_cell(dataset); } if (type == g_SCILAB_CLASS_HANDLE) { return import_handles(dataset); } if (type == g_SCILAB_CLASS_MACRO) { return import_macro(dataset); } if (type == g_SCILAB_CLASS_VOID) { closeDataSet(dataset); return new types::Void(); } if (type == g_SCILAB_CLASS_UNDEFINED) { closeDataSet(dataset); return new types::ListUndefined(); } if (type == g_SCILAB_CLASS_USERTYPE) { return import_usertype(dataset); } return nullptr; }