pmm  1.0.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
pmm_muparse.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2008-2010 Robert Higgins
3  Author: Robert Higgins <robert.higgins@ucd.ie>
4 
5  This file is part of PMM.
6 
7  PMM is free software: you can redistribute it and/or modify
8  it under the terms of the GNU General Public License as published by
9  the Free Software Foundation, either version 3 of the License, or
10  (at your option) any later version.
11 
12  PMM is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with PMM. If not, see <http://www.gnu.org/licenses/>.
19 */
20 /*!
21  * @file pmm_muparse.h
22  * @brief muparser structures
23  *
24  */
25 #ifndef PMM_MUPARSE_H_
26 #define PMM_MUPARSE_H_
27 
28 #if HAVE_CONFIG_H
29 #include "config.h"
30 #endif
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 
37 #ifndef __cplusplus
38 typedef struct Parser {} Parser;
39 #else
40 #include <muParser.h>
41 using namespace mu;
42 #endif
43 
44 //#include "pmm_param.h"
45 
46 struct pmm_paramdef_set; //< forward declaration
47 
48 /*!
49  * Structure to hold muparser object and variable array
50  */
52  Parser p; /*!< muparser parser object */
53  double *vars; /*!< variable array that will be linked to parser object */
54  int n_p; /*!< length of variable array */
56 
57 int
59 
60 int
62  int* params, double *value);
63 
64 int
66  double *value);
67 #ifdef __cplusplus
68 } /* for extern "C" */
69 #endif
70 
71 
72 #endif /* PMM_MUPARSE_H_ */
73