License Header change: Removed the LICENSE_END before beta
[scilab.git] / scilab / modules / api_scilab / includes / api_list.h
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 __LIST_API__
16 #define __LIST_API__
17
18 #if !defined(__INTERNAL_API_SCILAB__)
19 #error Do not include api_list.h. Include api_scilab.h instead.
20 #endif
21
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 #define scilab_isDefined            API_PROTO(isDefined)
26 #define scilab_isUndefined          API_PROTO(isUndefined)
27 #define scilab_createList           API_PROTO(createList)
28 #define scilab_createTList          API_PROTO(createTList)
29 #define scilab_createMList          API_PROTO(createMList)
30 #define scilab_getListItem          API_PROTO(getListItem)
31 #define scilab_setListItem          API_PROTO(setListItem)
32 #define scilab_getTListFieldNames   API_PROTO(getTListFieldNames)
33 #define scilab_getTListField        API_PROTO(getTListField)
34 #define scilab_setTListField        API_PROTO(setTListField)
35 #define scilab_getMListFieldNames   API_PROTO(getMTListFieldNames)
36 #define scilab_getMListField        API_PROTO(getMListField)
37 #define scilab_setMListField        API_PROTO(setMListField)
38 #define scilab_appendToList         API_PROTO(appendToList)
39
40 int API_PROTO(isDefined)(scilabEnv env, scilabVar var, int index);
41 int API_PROTO(isUndefined)(scilabEnv env, scilabVar var, int index);
42
43 scilabVar API_PROTO(createList)(scilabEnv env);
44 scilabVar API_PROTO(createTList)(scilabEnv env, const wchar_t* type);
45 scilabVar API_PROTO(createMList)(scilabEnv env, const wchar_t* type);
46
47 scilabVar API_PROTO(getListItem)(scilabEnv env, scilabVar var, int index);
48 scilabStatus API_PROTO(setListItem)(scilabEnv env, scilabVar var, int pos, scilabVar val);
49
50 int API_PROTO(getTListFieldNames)(scilabEnv env, scilabVar var, wchar_t*** fieldnames);
51 scilabVar API_PROTO(getTListField)(scilabEnv env, scilabVar var, const wchar_t* field);
52 scilabStatus API_PROTO(setTListField)(scilabEnv env, scilabVar var, const wchar_t* field, scilabVar val);
53
54 int API_PROTO(getMListFieldNames)(scilabEnv env, scilabVar var, wchar_t*** fieldnames);
55 scilabVar API_PROTO(getMListField)(scilabEnv env, scilabVar var, const wchar_t* field);
56 scilabStatus API_PROTO(setMListField)(scilabEnv env, scilabVar var, const wchar_t* field, scilabVar val);
57
58 scilabStatus API_PROTO(appendToList)(scilabEnv env, scilabVar var, scilabVar val);
59 #ifdef __cplusplus
60 }
61 #endif
62 #endif /* __LIST_API__ */