annotate muParserDLL.h @ 265:da38cbbc7ec8

Add DDS clients test code To verify the portabiolity of the clients code and to make testing easier the test code is independent of the CVI environment and runtime.
author Daniele Nicolodi <daniele.nicolodi@obspm.fr>
date Sun, 21 Jun 2015 14:44:33 +0200
parents d9aae7d7f2c6
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
1 /*
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
2 __________
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
3 _____ __ __\______ \_____ _______ ______ ____ _______
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
4 / \ | | \| ___/\__ \ \_ __ \/ ___/_/ __ \\_ __ \
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
5 | Y Y \| | /| | / __ \_| | \/\___ \ \ ___/ | | \/
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
6 |__|_| /|____/ |____| (____ /|__| /____ > \___ >|__|
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
7 \/ \/ \/ \/
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
8 Copyright (C) 2004-2007 Ingo Berg
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
9
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
10 Permission is hereby granted, free of charge, to any person obtaining a copy of this
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
11 software and associated documentation files (the "Software"), to deal in the Software
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
12 without restriction, including without limitation the rights to use, copy, modify,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
13 merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
14 permit persons to whom the Software is furnished to do so, subject to the following conditions:
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
15
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
16 The above copyright notice and this permission notice shall be included in all copies or
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
17 substantial portions of the Software.
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
18
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
19 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
20 NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
21 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
22 DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
23 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
24 */
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
25 #ifndef MU_PARSER_DLL_H
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
26 #define MU_PARSER_DLL_H
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
27
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
28 #if defined(_WIN32)
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
29 #ifdef MUPARSERLIB_EXPORTS
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
30 // #define MU_PARSER_API extern "C" __declspec(dllexport)
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
31 #define API_EXPORT(TYPE) extern "C" __declspec(dllexport) TYPE __stdcall
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
32 #else
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
33 // #define MU_PARSER_API extern __declspec(dllimport)
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
34 #define API_EXPORT(TYPE) extern __declspec(dllimport) TYPE __stdcall
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
35 #endif
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
36 #else
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
37 #define MU_PARSER_API /* empty macro */
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
38 #endif
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
39
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
40 // Basic types
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
41 typedef void* muParserHandle_t; // parser handle
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
42 typedef char muChar_t; // character type
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
43 typedef int muBool_t; // boolean type
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
44 typedef int muInt_t; // integer type
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
45 typedef double muFloat_t; // floating point type
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
46
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
47 // function types for calculation
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
48 typedef muFloat_t (*muFun1_t)(muFloat_t);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
49 typedef muFloat_t (*muFun2_t)(muFloat_t, muFloat_t);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
50 typedef muFloat_t (*muFun3_t)(muFloat_t, muFloat_t, muFloat_t);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
51 typedef muFloat_t (*muFun4_t)(muFloat_t, muFloat_t, muFloat_t, muFloat_t);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
52 typedef muFloat_t (*muFun5_t)(muFloat_t, muFloat_t, muFloat_t, muFloat_t, muFloat_t);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
53 typedef muFloat_t (*muMultFun_t)(const muFloat_t*, muInt_t);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
54 typedef muFloat_t (*muStrFun1_t)(const muChar_t*);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
55 typedef muFloat_t (*muStrFun2_t)(const muChar_t*, muFloat_t);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
56 typedef muFloat_t (*muStrFun3_t)(const muChar_t*, muFloat_t, muFloat_t);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
57
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
58 // Functions for parser management
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
59 typedef void (*muErrorHandler_t)(muParserHandle_t a_hParser); // [optional] callback to an error handler
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
60 typedef muFloat_t* (*muFacFun_t)(const muChar_t*, void*); // [optional] callback for creating new variables
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
61 typedef muInt_t (*muIdentFun_t)(const muChar_t*, muInt_t*, muFloat_t*); // [optional] value identification callbacks
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
62
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
63 //-----------------------------------------------------------------------------------------------------
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
64 //
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
65 //
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
66 // muParser C compatible bindings
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
67 //
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
68 //
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
69 //-----------------------------------------------------------------------------------------------------
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
70
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
71 // Basic operations / initialization
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
72 API_EXPORT(muParserHandle_t) mupCreate(void);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
73 API_EXPORT(void) mupRelease(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
74 API_EXPORT(const muChar_t*) mupGetExpr(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
75 API_EXPORT(void) mupSetExpr(muParserHandle_t a_hParser, const muChar_t *a_szExpr);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
76 API_EXPORT(void) mupSetVarFactory(muParserHandle_t a_hParser, muFacFun_t a_pFactory, void* pUserData);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
77
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
78 API_EXPORT(muFloat_t) mupEval(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
79
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
80 // Defining callbacks / variables / constants
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
81 API_EXPORT(void) mupDefineFun1(muParserHandle_t a_hParser, const muChar_t *a_szName, muFun1_t a_pFun, muBool_t a_bOptimize);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
82 API_EXPORT(void) mupDefineFun2(muParserHandle_t a_hParser, const muChar_t *a_szName, muFun2_t a_pFun, muBool_t a_bOptimize);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
83 API_EXPORT(void) mupDefineFun3(muParserHandle_t a_hParser, const muChar_t *a_szName, muFun3_t a_pFun, muBool_t a_bOptimize);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
84 API_EXPORT(void) mupDefineFun4(muParserHandle_t a_hParser, const muChar_t *a_szName, muFun4_t a_pFun, muBool_t a_bOptimize);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
85 API_EXPORT(void) mupDefineFun5(muParserHandle_t a_hParser, const muChar_t *a_szName, muFun5_t a_pFun, muBool_t a_bOptimize);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
86 // string functions
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
87 API_EXPORT(void) mupDefineStrFun1(muParserHandle_t a_hParser, const muChar_t *a_szName, muStrFun1_t a_pFun);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
88 API_EXPORT(void) mupDefineStrFun2(muParserHandle_t a_hParser, const muChar_t *a_szName, muStrFun2_t a_pFun);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
89 API_EXPORT(void) mupDefineStrFun3(muParserHandle_t a_hParser, const muChar_t *a_szName, muStrFun3_t a_pFun);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
90
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
91 API_EXPORT(void) mupDefineMultFun( muParserHandle_t a_hParser,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
92 const muChar_t* a_szName,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
93 muMultFun_t a_pFun,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
94 muBool_t a_bOptimize);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
95
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
96 API_EXPORT(void) mupDefineOprt( muParserHandle_t a_hParser,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
97 const muChar_t* a_szName,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
98 muFun2_t a_pFun,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
99 muInt_t a_iPri1,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
100 muBool_t a_bOptimize);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
101
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
102 API_EXPORT(void) mupDefineConst( muParserHandle_t a_hParser,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
103 const muChar_t* a_szName,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
104 muFloat_t a_fVal );
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
105
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
106 API_EXPORT(void) mupDefineStrConst( muParserHandle_t a_hParser,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
107 const muChar_t* a_szName,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
108 const muChar_t *a_sVal );
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
109
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
110 API_EXPORT(void) mupDefineVar( muParserHandle_t a_hParser,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
111 const muChar_t* a_szName,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
112 muFloat_t *a_fVar);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
113
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
114 API_EXPORT(void) mupDefinePostfixOprt( muParserHandle_t a_hParser,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
115 const muChar_t* a_szName,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
116 muFun1_t a_pOprt,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
117 muBool_t a_bOptimize);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
118
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
119
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
120 API_EXPORT(void) mupDefineInfixOprt( muParserHandle_t a_hParser,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
121 const muChar_t* a_szName,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
122 muFun1_t a_pOprt,
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
123 muBool_t a_bOptimize);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
124
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
125 // Define character sets for identifiers
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
126 API_EXPORT(void) mupDefineNameChars(muParserHandle_t a_hParser, const muChar_t* a_szCharset);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
127 API_EXPORT(void) mupDefineOprtChars(muParserHandle_t a_hParser, const muChar_t* a_szCharset);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
128 API_EXPORT(void) mupDefineInfixOprtChars(muParserHandle_t a_hParser, const muChar_t* a_szCharset);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
129
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
130 // Remove all / single variables
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
131 API_EXPORT(void) mupRemoveVar(muParserHandle_t a_hParser, const muChar_t* a_szName);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
132 API_EXPORT(void) mupClearVar(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
133 API_EXPORT(void) mupClearConst(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
134 API_EXPORT(void) mupClearOprt(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
135 API_EXPORT(void) mupClearFun(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
136
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
137 // Querying variables / expression variables / constants
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
138 API_EXPORT(int) mupGetExprVarNum(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
139 API_EXPORT(int) mupGetVarNum(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
140 API_EXPORT(int) mupGetConstNum(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
141 API_EXPORT(void) mupGetExprVar(muParserHandle_t a_hParser, unsigned a_iVar, const muChar_t** a_pszName, muFloat_t** a_pVar);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
142 API_EXPORT(void) mupGetVar(muParserHandle_t a_hParser, unsigned a_iVar, const muChar_t** a_pszName, muFloat_t** a_pVar);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
143 API_EXPORT(void) mupGetConst(muParserHandle_t a_hParser, unsigned a_iVar, const muChar_t** a_pszName, muFloat_t* a_pVar);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
144
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
145 // Add value recognition callbacks
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
146 API_EXPORT(void) mupAddValIdent(muParserHandle_t a_hParser, muIdentFun_t);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
147
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
148 // Error handling
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
149 API_EXPORT(muBool_t) mupError(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
150 API_EXPORT(void) mupErrorReset(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
151 API_EXPORT(void) mupSetErrorHandler(muParserHandle_t a_hParser, muErrorHandler_t a_pErrHandler);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
152 API_EXPORT(const muChar_t*) mupGetErrorMsg(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
153 API_EXPORT(muInt_t) mupGetErrorCode(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
154 API_EXPORT(muInt_t) mupGetErrorPos(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
155 API_EXPORT(const muChar_t*) mupGetErrorToken(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
156 API_EXPORT(const muChar_t*) mupGetErrorExpr(muParserHandle_t a_hParser);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
157
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
158 // This is used for .NET only. It creates a new variable allowing the dll to
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
159 // manage the variable rather than the .NET garbage collector.
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
160 API_EXPORT(muFloat_t*) mupCreateVar(void);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
161 API_EXPORT(void) mupReleaseVar(muFloat_t*);
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
162
Daniele Nicolodi <daniele.nicolodi@obspm.fr>
parents:
diff changeset
163 #endif // include guard