- Manuel Scilab
- API Scilab
- Scilab Gateway API
- How to
- CheckColumn
- CheckDimProp
- CheckDims
- CheckLength
- CheckLhs
- CheckRhs
- CheckRow
- CheckSameDims
- CheckScalar
- CheckSquare
- CheckVector
- CreateListVarFrom
- CreateListVarFromPtr
- CreateVar
- FindOpt
- FirstOpt
- GetListRhsVar
- GetRhsVar
- GetType
- IsOpt
- Lhs
- LhsVar
- NumOpt
- OverLoad
- Rhs
- Scierror
- Scilab C Types
- get_optionals
- istk
- sci_types
- sciprint
- stk
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
However, this page did not exist in the previous stable version.
LhsVar
a C gateway function which specifies which parameters created inside the C gateway will be returned as an output argument into Scilab.
Calling Sequence
LhsVar(RankPos) = RankVar;
Arguments
- RankPos
as integer providing the rank of the output argument
- RankVar
the rank of the parameter created inside the C gateway to be returned as an Scilab output argument
Description
A C gateway function which specifies which variables created inside the C interface will be returned as an output argumen into Scilab.
WARNING: This API is deprecated from Scilab 5.2.0 and is going to be removed with Scilab 6.0. Please use API Scilab (the new Scilab API).
Examples
This example takes a matrix of doubles as input and returns:
the number of lines (first output argument)
the number of rows (second output argument)
We create an intermediate Scilab parameter which will handle an integer but will neither be used nor returned as an output argument.
TODO: insert an example in the Scilab language
#include <stack-c.h> int sci_mysizedouble(char * fname) { int m_in_row, n_in_col, l_in_pos; int m_out_lines_row, n_out_lines_col, l_out_lines_pos; int m_out_columns_row, n_out_columns_col, l_out_columns_pos; int m_nop, n_nop, l_nop; GetRhsVar(1, MATRIX_OF_DOUBLE_DATATYPE, &m_in_row, &n_in_col, &l_in_pos); m_out_lines_row = 1; n_out_lines_col = 1; // We create a scalar m_out_columns_row = 1; n_out_columns_col = 1; // We create a scalar m_nop = 1; n_nop = 1; // We create a scalar CreateVar(2, MATRIX_OF_INTEGER_DATATYPE, &m_out_lines_row, &n_out_lines_col, &l_out_lines_pos); CreateVar(3, MATRIX_OF_INTEGER_DATATYPE, &m_nop, &n_nop, &l_nop); CreateVar(4, MATRIX_OF_INTEGER_DATATYPE, &m_out_columns_row, &n_out_columns_col, &l_out_columns_pos); *istk(l_out_lines_pos) = m_in_row; // the out_lines_pos parameter handles the number of lines of the matrix sent as argument *istk(l_nop) = 1; // store a mere value, but will neither be used nor returned to Scilab *istk(l_out_columns_pos) = n_in_col; // the out_columns_pos parameter handles the number of columns of the matrix sent as argument LhsVar(1) = 2; // We set the parameter 2 as an output argument LhsVar(2) = 4; // We set the parameter 4 as an output argument return 0; }
See Also
<< Lhs | Scilab Gateway API | NumOpt >> |