/*--------------------------------------------------------------------------*/ int checkNamedVarDimension(void *_pvCtx, const char *_pstName, int _iRows, int _iCols) { SciErr sciErr; sciErr.iErr = 0; sciErr.iMsgCount = 0; int iRows = 0; int iCols = 0; if (isNamedVarMatrixType(_pvCtx, _pstName) == 0) { return 0; } sciErr = getNamedVarDimension(_pvCtx, _pstName, &iRows, &iCols); if (sciErr.iErr) { addErrorMessage(&sciErr, API_ERROR_CHECK_NAMED_VAR_DIMENSION, _("%s: Unable to get argument dimension"), "checkNamedVarDimension"); printError(&sciErr, 0); return 0; } if ((_iRows == iRows || _iRows == -1) && (_iCols == iCols || _iCols == -1)) { return 1; } return 0; }
/*--------------------------------------------------------------------------*/ int isNamedColumnVector(void *_pvCtx, const char *_pstName) { SciErr sciErr; sciErr.iErr = 0; sciErr.iMsgCount = 0; int iRows = 0; int iCols = 0; if (isNamedVarMatrixType(_pvCtx, _pstName) == 0) { return 0; } sciErr = getNamedVarDimension(_pvCtx, _pstName, &iRows, &iCols); if (sciErr.iErr) { addErrorMessage(&sciErr, API_ERROR_IS_NAMED_COLUMN_VECTOR, _("%s: Unable to get argument dimension"), "isNamedColumnVector"); printError(&sciErr, 0); return 0; } if (iCols == 1 && iRows > 1) { return 1; } return 0; }
/*--------------------------------------------------------------------------*/ int isNamedScalar(void *_pvCtx, const char *_pstName) { int iRows = 0; int iCols = 0; if (isNamedVarMatrixType(_pvCtx, _pstName) == 0) { return 0; } SciErr sciErr = getNamedVarDimension(_pvCtx, _pstName, &iRows, &iCols); if (sciErr.iErr) { addErrorMessage(&sciErr, API_ERROR_IS_NAMED_SCALAR, _("%s: Unable to get argument dimension"), "isNamedScalar"); printError(&sciErr, 0); return 0; } if (iCols == 1 && iRows == 1) { return 1; } return 0; }