1 /*
2 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 * Copyright (C) 2015 - Scilab Enterprises - Antoine ELIAS
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 #ifndef __INT_API__
16 #define __INT_API__
17 
18 #if !defined(__INTERNAL_API_SCILAB__)
19 #error Do not include api_int.h. Include api_scilab.h instead.
20 #endif
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 #define scilab_getIntegerPrecision                  API_PROTO(getIntegerPrecision)
26 #define scilab_isInt8                               API_PROTO(isInt8)
27 #define scilab_isInt16                              API_PROTO(isInt16)
28 #define scilab_isInt32                              API_PROTO(isInt32)
29 #define scilab_isInt64                              API_PROTO(isInt64)
30 #define scilab_isUnsignedInt8                       API_PROTO(isUnsignedInt8)
31 #define scilab_isUnsignedInt16                      API_PROTO(isUnsignedInt16)
32 #define scilab_isUnsignedInt32                      API_PROTO(isUnsignedInt32)
33 #define scilab_isUnsignedInt64                      API_PROTO(isUnsignedInt64)
34 
35 #define scilab_createInteger8                       API_PROTO(createInteger8)
36 #define scilab_createInteger16                      API_PROTO(createInteger16)
37 #define scilab_createInteger32                      API_PROTO(createInteger32)
38 #define scilab_createInteger64                      API_PROTO(createInteger64)
39 #define scilab_createUnsignedInteger8               API_PROTO(createUnsignedInteger8)
40 #define scilab_createUnsignedInteger16              API_PROTO(createUnsignedInteger16)
41 #define scilab_createUnsignedInteger32              API_PROTO(createUnsignedInteger32)
42 #define scilab_createUnsignedInteger64              API_PROTO(createUnsignedInteger64)
43 
44 #define scilab_createIntegerMatrix                  API_PROTO(createIntegerMatrix)
45 #define scilab_createInteger8Matrix                 API_PROTO(createInteger8Matrix)
46 #define scilab_createInteger16Matrix                API_PROTO(createInteger16Matrix)
47 #define scilab_createInteger32Matrix                API_PROTO(createInteger32Matrix)
48 #define scilab_createInteger64Matrix                API_PROTO(createInteger64Matrix)
49 #define scilab_createUnsignedInteger8Matrix         API_PROTO(createUnsignedInteger8Matrix)
50 #define scilab_createUnsignedInteger16Matrix        API_PROTO(createUnsignedInteger16Matrix)
51 #define scilab_createUnsignedInteger32Matrix        API_PROTO(createUnsignedInteger32Matrix)
52 #define scilab_createUnsignedInteger64Matrix        API_PROTO(createUnsignedInteger64Matrix)
53 
54 #define scilab_createIntegerMatrix2d                API_PROTO(createIntegerMatrix2d)
55 #define scilab_createInteger8Matrix2d               API_PROTO(createInteger8Matrix2d)
56 #define scilab_createInteger16Matrix2d              API_PROTO(createInteger16Matrix2d)
57 #define scilab_createInteger32Matrix2d              API_PROTO(createInteger32Matrix2d)
58 #define scilab_createInteger64Matrix2d              API_PROTO(createInteger64Matrix2d)
59 #define scilab_createUnsignedInteger8Matrix2d       API_PROTO(createUnsignedInteger8Matrix2d)
60 #define scilab_createUnsignedInteger16Matrix2d      API_PROTO(createUnsignedInteger16Matrix2d)
61 #define scilab_createUnsignedInteger32Matrix2d      API_PROTO(createUnsignedInteger32Matrix2d)
62 #define scilab_createUnsignedInteger64Matrix2d      API_PROTO(createUnsignedInteger64Matrix2d)
63 
64 #define scilab_getInteger8                          API_PROTO(getInteger8)
65 #define scilab_getInteger16                         API_PROTO(getInteger16)
66 #define scilab_getInteger32                         API_PROTO(getInteger32)
67 #define scilab_getInteger64                         API_PROTO(getInteger64)
68 #define scilab_getUnsignedInteger8                  API_PROTO(getUnsignedInteger8)
69 #define scilab_getUnsignedInteger16                 API_PROTO(getUnsignedInteger16)
70 #define scilab_getUnsignedInteger32                 API_PROTO(getUnsignedInteger32)
71 #define scilab_getUnsignedInteger64                 API_PROTO(getUnsignedInteger64)
72 
73 #define scilab_getIntegerArray                      API_PROTO(getIntegerArray)
74 #define scilab_getInteger8Array                     API_PROTO(getInteger8Array)
75 #define scilab_getInteger16Array                    API_PROTO(getInteger16Array)
76 #define scilab_getInteger32Array                    API_PROTO(getInteger32Array)
77 #define scilab_getInteger64Array                    API_PROTO(getInteger64Array)
78 #define scilab_getUnsignedInteger8Array             API_PROTO(getUnsignedInteger8Array)
79 #define scilab_getUnsignedInteger16Array            API_PROTO(getUnsignedInteger16Array)
80 #define scilab_getUnsignedInteger32Array            API_PROTO(getUnsignedInteger32Array)
81 #define scilab_getUnsignedInteger64Array            API_PROTO(getUnsignedInteger64Array)
82 
83 #define scilab_setIntegerArray                      API_PROTO(setIntegerArray)
84 #define scilab_setInteger8Array                     API_PROTO(setInteger8Array)
85 #define scilab_setInteger16Array                    API_PROTO(setInteger16Array)
86 #define scilab_setInteger32Array                    API_PROTO(setInteger32Array)
87 #define scilab_setInteger64Array                    API_PROTO(setInteger64Array)
88 #define scilab_setUnsignedInteger8Array             API_PROTO(setUnsignedInteger8Array)
89 #define scilab_setUnsignedInteger16Array            API_PROTO(setUnsignedInteger16Array)
90 #define scilab_setUnsignedInteger32Array            API_PROTO(setUnsignedInteger32Array)
91 #define scilab_setUnsignedInteger64Array            API_PROTO(setUnsignedInteger64Array)
92 
93 /* Scilab 6 API*/
94 int API_PROTO(getIntegerPrecision)(scilabEnv env, scilabVar var);
95 
96 int API_PROTO(isInt8)(scilabEnv env, scilabVar var);
97 int API_PROTO(isInt16)(scilabEnv env, scilabVar var);
98 int API_PROTO(isInt32)(scilabEnv env, scilabVar var);
99 int API_PROTO(isInt64)(scilabEnv env, scilabVar var);
100 int API_PROTO(isUnsignedInt8)(scilabEnv env, scilabVar var);
101 int API_PROTO(isUnsignedInt16)(scilabEnv env, scilabVar var);
102 int API_PROTO(isUnsignedInt32)(scilabEnv env, scilabVar var);
103 int API_PROTO(isUnsignedInt64)(scilabEnv env, scilabVar var);
104 
105 scilabVar API_PROTO(createInteger8)(scilabEnv env, char val);
106 scilabVar API_PROTO(createInteger16)(scilabEnv env, short val);
107 scilabVar API_PROTO(createInteger32)(scilabEnv env, int val);
108 scilabVar API_PROTO(createInteger64)(scilabEnv env, long long val);
109 scilabVar API_PROTO(createUnsignedInteger8)(scilabEnv env, unsigned char val);
110 scilabVar API_PROTO(createUnsignedInteger16)(scilabEnv env, unsigned short val);
111 scilabVar API_PROTO(createUnsignedInteger32)(scilabEnv env, unsigned int val);
112 scilabVar API_PROTO(createUnsignedInteger64)(scilabEnv env, unsigned long long val);
113 
114 scilabVar API_PROTO(createIntegerMatrix)(scilabEnv env, int prec, int dim, const int* dims);
115 scilabVar API_PROTO(createInteger8Matrix)(scilabEnv env, int dim, const int* dims);
116 scilabVar API_PROTO(createInteger16Matrix)(scilabEnv env, int dim, const int* dims);
117 scilabVar API_PROTO(createInteger32Matrix)(scilabEnv env, int dim, const int* dims);
118 scilabVar API_PROTO(createInteger64Matrix)(scilabEnv env, int dim, const int* dims);
119 scilabVar API_PROTO(createUnsignedInteger8Matrix)(scilabEnv env, int dim, const int* dims);
120 scilabVar API_PROTO(createUnsignedInteger16Matrix)(scilabEnv env, int dim, const int* dims);
121 scilabVar API_PROTO(createUnsignedInteger32Matrix)(scilabEnv env, int dim, const int* dims);
122 scilabVar API_PROTO(createUnsignedInteger64Matrix)(scilabEnv env, int dim, const int* dims);
123 
124 scilabVar API_PROTO(createIntegerMatrix2d)(scilabEnv env, int prec, int row, int col);
125 scilabVar API_PROTO(createInteger8Matrix2d)(scilabEnv env, int row, int col);
126 scilabVar API_PROTO(createInteger16Matrix2d)(scilabEnv env, int row, int col);
127 scilabVar API_PROTO(createInteger32Matrix2d)(scilabEnv env, int row, int col);
128 scilabVar API_PROTO(createInteger64Matrix2d)(scilabEnv env, int row, int col);
129 scilabVar API_PROTO(createUnsignedInteger8Matrix2d)(scilabEnv env, int row, int col);
130 scilabVar API_PROTO(createUnsignedInteger16Matrix2d)(scilabEnv env, int row, int col);
131 scilabVar API_PROTO(createUnsignedInteger32Matrix2d)(scilabEnv env, int row, int col);
132 scilabVar API_PROTO(createUnsignedInteger64Matrix2d)(scilabEnv env, int row, int col);
133 
134 scilabStatus API_PROTO(getInteger8)(scilabEnv env, scilabVar var, char* val);
135 scilabStatus API_PROTO(getInteger16)(scilabEnv env, scilabVar var, short* val);
136 scilabStatus API_PROTO(getInteger32)(scilabEnv env, scilabVar var, int* val);
137 scilabStatus API_PROTO(getInteger64)(scilabEnv env, scilabVar var, long long* val);
138 scilabStatus API_PROTO(getUnsignedInteger8)(scilabEnv env, scilabVar var, unsigned char* val);
139 scilabStatus API_PROTO(getUnsignedInteger16)(scilabEnv env, scilabVar var, unsigned short* val);
140 scilabStatus API_PROTO(getUnsignedInteger32)(scilabEnv env, scilabVar var, unsigned int* val);
141 scilabStatus API_PROTO(getUnsignedInteger64)(scilabEnv env, scilabVar var, unsigned long long* val);
142 
143 scilabStatus API_PROTO(getIntegerArray)(scilabEnv env, scilabVar var, void** vals);
144 scilabStatus API_PROTO(getInteger8Array)(scilabEnv env, scilabVar var, char** vals);
145 scilabStatus API_PROTO(getInteger16Array)(scilabEnv env, scilabVar var, short** vals);
146 scilabStatus API_PROTO(getInteger32Array)(scilabEnv env, scilabVar var, int** vals);
147 scilabStatus API_PROTO(getInteger64Array)(scilabEnv env, scilabVar var, long long** vals);
148 scilabStatus API_PROTO(getUnsignedInteger8Array)(scilabEnv env, scilabVar var, unsigned char** vals);
149 scilabStatus API_PROTO(getUnsignedInteger16Array)(scilabEnv env, scilabVar var, unsigned short** vals);
150 scilabStatus API_PROTO(getUnsignedInteger32Array)(scilabEnv env, scilabVar var, unsigned int** vals);
151 scilabStatus API_PROTO(getUnsignedInteger64Array)(scilabEnv env, scilabVar var, unsigned long long** vals);
152 
153 scilabStatus API_PROTO(setIntegerArray)(scilabEnv env, scilabVar var, const void* vals);
154 scilabStatus API_PROTO(setInteger8Array)(scilabEnv env, scilabVar var, const char* vals);
155 scilabStatus API_PROTO(setInteger16Array)(scilabEnv env, scilabVar var, const short* vals);
156 scilabStatus API_PROTO(setInteger32Array)(scilabEnv env, scilabVar var, const int* vals);
157 scilabStatus API_PROTO(setInteger64Array)(scilabEnv env, scilabVar var, const long long* vals);
158 scilabStatus API_PROTO(setUnsignedInteger8Array)(scilabEnv env, scilabVar var, const unsigned char* vals);
159 scilabStatus API_PROTO(setUnsignedInteger16Array)(scilabEnv env, scilabVar var, const unsigned short* vals);
160 scilabStatus API_PROTO(setUnsignedInteger32Array)(scilabEnv env, scilabVar var, const unsigned int* vals);
161 scilabStatus API_PROTO(setUnsignedInteger64Array)(scilabEnv env, scilabVar var, const unsigned long long* vals);
162 
163 #ifdef __cplusplus
164 }
165 #endif
166 #endif /* __INT_API__ */
167