libRoadRunner C++ API  1.0.0
 All Classes Functions Variables Enumerations Enumerator Pages
rrModelGenerator.h
1 #ifndef rrModelGeneratorH
2 #define rrModelGeneratorH
3 #include <string>
4 #include <list>
5 #include <vector>
6 #include "rrExecutableModel.h"
7 
8 
9 namespace rr
10 {
11 class Compiler;
12 
18 class RR_DECLSPEC ModelGenerator
19 {
20 public:
22  {
32  CONSERVED_MOIETIES = (0x1 << 0), // => 0x00000001
33 
45  RECOMPILE = (0x1 << 1), // => 0x00000010
46 
56  READ_ONLY = (0x1 << 2), // => 0x00000100
57 
62  MUTABLE_INITIAL_CONDITIONS = (0x1 << 3), // => 0x00001000
63 
68  OPTIMIZE_GVN = (0x1 << 4),
69 
74  OPTIMIZE_CFG_SIMPLIFICATION = (0x1 << 5),
75 
81  OPTIMIZE_INSTRUCTION_COMBINING = (0x1 << 6),
82 
88  OPTIMIZE_DEAD_INST_ELIMINATION = (0x1 << 7),
89 
96  OPTIMIZE_DEAD_CODE_ELIMINATION = (0x1 << 8),
97 
101  OPTIMIZE_INSTRUCTION_SIMPLIFIER = (0x1 << 9),
102 
107  OPTIMIZE = OPTIMIZE_GVN | OPTIMIZE_CFG_SIMPLIFICATION |
108  OPTIMIZE_INSTRUCTION_COMBINING |
109  OPTIMIZE_DEAD_INST_ELIMINATION | OPTIMIZE_DEAD_CODE_ELIMINATION |
110  OPTIMIZE_INSTRUCTION_SIMPLIFIER
111  };
112 
118  virtual bool setTemporaryDirectory(const std::string& path) = 0;
119 
125  virtual std::string getTemporaryDirectory() = 0;
126 
134  virtual ExecutableModel *createModel(const std::string& sbml,
135  unsigned int options) = 0;
136 
143  virtual Compiler *getCompiler() = 0;
144 
150  virtual bool setCompiler(const std::string& compiler) = 0;
151 
155  virtual ~ModelGenerator() {};
156 
157 protected:
158  ModelGenerator() {};
159 
160 };
161 }
162 
163 #endif
Definition: rrModelGenerator.h:18
virtual ~ModelGenerator()
Definition: rrModelGenerator.h:155
Definition: rrCompiler.h:25
Definition: rrExecutableModel.h:26
ModelGeneratorOptions
Definition: rrModelGenerator.h:21