where : value returned was inverted.
[scilab.git] / scilab / modules / types / includes / macrofile.hxx
1 /*
2  *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  *  Copyright (C) 2009-2010 - DIGITEO - Bruno JOFRET
4  *  Copyright (C) 2009-2009 - DIGITEO - Antoine ELIAS
5  *
6  *  This file must be used under the terms of the CeCILL.
7  *  This source file is licensed as described in the file COPYING, which
8  *  you should have received as part of this distribution.  The terms
9  *  are also available at
10  *  http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
11  *
12  */
13
14 #ifndef __MACROFILE_HXX__
15 #define __MACROFILE_HXX__
16
17 #include "callable.hxx"
18 #include "macro.hxx"
19
20 namespace types
21 {
22 class MacroFile : public Callable
23 {
24 public :
25     MacroFile(): Callable() {};
26     MacroFile(wstring _stName, wstring _stPath, wstring _stModule);
27     virtual                 ~MacroFile();
28
29     //FIXME : Should not return NULL
30     InternalType*           clone();
31
32     RealType                getType(void);
33     bool                    isMacroFile()
34     {
35         return true;
36     }
37
38     void                    whoAmI();
39
40     bool                    toString(std::wostringstream& ostr);
41
42     Callable::ReturnValue   call(typed_list &in, optional_list &opt, int _iRetCount, typed_list &out, ast::ConstVisitor* execFunc);
43     bool                    parse(void);
44
45     Macro*                  getMacro(void);
46
47     void                    setFirstLine(int _iLine);
48
49     /* return type as string ( double, int, cell, list, ... )*/
50     virtual wstring         getTypeStr()
51     {
52         return L"function";
53     }
54     /* return type as short string ( s, i, ce, l, ... )*/
55     virtual wstring         getShortTypeStr()
56     {
57         return L"function";
58     }
59
60     virtual int getNbInputArgument(void);
61     virtual int getNbOutputArgument(void);
62
63 private :
64     Macro*                  m_pMacro;
65     wstring                 m_stPath;
66 };
67 }
68
69
70 #endif /* !__MACRO_HXX__ */