Typo fixes
[scilab.git] / scilab / modules / api_scilab / tests / unit_tests / poly_writing_api.c
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) 2009-2010 - DIGITEO
4  *
5  * Copyright (C) 2012 - 2016 - Scilab Enterprises
6  *
7  * This file is hereby licensed under the terms of the GNU GPL v2.0,
8  * pursuant to article 5.3.4 of the CeCILL v.2.1.
9  * This file was originally licensed under the terms of the CeCILL v2.1,
10  * and continues to be available under such terms.
11  * For more information, see the COPYING file which you should have received
12  * along with this program.
13  *
14  */
15
16 #include "api_scilab.h"
17 #include "Scierror.h"
18 #include "localization.h"
19 #include "sciprint.h"
20
21 int write_poly(char *fname, void* pvApiCtx)
22 {
23     SciErr sciErr;
24     //output variable info : polynomial matrix 2 x 4
25     //[ x + 2                   x^2 - 4x + 5    4x^3 - 14x^2 + 18 ;
26     //  2x^3 - 12x^2 + 64       1               8x^5 + 32x^3]
27     int iRows               = 2;
28     int iCols               = 3;
29     //varname "x"
30     char pstVarName[2]      = {"x"};
31     //coeficient array
32     int piNbCoef[6]         = {2, 4, 3, 1, 4, 6};
33     //data array
34     double *pdblReal[6]     = {0};
35     double pdblPoly0[2]     = {2, 1};
36     double pdblPoly1[4]     = {64, 0, -12, 2};
37     double pdblPoly2[3]     = {5, -4, 1};
38     double pdblPoly3[1]     = {1};
39     double pdblPoly4[4]     = {18, 0, -14, 4};
40     double pdblPoly5[6]     = {0, 0, 0, 32, 0, 8};
41     pdblReal[0]             = pdblPoly0;
42     pdblReal[1]             = pdblPoly1;
43     pdblReal[2]             = pdblPoly2;
44     pdblReal[3]             = pdblPoly3;
45     pdblReal[4]             = pdblPoly4;
46     pdblReal[5]             = pdblPoly5;
47
48     sciErr = createMatrixOfPoly(pvApiCtx, nbInputArgument(pvApiCtx) + 1, pstVarName, iRows, iCols, piNbCoef, pdblReal);
49     if (sciErr.iErr)
50     {
51         printError(&sciErr, 0);
52         return 0;
53     }
54
55     //assign allocated variables to Lhs position
56     AssignOutputVariable(pvApiCtx, 1) = nbInputArgument(pvApiCtx) + 1;
57     return 0;
58 }