疎論理値の例
疎論理値の使用例
説明
この例は疎論理値変数を取得し,Scilabに戻す手順を示します.
ゲートウェイのソース
#include "api_scilab.h" int booleanSparseExample(char *fname,void* pvApiCtx) { SciErr sciErr; int* piAddr = NULL; int iType = 0; int iRet = 0; CheckInputArgument(pvApiCtx, 1, 1); CheckOutputArgument(pvApiCtx, 0, 1); sciErr = getVarAddressFromPosition(pvApiCtx, 1, &piAddr); if(sciErr.iErr) { printError(&sciErr, 0); return 0; } if(isBooleanSparseType(pvApiCtx, piAddr)) { int iRows = 0; int iCols = 0; int iNbItem = 0; int* piNbItemRow = NULL; int* piColPos = NULL; iRet = getAllocatedBooleanSparseMatrix(pvApiCtx, piAddr, &iRows, &iCols, &iNbItem, &piNbItemRow, &piColPos); if(iRet) { freeAllocatedBooleanSparse(piNbItemRow, piColPos); return iRet; } sciErr = createBooleanSparseMatrix(pvApiCtx, nbInputArgument(pvApiCtx) + 1, iRows, iCols, iNbItem, piNbItemRow, piColPos); if(sciErr.iErr) { freeAllocatedBooleanSparse(piNbItemRow, piColPos); printError(&sciErr, 0); return sciErr.iErr; } freeAllocatedBooleanSparse(piNbItemRow, piColPos); AssignOutputVariable(pvApiCtx, 1) = nbInputArgument(pvApiCtx) + 1; } return 0; }
Report an issue | ||
<< freeAllocatedBooleanSparse | Boolean Sparse | Scilab Gateway API >> |