ad1435f7af954cca94abc8d7d41d620391c5f6ae
[scilab.git] / scilab / modules / string / includes / stringToComplex.h
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) 2010-2011 - DIGITEO - Allan CORNET
4  *
5  * This file must be used under the terms of the CeCILL.
6  * This source file is licensed as described in the file COPYING, which
7  * you should have received as part of this distribution.  The terms
8  * are also available at
9  * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
10  *
11  * This code is also published under the GPL v3 license.
12  *
13  */
14 #ifndef __STRINGTOCOMPLEX_H__
15 #define __STRINGTOCOMPLEX_H__
16
17 #include <wchar.h>
18 #include "doublecomplex.h"
19 #include "complex_array.h"
20 #include "BOOL.h"
21
22 #include "dynlib_string.h"
23
24 typedef enum
25 {
26     STRINGTOCOMPLEX_NO_ERROR = 0,
27     STRINGTOCOMPLEX_MEMORY_ALLOCATION = 1,
28     STRINGTOCOMPLEX_NOT_A_NUMBER = 2,
29     STRINGTOCOMPLEX_ERROR = 3
30 } stringToComplexError;
31
32
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36
37     doublecomplex stringToComplex(const char *pSTR,
38                                   const char *decimal,
39                                   BOOL bConvertByNAN,
40                                   stringToComplexError *ierr);
41
42     doublecomplex stringToComplexW(const wchar_t *pSTR,
43                                    const wchar_t *decimal,
44                                    BOOL bConvertByNAN,
45                                    stringToComplexError *ierr);
46
47     STRING_IMPEXP  complexArray *stringsToComplexArray(const char **pSTRs, int nbElements,
48             const char *decimal,
49             BOOL bConvertByNAN,
50             stringToComplexError *ierr);
51
52 #ifdef __cplusplus
53 }
54 #endif
55
56
57 #endif /* __STRINGTOCOMPLEX_H__ */
58 // =============================================================================