C API Documentation
rrSBMLModelSimulation.h
1 #ifndef rrSBMLModelSimulationH
2 #define rrSBMLModelSimulationH
3 //---------------------------------------------------------------------------
4 #include <string>
5 #include "rrExporter.h"
6 #include "rrStringUtils.h"
7 #include "rrRoadRunnerOptions.h"
8 #include "rrRoadRunnerData.h"
9 
10 namespace rr
11 {
12 
13 class RoadRunner;
14 
20 class RR_DECLSPEC SBMLModelSimulation
21 {
22  protected:
23  string mModelFileName;
24  string mModelFilePath;
25  string mModelSettingsFileName;
26  string mSimulationLogFile;
27  string mDataOutputFolder;
28  string mTempDataFolder;
29  RoadRunner *mEngine;
30  SimulateOptions mSettings;
31  bool mCompileIfDllExists;
32 
33  public:
34  SBMLModelSimulation(const string& dataOutputFolder = "", const string& tempDataFilePath = "");
35  virtual ~SBMLModelSimulation();
36  bool SetModelFilePath(const string& path);
37  bool SetModelFileName(const string& name);
38  bool SetDataOutputFolder(const string& name);
39  string GetModelsFullFilePath();
40  string GetDataOutputFolder();
41  string GetTempDataFolder();
42  bool UseEngine(RoadRunner* engine);
43 
44 
45 
46 
47  bool SaveModelAsXML(const string& folder);
48 
49  //wrappers
50  bool SetTimeStart(const double& tStart);
51  bool SetTimeEnd(const double& tEnd);
52  bool SetNumberOfPoints(const int& pts);
53  bool SetSelectionList(const string& list);
54  virtual bool LoadSBMLFromFile(); //Use current file information to load sbml from file
55  virtual bool Simulate();
56  virtual bool SaveResult();
57  void loadSBMLTolerances(std::string const& filename);
58  virtual bool LoadSettings(const string& fName = "");
59  virtual RoadRunnerData GetResult();
60 
61  void ReCompileIfDllExists(const bool& doIt);
62  bool DoCompileIfDllExists();
63 
64 // // models are created by loadSBML, if a shared lib already exits, it is loaded.
65  bool CreateModel();
66  bool GenerateModelCode();
67  bool CompileModel();
68  bool GenerateAndCompileModel();
69 
71  double mAbsolute;
73  double mRelative;
74 };
75 
76 }
77 
78 
79 
80 #endif
Definition: rrRoadRunnerData.h:36
Definition: rrRoadRunner.h:47
Definition: rrSBMLModelSimulation.h:21
double mRelative
relative tolerance for residual comparison, does not affect integrator
Definition: rrSBMLModelSimulation.h:73
double mAbsolute
absolute tolerance for residual comparison, does not affect integrator
Definition: rrSBMLModelSimulation.h:71
This class is frozen, no new features RoadRunner simulation options.
Definition: rrRoadRunnerOptions.h:242